Workaround a FreeBSD kernel bug resulting in spurious SIGTRAP events.
[external/binutils.git] / gdb / ChangeLog
1 2018-12-21  John Baldwin  <jhb@FreeBSD.org>
2
3         * fbsd-nat.c (fbsd_handle_debug_trap): Require pl.pl_flags to
4         equal PL_FLAG_SI.
5         (fbsd_nat_target::stopped_by_sw_breakpoint): Likewise.
6
7 2018-12-21  Paul Marechal  <paul.marechal@ericsson.com>
8
9         PR gdb/23974
10         * target.c (target_read_stralloc): Check for empty vector.
11
12 2018-12-21  Дилян Палаузов  <dilyan.palauzov@aegee.org>
13
14         * top.c (print_gdb_configuration): Print "--without-python"
15         if GDB was configured without Python.
16
17 2018-12-21  Andrew Burgess  <andrew.burgess@embecosm.com>
18
19         * riscv-tdep.c (riscv_scan_prologue): Use plongest to format
20         a signed offset as a string.
21
22 2018-12-21  Dave Murphy  <davem@devkitpro.org>
23
24         * dtrace-probe.c (dtrace_static_probe_ops): Explicit zero
25         initialise.
26         * probe.c (any_static_probe_ops): Ditto.
27         * record-btrace.c (record_btrace_thread_observer_token): Ditto.
28         * stap-probe.c (stap_static_probe_ops): Ditto.
29         * tui/tui-hooks.c (tui_observers_token): Ditto.
30         * unittests/observable-selftests.c (token1, token2, token3): Ditto.
31
32 2018-12-19  Andrew Burgess  <andrew.burgess@embecosm.com>
33
34         * gdb/dummy-frame.c (default_dummy_id): Defined new function.
35         * gdb/dummy-frame.h (default_dummy_id): Declare new function.
36         * gdb/frame-unwind.c (default_unwind_pc): Define new function.
37         (default_unwind_sp): Define new function.
38         * gdb/frame-unwind.h (default_unwind_pc): Declare new function.
39         (default_unwind_sp): Declare new function.
40         * gdb/frame.c (frame_unwind_pc): Assume gdbarch_unwind_pc is
41         available.
42         (get_frame_sp): Assume that gdbarch_unwind_sp is available.
43         * gdb/gdbarch.c: Regenerate.
44         * gdb/gdbarch.h: Regenerate.
45         * gdb/gdbarch.sh: Update definition of dummy_id, unwind_pc, and
46         unwind_sp.  Add additional header files to be included in
47         generated file.
48
49 2018-12-19  Dimitar Dimitrov  <dimitar@dinux.eu>
50
51         * nat/linux-ptrace.c (linux_ptrace_test_ret_to_nx): Remove
52         sp clobbers.
53
54 2018-12-17  Andrew Burgess  <andrew.burgess@embecosm.com>
55
56         * dwarf2read.c (struct dwarf2_cu): Convert the fields 'mark',
57         'has_loclist', 'checked_producer', 'producer_is_gxx_lt_4_6',
58         'producer_is_gcc_lt_4_3', 'producer_is_icc_lt_14',
59         'processing_has_namespace_info' from unsigned int to bool.  Update
60         comments.
61         (producer_is_icc_lt_14): Update return type.
62         (producer_is_gcc_lt_4_3): Likewise.
63         (producer_is_gxx_lt_4_6): Likewise.
64         (process_die): Write true instead of 1 into predicate fields.
65         (dwarf2_start_symtab): Likewise.
66         (var_decode_location): Likewise.
67         (dwarf2_mark_helper): Likewise.
68         (dwarf2_mark): Likewise.
69         (dwarf2_clear_marks): Write false instead of 0 into predicate
70         field.
71         (dwarf2_cu::dwarf2_cu): Initialise predicate fields to false, not
72         0.
73
74 2018-12-17  Szabolcs Nagy  <szabolcs.nagy@arm.com>
75
76         * nat/aarch64-sve-linux-ptrace.h: Include signal.h instead of
77         asm/sigcontext.h.
78
79 2018-12-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
80
81         * nat/linux-ptrace.c (kill_child): Fix ARI warning by removing
82         warning trailing new line.
83
84 2018-12-16  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
85
86         * nat/linux-ptrace.c (kill_child): New function.
87         (linux_ptrace_test_ret_to_nx): Use kill_child instead of local code.
88         Add a call to kill_child in case of early return after fork.
89         (linux_check_ptrace_features): Use kill_child instead of local code.
90         (linux_test_for_tracefork): Likewise.
91
92 2018-12-14  Tom Tromey  <tom@tromey.com>
93
94         * Makefile.in: Remove "alloca" comment.
95         (INFOFILES): Remove.
96         (local-maintainer-clean): Don't use INFOFILES.
97
98 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
99
100         * syscalls/update-freebsd.sh: New file.
101         * syscalls/freebsd.xml: Regenerate.
102
103 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
104
105         * NEWS: Add entry documenting system call aliases.
106         * break-catch-syscall.c (catch_syscall_split_args): Pass 'result'
107         to get_syscalls_by_name.
108         * gdbarch.sh (UNKNOWN_SYSCALL): Remove.
109         * gdbarch.h: Regenerate.
110         * syscalls/gdb-syscalls.dtd (syscall): Add alias attribute.
111         * xml-syscall.c [!HAVE_LIBEXPAT] (get_syscalls_by_name): Rename
112         from get_syscall_by_name.  Now accepts a pointer to a vector of
113         integers and returns a bool.
114         [HAVE_LIBEXPAT] (struct syscall_desc): Add alias member.
115         (syscall_create_syscall_desc): Add alias parameter and pass it to
116         syscall_desc constructor.
117         (syscall_start_syscall): Handle alias attribute.
118         (syscall_attr): Add alias attribute.
119         (xml_get_syscalls_by_name): Rename from xml_get_syscall_number.
120         Now accepts a pointer to a vector of integers and returns a
121         bool.  Add syscalls whose alias or name matches the requested
122         name.
123         (get_syscalls_by_name): Rename from get_syscall_by_name.  Now
124         accepts a pointer to a vector of integers and returns a bool.
125         * xml-syscall.h (get_syscalls_by_name): Likewise.
126
127 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
128
129         * break-catch-syscall.c (catch_syscall_split_args): Pass 'result'
130         to get_syscalls_by_group.
131         * xml-syscall.c [!HAVE_LIBEXPAT] (get_syscalls_by_group): Return
132         false.
133         [HAVE_LIBEXPAT] (xml_list_syscalls_by_group): Append syscall
134         numbers to an existing vector of integers and return a bool.
135         (get_syscalls_by_group): Accept pointer to vector of integers
136         and change return type to bool.
137         * xml-syscall.h (get_syscalls_by_group): Likewise.
138
139 2018-12-13  Jim Wilson  <jimw@sifive.com>
140
141         * riscv-tdep.c (riscv_print_one_register_info): For MSTATUS, add
142         comment for SD field, and correct xlen calculation.  For MISA, add
143         comment for MXL field, add call to register_size, and correct base
144         calculation.
145
146 2018-12-13  Stafford Horne  <shorne@gmail.com>
147
148         * NEWS(New targets): Add or1k*-*-linux*.
149
150 2018-12-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
151
152         * nat/linux-osdata.c (linux_xfer_osdata_info_os_types): Forward
153         declare on one line to fix ARI warning.
154
155 2018-12-12  Andrew Burgess  <andrew.burgess@embecosm.com>
156
157         * infrun.c (infcall_suspend_state::infcall_suspend_state): New.
158         (infcall_suspend_state::registers): New.
159         (infcall_suspend_state::restore): New.
160         (infcall_suspend_state::thread_suspend): Rename to...
161         (infcall_suspend_state::m_thread_suspend): ...this.
162         (infcall_suspend_state::registers): Rename to...
163         (infcall_suspend_state::m_registers): ...this.
164         (infcall_suspend_state::siginfo_gdbarch): Rename to...
165         (infcall_suspend_state::m_siginfo_gdbarch): ...this.
166         (infcall_suspend_state::siginfo_data): Rename to...
167         (infcall_suspend_state::m_siginfo_data): ...this.
168         (save_infcall_suspend_state): Rewrite to use infcall_suspend_state
169         constructor.
170         (restore_infcall_suspend_state): Rewrite to use
171         infcall_suspend_state::restore method.
172         (get_infcall_suspend_state_regcache): Use
173         infcall_suspend_state::registers method.
174
175 2018-12-12  Andrew Burgess  <andrew.burgess@embecosm.com>
176
177         * riscv-tdep.c (riscv_call_arg_scalar_float): Unnamed (variadic)
178         arguments are passed in integer registers.
179         (riscv_call_arg_complex_float): Likewise.
180
181 2018-12-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
182
183         * nat/linux-osdata.c (common_getter): New function.
184         (struct osdata_type): Change getter to take_snapshot.
185         Add LONGEST len_avail and struct buffer buffer.
186         Change all elements in the initializer.
187         Add an element for the list of types.
188         (linux_xfer_osdata_info_os_types): New function.
189         (linux_common_xfer_osdata): Use common_getter for the list of types.
190         Replace getter call by common_getter.
191         (linux_xfer_osdata_cpus): Remove args READBUF, OFFSET, LEN.
192         Add arg BUFFER.  Only keep the code that adds data in BUFFER.
193         (linux_xfer_osdata_fds): Likewise.
194         (linux_xfer_osdata_modules): Likewise.
195         (linux_xfer_osdata_msg): Likewise.
196         (linux_xfer_osdata_processes): Likewise.
197         (linux_xfer_osdata_processgroups): Likewise.
198         (linux_xfer_osdata_sem): Likewise.
199         (linux_xfer_osdata_shm): Likewise.
200         (linux_xfer_osdata_isockets): Likewise.
201         (linux_xfer_osdata_threads): Likewise.
202
203 2018-12-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
204
205         * nat/linux-osdata.c: Removed various trailing spaces.
206
207 2018-12-10  Andrew Burgess  <andrew.burgess@embecosm.com>
208
209         * riscv-tdep.c (riscv_register_name): Fix ARI warning by removing
210         leading whitespace before #include line.
211
212 2018-12-08  Simon Marchi  <simon.marchi@ericsson.com>
213             Дилян Палаузов  <dilyan.palauzov@aegee.org>
214
215         PR gdb/23950
216         * configure.ac: Search for tgetent in libtinfow.
217         * configure: Re-generate.
218
219 2018-12-08  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
220
221         * linux-thread-db.c (struct thread_db_info): Add td_ta_delete_p.
222         (thread_db_err_str): Forward declare.
223         (delete_thread_db_info): Call td_ta_delete_p if available.
224         (try_thread_db_load_1): Acquire td_ta_delete address.
225         * nat/gdb_thread_db.h (td_ta_delete_ftype): Declare.
226
227 2018-12-08  Pedro Alves  <palves@redhat.com>
228
229         * source.c (forward_search_command): Rename to ...
230         (search_command_helper): ... this.  Add 'forward' parameter.
231         Tweak to use a gdb::def_vector<char> instead of a xrealloc'ed
232         buffer.  Handle backward searches too.
233         (forward_search_command, reverse_search_command): Reimplement by
234         calling search_command_helper.
235
236 2018-12-07  Andrew Burgess  <andrew.burgess@embecosm.com>
237
238         * .dir-locals.el: Copy most of the settings from c-mode over to
239         c++-mode.
240
241 2018-12-08  Stafford Horne  <shorne@gmail.com>
242
243         * Makefile.in (ALL_TARGET_OBS): Add or1k-linux-tdep.o.
244         * configure.tgt: Add or1k*-*-linux*.
245         * or1k-linux-tdep.c: New file.
246         * or1k-tdep.c (or1k_gdbarch_init): Call gdbarch_init_osabi.
247
248 2018-12-07  Pedro Alves  <palves@redhat.com>
249
250         * dwarf2read.c (get_gdb_index_contents_from_section): Use
251         gdb::make_array_view.
252
253 2018-12-05  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
254
255         * language.c (_initialize_language): Fix leak by assigning
256         a static string to language.  Same for range and case_sensitive,
257         even if no leak is detected for these variables.
258
259 2018-12-05  John Baldwin  <jhb@FreeBSD.org>
260
261         * configure: Re-generate.
262         * configure.ac: Use separate sed expressions to escape variables
263         in auto-load directories.
264
265 2018-12-05  Andrew Burgess  <andrew.burgess@embecosm.com>
266
267         * riscv-tdep.c (riscv_features_from_gdbarch_info): New function.
268         (riscv_find_default_target_description): Use new function to
269         extract feature from gdbarch_info.
270         (riscv_gdbarch_init): Add error checks for xlen and flen between
271         target description and bfd headers.  Be smarter about when we
272         think the hardware floating point abi should be used.
273
274 2018-12-05  Alan Hayward  <alan.hayward@arm.com>
275
276         * nat/aarch64-linux-hw-point.c
277         (aarch64_linux_any_set_debug_regs_state): New function.
278         * nat/aarch64-linux-hw-point.h
279         (aarch64_linux_any_set_debug_regs_state): New declaration.
280         * nat/aarch64-linux.c (aarch64_linux_new_thread): Check if any
281         BPs or WPs are set.
282
283 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
284
285         * common/filestuff.c [HAVE_KINFO_GETFILE]: Include headers.
286         (fdwalk) [HAVE_KINFO_GETFILE]: Use kinfo_getfile.
287
288 2018-11-30  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
289             Simon Marchi  <simon.marchi@ericsson.com>
290
291         * linespec.c (symtab_vector_up): Remove.
292         (symtabs_from_filename): Change return type to std::vector.
293         (collect_symtabs_from_filename): Likewise.
294         (create_sals_line_offset): Assign return value of
295         collect_symtabs_from_filename to *ls->file_symtabs.
296         (convert_explicit_location_to_linespec): Remove call to release.
297         (parse_linespec): Likewise.
298         (symtab_collector) <symtab_collector>: Remove initialization of
299         m_symtabs.
300         <release_symtabs>: Change return type to std::vector<symtab *>.
301         <operator ()>: Adjust.
302
303 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
304
305         * fbsd-nat.c [__FreeBSD_version >= 700009] (USE_SIGINFO): Macro
306         defined.
307         (union sigval32, struct siginfo32, fbsd_siginfo_size)
308         (fbsd_convert_siginfo): Make conditional on USE_SIGINFO instead
309         of KERN_PROC_AUXV and PT_LWPINFO.
310         (fbsd_nat_target::xfer_partial): Define method unconditionally.
311         Make TARGET_OBJECT_SIGNAL_INFO conditional on USE_SIGINFO.
312         Make TARGET_OBJECT_AUXV conditional on KERN_PROC_AUXV.
313         Make TARGET_OBJECT_FREEBSD_VMMAP and
314         TARGET_OBJECT_FREEBSD_PS_STRINGS conditional on KERN_PROC_VMMAP
315         and KERN_PROC_PS_STRINGS.
316         * fbsd-nat.h: Include <sys/proc.h>.
317         (fbsd_nat_target::xfer_partial): Declare method unconditionally.
318
319 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
320
321         * riscv-linux-nat.c: Add 'inferior.h' and 'target-descriptions.h'
322         header files.
323         (riscv_linux_nat_target::read_description): New method.
324
325 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
326
327         * arch/riscv.h (riscv_gdbarch_features::hash): New method.
328         * arch/riscv.c (struct riscv_gdbarch_features_hasher): New.
329         (riscv_tdesc_cache): New global.
330         (riscv_create_target_description): Look in the cache before
331         creating a new target description.
332
333 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
334
335         * arch/riscv.h (riscv_gdb_features::operator==): New.
336         (riscv_gdb_features::operator!=): New.
337         * riscv-tdep.c (riscv_gdbarch_init): Make use of the inequality
338         operator.
339
340 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
341
342         * arch/riscv.h (riscv_create_target_description): Make return type
343         const.
344         * arch/riscv.c (riscv_create_target_description): Likewise.
345         * riscv-tdep.c (riscv_find_default_target_description): Likewise.
346
347 2018-11-30  Jan Kratochvil  <jan.kratochvil@redhat.com>
348             Keith Seitz  <keiths@redhat.com>
349             Tom Tromey  <tom@tromey.com>
350             Sergio Durigan Junior  <sergiodj@redhat.com>
351
352         https://bugzilla.redhat.com/show_bug.cgi?id=1613614
353         * dwarf2read.c (dwarf2_find_containing_comp_unit): Add
354         'mid_cu->length' to '*cu_off' when checking if 'sect_off' is
355         inside the CU.
356
357 2018-11-30  Pedro Alves  <palves@redhat.com>
358
359         * aix-thread.c (aix_thread_target) <aix_thread_target>: Delete.
360         <stratum>: New override.
361         * bfd-target.c (aix_thread_target) <aix_thread_target>: Delete.
362         <stratum>: New override.
363         * bsd-uthread.c (bsd_uthread_target) <bsd_uthread_target>: Delete.
364         <stratum>: New override.
365         * exec.c (exec_target) <exec_target>: Delete.
366         <stratum>: New override.
367         * gdbarch-selftests.c (register_to_value_test): Adjust to use the
368         stratum method instead of the to_stratum field.
369         * linux-thread-db.c (thread_db_target) <thread_db_target>: Delete.
370         <stratum>: New override.
371         (thread_db_target::thread_db_target): Delete.
372         * make-target-delegates (print_class): Don't print a ctor
373         declaration.  Print a stratum method override declaration.
374         * process-stratum-target.h (process_stratum_target)
375         <process_stratum_target>: Delete.
376         <stratum>: New override.
377         * ravenscar-thread.c (ravenscar_thread_target)
378         <ravenscar_thread_target>: Delete.
379         <stratum>: New override.
380         * record-btrace.c (record_btrace_target)
381         <record_btrace_target>: Delete.
382         <stratum>: New override.
383         * record-full.c (record_full_base_target)
384         <record_full_base_target>: Delete.
385         <stratum>: New override.
386         * record.c (record_disconnect, record_detach)
387         (record_mourn_inferior, record_kill): Adjust to use the stratum
388         method instead of the to_stratum field.
389         * regcache.c (cooked_read_test, cooked_write_test): Likewise.
390         * sol-thread.c (sol_thread_target)
391         <sol_thread_target>: Delete.
392         <stratum>: New override.
393         * spu-multiarch.c (spu_multiarch_target)
394         <spu_multiarch_target>: Delete.
395         <stratum>: New override.
396         * target-delegates.c: Regenerate.
397         * target.c (target_stack::push, target_stack::unpush)
398         (pop_all_targets_above, pop_all_targets_at_and_above)
399         (info_target_command, target_require_runnable)
400         (target_stack::find_beneath): Adjust to use the stratum method
401         instead of the to_stratum field.
402         (dummy_target::dummy_target): Delete.
403         (dummy_target::stratum): New.
404         (debug_target::debug_target): Delete.
405         (debug_target::stratum): New.
406         (maintenance_print_target_stack): Adjust to use the stratum method
407         instead of the to_stratum field.
408         * target.h (struct target_ops) <stratum>: New method.
409         <to_stratum>: Delete.
410         <is_pushed>: Adjust to use the stratum method
411         instead of the to_stratum field.
412
413 2018-11-30  Pedro Alves  <palves@redhat.com>
414
415         * corelow.c (core_target) <has_all_memory, has_execution>: New
416         overrides.
417         * inf-child.c (inf_child_target::has_all_memory)
418         (inf_child_target::has_memory, inf_child_target::has_stack)
419         (inf_child_target::has_registers)
420         (inf_child_target::has_execution): Delete.
421         * inf-child.h (inf_child_target) <has_all_memory, has_memory,
422         has_stack, has_registers, has_execution>: Delete.
423         * process-stratum-target.c
424         (process_stratum_target::has_all_memory)
425         (process_stratum_target::has_memory)
426         (process_stratum_target::has_stack)
427         (process_stratum_target::has_registers)
428         (process_stratum_target::has_execution): New.
429         * process-stratum-target.h (process_stratum_target)
430         <has_all_memory, has_memory, has_stack, has_registers,
431         has_execution>: New method overrides.
432         * ravenscar-thread.c (ravenscar_thread_target) <has_all_memory,
433         has_memory, has_stack, has_registers, has_execution>: Delete.
434         * remote-sim.c (gdbsim_target) <has_stack, has_registers,
435         has_execution>: Delete.
436         * remote.c (remote_target) <has_all_memory, has_memory, has_stack,
437         has_registers, has_execution>: Delete.
438         * target.c (default_child_has_all_memory)
439         (default_child_has_memory, default_child_has_stack)
440         (default_child_has_registers, default_child_has_execution):
441         Delete.
442         * target.h (default_child_has_all_memory)
443         (default_child_has_memory, default_child_has_stack)
444         (default_child_has_registers, default_child_has_execution):
445         Delete.
446         * tracefile.h (tracefile_target) <has_execution>: New override.
447
448 2018-11-30  Pedro Alves  <palves@redhat.com>
449
450         * Makefile.in (COMMON_SFILES): Add process-stratum-target.c.
451         * bsd-kvm.c: Include "process-stratum-target.h".
452         (bsd_kvm_target): Now inherits from process_stratum_target.
453         (bsd_kvm_target::bsd_kvm_target): Default it.
454         * corelow.c: Include "process-stratum-target.h".
455         (core_target): Now inherits from process_stratum_target.
456         (core_target::core_target): Don't set to_stratum here.
457         * inf-child.c (inf_child_target::inf_child_target): Delete.
458         * inf-child.h: Include "process-stratum-target.h".
459         (inf_child_target): Inherit from process_stratum_target.
460         (inf_child_target) <inf_child_target>: Default it.
461         <can_async_p, supports_non_stop, supports_disable_randomization>:
462         Delete overrides.
463         * process-stratum-target.c: New file.
464         * process-stratum-target.h: New file.
465         * remote-sim.c: Include "process-stratum-target.h".
466         (gdbsim_target): Inherit from process_stratum_target.
467         <gdbsim_target>: Default it.
468         * remote.c: Include "process-stratum-target.h".
469         (remote_target): Inherit from process_stratum_target.
470         <remote_target>: Default it.
471         * target.c (default_thread_address_space)
472         (default_thread_architecture): Delete.
473         * target.h (target_ops) <thread_architecture>: Now returns NULL by
474         default.
475         <thread_address_space>: Ditto.
476         * test-target.h: Include "process-stratum-target.h" instead of
477         "target.h".
478         (test_target_ops): Inherit from process_stratum_target.
479         <test_target_ops>: Default it.
480         * tracefile.c (tracefile_target::tracefile_target): Delete.
481         * tracefile.h: Include "process-stratum-target.h".
482         (tracefile_target): Inherit from process_stratum_target.
483         <tracefile_target>: Default it.
484         * target-delegates.c: Regenerate.
485
486 2018-11-30  Pedro Alves  <palves@redhat.com>
487
488         * Makefile.in (COMMON_SFILES): Add test-target.c.
489         * gdbarch-selftests.c: Include "test-target.h".
490         * regcache.c: Include "test-target.h".
491         * target.c (test_target_info, test_target_ops::info): Move to ...
492         * test-target.c: ... this new file.
493         * target.h (test_target_ops): Move to ...
494         * test-target.h: ... this new file.
495
496 2018-11-29  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
497
498         * source.c (forward_search_command): Fix leak by using
499         xrealloc even for the first allocation in the loop, as buf
500         is static.
501
502 2018-11-29  Rajendra SY  <rajendra.sy@gmail.com>
503
504         PR gdb/23093
505         * gdb/fbsd-tdep.c (fbsd_gdb_signal_from_target)
506         (fbsd_gdb_signal_to_target): New.
507         (fbsd_init_abi): Install gdbarch "signal_from_target" and
508         "signal_to_target" methods.
509
510 2018-11-29  Tom Tromey  <tom@tromey.com>
511
512         * valarith.c (value_x_unop): Don't set argvec[3].
513
514 2018-11-26  Simon Marchi  <simon.marchi@ericsson.com>
515
516         PR gdb/23917
517         * sparc-linux-nat.c (sparc_linux_nat_target): Remove extraneous
518         semicolon.
519
520 2018-11-26  Pedro Alves  <palves@redhat.com>
521
522         * procfs.c (procfs_notice_thread): Replace uses of
523         in_thread_list/is_exited with find_thread_ptid/THREAD_EXITED.
524         * sol-thread.c (sol_thread_target::wait)
525         (sol_update_thread_list_callback): Likewise.
526
527 2018-11-25  Tom Tromey  <tom@tromey.com>
528
529         * ui-out.c (ui_out::field_fmt): Remove comment.
530         * tui/tui-out.c (tui_ui_out::do_field_fmt): Remove comment.
531         * mi/mi-out.c (mi_ui_out::do_field_fmt): Remove comment.
532
533 2018-11-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
534
535         * source.c (open_source_file): Leak fixed in '8e6a5953e1d Fix 4K
536         leak in open_source_file' has been partially undone by '2179fbc36d23
537         Return scoped_fd from open_source_file'. Re-add the transfer of
538         current s->fullname to the unique_xmalloc_ptr fullname given
539         to find_and_open_source.
540
541 2018-11-23  Pedro Alves  <palves@redhat.com>
542
543         * gdbthread.h (enum thread_state): Move comments here.
544         (is_running, is_stopped, is_exited): Remove declarations.
545
546 2018-11-22  Pedro Alves  <palves@redhat.com>
547
548         * Makefile.in (COMMON_SFILES): Add thread-iter.c.
549         * breakpoint.c (breakpoints_should_be_inserted_now): Replace
550         ALL_NON_EXITED_THREADS with all_non_exited_threads.
551         (print_one_breakpoint_location): Replace ALL_INFERIORS with
552         all_inferiors.
553         * bsd-kvm.c: Include inferior.h.
554         * btrace.c (btrace_free_objfile): Replace ALL_NON_EXITED_THREADS
555         with all_non_exited_threads.
556         * common/filtered-iterator.h: New.
557         * common/safe-iterator.h: New.
558         * corelow.c (core_target_open): Don't call init_thread_list here.
559         * darwin-nat.c (thread_info_from_private_thread_info): Replace
560         ALL_THREADS with all_threads.
561         * fbsd-nat.c (fbsd_nat_target::resume): Replace
562         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
563         * fbsd-tdep.c (fbsd_make_corefile_notes): Replace
564         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
565         * fork-child.c (postfork_hook): Don't call init_thread_list here.
566         * gdbarch-selftests.c (register_to_value_test): Adjust.
567         * gdbthread.h: Don't include "inferior.h" here.
568         (struct inferior): Forward declare.
569         (enum step_over_calls_kind): Moved here from inferior.h.
570         (thread_info::deletable): Definition moved to thread.c.
571         (find_thread_ptid (inferior *, ptid_t)): Declare.
572         (ALL_THREADS, ALL_THREADS_BY_INFERIOR, ALL_THREADS_SAFE): Delete.
573         Include "thread-iter.h".
574         (all_threads, all_non_exited_threads, all_threads_safe): New.
575         (any_thread_p): Declare.
576         (thread_list): Delete.
577         * infcmd.c (signal_command): Replace ALL_NON_EXITED_THREADS with
578         all_non_exited_threads.
579         (proceed_after_attach_callback): Delete.
580         (proceed_after_attach): Take an inferior pointer instead of an
581         integer PID.  Adjust to use range-for.
582         (attach_post_wait): Pass down inferior pointer instead of pid.
583         Use range-for instead of ALL_NON_EXITED_THREADS.
584         (detach_command): Remove init_thread_list call.
585         * inferior-iter.h: New.
586         * inferior.c (struct delete_thread_of_inferior_arg): Delete.
587         (delete_thread_of_inferior): Delete.
588         (delete_inferior, exit_inferior_1): Use range-for with
589         inf->threads_safe() instead of iterate_over_threads.
590         (inferior_appeared): Call init_thread_list here.
591         (discard_all_inferiors): Use all_non_exited_inferiors.
592         (find_inferior_id, find_inferior_pid): Use all_inferiors.
593         (iterate_over_inferiors): Use all_inferiors_safe.
594         (have_inferiors, number_of_live_inferiors): Use
595         all_non_exited_inferiors.
596         (number_of_inferiors): Use all_inferiors and std::distance.
597         (print_inferior): Use all_inferiors.
598         * inferior.h: Include gdbthread.h.
599         (enum step_over_calls_kind): Moved to gdbthread.h.
600         (struct inferior) <thread_list>: New field.
601         <threads, non_exited_threads, threads_safe>: New methods.
602         (ALL_INFERIORS): Delete.
603         Include "inferior-iter.h".
604         (ALL_NON_EXITED_INFERIORS): Delete.
605         (all_inferiors_safe, all_inferiors, all_non_exited_inferiors): New
606         functions.
607         * inflow.c (child_interrupt, child_pass_ctrlc): Replace
608         ALL_NON_EXITED_THREADS with all_non_exited_threads.
609         * infrun.c (follow_exec): Use all_threads_safe.
610         (clear_proceed_status, proceed): Use all_non_exited_threads.
611         (init_wait_for_inferior): Don't clear inline frame state here.
612         (infrun_thread_stop_requested, for_each_just_stopped_thread): Use
613         all_threads instead of ALL_NON_EXITED_THREADS.
614         (random_pending_event_thread): Use all_non_exited_threads instead
615         of ALL_NON_EXITED_THREADS.  Use a lambda for repeated code.
616         (clean_up_just_stopped_threads_fsms): Use all_non_exited_threads
617         instead of ALL_NON_EXITED_THREADS.
618         (handle_no_resumed): Use all_non_exited_threads instead of
619         ALL_NON_EXITED_THREADS.  Use all_inferiors instead of
620         ALL_INFERIORS.
621         (restart_threads, switch_back_to_stepped_thread): Use
622         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
623         * linux-nat.c (check_zombie_leaders): Replace ALL_INFERIORS with
624         all_inferiors.
625         (kill_unfollowed_fork_children): Use inf->non_exited_threads
626         instead of ALL_NON_EXITED_THREADS.
627         * linux-tdep.c (linux_make_corefile_notes): Use
628         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
629         * linux-thread-db.c (thread_db_target::update_thread_list):
630         Replace ALL_INFERIORS with all_inferiors.
631         (thread_db_target::thread_handle_to_thread_info): Use
632         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
633         * mi/mi-interp.c (multiple_inferiors_p): New.
634         (mi_on_resume_1): Simplify using all_non_exited_threads and
635         multiple_inferiors_p.
636         * mi/mi-main.c (mi_cmd_thread_list_ids): Use all_non_exited_threads
637         instead of ALL_NON_EXITED_THREADS.
638         * nto-procfs.c (nto_procfs_target::open): Don't call
639         init_thread_list here.
640         * record-btrace.c (record_btrace_target_open)
641         (record_btrace_target::stop_recording)
642         (record_btrace_target::close)
643         (record_btrace_target::record_is_replaying)
644         (record_btrace_target::resume, record_btrace_target::wait)
645         (record_btrace_target::record_stop_replaying): Use
646         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
647         * record-full.c (record_full_wait_1): Use all_non_exited_threads
648         instead of ALL_NON_EXITED_THREADS.
649         * regcache.c (cooked_read_test): Remove reference to global
650         thread_list.
651         * remote-sim.c (gdbsim_target::create_inferior): Don't call
652         init_thread_list here.
653         * remote.c (remote_target::update_thread_list): Use
654         all_threads_safe instead of ALL_NON_EXITED_THREADS.
655         (remote_target::process_initial_stop_replies): Replace
656         ALL_INFERIORS with all_non_exited_inferiors and use
657         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
658         (remote_target::open_1): Don't call init_thread_list here.
659         (remote_target::append_pending_thread_resumptions)
660         (remote_target::remote_resume_with_hc): Use all_non_exited_threads
661         instead of ALL_NON_EXITED_THREADS.
662         (remote_target::commit_resume)
663         (remote_target::remove_new_fork_children): Replace ALL_INFERIORS
664         with all_non_exited_inferiors and use all_non_exited_threads
665         instead of ALL_NON_EXITED_THREADS.
666         (remote_target::kill_new_fork_children): Use
667         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.  Remove
668         init_thread_list and init_wait_for_inferior calls.
669         (remote_target::remote_btrace_maybe_reopen)
670         (remote_target::thread_handle_to_thread_info): Use
671         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
672         * target.c (target_terminal::restore_inferior)
673         (target_terminal_is_ours_kind): Replace ALL_INFERIORS with
674         all_non_exited_inferiors.
675         * thread-iter.c: New file.
676         * thread-iter.h: New file.
677         * thread.c: Include "inline-frame.h".
678         (thread_list): Delete.
679         (clear_thread_inferior_resources): Call clear_inline_frame_state.
680         (init_thread_list): Use all_threads_safe instead of
681         ALL_THREADS_SAFE.  Adjust to per-inferior thread lists.
682         (new_thread): Adjust to per-inferior thread lists.
683         (add_thread_silent): Pass inferior to find_thread_ptid.
684         (thread_info::deletable): New, moved from the header.
685         (delete_thread_1): Adjust to per-inferior thread lists.
686         (find_thread_global_id): Use inf->threads().
687         (find_thread_ptid): Use find_inferior_ptid and pass inferior to
688         find_thread_ptid.
689         (find_thread_ptid(inferior*, ptid_t)): New overload.
690         (iterate_over_threads): Use all_threads_safe.
691         (any_thread_p): New.
692         (thread_count): Use all_threads and std::distance.
693         (live_threads_count): Use all_non_exited_threads and
694         std::distance.
695         (valid_global_thread_id): Use all_threads.
696         (in_thread_list): Use find_thread_ptid.
697         (first_thread_of_inferior): Adjust to per-inferior thread lists.
698         (any_thread_of_inferior, any_live_thread_of_inferior): Use
699         inf->non_exited_threads().
700         (prune_threads, delete_exited_threads): Use all_threads_safe.
701         (thread_change_ptid): Pass inferior pointer to find_thread_ptid.
702         (set_resumed, set_running): Use all_non_exited_threads.
703         (is_thread_state, is_stopped, is_exited, is_running)
704         (is_executing): Delete.
705         (set_executing, set_stop_requested, finish_thread_state): Use
706         all_non_exited_threads.
707         (print_thread_info_1): Use all_inferiors and all_threads.
708         (thread_apply_all_command): Use all_non_exited_threads.
709         (thread_find_command): Use all_threads.
710         (update_threads_executing): Use all_non_exited_threads.
711         * tid-parse.c (parse_thread_id): Use inf->threads.
712         * x86-bsd-nat.c (x86bsd_dr_set): Use inf->non_exited_threads ().
713
714 2018-11-22  Pedro Alves  <palves@redhat.com>
715
716         * infrun.c (follow_exec) <set follow-exec new>: Add thread and
717         switch to it before calling into try_open_exec_file.
718
719 2018-11-22  Pedro Alves  <palves@redhat.com>
720
721         * cli/cli-interp.c (cli_on_user_selected_context_changed): Use
722         inferior_thread instead of find_thread_ptid, and only when
723         inferior_ptid is not null_ptid.
724         * inferior.c (add_inferior): Don't include target_pid_to_str
725         output when the inferior is not started.
726         * python/py-inferior.c (python_on_normal_stop): Don't use
727         find_thread_ptid.
728         (tui_on_user_selected_context_changed): Use inferior_thread
729         instead of find_thread_ptid, and only when inferior_ptid is not
730         null_ptid.
731
732 2018-11-21  Benno Fünfstück  <benno.fuenfstueck@gmail.com>
733
734         PR python/23714
735         * gdb/python/python.c (execute_gdb_command): Call
736         prevent_dont_repeat earlier to avoid affecting dont_repeat.
737
738 2018-11-21  Andrew Burgess  <andrew.burgess@embecosm.com>
739
740         * Makefile.in (ALL_TARGET_OBS): Add arch/riscv.o.
741         (HFILES_NO_SRCDIR): Add arch/riscv.h.
742         * arch/riscv.c: New file.
743         * arch/riscv.h: New file.
744         * configure.tgt: Add cpu_obs list of riscv, move riscv-tdep.o into
745         this list, and add arch/riscv.o.
746         * features/Makefile: Add riscv features.
747         * features/riscv/32bit-cpu.c: New file.
748         * features/riscv/32bit-cpu.xml: New file.
749         * features/riscv/32bit-csr.c: New file.
750         * features/riscv/32bit-csr.xml: New file.
751         * features/riscv/32bit-fpu.c: New file.
752         * features/riscv/32bit-fpu.xml: New file.
753         * features/riscv/64bit-cpu.c: New file.
754         * features/riscv/64bit-cpu.xml: New file.
755         * features/riscv/64bit-csr.c: New file.
756         * features/riscv/64bit-csr.xml: New file.
757         * features/riscv/64bit-fpu.c: New file.
758         * features/riscv/64bit-fpu.xml: New file.
759         * features/riscv/rebuild-csr-xml.sh: New file.
760         * riscv-tdep.c: Add 'arch/riscv.h' include.
761         (riscv_gdb_reg_names): Delete.
762         (csr_reggroup): New global.
763         (struct riscv_register_alias): Delete.
764         (struct riscv_register_feature): New structure.
765         (riscv_register_aliases): Delete.
766         (riscv_xreg_feature): New global.
767         (riscv_freg_feature): New global.
768         (riscv_virtual_feature): New global.
769         (riscv_csr_feature): New global.
770         (riscv_create_csr_aliases): New function.
771         (riscv_read_misa_reg): Delete.
772         (riscv_has_feature): Delete.
773         (riscv_isa_xlen): Simplify, just return cached xlen.
774         (riscv_isa_flen): Simplify, just return cached flen.
775         (riscv_has_fp_abi): Update for changes in struct gdbarch_tdep.
776         (riscv_register_name): Update to make use of tdesc_register_name.
777         Look up xreg and freg names in the new globals riscv_xreg_feature
778         and riscv_freg_feature.  Don't supply csr aliases here.
779         (riscv_fpreg_q_type): Delete.
780         (riscv_register_type): Use tdesc_register_type in almost all
781         cases, override the returned type in a few specific cases only.
782         (riscv_print_one_register_info): Handle errors reading registers.
783         (riscv_register_reggroup_p): Use tdesc_register_in_reggroup_p for
784         registers that are otherwise unknown to GDB.  Also check the
785         csr_reggroup.
786         (riscv_print_registers_info): Remove assert about upper register
787         number, and use gdbarch_register_reggroup_p instead of
788         short-cutting.
789         (riscv_find_default_target_description): New function.
790         (riscv_check_tdesc_feature): New function.
791         (riscv_add_reggroups): New function.
792         (riscv_setup_register_aliases): New function.
793         (riscv_init_reggroups): New function.
794         (_initialize_riscv_tdep): Add calls to setup CSR aliases, and
795         setup register groups.  Register new riscv debug variable.
796         * riscv-tdep.h: Add 'arch/riscv.h' include.
797         (struct gdbarch_tdep): Remove abi union, and add
798         riscv_gdbarch_features field.  Remove cached quad floating point
799         type, and provide initialisation for double type field.
800         * target-descriptions.c (maint_print_c_tdesc_cmd): Add riscv to
801         the list of targets using the feature based target descriptions.
802         * NEWS: Mention target description support.
803
804 2018-11-21  Pedro Alves  <palves@redhat.com>
805
806         * valops.c (find_method_list, value_find_oload_method_list)
807         (find_overload_match, find_oload_champ): Rename parameters and
808         locals.
809
810 2018-11-21  Pedro Alves  <palves@redhat.com>
811
812         * valops.c (find_method_list): Replace pointer and length
813         parameters with an gdb::array_view.  Adjust.
814         (value_find_oload_method_list): Likewise.
815         (find_overload_match): Use gdb::array_view for methods list.
816         Adjust to find_oload_champ interface change.
817         (find_oload_champ): 'xm_worker_vec' parameter now a pointer/array.
818         'num_fns' parameter now a size_t.  Eliminate 'fn_count' local.
819
820 2018-11-21  Pedro Alves  <palves@redhat.com>
821
822         * gdbtypes.c (compare_badness): Change type of parameters to const
823         reference.  Adjust to badness_vector being a std::vector now.
824         (rank_function): Adjust to badness_vector being a std::vector now.
825         * gdbtypes.h (badness_vector): Now a typedef to std::vector.
826         (LENGTH_MATCH): Delete.
827         (compare_badness): Change type of parameters to const reference.
828         (rank_function): Return a badness_vector by value now.
829         (find_overload_match): Adjust to badness_vector being a
830         std::vector now.  Remove cleanups.
831         (find_oload_champ_namespace): 'oload_champ_bv' parameter now a
832         badness_vector pointer.
833         (find_oload_champ_namespace_loop): 'oload_champ_bv' parameter now
834         a badness_vector pointer.  Adjust to badness_vector being a
835         std::vector now.  Remove cleanups.
836         (find_oload_champ): 'oload_champ_bv' parameter now
837         a badness_vector pointer.  Adjust to badness_vector being a
838         std::vector now.  Remove cleanups.
839
840 2018-11-21  Pedro Alves  <palves@redhat.com>
841
842         * cp-support.c (sym_return_val_size, sym_return_val_index)
843         (sym_return_val): Delete.
844         (overload_list_add_symbol): Add std::vector parameter.  Adjust to
845         add to the vector.
846         (make_symbol_overload_list): Adjust to return a std::vector
847         instead of maintaining a global open coded vector.
848         (make_symbol_overload_list_block): Add std::vector parameter.
849         (make_symbol_overload_list_block): Rename to ...
850         (add_symbol_overload_list_block): ... this and add std::vector
851         parameter.
852         (make_symbol_overload_list_namespace): Rename to ...
853         (add_symbol_overload_list_namespace): ... this and add std::vector
854         parameter.
855         (make_symbol_overload_list_adl_namespace): Rename to ...
856         (add_symbol_overload_list_adl_namespace): ... this and add
857         std::vector parameter.
858         (make_symbol_overload_list_adl): Delete.
859         (add_symbol_overload_list_adl): New.
860         (make_symbol_overload_list_using): Rename to ...
861         (add_symbol_overload_list_using): ... this and add std::vector
862         parameter.
863         (make_symbol_overload_list_qualified): Rename to ...
864         (add_symbol_overload_list_qualified): ... this and add std::vector
865         parameter.
866         * cp-support.h: Include "common/array-view.h" and <vector>.
867         (make_symbol_overload_list): Change return type to std::vector.
868         (make_symbol_overload_list_adl): Delete declaration.
869         (add_symbol_overload_list_adl): New declaration.
870         * valops.c (find_overload_match): Local 'oload_syms' now a
871         std::vector.
872         (find_oload_champ_namespace): 'oload_syms' parameter now a
873         std::vector pointer.
874         (find_oload_champ_namespace_loop): 'oload_syms' parameter now a
875         std::vector pointer.  Adjust to new make_symbol_overload_list
876         interface.
877
878 2018-11-21  Pedro Alves  <palves@redhat.com>
879
880         * common/array-view.h (array_view::splice(size_type, size_t)): New.
881         (array_view::splice(size_type)): New.
882         * eval.c (eval_call, evaluate_funcall): Adjust to use array_view.
883         * extension.c (xmethod_worker::get_arg_types): Adjust to return an
884         std::vector.
885         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
886         * extension.h: Include "common/array-view.h".
887         (xmethod_worker::invoke): Adjust to use gdb::array_view.
888         (xmethod_worker::get_arg_types): Adjust to return an std::vector.
889         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
890         (xmethod_worker::do_get_arg_types): Adjust to use std::vector.
891         (xmethod_worker::do_get_result_type): Adjust to use
892         gdb::array_view.
893         * gdbtypes.c (rank_function): Adjust to use gdb::array_view.
894         * gdbtypes.h: Include "common/array-view.h".
895         (rank_function): Adjust to use gdb::array_view.
896         * python/py-xmethods.c (python_xmethod_worker::invoke)
897         (python_xmethod_worker::do_get_arg_types)
898         (python_xmethod_worker::do_get_result_type)
899         (python_xmethod_worker::invoke): Adjust to new interfaces.
900         * valarith.c (value_user_defined_cpp_op, value_user_defined_op)
901         (value_x_binop, value_x_unop): Adjust to use gdb::array_view.
902         * valops.c (find_overload_match, find_oload_champ_namespace)
903         (find_oload_champ_namespace_loop, find_oload_champ): Adjust to use
904         gdb:array_view and the new xmethod_worker interfaces.
905         * value.c (result_type_of_xmethod, call_xmethod): Adjust to use
906         gdb::array_view.
907         * value.h (find_overload_match, result_type_of_xmethod)
908         (call_xmethod): Adjust to use gdb::array_view.
909         * unittests/array-view-selftests.c: Add slicing tests.
910
911 2018-11-21  Pedro Alves  <palves@redhat.com>
912
913         * ada-lang.c (ada_evaluate_subexp): Adjust to pass an array_view.
914         * common/array-view.h (make_array_view): New.
915         * compile/compile-object-run.c (compile_object_run): Adjust to
916         pass an array_view.
917         * elfread.c (elf_gnu_ifunc_resolve_addr): Adjust.
918         * eval.c (eval_call): Adjust to pass an array_view.
919         (evaluate_subexp_standard): Adjust to pass an array_view.
920         * gcore.c (call_target_sbrk): Adjust to pass an array_view.
921         * guile/scm-value.c (gdbscm_value_call): Likewise.
922         * infcall.c (push_dummy_code): Replace pointer + size parameters
923         with an array_view parameter.
924         (call_function_by_hand, call_function_by_hand_dummy): Likewise and
925         adjust.
926         * infcall.h: Include "common/array-view.h".
927         (call_function_by_hand, call_function_by_hand_dummy): Replace
928         pointer + size parameters with an array_view parameter.
929         * linux-fork.c (inferior_call_waitpid): Adjust to use array_view.
930         * linux-tdep.c (linux_infcall_mmap): Likewise.
931         * objc-lang.c (lookup_objc_class, lookup_child_selector)
932         (value_nsstring, print_object_command): Likewise.
933         * python/py-value.c (valpy_call): Likewise.
934         * rust-lang.c (rust_evaluate_funcall): Likewise.
935         * spu-tdep.c (flush_ea_cache): Likewise.
936         * valarith.c (value_x_binop, value_x_unop): Likewise.
937         * valops.c (value_allocate_space_in_inferior): Likewise.
938         * unittests/array-view-selftests.c (run_tests): Add
939         gdb::make_array_view test.
940
941 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
942
943         * cli-out.c (cli_ui_out::do_field_int): Use string_printf rather
944         than a fixed size buffer.
945
946 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
947
948         * breakpoint.c (print_one_breakpoint_location): Reduce whitespace,
949         and remove insertion of extra spaces in GDB's output.
950         * cli-out.c (cli_ui_out::do_field_fmt): Update header comment.
951         Layout field into a temporary buffer, and then output it as a
952         string field.
953
954 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
955
956         * NEWS: Document the language choice done by
957         'info [types|functions|variables]|rbreak'.
958
959 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
960
961         * symtab.c (treg_matches_sym_type_name): Use
962         scoped_switch_to_sym_language_if_auto instead of local logic.
963         (print_symbol_info): Use scoped_switch_to_sym_language_if_auto
964         to switch to SYM language when language mode is auto.
965
966 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
967
968         * language.h (scoped_switch_to_sym_language_if_auto): New class.
969
970 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
971
972         * symtab.c (search_symbols): Properly check absence of type regexp
973         before entering the loop scanning the minimal symbols.
974
975 2018-11-20  John Darrington  <john@darrington.wattle.id.au>
976
977         * s12z-tdep.c (s12z_extract_return_value): New function.
978         (inv_reg_perm) New array.
979         (s12z_return_value): Populate readbuf if non-null.
980
981 2018-11-20  Eli Zaretskii  <eliz@gnu.org>
982
983         * common/filestuff.c (gdb_fopen_cloexec): Disable use of "e" mode
984         with 'fopen' also if O_CLOEXEC is equal to O_NOINHERIT, to cater
985         to MinGW fixed by Gnulib.
986         (O_NOINHERIT): Define if not defined.
987
988 2018-11-19  John Darrington  <john@darrington.wattle.id.au>
989
990         * s12z-tdep.c (s12z_frame_cache): Add an assertion.
991
992 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
993
994         * infrun.c (displaced_step_inferior_state) <next>: Remove.
995
996 2018-11-19  Tom Tromey  <tom@tromey.com>
997
998         * source.c (get_filename_and_charpos): Return void.
999
1000 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
1001
1002         * skip.c (_initialize_step_skip): Fix "info skip" help.
1003
1004 2018-11-16  Tom Tromey  <tom@tromey.com>
1005
1006         PR rust/23625:
1007         * rust-lang.c (rust_internal_print_type): Handle TYPE_CODE_PTR.
1008
1009 2018-11-19  Simon Marchi  <simon.marchi@ericsson.com>
1010
1011         * infrun.c (displaced_step_inferior_states): Change type to
1012         std::forward_list.
1013         (get_displaced_stepping_state): Adjust.
1014         (displaced_step_in_progress_any_inferior): Adjust.
1015         (add_displaced_stepping_state): Adjust.
1016         (remove_displaced_stepping_state): Adjust.
1017
1018 2018-11-18  Tom Tromey  <tom@tromey.com>
1019
1020         PR build/23814:
1021         * target-delegates.c: Rebuild.
1022         * ia64-linux-nat.c (class ia64_linux_nat_target)
1023         <have_steppable_watchpoint>: Use override.  Return true, not 1.
1024         (ia64_linux_nat_target::can_use_hw_breakpoint): Rename.  Remove
1025         "self" argument.
1026         (ia64_linux_nat_target::low_new_thread): Rename.
1027         (class ia64_linux_nat_target) <read_description>: Don't declare.
1028         * target.h (struct target_ops) <have_steppable_watchpoint>: Return
1029         bool.
1030
1031 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1032
1033         PR gdb/22736:
1034         * aarch64-tdep.c (aarch64_push_dummy_call): Remove
1035         lang_struct_return code.
1036
1037 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1038
1039         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
1040         return_method.
1041         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
1042         * amd64-tdep.c (amd64_push_arguments): Likewise.
1043         (amd64_push_dummy_call): Likewise.
1044         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
1045         * arc-tdep.c (arc_push_dummy_call): Likewise.
1046         * arm-tdep.c (arm_push_dummy_call): Likewise.
1047         * avr-tdep.c (avr_push_dummy_call): Likewise.
1048         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
1049         * cris-tdep.c (cris_push_dummy_call): Likewise.
1050         * csky-tdep.c (csky_push_dummy_call): Likewise.
1051         * frv-tdep.c (frv_push_dummy_call): Likewise.
1052         * gdbarch.c: Regenerate.
1053         * gdbarch.h: Regenerate.
1054         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
1055         return_method.
1056         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
1057         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
1058         (hppa64_push_dummy_call): Likewise.
1059         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
1060         * i386-tdep.c (i386_push_dummy_call): Likewise.
1061         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
1062         * infcall.c (call_function_by_hand_dummy): Likewise.
1063         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
1064         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
1065         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
1066         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
1067         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
1068         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
1069         * mep-tdep.c (mep_push_dummy_call): Likewise.
1070         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
1071         (mips_n32n64_push_dummy_call): Likewise.
1072         (mips_o32_push_dummy_call): Likewise.
1073         (mips_o64_push_dummy_call): Likewise.
1074         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
1075         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
1076         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
1077         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
1078         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
1079         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
1080         (ppc64_sysv_abi_push_dummy_call): Likewise.
1081         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
1082         (ppc64_sysv_abi_push_dummy_call): Likewise.
1083         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
1084         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
1085         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
1086         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
1087         * rx-tdep.c (rx_push_dummy_call): Likewise.
1088         * s390-tdep.c (s390_push_dummy_call): Likewise.
1089         * score-tdep.c (score_push_dummy_call): Likewise.
1090         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
1091         (sh_push_dummy_call_nofpu): Likewise.
1092         * sparc-tdep.c (sparc32_store_arguments): Likewise.
1093         (sparc32_push_dummy_call): Likewise.
1094         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
1095         (sparc64_push_dummy_call): Likewise.
1096         * spu-tdep.c (spu_push_dummy_call): Likewise.
1097         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
1098         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
1099         * v850-tdep.c (v850_push_dummy_call): Likewise.
1100         * vax-tdep.c (vax_push_dummy_call): Likewise.
1101         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
1102         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
1103
1104 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1105
1106         * gdbarch.sh (enum function_call_return_method): Add enum.
1107         * gdbarch.h: Regenerate.
1108         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
1109
1110 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
1111
1112         * unittests/copy_bitwise-selftests.c: New file.
1113         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
1114         (selftests::copy_bitwise_tests): Delete, moving this code to
1115         unittests/copy_bitwise-selftests.c instead.
1116         (_initialize_utils): Do not register copy_bitwise tests.
1117         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1118         unittests/copy_bitwise-selftests.c.
1119
1120 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
1121
1122         * ada-lang.c (move_bits): Delete. Update all callers to use
1123         copy_bitwise instead.
1124         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
1125         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
1126         Move from here to utils.c.
1127         (_initialize_dwarf2loc): Remove call to register copy_bitwise
1128         selftests.
1129         * utils.h (copy_bitwise): Add declaration.
1130         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
1131         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
1132         Moved here from dwarf2loc.c.
1133         (_initialize_utils): Register copy_bitwise selftests.
1134
1135 2018-11-14  Jim Wilson  <jimw@sifive.com>
1136
1137         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
1138         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
1139         then increment next_regnum if odd.
1140         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
1141         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
1142         function type.  Pass new arg to riscv_arg_location based on function
1143         type.
1144         (riscv_return_value): Pass new arg to riscv_arg_location.
1145
1146         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
1147         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
1148         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
1149
1150         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
1151         setting len.  New local align, set to max of arg align and xlen,
1152         and pass to first riscv_assign_stack_location call.
1153
1154 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
1155
1156         * skip.c (complete_skip_number): New function.
1157         (_initialize_step_skip): Add completers to some skip commands.
1158
1159 2018-11-09  Tom Tromey  <tom@tromey.com>
1160
1161         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
1162         (struct remote_g_packet_data): Derive from allocate_on_obstack.
1163         <guesses>: Now a std::vector.
1164         (remote_g_packet_data_init, register_remote_g_packet_guess):
1165         Update.
1166         (remote_read_description_p): Update.  Return bool.
1167         (remote_target::read_description): Update.
1168         (struct remote_g_packet_guess): Add constructor.
1169
1170 2018-11-09  Tom Tromey  <tom@tromey.com>
1171
1172         * common/scoped_fd.h (class scoped_fd): Add move constructor and
1173         move assignment operator.
1174         * psymtab.c (psymtab_to_fullname): Update.
1175         * source.h (open_source_file): Return scoped_fd.
1176         (find_and_open_source): Likewise.
1177         * source.c (open_source_file): Return scoped_fd.
1178         (get_filename_and_charpos): Update.
1179         (print_source_lines_base): Update.  Use scoped_fd::to_file.
1180         (forward_search_command): Likewise.
1181         (reverse_search_command): Likewise.
1182         (find_and_open_source): Return scoped_fd.
1183         * tui/tui-source.c (tui_set_source_content): Update.  Use
1184         gdb_file_up.
1185
1186 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
1187
1188         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
1189         overflow.
1190
1191 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1192
1193         * configure: Regenerate.
1194
1195 2018-11-09  Tom de Vries  <tdevries@suse.de>
1196
1197         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
1198         unconditionally, to set the language of the symbol.  Manage freeing
1199         returned pointer using gdb::unique_xmalloc_ptr.
1200
1201 2018-11-08  Tom Tromey  <tom@tromey.com>
1202
1203         * record.c (require_record_target): Upper-case "<TAB>".
1204
1205 2018-11-08  Tom Tromey  <tom@tromey.com>
1206
1207         * python/lib/gdb/command/pretty_printers.py
1208         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
1209
1210 2018-11-08  Tom Tromey  <tom@tromey.com>
1211
1212         PR gdb/23555:
1213         PR gdb/23838:
1214         * target.h (target_supports_terminal_ours): Return bool.
1215         * target.c (target_supports_terminal_ours): Handle case where
1216         current_top_target returns nullptr.  Return bool.
1217
1218 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
1219
1220         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
1221         return the correct count for potential HFAs.
1222
1223 2018-11-08  Jan Beulich  <jbeulich@suse.com>
1224
1225         * i387-tdep.c (i387_supply_xsave): Split handling of
1226         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
1227         (i387_collect_xsave): Likewise.
1228
1229 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
1230
1231         * riscv-tdep.c (riscv_insn::decode): Update header comment.
1232         (riscv_frame_this_id): Catch errors thrown while building the
1233         frame cache, leave the frame id as the default, which is the outer
1234         frame id.
1235
1236 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
1237
1238         * ada-lang.c (read_atcb): Only set task_info->called_task if
1239         task_info->state == Entry_Caller_Sleep.
1240         (print_ada_task_info): Do not check task_info->state before
1241         checking task_info->called_task.
1242         (info_task): Likewise.
1243
1244 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
1245
1246         * ada-tasks.c (read_atcb): Clear task_info before computing
1247         the value of each of its fields.
1248
1249 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
1250
1251         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
1252         NULL before dereferencing it.
1253
1254 2018-11-06  Tom de Vries  <tdevries@suse.de>
1255
1256         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
1257         program headers.
1258
1259 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
1260
1261         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
1262         so that it applies to uclinux as well.
1263
1264 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
1265
1266         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
1267         when on AAPCS.
1268
1269 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
1270
1271         * riscv-fbsd-nat.c (getregs_supplies): Return true for
1272         RISCV_CSR_SSTATUS_REGNUM.
1273
1274 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1275
1276         * source.c (open_source_file): Fix leak by transferring the
1277         current s->fullname to the unique_xmalloc_ptr fullname given
1278         to find_and_open_source.
1279
1280 2018-11-04  Tom Tromey  <tom@tromey.com>
1281
1282         * varobj.c (install_default_visualizer): Update.
1283         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
1284         Return gdbpy_ref.
1285         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
1286         (find_pretty_printer_from_progspace)
1287         (find_pretty_printer_from_gdb, find_pretty_printer)
1288         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
1289         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
1290         Update.
1291
1292 2018-11-04  Tom Tromey  <tom@tromey.com>
1293
1294         * python/python.c (gdbpy_parameter_value): Update.
1295         * python/python-internal.h (python_string_to_unicode)
1296         (python_string_to_target_python_string)
1297         (host_string_to_python_string): Return gdbpy_ref.
1298         * python/py-utils.c (python_string_to_unicode)
1299         (unicode_to_encoded_python_string)
1300         (unicode_to_target_python_string)
1301         (python_string_to_target_string)
1302         (python_string_to_target_python_string): Return gdbpy_ref.
1303         (python_string_to_host_string): Update.
1304         (host_string_to_python_string): Return gdbpy_ref.
1305         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
1306         (stpy_fullname): Update.
1307         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
1308         Update.
1309         * python/py-prettyprint.c (print_string_repr): Update.
1310         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
1311         (objfpy_get_build_id): Update.
1312         * python/py-breakpoint.c (bppy_get_location)
1313         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
1314         Update.
1315
1316 2018-11-04  Tom Tromey  <tom@tromey.com>
1317
1318         * python/python-internal.h (gdb_py_object_from_longest)
1319         (gdb_py_object_from_ulongest): Return gdbpy_ref.
1320         * python/py-value.c (valpy_int): Update.
1321         * python/py-utils.c (gdb_py_object_from_longest): Return
1322         gdbpy_ref.
1323         (gdb_py_object_from_ulongest): Likewise.
1324         * python/py-type.c (typy_get_alignof): Update.
1325         * python/py-linetable.c (ltpy_get_all_source_lines)
1326         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
1327         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
1328
1329 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1330
1331         * ada-lang.c (_initialize_ada_language): Fix typo.
1332
1333 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1334
1335         * language.c (type): Remove.
1336         (_initialize_language): Remove assignment to type.
1337
1338 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
1339
1340         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
1341         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
1342         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
1343         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
1344         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
1345         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
1346         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
1347         and aarch64-ravenscar-thread.o.
1348         * NEWS: Add entry documenting Ravenscar tasking support
1349         on AArch64 ELF.
1350
1351 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
1352
1353         * symtab.c (info_functions_command): Initialize quiet flag.
1354         * stack.c (info_args_command): Likewise.
1355
1356 2018-11-01  Jim Wilson  <jimw@sifive.com>
1357
1358         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
1359         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
1360         debugging messages.
1361
1362 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1363
1364         * ada-lang.c (ada_watch_location_expression): New function.
1365         (ada_language_defn): Set la_watch_location_expression to
1366         ada_watch_location_expression.
1367
1368 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1369
1370         * print-utils.c (int_string): Remove unnecessary trailing spaces.
1371
1372 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1373
1374         * rs6000-tdep.c (skip_prologue): Fix potential negative left
1375         shifting.
1376
1377 2018-11-01  Jerome Guitton  <guitton@adacore.com>
1378             Joel Brobecker  <brobecker@adacore.com>
1379
1380         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
1381         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
1382         * arm-pikeos-tdep.c: New file.
1383         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
1384         embedded system.
1385         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
1386
1387 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
1388
1389         * common/pathstuff.c (get_standard_temp_dir): New.
1390         * common/pathstuff.h (get_standard_temp_dir): New.
1391         * config.in: Re-generate.
1392         * configure: Re-generate.
1393         * configure.ac: Don't check for mkdtemp.
1394         * gnulib/aclocal-m4-deps.mk: Re-generate.
1395         * gnulib/aclocal.m4: Re-generate.
1396         * gnulib/config.in: Re-generate.
1397         * gnulib/configure: Re-generate.
1398         * gnulib/import/Makefile.am: Re-generate.
1399         * gnulib/import/Makefile.in: Re-generate.
1400         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1401         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1402         * gnulib/import/m4/mkdtemp.m4: New file.
1403         * gnulib/import/mkdtemp.c: New file.
1404         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
1405         Add mkdtemp module.
1406         * unittests/mkdir-recursive-selftests.c (test): Use
1407         get_standard_temp_dir.
1408         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
1409         ifdef.
1410         * compile/compile.c (get_compile_file_tempdir): Likewise.
1411
1412 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1413
1414         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
1415         (SIG_FRAME_LR_OFFSET64): New define.
1416         (SIG_FRAME_FP_OFFSET64): New define.
1417         (aix_sighandle_frame_cache): New Function.
1418         (aix_sighandle_frame_this_id): New Function.
1419         (aix_sighandle_frame_prev_register): New Function.
1420         (aix_sighandle_frame_sniffer): New Function.
1421         (aix_sighandle_frame_unwind): New global variable.
1422         (rs6000_aix_init_osabi): Install new frame unwinder.
1423
1424 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
1425
1426         PR gdb/23835
1427         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
1428         already defined.
1429
1430 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1431
1432         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
1433
1434 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
1435
1436         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
1437         (producer_is_icc): New function.
1438         (check_producer): Set producer_is_icc field on dwarf2_cu.
1439         (dwarf2_init_integer_type): New function.
1440         (read_base_type): Call dwarf2_init_integer_type instead of
1441         init_integer_type in all cases.
1442         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
1443         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
1444         LEN is greater than 0.
1445
1446 2018-10-30  Tom Tromey  <tom@tromey.com>
1447
1448         * main.c (captured_main_1): Check return value of bfd_init.
1449
1450 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1451
1452         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
1453         Adjust comments.
1454
1455 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1456
1457         * procfs.c: Include common/pathstuff.h.
1458
1459 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1460
1461         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1462         Add missing braces.  No functional change.
1463
1464 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1465
1466         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
1467         to report a bad option and fix indentation.
1468         * demangle.c (demangle_command): Use report_unrecognized_option_error
1469         to report a bad option and correctly report the bad option.
1470
1471 2018-10-27  Tom Tromey  <tom@tromey.com>
1472
1473         PR cli/23364:
1474         * darwin-nat.c (copied_shell): New global.
1475         (may_have_sip): Rename from should_disable_startup_with_shell.
1476         (copy_shell_to_cache, maybe_cache_shell): New functions.
1477         (darwin_nat_target::create_inferior): Update.  Use
1478         copied_shell.
1479
1480 2018-10-27  Tom Tromey  <tom@tromey.com>
1481
1482         * unittests/scoped_fd-selftests.c (test_to_file): New function.
1483         (run_tests): Call test_to_file.
1484         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
1485         temporary files.
1486         * common/scoped_fd.h (scoped_fd::to_file): New method.
1487
1488 2018-10-27  Tom Tromey  <tom@tromey.com>
1489
1490         * unittests/scoped_mmap-selftests.c (test_normal): Use
1491         gdb_mkostemp_cloexec.
1492         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
1493         Use gdb_mkostemp_cloexec.
1494         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
1495         gnulib/config.in, gnulib/configure,
1496         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
1497         gnulib/import/m4/gnulib-cache.m4,
1498         gnulib/import/m4/gnulib-comp.m4: Update.
1499         * gnulib/import/m4/mkostemp.m4: New file.
1500         * gnulib/import/m4/mkstemp.m4: Remove.
1501         * gnulib/import/mkostemp.c: New file.
1502         * gnulib/import/mkstemp.m4: Remove.
1503         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
1504         mkstemp, add mkostemp.  Apply new patch.
1505         * gnulib/import/stdlib.in.h: Apply patch.
1506         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
1507         New file.
1508         * dwarf-index-write.c (write_psymtabs_to_index): Use
1509         gdb_mkostemp_cloexec.
1510         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
1511
1512 2018-10-27  Tom Tromey  <tom@tromey.com>
1513
1514         * unittests/mkdir-recursive-selftests.c: New file.
1515         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1516         unittests/mkdir-recursive-selftests.c.
1517         * dwarf-index-cache.c (mkdir_recursive): Move to
1518         common/filestuff.c.
1519         (index_cache::store): Check return value of mkdir_recursive.
1520         (create_dir_and_check, test_mkdir_recursive): Move to new file.
1521         (_initialize_index_cache): Don't register test.
1522         * common/filestuff.h (mkdir_recursive): Declare.
1523         * common/filestuff.c (mkdir_recursive): Move from
1524         dwarf-index-cache.c.  Return bool.
1525
1526 2018-10-27  Tom Tromey  <tom@tromey.com>
1527
1528         * dwarf-index-write.c (write_psymtabs_to_index): Move
1529         make_temp_filename to common/pathstuff.c.
1530         * common/pathstuff.h (make_temp_filename): Declare.
1531         * common/pathstuff.c (make_temp_filename): New function, moved
1532         from dwarf-index-write.c.
1533
1534 2018-10-27  Tom Tromey  <tom@tromey.com>
1535
1536         * procfs.c (procfs_target::create_inferior): Use get_shell.
1537         * cli/cli-cmds.c (shell_escape): Use get_shell.
1538         * windows-nat.c (windows_nat_target::create_inferior): Use
1539         get_shell.
1540         * common/pathstuff.c (get_shell): New function.
1541         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
1542         (fork_inferior): Use get_shell.
1543         * common/pathstuff.h (get_shell): Declare.
1544
1545 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1546
1547         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
1548
1549 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1550
1551         * stack.c (print_variable_and_value_data): Add preg and treg.
1552         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
1553         and update callers.
1554         (print_frame_arg_vars): Likewise.
1555         (prepare_reg): New function.
1556         (info_locals_command): Extract info print args and use them.
1557         (info_args_command): Likewise.
1558         (_initialize_stack): Modify on-line help.
1559         * symtab.c (treg_matches_sym_type_name): New function.
1560         (search_symbols): New arg t_regexp.
1561         (symtab_symbol_info): New args quiet, regexp, t_regexp.
1562         (info_variables_command): Extract info print args and use them.
1563         (info_functions_command): Likewise.
1564         (info_types_command): Update call to symtab_symbol_info.
1565         (_initialize_symtab): Modify on-line help.
1566         * symtab.h (treg_matches_sym_type_name): New function.
1567         (search_symbols): New t_regexp arg.
1568
1569 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1570
1571         * cli-utils.c (extract_arg_maybe_quoted): New function.
1572         (extract_info_print_args): New function.
1573         (info_print_args_help): New function.
1574         (report_unrecognized_option_error): New function.
1575         * cli-utils.h (extract_arg_maybe_quoted): New function.
1576         (extract_info_print_args): New function.
1577         (info_print_args_help): New function.
1578         (report_unrecognized_option_error): New function.
1579
1580 2018-10-26  Tom Tromey  <tom@tromey.com>
1581
1582         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
1583         (compute_compunit_symtab_includes): Update.
1584         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
1585         (compunit_symtab_ptr): Likewise.
1586
1587 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1588
1589         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
1590         default_print_auxv_entry for specific tag values.
1591
1592 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1593
1594         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
1595
1596 2018-10-26  Jim Wilson  <jimw@sifive.com>
1597
1598         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
1599         (riscv_linux_sigframe_init): Declare.
1600         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
1601         (riscv_linux_sigframe): New.
1602         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
1603         (riscv_linux_sigframe_init): Define.
1604         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
1605
1606         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
1607         (riscv_isa_flen): Likewise.  Drop static.
1608         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
1609         (riscv_isa_flen): Likewise.  Declare.
1610
1611 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1612             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1613
1614         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
1615         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
1616         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
1617         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
1618         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
1619         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
1620         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
1621         Define.
1622         (struct ppc_linux_features) <htm>: New field.
1623         (ppc_linux_no_features): Add initializer for htm field.
1624         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1625         new tdescs.
1626         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
1627         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
1628         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
1629         Define if not already defined.
1630         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
1631         and rs6000/powerpc-isa207-htm-vsx64l.
1632         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
1633         rs6000/powerpc-isa207-htm-vsx64l.xml.
1634         * features/rs6000/power-htm-spr.xml: New file.
1635         * features/rs6000/power-htm-core.xml: New file.
1636         * features/rs6000/power64-htm-core.xml: New file.
1637         * features/rs6000/power-htm-fpu.xml: New file.
1638         * features/rs6000/power-htm-altivec.xml: New file.
1639         * features/rs6000/power-htm-vsx.xml: New file.
1640         * features/rs6000/power-htm-ppr.xml: New file.
1641         * features/rs6000/power-htm-dscr.xml: New file.
1642         * features/rs6000/power-htm-tar.xml: New file.
1643         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
1644         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
1645         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
1646         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
1647         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
1648         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
1649         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1650         fetch_regset with HTM regsets.
1651         (store_register, store_ppc_registers): Call store_regset with HTM
1652         regsets.
1653         (ppc_linux_nat_target::read_description): Set htm field in the
1654         features struct if needed.
1655         * ppc-linux-tdep.c: Include
1656         features/rs6000/powerpc-isa207-htm-vsx32l.c and
1657         features/rs6000/powerpc-isa207-htm-vsx64l.c.
1658         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
1659         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
1660         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
1661         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
1662         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
1663         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
1664         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
1665         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
1666         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
1667         (ppc32_linux_ctarregset): New globals.
1668         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
1669         (ppc_linux_collect_core_cpgrregset): New function.
1670         (ppc_linux_iterate_over_regset_sections): Call back with the htm
1671         regsets.
1672         (ppc_linux_core_read_description): Check if the tm spr section is
1673         present and set htm in the features struct.
1674         (_initialize_ppc_linux_tdep): Call
1675         initialize_tdesc_powerpc_isa207_htm_vsx32l and
1676         initialize_tdesc_powerpc_isa207_htm_vsx64l.
1677         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
1678         Declare.
1679         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
1680         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
1681         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
1682         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
1683         New fields.
1684         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
1685         Likewise.
1686         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
1687         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
1688         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
1689         New enum fields.
1690         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
1691         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
1692         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
1693         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
1694         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
1695         <PPC_CTAR_REGNUM>: Likewise.
1696         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
1697         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
1698         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
1699         (IS_CEFP_PSEUDOREG): Define.
1700         (rs6000_register_name): Hide the upper halves of checkpointed VSX
1701         registers.  Return names for the checkpointed DFP, VSX, and EFP
1702         pseudo registers.
1703         (rs6000_pseudo_register_type): Remove initial assert and raise an
1704         internal error in the else clause instead.  Return types for the
1705         checkpointed DFP, VSX, and EFP pseudo registers.
1706         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
1707         checkpointed DFP pseudo registers.
1708         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
1709         checkpointed VSX pseudo registers.
1710         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
1711         from efpr_pseudo_register_read and
1712         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
1713         registers.
1714         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
1715         Handle checkpointed DFP, VSX, and EFP registers.
1716         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
1717         (efp_ax_pseudo_register_collect): New functions.
1718         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
1719         register logic to new functions.  Handle checkpointed DFP, VSX,
1720         and EFP pseudo registers.
1721         (rs6000_gdbarch_init): Look for and validate the htm features.
1722         Include checkpointed DFP, VSX and EFP pseudo-registers.
1723         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
1724         HTM registers.
1725
1726 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1727
1728         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
1729         without altivec or fpu.
1730
1731 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1732             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1733
1734         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
1735         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
1736         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
1737         Define if not already defined.
1738         * features/rs6000/power-ebb.xml: New file.
1739         * features/rs6000/power-linux-pmu.xml: New file.
1740         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
1741         features.
1742         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
1743         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
1744         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
1745         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
1746         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
1747         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1748         fetch_regset with ebb and pmu regsets.
1749         (store_register, store_ppc_registers): Call store_regset with ebb
1750         and pmu regsets.
1751         (ppc_linux_nat_target::read_description): Set isa207 field in the
1752         features struct if ebb and pmu are avaiable.
1753         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
1754         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
1755         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
1756         and pmu regsets.
1757         (ppc_linux_core_read_description): Check if the pmu section is
1758         present and set isa207 in the features struct.
1759         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
1760         (ppc32_linux_pmuregset): Declare.
1761         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
1762         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
1763         <ppc_sier_regnum>: New field.
1764         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
1765         New enum values.
1766         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
1767         values.
1768         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
1769         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
1770         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
1771         ebb and pmu features.
1772
1773 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1774             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1775
1776         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
1777         (tdesc_powerpc_isa207_vsx64l): Declare.
1778         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
1779         (struct ppc_linux_features) <isa207>: New field.
1780         (ppc_linux_no_features): Add initializer for isa207 field.
1781         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1782         new tdescs.
1783         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
1784         (NT_PPC_TAR): Define if not already defined.
1785         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
1786         rs6000/powerpc-isa207-vsx64l.
1787         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
1788         rs6000/powerpc-isa207-vsx64l.xml.
1789         * features/rs6000/power-tar.xml: New file.
1790         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
1791         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
1792         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
1793         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
1794         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
1795         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
1796         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1797         fetch_regset with the TAR regset.
1798         (store_register, store_ppc_registers): Call store_regset with the
1799         TAR regset.
1800         (ppc_linux_nat_target::read_description): Set isa207 field in the
1801         features struct if needed.
1802         * ppc-linux-tdep.c: Include
1803         features/rs6000/powerpc-isa207-vsx32l.c and
1804         features/rs6000/powerpc-isa207-vsx64l.c.
1805         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
1806         (ppc_linux_iterate_over_regset_sections): Call back with the tar
1807         regset.
1808         (ppc_linux_core_read_description): Check if the tar section is
1809         present and set isa207 in the features struct.
1810         (_initialize_ppc_linux_tdep): Call
1811         initialize_tdesc_powerpc_isa207_vsx32l and
1812         initialize_tdesc_powerpc_isa207_vsx64l.
1813         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
1814         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
1815         (enum) <PPC_TAR_REGNUM>: New enum value.
1816         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
1817         feature.
1818         (ppc_process_record_op31): Record changes to TAR.
1819
1820 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1821             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1822
1823         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
1824         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
1825         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
1826         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
1827         (struct ppc_linux_features) <ppr_dscr>: New field.
1828         (ppc_linux_no_features): Add initializer for ppr_dscr field.
1829         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1830         new tdescs.
1831         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
1832         Define if not already defined.
1833         * features/Makefile (WHICH): Add
1834         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
1835         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
1836         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
1837         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
1838         * features/rs6000/power-dscr.xml: New file.
1839         * features/rs6000/power-ppr.xml: New file.
1840         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
1841         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
1842         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
1843         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
1844         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
1845         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
1846         * ppc-linux-nat.c: Include <sys/uio.h>.
1847         (fetch_regset, store_regset, check_regset): New functions.
1848         (fetch_register, fetch_ppc_registers): Call fetch_regset with
1849         DSCR and PPR regsets.
1850         (store_register, store_ppc_registers): Call store_regset with
1851         DSCR and PPR regsets.
1852         (ppc_linux_get_hwcap2): New function.
1853         (ppc_linux_nat_target::read_description): Call
1854         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
1855         features struct if needed.
1856         * ppc-linux-tdep.c: Include
1857         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
1858         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
1859         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
1860         (ppc32_linux_dscrregset): New globals.
1861         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
1862         and dscr regsets.
1863         (ppc_linux_core_read_description): Check if the ppr and dscr
1864         sections are present and set ppr_dscr in the features struct.
1865         (_initialize_ppc_linux_tdep): Call
1866         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
1867         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
1868         * ppc-linux-tdep.h (ppc32_linux_pprregset)
1869         (ppc32_linux_dscrregset): Declare.
1870         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
1871         <ppc_dscr_regnum>: New field.
1872         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
1873         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
1874         and dscr features.
1875         (ppc_process_record_op31): Record changes to PPR and DSCR.
1876
1877 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1878
1879         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
1880         second initializer line for the have_* variables.  Initialize
1881         have_fpu to 0 instead of 1.
1882
1883 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1884
1885         * arch/ppc-linux-common.c (ppc_linux_match_description):
1886         Parenthesize tdesc assignements and indent them properly.
1887
1888 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1889
1890         * ppc-linux-nat.c (fetch_register): Change if statement to else
1891         if.
1892         (store_register): Likewise.
1893
1894 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1895
1896         * rs6000-tdep.c: Remove reggroups.h include.
1897         (rs6000_pseudo_register_reggroup_p): Remove.
1898         (rs6000_gdbarch_init): Remove call to
1899         set_tdesc_pseudo_register_reggroup_p.
1900
1901 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1902
1903         * reggroups.c (default_register_reggroup_p): Return true for
1904         decfloat registers and float_reggroup.
1905
1906 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1907
1908         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
1909         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
1910         ppc_linux_collect_vrregset by regcache_collect_regset.
1911
1912 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1913
1914         * linux-tdep.c (linux_collect_regset_section_cb): Use
1915         std::vector<gdb_byte> instead of char * and malloc for buf.
1916         Remove xfree.
1917
1918 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1919
1920         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
1921         symtab_start instead of always using language_unknown.
1922
1923 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1924
1925         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
1926         READ_P parameter, catch and ignore register access errors from
1927         either the old or new MISA location.
1928         (riscv_has_feature): Update call to riscv_read_misa_reg.
1929
1930 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1931
1932         * python/py-function.c (convert_values_to_python): Return
1933         gdbpy_ref<>.  Add header comment.
1934         (fnpy_call): Adjust.
1935
1936 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1937
1938         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
1939         (cmdpy_completer_handle_brkchars): Adjust.
1940         (cmdpy_completer): Adjust.
1941
1942 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1943
1944         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1945         Pass correct regnum to raw_supply_zeroed.
1946
1947 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1948
1949         * regcache.c (cooked_read_test): Add CSKY to the list of
1950         architectures with a save_reggroup
1951
1952 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
1953
1954         PR gdb/23368
1955         * infrun.c (follow_exec): In the follow_exec_mode_new case,
1956         transfer terminal state from old new new inferior.
1957         * terminal.h (swap_terminal_info): New function.
1958         * inflow.c (swap_terminal_info): New function.
1959
1960 2018-10-23  Tom Tromey  <tom@tromey.com>
1961
1962         * record-btrace.c (get_thread_current_frame_id): Rename from
1963         get_thread_current_frame.  Return a frame_id.
1964         (record_btrace_start_replaying): Update.
1965
1966 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1967
1968         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
1969         for CSRs.
1970
1971 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
1972
1973         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
1974         have_nonsteppable_watchpoint attribute to 1.
1975
1976 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1977
1978         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
1979         register names.
1980         (struct register_alias): Rename to...
1981         (struct riscv_register_alias): ...this, and update comment.
1982         (riscv_register_aliases): Update type, and alias names.  Remove
1983         CSR names from this list.
1984         (riscv_register_name): Use riscv_gdb_reg_names for int and float
1985         register names.  Add an extra assertion.
1986         (riscv_is_regnum_a_named_csr): New function.
1987         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
1988
1989 2018-10-23  John Darrington  <john@darrington.wattle.id.au>
1990
1991         * configure.tgt: Add configuration for s12z.
1992         * s12z-tdep.c:  New file.
1993         * NEWS: Mention new target.
1994
1995 2018-10-22  Jim Wilson  <jimw@sifive.com>
1996
1997         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
1998         FP reg smaller than FP reg size, and fill with -1 instead of 0.
1999
2000         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
2001         (riscv_register_type): Use them.
2002         (riscv_print_one_register_info): Handle union of floats same as float.
2003         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
2004         riscv_fpreg_q_type fields.
2005
2006 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
2007
2008         * gdbarch.sh (gdbarch_num_cooked_regs): New.
2009         * gdbarch.h: Re-generate.
2010         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
2011         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
2012         * eval.c (evaluate_subexp_standard): Likewise.
2013         * findvar.c (value_of_register): Likewise.
2014         (value_of_register_lazy): Likewise.
2015         (address_from_register): Likewise.
2016         * frame.c (get_frame_register_bytes): Likewise.
2017         * gdbarch-selftests.c (register_to_value_test): Likewise.
2018         * h8300-tdep.c (h8300_register_type): Likewise.
2019         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
2020         (i386_svr4_reg_to_regnum): Likewise.
2021         * infcmd.c (default_print_registers_info): Likewise.
2022         (registers_info): Likewise.
2023         (print_vector_info): Likewise.
2024         (default_print_float_info): Likewise.
2025         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
2026         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
2027         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
2028         (mi_cmd_data_list_changed_registers): Likewise.
2029         (mi_cmd_data_list_register_values): Likewise.
2030         (mi_cmd_data_write_register_values): Likewise.
2031         (mi_cmd_trace_frame_collected): Likewise.
2032         * mips-tdep.c (print_gp_register_row): Likewise.
2033         (mips_print_registers_info): Likewise.
2034         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
2035         * regcache.c (init_regcache_descr): Likewise.
2036         (register_size): Likewise.
2037         (register_dump::dump): Likewise.
2038         (cooked_read_test): Likewise.
2039         (cooked_write_test): Likewise.
2040         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
2041         (rs6000_gdbarch_init): Likewise.
2042         * stabsread.c (stab_reg_to_regnum): Likewise.
2043         * stack.c (info_frame_command): Likewise.
2044         * target-descriptions.c (tdesc_register_name): Likewise.
2045         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
2046         * tui/tui-regs.c (tui_show_register_group): Likewise.
2047         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
2048         (user_reg_map_regnum_to_name): Likewise.
2049         (value_of_user_reg): Likewise.
2050         (maintenance_print_user_registers): Likewise.
2051         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
2052         (xtensa_register_name): Likewise.
2053         (xtensa_register_type): Likewise.
2054         (xtensa_reg_to_regnum): Likewise.
2055         (xtensa_pseudo_register_read): Likewise.
2056         (xtensa_pseudo_register_write): Likewise.
2057
2058 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
2059
2060         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
2061         correctly-sized buffer with raw_read.
2062         (amd64_pseudo_register_write): Use correctly-sized buffer for
2063         raw_read/raw_write.
2064
2065 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2066
2067         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
2068         in add_prefix_cmd of set print type.
2069
2070 2018-10-19  Tom Tromey  <tom@tromey.com>
2071
2072         PR tui/18388:
2073         * NEWS: Mention tabset deprecation.
2074         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
2075         (update_tab_width): New function.
2076         (tui_set_tab_width, tui_show_tab_width): New functions.
2077         (tui_set_tab_width_command): Use update_tab_width.
2078         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
2079         Add new "set tui tab-width" command.
2080         * tui/tui-source.c (tui_set_source_content): Update.
2081         * tui/tui-disasm.c (tui_set_disassem_content): Update.
2082         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
2083         Don't declare.
2084         (tui_tab_width): Declare.
2085         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
2086         (tui_set_default_tab_len): Remove.
2087
2088 2018-10-19  Tom Tromey  <tom@tromey.com>
2089
2090         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
2091         (key_is_backspace, tui_getc): Don't declare.
2092         * tui/tui-io.c (key_is_start_sequence): Now static.
2093         (key_is_end_sequence, key_is_backspace): Remove.
2094         (tui_getc): Now static.
2095
2096 2018-10-19  Tom Tromey  <tom@tromey.com>
2097
2098         * symfile.c (reread_symbols): Clear "static_links".
2099
2100 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
2101
2102         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
2103         define.
2104         (aarch64_linux_sigframe_init): Extra boundary checks.
2105
2106 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
2107
2108         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
2109         the possibly non-existent tdesc type 'vec128', but the type of raw
2110         register v16 instead.
2111
2112 2018-10-19  Gary Benson <gbenson@redhat.com>
2113
2114         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
2115
2116 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
2117
2118         PR cli/23785
2119         * cli/cli-dump.c (restore_binary_file): Check if "file" is
2120         NULL.
2121
2122 2018-10-17  Paul Koning  <paul_koning@dell.com>
2123
2124         * charset.c (convert_between_encodings): Fix unsigned overflow.
2125
2126 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
2127
2128         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
2129         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
2130         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
2131         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
2132         New functions.
2133         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
2134         and fbsd_info_proc_mappings_header.
2135         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
2136         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
2137         New.
2138
2139 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
2140
2141         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
2142         Solaris Maintainer.
2143
2144 2018-10-15  Tom Tromey  <tom@tromey.com>
2145
2146         * tui/tui.c (strcat_to_buf): Remove casts.
2147         * tui/tui-winsource.c (tui_show_source_line)
2148         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
2149         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
2150         * tui/tui-windata.c (tui_first_data_item_displayed)
2151         (tui_delete_data_content_windows, tui_erase_data_content)
2152         (tui_display_all_data, tui_display_data_from)
2153         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
2154         * tui/tui-win.c (tui_set_win_height)
2155         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
2156         casts.
2157         * tui/tui-win.c (tui_resize_all): Remove casts.
2158         (tui_scroll_backward_command, tui_set_focus)
2159         (tui_set_tab_width_command): Likewise.
2160         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
2161         * tui/tui-regs.c (tui_show_register_group): Remove cast.
2162         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
2163         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
2164         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
2165         Remove casts.
2166
2167 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
2168
2169         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
2170         AArch64/ARM maintainer.
2171
2172 2018-10-11  Gary Benson <gbenson@redhat.com>
2173
2174         * interps.h (interp::m_name): Make private and mutable.
2175         * interps.c (interp::~interp): Free m_name.
2176
2177 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2178             Simon Marchi <simark@simark.ca>
2179
2180         * README (`configure' options): Add documentation for new
2181         "--enable-unit-tests" option.
2182         * acinclude.m4: Include "selftest.m4".
2183         * configure: Regenerate.
2184         * configure.ac: Use "GDB_AC_SELFTEST".
2185         * maint.c (maintenance_selftest): Update message informing
2186         that selftests have been disabled.
2187         (maintenance_info_selftests): Likewise.
2188         * selftest.m4: New file.
2189
2190 2018-10-10  Gary Benson <gbenson@redhat.com>
2191
2192         * remote.c (remote_target::remote_send_printf): Add
2193         missing va_end found by Coverity.
2194
2195 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
2196
2197         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
2198
2199 2018-10-09  Tom Tromey  <tom@tromey.com>
2200
2201         * configure: Rebuild.
2202         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
2203         * NEWS: Update --enable-ubsan documentation.
2204
2205 2018-10-09  Gary Benson <gbenson@redhat.com>
2206
2207         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
2208         found by Coverity.
2209
2210 2018-10-08  Tom Tromey  <tom@tromey.com>
2211
2212         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
2213         variable.
2214         (riscv_fbsd_init_abi): Likewise.
2215
2216 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
2217         * valops.c (value_struct_elt_for_reference): Rename local variable
2218         to work around the shadowing a previous local warning.
2219
2220 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2221
2222         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
2223         * NEWS: Mention new FreeBSD/riscv native configuration.
2224         * configure.host: Add riscv*-*-freebsd*.
2225         * configure.nat: Likewise.
2226         * riscv-fbsd-nat.c: New file.
2227
2228 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2229
2230         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
2231         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
2232         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
2233         * NEWS: Mention new FreeBSD/riscv target.
2234         * configure.tgt: Add riscv*-*-freebsd*.
2235         * riscv-fbsd-tdep.c: New file.
2236         * riscv-fbsd-tdep.h: New file.
2237
2238 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2239
2240         * regcache.h (struct regcache_map_entry): Note that this type can
2241         be used with traditional frame caches.
2242         * trad-frame.c (trad_frame_set_reg_regmap): New.
2243         * trad-frame.h (trad_frame_set_reg_regmap): New.
2244
2245 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
2246
2247         PR c++/16841
2248         * valops.c (get_virtual_base_offset): New function.
2249         (value_struct_elt_for_reference): Use it to get virtual base offset
2250         and add it in calculating class member address.
2251
2252 2018-10-08  John Darrington  <john@darrington.wattle.id.au>
2253
2254         * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
2255         (check_producer): Check if the producer is codewarrior.
2256         (producer_is_codewarrior): New function.
2257         (lnp_state_machine::record_line): Ignore is_stmt flag for records
2258         produced by codewarrior.
2259         (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
2260
2261 2018-10-06  Tom Tromey  <tom@tromey.com>
2262
2263         PR python/19399:
2264         * python/py-inferior.c: Add "architecture" entry.
2265         (infpy_architecture): New function.
2266
2267 2018-10-06  Tom Tromey  <tom@tromey.com>
2268
2269         PR python/21765:
2270         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
2271         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
2272         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
2273         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
2274
2275 2018-10-06  Tom Tromey  <tom@tromey.com>
2276
2277         PR build/17077:
2278         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
2279         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
2280         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
2281         #include.
2282
2283 2018-10-06  Tom Tromey  <tom@tromey.com>
2284
2285         * python/py-breakpoint.c (bppy_get_location): Handle a
2286         bp_breakpoint without a location.
2287
2288 2018-10-06  Tom Tromey  <tom@tromey.com>
2289
2290         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
2291         (_RegEx): Reformat help text.
2292         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
2293         (AnyCallerIs, AnyCallerMatches): Reformat help text.
2294         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
2295         text.
2296         * python/lib/gdb/command/xmethods.py (InfoXMethod)
2297         (EnableXMethod, DisableXMethod): Remove help indentation.
2298         Capitalize meta-syntactic variables.
2299         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
2300         (EnableUnwinder, DisableUnwinder): Remove help indentation.
2301         Capitalize meta-syntactic variables.
2302         * python/lib/gdb/command/explore.py (ExploreCommand)
2303         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
2304         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
2305         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
2306         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
2307         Remove help indentation.
2308         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
2309         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
2310         (DisableFrameFilter, SetFrameFilterPriority)
2311         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
2312
2313 2018-10-06  Tom Tromey  <tom@tromey.com>
2314
2315         PR tui/28819:
2316         * tui/tui-io.c (gdb_wgetch): New function.
2317         (tui_mld_getc, tui_getc): Use it.
2318
2319 2018-10-05  Tom Tromey  <tom@tromey.com>
2320
2321         * sol-thread.c (sol_thread_target::wait): Rename inner
2322         "save_ptid".
2323
2324 2018-10-04  Tom Tromey  <tom@tromey.com>
2325
2326         * configure: Rebuild.
2327         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
2328
2329 2018-10-04  Tom Tromey  <tom@tromey.com>
2330
2331         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
2332         declaration of "block".
2333
2334 2018-10-04  Tom Tromey  <tom@tromey.com>
2335
2336         * common/filestuff.c (fdwalk): Remove inner declaration of
2337         "result".
2338
2339 2018-10-04  Tom Tromey  <tom@tromey.com>
2340
2341         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
2342         "structs_addr" and hoist declaration.
2343
2344 2018-10-04  Tom Tromey  <tom@tromey.com>
2345
2346         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
2347         variable "size".
2348
2349 2018-10-04  Tom Tromey  <tom@tromey.com>
2350
2351         * mdebugread.c (parse_partial_symbols): Use std::string.
2352
2353 2018-10-04  Tom Tromey  <tom@tromey.com>
2354
2355         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
2356         * p-valprint.c (pascal_val_print): Split inner "i" variable.
2357         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
2358         header.
2359         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
2360         more inner scope.
2361         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
2362         * varobj.c (varobj_update): Rename inner "newobj",
2363         "type_changed".
2364         * valprint.c (generic_emit_char): Rename inner "buf".
2365         * valops.c (find_overload_match): Rename inner "temp".
2366         (value_struct_elt_for_reference): Declare "v" in more inner
2367         scope.
2368         * v850-tdep.c (v850_push_dummy_call): Rename "len".
2369         * unittests/array-view-selftests.c (run_tests): Rename inner
2370         "vec".
2371         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
2372         header.
2373         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
2374         "tsv" in more inner scope.
2375         (print_one_static_tracepoint_marker): Rename inner
2376         "tuple_emitter".
2377         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
2378         (tic6x_push_dummy_call): Don't redeclare "addr".
2379         * target-float.c: Declare "dto" lower.
2380         * symtab.c (lookup_local_symbol): Rename inner "sym".
2381         (find_pc_sect_line): Rename inner "pc".
2382         * stack.c (print_frame): Don't redeclare "gdbarch".
2383         (return_command): Rename inner "gdbarch".
2384         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
2385         "sp".
2386         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
2387         header.
2388         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
2389         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
2390         scope.
2391         * remote.c (remote_target::update_thread_list): Don't redeclare
2392         "tp".
2393         (remote_target::process_initial_stop_replies): Rename inner
2394         "thread".
2395         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
2396         (remote_target::wait_as): Don't redeclare "stop_reply".
2397         (remote_target::get_thread_local_address): Rename inner
2398         "result".
2399         (remote_target::get_tib_address): Likewise.
2400
2401         * regcache.c (cooked_read_test): Rename "regnum".
2402         * record-btrace.c (cmd_record_btrace_start): Rename inner
2403         "exception".
2404         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
2405         loop header.
2406         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
2407         header.
2408         (ppu2spu_sniffer): Rename inner "buf".
2409         * parse.c (operator_check_standard): Rename inner "type",
2410         "objfile".
2411         * p-valprint.c (pascal_val_print): Introduce new scope for
2412         "low_bound", "high_bound".
2413         * p-exp.y (yylex): Declare "i" in loop header.
2414         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
2415         Lower declaration of "s".
2416         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
2417         header.
2418         (nios2_push_dummy_call): Rename "len".
2419         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
2420         "buf".
2421         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
2422         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
2423         (linux_xfer_osdata_modules): Likewise.
2424         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
2425         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
2426         (mips_o64_push_dummy_call): Likewise.
2427         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
2428         "op".
2429         * mi/mi-main.c (list_available_thread_groups): Rename inner
2430         "tuple_emitter".
2431         (mi_cmd_data_read_memory): Rename inner "opts".
2432         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
2433         "tuple_emitter".
2434         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
2435         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
2436         more inner scope.
2437         (parse_partial_symbols): Rename inner "pst", "p", "name"
2438         * main.c (captured_main_1): Rename inner "i"s.
2439         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
2440         "oso2".
2441         * linux-tdep.c (linux_info_proc): Rename inner "filename".
2442         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
2443         * infrun.c (handle_no_resumed): Don't redeclare "thread".
2444         (handle_signal_stop): Rename inner "gdbarch".
2445         (handle_command): Declare "signum" in loop header.
2446         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
2447         "status".
2448         (examine_prologue): Rename inner "sol" and "sof".
2449         (ia64_extract_return_value): Rename inner "val".  Declare another
2450         "val" in a more inner scope.
2451         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
2452         inner scope.
2453         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
2454         "except".
2455         * findvar.c (default_read_var_value): Don't redeclare "addr".
2456         * f-exp.y (yylex): Declare "i" in loop header.
2457         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
2458         Rename inner "type", "expect_type".
2459         (evaluate_subexp_for_sizeof): Rename inner "pc".
2460         * elfread.c (elf_symfile_read): Rename inner "abfd".
2461         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
2462         "bytes_read".
2463         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
2464         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
2465         (dwarf_decode_line_header): Rename inner "lh".
2466         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
2467         "offset".  Declare "i" in loop header.
2468         (disassemble_dwarf_expression): Rename inner "addr_size".
2469         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
2470         inner "result".
2471         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
2472         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
2473         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
2474         "inner_list_emitter".
2475         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
2476         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
2477         declaration in a block.
2478         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
2479         * cp-valprint.c (cp_print_value_fields): Don't redeclare
2480         "obstack_final_size".
2481         * cp-support.c (inspect_type): Declare "i" in loop header.
2482         * compile/compile.c (compile_instance::insert_symbol_error):
2483         Rename inner "e".
2484         * common/agent.c (agent_run_command): Remove inner "ret"
2485         declaration.
2486         * coffread.c (coff_symfile_read): Rename inner "name".
2487         (coff_symfile_read): Rename inner "abfd".
2488         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
2489         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
2490         "high".
2491         * c-exp.y (lex_one_token): Move "len" declaration lower.
2492         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
2493         "gdbarch".
2494         (create_exception_master_breakpoint): Likewise.  Don't redeclare
2495         "b".
2496         (watch_command_1): Declare "mark" later.
2497         (clear_command): Don't shadow "a" or "b".
2498         (delete_command): Rename inner "b".
2499         (delete_trace_command): Likewise.
2500         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
2501         "op".
2502         (arm_gdbarch_init): Remove inner "e_flags".
2503         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
2504         "offset" in inner blocks.
2505
2506 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
2507
2508         * dwarf-index-write.c (file_write): Don't write if the vector is
2509         empty.
2510
2511 2018-10-05  Tom de Vries  <tdevries@suse.de>
2512
2513         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
2514         PyArg_ParseTuple call.
2515
2516 2018-10-05  Tom de Vries  <tdevries@suse.de>
2517
2518         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
2519         PyArg_ParseTuple call.
2520
2521 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
2522
2523         * psymtab.c (recursively_search_psymtabs): Reformat parameters
2524         to avoid exceeding 80 characters per line limit.
2525
2526 2018-10-04  Tom Tromey  <tom@tromey.com>
2527
2528         * symfile.c (syms_from_objfile_1, finish_new_objfile)
2529         (reread_symbols): Update.
2530         * complaints.h (clear_complaints): Remove argument.
2531         * complaints.c (enum complaint_series): Remove.
2532         (series): Remove global.
2533         (complaint_internal): Update.
2534         (clear_complaints): Remove argument.
2535
2536 2018-10-04  Tom Tromey  <tom@tromey.com>
2537
2538         * symfile.c (symbol_file_add_with_addrs): Do not print "no
2539         debugging symbols" message if there is a separate debug objfile.
2540
2541 2018-10-04  Tom Tromey  <tom@tromey.com>
2542
2543         PR cli/19551:
2544         * symfile.c (symbol_file_add_with_addrs): Update output.
2545         * psymtab.c (require_partial_symbols): Update output.
2546
2547 2018-10-04  Tom Tromey  <tom@tromey.com>
2548
2549         PR cli/22234:
2550         * complaints.c: Emit \n.
2551
2552 2018-10-04  Tom Tromey  <tom@tromey.com>
2553
2554         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
2555         (separate_debug_file_exists, find_separate_debug_file)
2556         (add_symbol_file_command, reread_symbols, allocate_symtab)
2557         (allocate_compunit_symtab): Use filtered printing, not
2558         unfiltered.
2559         * psymtab.c (require_partial_symbols, dump_psymtab)
2560         (allocate_psymtab): Use filtered printing, not unfiltered.
2561
2562 2018-10-04  Tom Tromey  <tom@tromey.com>
2563
2564         * complaints.c (complaint_internal): Correctly check complaint
2565         count.
2566
2567 2018-10-04  Tom Tromey  <tom@tromey.com>
2568
2569         * complaints.h (struct complaints): Remove declaration.
2570         * complaints.c (clear_complaints): Remove an unused variable.
2571
2572 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2573
2574         * MAINTAINERS (Write After Approval): Add self.
2575
2576 2018-10-03  Tom Tromey  <tom@tromey.com>
2577
2578         * guile/scm-value.c (gdbscm_value_to_string): Initialize
2579         "buffer_contents".
2580         * coffread.c (coff_symtab_read): Initialize "newobj".
2581
2582 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
2583
2584         * dwarf2read.c (read_func_scope): Remove struct keyword in
2585         range-based for.
2586
2587 2018-10-03  Tom Tromey  <tom@tromey.com>
2588
2589         * README: Mention --enable-ubsan.
2590         * NEWS: Mention --enable-ubsan.
2591         * acinclude.m4: Include sanitize.m4.
2592         * configure: Rebuild.
2593         * configure.ac: Call AM_GDB_UBSAN.
2594         * sanitize.m4: New file.
2595
2596 2018-10-03  Tom Tromey  <tom@tromey.com>
2597
2598         * expression.h (enum exp_opcode): Use uint8_t as base type.
2599         * expprint.c (op_name): Handle invalid opcodes.
2600
2601 2018-10-03  Tom Tromey  <tom@tromey.com>
2602
2603         * parse.c (prefixify_expression): Add assert.
2604         (parse_exp_in_context_1): Throw exception if the expression is
2605         empty.
2606
2607 2018-10-03  Tom Tromey  <tom@tromey.com>
2608
2609         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
2610
2611 2018-10-03  Tom Tromey  <tom@tromey.com>
2612
2613         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
2614
2615 2018-10-03  Tom Tromey  <tom@tromey.com>
2616
2617         * dwarf2read.c (read_subrange_type): Make "negative_mask"
2618         unsigned.
2619
2620 2018-10-03  Tom Tromey  <tom@tromey.com>
2621
2622         * findvar.c (extract_integer): Do work in an unsigned type.
2623
2624 2018-10-03  Tom Tromey  <tom@tromey.com>
2625
2626         * common/enum-flags.h (enum_flags::operator~): Add static assert.
2627         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
2628         base type.
2629         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
2630         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
2631         type.
2632         * c-lang.h (enum c_string_type_values): Use unsigned as base
2633         type.
2634         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
2635
2636 2018-10-03  Tom Tromey  <tom@tromey.com>
2637
2638         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
2639         <~dwarf2_frame_state_reg_info>: Update.
2640         <dwarf2_frame_state_reg_info>: Update.
2641         <alloc_regs>: Add assertion.  Update.
2642         <reg>: Now a std::vector.
2643         <num_regs>: Remove.
2644         <swap>: Update.
2645         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
2646         (execute_cfa_program_test, dwarf2_frame_cache): Update.
2647
2648 2018-10-03  Tom Tromey  <tom@tromey.com>
2649
2650         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
2651
2652 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2653
2654         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
2655
2656 2018-10-02  Tom Tromey  <tom@tromey.com>
2657
2658         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
2659
2660 2018-10-02  John Darrington  <john@darrington.wattle.id.au>
2661
2662         * NEWS: Mention changed commands.
2663         * ser-uds.c: New file.
2664         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
2665         * configure: Regenerate.
2666         * Makefile.in: Add new file.
2667         * serial.c (serial_open): Check if filename is a socket
2668         and lookup the appropriate interface accordingly.
2669
2670 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2671
2672         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
2673         define.
2674         (AARCH64_EXTRA_MAGIC): Likewise.
2675         (AARCH64_FPSIMD_MAGIC): Likewise.
2676         (AARCH64_SVE_MAGIC): Likewise.
2677         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
2678         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
2679         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
2680         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
2681         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
2682         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
2683         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
2684         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
2685         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
2686         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
2687         (read_aarch64_ctx): Add function.
2688         (aarch64_linux_sigframe_init): Detect FP registers.
2689
2690 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2691
2692         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
2693         (AARCH64_D0_REGNUM): Likewise.
2694         (AARCH64_S0_REGNUM): Likewise.
2695         (AARCH64_H0_REGNUM): Likewise.
2696         (AARCH64_B0_REGNUM): Likewise.
2697         (AARCH64_SVE_V0_REGNUM): Likewise.
2698         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
2699         (AARCH64_D0_REGNUM): Likewise.
2700         (AARCH64_S0_REGNUM): Likewise.
2701         (AARCH64_H0_REGNUM): Likewise.
2702         (AARCH64_B0_REGNUM): Likewise.
2703         (AARCH64_SVE_V0_REGNUM): Likewise.
2704
2705 2018-10-01  Gary Benson <gbenson@redhat.com>
2706
2707         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
2708         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
2709         prfpregset_t instead of gdb_prfpregset_t.
2710         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
2711         * configure, config.in: Rebuild.
2712
2713 2018-10-01  Gary Benson <gbenson@redhat.com>
2714
2715         * common/gdb_proc_service.h: New file, factored out from...
2716         * gdb_proc_service.h: Moved common code to the above file.
2717         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
2718
2719 2018-10-01  Gary Benson <gbenson@redhat.com>
2720
2721         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
2722         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
2723
2724 2018-10-01  Gary Benson <gbenson@redhat.com>
2725
2726         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
2727         (AC_CHECK_HEADERS): Check for linux/elf.h.
2728         * configure, config.in: Rebuild.
2729         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
2730         doesn't define elf_fpregset_t.
2731
2732 2018-10-01  Gary Benson <gbenson@redhat.com>
2733
2734         * gdb_proc_service.h: Whitespace change.
2735
2736 2018-10-01  Tom Tromey  <tom@tromey.com>
2737
2738         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
2739         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
2740         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
2741
2742 2018-10-01  Tom Tromey  <tom@tromey.com>
2743
2744         * README: Minor change.
2745
2746 2018-09-30  Pedro Alves  <palves@redhat.com>
2747
2748         * darwin-nat-info.c (darwin_debug_regions_recurse)
2749         (info_mach_exceptions_command): Remove unused local variables.
2750         * darwin-nat.c (darwin_decode_notify_message)
2751         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
2752         (darwin_stop_inferior, darwin_setup_exceptions)
2753         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
2754         (darwin_nat_target::attach, darwin_nat_target::detach)
2755         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
2756         local variables.
2757         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
2758         variables.
2759
2760 2018-09-29  Tom Tromey  <tom@tromey.com>
2761
2762         * README: Remove some leftover text.
2763
2764 2018-09-29  Tom Tromey  <tom@tromey.com>
2765
2766         * PROBLEMS: Rewrite.
2767         * README: Update.
2768
2769 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
2770
2771         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
2772         case with explicit breakpoint kind.
2773         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
2774         'additional_info' and related logic.
2775         (riscv_debug_breakpoints): New variable.
2776         (riscv_breakpoint_kind_from_pc): Use the length of the existing
2777         instruction to determine the breakpoint kind.
2778         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
2779         flag.  Update description of 'set/show riscv
2780         use-compressed-breakpoints' flag.
2781
2782 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
2783
2784         (NEWS): Mention changes to frame related commands.
2785         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
2786         (add_prefix_cmd_suppress_notification): New function.
2787         (add_com_suppress_notification): Call
2788         add_cmd_suppress_notification.
2789         * command.h (add_cmd_suppress_notification): Declare.
2790         (add_prefix_cmd_suppress_notification): Declare.
2791         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
2792         (parse_frame_specification): Moved from stack.c, with
2793         simplification to handle a single argument.
2794         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
2795         switch to the selected frame.  Add a header comment.
2796         * stack.c: Remove 'safe-ctype.h' include.
2797         (find_frame_for_function): Add declaration.
2798         (find_frame_for_address): New function.
2799         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
2800         (frame_selection_by_function_completer): New function.
2801         (info_frame_command): Rename to...
2802         (info_frame_command_core): ...this, and update parameter types.
2803         (select_frame_command): Rename to...
2804         (select_frame_command_core): ...this, and update parameter types.
2805         (frame_command): Rename to...
2806         (frame_command_core): ...this, and update parameter types.
2807         (class frame_command_helper): New class to wrap implementations of
2808         frame related sub-commands.
2809         (frame_apply_cmd_list): New static global.
2810         (frame_cmd_list): Make static.
2811         (select_frame_cmd_list): New global for sub-commands.
2812         (info_frame_cmd_list): New global for sub-commands.
2813         (_initialize_stack): Register sub-commands for 'frame',
2814         'select-frame', and 'info frame'.  Update 'frame apply' commands
2815         to use frame_apply_cmd_list.  Move function local static
2816         frame_apply_list to file static frame_apply_cmd_list for
2817         consistency.
2818         * stack.h (select_frame_command): Delete declarationn.
2819         (select_frame_for_mi): Declare new function.
2820
2821 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2822
2823         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
2824         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
2825         and NOP.
2826
2827 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
2828
2829         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
2830
2831 2018-09-26  Tom Tromey  <tom@tromey.com>
2832
2833         * valops.c (auto_abandon): Remove dead code.
2834
2835 2018-09-26  Tom Tromey  <tom@tromey.com>
2836
2837         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
2838
2839 2018-09-24  Tom Tromey  <tom@tromey.com>
2840
2841         * common/pathstuff.c (get_standard_cache_dir): Make
2842         "xdg_cache_home" and "home" const.
2843         * top.c (init_history): Make "tmpenv" const.
2844         * main.c (get_init_files): Make "homedir" const.
2845
2846 2018-09-23  Tom Tromey  <tom@tromey.com>
2847
2848         PR python/18852:
2849         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
2850
2851 2018-09-23  Tom Tromey  <tom@tromey.com>
2852
2853         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
2854         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
2855         * python/python-internal.h (gdbpy_handle_exception): Declare.
2856         * python/py-utils.c (gdbpy_handle_exception): New function.
2857
2858 2018-09-23  Tom Tromey  <tom@tromey.com>
2859
2860         PR python/17284:
2861         * python/py-type.c (typy_template_argument): Check for negative
2862         argument number.
2863
2864 2018-09-23  Tom Tromey  <tom@tromey.com>
2865
2866         PR python/14062:
2867         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
2868
2869 2018-09-23  Tom Tromey  <tom@tromey.com>
2870
2871         PR python/18170:
2872         * python/py-value.c (valpy_int): Allow conversion from pointer
2873         type.
2874
2875 2018-09-23  Tom Tromey  <tom@tromey.com>
2876
2877         PR python/20126:
2878         * python/py-value.c (valpy_int): Respect type sign.
2879
2880 2018-09-23  Tom Tromey  <tom@tromey.com>
2881
2882         PR python/18352;
2883         * python/py-value.c (valpy_float): Allow conversions from int or
2884         char.
2885         (valpy_int, valpy_long): Allow conversions from float.
2886
2887 2018-09-23  Tom Tromey  <tom@tromey.com>
2888
2889         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
2890         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
2891
2892 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2893
2894         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
2895         __sighndlr.
2896         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
2897
2898 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
2899
2900         * windows-nat.c (windows_nat_target::wait): Remove a spurious
2901         target_terminal::ours().
2902
2903 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
2904
2905         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
2906         of vl to ULONGEST.
2907
2908 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
2909
2910         * breakpoint.c (update_inserted_breakpoint_locations): Remove
2911         redundant condition.
2912
2913 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2914
2915         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
2916
2917         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
2918         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
2919         * sol-thread.c (ps_pdmodel): Don't guard definition.
2920
2921         * procfs.c: Fix formatting.
2922
2923         * procfs.c (sysset_t_alloc): Remove.
2924         (create_procinfo): Use XNEW instead of sysset_t_alloc.
2925         (procfs_debug_inferior): Likewise.
2926         (procfs_set_exec_trap): Likewise.
2927         (proc_set_traced_sysentry): Don't allocate argp dynamically.
2928         (proc_set_traced_sysexit): Likewise.
2929
2930         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
2931         (dead_procinfo): Likewise.
2932         (proc_warn): Likewise.
2933         (proc_error): Likewise.
2934         (proc_get_LDT_entry): Likewise.
2935         (do_attach): Likewise.
2936         (procfs_target::pid_to_str): Likewise.
2937         (iterate_over_mappings): Likewise.
2938
2939         * procfs.c (create_procinfo): Fix ARI warning.
2940         (proc_get_status): Likewise.
2941         (proc_stop_process): Likewise.
2942         (proc_run_process): Likewise.
2943         (proc_kill): Likewise.
2944         (proc_get_LDT_entry): Likewise.
2945         (procfs_find_LDT_entry): Likewise.
2946         (proc_update_threads): Likewise.
2947         (proc_iterate_over_threads): Likewise.
2948         (do_attach): Likewise.
2949         (procfs_xfer_memory): Likewise.
2950         (invalidate_cache): Likewise.
2951         (procfs_target::resume): Likewise.
2952         (procfs_init_inferior): Likewise.
2953         (procfs_set_exec_trap): Likewise.
2954         (procfs_target::thread_alive): Likewise.
2955         (procfs_target::pid_to_exec_file): Likewise.
2956         (iterate_over_mappings): Likewise.
2957         (procfs_target::make_corefile_notes): Likewise.
2958         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
2959
2960         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
2961         (procfs_find_LDT_entry): Likewise.
2962         * sol-thread.c (ps_lgetLDT): Likewise.
2963
2964 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2965
2966         PR tdep/17903
2967         * procfs.c (procfs_target): Declare pid_to_exec_file.
2968         (procfs_target::pid_to_exec_file): New.
2969
2970 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2971
2972         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
2973         renaming.
2974         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
2975         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
2976
2977 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2978
2979         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
2980         (supply_fpregset, fill_fpregset): Move ...
2981         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
2982         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
2983         Remove references to ioctl-based procfs.
2984         Include <sys/reg.h>.
2985         Remove PR_MODEL_NATIVE guards.
2986         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
2987         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
2988
2989 2018-09-19  Xavier Roirand  <roirand@adacore.com>
2990
2991         PR gdb/20981:
2992         * solib-darwin.c (darwin_get_dyld_bfd): New function.
2993         (darwin_solib_get_all_image_info_addr_at_init): Update call.
2994         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
2995
2996 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
2997
2998         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
2999         (fbsd_print_sockaddr_in6): Likewise.
3000
3001 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
3002             Chris January  <chris.january@arm.com>
3003
3004         * eval.c (skip_undetermined_arglist): Skip argument list helper.
3005         (evaluate_subexp_standard): Return a dummy type when
3006         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
3007         OP_F77_UNDETERMINED_ARGLIST case.
3008         * expression.h (enum noside): Update comment.
3009
3010 2018-09-19  George Vasick <george.vasick@oracle.com>
3011
3012         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
3013
3014 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
3015             April Chin <april.chin@oracle.com>
3016             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3017
3018         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
3019         uint_t lwpid_t.
3020         (create_procinfo): Print pids in /proc without leading zeros.
3021
3022 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
3023
3024         * nios2-tdep.c (nios2_gcc_target_options): New.
3025         (nios2_gdb_arch_init): Install new hook.
3026
3027 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
3028
3029         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
3030         New file.
3031         * update-gnulib.sh: Apply patch.
3032         * configure: Re-generate.
3033
3034 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3035
3036         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
3037         description.  Make "info proc" command descriptions more
3038         consistent.
3039
3040 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3041
3042         * NEWS: Mention 'info proc files' command.
3043
3044 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3045
3046         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
3047         descriptors for IP_FILES and IP_ALL.
3048
3049 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3050
3051         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
3052         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
3053         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
3054         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
3055         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
3056         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
3057         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
3058         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
3059         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
3060         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
3061         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
3062         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
3063         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
3064         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
3065         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
3066         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
3067         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
3068         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
3069         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
3070         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
3071         (struct fbsd_sockaddr_un): New types.
3072         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
3073         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
3074         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
3075         (fbsd_core_info_proc_files): New functions.
3076         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
3077         IP_ALL.
3078         * fbsd-tdep.h (fbsd_info_proc_files_header)
3079         (fbsd_info_proc_files_entry): New.
3080
3081 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3082
3083         * defs.h (enum info_proc_what) [IP_FILES]: New value.
3084         * infcmd.c (info_proc_cmd_files): New function.
3085         (_initialize_infcmd): Register 'info proc files' command.
3086
3087 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3088
3089         * gnulib/aclocal-m4-deps.mk: Re-generate.
3090         * gnulib/aclocal.m4: Re-generate.
3091         * gnulib/config.in: Re-generate.
3092         * gnulib/configure: Re-generate.
3093         * gnulib/import/Makefile.am: Re-generate.
3094         * gnulib/import/Makefile.in: Re-generate.
3095         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3096         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3097         * gnulib/import/arpa_inet.in.h: New file.
3098         * gnulib/import/inet_ntop.c: New file.
3099         * gnulib/import/m4/arpa_inet_h.m4: New file.
3100         * gnulib/import/m4/inet_ntop.m4: New file.
3101         * gnulib/import/m4/netinet_in_h.m4: New file.
3102         * gnulib/import/m4/socklen.m4: New file.
3103         * gnulib/import/m4/sockpfaf.m4: New file.
3104         * gnulib/import/m4/stdalign.m4: New file.
3105         * gnulib/import/m4/sys_uio_h.m4: New file.
3106         * gnulib/import/netinet_in.in.h: New file.
3107         * gnulib/import/stdalign.in.h: New file.
3108         * gnulib/import/sys_socket.c: New file.
3109         * gnulib/import/sys_socket.in.h: New file.
3110         * gnulib/import/sys_uio.in.h: New file.
3111         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
3112         module.
3113
3114 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3115
3116         * gnulib/aclocal-m4-deps.mk: New file.
3117         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
3118         deterministically.
3119
3120 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3121
3122         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
3123         KVE_PATH.
3124
3125 2018-09-18  Tom Tromey  <tom@tromey.com>
3126
3127         * compile/compile-object-load.c (struct
3128         link_hash_table_cleanup_data): Add constructor and destructor.
3129         Use DISABLE_COPY_AND_ASSIGN.
3130         (~link_hash_table_cleanup_data): Rename from
3131         link_hash_table_free.  Now a destructor.
3132         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
3133
3134 2018-09-18  Tom Tromey  <tom@tromey.com>
3135
3136         * compile/compile-object-run.c (do_module_cleanup): Use delete.
3137         * compile/compile-object-load.c (struct munmap_list): Move to
3138         header file.
3139         (munmap_list::add): Rename from munmap_list_add; rewrite.
3140         (munmap_list::~munmap_list): Rename from munmap_list_free.
3141         (munmap_listp_free_cleanup): Remove.
3142         (compile_object_load): Update.
3143         * compile/compile-object-load.h (struct munmap_list): Move from
3144         compile-object-load.c.  Rewrite.
3145
3146 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
3147
3148         * aarch64-tdep.c (pass_in_v): Use register size.
3149         (aarch64_extract_return_value): Likewise.
3150         (aarch64_store_return_value): Likewise.
3151
3152 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3153
3154         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
3155         rlim_t.
3156
3157 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3158
3159         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
3160         Fix short help line.
3161
3162 2018-09-17  Tom Tromey  <tom@tromey.com>
3163
3164         PR python/20445:
3165         * configure: Rebuild.
3166         * configure.ac: Conditionally use -DNDEBUG for Python.
3167
3168 2018-09-17  Tom Tromey  <tom@tromey.com>
3169
3170         * configure: Rebuild.
3171         * configure.ac: Use gmp as a library dependency when checking for
3172         mpfr.
3173
3174 2018-09-17  Pedro Alves  <palves@redhat.com>
3175
3176         * python/py-inferior.c (find_inferior_object): Delete.
3177
3178 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
3179
3180         * compile/compile-cplus-types.c
3181         (compile_cplus_instance::enter_scope): Don't use new_scope after
3182         std::move.
3183
3184 2018-09-17  Tom Tromey  <tom@tromey.com>
3185
3186         * common/pathstuff.c (get_standard_cache_dir): Use
3187         ~/Library/Caches on macOS.
3188         * common/pathstuff.h (get_standard_cache_dir): Update comment.
3189
3190 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
3191
3192         PR python/23669
3193         * breakpoint.c (commands_cmd_element): New.
3194         (_initialize_breakpoint): Assign commands_cmd_element.
3195         * breakpoint.h (commands_cmd_element): New.
3196         * cli/cli-script.c (while_cmd_element, if_command,
3197         define_cmd_element): New.
3198         (command_name_equals): Remove.
3199         (process_next_line): Compare commands by pointer, not by name.
3200         (_initialize_cli_script): Assign the various cmd_list_element
3201         variables.
3202         * compile/compile.c (compile_cmd_element): New.
3203         (_initialize_compile): Assign compile_cmd_element.
3204         * compile/compile.h (compile_cmd_element): New.
3205         * guile/guile.c (guile_cmd_element): New.
3206         (install_gdb_commands): Assign guile_cmd_element.
3207         * guile/guile.h (guile_cmd_element): New.
3208         * python/python.c (python_cmd_element): New.
3209         (_initialize_python): Assign python_cmd_element.
3210         * python/python.h (python_cmd_element): New.
3211         * tracepoint.c (while_stepping_cmd_element): New.
3212         (_initialize_tracepoint): Assign while_stepping_cmd_element.
3213         * tracepoint.h (while_stepping_cmd_element): New.
3214
3215 2018-09-17  Tom Tromey  <tom@tromey.com>
3216
3217         * infrun.c (save_infcall_suspend_state): Return
3218         infcall_suspend_state_up.
3219         (save_infcall_control_state): Return infcall_control_state_up.
3220         * inferior.h (save_infcall_suspend_state)
3221         (save_infcall_control_state): Declare later.  Return unique
3222         pointers.
3223
3224 2018-09-17  Tom Tromey  <tom@tromey.com>
3225
3226         * infrun.c (struct stop_context): Declare constructor,
3227         destructor, "changed" method.
3228         (stop_context::stop_context): Rename from save_stop_context.
3229         (stop_context::~stop_context): Rename from
3230         release_stop_context_cleanup.
3231         (normal_stop): Update.
3232         (stop_context::changed): Rename from stop_context_changed.  Return
3233         bool.
3234
3235 2018-09-17  Tom Tromey  <tom@tromey.com>
3236
3237         * inferior.h (struct infcall_suspend_state_deleter): New.
3238         (infcall_suspend_state_up): New typedef.
3239         (struct infcall_control_state_deleter): New.
3240         (infcall_control_state_up): New typedef.
3241         (make_cleanup_restore_infcall_suspend_state)
3242         (make_cleanup_restore_infcall_control_state): Don't declare.
3243         * infcall.c (call_function_by_hand_dummy): Update.
3244         * infrun.c (do_restore_infcall_suspend_state_cleanup)
3245         (make_cleanup_restore_infcall_suspend_state): Remove.
3246         (do_restore_infcall_control_state_cleanup)
3247         (make_cleanup_restore_infcall_control_state): Remove.
3248
3249 2018-09-17  Tom Tromey  <tom@tromey.com>
3250
3251         * gdbthread.h (struct thread_control_state): Add initializer.
3252         (class thread_info) <control>: Remove initializer.
3253         * inferior.h (struct inferior_control_state): Add initializer.
3254         (class inferior) <control>: Remove initializer.
3255         (exit_inferior_1): Update.
3256         * infrun.c (struct infcall_control_state): Add constructors.
3257         (save_infcall_control_state): Use new.
3258         (restore_infcall_control_state, discard_infcall_control_state):
3259         Use delete.
3260
3261 2018-09-17  Tom Tromey  <tom@tromey.com>
3262
3263         * infrun.c (struct infcall_suspend_state) <registers>: Now a
3264         unique_ptr.
3265         <siginfo_data>: Now a unique_xmalloc_ptr.
3266         (save_infcall_suspend_state, restore_infcall_suspend_state)
3267         (discard_infcall_suspend_state)
3268         (get_infcall_suspend_state_regcache): Update.
3269
3270 2018-09-17  Tom Tromey  <tom@tromey.com>
3271
3272         * gdbthread.h (struct thread_suspend_state): Add initializers.
3273         (class thread_info) <suspend>: Remove initializer.
3274         * infrun.c (struct infcall_suspend_state): Add initializers.
3275         (save_infcall_suspend_state): Use new.
3276         (discard_infcall_suspend_state): Use delete.
3277
3278 2018-09-16  Tom Tromey  <tom@tromey.com>
3279
3280         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
3281         Remove.
3282         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
3283         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
3284         (py_varobj_iter_new): Likewise.
3285         (py_varobj_get_iterator): Use gdbpy_ref.
3286
3287 2018-09-16  Tom Tromey  <tom@tromey.com>
3288
3289         * python/py-threadevent.c (py_get_event_thread): Simplify.
3290         * python/py-inferior.c (infpy_thread_from_thread_handle):
3291         Return immediately after calling thread_to_thread_object.  Use
3292         Py_RETURN_NONE.
3293         (thread_to_thread_object): Set the exception on a NULL return.
3294
3295 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
3296
3297         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
3298
3299 2018-09-16  Tom Tromey  <tom@tromey.com>
3300
3301         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
3302         Remove.
3303
3304 2018-09-16  Tom Tromey  <tom@tromey.com>
3305
3306         * python/python-internal.h (thread_to_thread_object): Change
3307         return type.
3308         * python/py-inferior.c (thread_to_thread_object): Return a new
3309         reference.
3310         (infpy_thread_from_thread_handle): Update.
3311         * python/py-infthread.c (gdbpy_selected_thread): Update.
3312         * python/py-stopevent.c (create_stop_event_object): Update.
3313         * python/py-threadevent.c (py_get_event_thread): Return a new
3314         reference.
3315         (py_get_event_thread): Update.
3316         * python/py-event.h (py_get_event_thread): Change return type.
3317         * python/py-continueevent.c (create_continue_event_object):
3318         Update.
3319
3320 2018-09-16  Tom Tromey  <tom@tromey.com>
3321
3322         * python/py-progspace.c (pspy_get_objfiles): Update.
3323         * python/python-internal.h (objfile_to_objfile_object): Change
3324         return type.
3325         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3326         Update.
3327         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3328         Update.
3329         * python/python.c (gdbpy_get_current_objfile): Update.
3330         (gdbpy_objfiles): Update.
3331         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
3332         Update.
3333         (objfile_to_objfile_object): Return a new reference.
3334         * python/py-symtab.c (stpy_get_objfile): Update.
3335         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
3336         Update.
3337
3338 2018-09-16  Tom Tromey  <tom@tromey.com>
3339
3340         * python/py-inferior.c (infpy_get_progspace): Update.
3341         * python/python-internal.h (pspace_to_pspace_object): Change
3342         return type.
3343         * python/py-newobjfileevent.c
3344         (create_clear_objfiles_event_object): Update.
3345         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3346         Update.
3347         * python/python.c (gdbpy_get_current_progspace): Update.
3348         (gdbpy_progspaces): Update.
3349         * python/py-progspace.c (pspace_to_pspace_object): Return a new
3350         reference.
3351         * python/py-objfile.c (objfpy_get_progspace): Update.
3352         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
3353         Update.
3354
3355 2018-09-16  Tom Tromey  <tom@tromey.com>
3356
3357         * python/lib/gdb/__init__.py (current_progspace, objfiles)
3358         (solib_name, block_for_pc, find_pc_line): New functions.
3359         (execute_unwinders): Update.
3360         * python/py-block.c (gdbpy_block_for_pc): Remove.
3361         * python/py-inferior.c (infpy_get_progspace): New function.
3362         (inferior_object_getset) <progspace>: Add.
3363         * python/py-progspace.c (pspy_objfiles): Rewrite.
3364         (pspy_solib_name, pspy_block_for_pc)
3365         (pspy_find_pc_line, pspy_is_valid): New functions.
3366         (progspace_object_methods): Add entries for solib_name,
3367         block_for_pc, find_pc_line, is_valid.
3368         * python/python-internal.h (gdbpy_block_for_pc)
3369         (build_objfiles_list): Don't declare.
3370         * python/python.c: Don't include solib.h.
3371         (gdbpy_solib_name, gdbpy_find_pc_line)
3372         (gdbpy_get_current_progspace, build_objfiles_list)
3373         (gdbpy_objfiles): Remove.
3374         (GdbMethods) <current_progspace, objfiles, block_for_pc,
3375         solib_name, find_pc_line>: Remove entries.
3376
3377 2018-09-16  Tom Tromey  <tom@tromey.com>
3378
3379         * top.c (new_ui_command): Use GNU style for metasyntactic
3380         variables.
3381         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
3382         variables.
3383         * maint.c (maintenance_translate_address): Remove "<>" around
3384         text.
3385         * interps.c (interpreter_exec_cmd): Use GNU style for
3386         metasyntactic variables.
3387         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
3388         metasyntactic variables.
3389         * tracepoint.c (tfind_range_command): Use GNU style for
3390         metasyntactic variables.
3391         (tfind_outside_command): Likewise.
3392         (_initialize_tracepoint): Likewise.
3393         * remote.c (extended_remote_target::create_inferior): Use GNU
3394         style for metasyntactic variables.
3395         * sparc64-tdep.c (adi_examine_command): Use GNU style for
3396         metasyntactic variables.
3397         (adi_assign_command): Likewise.
3398
3399 2018-09-16  Tom Tromey  <tom@tromey.com>
3400
3401         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
3402         metasyntactic variables.  Print message if no disassembler options
3403         are available.
3404
3405 2018-09-15  Tom Tromey  <tom@tromey.com>
3406
3407         * infcmd.c (get_inferior_args): Return const char *.
3408         * inferior.h (get_inferior_args): Return type now const.
3409         * linux-tdep.c (linux_fill_prpsinfo): Update.
3410         * procfs.c (procfs_target::make_corefile_notes): Update.
3411
3412 2018-09-07  Tom Tromey  <tom@tromey.com>
3413
3414         * python/python.c (execute_gdb_command): Call bpstat_do_actions
3415         inside the TRY.
3416
3417 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
3418
3419         * nios2-tdep.c (nios2_type_align): New.
3420         (nios2_gdb_arch_init): Install type_align hook.
3421
3422 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
3423
3424         * eval.c (fake_method::fake_method): Call xzalloc directly for a
3425         type that is neither object file owned, nor gdbarch owned.
3426         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
3427         gdbarch is non-NULL.
3428         (alloc_type_instance): Allocate non-objfile owned types on the
3429         gdbarch obstack.
3430         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
3431         using TYPE_ALLOC to ensure memory is allocated on the correct
3432         obstack.
3433         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
3434         obstack, or the gdbarch obstack.
3435         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
3436
3437 2018-09-14  Tom Tromey  <tom@tromey.com>
3438
3439         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
3440         block.
3441
3442 2018-09-14  Tom Tromey  <tom@tromey.com>
3443
3444         * nat/fork-inferior.c (get_startup_shell): Remove "static".
3445
3446 2018-09-13  Tom Tromey  <tom@tromey.com>
3447
3448         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
3449         static.
3450
3451 2018-09-13  Tom Tromey  <tom@tromey.com>
3452
3453         * exec.c (try_open_exec_file): Use std::string.
3454
3455 2018-09-13  Tom Tromey  <tom@tromey.com>
3456
3457         * utils.h (gdb_bfd_errmsg): Return std::string.
3458         * exec.c (exec_file_attach): Update.
3459         * compile/compile-object-load.c (compile_object_load): Update.
3460         * utils.c (gdb_bfd_errmsg): Return std::string.
3461
3462 2018-09-13  Tom Tromey  <tom@tromey.com>
3463
3464         * procfs.c (struct procinfo_deleter): New.
3465         (procinfo_up): New typedef.
3466         (do_destroy_procinfo_cleanup): Remove.
3467         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
3468
3469 2018-09-13  Tom Tromey  <tom@tromey.com>
3470
3471         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
3472
3473 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3474 2018-09-13  Tom Tromey  <tom@tromey.com>
3475
3476         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
3477         (pspy_get_objfiles): New function.
3478         (progspace_object_methods): New.
3479         (pspace_object_type): Add tp_methods callback.
3480         * python/python-internal.h (build_objfiles_list): New
3481         declaration.
3482         * python/python.c (build_objfiles_list): New function.
3483         (gdbpy_objfiles): Implement using build_objfiles_list.
3484         * NEWS: Mention the Progspace.objfiles method.
3485
3486 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3487
3488         * python/py-inferior.c (infpy_get_progspace): New function.
3489         (inferior_object_getset): Add progspace property.
3490         * NEWS: Mention the new property.
3491
3492 2018-09-13  Tom Tromey  <tom@tromey.com>
3493
3494         PR rust/23650:
3495         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
3496
3497 2018-09-13  Tom Tromey  <tom@tromey.com>
3498
3499         PR rust/23626:
3500         * rust-lang.c (rust_enum_variant): Now static.
3501         (rust_empty_enum_p): New function.
3502         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
3503         Handle empty enum.
3504
3505 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3506
3507         * python/py-inferior.c (infpy_repr): New.
3508         (inferior_object_type): Register infpy_repr.
3509         * python/py-objfile.c (objfpy_repr): New.
3510         (objfile_object_type): Register objfpy_repr.
3511
3512 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3513
3514         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
3515
3516 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3517
3518         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
3519         typo.
3520
3521 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
3522
3523         * common/common-utils.c: Don't include '<sys/stat.h>'.
3524         (is_regular_file): Move to...
3525         * common/filestuff.c (is_regular_file): ... here.
3526         * common/common-utils.h (is_regular_file): Move to...
3527         * common/filestuff.h (is_regular_file): ... here.
3528
3529 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
3530
3531         * skip.c (debug_skip): New variable.
3532         (skiplist_entry::do_skip_file_p): Add debug output.
3533         (skiplist_entry::do_skip_gfile_p): Likewise.
3534         (skiplist_entry::skip_function_p): Likewise.
3535         (_initialize_step_skip): Create debug command.
3536         * NEWS: Mention set/show debug skip.
3537
3538 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3539
3540         * darwin-nat.c (should_disable_startup_with_shell):
3541         New function.
3542         (darwin_nat_target::create_inferior): Add call.
3543
3544 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3545
3546         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
3547         inf_port, msg_state>: Initialize.
3548         (struct darwin_thread_info) <signaled, single_step>: Change
3549         type and initialize.
3550         (struct darwin_thread_info) <event>: Initialize.
3551
3552 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3553
3554         PR gdb/23555
3555         PR gdb/23558
3556         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
3557         guesses.
3558
3559 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3560
3561         Revert:
3562         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3563
3564         PR gdb/23555
3565         PR gdb/23558
3566         * gnulib/aclocal.m4: Regenerate.
3567         * gnulib/config.in: Regenerate.
3568         * gnulib/configure: Regenerate.
3569         * gnulib/import/Makefile.am: Update.
3570         * gnulib/import/Makefile.in: Update.
3571         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3572         * gnulib/import/_Noreturn.h: ... this.
3573         * gnulib/import/alloca.in.h: Update.
3574         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3575         * gnulib/import/arg-nonnull.h: ... this.
3576         * gnulib/import/assure.h: Update.
3577         * gnulib/import/at-func.c: Update.
3578         * gnulib/import/basename-lgpl.c: Update.
3579         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3580         * gnulib/import/c++defs.h: ... this.
3581         * gnulib/import/canonicalize-lgpl.c: Update.
3582         * gnulib/import/cdefs.h: Update.
3583         * gnulib/import/chdir-long.c: Update.
3584         * gnulib/import/chdir-long.h: Update.
3585         * gnulib/import/cloexec.c: Update.
3586         * gnulib/import/cloexec.h: Update.
3587         * gnulib/import/close.c: Update.
3588         * gnulib/import/closedir.c: Update.
3589         * gnulib/import/config.charset: Update.
3590         * gnulib/import/dirent-private.h: Update.
3591         * gnulib/import/dirent.in.h: Update.
3592         * gnulib/import/dirfd.c: Update.
3593         * gnulib/import/dirname-lgpl.c: Update.
3594         * gnulib/import/dirname.h: Update.
3595         * gnulib/import/dosname.h: Update.
3596         * gnulib/import/dup-safer-flag.c: Update.
3597         * gnulib/import/dup-safer.c: Update.
3598         * gnulib/import/dup.c: Update.
3599         * gnulib/import/dup2.c: Update.
3600         * gnulib/import/errno.in.h: Update.
3601         * gnulib/import/error.c: Update.
3602         * gnulib/import/error.h: Update.
3603         * gnulib/import/exitfail.c: Update.
3604         * gnulib/import/exitfail.h: Update.
3605         * gnulib/import/extra/update-copyright: Update.
3606         * gnulib/import/fchdir.c: Update.
3607         * gnulib/import/fcntl.c: Update.
3608         * gnulib/import/fcntl.in.h: Update.
3609         * gnulib/import/fd-hook.c: Update.
3610         * gnulib/import/fd-hook.h: Update.
3611         * gnulib/import/fd-safer-flag.c: Update.
3612         * gnulib/import/fd-safer.c: Update.
3613         * gnulib/import/fdopendir.c: Update.
3614         * gnulib/import/filename.h: Update.
3615         * gnulib/import/filenamecat-lgpl.c: Update.
3616         * gnulib/import/filenamecat.h: Update.
3617         * gnulib/import/flexmember.h: Update.
3618         * gnulib/import/float+.h: Update.
3619         * gnulib/import/float.c: Update.
3620         * gnulib/import/float.in.h: Update.
3621         * gnulib/import/fnmatch.c: Update.
3622         * gnulib/import/fnmatch.in.h: Update.
3623         * gnulib/import/fnmatch_loop.c: Update.
3624         * gnulib/import/fpucw.h: Update.
3625         * gnulib/import/frexp.c: Update.
3626         * gnulib/import/frexpl.c: Update.
3627         * gnulib/import/fstat.c: Update.
3628         * gnulib/import/fstatat.c: Update.
3629         * gnulib/import/getcwd-lgpl.c: Update.
3630         * gnulib/import/getcwd.c: Update.
3631         * gnulib/import/getdtablesize.c: Update.
3632         * gnulib/import/getlogin_r.c: Update.
3633         * gnulib/import/getprogname.c: Update.
3634         * gnulib/import/getprogname.h: Update.
3635         * gnulib/import/gettext.h: Update.
3636         * gnulib/import/gettimeofday.c: Update.
3637         * gnulib/import/glob-libc.h: Update.
3638         * gnulib/import/glob.c: Update.
3639         * gnulib/import/glob.in.h: Update.
3640         * gnulib/import/glob_internal.h: Update.
3641         * gnulib/import/glob_pattern_p.c: Update.
3642         * gnulib/import/globfree.c: Update.
3643         * gnulib/import/hard-locale.c: Update.
3644         * gnulib/import/hard-locale.h: Update.
3645         * gnulib/import/intprops.h: Update.
3646         * gnulib/import/inttypes.in.h: Update.
3647         * gnulib/import/isnan.c: Update.
3648         * gnulib/import/isnand-nolibm.h: Update.
3649         * gnulib/import/isnand.c: Update.
3650         * gnulib/import/isnanl-nolibm.h: Update.
3651         * gnulib/import/isnanl.c: Update.
3652         * gnulib/import/itold.c: Update.
3653         * gnulib/import/libc-config.h: Update.
3654         * gnulib/import/limits.in.h: Update.
3655         * gnulib/import/localcharset.c: Update.
3656         * gnulib/import/localcharset.h: Update.
3657         * gnulib/import/localtime-buffer.c: Update.
3658         * gnulib/import/localtime-buffer.h: Update.
3659         * gnulib/import/lstat.c: Update.
3660         * gnulib/import/m4/00gnulib.m4: Update.
3661         * gnulib/import/m4/__inline.m4: Update.
3662         * gnulib/import/m4/absolute-header.m4: Update.
3663         * gnulib/import/m4/alloca.m4: Update.
3664         * gnulib/import/m4/builtin-expect.m4: Update.
3665         * gnulib/import/m4/canonicalize.m4: Update.
3666         * gnulib/import/m4/chdir-long.m4: Update.
3667         * gnulib/import/m4/close.m4: Update.
3668         * gnulib/import/m4/closedir.m4: Update.
3669         * gnulib/import/m4/configmake.m4: Update.
3670         * gnulib/import/m4/d-ino.m4: Update.
3671         * gnulib/import/m4/d-type.m4: Update.
3672         * gnulib/import/m4/dirent_h.m4: Update.
3673         * gnulib/import/m4/dirfd.m4: Update.
3674         * gnulib/import/m4/dirname.m4: Update.
3675         * gnulib/import/m4/double-slash-root.m4: Update.
3676         * gnulib/import/m4/dup.m4: Update.
3677         * gnulib/import/m4/dup2.m4: Update.
3678         * gnulib/import/m4/eealloc.m4: Update.
3679         * gnulib/import/m4/environ.m4: Update.
3680         * gnulib/import/m4/errno_h.m4: Update.
3681         * gnulib/import/m4/error.m4: Update.
3682         * gnulib/import/m4/exponentd.m4: Update.
3683         * gnulib/import/m4/exponentl.m4: Update.
3684         * gnulib/import/m4/extensions.m4: Update.
3685         * gnulib/import/m4/extern-inline.m4: Update.
3686         * gnulib/import/m4/fchdir.m4: Update.
3687         * gnulib/import/m4/fcntl-o.m4: Update.
3688         * gnulib/import/m4/fcntl.m4: Update.
3689         * gnulib/import/m4/fcntl_h.m4: Update.
3690         * gnulib/import/m4/fdopendir.m4: Update.
3691         * gnulib/import/m4/filenamecat.m4: Update.
3692         * gnulib/import/m4/flexmember.m4: Update.
3693         * gnulib/import/m4/float_h.m4: Update.
3694         * gnulib/import/m4/fnmatch.m4: Update.
3695         * gnulib/import/m4/fnmatch_h.m4: Update.
3696         * gnulib/import/m4/fpieee.m4: Update.
3697         * gnulib/import/m4/frexp.m4: Update.
3698         * gnulib/import/m4/frexpl.m4: Update.
3699         * gnulib/import/m4/fstat.m4: Update.
3700         * gnulib/import/m4/fstatat.m4: Update.
3701         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3702         * gnulib/import/m4/getcwd-path-max.m4: Update.
3703         * gnulib/import/m4/getcwd.m4: Update.
3704         * gnulib/import/m4/getdtablesize.m4: Update.
3705         * gnulib/import/m4/getlogin.m4: Update.
3706         * gnulib/import/m4/getlogin_r.m4: Update.
3707         * gnulib/import/m4/getpagesize.m4: Update.
3708         * gnulib/import/m4/getprogname.m4: Update.
3709         * gnulib/import/m4/gettimeofday.m4: Update.
3710         * gnulib/import/m4/glibc21.m4: Update.
3711         * gnulib/import/m4/glob.m4: Update.
3712         * gnulib/import/m4/glob_h.m4: Update.
3713         * gnulib/import/m4/gnulib-cache.m4: Update.
3714         * gnulib/import/m4/gnulib-common.m4: Update.
3715         * gnulib/import/m4/gnulib-comp.m4: Update.
3716         * gnulib/import/m4/gnulib-tool.m4: Update.
3717         * gnulib/import/m4/hard-locale.m4: Update.
3718         * gnulib/import/m4/include_next.m4: Update.
3719         * gnulib/import/m4/inttypes-pri.m4: Update.
3720         * gnulib/import/m4/inttypes.m4: Update.
3721         * gnulib/import/m4/isnand.m4: Update.
3722         * gnulib/import/m4/isnanl.m4: Update.
3723         * gnulib/import/m4/largefile.m4: Update.
3724         * gnulib/import/m4/limits-h.m4: Update.
3725         * gnulib/import/m4/localcharset.m4: Update.
3726         * gnulib/import/m4/locale-fr.m4: Update.
3727         * gnulib/import/m4/locale-ja.m4: Update.
3728         * gnulib/import/m4/locale-zh.m4: Update.
3729         * gnulib/import/m4/localtime-buffer.m4: Update.
3730         * gnulib/import/m4/longlong.m4: Update.
3731         * gnulib/import/m4/lstat.m4: Update.
3732         * gnulib/import/m4/malloc.m4: Update.
3733         * gnulib/import/m4/malloca.m4: Update.
3734         * gnulib/import/m4/math_h.m4: Update.
3735         * gnulib/import/m4/mbrtowc.m4: Update.
3736         * gnulib/import/m4/mbsinit.m4: Update.
3737         * gnulib/import/m4/mbsrtowcs.m4: Update.
3738         * gnulib/import/m4/mbstate_t.m4: Update.
3739         * gnulib/import/m4/memchr.m4: Update.
3740         * gnulib/import/m4/memmem.m4: Update.
3741         * gnulib/import/m4/mempcpy.m4: Update.
3742         * gnulib/import/m4/memrchr.m4: Update.
3743         * gnulib/import/m4/mkdir.m4: Update.
3744         * gnulib/import/m4/mkstemp.m4: Update.
3745         * gnulib/import/m4/mmap-anon.m4: Update.
3746         * gnulib/import/m4/mode_t.m4: Update.
3747         * gnulib/import/m4/msvc-inval.m4: Update.
3748         * gnulib/import/m4/msvc-nothrow.m4: Update.
3749         * gnulib/import/m4/multiarch.m4: Update.
3750         * gnulib/import/m4/nocrash.m4: Update.
3751         * gnulib/import/m4/off_t.m4: Update.
3752         * gnulib/import/m4/onceonly.m4: Update.
3753         * gnulib/import/m4/open-cloexec.m4: Update.
3754         * gnulib/import/m4/open.m4: Update.
3755         * gnulib/import/m4/openat.m4: Update.
3756         * gnulib/import/m4/opendir.m4: Update.
3757         * gnulib/import/m4/pathmax.m4: Update.
3758         * gnulib/import/m4/rawmemchr.m4: Update.
3759         * gnulib/import/m4/readdir.m4: Update.
3760         * gnulib/import/m4/readlink.m4: Update.
3761         * gnulib/import/m4/realloc.m4: Update.
3762         * gnulib/import/m4/rename.m4: Update.
3763         * gnulib/import/m4/rewinddir.m4: Update.
3764         * gnulib/import/m4/rmdir.m4: Update.
3765         * gnulib/import/m4/save-cwd.m4: Update.
3766         * gnulib/import/m4/secure_getenv.m4: Update.
3767         * gnulib/import/m4/setenv.m4: Update.
3768         * gnulib/import/m4/signal_h.m4: Update.
3769         * gnulib/import/m4/ssize_t.m4: Update.
3770         * gnulib/import/m4/stat-time.m4: Update.
3771         * gnulib/import/m4/stat.m4: Update.
3772         * gnulib/import/m4/std-gnu11.m4: Update.
3773         * gnulib/import/m4/stdbool.m4: Update.
3774         * gnulib/import/m4/stddef_h.m4: Update.
3775         * gnulib/import/m4/stdint.m4: Update.
3776         * gnulib/import/m4/stdio_h.m4: Update.
3777         * gnulib/import/m4/stdlib_h.m4: Update.
3778         * gnulib/import/m4/strchrnul.m4: Update.
3779         * gnulib/import/m4/strdup.m4: Update.
3780         * gnulib/import/m4/strerror.m4: Update.
3781         * gnulib/import/m4/string_h.m4: Update.
3782         * gnulib/import/m4/strstr.m4: Update.
3783         * gnulib/import/m4/strtok_r.m4: Update.
3784         * gnulib/import/m4/sys_socket_h.m4: Update.
3785         * gnulib/import/m4/sys_stat_h.m4: Update.
3786         * gnulib/import/m4/sys_time_h.m4: Update.
3787         * gnulib/import/m4/sys_types_h.m4: Update.
3788         * gnulib/import/m4/tempname.m4: Update.
3789         * gnulib/import/m4/time_h.m4: Update.
3790         * gnulib/import/m4/unistd-safer.m4: Update.
3791         * gnulib/import/m4/unistd_h.m4: Update.
3792         * gnulib/import/m4/warn-on-use.m4: Update.
3793         * gnulib/import/m4/wchar_h.m4: Update.
3794         * gnulib/import/m4/wchar_t.m4: Update.
3795         * gnulib/import/m4/wctype_h.m4: Update.
3796         * gnulib/import/m4/wint_t.m4: Update.
3797         * gnulib/import/malloc.c: Update.
3798         * gnulib/import/malloc/scratch_buffer.h: Update.
3799         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3800         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3801         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3802         * gnulib/import/malloca.c: Update.
3803         * gnulib/import/malloca.h: Update.
3804         * gnulib/import/malloca.valgrind: Update.
3805         * gnulib/import/math.in.h: Update.
3806         * gnulib/import/mbrtowc.c: Update.
3807         * gnulib/import/mbsinit.c: Update.
3808         * gnulib/import/mbsrtowcs-impl.h: Update.
3809         * gnulib/import/mbsrtowcs-state.c: Update.
3810         * gnulib/import/mbsrtowcs.c: Update.
3811         * gnulib/import/memchr.c: Update.
3812         * gnulib/import/memmem.c: Update.
3813         * gnulib/import/mempcpy.c: Update.
3814         * gnulib/import/memrchr.c: Update.
3815         * gnulib/import/mkdir.c: Update.
3816         * gnulib/import/mkstemp.c: Update.
3817         * gnulib/import/msvc-inval.c: Update.
3818         * gnulib/import/msvc-inval.h: Update.
3819         * gnulib/import/msvc-nothrow.c: Update.
3820         * gnulib/import/msvc-nothrow.h: Update.
3821         * gnulib/import/open.c: Update.
3822         * gnulib/import/openat-die.c: Update.
3823         * gnulib/import/openat-priv.h: Update.
3824         * gnulib/import/openat-proc.c: Update.
3825         * gnulib/import/openat.c: Update.
3826         * gnulib/import/openat.h: Update.
3827         * gnulib/import/opendir.c: Update.
3828         * gnulib/import/pathmax.h: Update.
3829         * gnulib/import/pipe-safer.c: Update.
3830         * gnulib/import/rawmemchr.c: Update.
3831         * gnulib/import/readdir.c: Update.
3832         * gnulib/import/readlink.c: Update.
3833         * gnulib/import/realloc.c: Update.
3834         * gnulib/import/ref-add.sin: Update.
3835         * gnulib/import/ref-del.sin: Update.
3836         * gnulib/import/rename.c: Update.
3837         * gnulib/import/rewinddir.c: Update.
3838         * gnulib/import/rmdir.c: Update.
3839         * gnulib/import/same-inode.h: Update.
3840         * gnulib/import/save-cwd.c: Update.
3841         * gnulib/import/save-cwd.h: Update.
3842         * gnulib/import/scratch_buffer.h: Update.
3843         * gnulib/import/secure_getenv.c: Update.
3844         * gnulib/import/setenv.c: Update.
3845         * gnulib/import/signal.in.h: Update.
3846         * gnulib/import/stat-time.c: Update.
3847         * gnulib/import/stat-time.h: Update.
3848         * gnulib/import/stat-w32.c: Update.
3849         * gnulib/import/stat-w32.h: Update.
3850         * gnulib/import/stat.c: Update.
3851         * gnulib/import/stdbool.in.h: Update.
3852         * gnulib/import/stddef.in.h: Update.
3853         * gnulib/import/stdint.in.h: Update.
3854         * gnulib/import/stdio.in.h: Update.
3855         * gnulib/import/stdlib.in.h: Update.
3856         * gnulib/import/str-two-way.h: Update.
3857         * gnulib/import/strchrnul.c: Update.
3858         * gnulib/import/strdup.c: Update.
3859         * gnulib/import/streq.h: Update.
3860         * gnulib/import/strerror-override.c: Update.
3861         * gnulib/import/strerror-override.h: Update.
3862         * gnulib/import/strerror.c: Update.
3863         * gnulib/import/string.in.h: Update.
3864         * gnulib/import/stripslash.c: Update.
3865         * gnulib/import/strnlen1.c: Update.
3866         * gnulib/import/strnlen1.h: Update.
3867         * gnulib/import/strstr.c: Update.
3868         * gnulib/import/strtok_r.c: Update.
3869         * gnulib/import/sys_stat.in.h: Update.
3870         * gnulib/import/sys_time.in.h: Update.
3871         * gnulib/import/sys_types.in.h: Update.
3872         * gnulib/import/tempname.c: Update.
3873         * gnulib/import/tempname.h: Update.
3874         * gnulib/import/time.in.h: Update.
3875         * gnulib/import/unistd--.h: Update.
3876         * gnulib/import/unistd-safer.h: Update.
3877         * gnulib/import/unistd.in.h: Update.
3878         * gnulib/import/unsetenv.c: Update.
3879         * gnulib/import/verify.h: Update.
3880         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3881         * gnulib/import/wchar.in.h: Update.
3882         * gnulib/import/wctype.in.h: Update.
3883         * gnulib/import/xalloc-oversized.h: Update.
3884         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3885         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3886
3887 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
3888
3889         * record-btrace.c (get_thread_current_frame): Remove
3890         old_inferior_ptid.
3891
3892 2018-09-10  Jerome Guitton  <guitton@adacore.com>
3893
3894         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
3895         with check_tag to 1 if and only if the type is tagged and the
3896         component being searched cannot been found in the current
3897         view. Otherwise, always call ada_to_fixed_type with
3898         check_tag to 0.
3899
3900 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3901
3902         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
3903         declaration.
3904         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
3905         * ada-varobj.c (ada_varobj_get_number_of_children,
3906         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
3907
3908 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3909
3910         * ada-valprint.c (ada_value_print): Use type instead of
3911         enclosing type.
3912
3913 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3914
3915         * ada-lang.c (ada_value_subscript): Handle case when parameter is
3916         an array of access to unconstrained array.
3917
3918 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3919
3920         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
3921         (ada_check_typedef): Use it.
3922
3923 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3924
3925         * ada-varobj.c (ada_varobj_describe_struct_child)
3926         (ada_varobj_describe_child): Handle union case like struct one.
3927
3928 2018-09-10  Tom Tromey  <tom@tromey.com>
3929
3930         PR python/18380:
3931         * python/python.c (_initialize_python): Make example in "python"
3932         help work in Python 3.
3933
3934 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
3935
3936         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
3937         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
3938         $(EXEEXT) to the script, as it is not a program.
3939
3940 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
3941
3942         * python/py-prettyprint.c (pretty_print_one_value): Return
3943         gdbpy_ref<>.
3944         (print_string_repr): Adjust.
3945         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
3946         * python/python-internal.h (apply_varobj_pretty_printer): Return
3947         gdbpy_ref<>.
3948         * varobj.c (varobj_value_get_print_value): Adjust.
3949
3950 2018-09-08  Tom Tromey  <tom@tromey.com>
3951
3952         PR python/16047:
3953         * python/py-prettyprint.c (pretty_print_one_value): Check for
3954         to_string method.
3955
3956 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3957
3958         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
3959         replace_operator_with_call.
3960
3961 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3962
3963         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
3964
3965 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3966
3967         * ada-typeprint.c (print_range): Print the bounds using TYPE
3968         rather than its TYPE_TARGET_TYPE.
3969
3970 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3971
3972         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
3973         call to ada_to_fixed_value_create.
3974
3975 2018-09-08  Jerome Guitton  <guitton@adacore.com>
3976
3977         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
3978
3979 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3980
3981         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
3982         by calls to error.
3983
3984 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3985
3986         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
3987         Move update of loop variable "fi".
3988
3989 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3990
3991         * ada-lang.c (value_assign_to_component): In the case of
3992         big-endian targets, extract the bits of the given VAL
3993         using an src_offset of zero if container is not a scalar.
3994
3995 2018-09-06  Simon Ser  <contact@emersion.fr>
3996
3997         PR gdb/23105
3998         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
3999         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
4000         * fbsd-tdep.c (fbsd_make_note_desc): New.
4001         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
4002         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
4003         * target.h (enum target_object) Add FreeBSD-specific
4004         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
4005
4006 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
4007
4008         * compile/compile-c.h (generate_c_for_variable_locations):
4009         Change reference to pointer.
4010         * compile/compile-c-support.c (compile_program) <compute>:
4011         Likewise.
4012         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
4013         (generate_c_for_for_one_variable): Likewise
4014         (generate_c_for_variable_locations): Likewise
4015         * compile/compile-c-types.c (compile_c_instance::convert_type):
4016         Likewise
4017         * compile/compile-cplus-symbols.c (convert_one_symbol):
4018         std::move the scope passed to enter_scope.
4019         * compile/compile-cplus-types.c
4020         (compile_cplus_instance::enter_scope): Make parameter
4021         rvalue-reference.
4022         (compile_cplus_instance::new_scope): Change reference to
4023         pointer.
4024         (compile_cplus_instance::convert_type): Likewise
4025         (compile_cplus_convert_typedef): std::move the scope passed to
4026         enter_scope.
4027         (compile_cplus_convert_struct_or_union): Likewise.
4028         (compile_cplus_convert_enum): Likewise.
4029         (compile_cplus_convert_namespace): Likewise.
4030         * compile/compile-cplus.h (compile_cplus_instance)
4031         <enter_scope>: Make parameter rvalue-reference.
4032         * compile/compile-internal.h (compile_instance)
4033         <get_cached_type>: Likewise
4034         * compile/compile-loc2c.c (push): Likewise
4035         (pushf): Likewise
4036         (unary): Likewise
4037         (binary): Likewise
4038         (print_label): Likewise
4039         (pushf_register_address): Likewise
4040         (pushf_register): Likewise
4041         (do_compile_dwarf_expr_to_c): Likewise
4042         (compile_dwarf_expr_to_c): Likewise
4043         (compile_dwarf_bounds_to_c): Likewise
4044         * compile/compile.c (compile_instance::get_cached_type):
4045         Likewise
4046         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
4047         (compile_dwarf_bounds_to_c): Likewise
4048         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
4049         (dwarf2_compile_property_to_c): Likewise
4050         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
4051         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
4052         Likewise
4053
4054 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
4055
4056         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
4057         * tui/tui-data.c (init_content_element): Don't initialize it.
4058
4059 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
4060
4061         * tui/tui-data.h (struct tui_win_info)
4062         <detail::opaque>: Remove.
4063         * tui/tui-data.c (init_win_info): Remove assignment.
4064
4065 2018-09-05  Tom Tromey  <tom@tromey.com>
4066
4067         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
4068         -Wformat-nonliteral.
4069         * target-float.c (host_float_ops<T>::to_string)
4070         (host_float_ops<T>::from_string): Use
4071         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
4072         * configure: Rebuild.
4073
4074 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
4075
4076         * printcmd.c (printf_c_string): Use
4077         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
4078         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
4079
4080 2018-09-05  Tom Tromey  <tom@tromey.com>
4081
4082         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
4083
4084 2018-09-05  Tom de Vries  <tdevries@suse.de>
4085
4086         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
4087         with resolve_abstract_p == true.
4088         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
4089         defaulting to false. Propagate resolve_abstract_p to
4090         dwarf2_fetch_die_loc_sect_off.
4091         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
4092         parameter, defaulting to false.
4093         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
4094         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
4095         parameter.
4096         * dwarf2read.h (struct die_info): Forward-declare.
4097         (die_info_ptr): New typedef.
4098         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
4099
4100 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
4101
4102         GDB 8.2 released.
4103
4104 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
4105             Pedro Alves  <palves@redhat.com>
4106
4107         * gnulib/Makefile.in (aclocal_m4_deps): Move to
4108         "aclocal-m4-deps.mk".  Include file here.
4109         $(srcdir)/aclocal.m4: Add "configure.ac".
4110         * gnulib/aclocal-m4-deps.mk: New file.
4111         * gnulib/update-gnulib.sh: Automatically update
4112         "aclocal-m4-deps.mk".
4113
4114 2018-09-04  Tom Tromey  <tom@tromey.com>
4115
4116         * configure: Rebuild.
4117         * configure.ac: Remove multi-ice code.
4118
4119 2018-09-04  Tom Tromey  <tom@tromey.com>
4120
4121         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
4122         (ada-exp.o): Update.
4123
4124 2018-09-04  Tom Tromey  <tom@tromey.com>
4125
4126         * Makefile.in (printcmd.o, target-float.o): Remove.
4127         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
4128
4129 2018-09-04  Tom Tromey  <tom@tromey.com>
4130
4131         * gnulib/Makefile.in: Remove obsolete comment.
4132         * Makefile.in: Remove obsolete comment.
4133
4134 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
4135
4136         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
4137         line with '+'.
4138
4139 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4140
4141         * riscv-tdep.c: Add 'prologue-value.h' include.
4142         (struct riscv_unwind_cache): New struct.
4143         (riscv_debug_unwinder): New global.
4144         (riscv_scan_prologue): Update arguments, capture register details
4145         from prologue scan.
4146         (riscv_skip_prologue): Reformat arguments line, move end of
4147         prologue calculation into riscv_scan_prologue.
4148         (riscv_frame_cache): Update return type, create
4149         riscv_unwind_cache, scan the prologue, and fill in remaining cache
4150         details.
4151         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
4152         (riscv_frame_prev_register): Use the trad_frame within the
4153         riscv_unwind_cache.
4154         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
4155         flag.
4156
4157 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4158
4159         * trad-frame.h (trad_frame_set_realreg): Declare.
4160         (trad_frame_set_addr): Declare.
4161         * trad-frame.c (trad_frame_set_realreg): Define new function.
4162         (trad_frame_set_addr): Define new function.
4163         (trad_frame_set_reg_realreg): Use new function.
4164         (trad_frame_set_reg_addr): Use new function.
4165
4166 2018-09-01  Keith Seitz  <keiths@redhat.com>
4167
4168         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
4169         pulongest instead of "%lld".
4170         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
4171         ATTRIBUTE_UNUSED.
4172
4173 2018-08-31  Tom Tromey  <tom@tromey.com>
4174
4175         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
4176         variant part type.
4177
4178 2018-08-31  Pedro Alves  <palves@redhat.com>
4179
4180         * gdbarch.h: Regenerate.
4181
4182 2018-08-31  Pedro Alves  <palves@redhat.com>
4183
4184         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
4185         * target.h (Hardware watchpoint interfaces): Describe
4186         continuable/steppable/non-steppable watchpoints.
4187         * gdbarch.h, gdbarch.c: Regenerate.
4188
4189 2018-08-31  Pedro Alves  <palves@redhat.com>
4190
4191         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
4192         Delete.
4193         * s390-linux-nat.c
4194         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
4195         * target.h (target_ops::have_continuable_watchpoint): Delete.
4196         (target_have_continuable_watchpoint): Delete.
4197         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
4198         * target-delegates.c: Regenerate.
4199
4200 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
4201
4202         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
4203         the files present in "gnulib/import/m4/".
4204
4205 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4206
4207         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
4208         c.sw, c.swsp, and c.sdsp.
4209
4210 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4211
4212         * riscv-tdep.c (struct riscv_inferior_data): Delete.
4213         (riscv_read_misa_reg): Don't cache value read into inferior data.
4214         (riscv_new_inferior_data): Delete.
4215         (riscv_inferior_data_cleanup): Delete.
4216         (riscv_inferior_data): Delete.
4217         (riscv_invalidate_inferior_data): Delete.
4218         (_initialize_riscv_tdep): Remove initialisation of inferior data.
4219
4220 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
4221
4222         * compile/compile-cplus-types.c
4223         (compile_cplus_instance::leave_scope): Take the address of scope
4224         object.
4225         (compile_cplus_instance::convert_qualified_base): Compare quals
4226         to 0.
4227
4228 2018-08-30  Keith Seitz  <keiths@redhat.com>
4229
4230         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
4231         Use "%s" and host_address_to_string instead of "%p" in printf.
4232
4233 2018-08-29  Keith Seitz  <keiths@redhat.com>
4234
4235         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
4236         and compile-cplus-types.c.
4237         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
4238         * c-lang.c (cplus_language_defn): Set C++ compile functions.
4239         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
4240         Declare.
4241         * compile/compile-c-support.c: Include compile-cplus.h.
4242         (load_libcompile): Templatize.
4243         (get_compile_context): "New" function.
4244         (c_get_compile_context): Use get_compile_context.
4245         (cplus_get_compile_context): New function.
4246         (cplus_push_user_expression, cplus_pop_user_expression)
4247         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
4248         (cplus_compute_program): Define new structs/functions.
4249         * compile/compile-cplus-symmbols.c: New file.
4250         * compile/compile-cplus-types.c: New file.
4251         * compile/compile-cplus.h: New file.
4252         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
4253         Declare.
4254         * compile/compile-object-load.c (get_out_value_type): Use
4255         strncmp_iw when comparing symbol names.
4256         (compile_object_load): Add mst_bss and mst_data.
4257         * compile/compile.c (_initialize_compile): Remove
4258         -Wno-implicit-function-declaration from `compile_args'.
4259         * compile/gcc-cp-plugin.h: New file.
4260         * NEWS: Mention C++ compile support and new debug options.
4261
4262 2018-08-29  Keith Seitz  <keiths@redhat.com>
4263
4264         * linespec.c (collect_info::add_symbol): Make virtual.
4265         (struct symbol_searcher_collect_info): New struct.
4266         (symbol_searcher::find_all_symbols): New method.
4267         * symtab.h (class symbol_searcher): New class.
4268
4269 2018-08-29  Keith Seitz  <keiths@redhat.com>
4270
4271         * linespec.c (struct linespec) <function_symbols, label_symbols>:
4272         Change to vector of block_symbol.  Update all users.
4273         (struct collect_info) <symbols>: Likewise.
4274         (collect_info::add_symbol): Take block_symbol as argument.
4275         Update all callers.
4276         (decode_compound_collector) <m_symbols>: Change type to vector
4277         of block_symbol.  Update all users.
4278         (decode_compound_collector::operator ()): Change parameter type
4279         to block_symbol.
4280         (find_method, find_function_symbols, find_linespec_symbols)
4281         (find_label_symbols_in_block, find_label_symbols): Change symbol
4282         vectors to block_symbol vectors.
4283         * symtab.h (symbol_found_callback_ftype): Change parameter type to
4284         block_symbol.
4285
4286 2018-08-29  Keith Seitz  <keiths@redhat.com>
4287
4288         * linespec.c (symbolp): Remove typedef and VEC definitions.
4289         (bound_minimal_symbol_d): Likewise.
4290
4291 2018-08-29  Keith Seitz  <keiths@redhat.com>
4292
4293         * linespec.c (decode_compound_collector::decode_compound_collector):
4294         Remove initialization for `m_symtabs'.
4295         (decode_compound_collector::release_symbols): Change return type
4296         to std::vector.  Update all callers.
4297         (class decode_compound_collector) <m_symbols>: Change type to
4298         std::vector.
4299         (lookup_prefix_sym): Change return type to std::vector.  Update all
4300         callers.
4301         (compare_symbols): Remove.
4302         (std_compare_symbols): Rename to `compare_symbols'.
4303         (find_method): Change `sym_classes' parameter to std::vector.
4304         Update all callers.  Use std::sort to sort sym_classes.
4305         (find_linespec_symbols): Remove cleanup.
4306
4307 2018-08-29  Keith Seitz  <keiths@redhat.com>
4308
4309         * linespec.c (struct linespec) <minimal_symbols>: Change type to
4310         std::vector.  Update all users.
4311         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
4312         (struct collect_info) <minimal_symbols>: Likewise.
4313         (compare_msymbols): Return bool.  Change parameters to const
4314         bound_minimal_symbol references.
4315         (find_method, find_function_symbols, find_linespec_symbols): Change
4316         `minsyms' parameter to std::vector.  Update all callers.
4317
4318 2018-08-29  Keith Seitz  <keiths@redhat.com>
4319
4320         * linespec.c (struct linespec) <label_symbols>: Change type to
4321         std::vector.  Update all users.
4322         (find_label_symbols_in_block): Change `result' parameter to
4323         std::vector.  Update all callers.
4324         (find_label_symbols): Return std::vector.  Update all callers.
4325
4326 2018-08-29  Keith Seitz  <keiths@redhat.com>
4327
4328         * linespec.c (struct linespec) <function_symbols>: Change type to
4329         std::vector.  Update all users.
4330         (struct collect_info) <function_symbols>: Likewise.
4331         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
4332         (std_compare_symbols): New function.
4333         (find_method, find_function_symbols, find_linespec_symbols)
4334         (find_label_symbols_in_block): Change `symbols' parameter to
4335         std::vector.  Update all callers.
4336         (find_label_symbols): Likewise for `function_symbols' and
4337         `label_funcs_ret'.
4338
4339 2018-08-29  Keith Seitz  <keiths@redhat.com>
4340
4341         * linespec.c (symtab_vector_up): Define.
4342         (struct linespec) <file_symtabs>: Change type to std::vector *.
4343         Update all uses.
4344         (struct collect_info) <file_symtabs>: Likewise.
4345         (collect_symtabs_from_filename): Return symtab_vector_up.
4346         Update all callers.
4347         (decode_objc): Remove cleanup.
4348         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
4349         (symtab_collector::release_symtabs): Return symtab_vector_up.
4350         Update all callers.
4351         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
4352         Update all users.
4353         (collect_symtabs_from_filename, symtabs_from_filename): Return
4354         symtab_vector_up.  Update all callers.
4355
4356 2018-08-29  Tom Tromey  <tom@tromey.com>
4357
4358         * csky-tdep.c (csky_analyze_prologue): Use
4359         core_addr_to_string_nz.
4360
4361 2018-08-29  Tom Tromey  <tom@tromey.com>
4362
4363         * windows-nat.c (struct xlate_exception) <them>: Change type to
4364         DWORD.
4365         (xlate): Fix formatting.  Remove last entry.
4366         (struct xlate_exception, xlate): Comment out.
4367         (windows_nat_target::resume): Use ranged for.
4368
4369 2018-08-29  Jim Wilson  <jimw@sifive.com>
4370
4371         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
4372         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
4373         of NT_PRFPREG.
4374         (riscv_linux_nat_target::store_registers): Likewise.
4375
4376 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
4377
4378         PR gdb/23555
4379         PR gdb/23558
4380         * gnulib/aclocal.m4: Regenerate.
4381         * gnulib/config.in: Regenerate.
4382         * gnulib/configure: Regenerate.
4383         * gnulib/import/Makefile.am: Update.
4384         * gnulib/import/Makefile.in: Update.
4385         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
4386         * gnulib/import/_Noreturn.h: ... this.
4387         * gnulib/import/alloca.in.h: Update.
4388         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
4389         * gnulib/import/arg-nonnull.h: ... this.
4390         * gnulib/import/assure.h: Update.
4391         * gnulib/import/at-func.c: Update.
4392         * gnulib/import/basename-lgpl.c: Update.
4393         * gnulib/import/extra/snippet/c++defs.h: Rename to...
4394         * gnulib/import/c++defs.h: ... this.
4395         * gnulib/import/canonicalize-lgpl.c: Update.
4396         * gnulib/import/cdefs.h: Update.
4397         * gnulib/import/chdir-long.c: Update.
4398         * gnulib/import/chdir-long.h: Update.
4399         * gnulib/import/cloexec.c: Update.
4400         * gnulib/import/cloexec.h: Update.
4401         * gnulib/import/close.c: Update.
4402         * gnulib/import/closedir.c: Update.
4403         * gnulib/import/config.charset: Update.
4404         * gnulib/import/dirent-private.h: Update.
4405         * gnulib/import/dirent.in.h: Update.
4406         * gnulib/import/dirfd.c: Update.
4407         * gnulib/import/dirname-lgpl.c: Update.
4408         * gnulib/import/dirname.h: Update.
4409         * gnulib/import/dosname.h: Update.
4410         * gnulib/import/dup-safer-flag.c: Update.
4411         * gnulib/import/dup-safer.c: Update.
4412         * gnulib/import/dup.c: Update.
4413         * gnulib/import/dup2.c: Update.
4414         * gnulib/import/errno.in.h: Update.
4415         * gnulib/import/error.c: Update.
4416         * gnulib/import/error.h: Update.
4417         * gnulib/import/exitfail.c: Update.
4418         * gnulib/import/exitfail.h: Update.
4419         * gnulib/import/extra/update-copyright: Update.
4420         * gnulib/import/fchdir.c: Update.
4421         * gnulib/import/fcntl.c: Update.
4422         * gnulib/import/fcntl.in.h: Update.
4423         * gnulib/import/fd-hook.c: Update.
4424         * gnulib/import/fd-hook.h: Update.
4425         * gnulib/import/fd-safer-flag.c: Update.
4426         * gnulib/import/fd-safer.c: Update.
4427         * gnulib/import/fdopendir.c: Update.
4428         * gnulib/import/filename.h: Update.
4429         * gnulib/import/filenamecat-lgpl.c: Update.
4430         * gnulib/import/filenamecat.h: Update.
4431         * gnulib/import/flexmember.h: Update.
4432         * gnulib/import/float+.h: Update.
4433         * gnulib/import/float.c: Update.
4434         * gnulib/import/float.in.h: Update.
4435         * gnulib/import/fnmatch.c: Update.
4436         * gnulib/import/fnmatch.in.h: Update.
4437         * gnulib/import/fnmatch_loop.c: Update.
4438         * gnulib/import/fpucw.h: Update.
4439         * gnulib/import/frexp.c: Update.
4440         * gnulib/import/frexpl.c: Update.
4441         * gnulib/import/fstat.c: Update.
4442         * gnulib/import/fstatat.c: Update.
4443         * gnulib/import/getcwd-lgpl.c: Update.
4444         * gnulib/import/getcwd.c: Update.
4445         * gnulib/import/getdtablesize.c: Update.
4446         * gnulib/import/getlogin_r.c: Update.
4447         * gnulib/import/getprogname.c: Update.
4448         * gnulib/import/getprogname.h: Update.
4449         * gnulib/import/gettext.h: Update.
4450         * gnulib/import/gettimeofday.c: Update.
4451         * gnulib/import/glob-libc.h: Update.
4452         * gnulib/import/glob.c: Update.
4453         * gnulib/import/glob.in.h: Update.
4454         * gnulib/import/glob_internal.h: Update.
4455         * gnulib/import/glob_pattern_p.c: Update.
4456         * gnulib/import/globfree.c: Update.
4457         * gnulib/import/hard-locale.c: Update.
4458         * gnulib/import/hard-locale.h: Update.
4459         * gnulib/import/intprops.h: Update.
4460         * gnulib/import/inttypes.in.h: Update.
4461         * gnulib/import/isnan.c: Update.
4462         * gnulib/import/isnand-nolibm.h: Update.
4463         * gnulib/import/isnand.c: Update.
4464         * gnulib/import/isnanl-nolibm.h: Update.
4465         * gnulib/import/isnanl.c: Update.
4466         * gnulib/import/itold.c: Update.
4467         * gnulib/import/libc-config.h: Update.
4468         * gnulib/import/limits.in.h: Update.
4469         * gnulib/import/localcharset.c: Update.
4470         * gnulib/import/localcharset.h: Update.
4471         * gnulib/import/localtime-buffer.c: Update.
4472         * gnulib/import/localtime-buffer.h: Update.
4473         * gnulib/import/lstat.c: Update.
4474         * gnulib/import/m4/00gnulib.m4: Update.
4475         * gnulib/import/m4/__inline.m4: Update.
4476         * gnulib/import/m4/absolute-header.m4: Update.
4477         * gnulib/import/m4/alloca.m4: Update.
4478         * gnulib/import/m4/builtin-expect.m4: Update.
4479         * gnulib/import/m4/canonicalize.m4: Update.
4480         * gnulib/import/m4/chdir-long.m4: Update.
4481         * gnulib/import/m4/close.m4: Update.
4482         * gnulib/import/m4/closedir.m4: Update.
4483         * gnulib/import/m4/configmake.m4: Update.
4484         * gnulib/import/m4/d-ino.m4: Update.
4485         * gnulib/import/m4/d-type.m4: Update.
4486         * gnulib/import/m4/dirent_h.m4: Update.
4487         * gnulib/import/m4/dirfd.m4: Update.
4488         * gnulib/import/m4/dirname.m4: Update.
4489         * gnulib/import/m4/double-slash-root.m4: Update.
4490         * gnulib/import/m4/dup.m4: Update.
4491         * gnulib/import/m4/dup2.m4: Update.
4492         * gnulib/import/m4/eealloc.m4: Update.
4493         * gnulib/import/m4/environ.m4: Update.
4494         * gnulib/import/m4/errno_h.m4: Update.
4495         * gnulib/import/m4/error.m4: Update.
4496         * gnulib/import/m4/exponentd.m4: Update.
4497         * gnulib/import/m4/exponentl.m4: Update.
4498         * gnulib/import/m4/extensions.m4: Update.
4499         * gnulib/import/m4/extern-inline.m4: Update.
4500         * gnulib/import/m4/fchdir.m4: Update.
4501         * gnulib/import/m4/fcntl-o.m4: Update.
4502         * gnulib/import/m4/fcntl.m4: Update.
4503         * gnulib/import/m4/fcntl_h.m4: Update.
4504         * gnulib/import/m4/fdopendir.m4: Update.
4505         * gnulib/import/m4/filenamecat.m4: Update.
4506         * gnulib/import/m4/flexmember.m4: Update.
4507         * gnulib/import/m4/float_h.m4: Update.
4508         * gnulib/import/m4/fnmatch.m4: Update.
4509         * gnulib/import/m4/fnmatch_h.m4: Update.
4510         * gnulib/import/m4/fpieee.m4: Update.
4511         * gnulib/import/m4/frexp.m4: Update.
4512         * gnulib/import/m4/frexpl.m4: Update.
4513         * gnulib/import/m4/fstat.m4: Update.
4514         * gnulib/import/m4/fstatat.m4: Update.
4515         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
4516         * gnulib/import/m4/getcwd-path-max.m4: Update.
4517         * gnulib/import/m4/getcwd.m4: Update.
4518         * gnulib/import/m4/getdtablesize.m4: Update.
4519         * gnulib/import/m4/getlogin.m4: Update.
4520         * gnulib/import/m4/getlogin_r.m4: Update.
4521         * gnulib/import/m4/getpagesize.m4: Update.
4522         * gnulib/import/m4/getprogname.m4: Update.
4523         * gnulib/import/m4/gettimeofday.m4: Update.
4524         * gnulib/import/m4/glibc21.m4: Update.
4525         * gnulib/import/m4/glob.m4: Update.
4526         * gnulib/import/m4/glob_h.m4: Update.
4527         * gnulib/import/m4/gnulib-cache.m4: Update.
4528         * gnulib/import/m4/gnulib-common.m4: Update.
4529         * gnulib/import/m4/gnulib-comp.m4: Update.
4530         * gnulib/import/m4/gnulib-tool.m4: Update.
4531         * gnulib/import/m4/hard-locale.m4: Update.
4532         * gnulib/import/m4/include_next.m4: Update.
4533         * gnulib/import/m4/inttypes-pri.m4: Update.
4534         * gnulib/import/m4/inttypes.m4: Update.
4535         * gnulib/import/m4/isnand.m4: Update.
4536         * gnulib/import/m4/isnanl.m4: Update.
4537         * gnulib/import/m4/largefile.m4: Update.
4538         * gnulib/import/m4/limits-h.m4: Update.
4539         * gnulib/import/m4/localcharset.m4: Update.
4540         * gnulib/import/m4/locale-fr.m4: Update.
4541         * gnulib/import/m4/locale-ja.m4: Update.
4542         * gnulib/import/m4/locale-zh.m4: Update.
4543         * gnulib/import/m4/localtime-buffer.m4: Update.
4544         * gnulib/import/m4/longlong.m4: Update.
4545         * gnulib/import/m4/lstat.m4: Update.
4546         * gnulib/import/m4/malloc.m4: Update.
4547         * gnulib/import/m4/malloca.m4: Update.
4548         * gnulib/import/m4/math_h.m4: Update.
4549         * gnulib/import/m4/mbrtowc.m4: Update.
4550         * gnulib/import/m4/mbsinit.m4: Update.
4551         * gnulib/import/m4/mbsrtowcs.m4: Update.
4552         * gnulib/import/m4/mbstate_t.m4: Update.
4553         * gnulib/import/m4/memchr.m4: Update.
4554         * gnulib/import/m4/memmem.m4: Update.
4555         * gnulib/import/m4/mempcpy.m4: Update.
4556         * gnulib/import/m4/memrchr.m4: Update.
4557         * gnulib/import/m4/mkdir.m4: Update.
4558         * gnulib/import/m4/mkstemp.m4: Update.
4559         * gnulib/import/m4/mmap-anon.m4: Update.
4560         * gnulib/import/m4/mode_t.m4: Update.
4561         * gnulib/import/m4/msvc-inval.m4: Update.
4562         * gnulib/import/m4/msvc-nothrow.m4: Update.
4563         * gnulib/import/m4/multiarch.m4: Update.
4564         * gnulib/import/m4/nocrash.m4: Update.
4565         * gnulib/import/m4/off_t.m4: Update.
4566         * gnulib/import/m4/onceonly.m4: Update.
4567         * gnulib/import/m4/open-cloexec.m4: Update.
4568         * gnulib/import/m4/open.m4: Update.
4569         * gnulib/import/m4/openat.m4: Update.
4570         * gnulib/import/m4/opendir.m4: Update.
4571         * gnulib/import/m4/pathmax.m4: Update.
4572         * gnulib/import/m4/rawmemchr.m4: Update.
4573         * gnulib/import/m4/readdir.m4: Update.
4574         * gnulib/import/m4/readlink.m4: Update.
4575         * gnulib/import/m4/realloc.m4: Update.
4576         * gnulib/import/m4/rename.m4: Update.
4577         * gnulib/import/m4/rewinddir.m4: Update.
4578         * gnulib/import/m4/rmdir.m4: Update.
4579         * gnulib/import/m4/save-cwd.m4: Update.
4580         * gnulib/import/m4/secure_getenv.m4: Update.
4581         * gnulib/import/m4/setenv.m4: Update.
4582         * gnulib/import/m4/signal_h.m4: Update.
4583         * gnulib/import/m4/ssize_t.m4: Update.
4584         * gnulib/import/m4/stat-time.m4: Update.
4585         * gnulib/import/m4/stat.m4: Update.
4586         * gnulib/import/m4/std-gnu11.m4: Update.
4587         * gnulib/import/m4/stdbool.m4: Update.
4588         * gnulib/import/m4/stddef_h.m4: Update.
4589         * gnulib/import/m4/stdint.m4: Update.
4590         * gnulib/import/m4/stdio_h.m4: Update.
4591         * gnulib/import/m4/stdlib_h.m4: Update.
4592         * gnulib/import/m4/strchrnul.m4: Update.
4593         * gnulib/import/m4/strdup.m4: Update.
4594         * gnulib/import/m4/strerror.m4: Update.
4595         * gnulib/import/m4/string_h.m4: Update.
4596         * gnulib/import/m4/strstr.m4: Update.
4597         * gnulib/import/m4/strtok_r.m4: Update.
4598         * gnulib/import/m4/sys_socket_h.m4: Update.
4599         * gnulib/import/m4/sys_stat_h.m4: Update.
4600         * gnulib/import/m4/sys_time_h.m4: Update.
4601         * gnulib/import/m4/sys_types_h.m4: Update.
4602         * gnulib/import/m4/tempname.m4: Update.
4603         * gnulib/import/m4/time_h.m4: Update.
4604         * gnulib/import/m4/unistd-safer.m4: Update.
4605         * gnulib/import/m4/unistd_h.m4: Update.
4606         * gnulib/import/m4/warn-on-use.m4: Update.
4607         * gnulib/import/m4/wchar_h.m4: Update.
4608         * gnulib/import/m4/wchar_t.m4: Update.
4609         * gnulib/import/m4/wctype_h.m4: Update.
4610         * gnulib/import/m4/wint_t.m4: Update.
4611         * gnulib/import/malloc.c: Update.
4612         * gnulib/import/malloc/scratch_buffer.h: Update.
4613         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
4614         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
4615         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
4616         * gnulib/import/malloca.c: Update.
4617         * gnulib/import/malloca.h: Update.
4618         * gnulib/import/malloca.valgrind: Update.
4619         * gnulib/import/math.in.h: Update.
4620         * gnulib/import/mbrtowc.c: Update.
4621         * gnulib/import/mbsinit.c: Update.
4622         * gnulib/import/mbsrtowcs-impl.h: Update.
4623         * gnulib/import/mbsrtowcs-state.c: Update.
4624         * gnulib/import/mbsrtowcs.c: Update.
4625         * gnulib/import/memchr.c: Update.
4626         * gnulib/import/memmem.c: Update.
4627         * gnulib/import/mempcpy.c: Update.
4628         * gnulib/import/memrchr.c: Update.
4629         * gnulib/import/mkdir.c: Update.
4630         * gnulib/import/mkstemp.c: Update.
4631         * gnulib/import/msvc-inval.c: Update.
4632         * gnulib/import/msvc-inval.h: Update.
4633         * gnulib/import/msvc-nothrow.c: Update.
4634         * gnulib/import/msvc-nothrow.h: Update.
4635         * gnulib/import/open.c: Update.
4636         * gnulib/import/openat-die.c: Update.
4637         * gnulib/import/openat-priv.h: Update.
4638         * gnulib/import/openat-proc.c: Update.
4639         * gnulib/import/openat.c: Update.
4640         * gnulib/import/openat.h: Update.
4641         * gnulib/import/opendir.c: Update.
4642         * gnulib/import/pathmax.h: Update.
4643         * gnulib/import/pipe-safer.c: Update.
4644         * gnulib/import/rawmemchr.c: Update.
4645         * gnulib/import/readdir.c: Update.
4646         * gnulib/import/readlink.c: Update.
4647         * gnulib/import/realloc.c: Update.
4648         * gnulib/import/ref-add.sin: Update.
4649         * gnulib/import/ref-del.sin: Update.
4650         * gnulib/import/rename.c: Update.
4651         * gnulib/import/rewinddir.c: Update.
4652         * gnulib/import/rmdir.c: Update.
4653         * gnulib/import/same-inode.h: Update.
4654         * gnulib/import/save-cwd.c: Update.
4655         * gnulib/import/save-cwd.h: Update.
4656         * gnulib/import/scratch_buffer.h: Update.
4657         * gnulib/import/secure_getenv.c: Update.
4658         * gnulib/import/setenv.c: Update.
4659         * gnulib/import/signal.in.h: Update.
4660         * gnulib/import/stat-time.c: Update.
4661         * gnulib/import/stat-time.h: Update.
4662         * gnulib/import/stat-w32.c: Update.
4663         * gnulib/import/stat-w32.h: Update.
4664         * gnulib/import/stat.c: Update.
4665         * gnulib/import/stdbool.in.h: Update.
4666         * gnulib/import/stddef.in.h: Update.
4667         * gnulib/import/stdint.in.h: Update.
4668         * gnulib/import/stdio.in.h: Update.
4669         * gnulib/import/stdlib.in.h: Update.
4670         * gnulib/import/str-two-way.h: Update.
4671         * gnulib/import/strchrnul.c: Update.
4672         * gnulib/import/strdup.c: Update.
4673         * gnulib/import/streq.h: Update.
4674         * gnulib/import/strerror-override.c: Update.
4675         * gnulib/import/strerror-override.h: Update.
4676         * gnulib/import/strerror.c: Update.
4677         * gnulib/import/string.in.h: Update.
4678         * gnulib/import/stripslash.c: Update.
4679         * gnulib/import/strnlen1.c: Update.
4680         * gnulib/import/strnlen1.h: Update.
4681         * gnulib/import/strstr.c: Update.
4682         * gnulib/import/strtok_r.c: Update.
4683         * gnulib/import/sys_stat.in.h: Update.
4684         * gnulib/import/sys_time.in.h: Update.
4685         * gnulib/import/sys_types.in.h: Update.
4686         * gnulib/import/tempname.c: Update.
4687         * gnulib/import/tempname.h: Update.
4688         * gnulib/import/time.in.h: Update.
4689         * gnulib/import/unistd--.h: Update.
4690         * gnulib/import/unistd-safer.h: Update.
4691         * gnulib/import/unistd.in.h: Update.
4692         * gnulib/import/unsetenv.c: Update.
4693         * gnulib/import/verify.h: Update.
4694         * gnulib/import/extra/snippet/warn-on-use.h: Update.
4695         * gnulib/import/wchar.in.h: Update.
4696         * gnulib/import/wctype.in.h: Update.
4697         * gnulib/import/xalloc-oversized.h: Update.
4698         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
4699         "53e2c179f26a890fa6685af4b6c1397ee370433b".
4700
4701 2018-08-16  Gary Benson <gbenson@redhat.com>
4702
4703         PR gdb/13000:
4704         * gdb/main.c (captured_main_1): Exit with nonzero status
4705         in batch mode if the last command to be executed failed.
4706         * NEWS: Mention the above.
4707
4708 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
4709
4710         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
4711         end of warning message.
4712
4713 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4714
4715         PR gdb/22943:
4716         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
4717         (aarch64_extract_return_value): Use
4718         aapcs_is_vfp_call_or_return_candidate.
4719         (aarch64_return_in_memory): Likewise.
4720         (aarch64_store_return_value): Likewise.
4721
4722 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4723
4724         * aarch64-tdep.c
4725         (aapcs_is_vfp_call_or_return_candidate): Make static
4726         (pass_in_v_or_stack): Remove function.
4727         (pass_in_v_vfp_candidate): New function.
4728         (aarch64_push_dummy_call): Check for float register candidates.
4729
4730 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4731
4732         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
4733         (aapcs_is_vfp_call_or_return_candidate_1): New function.
4734         (aapcs_is_vfp_call_or_return_candidate): Likewise.
4735
4736 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
4737
4738         PR build/23399
4739         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
4740         (struct ipa_sym_addresses): Rename to...
4741         (struct ipa_sym_addresses_common): ... this.
4742         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
4743
4744 2018-08-28  Tom Tromey  <tom@tromey.com>
4745
4746         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4747         (token_fifo): Now a std::vector.
4748         (yylex, c_parse): Update.
4749         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4750         (token_fifo): Now a std::vector.
4751         (yylex, d_parse): Update.
4752         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4753         (token_fifo): Now a std::vector.
4754         (yylex, go_parse): Update.
4755
4756 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
4757
4758         * parser-defs.h (struct type_stack) <elements>: Change type to
4759         std::vector<union type_stack_elt>.
4760         <depth, size>: Remove.
4761         * parse.c (parse_exp_in_context_1): Adjust.
4762         (type_stack_reserve): Remove.
4763         (check_type_stack_depth): Remove.
4764         (insert_into_type_stack): Adjust to std::vector.
4765         (insert_type): Likewise.
4766         (push_type): Likewise.
4767         (push_type_int): Likewise.
4768         (insert_type_address_space): Likewise.
4769         (pop_type): Likewise.
4770         (pop_type_int): Likewise.
4771         (pop_typelist): Likewise.
4772         (pop_type_stack): Likewise.
4773         (append_type_stack): Likewise.
4774         (push_type_stack): Likewise.
4775         (get_type_stack): Likewise.
4776         (type_stack_cleanup): Likewise.
4777         (push_typelist): Likewise.
4778         (follow_types): Likewise.
4779         (_initialize_parse): Likewise.
4780
4781 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
4782
4783         * NEWS: Mention csky target.
4784
4785 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
4786             Hafiz Abid Qadeer  <abidh@codesourcery.com>
4787             Don Breazeal  <donb@codesourcery.com>
4788
4789         * csky-linux-tdep.c: New file.
4790         * csky-tdep.c: Likewise.
4791         * csky-tdep.h: Likewise.
4792         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
4793         csky-tdep.o.
4794         (HFILES_NO_SRCDIR): Add csky-tdep.h.
4795         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
4796         * configure.tgt: Add csky support.
4797
4798 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
4799
4800         * python/py-framefilter.c (py_print_frame): Print frame architecture
4801         when printing on an MI output.
4802
4803 2018-08-27  Tom Tromey  <tom@tromey.com>
4804
4805         PR build/23087:
4806         * configure: Rebuild.
4807         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
4808
4809 2018-08-27  Tom Tromey  <tom@tromey.com>
4810
4811         * aarch64-linux-tdep.c
4812         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
4813         casts to int.
4814
4815 2018-08-27  Tom Tromey  <tom@tromey.com>
4816
4817         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
4818         unsigned.
4819         (ppc64_standard_linkage1, ppc64_standard_linkage2)
4820         (ppc64_standard_linkage3, ppc64_standard_linkage4)
4821         (ppc64_standard_linkage5, ppc64_standard_linkage6)
4822         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
4823         unsigned.
4824
4825 2018-08-27  Tom Tromey  <tom@tromey.com>
4826
4827         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
4828         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
4829
4830 2018-08-27  Tom Tromey  <tom@tromey.com>
4831
4832         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
4833         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
4834         ULONGEST_MAX.
4835         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
4836         ULONGEST_MAX.
4837         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
4838         ULONGEST_MAX.
4839         * sparc-linux-tdep.c (sparc32_linux_sigframe)
4840         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
4841         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
4842         ULONGEST_MAX.
4843         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
4844         (ppc64_linux_sigaction_tramp_frame)
4845         (ppc32_linux_sighandler_tramp_frame)
4846         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4847         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
4848         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
4849         * mn10300-linux-tdep.c (am33_linux_sigframe)
4850         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
4851         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
4852         * mips-linux-tdep.c (mips_linux_o32_sigframe)
4853         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
4854         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
4855         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
4856         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
4857         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
4858         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
4859         * microblaze-linux-tdep.c
4860         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4861         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
4862         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
4863         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
4864         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
4865         * common/common-types.h (ULONGEST_MAX): New define.
4866         (CORE_ADDR_MAX): Fix formatting.
4867         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
4868         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
4869         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
4870         (arm_linux_rt_sigreturn_tramp_frame)
4871         (arm_eabi_linux_sigreturn_tramp_frame)
4872         (arm_eabi_linux_rt_sigreturn_tramp_frame)
4873         (thumb2_eabi_linux_sigreturn_tramp_frame)
4874         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
4875         (arm_linux_restart_syscall_tramp_frame)
4876         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
4877         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
4878         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
4879         ULONGEST_MAX.
4880         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
4881
4882 2018-08-27  Tom Tromey  <tom@tromey.com>
4883
4884         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
4885         CORE_ADDR_MAX.
4886         * mips-tdep.c (mips_deal_with_atomic_sequence)
4887         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
4888         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
4889         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
4890         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
4891         CORE_ADDR_MAX.
4892         * aarch64-tdep.c (aarch64_software_single_step): Use
4893         CORE_ADDR_MAX.
4894
4895 2018-08-27  Tom Tromey  <tom@tromey.com>
4896
4897         * linespec.c (complete_linespec_component): Add cast to "char".
4898         * completer.c (completion_tracker::build_completion_result): Add
4899         cast to "char".
4900
4901 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4902
4903         * solist.h (struct solist, struct target_so_ops): Fix
4904         indentation.
4905
4906 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4907
4908         * ada-tasks.c (ada_task_info_s): Remove typedef.
4909         (DEF_VEC_O(ada_task_info_s)): Remove.
4910         (struct ada_tasks_inferior_data): Initialize fields.
4911         <task_list>: Make an std::vector.
4912         (get_ada_tasks_inferior_data): Allocate with new.
4913         (ada_get_task_number): Adjust.
4914         (get_task_number_from_id): Likewise.
4915         (valid_task_id): Likewise.
4916         (ada_get_task_info_from_ptid): Likewise.
4917         (iterate_over_live_ada_tasks): Likewise.
4918         (add_ada_task): Likewise.
4919         (read_known_tasks): Likewise.
4920         (ada_build_task_list): Likewise.
4921         (print_ada_task_info): Likewise.
4922         (info_task): Likewise.
4923         (task_command_1): Likewise.
4924
4925 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4926
4927         * ada-lang.c (add_angle_brackets): Return std::string.
4928
4929 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
4930
4931         * python/py-threadevent.c (py_get_event_thread): Initialize
4932         pythread.
4933
4934 2018-08-24  Pedro Alves  <palves@redhat.com>
4935
4936         * python/py-bpevent.c (create_breakpoint_event_object): Use
4937         copy-initialization.
4938         * python/py-continueevent.c (emit_continue_event): Use
4939         copy-initialization.
4940         * python/py-exitedevent.c (create_exited_event_object): Return a
4941         gdbpy_ref<>.
4942         (emit_exited_event): Use copy-initialization.
4943         * python/py-inferior.c (python_new_inferior)
4944         (python_inferior_deleted, add_thread_object): Use
4945         copy-initialization.
4946         * python/py-infevents.c (create_inferior_call_event_object)
4947         (create_register_changed_event_object)
4948         (create_memory_changed_event_object): Return a gdbpy_ref<>.
4949         (emit_inferior_call_event, emit_memory_changed_event)
4950         (emit_register_changed_event): Use copy-initialization.
4951         * python/py-newobjfileevent.c (create_new_objfile_event_object):
4952         Return a gdbpy_ref<>.
4953         (emit_new_objfile_event): Use copy-initialization.
4954         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
4955         (emit_clear_objfiles_event): Use copy-initialization.
4956         * python/py-signalevent.c (create_signal_event_object): Use
4957         copy-initialization.
4958         * python/py-threadevent.c (create_thread_event_object): Use
4959         copy-initialization.
4960
4961 2018-08-24  Pedro Alves  <palves@redhat.com>
4962             Simon Marchi  <simon.marchi@ericsson.com>
4963
4964         PR gdb/23379
4965         * python/py-continueevent.c: Include "gdbthread.h".
4966         (create_continue_event_object): Add intro comment.  Add 'ptid'
4967         parameter.  Use it to find thread to pass to
4968         create_thread_event_object.
4969         (emit_continue_event): Pass PTID down to
4970         create_continue_event_object.
4971         * python/py-event.h (py_get_event_thread): Declare.
4972         (create_thread_event_object): Remove default from 'thread'
4973         parameter.
4974         * python/py-stopevent.c (create_stop_event_object): Use
4975         py_get_event_thread.
4976         * python/py-threadevent.c (get_event_thread): Rename to ...
4977         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
4978         and use it to find the thread.
4979         (create_thread_event_object): Assert that THREAD isn't null.
4980         Don't find the event thread here.
4981
4982 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
4983
4984         * block.h (blockrange, blockranges): New struct declarations.
4985         (struct block): Add new field named `ranges'.
4986         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
4987         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
4988         macros for accessing ranges in struct block.
4989         (make_blockranges): New declaration.
4990         block.c (make_blockranges): New function.
4991         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
4992         for block.
4993         * symtab.h (find_pc_partial_function): Add new parameter `block'.
4994         * blockframe.c (cache_pc_function_block): New static global.
4995         (clear_pc_function_cache): Clear cache_pc_function_block.
4996         (find_pc_partial_function): Move comment to symtab.h.  Add
4997         support for non-contiguous blocks.
4998         * cli/cli-cmds.c (block.h): Include.
4999         (print_disassembly): Handle printing of non-contiguous blocks.
5000         (disassemble_current_function): Likewise.
5001         (disassemble_command): Likewise.
5002
5003         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
5004         BLOCK_START.
5005         * blockframe.c (get_pc_function_start): Likewise.
5006         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
5007         (gcc_symbol_address): Likewise.
5008         * compile/compile-object-run.c (compile_object_run): Likewise.
5009         * compile/compile.c (get_expr_block_and_pc): Likewise.
5010         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
5011         (func_addr_to_tail_call_list): Likewise.
5012         * findvar.c (default_read_var_value): Likewise.
5013         * inline-frame.c (inline_frame_this_id): Likewise.
5014         (skip-inline_frames): Likewise.
5015         * infcmd.c (until_next_command): Likewise.
5016         * linespec.c (convert_linespec_to_sals): Likewise.
5017         * parse.c (parse_exp_in_context_1): Likewise.
5018         * printcmd.c (build_address_symbolic): likewise.
5019         (info_address_command): Likewise.
5020         symtab.c (find_function_start_sal): Likewise.
5021         (skip_prologue_sal): Likewise.
5022         (find_function_alias_target): Likewise.
5023         (find_gnu_ifunc): Likewise.
5024         * stack.c (find_frame_funname): Likewise.
5025         * symtab.c (fixup_symbol_section): Likewise.
5026         (find_function_start_sal): Likewise.
5027         (skip_prologue_sal): Likewsie.
5028         (find_function_alias_target): Likewise.
5029         (find_gnu_ifunc): Likewise.
5030         * tracepoint.c (info_scope_command): Likewise.
5031         * value.c (value_fn_field): Likewise.
5032
5033         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
5034         in place of find_pc_partial_function.
5035         * blockframe.c (find_function_entry_range_from_pc): New function.
5036         * symtab.h (find_function_entry_range_from_pc): Declare and document.
5037         * objfiles.c (objfile_relocate1): Relocate start and end addresses
5038         for each range in a block.
5039
5040
5041 2018-08-23  Xavier Roirand  <roirand@adacore.com>
5042
5043         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
5044         incrementation.
5045
5046 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5047
5048         * solib-svr4.c (read_program_headers_from_bfd): Return
5049         gdb::optional<gdb::byte_vector>.
5050         (svr4_exec_displacement): Adjust.
5051
5052 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5053
5054         * solib-svr4.c (read_program_header): Return
5055         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
5056         (find_program_interpreter): Return
5057         gdb::optional<gdb::byte_vector>.
5058         (scan_dyntag_auxv): Adjust.
5059         (enable_break): Adjust.
5060         (svr4_exec_displacement): Adjust.
5061
5062 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5063
5064         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
5065         * inf-child.c (inf_child_target::terminal_save_inferior): New.
5066
5067 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5068
5069         * guile/scm-string.c (gdbscm_scm_from_printf): Use
5070         string_vprintf.
5071         * guile/scm-utils.c (gdbscm_printf): Likewise.
5072         * serial.c (serial_printf): Likewise.
5073         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
5074
5075 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
5076
5077         * stack.c (print_frame): Print frame architecture when printing on
5078         an MI output.
5079         * NEWS: Mention new "arch" attribute in frame output.
5080
5081 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
5082
5083         * arch/aarch64.h (aarch64_regnum): Update comment.
5084
5085 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
5086
5087         * NEWS: Add SVE to 8.2 section.
5088
5089 2018-08-21  Pedro Alves  <palves@redhat.com>
5090
5091         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
5092         out from gdbscm_parse_function_args.
5093         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
5094         gdbscm_parse_function_args_1.
5095
5096 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
5097
5098         PR gdb/17816
5099         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
5100         operator.
5101
5102 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
5103
5104         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
5105
5106 2018-08-19  Michael Spang  <spang@google.com>
5107
5108         PR gdb/11786
5109         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
5110         for PT_TLS segments.
5111
5112 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
5113
5114         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
5115         dwarf_variable_value.
5116         * dwarf2-frame.c (class dwarf_expr_executor):
5117         Add override for dwarf_variable_value.
5118         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
5119         (class symbol_needs_eval_context): Likewise.
5120         (indirect_synthetic_pointer): Add forward declaration.
5121         (sect_variable_value): New function.
5122         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
5123         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
5124         for DW_OP_GNU_variable_value.
5125
5126 2018-08-16  Tom Tromey  <tom@tromey.com>
5127
5128         * top.c (read_command_file): Update.
5129         (command_line_input): Remove "repeat" argument.
5130         * ada-lang.c (get_selections): Update.
5131         * linespec.c (decode_line_2): Update.
5132         * defs.h (command_line_input): Remove argument.
5133         * cli/cli-script.c (read_next_line): Update.
5134         * python/py-gdb-readline.c: Update.
5135
5136 2018-08-17  Tom Tromey  <tom@tromey.com>
5137
5138         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
5139         command_line_input.
5140
5141 2018-08-15  Tom Tromey  <tom@tromey.com>
5142
5143         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
5144
5145 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
5146
5147         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
5148         If used, use find_pc_partial_function to find address range
5149         to disassemble.
5150         * mi/mi-main.c (mi_cmd_list_features): Report
5151         "data-disassemble-a-option" feature.
5152         * NEWS: Mention new -data-disassemble option -a.
5153
5154 2018-08-13  Tom Tromey  <tom@tromey.com>
5155
5156         * common/common-defs.h (_FORTIFY_SOURCE): Define.
5157
5158 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5159
5160         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
5161         (aarch64_linux_collect_sve_regset): Likewise.
5162         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
5163         * regcache.h (regcache_map_entry_size): New function.
5164
5165 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5166
5167         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
5168         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
5169         (SVE_HEADER_VL_LENGTH): Likewise.
5170         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
5171         (SVE_HEADER_FLAGS_LENGTH): Likewise.
5172         (SVE_HEADER_RESERVED_LENGTH): Likewise.
5173         (SVE_HEADER_SIZE_OFFSET): Likewise.
5174         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
5175         (SVE_HEADER_VL_OFFSET): Likewise.
5176         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
5177         (SVE_HEADER_FLAGS_OFFSET): Likewise.
5178         (SVE_HEADER_RESERVED_OFFSET): Likewise.
5179         (SVE_HEADER_SIZE): Likewise.
5180         (aarch64_linux_core_read_vq): Add function.
5181         (aarch64_linux_core_read_description): Check for SVE section.
5182
5183 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5184
5185         * aarch64-fbsd-tdep.c
5186         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
5187         collect_size.
5188         * aarch64-linux-tdep.c
5189         (aarch64_linux_iterate_over_regset_sections): Likewise.
5190         * alpha-linux-tdep.c
5191         (alpha_linux_iterate_over_regset_sections):
5192         * alpha-nbsd-tdep.c
5193         (alphanbsd_iterate_over_regset_sections): Likewise.
5194         * amd64-fbsd-tdep.c
5195         (amd64fbsd_iterate_over_regset_sections): Likewise.
5196         * amd64-linux-tdep.c
5197         (amd64_linux_iterate_over_regset_sections): Likewise.
5198         * arm-bsd-tdep.c
5199         (armbsd_iterate_over_regset_sections): Likewise.
5200         * arm-fbsd-tdep.c
5201         (arm_fbsd_iterate_over_regset_sections): Likewise.
5202         * arm-linux-tdep.c
5203         (arm_linux_iterate_over_regset_sections): Likewise.
5204         * corelow.c (get_core_registers_cb): Likewise.
5205         (core_target::fetch_registers): Likewise.
5206         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
5207         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
5208         * gdbarch.h (void): Regenerate.
5209         * gdbarch.sh: Add supply_size and collect_size.
5210         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
5211         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
5212         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
5213         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
5214         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
5215         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
5216         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
5217         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
5218         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
5219         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
5220         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
5221         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
5222         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
5223         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
5224         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections):
5225         Likewise.
5226         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
5227         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
5228         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
5229         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
5230         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
5231         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
5232         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections):
5233         Likewise.
5234         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
5235         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
5236         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
5237         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
5238         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
5239         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
5240         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
5241         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
5242
5243 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
5244
5245         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
5246         with string_printf.
5247
5248 2018-08-10  Keith Seitz  <keiths@redhat.com>
5249
5250         * compile/compile-c-support.c (add_code_header, add_code_footer):
5251         Move into policy class.
5252         (c_push_user_expression, pop_user_expression_nop)
5253         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
5254         (compile_program): New host class.
5255         (c_compile_program): New typedef.
5256         (c_compute_porgram): Use c_compile_program.
5257
5258 2018-08-10  Keith Seitz  <keiths@redhat.com>
5259
5260         * compile/compile-internal.h (compile_instance::~compile_instance):
5261         Remove calls to htab_delete.
5262         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
5263         * compile.c (compile_instance::compile_instance): Initialize
5264         htab unique pointers.
5265         (compile_instance::get_cached_type, compile_instance::insert_type)
5266         (compile_instance::error_symbol_once): Update for unique_ptr.
5267
5268 2018-08-10  Keith Seitz  <keiths@redhat.com>
5269
5270         * compile/compile-c-symbols.c (struct symbol_error)
5271         (hash_symbol_error, eq_symbol_error, del_symbol_error)
5272         (compile_instance::insert_symbol_error)
5273         (compile_instance::error_symbol_once): Move to ...
5274         * compile/compile.c: ... here.
5275
5276 2018-08-10  Keith Seitz  <keiths@redhat.com>
5277
5278         * compile/compile-c-support.c (c_get_compile_context): Use `new'
5279         instead of `new_compile_instance'.
5280         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
5281         Update description.
5282         If the symbol error map is not initialized, create it.
5283         (generate_c_for_for_one_symbol): Do not check/initialize
5284         the symbol error map.
5285         * compile/compile-c-types.c (compile_c_instance): Make a class.
5286         Update all callers.
5287         (compile_instance::compile_instance): Initialize the type cache.
5288         (get_cached_type): New function.
5289         (insert_type): Update description.
5290         (compile_c_instance::m_default_cflags): Define.
5291         (convert_type): Update description.  Use get_cached_type.
5292         (delete_instance): Moved to destructor.
5293         (new_compile_instance): Moved to constructor.
5294         * compile/compile-c.h (compile_c_instance): Make class inheriting
5295         from compile_instance.
5296         <base>: Remove field.
5297         <type_map, symbol_err_map>: Move to base class.
5298         <c_plugin>: Rename to `m_plugin' and remove pointer type.
5299         * compile/compile-internal.h (compile_instance): Make class.
5300         <type_map_t, symbol_err_map_t>: Define.
5301         <fe>: Rename to `m_gcc_fe'.
5302         <scope, block, gcc_target_options>: Add `m_' prefix.
5303         <m_type_map, m_symbol_err_map>: New fields, moved from
5304         compile_c_instance.
5305         <destroy>: Remove.
5306         (convert_type, new_compile_instance): Remove.
5307         * compile/compile.c (cleanup_compile_instance): Remove.
5308         (compile_to_object): Use unique_ptr to eliminate cleanups.
5309         (compile_instance::set_print_callback, compile_instance::version)
5310         (compile_instance::set_verbose)
5311         (compile_instance::set_driver_filename)
5312         (compile_instance::set_triplet_regexp)
5313         (compile_instance::set_arguments)
5314         (compile_instance::set_source_file)
5315         (compile_instance::compile): Define.
5316
5317 2018-08-10  Keith Seitz  <keiths@redhat.com>
5318
5319         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
5320         * compile/compile-c-types.c: Define GCC_METHODN macros and include
5321         gcc-c-fe.def to define C plugin.
5322         (delete_instance): Delete `c_plugin'.
5323         (new_compile_instance): Initialize `c_plugin'.
5324         * compile/compile-c.h: Include gcc_c_plugin.h.
5325         (struct compile_c_instance) <c_plugin>: New member.
5326         * gcc-c-plugin.h: New file.
5327         Update all callers with API change.
5328
5329 2018-08-10  Keith Seitz  <keiths@redhat.com>
5330
5331         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
5332         (HFILES_NO_SRCDIR): ... to here.
5333         Add compile-internal.h and compile-c.h.
5334         * compile/compile-c-support.c: Include compile-c.h.
5335         * compile/compile-c-symbols.c: Include compile-c.h.
5336         (generate_c_for_variable_locations): Update comment.
5337         * compile/compile-c-types.c: Include compile-c.h.
5338         * compile/compile-c.h: New file -- moved C language declarations
5339         from other files here.
5340         * compile/compile-internal.h: Do not include hashtab.h or
5341         common/enum-flags.h.
5342         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
5343         (gcc_convert_symbol, gcc_symbol_address)
5344         (generate_c_for_variable_locations, c_get_mode_for_size)
5345         (c_get_range_decl_name): Definitions moved to compile-c.h.
5346         * compile/compile-loc2c.c: Include compile-c.h.
5347
5348 2018-08-10  Keith Seitz  <keiths@redhat.com>
5349
5350         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
5351         (c_symbol_substitution_name): ... this.
5352         Update all callers.
5353
5354 2018-08-10  Keith Seitz  <keiths@redhat.com>
5355
5356         * compile/compile-c-support.c (c_compute_program): Use
5357         unique_xmalloc_ptr to eliminate cleanup.
5358         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
5359         Return a unique_xmalloc_ptr and eliminate cleanup.
5360         * compile/compile-internal.h (generate_c_for_variable_locations):
5361         Return unique_xmalloc_ptr and update description.
5362
5363 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
5364
5365         * corelow.c (core_target::get_core_register_section): Rename
5366         min_size to section_min_size.
5367
5368 2018-08-09  Jim Wilson  <jimw@sifive.com>
5369
5370         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
5371         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
5372         * NEWS: Mention new GNU/Linux RISC-V target.
5373         * configure.host: Add riscv*-*-linux*.
5374         * configure.nat: Add riscv*.
5375         * configure.tgt: Add riscv*-*-linux*.
5376         * riscv-linux-nat.c: New file.
5377         * riscv-linux-tdep.c: New file.
5378
5379 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5380
5381         * infrun.c (resume): Make static, add forward declaration.
5382         (proceed): Update header comment.
5383         * infrun.h (resume): Delete declaration.
5384
5385 2018-08-09  Tom Tromey  <tom@tromey.com>
5386
5387         * riscv-tdep.h: Minor formatting fixes.
5388
5389 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
5390
5391         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
5392         * dwarf-index-cache.c (create_dir_and_check): Likewise.
5393         (test_mkdir_recursive): Likewise.
5394         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
5395
5396 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5397
5398         * valarith.c (value_subscripted_rvalue): If an array is not in
5399         memory, and we don't know the upper bound, then we can't know that
5400         the requested element exists or not.
5401
5402 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
5403
5404         * target.c (str_comma_list_concat_elem): Fix typo in comment.
5405         (target_options_to_string): Add comment.
5406
5407 2018-08-08  Tom Tromey  <tom@tromey.com>
5408
5409         * unittests/scoped_mmap-selftests.c: Check result of "write".
5410
5411 2018-08-08  Jim Wilson  <jimw@sifive.com>
5412
5413         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
5414         (decode_register_index_short): New.
5415         (decode_j_type_insn, decode_cj_type_insn): New.
5416         (decode_b_type_insn, decode_cb_type_insn): New.
5417         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
5418         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
5419         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
5420         is_c_sw_insn instead of is_sw_insn.
5421         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
5422         (riscv_software_single_step): New.
5423         * riscv-tdep.h (riscv_software_single_step): Declare.
5424
5425         * riscv-tdep.c (riscv_isa_xlen): Drop static.
5426         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
5427
5428 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
5429
5430         PR gdb/18050:
5431         * target.c (dispose_inferior): Don't dispose of inferiors that are
5432         already killed.
5433
5434 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
5435
5436         * remote.c (remote_target::download_tracepoint): Change char* to
5437         const char*.
5438
5439 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
5440
5441         * target.h (target_options_to_string): Return an std::string.
5442         * target.c (str_comma_list_concat_elem): Return void, use
5443         std::string.
5444         (do_option): Likewise.
5445         (target_options_to_string): Return an std::string.
5446         * linux-nat.c (linux_nat_target::wait): Adjust.
5447         * target-debug.h (target_debug_print_options): Adjust.
5448
5449 2018-08-07  Tom Tromey  <tom@tromey.com>
5450
5451         * Makefile.in (CPPFLAGS): New variable.
5452         (INTERNAL_CPPFLAGS): Use it.
5453
5454 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5455
5456         * NEWS: Mention the index cache.
5457
5458 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5459
5460         * common/pathstuff.h (get_standard_cache_dir): New.
5461         * common/pathstuff.c (get_standard_cache_dir): New.
5462         * build-id.h (build_id_to_string): New.
5463         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
5464         DEBUG_STR_SUFFIX): Move to here.
5465         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
5466         DEBUG_STR_SUFFIX): Move from there.
5467         (write_psymtabs_to_index): Make non-static, add basename
5468         parameter.  Write to temporary files, rename when done.
5469         (save_gdb_index_command): Adjust call to
5470         write_psymtabs_to_index.
5471         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
5472         field.
5473         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
5474         (get_gdb_index_contents_from_cache): New.
5475         (get_gdb_index_contents_from_cache_dwz): New.
5476         (dwarf2_initialize_objfile): Read index from cache.
5477         (dwarf2_build_psymtabs): Save to index.
5478         * dwarf-index-cache.h: New file.
5479         * dwarf-index-cache.c: New file.
5480         * dwarf-index-write.h: New file.
5481
5482 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5483
5484         * gnulib/aclocal.m4: Re-generate.
5485         * gnulib/config.in: Re-generate.
5486         * gnulib/configure: Re-generate.
5487         * gnulib/import/Makefile.am: Re-generate.
5488         * gnulib/import/Makefile.in: Re-generate.
5489         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
5490         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5491         * gnulib/import/m4/mkdir.m4: New file.
5492         * gnulib/import/mkdir.c: New file.
5493         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
5494         module.
5495
5496 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5497
5498         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
5499         * common/scoped_mmap.c: New file.
5500         * common/scoped_mmap.h (destroy): New method.
5501         (~scoped_mmap, reset): Use destroy.
5502         (scoped_mmap): New move constructor.
5503         (mmap_file): New declaration.
5504         * unittests/scoped_mmap-selftests.c (test_normal,
5505         test_invalid_filename, run_tests): New functions.
5506         (_initialize_scoped_mmap_selftests): Register selftest.
5507
5508 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5509
5510         * dwarf2read.c (read_gdb_index_from_section): Rename to...
5511         (read_gdb_index_from_buffer): ... this.  Remove section
5512         parameter, add buffer parameter.
5513         (get_gdb_index_contents_ftype,
5514         get_gdb_index_contents_dwz_ftype): New typedefs.
5515         (dwarf2_read_gdb_index): Add callback parameters to get the
5516         index contents.
5517         (get_gdb_index_contents_from_section): New.
5518         (dwarf2_initialize_objfile): Update call to
5519         dwarf2_read_gdb_index.
5520
5521 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5522
5523         * common/filestuff.h (gdb_fopen_cloexec): New overload.
5524         (gdb_open_cloexec): Likewise.
5525         * nat/linux-osdata.c (command_from_pid): Use string_printf.
5526         (commandline_from_pid): Likewise.
5527         (linux_xfer_osdata_threads): Likewise.
5528         (linux_xfer_osdata_fds): Likewise.
5529         * ada-lang.c (is_package_name): Likewise.
5530         * auxv.c (procfs_xfer_auxv): Likewise.
5531         * breakpoint.c (print_one_breakpoint_location): Use
5532         uiout::field_fmt.
5533         (print_one_catch_solib): Use string_printf.
5534         * coff-pe-read.c (add_pe_exported_sym): Likewise.
5535         (add_pe_forwarded_sym): Likewise.
5536         * dwarf2read.c (create_type_unit_group): Likewise.
5537         (build_error_marker_type): Likewise.
5538         * infcall.c (get_function_name): Likewise.
5539         * valprint.c (print_converted_chars_to_obstack): Likewise.
5540         * xtensa-tdep.c (xtensa_register_type): Likewise.
5541
5542 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
5543
5544         * remote.c (remote_target::download_tracepoint): Fix format
5545         string errors.
5546
5547 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5548
5549         * tracefile.c: Include common/byte-vector.h.
5550         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
5551         with trace_regblock_size if needed.  Update uses of buf.
5552
5553 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5554
5555         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
5556         std::vector<unsigned char>.
5557         * tracepoint.c (collection_list::collection_list): Remove
5558         m_regs_mask initializer from initializer list.  Resize
5559         m_regs_mask using the largest remote register number.
5560         (collection_list::add_remote_register): Remove size check on
5561         m_regs_mask.  Use at to access element.
5562         (collection_list::stringify): Change type of temp_buf to
5563         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
5564         stringify the register mask.  Use pack_hex_byte for the register
5565         mask.
5566
5567 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5568
5569         * tracepoint.h (class collection_list) <add_register>: Remove.
5570         <add_remote_register, add_ax_registers, add_local_register>:
5571         Declare.
5572         <add_memrange>: Add scope parameter.
5573         * tracepoint.c (encode_actions_1): Likewise.
5574         (collection_list::add_register): Rename to ...
5575         (collection_list::add_remote_register): ... this.  Update
5576         comment.
5577         (collection_list::add_ax_registers, add_local_register): New
5578         methods.
5579         (collection_list::add_memrange): Add scope parameter.  Call
5580         add_local_register instead of add_register.
5581         (finalize_tracepoint_aexpr): New function.
5582         (collection_list::collect_symbol): Update calls to add_memrange.
5583         Call add_local_register instead of add_register.  Call
5584         add_ax_registers.  Call finalize_tracepoint_aexpr.
5585         (encode_actions_1): Get remote regnos for $reg action.  Call
5586         add_remote_register, add_ax_registers, and add_local_register.
5587         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
5588         (validate_actionline): Call finalize_tracepoint_aexpr.
5589
5590 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5591
5592         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
5593         Replace array buf with gdb::char_vector buf, of size
5594         get_remote_packet_size ().  Replace references to buf and
5595         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
5596         and xsnprintf with snprintf.  Raise errors if the buffer is too
5597         small.
5598
5599 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5600
5601         * remote.c (remote_target::download_tracepoint): Fix the has_more
5602         predicate in the QTDP action list iteration.
5603
5604 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5605
5606         * remote.c (remote_target::download_tracepoint): Fix indentation
5607         in for block.
5608
5609 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5610
5611         * proc-api.c (_initialize_proc_api): Remove c, unused.
5612         * procfs.c (procfs_init_inferior): Remove signals, unused.
5613         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
5614         unused.
5615
5616 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
5617             Andrew Burgess  <andrew.burgess@embecosm.com>
5618
5619         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
5620         'W_STOPCODE (0)' as this could be ambiguous.
5621
5622 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
5623
5624         * ser-tcp.c (net_open): Fix thinko when deciding whether to
5625         disable TCP's Nagle algorithm (use "ai_protocol" instead of
5626         "ai_socktype").
5627
5628 2018-08-02  Tom Tromey  <tom@tromey.com>
5629
5630         PR symtab/16842.
5631         * dwarf2read.c (read_func_scope): Set symtab on template parameter
5632         symbols.
5633         (process_structure_scope): Likewise.
5634
5635 2018-08-02  Xavier Roirand  <roirand@adacore.com>
5636
5637         PR gdb/22629:
5638         * darwin-nat.c (darwin_kill_inferior): Fix handling of
5639         kill inferior.
5640
5641 2018-08-02  Tom Tromey  <tom@tromey.com>
5642
5643         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
5644         (darwin_suspend_inferior, darwin_resume_inferior)
5645         (darwin_decode_notify_message, darwin_resume_inferior_threads)
5646         (darwin_check_new_threads): Check result of get_darwin_inferior.
5647
5648 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
5649
5650         GDB 8.1.1 released.
5651
5652 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
5653
5654         * varobj.c (varobj_get_path_expr_parent): Report an error if
5655         parent is a dynamic varobj.
5656
5657 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5658
5659         * gnulib/aclocal.m4: Re-generate.
5660         * gnulib/config.in: Re-generate.
5661         * gnulib/configure: Re-generate.
5662         * gnulib/import/Makefile.in: Re-generate.
5663         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5664         * gnulib/import/m4/onceonly.m4: Re-generate.
5665
5666 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5667
5668         * target-descriptions.c (struct xml_test_tdesc): New.
5669         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
5670         (record_xml_tdesc): Update.
5671         (maintenance_check_xml_descriptions): Update.
5672         * target-descriptions.h (record_xml_tdesc): Update comment.
5673
5674 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
5675
5676         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
5677         checking array bounds are defined.
5678
5679 2018-07-30  Tom Tromey  <tom@tromey.com>
5680
5681         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
5682         irreflexivity violation.
5683
5684 2018-07-30  Tom Tromey  <tom@tromey.com>
5685
5686         * cli/cli-decode.c (lookup_cmd): Remove lint code.
5687         * value.c (unpack_long): Remove lint code.
5688         * valops.c (value_ind): Remove lint code.
5689         * valarith.c (value_x_binop, value_x_unop, value_equal)
5690         (value_pos): Remove lint code.
5691
5692 2018-07-28  Tom de Vries  <tdevries@suse.de>
5693
5694         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
5695         with undefined upper bound as <optimized out>.
5696
5697 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
5698
5699         * gcore.in: Rename variable "name" to "prefix".  Expand
5700         "usage" text.
5701
5702 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
5703
5704         * windows-nat.c (windows_nat_target::create_inferior): Update to
5705         call close() in global namespace.
5706
5707 2018-07-26  Tom Tromey  <tom@tromey.com>
5708
5709         * dwarf-index-write.c (add_address_entry): Don't add objfile
5710         offsets.
5711         * dbxread.c (find_stab_function): Rename from
5712         find_stab_function_addr.  Return a bound_minimal_symbol.
5713         (read_dbx_symtab): Use raw_text_low, raw_text_high.
5714         Don't add objfile offsets.
5715         (end_psymtab): Use raw_text_low, raw_text_high,
5716         MSYMBOL_VALUE_RAW_ADDRESS.
5717         (read_ofile_symtab): Update.
5718         (process_one_symbol): Update.
5719         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
5720         offsets.
5721         (dw2_relocate): Remove.
5722         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
5723         searching addrmap.
5724         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
5725         Update.
5726         (process_psymtab_comp_unit_reader, add_partial_symbol)
5727         (add_partial_subprogram, dwarf2_ranges_read): Update.
5728         (load_partial_dies): Update.
5729         (add_address_entry): Don't add objfile offsets.
5730         (dwarf2_build_include_psymtabs): Update.
5731         (create_addrmap_from_aranges): Don't add objfile offsets.
5732         (dw2_find_pc_sect_compunit_symtab): Update.
5733         * mdebugread.c (parse_symbol): Don't add objfile offsets.
5734         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
5735         Update.
5736         (parse_partial_symbols): Don't add objfile offsets.  Use
5737         raw_text_low, raw_text_high.  Update.
5738         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
5739         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
5740         or call 'relocate' quick function.  Clear psymbol_map.
5741         * psympriv.h (struct partial_symbol) <address>: Add section
5742         offset.
5743         <set_unrelocated_address>: Rename from set_address.
5744         <raw_text_low, raw_text_high>: New methods.
5745         <text_low, text_high>: Add objfile parameter.
5746         (add_psymbol_to_bcache): Add 'section' parameter.  Call
5747         set_unrelocated_address.
5748         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5749         (find_pc_psymbol): Update.
5750         (fixup_psymbol_section, relocate_psymtabs): Remove.
5751         (dump_psymtab, psym_functions): Update.
5752         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
5753         parameter.
5754         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
5755         (start_psymtab_common): Update.
5756         * symfile-debug.c (debug_qf_relocate): Remove.
5757         (debug_sym_quick_functions): Update.
5758         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
5759         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
5760         Update.
5761
5762 2018-07-26  Tom Tromey  <tromey@redhat.com>
5763
5764         * dbxread.c (end_psymtab): Use text_high_valid and
5765         text_low_valid.
5766         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
5767         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
5768         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5769         Update comment.
5770         <text_low_valid, text_high_valid>: New fields.
5771         <set_text_low, set_text_high>: Update.
5772         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
5773
5774 2018-07-26  Tom Tromey  <tom@tromey.com>
5775
5776         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
5777         Update.
5778         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
5779         textlow and texthigh fields.
5780         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
5781         Update.
5782         * mdebugread.c (parse_lines, parse_partial_symbols)
5783         (psymtab_to_symtab_1): Update.
5784         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5785         Rename fields.  Update comment.  Now private.
5786         <text_low, text_high, set_text_low, set_text_high>: New methods.
5787         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5788         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
5789         (start_psymtab_common, maintenance_info_psymtabs)
5790         (maintenance_check_psymtabs): Update.
5791         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
5792         texthigh fields.
5793         (scan_xcoff_symtab): Update.
5794
5795 2018-07-26  Tom Tromey  <tromey@redhat.com>
5796
5797         * psympriv.h (struct partial_symbol) <unrelocated_address,
5798         address, set_address>: New methods.
5799         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
5800         (fixup_psymbol_section, relocate_psymtabs): Update.
5801         (print_partial_symbols): Add 'objfile' parameter.  Update.
5802         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
5803         Update.
5804
5805 2018-07-26  Tom Tromey  <tom@tromey.com>
5806
5807         * dwarf-index-write.c (write_psymbols, debug_names::insert)
5808         (debug_names::write_psymbols): Update.
5809         * psympriv.h (struct partial_symbol): Derive from
5810         general_symbol_info.
5811         <obj_section>: New method.
5812         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
5813         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5814         (find_pc_sect_psymbol, fixup_psymbol_section)
5815         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
5816         (print_partial_symbols, recursively_search_psymtabs)
5817         (compare_psymbols, psymbol_hash, psymbol_compare)
5818         (add_psymbol_to_bcache, maintenance_check_psymtabs)
5819         (psymbol_name_matches, psym_fill_psymbol_map): Update.
5820
5821 2018-07-26  Tom Tromey  <tromey@redhat.com>
5822
5823         * dbxread.c (end_psymtab): Remove dead code.
5824
5825 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
5826
5827         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
5828         DWARF unwinders are disabled.
5829         * dwarf2-frame.c: Add dwarf2read.h include.
5830         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
5831         disabled.
5832         (dwarf2_frame_unwinders_enabled_p): Define.
5833         (show_dwarf_unwinders_enabled_p): New function.
5834         (_initialize_dwarf2_frame): Register switch to control DWARF
5835         unwinder use.
5836         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
5837         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
5838         (show_dwarf_cmdlist): Remove static keyword.
5839         * dwarf2read.h (set_dwarf_cmdlist): Declare.
5840         (show_dwarf_cmdlist): Declare.
5841         * NEWS: Document new feature.
5842
5843 2018-07-26  Tom de Vries  <tdevries@suse.de>
5844
5845         PR breakpoints/23366
5846         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
5847
5848 2018-07-26  Tom de Vries  <tdevries@suse.de>
5849
5850         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
5851         DW_AT_count can't be translated to a dynamic prop.
5852
5853 2018-07-25  Tom de Vries  <tdevries@suse.de>
5854
5855         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
5856         try/catch.
5857
5858 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
5859
5860         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
5861
5862 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
5863
5864         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
5865
5866 2018-07-24  Keith Seitz  <keiths@redhat.comt
5867
5868         PR symtab/23010
5869         * dwarf2read.c (dw2_add_symbol_to_list): New function.
5870         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
5871         instead of add_symbol_to_list.
5872         (read_file_scope): Call prepare_one_comp_unit before reading
5873         any other DIEs.
5874
5875 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
5876
5877         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
5878
5879 2018-07-24  Tom Tromey  <tom@tromey.com>
5880
5881         * utils.c (malloc, realloc, free): Don't declare.
5882         * configure, config.in: Rebuild.
5883         * configure.ac: Don't check for declarations of free, malloc, or
5884         realloc.
5885
5886 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5887
5888         * aarch64-linux-nat.c
5889         (aarch64_linux_nat_target::stopped_data_address): Remove unused
5890         variable.
5891         * arm-linux-nat.c (fetch_regs): Likewise.
5892         (store_regs): Likewise.
5893         (fetch_vfp_regs): Likewise.
5894         (store_vfp_regs): Likewise.
5895         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
5896         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
5897         (arm_linux_nat_target::insert_watchpoint): Likewise.
5898         (arm_linux_nat_target::remove_watchpoint): Likewise.
5899         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
5900         Likewise.
5901         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
5902         Likewise.
5903         * ppc-linux-nat.c (fetch_register): Likewise.
5904         (fetch_all_gp_regs): Likewise.
5905         (fetch_ppc_registers): Likewise.
5906         (store_all_gp_regs): Likewise.
5907         (store_ppc_registers): Likewise.
5908         (hwdebug_insert_point): Likewise.
5909         (can_use_watchpoint_cond_accel): Likewise.
5910         * remote-sim.c (gdb_os_write_stdout): Likewise.
5911
5912 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5913             Tom Tromey  <tom@tromey.com>
5914
5915         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
5916         test for it.
5917         * configure: Rebuild.
5918
5919 2018-07-22  Tom Tromey  <tom@tromey.com>
5920
5921         * regformats/regdat.sh: Define xmltarget_${name} inside
5922         #ifndef IN_PROCESS_AGENT.
5923
5924 2018-07-22  Tom Tromey  <tom@tromey.com>
5925
5926         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
5927
5928 2018-07-22  Tom Tromey  <tom@tromey.com>
5929
5930         * symfile.c (reread_symbols): Notify iter, not objfile.
5931
5932 2018-07-22  Tom Tromey  <tom@tromey.com>
5933
5934         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
5935         Use arch_ops.
5936         (ravenscar_thread_target::prepare_to_store): Likewise.
5937
5938 2018-07-22  Tom Tromey  <tom@tromey.com>
5939
5940         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
5941         unused variable.  Call value_fetch_lazy when needed.
5942         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
5943         Remove unused variable.  Call value_fetch_lazy when needed.
5944
5945 2018-07-22  Tom Tromey  <tom@tromey.com>
5946
5947         * m32c-tdep.c (mark_dma): Return void.
5948         (make_regs): Remove unused declarations.
5949
5950 2018-07-22  Tom Tromey  <tom@tromey.com>
5951
5952         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
5953         cmdscm_get_valid_command_smob_arg_unsafe for effect.
5954         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
5955         bkscm_get_valid_block_smob_arg_unsafe for effect.
5956
5957 2018-07-22  Tom Tromey  <tom@tromey.com>
5958
5959         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
5960         value_type.
5961
5962 2018-07-22  Tom Tromey  <tom@tromey.com>
5963
5964         * windows-nat.c (saved_context): Conditionally define.
5965         * remote.c (remote_target::remote_btrace_maybe_reopen):
5966         Conditionally declare "warned".
5967         * inflow.c (sigquit_ours): Conditionally define.
5968         (new_tty): Move "tty" declaration inside #if.
5969         * guile/guile.c (guile_datadir): Conditionally define.
5970         * charset.c (set_be_le_names): Move some declarations inside #if.
5971         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
5972         #if.
5973         (parse_xml_btrace_conf): Likewise.
5974
5975 2018-07-22  Tom Tromey  <tom@tromey.com>
5976
5977         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
5978
5979 2018-07-22  Tom Tromey  <tom@tromey.com>
5980
5981         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
5982         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
5983         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
5984         * buildsym-legacy.c (get_macro_table): Remove unused variable.
5985         * stack.c (frame_apply_level_command): Remove unused variable.
5986         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
5987         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
5988         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
5989         unused variable.
5990         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
5991         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
5992         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
5993         variable.
5994         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
5995         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
5996         variable.
5997         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
5998         Remove unused variable.
5999         * cli/cli-script.c (recurse_read_control_structure): Remove unused
6000         variable.
6001         * common/tdesc.c (print_xml_feature::visit): Remove unused
6002         variable.
6003         * compile/compile-object-load.c (store_regs): Remove unused
6004         variables.
6005         * complaints.c (clear_complaints): Remove unused variable.
6006         * corelow.c (core_target_open): Remove unused variable.
6007         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
6008         variable.
6009         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
6010         variable.
6011         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
6012         variable.
6013         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
6014         variable.
6015         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
6016         variable.
6017         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
6018         variable.
6019         * ia64-tdep.c (examine_prologue): Remove unused variable.
6020         * infcall.c (run_inferior_call): Remove unused variable.
6021         * inferior.c (exit_inferior): Remove unused variable.
6022         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
6023         * linespec.c (decode_line_2): Remove unused variable.
6024         * linux-nat.c (super_close): Remove.
6025         * linux-tdep.c (linux_info_proc): Remove unused variable.
6026         * mi/mi-main.c (mi_execute_command): Remove unused variable.
6027         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
6028         Remove unused variable.
6029         * parse.c (find_minsym_type_and_address): Remove unused variable.
6030         * printcmd.c (info_symbol_command, printf_floating): Remove unused
6031         variable.
6032         * python/py-breakpoint.c (bppy_set_commands): Remove unused
6033         variable.
6034         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
6035         variables.
6036         * record-btrace.c (record_btrace_target::store_registers): Remove
6037         unused variable.
6038         (cmd_show_record_btrace_cpu): Remove unused variable.
6039         * riscv-tdep.c (riscv_register_reggroup_p)
6040         (riscv_push_dummy_call, riscv_return_value): Remove unused
6041         variable.
6042         * rust-exp.y (literal): Remove unused variable.
6043         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
6044         unused variable.
6045         <STRUCTOP_ANONYMOUS>: Likewise.
6046         * s390-linux-tdep.c (s390_linux_init_abi_31)
6047         (s390_linux_init_abi_64): Remove unused variable.
6048         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
6049         (file_select_thread, net_windows_open, _initialize_ser_windows):
6050         Remove unused variables.
6051         * symtab.c (find_pc_sect_line): Remove unused variable.
6052         * target-memory.c (compute_garbled_blocks): Remove unused
6053         variable.
6054         (target_write_memory_blocks): Remove unused variable.
6055         * target.c (target_stack::unpush): Remove unused variables.
6056         * tracepoint.c (start_tracing, all_tracepoint_actions)
6057         (merge_uploaded_trace_state_variables)
6058         (print_one_static_tracepoint_marker): Remove unused variable.
6059         * unittests/basic_string_view/element_access/char/1.cc (test01):
6060         Remove unused variable.
6061         * windows-nat.c (windows_continue, windows_add_all_dlls)
6062         (do_initial_windows_stuff, windows_nat_target::create_inferior):
6063         Remove unused variables.
6064
6065 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
6066
6067         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
6068         attr_profile in HAVE_ELF.
6069         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
6070         HAVE_ELF.
6071
6072 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
6073
6074         * frame.c (frame_register_unwind): Change parameter name.
6075         (frame_unwind_register): Likewise.
6076         (frame_unwind_register_value): Likewise.
6077         (frame_unwind_register_signed): Likewise.
6078         (frame_unwind_register_unsigned): Likewise.
6079         * frame.h (frame_register_unwind): Likewise.
6080         (frame_unwind_register): Likewise.
6081         (frame_unwind_register_value): Likewise.
6082         (frame_unwind_register_signed): Likewise.
6083         (frame_unwind_register_unsigned): Likewise.
6084         (frame_unwind_arch): Likewise.
6085
6086 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
6087
6088         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
6089         ISA maintenance.
6090
6091 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
6092
6093         * mips-linux-nat.c (mips_linux_nat_target::read_description):
6094         Call `get_ptrace_pid' rather than extracting the ptrace PID by
6095         hand.
6096
6097 2018-07-20  Keith Seitz  <keiths@redhat.com>
6098
6099         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
6100         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
6101         m_compunit_symtab, m_language>: Add "m_" prefix.
6102         Update all uses.
6103         * buildsym.c: Update all uses.
6104
6105 2018-07-20  Tom Tromey  <tom@tromey.com>
6106
6107         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
6108         * buildsym.h (record_line_ftype): Remove typedef.
6109
6110 2018-07-20  Tom Tromey  <tom@tromey.com>
6111
6112         * buildsym-legacy.h (augment_type_symtab): Don't declare.
6113         (end_expandable_symtab): Likewise.
6114         (end_symtab_get_static_block): Likewise.
6115         (end_symtab_from_static_block): Likewise.
6116         * buildsym-legacy.c (augment_type_symtab): Remove.
6117         (end_expandable_symtab): Remove.
6118         (end_symtab_get_static_block): Remove.
6119         (end_symtab_from_static_block): Remove.
6120
6121 2018-07-20  Tom Tromey  <tom@tromey.com>
6122
6123         * dwarf2read.c: Include buildsym.h.
6124         (struct dwarf2_cu) <builder>: New method.
6125         (fixup_go_packaging): Update.
6126         (process_full_comp_unit, process_full_type_unit): Update.  Don't
6127         use scoped_free_pendings.
6128         (using_directives): Add "cu" parameter, remove "language".
6129         (read_import_statement, setup_type_unit_groups, )
6130         (read_func_scope, read_lexical_block_scope)
6131         (dwarf2_record_block_ranges, read_namespace): Update.
6132         (lnp_state_machine::lnp_state_machine): Add cu parameter.
6133         (lnp_state_machine::handle_end_sequence): Update.
6134         (class lnp_state_machine) <m_cu>: New member.
6135         <m_record_line_callback>: Remove.
6136         <m_currently_recording_lines>: New member.
6137         (lnp_state_machine::handle_set_file): Update.
6138         (noop_record_line): Remove.
6139         (dwarf_record_line_p): Add cu parameter.
6140         (dwarf_record_line_1, dwarf_finish_line): Likewise.
6141         (lnp_state_machine::record_line)
6142         (lnp_state_machine::lnp_state_machine)
6143         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
6144         (dwarf_decode_lines): Update.
6145         (dwarf2_start_subfile): Add cu parameter.
6146         (dwarf2_start_symtab, new_symbol): Update.
6147         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
6148         Remove dwarf2_per_objfile parameter.
6149         (dwarf_decode_macros): Update.
6150
6151 2018-07-20  Tom Tromey  <tom@tromey.com>
6152
6153         * stabsread.c (define_symbol): Update.
6154         * buildsym-legacy.h (get_buildsym_compunit): Declare.
6155         * dwarf2read.c (new_symbol): Update.
6156         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
6157         * cp-namespace.c: Include buildsym.h.
6158         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
6159         * buildsym-legacy.c (get_buildsym_compunit): New function.
6160
6161 2018-07-20  Tom Tromey  <tom@tromey.com>
6162
6163         * xcoffread.c: Include buildsym-legacy.h.
6164         * windows-nat.c: Include buildsym-legacy.h.
6165         * stabsread.c: Include buildsym-legacy.h.
6166         * mdebugread.c: Include buildsym-legacy.h.
6167         * buildsym-legacy.h: New file.
6168         * buildsym-legacy.c: New file, from buildsym.c.
6169         * go32-nat.c: Include buildsym-legacy.h.
6170         * dwarf2read.c: Include buildsym-legacy.h.
6171         * dbxread.c: Include buildsym-legacy.h.
6172         * cp-namespace.c: Include buildsym-legacy.h.
6173         * coffread.c: Include buildsym-legacy.h.
6174         * buildsym.h: Move some contents to buildsym-legacy.h.
6175         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
6176         buildsym-legacy.c.
6177         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
6178
6179 2018-07-20  Tom Tromey  <tom@tromey.com>
6180
6181         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
6182         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
6183         (buildsym_compunit::buildsym_compunit)
6184         (buildsym_compunit::~buildsym_compunit)
6185         (buildsym_compunit::get_macro_table): Define.
6186
6187 2018-07-20  Tom Tromey  <tom@tromey.com>
6188
6189         * buildsym.c (reset_symtab_globals): Remove.
6190         (buildsym_compunit::end_symtab_from_static_block): Update.
6191         (buildsym_compunit::augment_type_symtab): Update.
6192         (end_symtab_from_static_block): Call free_buildsym_compunit.
6193         (augment_type_symtab, end_symtab, end_expandable_symtab):
6194         Likewise.
6195
6196 2018-07-20  Tom Tromey  <tom@tromey.com>
6197
6198         * arch-utils.c: Do not include buildsym.h.
6199         * mipsread.c: Do not include buildsym.h.
6200         * machoread.c: Do not include buildsym.h.
6201         * elfread.c: Do not include buildsym.h.
6202
6203 2018-07-20  Tom Tromey  <tom@tromey.com>
6204
6205         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
6206         initialization.
6207         (buildsym_compunit): Add new constructor.
6208         (struct buildsym_compunit) <get_last_source_file, finish_block,
6209         record_block_range, start_subfile, patch_subfile_names,
6210         push_subfile, pop_subfile, record_line, get_compunit_symtab,
6211         set_last_source_start_addr, get_last_source_start_addr,
6212         get_local_using_directives, set_local_using_directives,
6213         get_global_using_directives, outermost_context_p,
6214         get_current_context_stack, get_context_stack_depth,
6215         get_current_subfile, get_local_symbols, get_file_symbols,
6216         get_global_symbols, record_debugformat, record_producer,
6217         push_context, pop_context, end_symtab_get_static_block,
6218         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
6219         New public methods.
6220         <record_pending_block, finish_block_internal, make_blockvector,
6221         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
6222         private methods.
6223         Update all users.
6224
6225 2018-05-22  Tom Tromey  <tom@tromey.com>
6226
6227         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
6228         parameter.
6229         (finish_block_internal): Update.
6230
6231 2018-07-20  Tom Tromey  <tom@tromey.com>
6232
6233         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
6234         parameter.
6235         (finish_block_internal): Update.
6236
6237 2018-07-20  Tom Tromey  <tom@tromey.com>
6238
6239         * buildsym.h (EXTERN): Don't define or undef.
6240         * buildsym.c (EXTERN): Don't define.
6241
6242 2018-07-20  Tom Tromey  <tom@tromey.com>
6243
6244         * buildsym.c: Remove TODO comment.
6245
6246 2018-07-20  Tom Tromey  <tom@tromey.com>
6247
6248         * coffread.c (coff_symtab_read): Update.
6249         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
6250         (xcoff_new_init): Update.
6251         * mipsread.c (mipscoff_new_init): Update.
6252         * mdebugread.c (mdebug_build_psymtabs): Update.
6253         * elfread.c (elf_new_init): Update.
6254         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
6255         Update.
6256         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
6257         (coffstab_build_psymtabs, elfstab_build_psymtabs)
6258         (stabsect_build_psymtabs): Update.
6259         * buildsym.h (buildsym_init): Don't declare.
6260         * buildsym.c: Update comment.
6261         (prepare_for_building): Remove.
6262         (start_symtab, restart_symtab): Update.
6263         (reset_symtab_globals): Update comment.
6264         (buildsym_init): Remove.
6265
6266 2018-07-20  Tom Tromey  <tom@tromey.com>
6267
6268         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
6269         * stabsread.c (patch_block_stabs, define_symbol, read_type)
6270         (read_enum_type, common_block_start, common_block_end)
6271         (cleanup_undefined_types_1, finish_global_stabs): Update.
6272         * mdebugread.c (psymtab_to_symtab_1): Update.
6273         * dwarf2read.c (fixup_go_packaging, read_func_scope)
6274         (read_lexical_block_scope, new_symbol): Update.
6275         * dbxread.c (process_one_symbol): Update.
6276         * coffread.c (coff_symtab_read, process_coff_symbol)
6277         (coff_read_enum_type): Update.
6278         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
6279         declare.
6280         (get_local_symbols, get_file_symbols, get_global_symbols): New
6281         functions.
6282         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
6283         m_global_symbols.
6284         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
6285         (~scoped_free_pendings): Update.
6286         (finish_block, prepare_for_building, reset_symtab_globals)
6287         (end_symtab_get_static_block, end_symtab_with_blockvector)
6288         (augment_type_symtab, push_context): Update.
6289         (get_local_symbols, get_file_symbols, get_global_symbols): New
6290         functions.
6291         (buildsym_init): Update.
6292
6293 2018-07-20  Tom Tromey  <tom@tromey.com>
6294
6295         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
6296         (process_full_type_unit): Likewise.
6297         (dwarf2_start_symtab): Set list_in_scope.
6298
6299 2018-07-20  Tom Tromey  <tom@tromey.com>
6300
6301         * dwarf2read.c (process_psymtab_comp_unit_reader)
6302         (build_type_psymtabs_reader): Do not set list_in_scope.
6303
6304 2018-07-20  Tom Tromey  <tom@tromey.com>
6305
6306         * buildsym.c (free_pendings): Remove.
6307         (add_symbol_to_list, scoped_free_pendings)
6308         (finish_block_internal, buildsym_init): Update.
6309
6310 2018-07-20  Tom Tromey  <tom@tromey.com>
6311
6312         * xcoffread.c (read_xcoff_symtab): Update.
6313         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
6314         Update.
6315         * dbxread.c (process_one_symbol): Update.
6316         * coffread.c (coff_symtab_read): Update.
6317         * buildsym.h (finish_block): Update.
6318         * buildsym.c (finish_block): Remove "listhead" argument.
6319         (end_symtab_get_static_block): Update.
6320
6321 2018-07-20  Tom Tromey  <tom@tromey.com>
6322
6323         * buildsym.h (class scoped_free_pendings): Remove constructor.
6324         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
6325         method.
6326         <m_pending_block_obstack, m_pending_blocks>: New members.
6327         (pending_block_obstack, pending_blocks): Remove.
6328         (scoped_free_pendings::scoped_free_pendings): Default.
6329         (~scoped_free_pendings): Update.
6330         (free_pending_blocks): Remove.
6331         (finish_block_internal, record_pending_block, make_blockvector)
6332         (end_symtab_get_static_block, augment_type_symtab, push_context)
6333         (buildsym_init): Update.
6334
6335 2018-07-20  Tom Tromey  <tom@tromey.com>
6336
6337         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
6338         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
6339         members.
6340         (pending_addrmap, pending_addrmap_obstack)
6341         (pending_addrmap_interesting): Remove.
6342         (scoped_free_pendings, record_block_range, make_blockvector)
6343         (prepare_for_building, reset_symtab_globals, buildsym_init):
6344         Update.
6345
6346 2018-07-20  Tom Tromey  <tom@tromey.com>
6347
6348         * xcoffread.c (process_linenos): Update.
6349         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
6350         * mdebugread.c (psymtab_to_symtab_1): Update.
6351         * dwarf2read.c (setup_type_unit_groups)
6352         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
6353         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
6354         * dbxread.c (process_one_symbol): Update.
6355         * coffread.c (coff_symtab_read, enter_linenos)
6356         (process_coff_symbol): Update.
6357         * buildsym.h (current_subfile): Don't declare.
6358         (get_current_subfile): Declare.
6359         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
6360         member.
6361         (start_subfile, free_buildsym_compunit, push_subfile)
6362         (prepare_for_building, start_symtab): Update.
6363         (get_current_subfile): New function.
6364
6365 2018-07-20  Tom Tromey  <tom@tromey.com>
6366
6367         * coffread.c (coff_symtab_read): Update.
6368         * xcoffread.c (read_xcoff_symtab): Update.
6369         * dwarf2read.c (new_symbol): Update.
6370         (read_func_scope, read_lexical_block_scope): Update.
6371         * dbxread.c (process_one_symbol): Update.
6372         * buildsym.h (context_stack, context_stack_depth): Don't declare.
6373         (outermost_context_p): Remove macro.
6374         (outermost_context_p, get_current_context_stack)
6375         (get_context_stack_depth): Declare.
6376         (pop_context): Return struct context_stack.
6377         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
6378         member.
6379         (context_stack_size): Remove.
6380         (INITIAL_CONTEXT_STACK_SIZE): Remove.
6381         (prepare_for_building, end_symtab_get_static_block)
6382         (augment_type_symtab, push_context): Update.
6383         (pop_context): Return struct context_stack.
6384         (outermost_context_p, get_current_context_stack)
6385         (get_context_stack_depth): New functions.
6386         (buildsym_init): Update.
6387
6388 2018-07-20  Tom Tromey  <tom@tromey.com>
6389
6390         * rust-exp.y: Now a pure parser.  Update all rules.
6391         (%union): Move earlier.
6392         (current_parser, work_obstack): Remove globals.
6393         (rust_parser, ~rust_parser): Update.
6394         (class rust_parser) <copy_name, concat3, crate_name, super_name,
6395         lex_character, lex_number, lex_string, lex_identifier,
6396         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
6397         convert_name, convert_params_to_expression,
6398         convert_ast_to_expression, ast_basic_type, ast_operation,
6399         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
6400         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
6401         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
6402         ast_array_type, ast_slice_type, ast_reference_type,
6403         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
6404         (rust_parse): Update.
6405         (rustyyerror, rustyylex): Add parser parameter.
6406         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
6407         (rust_lex_stringish_test, rust_lex_test_sequence)
6408         (rust_lex_test_trailing_dot, rust_lex_test_completion)
6409         (rust_lex_test_push_back, rust_lex_tests): Update.
6410
6411 2018-07-19  Pedro Alves  <palves@redhat.com>
6412
6413         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
6414         gdb::unique_xmalloc_ptr.
6415         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
6416         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
6417         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
6418         copy-initialization.
6419         * guile/scm-pretty-print.c (ppscm_print_children): Use
6420         gdb::unique_xmalloc_ptr instead of cleanups.
6421         (gdbscm_apply_val_pretty_printer): Remove cleanups.
6422         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
6423         gdb::unique_xmalloc_ptr.
6424         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6425         Adjust to use gdb::unique_xmalloc_ptr.
6426         * guile/scm-utils.c (extract_arg): Adjust.
6427         * guile/scm-value.c (gdbscm_value_field): Adjust to use
6428         gdb::unique_xmalloc_ptr instead of a cleanup.
6429
6430 2018-07-19  Tom Tromey  <tom@tromey.com>
6431
6432         * utils.c (do_value_free_to_mark)
6433         (make_cleanup_value_free_to_mark): Remove.
6434         * utils.h (make_cleanup_value_free_to_mark): Remove.
6435
6436 2018-07-19  Pedro Alves  <palves@redhat.com>
6437
6438         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
6439         forwarding reference.
6440
6441 2018-07-18  Pedro Alves  <palves@redhat.com>
6442
6443         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
6444         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
6445         cleanup.
6446
6447 2018-07-18  Pedro Alves  <palves@redhat.com>
6448
6449         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
6450         exceptions.
6451         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
6452         (gdbscm_wrap): New.
6453         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
6454         directly instead of a cleanup.
6455         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
6456         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
6457         (vlscm_binop_gdbthrow): New, factored out from ...
6458         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
6459         (vlscm_rich_compare): Use gdbscm_wrap.
6460         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
6461         instead of a cleanup.
6462         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
6463         cleanup.
6464         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6465         Use xfree directly instead of a cleanup.
6466         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
6467         Adjust to use gdbscm_wrap and scoped_value_mark.
6468         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
6469         (gdbscm_value_address, gdbscm_value_dereference)
6470         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
6471         scoped_value_mark.
6472         (gdbscm_value_dynamic_type): Use scoped_value_mark.
6473         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
6474         scoped_value_mark.
6475         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
6476         gdbscm_wrap and scoped_value_mark.
6477         (gdbscm_value_to_string): Use xfree directly instead of a
6478         cleanup.  Move 'buffer' unique_ptr to TRY scope.
6479         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
6480         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
6481         scoped_value_mark.
6482         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
6483         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
6484         scoped_value_mark.
6485         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
6486         gdbscm_wrap.
6487
6488 2018-07-18  Tom de Vries  <tdevries@suse.de>
6489
6490         * findvar.c (default_read_var_value): Also resolve dynamic type for
6491         LOC_OPTIMIZED_OUT vars.
6492
6493 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
6494
6495         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
6496         decoding.
6497
6498 2018-07-17  Tom Tromey  <tom@tromey.com>
6499
6500         * guile/scm-param.c (pascm_set_func, pascm_show_func)
6501         (compute_enum_list, pascm_set_param_value_x)
6502         (gdbscm_parameter_value): Update.
6503         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
6504         (gdbscm_scm_to_host_string): Update.
6505         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
6506         Update.
6507         * guile/scm-cmd.c (cmdscm_add_completion): Update.
6508         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
6509         * guile/scm-string.c (gdbscm_scm_to_string): Return
6510         unique_xmalloc_ptr.
6511         (gdbscm_scm_to_host_string): Likewise.
6512
6513 2018-07-17  Tom Tromey  <tom@tromey.com>
6514
6515         * guile/guile.c (gdbscm_eval_from_control_command): Update.
6516         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
6517         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
6518         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
6519         unique_xmalloc_ptr.
6520
6521 2018-07-17  Tom Tromey  <tom@tromey.com>
6522
6523         * guile/scm-param.c (pascm_signal_setshow_error): Update.
6524         * guile/guile-internal.h (gdbscm_exception_message_to_string):
6525         Update.
6526         * guile/scm-cmd.c (cmdscm_function): Update.
6527         * guile/scm-pretty-print.c
6528         (ppscm_print_exception_unless_memory_error): Update.
6529         * guile/scm-exception.c (gdbscm_exception_message_to_string):
6530         Return unique_xmalloc_ptr.
6531
6532 2018-07-17  Tom Tromey  <tom@tromey.com>
6533
6534         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
6535         Use string_printf.
6536
6537 2018-07-17  Jim Wilson  <jimw@sifive.com>
6538
6539         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
6540         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
6541         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
6542         unecessary braces after EF_RISCV_RVC test.  Delete call to
6543         set_gdbarch_decr_pc_after_break.
6544
6545         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
6546         RISCV_LAST_FP_REGNUM + 1.
6547         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
6548
6549 2018-07-17  Tom Tromey  <tom@tromey.com>
6550
6551         * configure.ac: Remove --disable-gdbcli.
6552         * configure: Rebuild.
6553         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
6554         (SUBDIR_CLI_CFLAGS): Remove.
6555         (SFILES): Use SUBDIR_CLI_SRCS.
6556         (COMMON_OBS): Use SUBDIR_CLI_OBS.
6557
6558 2018-07-17  Tom Tromey  <tom@tromey.com>
6559
6560         PR gdb/18624:
6561         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
6562
6563 2018-07-16  Jim Wilson  <jimw@sifive.com>
6564
6565         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
6566
6567 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6568
6569         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
6570         variable.
6571         (libunwind_frame_sniffer): Likewise.
6572         (libunwind_frame_prev_register): Likewise.
6573         (libunwind_sigtramp_frame_sniffer): Likewise.
6574         * ia64-tdep.c (ia64_access_reg): Likewise.
6575         (ia64_access_rse_reg): Likewise.
6576         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
6577         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
6578
6579 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6580
6581         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
6582
6583 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6584
6585         * remote-sim.c (gdbsim_target::close,
6586         gdbsim_target::mourn_inferior): Remove unused variables.
6587
6588 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
6589
6590         * ia64-tdep.c (ktab_buf): New global.
6591         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
6592         (get_kernel_table): Adjust.
6593
6594 2018-07-16  Tom Tromey  <tom@tromey.com>
6595
6596         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
6597         * dwarf2read.c (using_directives, new_symbol): Use
6598         outermost_context_p.
6599         * dbxread.c (process_one_symbol): Use outermost_context_p.
6600         * coffread.c (coff_symtab_read): Use outermost_context_p.
6601
6602 2018-07-16  Tom Tromey  <tom@tromey.com>
6603
6604         * dwarf2read.c (using_directives, read_func_scope)
6605         (read_lexical_block_scope): Update.
6606         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
6607         * buildsym.h (local_using_directives, global_using_directives):
6608         Don't declare.
6609         (get_local_using_directives, set_local_using_directives)
6610         (get_global_using_directives): Declare.
6611         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
6612         m_global_using_directives>: New members.
6613         (finish_block_internal, prepare_for_building)
6614         (reset_symtab_globals, end_symtab_get_static_block)
6615         (push_context): Update.
6616         (get_local_using_directives, set_local_using_directives)
6617         (get_global_using_directives): New functions.
6618         (buildsym_init): Update.
6619
6620 2018-07-16  Tom Tromey  <tom@tromey.com>
6621
6622         * xcoffread.c (xcoff_initial_scan): Don't call
6623         free_pending_blocks.
6624         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
6625         * buildsym.h (class scoped_free_pendings): Add constructor.
6626         (free_pending_blocks): Don't declare.
6627         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
6628         (free_pending_blocks): Now static.
6629
6630 2018-07-16  Tom Tromey  <tom@tromey.com>
6631
6632         * buildsym.h (push_subfile, pop_subfile): Update declarations.
6633         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
6634         member.
6635         (struct subfile_stack): Remove.
6636         (subfile_stack): Remove.
6637         (push_subfile, pop_subfile, buildsym_init): Update.
6638
6639 2018-07-16  Tom Tromey  <tom@tromey.com>
6640
6641         * buildsym.c (push_subfile): Use gdb_assert.
6642         (pop_subfile): Use gdb_assert.
6643
6644 2018-07-16  Tom Tromey  <tom@tromey.com>
6645
6646         * buildsym.h (merge_symbol_lists): Remove.
6647         * buildsym.c (merge_symbol_lists): Remove.
6648
6649 2018-07-16  Tom Tromey  <tom@tromey.com>
6650
6651         * stabsread.c (scan_file_globals): Update comment.
6652         * stabsread.h (scan_file_globals): Move from buildsym.h.
6653         * buildsym.h (scan_file_globals): Move to stabsread.h.
6654
6655 2018-07-16  Tom Tromey  <tom@tromey.com>
6656
6657         * xcoffread.c (xcoff_new_init): Update.
6658         * mipsread.c (mipscoff_new_init): Update.
6659         * mdebugread.c (mdebug_build_psymtabs): Update.
6660         * elfread.c (elf_new_init): Update.
6661         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
6662         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
6663         * buildsym.h (buildsym_new_init): Don't declare.
6664         * buildsym.c (buildsym_new_init): Remove.
6665
6666 2018-07-16  Tom Tromey  <tom@tromey.com>
6667
6668         * stabsread.h (within_function): Move from buildsym.h.
6669         * stabsread.c (start_stabs): Clear within_function.
6670         * coffread.c (coff_start_symtab): Clear within_function.
6671         * buildsym.h (within_function): Move to stabsread.h.
6672         * buildsym.c (prepare_for_building): Update.
6673
6674 2018-07-16  Tom Tromey  <tom@tromey.com>
6675
6676         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
6677         * dwarf2read.c (dwarf2_start_symtab): Don't set
6678         processing_gcc_compilation.
6679         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
6680
6681 2018-07-16  Tom Tromey  <tom@tromey.com>
6682
6683         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
6684         (next_symbol_text_func): Move from buildsym.h.
6685         * stabsread.c (hashname): Move from buildsym.c.
6686         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
6687         (next_symbol_text_func, hashname): Move to stabsread.h.
6688         * buildsym.c: Don't include bcache.h
6689         (hashname): Move to stasbread.c.
6690
6691 2018-07-16  Tom Tromey  <tom@tromey.com>
6692
6693         * buildsym.h (context_stack_size): Don't declare.
6694         * buildsym.c (context_stack_size): New global.
6695
6696 2018-07-16  Tom Tromey  <tom@tromey.com>
6697
6698         * dbxread.c (processing_acc_compilation): New global.
6699         * buildsym.h (processing_acc_compilation): Don't declare.
6700
6701 2018-07-16  Tom Tromey  <tom@tromey.com>
6702
6703         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
6704         * dbxread.c (read_ofile_symtab): Update.
6705         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
6706         * buildsym.h (last_source_start_addr): Remove.
6707         (set_last_source_start_addr, get_last_source_start_addr):
6708         Declare.
6709         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
6710         parameter.
6711         (struct buildsym_compunit) <m_last_source_start_addr>: New
6712         member.
6713         (prepare_for_building): Remove start_addr parameter.
6714         (start_symtab, restart_symtab, end_symtab_get_static_block)
6715         (end_symtab_with_blockvector): Update.
6716         (set_last_source_start_addr, get_last_source_start_addr): New
6717         functions.
6718
6719 2018-07-16  Tom Tromey  <tom@tromey.com>
6720
6721         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
6722         member.
6723         (have_line_numbers): Remove.
6724         (record_line, prepare_for_building, end_symtab_get_static_block)
6725         (augment_type_symtab): Update.
6726
6727 2018-07-16  Tom Tromey  <tom@tromey.com>
6728
6729         * buildsym.c (~buildsym_compunit): Free the macro table.
6730         (struct buildsym_compunit) <get_macro_table, release_macros>: New
6731         methods.
6732         <m_pending_macros>: New member.
6733         (pending_macros): Remove.
6734         (~scoped_free_pendings, get_macro_table, prepare_for_building)
6735         (reset_symtab_globals, end_symtab_get_static_block)
6736         (end_symtab_with_blockvector, augment_type_symtab)
6737         (buildsym_init): Update.
6738
6739 2018-07-16  Tom Tromey  <tom@tromey.com>
6740
6741         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
6742         parameter.
6743         (buildsym_compunit::set_last_source_file): New method.
6744         <m_last_source_file>: New member.
6745         (prepare_for_building): Remove "name" parameter.
6746         (start_symtab, restart_symtab, reset_symtab_globals): Update.
6747         (last_source_file): Remove.
6748         (set_last_source_file, get_last_source_file): Update.
6749
6750 2018-07-16  Tom Tromey  <tom@tromey.com>
6751
6752         * buildsym.c (prepare_for_building): Add assert.
6753
6754 2018-07-16  Tom Tromey  <tom@tromey.com>
6755
6756         * buildsym.c (~buildsym_compunit): Update.
6757         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
6758         (start_subfile, patch_subfile_names)
6759         (end_symtab_with_blockvector): Update.
6760
6761 2018-07-16  Tom Tromey  <tom@tromey.com>
6762
6763         * buildsym.c (struct buildsym_compunit): Add constructor,
6764         destructor, initializers.
6765         (start_buildsym_compunit): Remove.
6766         (free_buildsym_compunit): Use "delete".
6767         (start_symtab, restart_symtab): Use "new".
6768
6769 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
6770
6771         * symfile.c (set_objfile_default_section_offset): Remove struct
6772         keyword.
6773
6774 2018-07-14  Stafford Horne  <shorne@gmail.com>
6775
6776         * (Responsible Maintainers): Add myself as or1k maintainer.
6777
6778 2018-07-13  Tom Tromey  <tom@tromey.com>
6779
6780         * symfile.c (set_objfile_default_section_offset): Use extra braces
6781         around initializer.
6782
6783 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
6784
6785         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
6786         non-branching basr.
6787
6788 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6789
6790         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6791         unittests/cli-utils-selftests.c
6792         * unittests/cli-utils-selftests.c: New file.
6793
6794 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6795
6796         * NEWS: Mention new commands. Mention change to 'thread apply'.
6797
6798 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6799
6800         * thread.c (thr_try_catch_cmd): New function.
6801         (thread_apply_all_command): Handle qcs flags.
6802         (thread_apply_command): Handle qcs flags.
6803         (taas_command): New function.
6804         (tfaas_command): New function.
6805         (_initialize_thread): Update to setup the new commands 'taas
6806         and 'tfaas'. Change doc string for 'thread apply'.
6807
6808 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6809
6810         * stack.c: (trailing_outermost_frame): New function, mostly
6811         extracted from backtrace_command_1.
6812         (leading_innermost_frame): New function.
6813         (backtrace_command_1): Update to call trailing_outermost_frame.
6814         (frame_apply_command_count): New function.
6815         (frame_apply_level_command): New function.
6816         (frame_apply_all_command): New function.
6817         (frame_apply_command): New function.
6818         (faas_command): New function.
6819         (frame_cmd_list): New variable.
6820         (_initialize_stack): Update to setup the new commands 'frame apply'
6821         and 'faas'.
6822
6823 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6824
6825         * cli-utils.c (number_or_range_parser::get_number): Only handle
6826         numbers or convenience var as numbers.
6827         (parse_flags): New function.
6828         (parse_flags_qcs): New function.
6829         (number_or_range_parser::finished): Ensure parsing end is detected
6830         before end of string.
6831         * cli-utils.h (parse_flags): New function.
6832         (parse_flags_qcs): New function.
6833         (number_or_range_parser): Remove m_finished bool.
6834         (number_or_range_parser::skip_range): Set m_in_range to false.
6835
6836 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
6837
6838         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
6839         on Windows.
6840
6841 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6842             Jan Kratochvil  <jan.kratochvil@redhat.com>
6843             Paul Fertser  <fercerpav@gmail.com>
6844             Tsutomu Seki  <sekiriki@gmail.com>
6845             Pedro Alves  <palves@redhat.com>
6846
6847         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6848         'unittests/parse-connection-spec-selftests.c'.
6849         (COMMON_SFILES): Add 'common/netstuff.c'.
6850         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
6851         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
6852         * common/netstuff.c: New file.
6853         * common/netstuff.h: New file.
6854         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
6855         (wait_for_connect): Update comment.  New parameter
6856         'gdb::optional<int> sock' instead of 'struct serial *scb'.
6857         Use 'sock' directly instead of 'scb->fd'.
6858         (try_connect): New function, with code from 'net_open'.
6859         (net_open): Rewrite main loop to deal with multiple
6860         sockets/addresses.  Handle IPv6-style hostnames; implement
6861         support for IPv6 connections.
6862         * unittests/parse-connection-spec-selftests.c: New file.
6863
6864 2018-07-11  Pedro Alves  <palves@redhat.com>
6865
6866         PR gdb/23377
6867         * remote.c (remote_target::remote_detach_pid): Call
6868         set_current_process.
6869
6870 2018-07-11  Pedro Alves  <palves@redhat.com>
6871
6872         * h8300-tdep.c (h8300_gdbarch_init): Remove
6873         set_gdbarch_ecoff_reg_to_regnum calls.
6874
6875 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6876
6877         PR c++/23373
6878         * c-typeprint.c (c_type_print_base_struct_union): Don't print
6879         offsets/sizes for static members of a class/struct.
6880
6881 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
6882
6883         * target-descriptions.c (tdesc_register_bitsize): Rename.
6884         * target-descriptions.h (tdesc_register_bitsize): Likewise.
6885         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
6886         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
6887
6888 2018-07-10  Tom Tromey  <tom@tromey.com>
6889
6890         * breakpoint.c (moribund_locations): Now static and a
6891         std::vector.
6892         (breakpoint_init_inferior, moribund_breakpoint_here_p)
6893         (build_bpstat_chain, update_global_location_list)
6894         (breakpoint_retire_moribund): Update.
6895         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
6896         VEC.
6897
6898 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6899
6900         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
6901         (riscv_register_reggroup_p): Use new function, remove unneeded
6902         parenthesis.
6903         (riscv_push_dummy_call): Extend assert to compare against xlen or
6904         flen based on register type.
6905
6906 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6907
6908         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
6909
6910 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
6911
6912         * remote.c (show_hardware_watchpoint_limit): New function.
6913         (show_hardware_watchpoint_length_limit): New function.
6914         (show_hardware_breakpoint_limit): New function.
6915         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
6916         where appropriate, update help text.
6917
6918 2018-07-09  Tom Tromey  <tom@tromey.com>
6919
6920         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
6921         (CLIBS): Don't mention NAT_CLIBS.
6922
6923 2018-07-09  Tom Tromey  <tom@tromey.com>
6924
6925         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
6926         (LIBGDB_OBS, clean mostlyclean): Update.
6927         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
6928
6929 2018-07-09  Tom Tromey  <tom@tromey.com>
6930
6931         * Makefile.in (%.c: %.y): Use ECHO_YACC.
6932         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
6933         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
6934
6935 2018-07-09  Tom Tromey  <tom@tromey.com>
6936
6937         * Makefile.in (ALLDEPFILES): Remove exec.c.
6938         (COMMON_OBS): Remove exec.o.
6939         (COMMON_SFILES): Add exec.c.
6940
6941 2018-07-09  Tom Tromey  <tom@tromey.com>
6942
6943         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
6944
6945 2018-07-09  Tom Tromey  <tom@tromey.com>
6946
6947         * Makefile.in (clean mostlyclean): Remove stamp-version.
6948         (version.c): Depend on stamp-version.
6949         (stamp-version): New rule, from version.c rule.
6950
6951 2018-07-09  Tom Tromey  <tom@tromey.com>
6952
6953         * Makefile.in (init.c): Depend on stamp-init.
6954         (stamp-init): New rule, from init.c rule.
6955         (clean mostlyclean): Remove stamp-init.
6956
6957 2018-07-09  Tom Tromey  <tom@tromey.com>
6958
6959         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
6960         SUBDIR_GCC_COMPILE_SRCS.
6961
6962 2018-07-09  Tom Tromey  <tom@tromey.com>
6963
6964         * Makefile.in (init.c): Remove some unused sed rules.
6965
6966 2018-07-09  Tom Tromey  <tom@tromey.com>
6967
6968         * Makefile.in (TSOBS): Remove.
6969         (INIT_FILES): Update.
6970         (LIBGDB_OBS): Update.
6971         (COMMON_SFILES): Add inflow.c.
6972         (SFILES): Remove inflow.c.
6973
6974 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
6975
6976         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
6977
6978 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
6979
6980         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
6981         get_saveloc_name, is_signal_frame_name, step_name,
6982         init_remote_name, create_addr_space_name,
6983         destroy_addr_space_name, search_unwind_table_name,
6984         find_dyn_list_name): Constify.
6985
6986 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
6987
6988         * darwin-nat.c (darwin_pthread_kill): New function.
6989         (darwin_resume_thread): Use darwin_pthread_kill.
6990
6991 2018-07-05  Tom de Vries  <tdevries@suse.de>
6992
6993         * macroexp.c (macro_buffer) <operator=>: New member function.
6994
6995 2018-07-04  Tom Tromey  <tom@tromey.com>
6996
6997         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
6998
6999 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
7000
7001         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
7002         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
7003         * maint.c: Likewise.
7004         * top.c: Likewise.
7005
7006 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
7007
7008         * NEWS: Create a new section for the next release branch.
7009         Rename the section of the current branch, now that it has
7010         been cut.
7011
7012 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
7013
7014         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
7015         * version.in: Bump version to 8.2.50.DATE-git.
7016
7017 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
7018             Pedro Alves  <palves@redhat.com>
7019
7020         * linux-nat.c (linux_init_ptrace): Rename to ...
7021         (linux_init_ptrace_procfs): ... this.  Call
7022         linux_proc_init_warnings.
7023         (linux_nat_target::post_attach)
7024         (linux_nat_target::post_startup_inferior): Adjust.
7025         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
7026         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
7027
7028 2018-07-04  Tom de Vries  <tdevries@suse.de>
7029
7030         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
7031         check ...
7032         (read_comp_unit_head): ... here.
7033
7034 2018-07-03  Tom Tromey  <tom@tromey.com>
7035
7036         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
7037         (stop_tracing, tstatus_command)
7038         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
7039         (print_one_static_tracepoint_marker): Update.
7040         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
7041         std::vector.
7042         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
7043         VEC.
7044         (all_tracepoints, static_tracepoints_here): Return std::vector.
7045
7046 2018-07-03  Tom Tromey  <tom@tromey.com>
7047
7048         * common/ptid.c (ptid_equal): Remove.
7049         * common/ptid.h (ptid_equal): Don't declare.
7050         * ada-tasks.c: Update.
7051         * breakpoint.c: Update.
7052         * common/agent.c: Update.
7053         * corelow.c: Update.
7054         * darwin-nat-info.c: Update.
7055         * darwin-nat.c: Update.
7056         * dcache.c: Update.
7057         * dtrace-probe.c: Update.
7058         * dummy-frame.c: Update.
7059         * fbsd-nat.c: Update.
7060         * frame.c: Update.
7061         * gdbthread.h: Update.
7062         * gnu-nat.c: Update.
7063         * go32-nat.c: Update.
7064         * inf-loop.c: Update.
7065         * inf-ptrace.c: Update.
7066         * infcall.c: Update.
7067         * infcmd.c: Update.
7068         * inflow.c: Update.
7069         * infrun.c: Update.
7070         * linux-fork.c: Update.
7071         * linux-nat.c: Update.
7072         * linux-thread-db.c: Update.
7073         * mi/mi-cmd-var.c: Update.
7074         * mi/mi-interp.c: Update.
7075         * mi/mi-main.c: Update.
7076         * nto-procfs.c: Update.
7077         * ppc-linux-tdep.c: Update.
7078         * procfs.c: Update.
7079         * python/py-inferior.c: Update.
7080         * python/py-record-btrace.c: Update.
7081         * python/py-record.c: Update.
7082         * ravenscar-thread.c: Update.
7083         * regcache.c: Update.
7084         * remote-sim.c: Update.
7085         * remote.c: Update.
7086         * sol-thread.c: Update.
7087         * solib.c: Update.
7088         * target.c: Update.
7089         * tui/tui-stack.c: Update.
7090         * varobj.c: Update.
7091         * windows-nat.c: Update.
7092         * windows-tdep.c: Update.
7093
7094 2018-07-03  Tom Tromey  <tom@tromey.com>
7095
7096         * common/ptid.c (ptid_match): Remove.
7097         * common/ptid.h (ptid_match): Don't declare.
7098         * fbsd-nat.c: Update.
7099         * infcmd.c: Update.
7100         * infrun.c: Update.
7101         * linux-nat.c: Update.
7102         * record-btrace.c: Update.
7103         * regcache.c: Update.
7104         * remote.c: Update.
7105
7106 2018-07-03  Tom Tromey  <tom@tromey.com>
7107
7108         * common/ptid.c (ptid_tid_p): Remove.
7109         * common/ptid.h (ptid_tid_p): Don't declare.
7110         * sol-thread.c: Update.
7111
7112 2018-07-03  Tom Tromey  <tom@tromey.com>
7113
7114         * common/ptid.c (ptid_lwp_p): Remove.
7115         * common/ptid.h (ptid_lwp_p): Don't declare.
7116         * fbsd-nat.c: Update.
7117         * linux-nat.c: Update.
7118         * nat/linux-procfs.c: Update.
7119         * nat/x86-linux-dregs.c: Update.
7120         * sol-thread.c: Update.
7121
7122 2018-07-03  Tom Tromey  <tom@tromey.com>
7123
7124         * common/ptid.c (ptid_is_pid): Remove.
7125         * common/ptid.h (ptid_is_pid): Don't declare.
7126         * infrun.c: Update.
7127         * linux-nat.c: Update.
7128         * mi/mi-interp.c: Update.
7129         * remote.c: Update.
7130         * thread.c: Update.
7131
7132 2018-07-03  Tom Tromey  <tom@tromey.com>
7133
7134         * common/ptid.c (ptid_get_tid): Remove.
7135         * common/ptid.h (ptid_get_tid): Don't declare.
7136         * ada-tasks.c: Update.
7137         * aix-thread.c: Update.
7138         * bsd-uthread.c: Update.
7139         * darwin-nat.c: Update.
7140         * fbsd-nat.c: Update.
7141         * i386-darwin-nat.c: Update.
7142         * infrun.c: Update.
7143         * linux-tdep.c: Update.
7144         * nto-procfs.c: Update.
7145         * ppc-ravenscar-thread.c: Update.
7146         * python/py-infthread.c: Update.
7147         * ravenscar-thread.c: Update.
7148         * sol-thread.c: Update.
7149         * sparc-ravenscar-thread.c: Update.
7150         * windows-nat.c: Update.
7151
7152 2018-07-03  Tom Tromey  <tom@tromey.com>
7153
7154         * common/ptid.c (ptid_get_lwp): Remove.
7155         * common/ptid.h (ptid_get_lwp): Don't declare.
7156         * aarch64-linux-nat.c: Update.
7157         * ada-tasks.c: Update.
7158         * aix-thread.c: Update.
7159         * amd64-linux-nat.c: Update.
7160         * arm-linux-nat.c: Update.
7161         * corelow.c: Update.
7162         * fbsd-nat.c: Update.
7163         * fbsd-tdep.c: Update.
7164         * gnu-nat.c: Update.
7165         * i386-cygwin-tdep.c: Update.
7166         * i386-gnu-nat.c: Update.
7167         * i386-linux-nat.c: Update.
7168         * ia64-linux-nat.c: Update.
7169         * inf-ptrace.c: Update.
7170         * infrun.c: Update.
7171         * linux-fork.c: Update.
7172         * linux-nat.c: Update.
7173         * linux-tdep.c: Update.
7174         * linux-thread-db.c: Update.
7175         * mips-linux-nat.c: Update.
7176         * nat/aarch64-linux-hw-point.c: Update.
7177         * nat/aarch64-linux.c: Update.
7178         * nat/linux-btrace.c: Update.
7179         * nat/linux-osdata.c: Update.
7180         * nat/linux-procfs.c: Update.
7181         * nat/x86-linux-dregs.c: Update.
7182         * obsd-nat.c: Update.
7183         * ppc-fbsd-nat.c: Update.
7184         * ppc-linux-nat.c: Update.
7185         * procfs.c: Update.
7186         * python/py-infthread.c: Update.
7187         * ravenscar-thread.c: Update.
7188         * remote.c: Update.
7189         * s390-linux-nat.c: Update.
7190         * sol-thread.c: Update.
7191         * sol2-tdep.c: Update.
7192         * spu-linux-nat.c: Update.
7193         * x86-linux-nat.c: Update.
7194         * xtensa-linux-nat.c: Update.
7195
7196 2018-07-03  Tom Tromey  <tom@tromey.com>
7197
7198         * common/ptid.c (ptid_get_pid): Remove.
7199         * common/ptid.h (ptid_get_pid): Don't declare.
7200         * aarch64-linux-nat.c: Update.
7201         * ada-lang.c: Update.
7202         * aix-thread.c: Update.
7203         * alpha-bsd-nat.c: Update.
7204         * amd64-fbsd-nat.c: Update.
7205         * amd64-linux-nat.c: Update.
7206         * arm-linux-nat.c: Update.
7207         * arm-nbsd-nat.c: Update.
7208         * auxv.c: Update.
7209         * break-catch-syscall.c: Update.
7210         * breakpoint.c: Update.
7211         * bsd-uthread.c: Update.
7212         * corelow.c: Update.
7213         * ctf.c: Update.
7214         * darwin-nat.c: Update.
7215         * fbsd-nat.c: Update.
7216         * fbsd-tdep.c: Update.
7217         * gcore.c: Update.
7218         * gnu-nat.c: Update.
7219         * hppa-nbsd-nat.c: Update.
7220         * hppa-obsd-nat.c: Update.
7221         * i386-fbsd-nat.c: Update.
7222         * ia64-linux-nat.c: Update.
7223         * inf-ptrace.c: Update.
7224         * infcmd.c: Update.
7225         * inferior.c: Update.
7226         * inferior.h: Update.
7227         * inflow.c: Update.
7228         * infrun.c: Update.
7229         * linux-fork.c: Update.
7230         * linux-nat.c: Update.
7231         * linux-tdep.c: Update.
7232         * linux-thread-db.c: Update.
7233         * m68k-bsd-nat.c: Update.
7234         * mi/mi-interp.c: Update.
7235         * mi/mi-main.c: Update.
7236         * mips-linux-nat.c: Update.
7237         * mips-nbsd-nat.c: Update.
7238         * mips64-obsd-nat.c: Update.
7239         * nat/aarch64-linux-hw-point.c: Update.
7240         * nat/aarch64-linux.c: Update.
7241         * nat/linux-btrace.c: Update.
7242         * nat/linux-osdata.c: Update.
7243         * nat/linux-procfs.c: Update.
7244         * nat/x86-linux-dregs.c: Update.
7245         * nto-procfs.c: Update.
7246         * obsd-nat.c: Update.
7247         * ppc-linux-nat.c: Update.
7248         * ppc-nbsd-nat.c: Update.
7249         * ppc-obsd-nat.c: Update.
7250         * proc-service.c: Update.
7251         * procfs.c: Update.
7252         * python/py-inferior.c: Update.
7253         * python/py-infthread.c: Update.
7254         * ravenscar-thread.c: Update.
7255         * record.c: Update.
7256         * remote-sim.c: Update.
7257         * remote.c: Update.
7258         * rs6000-nat.c: Update.
7259         * s390-linux-nat.c: Update.
7260         * sh-nbsd-nat.c: Update.
7261         * sol-thread.c: Update.
7262         * sparc-nat.c: Update.
7263         * sparc64-tdep.c: Update.
7264         * spu-linux-nat.c: Update.
7265         * spu-tdep.c: Update.
7266         * target-debug.h: Update.
7267         * target.c: Update.
7268         * thread.c: Update.
7269         * tid-parse.c: Update.
7270         * tracefile-tfile.c: Update.
7271         * vax-bsd-nat.c: Update.
7272         * windows-nat.c: Update.
7273         * x86-linux-nat.c: Update.
7274         * x86-nat.c: Update.
7275
7276 2018-07-03  Tom Tromey  <tom@tromey.com>
7277
7278         * common/ptid.c (pid_to_ptid): Remove.
7279         * common/ptid.h (pid_to_ptid): Don't declare.
7280         * aix-thread.c: Update.
7281         * arm-linux-nat.c: Update.
7282         * common/ptid.c: Update.
7283         * common/ptid.h: Update.
7284         * corelow.c: Update.
7285         * ctf.c: Update.
7286         * darwin-nat.c: Update.
7287         * fbsd-nat.c: Update.
7288         * fork-child.c: Update.
7289         * gnu-nat.c: Update.
7290         * go32-nat.c: Update.
7291         * inf-ptrace.c: Update.
7292         * infcmd.c: Update.
7293         * inferior.c: Update.
7294         * infrun.c: Update.
7295         * linux-fork.c: Update.
7296         * linux-nat.c: Update.
7297         * nat/aarch64-linux-hw-point.c: Update.
7298         * nat/fork-inferior.c: Update.
7299         * nat/x86-linux-dregs.c: Update.
7300         * nto-procfs.c: Update.
7301         * obsd-nat.c: Update.
7302         * procfs.c: Update.
7303         * progspace.c: Update.
7304         * remote.c: Update.
7305         * rs6000-nat.c: Update.
7306         * s390-linux-nat.c: Update.
7307         * sol-thread.c: Update.
7308         * spu-linux-nat.c: Update.
7309         * target.c: Update.
7310         * top.c: Update.
7311         * tracefile-tfile.c: Update.
7312         * windows-nat.c: Update.
7313
7314 2018-07-03  Tom Tromey  <tom@tromey.com>
7315
7316         * common/ptid.h (ptid_build): Don't declare.
7317         * common/ptid.c (ptid_build): Remove.
7318         * aix-thread.c: Update.
7319         * bsd-kvm.c: Update.
7320         * bsd-uthread.c: Update.
7321         * common/agent.c: Update.
7322         * common/ptid.c: Update.
7323         * common/ptid.h: Update.
7324         * corelow.c: Update.
7325         * darwin-nat.c: Update.
7326         * fbsd-nat.c: Update.
7327         * gnu-nat.c: Update.
7328         * linux-fork.c: Update.
7329         * linux-nat.c: Update.
7330         * linux-thread-db.c: Update.
7331         * nat/linux-osdata.c: Update.
7332         * nat/linux-procfs.c: Update.
7333         * nto-procfs.c: Update.
7334         * obsd-nat.c: Update.
7335         * proc-service.c: Update.
7336         * procfs.c: Update.
7337         * ravenscar-thread.c: Update.
7338         * remote-sim.c: Update.
7339         * remote.c: Update.
7340         * sol-thread.c: Update.
7341         * target.c: Update.
7342         * windows-nat.c: Update.
7343
7344 2018-07-03  Tom Tromey  <tom@tromey.com>
7345
7346         * infrun.c (follow_exec): Use exit_inferior_silent.
7347         * inferior.c (exit_inferior_num_silent): Remove.
7348         * inferior.h (exit_inferior_num_silent): Don't declare.
7349
7350 2018-07-03  Tom Tromey  <tom@tromey.com>
7351
7352         PR cli/23340:
7353         * darwin-nat.c (darwin_attach_pid): Reset inferior and
7354         inferior_ptid on error.
7355
7356 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
7357             Simon Marchi  <simon.marchi@polymtl.ca>
7358
7359         PR tdep/8282
7360         * disasm.h (gdb_disassembler): Add
7361         `m_disassembler_options_holder'. member
7362         * disasm.c (get_all_disassembler_options): New function.
7363         (gdb_disassembler::gdb_disassembler): Use it.
7364         (gdb_buffered_insn_length_init_dis): Likewise.
7365         (gdb_buffered_insn_length): Adjust accordingly.
7366         (set_disassembler_options): Handle options with arguments.
7367         (show_disassembler_options_sfunc): Likewise.  Add a leading new
7368         line if showing options with descriptions.
7369         (disassembler_options_completer): Adapt to using the
7370         `disasm_options_and_args_t' structure.
7371         * mips-tdep.c (mips_disassembler_options): New variable.
7372         (mips_disassembler_options_o32): Likewise.
7373         (mips_disassembler_options_n32): Likewise.
7374         (mips_disassembler_options_n64): Likewise.
7375         (gdb_print_insn_mips): Don't set `disassembler_options'.
7376         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
7377         functions.
7378         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
7379         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
7380         `gdbarch_disassembler_options_implicit' and
7381         `gdbarch_valid_disassembler_options'.
7382         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
7383         `disasm_options_and_args_t' structure.
7384         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
7385         method.
7386         (valid_disassembler_options): Switch from `disasm_options_t' to
7387         the `disasm_options_and_args_t' structure.
7388         * NEWS: Document `set disassembler-options' support for the MIPS
7389         target.
7390         * gdbarch.h: Regenerate.
7391         * gdbarch.c: Regenerate.
7392
7393 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
7394
7395         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
7396
7397 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
7398
7399         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
7400         parameter in call to amd64_target_description.
7401         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
7402         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
7403         (amd64fbsd_init_abi): Likewise.
7404         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
7405         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
7406         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
7407         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
7408
7409 2018-06-29  Pedro Alves  <palves@redhat.com>
7410
7411         * gdb/amd64-tdep.h (amd64_create_target_description): Add
7412         "segments" parameter.
7413         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
7414         (_initialize_amd64_tdep): Update call to
7415         amd64_create_target_description.
7416         (amd64_target_description): Add "segments" parameter.  Adjust
7417         the implementation to use it.
7418         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
7419         call to amd64_create_target_description.
7420         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
7421         * gdb/arch/amd64.h (amd64_create_target_description): Add
7422         "segments" register.
7423         * gdb/arch/amd64.c (amd64_create_target_description): Add
7424         "segments" parameter.  Call create_feature_i386_64bit_segments
7425         only if SEGMENTS is true.
7426         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
7427         call to amd64_create_target_description.
7428
7429 2018-06-29  Pedro Alves  <palves@redhat.com>
7430
7431         * thread.c (thread_target_id_str): New, factored out from ...
7432         (print_thread_info_1): ... here.  Use it to compute the max
7433         "Target Id" column width.
7434
7435 2018-06-29  Pedro Alves  <palves@redhat.com>
7436
7437         * remote.c (remote_target::extra_thread_info): Delete
7438         'display_buf' and 'n' locals.  from the cache, regardless of
7439         packet mechanims is in use.  Use cache for qThreadExtra and qP
7440         methods too.
7441
7442 2018-06-29  Pedro Alves  <palves@redhat.com>
7443
7444         * blockframe.c (find_pc_sect_containing_function): New function.
7445         * breakpoint.c (print_breakpoint_location): Don't call
7446         find_pc_sect_function.
7447         * linespec.c (create_sals_line_offset): Record the location's
7448         symbol in the sal.
7449         * linespec.c (convert_address_location_to_sals): Fill in sal's
7450         symbol with find_pc_sect_containing_function.
7451         * symtab.c (find_function_start_sal): Rename to ...
7452         (find_function_start_sal_1): ... this.
7453         (find_function_start_sal): Reimplement as wrapper around
7454         find_function_start_sal_1, and use
7455         find_pc_sect_containing_function to fill in the sal's symbol.
7456         (find_function_start_sal(symbol*, bool)): Adjust.
7457         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
7458         comments.
7459         (find_pc_sect_containing_function): Declare.
7460
7461 2018-06-29  Pedro Alves  <palves@redhat.com>
7462
7463         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
7464         true if the the location has no symbol.
7465
7466 2018-06-28  Tom Tromey  <tom@tromey.com>
7467
7468         * NEWS: Mention --enable-codesign.
7469         * silent-rules.mk (ECHO_SIGN): New variable.
7470         * configure.ac: Add --enable-codesign.
7471         * configure: Rebuild.
7472         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
7473         (gdb$(EXEEXT)): Optionally invoke codesign.
7474
7475 2018-06-28  Pedro Alves  <palves@redhat.com>
7476
7477         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
7478         comments.
7479         (switch_to_thread_no_regs): Adjust comment.
7480         * infcmd.c (stop_pc): Delete.
7481         (post_create_inferior, info_program_command): Replace references
7482         to stop_pc with references to thread_info->suspend.stop_pc.
7483         * inferior.h (stop_pc): Delete declaration.
7484         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
7485         (handle_inferior_event_1, handle_signal_stop)
7486         (process_event_stop_test, keep_going_stepped_thread)
7487         (handle_step_into_function, handle_step_into_function_backward)
7488         (print_stop_location): Replace references to stop_pc with
7489         references to thread_info->suspend.stop_pc.
7490         (struct infcall_suspend_state) <stop_pc>: Delete field.
7491         (save_infcall_suspend_state, restore_infcall_suspend_state):
7492         Remove references to inf_stat->stop_pc.
7493         * linux-fork.c (fork_load_infrun_state): Likewise.
7494         * record-btrace.c (record_btrace_set_replay): Likewise.
7495         * record-full.c (record_full_goto_entry): Likewise.
7496         * remote.c (print_one_stopped_thread): Likewise.
7497         * target.c (target_resume): Extend comment.
7498         * thread.c (set_executing_thread): New.
7499         (set_executing): Use it.
7500         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
7501         Remove references to stop_pc.
7502
7503 2018-06-28  Pedro Alves  <palves@redhat.com>
7504
7505         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
7506         Moving fetching stop_pc until after ecs->event_thread is refreshed.
7507
7508 2018-06-28  Tom Tromey  <tom@tromey.com>
7509
7510         * coffread.c (coff_symfile_finish): Update.
7511         * xcoffread.c (xcoff_symfile_finish): Update.
7512         * elfread.c (elf_symfile_finish): Update.
7513         * symfile.h (dwarf2_free_objfile): Don't declare.
7514         * dwarf2read.c (_initialize_dwarf2_read): Use
7515         register_objfile_data_with_cleanup.
7516         (dwarf2_free_objfile): Now static.  Change signature.
7517
7518 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7519
7520         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
7521         option "-o" to add-symbol-file-load to add an offset to each
7522         section's load address.
7523         * symfile.c (set_objfile_default_section_offset): New function.
7524
7525 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7526
7527         * symfile.c (add_symbol_file_command): Make sure that sections
7528         with the same name are sorted in the same order.
7529
7530 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7531
7532         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
7533         require the second argument.  If omitted, load sections at the
7534         addresses specified in the file.
7535
7536 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7537
7538         * symfile.c (symbol_file_command, symbol_file_add_main_1)
7539         (_initialize_symfile): Add option "-o" to symbol-file to add an
7540         offset to each section of the symbol file.
7541
7542 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7543
7544         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
7545
7546 2018-06-27  Tom Tromey  <tom@tromey.com>
7547
7548         * stack.c (_initialize_stack): Update "func" help text.
7549
7550 2018-06-27  Tom Tromey  <tom@tromey.com>
7551
7552         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
7553         std::vector.
7554         (unwind_infopy_str, pyuw_create_unwind_info)
7555         (unwind_infopy_add_saved_register, pyuw_sniffer)
7556         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
7557         Update.
7558         (struct saved_reg): Add constructor.
7559         <value>: Now a gdbpy_ref<>.
7560
7561 2018-06-27  Tom Tromey  <tom@tromey.com>
7562
7563         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
7564
7565 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7566
7567         * gdb-gdb.py.in: Format using autopep8.
7568
7569 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7570
7571         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
7572         (type_lookup_function): Recognize CORE_ADDR values.
7573
7574 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7575
7576         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
7577         print tag_name.
7578
7579 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7580
7581         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
7582         <__lt__>: Add.
7583
7584 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7585
7586         * gdb-gdb.py: Move to...
7587         * gdb-gdb.py.in: ... here.
7588         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
7589         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
7590         dependencies.
7591         (distclean): Remove gdb-gdb.py when cleaning.
7592         (gdb-gdb.py, gdb-gdb.gdb): New rules.
7593         * configure: Re-generate.
7594
7595 2018-06-27  Pedro Alves  <palves@redhat.com>
7596
7597         * proc-service.c (get_ps_regcache): New.
7598         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
7599         (ps_lsetfpregs): Use it.
7600
7601 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
7602
7603         PR gdb/21695
7604         * dwarf2read.c (lnp_state_machine::check_line_address): Update
7605         declaration.
7606         (dwarf_decode_lines_1): Adjust.
7607
7608 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7609
7610         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
7611         override.
7612         <info_proc>: Likewise.
7613
7614 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
7615
7616         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
7617         to windows_fetch_one_register, and only handle the case of
7618         fetching one register.  Move the code that reloads the context
7619         and iterates over all registers if R is negative to...
7620         (windows_nat_target::fetch_registers): ... here.
7621         (do_windows_store_inferior_registers): Rename to
7622         windows_store_one_register, and only handle the case of storing
7623         one register.  Move the code that handles the case where r is
7624         negative to...
7625         (windows_nat_target::store_registers) ... here.
7626
7627 2018-06-26  Tom Tromey  <tom@tromey.com>
7628
7629         PR rust/22574:
7630         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
7631         * rust-lang.c (rust_print_struct_def): Add podata parameter.
7632         Update.
7633         (rust_internal_print_type): Add podata parameter.
7634         (rust_print_type): Update.
7635
7636 2018-06-26  Tom Tromey  <tom@tromey.com>
7637
7638         * typeprint.h (struct print_offset_data) <update, finish,
7639         maybe_print_hole>: New methods.
7640         <indentation>: New constant.
7641         * typeprint.c (print_offset_data::indentation): Define.
7642         (print_offset_data::maybe_print_hole, print_offset_data::update)
7643         (print_offset_data::finish): Move from c-typeprint.c and rename.
7644         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
7645         (print_spaces_filtered_with_print_options): Update.
7646         (c_print_type_union_field_offset, maybe_print_hole)
7647         (c_print_type_struct_field_offset): Move to typeprint.c and
7648         rename.
7649         (c_type_print_base_struct_union): Update.
7650
7651 2018-06-25  Pedro Alves  <palves@redhat.com>
7652
7653         * gdbthread.h (thread_info_ref, delete_thread)
7654         (delete_thread_silent, first_thread_of_inferior)
7655         (any_thread_of_inferior, switch_to_thread)
7656         (enable_thread_stack_temporaries)
7657         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7658         (get_last_thread_stack_temporary)
7659         (value_in_thread_stack_temporaries, can_access_registers_thread):
7660         Spell out "struct thread_info" instead of just "thread_info".
7661         * inferior.h (notice_new_inferior): Likewise.
7662
7663 2018-06-25  Pedro Alves  <palves@redhat.com>
7664
7665         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7666         pass thread_info pointer to delete_thread.
7667         (windows_nat_target::detach): Pass inferior pointer to
7668         detach_inferior.
7669         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
7670         delete_thread.
7671         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
7672         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
7673         and pass a thread_info pointer to delete_thread.
7674         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
7675         pass thread_info pointer to delete_thread.
7676         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
7677         delete_thread_silent call.
7678         * procfs.c (procfs_target::detach): Pass inferior pointer to
7679         detach_inferior.
7680         (procfs_target::wait): Pass thread_info pointer to delete_thread.
7681         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
7682         delete_thread_silent call.
7683         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7684         pass thread_info pointer to delete_thread.
7685         (windows_nat_target::detach): Pass inferior pointer to
7686         delete_inferior.
7687
7688 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7689
7690         * regcache.c (readable_regcache::read_part): Fix asserts.
7691         (reg_buffer::raw_collect_part): New function.
7692         (regcache::write_part): Fix asserts.
7693         (reg_buffer::raw_supply_part): New function.
7694         (regcache::transfer_regset_register): New helper function.
7695         (regcache::transfer_regset): Call new functions.
7696         (regcache_supply_regset): Use gdb_byte*.
7697         (regcache::supply_regset): Likewise.
7698         (regcache_collect_regset): Likewise.
7699         (regcache::collect_regset): Likewise.
7700         * regcache.h (reg_buffer::raw_collect_part): New declaration.
7701         (reg_buffer::raw_supply_part): Likewise.
7702         (regcache::transfer_regset_register): Likewise.
7703         (regcache::transfer_regset): Use gdb_byte*.
7704
7705 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7706
7707         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
7708
7709 2018-06-21  Pedro Alves  <palves@redhat.com>
7710
7711         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
7712         instead of a ptid_t.  All callers adjusted.
7713         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
7714         adjusted.
7715         (print_ada_task_info, display_current_task_id, task_command_1):
7716         Adjust.
7717         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
7718         inferior_thread.
7719         (breakpoint_kind): Adjust.
7720         (remove_breakpoints_pid): Rename to ...
7721         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
7722         pointer.  All callers adjusted.
7723         (bpstat_clear_actions): Use inferior_thread.
7724         (get_bpstat_thread): New.
7725         (bpstat_do_actions): Use it.
7726         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
7727         to take a thread_info pointer.  All callers adjusted.
7728         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
7729         (breakpoint_re_set_thread): Use inferior_thread.
7730         * breakpoint.h (struct inferior): Forward declare.
7731         (bpstat_stop_status): Update.
7732         (remove_breakpoints_pid): Delete.
7733         (remove_breakpoints_inf): New.
7734         * bsd-uthread.c (bsd_uthread_target::wait)
7735         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
7736         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
7737         (maint_btrace_packet_history_cmd)
7738         (maint_btrace_clear_packet_history_cmd): Adjust.
7739         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
7740         inferior_thread.
7741         * cli/cli-interp.c: Include "inferior.h".
7742         * common/refcounted-object.h (struct
7743         refcounted_object_ref_policy): New.
7744         * compile/compile-object-load.c: Include gdbthread.h.
7745         (store_regs): Use inferior_thread.
7746         * corelow.c (core_target::close): Use current_inferior.
7747         (core_target_open): Adjust to use first_thread_of_inferior and use
7748         the current inferior.
7749         * ctf.c (ctf_target::close): Adjust to use current_inferior.
7750         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
7751         <thread>: ... this new field.  All references adjusted.
7752         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
7753         Take a thread_info pointer instead of a ptid_t.
7754         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
7755         (dummy_frame_discard, register_dummy_frame_dtor): Take a
7756         thread_info pointer instead of a ptid_t.
7757         * elfread.c: Include "inferior.h".
7758         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
7759         Use inferior_thread.
7760         * eval.c (evaluate_subexp): Likewise.
7761         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
7762         inferior_thread.
7763         * gdb_proc_service.h (struct thread_info): Forward declare.
7764         (struct ps_prochandle) <ptid>: Delete, replaced by ...
7765         <thread>: ... this new field.  All references adjusted.
7766         * gdbarch.h, gdbarch.c: Regenerate.
7767         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
7768         'thread' parameter.  All implementations and callers adjusted.
7769         * gdbthread.h (thread_info) <set_running>: New method.
7770         (delete_thread, delete_thread_silent): Take a thread_info pointer
7771         instead of a ptid.
7772         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
7773         (first_thread_of_process): Delete, replaced by ...
7774         (first_thread_of_inferior): ... this new function.  All callers
7775         adjusted.
7776         (any_live_thread_of_process): Delete, replaced by ...
7777         (any_live_thread_of_inferior): ... this new function.  All callers
7778         adjusted.
7779         (switch_to_thread, switch_to_no_thread): Declare.
7780         (is_executing): Delete.
7781         (enable_thread_stack_temporaries): Update comment.
7782         <enable_thread_stack_temporaries>: Take a thread_info pointer
7783         instead of a ptid_t.  Incref the thread.
7784         <~enable_thread_stack_temporaries>: Decref the thread.
7785         <m_ptid>: Delete
7786         <m_thr>: New.
7787         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7788         (get_last_thread_stack_temporary)
7789         (value_in_thread_stack_temporaries, can_access_registers_thread):
7790         Take a thread_info pointer instead of a ptid_t.  All callers
7791         adjusted.
7792         * infcall.c (get_call_return_value): Use inferior_thread.
7793         (run_inferior_call): Work with thread pointers instead of ptid_t.
7794         (call_function_by_hand_dummy): Work with thread pointers instead
7795         of ptid_t.  Use thread_info_ref.
7796         * infcmd.c (proceed_thread_callback): Access thread's state
7797         directly.
7798         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
7799         access thread's state directly.
7800         (continue_command): Use inferior_thread.
7801         (info_program_command): Use find_thread_ptid and access thread
7802         state directly.
7803         (proceed_after_attach_callback): Use thread state directly.
7804         (notice_new_inferior): Take a thread_info pointer instead of a
7805         ptid_t.  All callers adjusted.
7806         (exit_inferior): Take an inferior pointer instead of a pid.  All
7807         callers adjusted.
7808         (exit_inferior_silent): New.
7809         (detach_inferior): Delete.
7810         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
7811         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
7812         (detach_inferior_command, kill_inferior_command): Use
7813         find_inferior_id instead of valid_gdb_inferior_id and
7814         gdb_inferior_id_to_pid.
7815         (inferior_command): Use inferior and thread pointers.
7816         * inferior.h (struct thread_info): Forward declare.
7817         (notice_new_inferior): Take a thread_info pointer instead of a
7818         ptid_t.  All callers adjusted.
7819         (detach_inferior): Delete declaration.
7820         (exit_inferior, exit_inferior_silent): Take an inferior pointer
7821         instead of a pid.  All callers adjusted.
7822         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
7823         (valid_gdb_inferior_id): Delete.
7824         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
7825         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
7826         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
7827         ...
7828         <inf>: ... this new field.
7829         <step_ptid>: Delete, replaced by ...
7830         <step_thread>: ... this new field.
7831         (get_displaced_stepping_state): Take an inferior pointer instead
7832         of a pid.  All callers adjusted.
7833         (displaced_step_in_progress_any_inferior): Adjust.
7834         (displaced_step_in_progress_thread): Take a thread pointer instead
7835         of a ptid_t.  All callers adjusted.
7836         (displaced_step_in_progress, add_displaced_stepping_state): Take
7837         an inferior pointer instead of a pid.  All callers adjusted.
7838         (get_displaced_step_closure_by_addr): Adjust.
7839         (remove_displaced_stepping_state): Take an inferior pointer
7840         instead of a pid.  All callers adjusted.
7841         (displaced_step_prepare_throw, displaced_step_prepare)
7842         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
7843         All callers adjusted.
7844         (start_step_over): Adjust.
7845         (infrun_thread_ptid_changed): Remove bit updating ptids in the
7846         displaced step queue.
7847         (do_target_resume): Adjust.
7848         (fetch_inferior_event): Use inferior_thread.
7849         (context_switch, get_inferior_stop_soon): Take an
7850         execution_control_state pointer instead of a ptid_t.  All callers
7851         adjusted.
7852         (switch_to_thread_cleanup): Delete.
7853         (stop_all_threads): Use scoped_restore_current_thread.
7854         * inline-frame.c: Include "gdbthread.h".
7855         (inline_state) <inline_state>: Take a thread pointer instead of a
7856         ptid_t.  All callers adjusted.
7857         <ptid>: Delete, replaced by ...
7858         <thread>: ... this new field.
7859         (find_inline_frame_state): Take a thread pointer instead of a
7860         ptid_t.  All callers adjusted.
7861         (skip_inline_frames, step_into_inline_frame)
7862         (inline_skipped_frames, inline_skipped_symbol): Take a thread
7863         pointer instead of a ptid_t.  All callers adjusted.
7864         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
7865         (inline_skipped_frames, inline_skipped_symbol): Likewise.
7866         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
7867         pointers directly.
7868         * linux-nat.c (get_detach_signal): Likewise.
7869         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
7870         (thread_db_notice_clone): Adjust.
7871         (thread_db_find_new_threads_silently)
7872         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
7873         a thread pointer instead of a ptid_t.  All callers adjusted.
7874         * mi/mi-cmd-var.c: Include "inferior.h".
7875         (mi_cmd_var_update_iter): Update to use thread pointers.
7876         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
7877         inferior directly.
7878         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
7879         out to ...
7880         (mi_output_running): ... this new function.
7881         (mi_on_resume_1): Adjust to use it.
7882         (mi_user_selected_context_changed): Adjust to use inferior_thread.
7883         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
7884         directly.
7885         (interrupt_thread_callback): : Adjust to use thread and inferior
7886         pointers.
7887         * proc-service.c: Include "gdbthread.h".
7888         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
7889         * progspace-and-thread.c: Include "inferior.h".
7890         * progspace.c: Include "inferior.h".
7891         * python/py-exitedevent.c (create_exited_event_object): Adjust to
7892         hold a reference to an inferior_object.
7893         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
7894         inferior_thread.
7895         * python/py-inferior.c (struct inferior_object): Give the type a
7896         tag name instead of a typedef.
7897         (python_on_normal_stop): No need to check if the current thread is
7898         listed.
7899         (inferior_to_inferior_object): Change return type to
7900         inferior_object.  All callers adjusted.
7901         (find_thread_object): Delete, bits factored out to ...
7902         (thread_to_thread_object): ... this new function.
7903         * python/py-infthread.c (create_thread_object): Use
7904         inferior_to_inferior_object.
7905         (thpy_is_stopped): Use thread pointer directly.
7906         (gdbpy_selected_thread): Use inferior_thread.
7907         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
7908         field, replaced with ...
7909         <thread>: ... this new field.  All users adjusted.
7910         (btpy_insn_or_gap_new): Drop const.
7911         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
7912         callers adjusted.
7913         * python/py-record.c: Include "gdbthread.h".
7914         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7915         a ptid_t.  All callers adjusted.
7916         (gdbpy_current_recording): Use inferior_thread.
7917         * python/py-record.h (recpy_record_object) <ptid>: Delete
7918         field, replaced with ...
7919         <thread>: ... this new field.  All users adjusted.
7920         (recpy_element_object) <ptid>: Delete
7921         field, replaced with ...
7922         <thread>: ... this new field.  All users adjusted.
7923         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7924         a ptid_t.  All callers adjusted.
7925         * python/py-threadevent.c: Include "gdbthread.h".
7926         (get_event_thread): Use thread_to_thread_object.
7927         * python/python-internal.h (struct inferior_object): Forward
7928         declare.
7929         (find_thread_object, find_inferior_object): Delete declarations.
7930         (thread_to_thread_object, inferior_to_inferior_object): New
7931         declarations.
7932         * record-btrace.c: Include "inferior.h".
7933         (require_btrace_thread): Use inferior_thread.
7934         (record_btrace_frame_sniffer)
7935         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
7936         (get_thread_current_frame): Use scoped_restore_current_thread and
7937         switch_to_thread.
7938         (get_thread_current_frame): Use thread pointer directly.
7939         (record_btrace_replay_at_breakpoint): Use thread's inferior
7940         pointer directly.
7941         * record-full.c: Include "inferior.h".
7942         * regcache.c: Include "gdbthread.h".
7943         (get_thread_arch_regcache): Use the inferior's address space
7944         directly.
7945         (get_thread_regcache, registers_changed_thread): New.
7946         * regcache.h (get_thread_regcache(thread_info *thread)): New
7947         overload.
7948         (registers_changed_thread): New.
7949         (remote_target) <remote_detach_1>: Swap order of parameters.
7950         (remote_add_thread): <remote_add_thread>: Return the new thread.
7951         (get_remote_thread_info(ptid_t)): New overload.
7952         (remote_target::remote_notice_new_inferior): Use thread pointers
7953         directly.
7954         (remote_target::process_initial_stop_replies): Use
7955         thread_info::set_running.
7956         (remote_target::remote_detach_1, remote_target::detach)
7957         (extended_remote_target::detach): Adjust.
7958         * stack.c (frame_show_address): Use inferior_thread.
7959         * target-debug.h (target_debug_print_thread_info_pp): New.
7960         * target-delegates.c: Regenerate.
7961         * target.c (default_thread_address_space): Delete.
7962         (memory_xfer_partial_1): Use current_inferior.
7963         (target_detach): Use current_inferior.
7964         (target_thread_address_space): Delete.
7965         (generic_mourn_inferior): Use current_inferior.
7966         * target.h (struct target_ops) <thread_address_space>: Delete.
7967         (target_thread_address_space): Delete.
7968         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
7969         pointers directly.
7970         (delete_thread_1, delete_thread, delete_thread_silent): Take a
7971         thread pointer instead of a ptid_t.  Adjust all callers.
7972         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
7973         (first_thread_of_process): Delete, replaced by ...
7974         (first_thread_of_inferior): ... this new function.  All callers
7975         adjusted.
7976         (any_thread_of_process): Rename to ...
7977         (any_thread_of_inferior): ... this, and take an inferior pointer.
7978         (any_live_thread_of_process): Rename to ...
7979         (any_live_thread_of_inferior): ... this, and take an inferior
7980         pointer.
7981         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7982         (value_in_thread_stack_temporaries)
7983         (get_last_thread_stack_temporary): Take a thread pointer instead
7984         of a ptid_t.  Adjust all callers.
7985         (thread_info::set_running): New.
7986         (validate_registers_access): Use inferior_thread.
7987         (can_access_registers_ptid): Rename to ...
7988         (can_access_registers_thread): ... this, and take a thread
7989         pointer.
7990         (print_thread_info_1): Adjust to compare thread pointers instead
7991         of ptids.
7992         (switch_to_no_thread, switch_to_thread): Make extern.
7993         (scoped_restore_current_thread::~scoped_restore_current_thread):
7994         Use m_thread pointer directly.
7995         (scoped_restore_current_thread::scoped_restore_current_thread):
7996         Use inferior_thread.
7997         (thread_command): Use thread pointer directly.
7998         (thread_num_make_value_helper): Use inferior_thread.
7999         * top.c (execute_command): Use inferior_thread.
8000         * tui/tui-interp.c: Include "inferior.h".
8001         * varobj.c (varobj_create): Use inferior_thread.
8002         (value_of_root_1): Use find_thread_global_id instead of
8003         global_thread_id_to_ptid.
8004
8005 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
8006
8007         * regcache.c (readable_regcache::read_part): Avoid memcpy when
8008         possible.
8009         (regcache::write_part): Likewise.
8010         (readable_regcache::cooked_read_part): Update comment.
8011         (readable_regcache::cooked_write_part): Likewise.
8012         * regcache.h: (readable_regcache::read_part): Likewise.
8013         (regcache::write_part): Likewise.
8014
8015 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
8016             Dirk Schubert  <dirk.schubert@arm.com>
8017
8018         * aarch64-linux-nat.c (post_attach): New.
8019         (aarch64_linux_nat_target::post_attach): Override post_attach to
8020         record the number of hardware debug registers.
8021
8022 2018-06-20  Tom Tromey  <tom@tromey.com>
8023
8024         * python/py-param.c (add_setshow_generic): Make parameters const.
8025         (parmpy_init): Update.
8026
8027 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
8028
8029         * regcache.h (regcache_cooked_read_ftype): Rename to...
8030         (register_read_ftype): ...this, change type to function_view.
8031         (class reg_buffer) <save>: Remove src parameter.
8032         (readonly_detached_regcache) <readonly_detached_regcache>: Make
8033         parameter non-const in first overload.  Remove src parameter in
8034         second overload.
8035         * regcache.c (do_cooked_read): Remove.
8036         (readonly_detached_regcache::readonly_detached_regcache): Make
8037         parameter non-const, adjust call to other constructor.
8038         (reg_buffer::save): Remove src parameter.
8039         * frame.c (do_frame_register_read): Remove.
8040         (frame_save_as_regcache): Use lambda function.
8041         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
8042         parameter to ppu2spu_data *.
8043         (ppu2spu_sniffer): Use lambda function.
8044
8045 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
8046
8047         * record-full.c (record_full_target::insert_breakpoint): Remove
8048         "struct" keyword, add const.
8049
8050 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
8051
8052         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
8053         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
8054         * configure.ac: Remove AC_PREREQ, add missing quoting.
8055         * gnulib/configure.ac: Modernize usage of
8056         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
8057         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
8058         (AUTOMAKE_VERSION): Bump to 1.15.1.
8059         * configure: Re-generate.
8060         * config.in: Re-generate.
8061         * aclocal.m4: Re-generate.
8062         * gnulib/aclocal.m4: Re-generate.
8063         * gnulib/config.in: Re-generate.
8064         * gnulib/configure: Re-generate.
8065         * gnulib/import/Makefile.in: Re-generate.
8066
8067 2018-06-19  Pedro Alves  <palves@redhat.com>
8068
8069         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
8070         (lookup_minimal_symbol_by_pc_section): ... here with
8071         gdb_assert_not_reached added.
8072
8073 2018-06-19  Pedro Alves  <palves@redhat.com>
8074
8075         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
8076         parameter with a block parameter.  Compare location's block symbol
8077         with the frame's block instead of addresses.
8078         (skip_inline_frames): Pass the current block instead of the
8079         frame's address.  Break out as soon as we determine the frame
8080         should not be skipped.
8081
8082 2018-06-18  Tom Tromey  <tom@tromey.com>
8083
8084         * solib-aix.c (solib_aix_get_section_offsets): Return
8085         unique_xmalloc_ptr.
8086         (solib_aix_solib_create_inferior_hook): Update.
8087
8088 2018-06-18  Tom Tromey  <tom@tromey.com>
8089
8090         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
8091
8092 2018-06-18  Tom Tromey  <tom@tromey.com>
8093
8094         * solib-frv.c (frv_relocate_main_executable): Use
8095         unique_xmalloc_ptr.
8096         * solib-dsbt.c (dsbt_relocate_main_executable): Use
8097         unique_xmalloc_ptr.
8098
8099 2018-06-18  Tom Tromey  <tom@tromey.com>
8100
8101         * objfiles.h (inhibit_section_map_updates): Update.
8102         (resume_section_map_updates, resume_section_map_updates_cleanup):
8103         Remove.
8104         * solib-svr4.c (svr4_handle_solib_event): Update.
8105         * objfiles.c (inhibit_section_map_updates): Return
8106         scoped_restore_tmpl<int>.
8107         (resume_section_map_updates, resume_section_map_updates_cleanup):
8108         Remove.
8109
8110 2018-06-18  Tom Tromey  <tom@tromey.com>
8111
8112         * valprint.h (read_string): Update.
8113         * valprint.c (read_string): Change type of "buffer".
8114         (val_print_string): Update.
8115         * python/py-value.c (valpy_string): Update.
8116         * language.h (struct language_defn) <la_get_string>: Change
8117         type of "buffer".
8118         (default_get_string, c_get_string): Update.
8119         * language.c (default_get_string): Change type of "buffer".
8120         * guile/scm-value.c (gdbscm_value_to_string): Update.
8121         * c-lang.c (c_get_string): Change type of "buffer".
8122
8123 2018-06-18  Tom Tromey  <tom@tromey.com>
8124
8125         * ser-mingw.c (struct pipe_state_destroyer): New.
8126         (pipe_state_up): New typedef.
8127         (cleanup_pipe_state): Remove.
8128         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
8129
8130 2018-06-18  Tom Tromey  <tom@tromey.com>
8131
8132         * rust-lang.h (rust_yyerror): Don't declare.
8133         * rust-lang.c (rust_language_defn): Update.
8134         * rust-exp.y (yyerror): Now static.
8135         * parse.c (parse_exp_in_context_1): Update.
8136         * p-lang.h (p_yyerror): Don't declare.
8137         * p-lang.c (p_language_defn): Update.
8138         * p-exp.y (yyerror): Now static.
8139         * opencl-lang.c (opencl_language_defn): Update.
8140         * objc-lang.c (objc_language_defn): Update.
8141         * m2-lang.h (m2_yyerror): Don't declare.
8142         * m2-lang.c (m2_language_defn): Update.
8143         * m2-exp.y (yyerror): Now static.
8144         * language.h (struct language_defn) <la_error>: Remove.
8145         * language.c (unk_lang_error): Remove.
8146         (unknown_language_defn, auto_language_defn): Remove.
8147         * go-lang.h (go_yyerror): Don't declare.
8148         * go-lang.c (go_language_defn): Update.
8149         * go-exp.y (yyerror): Now static.
8150         * f-lang.h (f_yyerror): Don't declare.
8151         * f-lang.c (f_language_defn): Update.
8152         * f-exp.y (yyerror): Now static.
8153         * d-lang.h (d_yyerror): Don't declare.
8154         * d-lang.c (d_language_defn): Update.
8155         * d-exp.y (yyerror): Now static.
8156         * c-lang.h (c_yyerror): Don't declare.
8157         * c-lang.c (c_language_defn, cplus_language_defn)
8158         (asm_language_defn, minimal_language_defn): Update.
8159         * c-exp.y (yyerror): Now static.
8160         * ada-lang.h (ada_yyerror): Don't declare.
8161         * ada-lang.c (ada_language_defn): Update.
8162         * ada-exp.y (yyerror): Now static.
8163
8164 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
8165
8166         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
8167         (store_sveregs_to_thread): Likewise.
8168         (aarch64_linux_fetch_inferior_registers): Check for SVE.
8169         (aarch64_linux_store_inferior_registers): Likewise.
8170         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
8171         function.
8172         (aarch64_sve_regs_copy_to_regcache): Likewise.
8173         (aarch64_sve_regs_copy_from_regcache): Likewise.
8174         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
8175         declaration.
8176         (aarch64_sve_regs_copy_to_regcache): Likewise.
8177         (aarch64_sve_regs_copy_from_regcache): Likewise.
8178         (sve_context): Structure from Linux headers.
8179         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
8180         (SVE_SIG_ZREG_SIZE): Likewise.
8181         (SVE_SIG_PREG_SIZE): Likewise.
8182         (SVE_SIG_FFR_SIZE): Likewise.
8183         (SVE_SIG_REGS_OFFSET): Likewise.
8184         (SVE_SIG_ZREGS_OFFSET): Likewise.
8185         (SVE_SIG_ZREG_OFFSET): Likewise.
8186         (SVE_SIG_ZREGS_SIZE): Likewise.
8187         (SVE_SIG_PREGS_OFFSET): Likewise.
8188         (SVE_SIG_PREG_OFFSET): Likewise.
8189         (SVE_SIG_PREGS_SIZE): Likewise.
8190         (SVE_SIG_FFR_OFFSET): Likewise.
8191         (SVE_SIG_REGS_SIZE): Likewise.
8192         (SVE_SIG_CONTEXT_SIZE): Likewise.
8193         (SVE_PT_REGS_MASK): Likewise.
8194         (SVE_PT_REGS_FPSIMD): Likewise.
8195         (SVE_PT_REGS_SVE): Likewise.
8196         (SVE_PT_VL_INHERIT): Likewise.
8197         (SVE_PT_VL_ONEXEC): Likewise.
8198         (SVE_PT_REGS_OFFSET): Likewise.
8199         (SVE_PT_FPSIMD_OFFSET): Likewise.
8200         (SVE_PT_FPSIMD_SIZE): Likewise.
8201         (SVE_PT_SVE_ZREG_SIZE): Likewise.
8202         (SVE_PT_SVE_PREG_SIZE): Likewise.
8203         (SVE_PT_SVE_FFR_SIZE): Likewise.
8204         (SVE_PT_SVE_FPSR_SIZE): Likewise.
8205         (SVE_PT_SVE_FPCR_SIZE): Likewise.
8206         (__SVE_SIG_TO_PT): Likewise.
8207         (SVE_PT_SVE_OFFSET): Likewise.
8208         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
8209         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
8210         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
8211         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
8212         (SVE_PT_SVE_PREG_OFFSET): Likewise.
8213         (SVE_PT_SVE_PREGS_SIZE): Likewise.
8214         (SVE_PT_SVE_FFR_OFFSET): Likewise.
8215         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
8216         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
8217         (SVE_PT_SVE_SIZE): Likewise.
8218         (SVE_PT_SIZE): Likewise.
8219         (HAS_SVE_STATE): New define.
8220
8221 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
8222
8223         * nat/aarch64-sve-linux-sigcontext.h: New file.
8224         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
8225         new files.
8226         (SVE_VQ_MIN): Likewise.
8227         (SVE_VQ_MAX): Likewise.
8228         (SVE_VL_MIN): Likewise.
8229         (SVE_VL_MAX): Likewise.
8230         (SVE_NUM_ZREGS): Likewise.
8231         (SVE_NUM_PREGS): Likewise.
8232         (sve_vl_valid): Likewise.
8233         (struct user_sve_header): Likewise.
8234
8235 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
8236             Richard Bunt <Richard.Bunt@arm.com>
8237
8238         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
8239         was requested by GDB.
8240
8241 2018-06-15  Tom de Vries  <tdevries@suse.de>
8242
8243         * MAINTAINERS (Write After Approval): Add Tom de Vries.
8244
8245 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
8246
8247         * gnulib/update-gnulib.sh: Print expected versions of
8248         autoconf/aclocal.
8249
8250 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
8251
8252         * arch-utils.c (default_type_align): Use type_length_units.
8253         * gdbtypes.c (type_align): Use type_length_units.
8254
8255 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8256
8257         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
8258         of 'define' command.
8259
8260 2018-06-14  Tom de Vries  <tdevries@suse.de>
8261
8262         PR cli/22573
8263         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
8264         get_no_prettyformat_print_options.
8265
8266 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
8267
8268         * sparc-nat.h: Include target.h.
8269         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
8270         <fetch_registers>: Remove this argument in function call.
8271         <store_registers>: Remove this argument in function call, remove
8272         extra semicolon.
8273         <low_forget_process>: Call sparc64_forget_process instead of
8274         sparc_forget_process.
8275
8276 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
8277
8278         * procfs.c (_initialize_procfs): Use add_inf_child_target.
8279         (procfs_target::make_corefile_notes): Adjust to new
8280         target_read_alloc return type.
8281
8282 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8283             Stephen Roberts  <stephen.roberts@arm.com>
8284
8285         PR gdb/22882
8286         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
8287         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
8288         Move should_notify_stop local into more inner scope.
8289
8290 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8291             Stephen Roberts  <stephen.roberts@arm.com>
8292
8293         PR gdb/22882
8294         * infrun.c (resume_1): Add call to mark_async_event_handler.
8295
8296 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8297
8298         * infrun.c (do_target_wait): Change old version of $pc printed.
8299
8300 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
8301
8302         * dwarf2read.c (read_index_from_section): Rename to...
8303         (read_gdb_index_from_section): ... this, update all callers.
8304         (dwarf2_read_index): Rename to...
8305         (dwarf2_read_gdb_index): ... this, update all callers.
8306
8307 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
8308
8309         * hppa-linux-nat.c
8310         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
8311         hppa_linux_nat_target::fetch_registers.
8312
8313 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8314
8315         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
8316         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
8317         (AARCH64_DWARF_SVE_FFR): Likewise.
8318         (AARCH64_DWARF_SVE_P0): Likewise.
8319         (AARCH64_DWARF_SVE_Z0): Likewise.
8320
8321 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8322
8323         * common/common-regcache.h (raw_compare): New function.
8324         * regcache.c (regcache::raw_compare): Likewise.
8325         * regcache.h (regcache::raw_compare): New declaration.
8326
8327 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8328
8329         * common/common-regcache.h (reg_buffer_common): New structure.
8330         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
8331         (reg_buffer::raw_supply): Likewise.
8332         (reg_buffer::raw_supply_integer): Likewise.
8333         (reg_buffer::raw_supply_zeroed): Likewise.
8334         (reg_buffer::raw_collect): Likewise.
8335         (reg_buffer::raw_collect_integer): Likewise.
8336         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
8337         (reg_buffer::raw_supply): Likewise.
8338         (reg_buffer::raw_supply_integer): Likewise.
8339         (reg_buffer::raw_supply_zeroed): Likewise.
8340         (reg_buffer::raw_collect): Likewise.
8341         (reg_buffer::raw_collect_integer): Likewise.
8342
8343 2018-06-10  Tom Tromey  <tom@tromey.com>
8344
8345         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
8346         (class remote_state) <stop_reply_queue>: Now std::vector.
8347         (remote_state::~remote_state)
8348         (remote_target::stop_reply_queue_length): Update.
8349         (struct queue_iter_param, remove_child_of_pending_fork)
8350         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
8351         (check_pending_event_prevents_wildcard_vcont_callback)
8352         (remove_stop_reply_for_inferior)
8353         (remove_stop_reply_of_remote_state)
8354         (remote_notif_remove_once_on_match)
8355         (stop_reply_match_ptid_and_ws)
8356         (remote_kill_child_of_pending_fork): Remove.
8357         (remote_target::remove_new_fork_children)
8358         (remote_target::check_pending_events_prevent_wildcard_vcont)
8359         (remote_target::discard_pending_stop_replies)
8360         (remote_target::discard_pending_stop_replies_in_queue)
8361         (remote_target::remote_notif_remove_queued_reply)
8362         (remote_target::queued_stop_reply)
8363         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
8364         (remote_target::wait, remote_target::kill_new_fork_children)
8365         (remote_target::async): Update.
8366
8367 2018-06-10  Tom Tromey  <tom@tromey.com>
8368
8369         * record-full.c (record_full_arch_list_cleanups): Remove.
8370         (record_full_message): Use try/catch.
8371         (record_full_wait_cleanups): Remove.
8372         (record_full_wait_1): Use try/catch.
8373         (record_full_restore): Likewise.
8374
8375 2018-06-10  Tom Tromey  <tom@tromey.com>
8376
8377         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
8378         declare VEC.  Add constructor.
8379         <in_target_beneath>: Now bool.
8380         (record_full_breakpoints): Now a std::vector, static.
8381         (record_full_sync_record_breakpoints)
8382         (record_full_init_record_breakpoints)
8383         (record_full_target::insert_breakpoint)
8384         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
8385
8386 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
8387
8388         * dwarf2read.c (process_cu_includes): Remove struct keyword.
8389         * serial.c (serial_interface_lookup): Remove struct keyword.
8390
8391 2018-06-10  Tom Tromey  <tom@tromey.com>
8392
8393         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
8394         method.
8395         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
8396         a method.
8397         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
8398         method.
8399         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
8400         "beneath" as a method.
8401         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
8402         Use "beneath" as a method.
8403
8404 2018-06-10  Tom Tromey  <tom@tromey.com>
8405
8406         * tracefile.c (struct trace_file_writer_deleter): New.
8407         <operator()>: Rename from trace_file_writer_xfree.
8408         (trace_file_writer_up): New typedef.
8409         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
8410
8411 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8412
8413         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
8414         <m_registers, m_register_status>: Change type to
8415         std::unique_ptr.
8416         * regcache.c (reg_buffer::reg_buffer): Use new instead of
8417         XCNEWVEC.
8418
8419 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8420
8421         * common/common-regcache.h (enum register_status): Add
8422         underlying type "signed char".
8423         * regcache.h (reg_buffer) <m_register_status>: Change type to
8424         register_status *.
8425         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
8426         register_status instead of signed char.
8427         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
8428         (reg_buffer::get_register_status): Remove cast.
8429         (readable_regcache::raw_read): Remove cast.
8430         (readable_regcache::cooked_read): Remove cast.
8431
8432 2018-06-09  Tom Tromey  <tom@tromey.com>
8433
8434         * source.c (reverse_search_command, forward_search_command): Use
8435         scoped_fd.
8436
8437 2018-06-09  Tom Tromey  <tom@tromey.com>
8438
8439         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
8440         (serial_ops_list): Now static, std::vector.
8441         (serial_interface_lookup, serial_add_interface): Update.
8442
8443 2018-06-09  Tom Tromey  <tom@tromey.com>
8444
8445         * dwarf2read.c (process_cu_includes): Update.
8446         (process_full_comp_unit): Update.
8447         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
8448         std::vector.
8449
8450 2018-06-08  Paul Koning  <paul_koning@dell.com>
8451
8452         PR gdb/23252
8453
8454         * python/python.c (do_start_initialization):
8455         Avoid call to internal Python API.
8456         (init__gdb_module): New function.
8457
8458 2018-06-08  Gary Benson <gbenson@redhat.com>
8459
8460         * linux-thread-db.c (valprint.h): New include.
8461         (struct check_thread_db_info): New structure.
8462         (check_thread_db_on_load, tdb_testinfo): New static globals.
8463         (check_thread_db, check_thread_db_callback): New functions.
8464         (try_thread_db_load_1): Run integrity checks if requested.
8465         (maintenance_check_libthread_db): New function.
8466         (_initialize_thread_db): Register "maint check libthread-db"
8467         and "maint set/show check-libthread-db".
8468         * NEWS: Mention the above new commands.
8469
8470 2018-06-08  Tom Tromey  <tom@tromey.com>
8471
8472         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
8473         now a method.
8474
8475 2018-06-08  Tom Tromey  <tom@tromey.com>
8476
8477         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
8478
8479 2018-06-08  Tom Tromey  <tom@tromey.com>
8480
8481         * common/btrace-common.h (struct btrace_data): Add constructor,
8482         destructor, move assignment operator.
8483         <empty, clear, fini>: New methods.
8484         <format>: Initialize.
8485         (btrace_data_init, btrace_data_fini, btrace_data_clear)
8486         (btrace_data_empty): Don't declare.
8487         * common/btrace-common.c (btrace_data_init): Remove.
8488         (btrace_data::fini): Rename from btrace_data_fini.
8489         (btrace_data::empty): Rename from btrace_data_empty.
8490         (btrace_data::clear): Rename from btrace_data_clear.  Return
8491         bool.
8492         * btrace.h (make_cleanup_btrace_data): Don't declare.
8493         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
8494         (parse_xml_btrace): Update.
8495         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
8496         (maint_btrace_clear_packet_history_cmd): Update.
8497
8498 2018-06-07  Pedro Alves  <palves@redhat.com>
8499
8500         * target.h (target_ops) <beneath>: Now a method.  All references
8501         updated.
8502         (class target_stack): New.
8503         * target.c (g_target_stack): New.
8504         (g_current_top_target): Delete.
8505         (current_top_target): Get the top target out of g_target_stack.
8506         (target_stack::push, target_stack::unpush): New.
8507         (push_target, unpush_target): Reimplement.
8508         (target_is_pushed): Reimplement in terms of g_target_stack.
8509         (target_ops::beneath, target_stack::find_beneath): New.
8510
8511 2018-06-07  Pedro Alves  <palves@redhat.com>
8512
8513         * target.h (find_target_beneath): Delete declaration.
8514         * target.c (find_target_beneath): Delete definition.
8515         * aix-thread.c: All callers of find_target_beneath adjusted to
8516         call target_ops::beneath instead.
8517         * bsd-uthread.c: Likewise.
8518         * linux-thread-db.c: Likewise.
8519         * ravenscar-thread.c: Likewise.
8520         * sol-thread.c: Likewise.
8521         * spu-multiarch.c: Likewise.
8522
8523 2018-06-07  Pedro Alves  <palves@redhat.com>
8524
8525         * target.h (target_ops) <beneath>: Now a method.  All references
8526         updated.
8527         (target_ops) <m_beneath>: New.
8528         * target.c (target_ops::beneath): New.
8529         * corelow.c: Adjust all references to target_ops::beneath.
8530         * linux-thread-db.c: Likewise.
8531         * make-target-delegates: Likewise.
8532         * record-btrace.c: Likewise.
8533         * record-full.c: Likewise.
8534         * remote.c: Likewise.
8535         * target.c: Likewise.
8536         * target-delegates.c: Regenerate.
8537
8538 2018-06-07  Pedro Alves  <palves@redhat.com>
8539
8540         * target.h (target_stack): Delete.
8541         (current_top_target): Declare function.
8542         * target.c (target_stack): Delete.
8543         (g_current_top_target): New.
8544         (current_top_target): New function.
8545         * auxv.c: Use current_top_target instead of target_stack
8546         throughout.
8547         * avr-tdep.c: Likewise.
8548         * breakpoint.c: Likewise.
8549         * corefile.c: Likewise.
8550         * elfread.c: Likewise.
8551         * eval.c: Likewise.
8552         * exceptions.c: Likewise.
8553         * frame.c: Likewise.
8554         * gdbarch-selftests.c: Likewise.
8555         * gnu-v3-abi.c: Likewise.
8556         * ia64-tdep.c: Likewise.
8557         * ia64-vms-tdep.c: Likewise.
8558         * infcall.c: Likewise.
8559         * infcmd.c: Likewise.
8560         * infrun.c: Likewise.
8561         * linespec.c: Likewise.
8562         * linux-tdep.c: Likewise.
8563         * minsyms.c: Likewise.
8564         * ppc-linux-nat.c: Likewise.
8565         * ppc-linux-tdep.c: Likewise.
8566         * procfs.c: Likewise.
8567         * regcache.c: Likewise.
8568         * remote.c: Likewise.
8569         * rs6000-tdep.c: Likewise.
8570         * s390-linux-nat.c: Likewise.
8571         * s390-tdep.c: Likewise.
8572         * solib-aix.c: Likewise.
8573         * solib-darwin.c: Likewise.
8574         * solib-dsbt.c: Likewise.
8575         * solib-spu.c: Likewise.
8576         * solib-svr4.c: Likewise.
8577         * solib-target.c: Likewise.
8578         * sparc-tdep.c: Likewise.
8579         * sparc64-tdep.c: Likewise.
8580         * spu-tdep.c: Likewise.
8581         * symfile.c: Likewise.
8582         * symtab.c: Likewise.
8583         * target-descriptions.c: Likewise.
8584         * target-memory.c: Likewise.
8585         * target.c: Likewise.
8586         * target.h: Likewise.
8587         * tracefile-tfile.c: Likewise.
8588         * tracepoint.c: Likewise.
8589         * valops.c: Likewise.
8590         * valprint.c: Likewise.
8591         * value.c: Likewise.
8592         * windows-tdep.c: Likewise.
8593         * mi/mi-main.c: Likewise.
8594
8595 2018-06-07  Tom Tromey  <tom@tromey.com>
8596
8597         * valprint.h (build_address_symbolic): Declare.
8598         * printcmd.c (print_address_symbolic): Update.
8599         (build_address_symbolic): Change "name" and "filename" to
8600         std::string.
8601         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
8602         Update.
8603         * defs.h (build_address_symbolic): Remove declaration.
8604
8605 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
8606
8607         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
8608         (aarch64_vnv_type): Add function.
8609         (aarch64_pseudo_register_name): Add V regs for SVE.
8610         (aarch64_pseudo_register_type): Likewise.
8611         (aarch64_pseudo_register_reggroup_p): Likewise.
8612         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
8613         (aarch64_pseudo_read_value): Add V regs for SVE.
8614         (aarch64_pseudo_write_2): Use V0 offset for SVE
8615         (aarch64_pseudo_write): Add V regs for SVE.
8616         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
8617
8618 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
8619
8620         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
8621         (sve_vl_from_vq): Likewise.
8622
8623 2018-06-05  Tom Tromey  <tom@tromey.com>
8624
8625         * cli/cli-cmds.c (show_version): Update.
8626         * top.c (print_gdb_version): Add "interactive" parameter.
8627         Update.
8628         * main.c (captured_main_1): Update.
8629         * top.h (print_gdb_version): Add "interactive" parameter and a
8630         comment.
8631
8632 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
8633
8634         * common/enum-flags.h: Add trailing semicolon to example in
8635         comment.
8636
8637 2018-06-05  Tom Tromey  <tom@tromey.com>
8638
8639         PR cli/12326:
8640         * NEWS: Add entry about pager.
8641         * utils.c (pagination_disabled_for_command): New global.
8642         (prompt_for_continue): Allow "c" response to prompt.
8643         (reinitialize_more_filter): Clear
8644         pagination_disabled_for_command.
8645         (fputs_maybe_filtered): Check pagination_disabled_for_command.
8646
8647 2018-06-04  Tom Tromey  <tom@tromey.com>
8648
8649         * ada-lang.h (ada_lookup_symbol_list): Update.
8650         * ada-lang.c (resolve_subexp): Update.
8651         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
8652         parameter.
8653         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
8654         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
8655         results parameter to std::vector.
8656         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
8657         Update.
8658         * ada-exp.y (block_lookup): Update.
8659         (select_possible_type_sym): Change type of syms.  Remove nsyms
8660         parameter.
8661         (write_var_or_type, write_name_assoc): Update.
8662
8663 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
8664
8665         * windows-nat.c (windows_nat_target::xfer_partial): Return
8666         TARGET_XFER_E_IO if we need to delegate to the target beneath
8667         but BENEATH is NULL.
8668
8669 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
8670
8671         * Makefile.in (config.status): Add configure.nat as a
8672         dependency.
8673
8674 2018-06-04  Tom Tromey  <tom@tromey.com>
8675
8676         * cp-name-parser.y (cpname_state): Add method declarations.
8677         (HANDLE_QUAL): Update.
8678         (cpname_state::d_grab, cpname_state::fill_comp)
8679         (cpname_state::make_operator, cpname_state::make_dtor)
8680         (cpname_state::make_builtin_type, cpname_state::make_name)
8681         (cpname_state::d_qualify, cpname_state::d_int_type)
8682         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
8683         (%union): Move earlier.
8684
8685 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8686
8687         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
8688
8689 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8690
8691         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
8692         (aarch64_pseudo_write_1): Likewise.
8693         (aarch64_pseudo_read_value): Use helper.
8694         (aarch64_pseudo_write): Likewise.
8695
8696 2018-06-04  Pedro Alves  <palves@redhat.com>
8697
8698         * darwin-nat.c (darwin_ops): Delete.
8699         (darwin_attach_pid): Use get_native_target.
8700
8701 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8702
8703         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
8704         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
8705
8706 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8707
8708         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
8709         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
8710         (aarch64_gdbarch_init): Check for SVE.
8711         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
8712
8713 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8714
8715         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
8716         * aarch64-tdep.h (aarch64_read_description): Likewise.
8717         * arch/aarch64.c (aarch64_create_target_description): Likewise.
8718         * arch/aarch64.h (aarch64_create_target_description): Likewise.
8719         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
8720         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
8721         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
8722
8723 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
8724
8725         * value.c (value_fetch_lazy_bitfield): New.
8726         (value_fetch_lazy_memory): New.
8727         (value_fetch_lazy_register): New.
8728         (value_fetch_lazy): Factor out to smaller functions.
8729
8730 2018-06-01  Tom Tromey  <tom@tromey.com>
8731
8732         * cp-name-parser.y (backslashable, represented): Now const.
8733
8734 2018-06-01  Tom Tromey  <tom@tromey.com>
8735
8736         * cp-name-parser.y: Include parser-defs.h.
8737         (parser_fprintf): Remove declaration.
8738
8739 2018-06-01  Tom Tromey  <tom@tromey.com>
8740
8741         * cp-name-parser.y: Use %pure-parser, %lex-param, and
8742         %parse-param.
8743         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
8744         (global_result): Remove globals.
8745         (struct cpname_state): New.
8746         (yyparse): Don't declare.
8747         (yylex, yyerror): Move declarations after %union.
8748         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
8749         (make_name): Add state parameter.
8750         Update all callers.
8751         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
8752         parameter.
8753         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
8754         Update.
8755         (yylex): Add lvalp, state parameters.
8756         (yyerror): Add state parameter.
8757         (cp_demangled_name_to_comp): Update.
8758
8759 2018-06-01  Tom Tromey  <tom@tromey.com>
8760
8761         * cp-name-parser.y (parser_fprintf): Declare.
8762         (GDB_YY_REMAP_PREFIX): Define.
8763         Include yy-remap.h.  Don't redefine yy* identifiers.
8764
8765 2018-06-01  Tom Tromey  <tom@tromey.com>
8766
8767         * python/py-type.c (typy_legacy_template_argument): Update.
8768         * cp-support.h (cp_demangled_name_to_comp): Update.
8769         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
8770         parameter to be a "std::string *".
8771         (main): Update.
8772
8773 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
8774
8775         * ada-lex.l: Include "diagnostics.h" instead of
8776         "common/diagnostics.h".
8777         * unittests/environ-selftests.c: Likewise.
8778         * common/diagnostics.h: Moved to ../include.
8779
8780 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
8781
8782         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
8783         to language_mode_manual while calling breakpoint_re_set_one.
8784
8785 2018-06-01  Tom Tromey  <tom@tromey.com>
8786
8787         * valops.c (value_cast_structs, destructor_name_p): Update.
8788         * symtab.c (gdb_mangle_name): Update.
8789         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
8790         Update.
8791         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
8792         (pascal_object_print_value_fields, pascal_object_print_value):
8793         Update.
8794         * p-typeprint.c (pascal_type_print_derivation_info): Update.
8795         * linespec.c (find_methods): Update.
8796         * gdbtypes.h (type_name_no_tag): Remove.
8797         (type_name_or_error): Rename from type_name_no_tag_or_error.
8798         * gdbtypes.c (type_name_no_tag): Remove.
8799         (type_name_or_error): Rename from type_name_no_tag_or_error.
8800         (lookup_struct_elt_type, check_typedef): Update.
8801         * expprint.c (print_subexp_standard): Update.
8802         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
8803         * d-namespace.c (d_lookup_nested_symbol): Update.
8804         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
8805         (cp_print_class_member): Update.
8806         * cp-namespace.c (cp_lookup_nested_symbol): Update.
8807         * completer.c (add_struct_fields): Update.
8808         * c-typeprint.c (cp_type_print_derivation_info)
8809         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
8810         Update.
8811         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
8812         (ada_prefer_type, ada_is_exception_sym): Update.
8813
8814 2018-06-01  Tom Tromey  <tom@tromey.com>
8815
8816         * valops.c (enum_constant_from_type, value_namespace_elt)
8817         (value_maybe_namespace_elt): Update.
8818         * valarith.c (find_size_for_pointer_math): Update.
8819         * target-descriptions.c (make_gdb_type): Update.
8820         * symmisc.c (print_symbol): Update.
8821         * stabsread.c (define_symbol, read_type)
8822         (complain_about_struct_wipeout, add_undefined_type)
8823         (cleanup_undefined_types_1): Update.
8824         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
8825         (rust_range_type_p, val_print_struct, rust_print_struct_def)
8826         (rust_internal_print_type, rust_composite_type)
8827         (rust_evaluate_funcall, rust_evaluate_subexp)
8828         (rust_inclusive_range_type_p): Update.
8829         * python/py-type.c (typy_get_tag): Update.
8830         * p-typeprint.c (pascal_type_print_base): Update.
8831         * mdebugread.c (parse_symbol, parse_type): Update.
8832         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
8833         Update.
8834         * guile/scm-type.c (gdbscm_type_tag): Update.
8835         * go-lang.c (sixg_string_p): Update.
8836         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
8837         Update.
8838         * gdbtypes.h (struct main_type) <tag_name>: Remove.
8839         (TYPE_TAG_NAME): Remove.
8840         * gdbtypes.c (type_name_no_tag): Simplify.
8841         (check_typedef, check_types_equal, recursive_dump_type)
8842         (copy_type_recursive, arch_composite_type): Update.
8843         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
8844         in summary mode when needed.
8845         * eval.c (evaluate_funcall): Update.
8846         * dwarf2read.c (fixup_go_packaging, read_structure_type)
8847         (process_structure_scope, read_enumeration_type)
8848         (read_namespace_type, read_module_type, determine_prefix): Update.
8849         * cp-support.c (inspect_type): Update.
8850         * coffread.c (process_coff_symbol, decode_base_type): Update.
8851         * c-varobj.c (c_is_path_expr_parent): Update.
8852         * c-typeprint.c (c_type_print_base_struct_union): Update.
8853         (c_type_print_base_1): Update.  Print struct/class/union/enum in
8854         summary when using C language.
8855         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
8856         (gen_maybe_namespace_elt): Update.
8857         * ada-lang.c (ada_type_name): Simplify.
8858         (empty_record, ada_template_to_fixed_record_type_1)
8859         (template_to_static_fixed_type)
8860         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
8861
8862 2018-06-01  Tom Tromey  <tom@tromey.com>
8863
8864         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
8865         c_print_type.
8866         * c-typeprint.c (c_print_type_1): Add "language" parameter.
8867         (c_print_type): Update.
8868         (c_print_type): New overload.
8869         (c_type_print_varspec_prefix, c_type_print_args)
8870         (c_type_print_varspec_suffix, c_print_type_no_offsets)
8871         (c_type_print_base_struct_union, c_type_print_base_1)
8872         (cp_type_print_method_args): Add "language" parameter.
8873         (c_type_print_base): Update.
8874         * c-lang.h (c_print_type): Add new overload.
8875
8876 2018-06-01  Tom Tromey  <tom@tromey.com>
8877
8878         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
8879         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
8880
8881 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
8882
8883         * aarch64-tdep.c (aarch64_sve_register_names): New const
8884         var.
8885         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
8886         (AARCH64_SVE_Z_REGS_NUM): New define.
8887         (AARCH64_SVE_P_REGS_NUM): Likewise.
8888         (AARCH64_SVE_NUM_REGS): Likewise.
8889
8890 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
8891
8892         * nat/linux-ptrace.h [__alpha__]
8893         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
8894         definitions.
8895
8896 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
8897
8898         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
8899         the endianness selected.
8900         * NEWS: Document `set endian auto' mode operation update.
8901
8902 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8903
8904         * Makefile.in: Add new header.
8905         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
8906         (sve_vl_from_vg): Likewise.
8907         (sve_vq_from_vl): Likewise.
8908         (sve_vl_from_vq): Likewise.
8909         (sve_vq_from_vg): Likewise.
8910         (sve_vg_from_vq): Likewise.
8911         * configure.nat: Add new c file.
8912         * nat/aarch64-sve-linux-ptrace.c: New file.
8913         * nat/aarch64-sve-linux-ptrace.h: New file.
8914
8915 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8916
8917         * aarch64-linux-nat.c (aarch64_linux_read_description):
8918         Add parmeter zero.
8919         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
8920         Likewise.
8921         * aarch64-tdep.c (tdesc_aarch64_list): Add.
8922         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
8923         (aarch64_gdbarch_init): Add parmeter zero.
8924         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
8925         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
8926         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
8927         parmeter.
8928         * doc/gdb.texinfo: Describe SVE feature
8929         * features/aarch64-sve.c: New file.
8930
8931 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
8932
8933         PR gdb/23210
8934         * gdbarch.sh (significant_addr_bit): Default to zero when
8935         not set by target architecture.
8936         * gdbarch.c: Re-generated.
8937         * utils.c (address_significant): Update.
8938
8939 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
8940
8941         * stack.c (func_command): Remove trailing newline in call to error.
8942
8943 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8944
8945         * regcache.h (regcache_raw_collect): Remove, update callers to
8946         use regcache::raw_collect.
8947         * regcache.c (regcache_raw_collect): Remove.
8948
8949 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8950
8951         * regcache.h (regcache_raw_supply): Remove, update callers to
8952         use detached_regcache::raw_supply.
8953         * regcache.c (regcache_raw_supply): Remove.
8954
8955 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8956
8957         * regcache.h (regcache_cooked_write_part): Remove, update
8958         callers to use regcache::cooked_write_part.
8959         * regcache.c (regcache_cooked_write_part): Remove.
8960
8961 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8962
8963         * regcache.h (regcache_cooked_read_part): Remove, update callers
8964         to use readable_regcache::cooked_read_part.
8965         * regcache.c (regcache_cooked_read_part): Remove.
8966
8967 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8968
8969         * regcache.h (regcache_cooked_read_value): Remove, update
8970         callers to use readable_regcache::cooked_read_value.
8971         * regcache.c (regcache_cooked_read_value): Remove.
8972
8973 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8974
8975         * regcache.h (regcache_cooked_write): Remove, update callers to
8976         use regcache::cooked_write.
8977         * regcache.c (regcache_cooked_write): Remove.
8978
8979 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8980
8981         * regcache.h (regcache_invalidate): Remove, update callers to
8982         use detached_regcache::invalidate instead.
8983         * regcache.c (regcache_invalidate): Remove.
8984
8985 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8986
8987         * regcache.h (regcache_raw_write_part): Remove, update callers
8988         to use regcache::raw_write_part instead.
8989         * regcache.c (regcache_raw_write_part): Remove.
8990
8991 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8992
8993         * regcache.h (regcache_raw_read_part): Remove, update callers to
8994         use readable_regcache::raw_read_part instead.
8995         * regcache.c (regcache_raw_read_part): Remove.
8996
8997 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8998
8999         * regcache.h (regcache_cooked_read): Remove, update callers to
9000         use readable_regcache::cooked_read instead.
9001         * regcache.c (regcache_cooked_read): Remove.
9002
9003 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9004
9005         * regcache.h (regcache_raw_write): Remove, update callers to use
9006         regcache::raw_write instead.
9007         * regcache.c (regcache_raw_write): Remove.
9008
9009 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9010
9011         * regcache.h (regcache_raw_read): Remove, update callers to use
9012         readable_regcache::raw_read instead.
9013         * regcache.c (regcache_raw_read): Remove.
9014
9015 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9016
9017         * regcache.h (regcache_raw_update): Remove, update callers to
9018         use readable_regcache::raw_update instead.
9019         * regcache.c (regcache_raw_update): Remove.
9020
9021 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9022
9023         * regcache.h (regcache_register_status): Remove, update callers
9024         to use reg_buffer::get_register_status directly instead.
9025         * regcache.c (regcache_register_status): Remove.
9026
9027 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9028
9029         * regcache.h (regcache_get_ptid): Remove, update all callers to
9030         call regcache::ptid instead.
9031         * regcache.c (regcache_get_ptid): Remove.
9032
9033 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9034
9035         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
9036
9037 2018-05-30  Pedro Alves  <palves@redhat.com>
9038
9039         * common/common-exceptions.h (exception_rethrow): Use
9040         ATTRIBUTE_NORETURN.
9041
9042 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
9043
9044         * breakpoint.c (print_solib_event, check_status_catch_solib):
9045         Remove struct keyword in range-based for loops.
9046         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
9047         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
9048         Likewise.
9049         * linespec.c (find_superclass_methods, search_minsyms_for_name):
9050         Likewise.
9051         * symfile.c (addr_info_make_relative): Likewise.
9052         * thread.c (value_in_thread_stack_temporaries): Likewise.
9053
9054 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
9055
9056         PR gdb/16841
9057         * valops.c (value_struct_elt_for_reference): Call check_typedef on
9058         aggregate type to get its real type before accessing it.
9059
9060 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
9061
9062         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
9063         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
9064         * coff-pe-read.c (add_pe_forwarded_sym): Replace
9065         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
9066         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
9067         * jit.c (jit_breakpoint_re_set_internal): Likewise.
9068         * printcmd.c (info_address_command): Likewise.
9069
9070 2018-05-29  Tom Tromey  <tom@tromey.com>
9071
9072         * windows-nat.c (handle_exception): Update fall-through comment.
9073
9074 2018-05-29  Tom Tromey  <tom@tromey.com>
9075
9076         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
9077         (struct program_space) <added_solibs>: Now a std::vector.
9078         * breakpoint.c (print_solib_event): Update.
9079         (check_status_catch_solib): Update.
9080         * progspace.c (clear_program_space_solib_cache): Update.
9081         * solib.c (update_solib_list): Update.
9082
9083 2018-05-29  Tom Tromey  <tom@tromey.com>
9084
9085         * python/py-type.c (typy_richcompare): Update.
9086         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
9087         * gdbtypes.h (types_deeply_equal): Return bool.
9088         (types_equal): Likewise.
9089         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
9090         declare VEC.
9091         (check_types_equal): Change worklist to std::vector.  Return
9092         bool.
9093         (struct type_equality_entry): Add constructor.
9094         (compare_maybe_null_strings): Return bool.
9095         (check_types_worklist): Return bool.  Change worklist to
9096         std::vector.
9097         (types_deeply_equal): Use std::vector.
9098         (types_equal): Return bool.
9099         (compare_maybe_null_strings): Simplify.
9100
9101 2018-05-29  Tom Tromey  <tom@tromey.com>
9102
9103         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
9104
9105 2018-05-29  Tom Tromey  <tom@tromey.com>
9106
9107         * objc-lang.h: Don't include cp-support.h.
9108         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
9109         declare VEC.
9110
9111 2018-05-27  Tom Tromey  <tom@tromey.com>
9112
9113         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
9114
9115 2018-05-25  Tom Tromey  <tom@tromey.com>
9116
9117         * value.c (value::location): Initialize.
9118
9119 2018-05-25  Tom Tromey  <tom@tromey.com>
9120
9121         * dbxread.c (init_bincl_list): Remove.
9122         (bincl_list): Now a std::vector.
9123         (bincls_allocated, next_bincl): Remove.
9124         (free_bincl_list, do_free_bincl_list_cleanup)
9125         (make_cleanup_free_bincl_list): Remove.
9126         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
9127         unique_xmalloc_ptr.
9128         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
9129         (struct header_file_location): Add constructor.
9130         (add_bincl_to_list): Remove.
9131
9132 2018-05-25  Tom Tromey  <tom@tromey.com>
9133
9134         * tui/tui.c (tui_enable): Update.
9135         * mi/mi-interp.c (mi_interp::init): Update.
9136         * interps.h (class interp) <name>: New method.
9137         <m_name>: Rename from name.
9138         (~scoped_restore_interp): Update.
9139         * interps.c (interp::interp): Update.
9140         (interp_add, interp_set, interp_lookup_existing)
9141         (current_interp_named_p): Update.
9142
9143 2018-05-25  Tom Tromey  <tom@tromey.com>
9144
9145         * interps.c (interp_name): Remove.
9146         * mi/mi-interp.c (mi_interp::init): Update.
9147         * interps.h (interp_name): Remove.
9148         (~scoped_restore_interp): Update.
9149         * tui/tui.c (tui_enable): Update.
9150
9151 2018-05-25  Tom Tromey  <tom@tromey.com>
9152
9153         * utils.c (fputs_maybe_filtered): Update.
9154         * linespec.c (decode_line_full): Update.
9155         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
9156         (mi_print_breakpoint_for_event, mi_solib_loaded)
9157         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
9158         (mi_user_selected_context_changed): Update.
9159         * mi/mi-main.c (mi_execute_command): Update.
9160         * cli/cli-script.c (execute_control_command): Update.
9161         * python/python.c (execute_gdb_command): Update.
9162         * solib.c (info_sharedlibrary_command): Update.
9163         * interps.c (interp_ui_out): Remove.
9164         * interps.h (interp_ui_out): Remove.
9165
9166 2018-05-25  Tom Tromey  <tom@tromey.com>
9167
9168         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
9169         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
9170         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
9171
9172 2018-05-25  Tom Tromey  <tom@tromey.com>
9173
9174         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
9175         * interps.c (interp_exec): Use scoped_restore.
9176
9177 2018-05-25  Tom Tromey  <tom@tromey.com>
9178
9179         * remote.c (remote_target::remote_file_get): Use
9180         gdb::byte_vector.
9181         (remote_target::remote_file_put): Likewise.
9182
9183 2018-05-25  Tom Tromey  <tom@tromey.com>
9184
9185         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
9186         a std::string.
9187         (get_pe_section_index, add_pe_exported_sym): Update.
9188         (read_pe_exported_syms): Use gdb::def_vector.
9189
9190 2018-05-25  Tom Tromey  <tom@tromey.com>
9191
9192         * frame.c (remove_prev_frame): Remove.
9193         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
9194
9195 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
9196
9197         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
9198         Remove prototypes.
9199         * mips-linux-nat.c (supply_fpregset): Always call
9200         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
9201         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
9202         `mips_fill_fpregset'.
9203         * mips-linux-tdep.c (mips_supply_fpregset)
9204         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
9205         (mips_fill_fpregset_wrapper): Remove functions.
9206         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
9207         (mips_linux_fpregset): Remove variable.
9208         (mips_linux_iterate_over_regset_sections): Use
9209         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
9210         (mips_linux_o32_sigframe_init): Remove comment.
9211
9212 2018-05-25  Pedro Alves  <palves@redhat.com>
9213
9214         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
9215         (struct readahead_cache, struct packet_reg, struct
9216         remote_arch_state, class remote_state): Move higher up in the
9217         file.
9218         (remote_target::m_remote_state): Now an object instead of a pointer.
9219         (remote_target::get_remote_state): Adjust.
9220
9221 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
9222
9223         * stack.c (select_and_print_frame): Delete.
9224         (struct function_bounds): Move struct within function.
9225         (func_command): Most content moved into new function
9226         find_frame_for_function, use new function, print result, add
9227         function comment.
9228         (find_frame_for_function): New function, now returns a result.
9229
9230 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9231
9232         * stack.c (iterate_over_block_arg_vars): Fix comment.
9233         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
9234
9235 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
9236
9237         PR gdb/23203
9238         * frame.c
9239         (scoped_restore_selected_frame::scoped_restore_selected_frame):
9240         Define.
9241         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
9242         Define.
9243         * frame.h (class scoped_restore_selected_frame): New class.
9244         * stack.c (print_frame_local_vars): Remove catching and rethrowing
9245         of any exception, use scoped_restore_selected_frame to restore the
9246         frame instead.
9247
9248 2018-05-24  Pedro Alves  <palves@redhat.com>
9249
9250         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
9251         override.
9252
9253 2018-05-23  Tom Tromey  <tom@tromey.com>
9254
9255         * complaints.c (struct complaints): Remove.
9256         (symfile_complaint_book): Remove.
9257         (series): New global.
9258         (complaint_internal): Update.
9259         (clear_complaints): Update.
9260
9261 2018-05-23  Tom Tromey  <tom@tromey.com>
9262
9263         * complaints.c (counters): New global.
9264         (struct complain): Remove.
9265         (struct complaints) <root>: Remove.
9266         (complaint_sentinel): Remove.
9267         (symfile_complaint_book): Update.
9268         (find_complaint) Remove.
9269         (complaint_internal, clear_complaints): Update.
9270
9271 2018-05-23  Tom Tromey  <tom@tromey.com>
9272
9273         * complaints.c (struct complain) <file, line>: Remove.
9274         (find_complaint): Remove file, line parameters.
9275         (complaint_internal): Update.
9276
9277 2018-05-23  Tom Tromey  <tom@tromey.com>
9278
9279         * complaints.c (vcomplaint): Remove.
9280         (complaint_internal) Merge in contents of vcomplaint.
9281
9282 2018-05-23  Tom Tromey  <tom@tromey.com>
9283
9284         * complaints.c (struct complaints) <explanation>: Remove.
9285         (symfile_explanations): Remove.
9286         (symfile_complaint_book): Update.
9287         (vcomplaint): Update.
9288         (struct explanation): Remove.
9289
9290 2018-05-23  Tom Tromey  <tom@tromey.com>
9291
9292         * complaints.c (symfile_complaints): Remove.
9293         (complaint_internal): Remove "complaints" parameter.
9294         (clear_complaints, vcomplaint): Remove "c" parameter.
9295         (get_complaints): Remove.
9296         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
9297         (dwarf2_debug_line_missing_file_complaint)
9298         (dwarf2_debug_line_missing_end_sequence_complaint)
9299         (dwarf2_complex_location_expr_complaint)
9300         (dwarf2_const_value_length_mismatch_complaint)
9301         (dwarf2_section_buffer_overflow_complaint)
9302         (dwarf2_macro_malformed_definition_complaint)
9303         (dwarf2_invalid_attrib_class_complaint)
9304         (create_addrmap_from_index, dw2_symtab_iter_next)
9305         (dw2_expand_marked_cus)
9306         (dw2_debug_names_iterator::find_vec_in_debug_names)
9307         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
9308         (create_debug_type_hash_table, init_cutu_and_read_dies)
9309         (partial_die_parent_scope, add_partial_enumeration)
9310         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
9311         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
9312         (read_import_statement, read_file_scope, create_dwo_cu_reader)
9313         (create_cus_hash_table, create_dwp_hash_table)
9314         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
9315         (dwarf2_rnglists_process, dwarf2_ranges_process)
9316         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
9317         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
9318         (handle_struct_member_die, process_structure_scope)
9319         (read_array_type, read_common_block, read_module_type)
9320         (read_tag_pointer_type, read_typedef, read_base_type)
9321         (read_subrange_type, load_partial_dies, partial_die_info::read)
9322         (partial_die_info::read, partial_die_info::read)
9323         (partial_die_info::read, read_checked_initial_length_and_offset)
9324         (dwarf2_string_attr, read_formatted_entries)
9325         (dwarf_decode_line_header)
9326         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
9327         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
9328         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
9329         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
9330         (get_signatured_type, get_DW_AT_signature_type)
9331         (decode_locdesc, file_file_name, consume_improper_spaces)
9332         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
9333         (dwarf_decode_macro_bytes, dwarf_decode_macros)
9334         (dwarf2_symbol_mark_computed, set_die_type)
9335         (read_attribute_value): Update.
9336         * stap-probe.c (handle_stap_probe, get_stap_base_address):
9337         Update.
9338         * dbxread.c (unknown_symtype_complaint)
9339         (lbrac_mismatch_complaint, repeated_header_complaint)
9340         (set_namestring, function_outside_compilation_unit_complaint)
9341         (read_dbx_symtab, process_one_symbol): Update.
9342         * gdbtypes.c (stub_noname_complaint): Update.
9343         * windows-nat.c (handle_unload_dll): Update.
9344         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
9345         (decode_base_type): Update.
9346         * xcoffread.c (bf_notfound_complaint, ef_complaint)
9347         (eb_complaint, record_include_begin, record_include_end)
9348         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
9349         (process_xcoff_symbol, read_symbol)
9350         (function_outside_compilation_unit_complaint)
9351         (scan_xcoff_symtab): Update.
9352         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
9353         * buildsym.c (finish_block_internal, make_blockvector)
9354         (end_symtab_get_static_block, augment_type_symtab): Update.
9355         * dtrace-probe.c (dtrace_process_dof)
9356         (dtrace_static_probe_ops::get_probes): Update.
9357         * complaints.h (struct complaint): Don't declare.
9358         (symfile_complaints): Remove.
9359         (complaint_internal): Remove "complaints" parameter.
9360         (complaint): Likewise.
9361         (clear_complaints): Likewise.
9362         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9363         (reread_symbols): Update.
9364         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
9365         (dwarf2_frame_cache, decode_frame_entry): Update.
9366         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
9367         * objc-lang.c (lookup_objc_class, lookup_child_selector)
9368         (info_selectors_command): Update.
9369         * macrotab.c (macro_include, check_for_redefinition)
9370         (macro_undef): Update.
9371         * objfiles.c (filter_overlapping_sections): Update.
9372         * stabsread.c (invalid_cpp_abbrev_complaint)
9373         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
9374         (define_symbol, error_type, read_type, rs6000_builtin_type)
9375         (stabs_method_name_from_physname, read_member_functions)
9376         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
9377         (attach_fields_to_type, complain_about_struct_wipeout)
9378         (read_range_type, read_args, common_block_start)
9379         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
9380         Update.
9381         * mdebugread.c (index_complaint, unknown_ext_complaint)
9382         (basic_type_complaint, bad_tag_guess_complaint)
9383         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
9384         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
9385         (parse_procedure, parse_lines)
9386         (function_outside_compilation_unit_complaint)
9387         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
9388         (bad_tag_guess_complaint, reg_value_complaint): Update.
9389         * cp-support.c (demangled_name_complaint): Update.
9390         * macroscope.c (sal_macro_scope): Update.
9391         * dwarf-index-write.c (class debug_names): Update.
9392
9393 2018-05-23  Tom Tromey  <tom@tromey.com>
9394
9395         * complaints.c (clear_complaints): Remove "noisy" parameter.
9396         * complaints.h (clear_complaints): Update.
9397         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9398         (reread_symbols): Update.
9399
9400 2018-05-23  Tom Tromey  <tom@tromey.com>
9401
9402         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
9403         SUBSEQUENT_MESSAGE.
9404         (vcomplaint, clear_complaints): Update.
9405         (symfile_explanations): Remove some messages.
9406
9407 2018-05-23  Tom Tromey  <tom@tromey.com>
9408
9409         * complaints.c (internal_complaint): Remove.
9410         * complaints.h (internal_complaint): Remove.
9411
9412 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9413
9414         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
9415
9416 2018-05-22  Pedro Alves  <palves@redhat.com>
9417
9418         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
9419         (remote_fileio_badfd, remote_fileio_return_errno)
9420         (remote_fileio_return_success, remote_fileio_func_open)
9421         (remote_fileio_func_open, remote_fileio_func_close)
9422         (remote_fileio_func_read, remote_fileio_func_write)
9423         (remote_fileio_func_lseek, remote_fileio_func_rename)
9424         (remote_fileio_func_unlink, remote_fileio_func_stat)
9425         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
9426         (remote_fileio_func_isatty, remote_fileio_func_system): Add
9427         remote_target parameter.
9428         (remote_fio_func_map) <func>: Add remote_target parameter.
9429         (do_remote_fileio_request, remote_fileio_request):
9430         * remote-fileio.h (remote_fileio_request):
9431         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
9432         remote_target parameter.
9433         (remote_notif_process, handle_notification): Adjust to pass down
9434         the remote.
9435         (remote_notif_state_allocate): Add remote_target parameter.  Save
9436         it.
9437         * remote-notif.h (struct remote_target): Forward declare.
9438         (struct notif_client) <parse, ack, can_get_pending_events>: Add
9439         remote_target parameter.
9440         (struct remote_notif_state) <remote>: New field.
9441         (remote_notif_ack, remote_notif_parse): Add remote_target
9442         parameter.
9443         (remote_notif_state_allocate, remote_notif_state_allocate): Add
9444         remote_target parameter.
9445         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
9446         (threads_listing_context, rmt_thread_action, protocol_feature)
9447         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
9448         (packet_result, struct threads_listing_context, remote_state):
9449         Move definitions and declarations higher up.
9450         (remote_target) <~remote_target>: Declare.
9451         (remote_download_command_source, remote_file_put, remote_file_get)
9452         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
9453         (remote_hostio_pread_vFile, remote_hostio_send_command)
9454         (remote_hostio_set_filesystem, remote_hostio_open)
9455         (remote_hostio_close, remote_hostio_unlink, remote_state)
9456         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
9457         (get_memory_write_packet_size, get_memory_read_packet_size)
9458         (append_pending_thread_resumptions, remote_detach_1)
9459         (append_resumption, remote_resume_with_vcont)
9460         (add_current_inferior_and_thread, wait_ns, wait_as)
9461         (process_stop_reply, remote_notice_new_inferior)
9462         (process_initial_stop_replies, remote_add_thread)
9463         (btrace_sync_conf, remote_btrace_maybe_reopen)
9464         (remove_new_fork_children, kill_new_fork_children)
9465         (discard_pending_stop_replies, stop_reply_queue_length)
9466         (check_pending_events_prevent_wildcard_vcont)
9467         (discard_pending_stop_replies_in_queue, stop_reply)
9468         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
9469         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
9470         (remote_interrupt_as, remote_interrupt_ns)
9471         (remote_get_noisy_reply, remote_query_attached)
9472         (remote_add_inferior, remote_current_thread, get_current_thread)
9473         (set_thread, set_general_thread, set_continue_thread)
9474         (set_general_process, write_ptid)
9475         (remote_unpack_thread_info_response, remote_get_threadinfo)
9476         (parse_threadlist_response, remote_get_threadlist)
9477         (remote_threadlist_iterator, remote_get_threads_with_ql)
9478         (remote_get_threads_with_qxfer)
9479         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
9480         (get_offsets, remote_check_symbols, remote_supported_packet)
9481         (remote_query_supported, remote_packet_size)
9482         (remote_serial_quit_handler, remote_detach_pid)
9483         (remote_vcont_probe, remote_resume_with_hc)
9484         (send_interrupt_sequence, interrupt_query)
9485         (remote_notif_get_pending_events, fetch_register_using_p)
9486         (send_g_packet, process_g_packet, fetch_registers_using_g)
9487         (store_register_using_P, store_registers_using_G)
9488         (set_remote_traceframe, check_binary_download)
9489         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
9490         (remote_xfer_live_readonly_partial, remote_read_bytes)
9491         (remote_send_printf, remote_flash_write, readchar)
9492         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
9493         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
9494         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
9495         (extended_remote_disable_randomization, extended_remote_run)
9496         (send_environment_packet, extended_remote_environment_support)
9497         (extended_remote_set_inferior_cwd, remote_write_qxfer)
9498         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
9499         (packet_command): Now methods of ...
9500         (remote_target): ... this class.
9501         (m_remote_state) <remote_target>: New field.
9502         (struct remote_state) <stop_reply_queue,
9503         remote_async_inferior_event_token, wait_forever_enabled_p>: New
9504         fields.
9505         (remote_state::remote_state): Allocate stop_reply_queue.
9506         (remote_state): Delete global.
9507         (get_remote_state_raw): Delete.
9508         (remote_target::get_remote_state): Allocate m_remote_state on
9509         demand.
9510         (get_current_remote_target): New.
9511         (remote_ops, extended_remote_ops): Delete.
9512         (wait_forever_enabled_p, remote_async_inferior_event_token):
9513         Delete, moved to struct remote_state.
9514         (remote_target::close): Delete self.  Destruction bits split to
9515         ...
9516         (remote_target::~remote_target): ... this.
9517         (show_memory_packet_size): Adjust to use
9518         get_current_remote_target.
9519         (struct protocol_feature) <func>: Add remote_target parameter.
9520         All callers adjusted.
9521         (curr_quit_handler_target): New.
9522         (remote_serial_quit_handler): Reimplement.
9523         (remote_target::open_1): Adjust to use get_current_remote_target.
9524         Heap-allocate remote_target/extended_remote_target instances.
9525         (vcont_builder::vcont_builder): Add remote_target parameter, and
9526         save it in m_remote.  All callers adjusted.
9527         (vcont_builder::m_remote): New field.
9528         (vcont_builder::restart, vcont_builder::flush)
9529         (vcont_builder::push_action): Use it.
9530         (remote_target::commit_resume): Use it.
9531         (struct queue_iter_param) <remote>: New field.
9532         (remote_target::remove_new_fork_children): Fill in 'remote' field.
9533         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
9534         (check_pending_event_prevents_wildcard_vcont_callback)
9535         (remote_target::check_pending_events_prevent_wildcard_vcont)
9536         (remote_target::discard_pending_stop_replies)
9537         (remote_target::discard_pending_stop_replies_in_queue)
9538         (remote_target::remote_notif_remove_queued_reply): Fill in
9539         'remote' field.
9540         (remote_notif_get_pending_events): New.
9541         (remote_target::readchar, remote_target::remote_serial_write):
9542         Save/restore curr_quit_handler_target.
9543         (putpkt): New.
9544         (kill_new_fork_children): Fill in 'remote' field.
9545         (packet_command): Use get_current_remote_target, defer to
9546         remote_target method of same name.
9547         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
9548         parameter, and save it in m_remote.  All callers adjusted.
9549         (scoped_remote_fd::release): Use m_remote.
9550         (scoped_remote_fd::m_remote): New field.
9551         (remote_file_put, remote_file_get, remote_file_delete): Use
9552         get_current_remote_target, defer to remote_target method of same
9553         name.
9554         (remote_btrace_reset): Add remote_state paremeter.  Update all
9555         callers.
9556         (remote_async_inferior_event_handler). Pass down 'data'.
9557         (remote_new_objfile): Use get_current_remote_target.
9558         (remote_target::vcont_r_supported): New.
9559         (set_range_stepping): Use get_current_remote_target and
9560         remote_target::vcont_r_supported.
9561         (_initialize_remote): Don't allocate 'remote_state' and
9562         'stop_reply_queue' globals.
9563         * remote.h (struct remote_target): Forward declare.
9564         (getpkt, putpkt, remote_notif_get_pending_events): Add
9565         'remote_target' parameter.
9566
9567 2018-05-22  Pedro Alves  <palves@redhat.com>
9568
9569         * remote.c (vcont_builder): Now a class.  Make all data members
9570         private.
9571         (vcont_builder) <vcont_builder, restart, flush, push_action>:
9572         Declare methods.
9573         (vcont_builder_restart): Rename to ...
9574         (vcont_builder::restart): ... this.
9575         (vcont_builder_flush): Rename to ...
9576         (vcont_builder::flush): ... this.
9577         (vcont_builder_push_action): Rename to ...
9578         (vcont_builder::push_action): ... this.
9579         (remote_target::commit_resume): Adjust.
9580
9581 2018-05-22  Pedro Alves  <palves@redhat.com>
9582
9583         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
9584         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
9585         (get_fixed_memory_packet_size): New.
9586         (get_memory_packet_size): Use it.
9587         (set_memory_packet_size): Don't override the config size with
9588         DEFAULT_MAX_MEMORY_PACKET_SIZE.
9589         (show_memory_packet_size): Use get_fixed_memory_packet_size.
9590         Don't refer to get_memory_packet_size if not connected to a remote
9591         target.  Show "(default)" if configured size is 0.
9592
9593 2018-05-22  Pedro Alves  <palves@redhat.com>
9594
9595         * remote.c (remote_target::mourn_inferior): Move
9596         discard_pending_stop_replies call here from ...
9597         (_initialize_remote): ... here.
9598
9599 2018-05-22  Pedro Alves  <palves@redhat.com>
9600
9601         * remote.c (compare_section_command): Remove set_general_process
9602         call.
9603
9604 2018-05-22  Pedro Alves  <palves@redhat.com>
9605
9606         * remote.c (struct packet_reg, struct remote_arch_state):
9607         Move higher up in the file.
9608         (remote_state) <m_arch_states>: Store remote_arch_state values
9609         instead of remote_arch_state pointers.
9610         (remote_state::get_remote_arch_state): Adjust.
9611
9612 2018-05-22  Pedro Alves  <palves@redhat.com>
9613
9614         * remote.c: Include <unordered_map>.
9615         (remote_state): Now a class.
9616         (remote_state) <get_remote_arch_state>: Declare method.
9617         <get_remote_arch_state>: New field.
9618         (remote_arch_state) <remote_arch_state>: Declare ctor.
9619         <regs>: Now a unique_ptr.
9620         (remote_gdbarch_data_handle): Delete.
9621         (get_remote_arch_state): Delete.
9622         (remote_state::get_remote_arch_state): New.
9623         (get_remote_state): Adjust to call remote_state's
9624         get_remote_arch_state method.
9625         (init_remote_state): Delete, bits factored out to ...
9626         (remote_arch_state::remote_arch_state): ... this new method.
9627         (get_remote_packet_size, get_memory_packet_size)
9628         (process_g_packet, remote_target::fetch_registers)
9629         (remote_target::prepare_to_store, store_registers_using_G)
9630         (remote_target::store_registers, remote_target::get_trace_status):
9631         Adjust to call remote_state's method.
9632         (_initialize_remote): Remove reference to
9633         remote_gdbarch_data_handle.
9634
9635 2018-05-22  Pedro Alves  <palves@redhat.com>
9636
9637         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
9638         pread>: New method declarations.
9639         (remote_target::open_1): Adjust.
9640         (readahead_cache_invalidate): Rename to ...
9641         (readahead_cache::invalidate): ... this, and adjust to be a class
9642         method.
9643         (readahead_cache_invalidate_fd): Rename to ...
9644         (readahead_cache::invalidate_fd): ... this, and adjust to be a
9645         class method.
9646         (remote_hostio_pwrite): Adjust.
9647         (remote_hostio_pread_from_cache): Rename to ...
9648         (readahead_cache::pread): ... this, and adjust to be a class
9649         method.
9650         (remote_hostio_close): Adjust.
9651
9652 2018-05-22  Pedro Alves  <palves@redhat.com>
9653
9654         * remote.c (remote_hostio_close_cleanup): Delete.
9655         (class scoped_remote_fd): New.
9656         (remote_file_put, remote_file_get): Use it.
9657
9658 2018-05-22  Pedro Alves  <palves@redhat.com>
9659
9660         (struct vCont_action_support): Use bool and initialize all fields.
9661         (struct readahead_cache): Initialize all fields.
9662         (remote_state): Use bool and initialize all fields.
9663         (remote_state::remote_state, remote_state::~remote_state): New.
9664         (new_remote_state): Delete.
9665         (_initialize_remote): Use new to allocate remote_state.
9666
9667 2018-05-22  Pedro Alves  <palves@redhat.com>
9668             張俊芝  <zjz@zjz.name>
9669
9670         PR gdb/22973
9671         * c-exp.y: Include "c-support.h".
9672         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
9673         of tolower.  Use c_ident_is_alpha to scan names.
9674         * c-lang.c: Include "c-support.h".
9675         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
9676         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
9677         * c-support.h: New file, with bits factored out from ...
9678         * cp-name-parser.y: ... this file.
9679         Include "c-support.h".
9680         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
9681         c-support.h and renamed.
9682         (symbol_end, yylex): Adjust.
9683
9684 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9685
9686         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
9687         parameter type to CORE_ADDR.
9688         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
9689         parameter type in declaration to CORE_ADDR.
9690         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
9691         target_auxv_search to get AT_HWCAP and use the result to get the
9692         target description.
9693         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
9694         to CORE_ADDR. Remove the cast of the return value to unsigned
9695         long. Fix error predicate of target_auxv_search.
9696         (ppc_linux_nat_target::read_description): Change the type of the
9697         hwcap variable to CORE_ADDR.
9698
9699 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9700
9701         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
9702         if the size of fpscr is larger than 32 bits.
9703
9704 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9705
9706         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
9707         (ppc32_linux_vsxregmap): New global.
9708         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
9709         regcache_supply_regset, and regcache_collect_regset.
9710         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
9711         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
9712         (fetch_vsx_register, store_vsx_register): Remove.
9713         (fetch_vsx_registers): Add regno parameter. Get regset using
9714         ppc_linux_vsxregset. Use regset to supply registers.
9715         (store_vsx_registers): Add regno parameter. Get regset using
9716         ppc_linux_vsxregset. Use regset to collect registers.
9717         (fetch_register): Call fetch_vsx_registers instead of
9718         fetch_vsx_register.
9719         (store_register): Call store_vsx_registers instead of
9720         store_vsx_register.
9721         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
9722         new regno parameter.
9723         (store_ppc_registers): Call store_vsx_registers with -1 for the
9724         new regno parameter.
9725         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
9726         (ppc_collect_vsxregset): Remove.
9727
9728 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9729
9730         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
9731         offset fields.
9732         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
9733         for vector register offset fields.
9734         (ppc64_fbsd_reg_offsets): Likewise.
9735         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9736         to vector register offset fields.
9737         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9738         to vector register offset fields.
9739         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
9740         vector register offset fields.
9741         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
9742         initializers for vector register offset fields.
9743         (rs6000_aix64_reg_offsets): Likewise.
9744         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
9745         (ppc_supply_vrregset): Remove.
9746         (ppc_collect_vrregset): Remove.
9747         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
9748         (ppc_linux_vrregset) : New function.
9749         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
9750         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
9751         (ppc32_linux_vrregset): Remove.
9752         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
9753         and use result instead of ppc32_linux_vrregset.
9754         (ppc32_linux_reg_offsets): Remove initializers for vector register
9755         offset fields.
9756         (ppc64_linux_reg_offsets): Likewise.
9757         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
9758         * ppc-linux-nat.c: Include regset.h.
9759         (gdb_vrregset_t): Adjust comment to account for little-endian
9760         mode.
9761         (supply_vrregset, fill_vrregset): Remove.
9762         (fetch_altivec_register, store_altivec_register): Remove.
9763         (fetch_altivec_registers): Add regno parameter. Get regset using
9764         ppc_linux_vrregset. Use regset to supply registers.
9765         (store_altivec_registers): Add regno parameter. Get regset using
9766         ppc_linux_vrregset. Use regset to collect registers.
9767         (fetch_register): Call fetch_altivec_registers instead of
9768         fetch_altivec_register.
9769         (store_register): Call store_altivec_registers instead of
9770         store_altivec_register.
9771         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
9772         the new regno parameter.
9773         (store_ppc_registers): Call store_altivec_registers with -1 for
9774         the new regno parameter.
9775
9776 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9777
9778         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
9779         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
9780         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
9781         (gdb_vrregset_t): Change array type size to
9782         PPC_LINUX_SIZEOF_VRREGSET.
9783         (gdb_vsxregset_t): Change array type size to
9784         PPC_LINUX_SIZEOF_VSXREGSET.
9785         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
9786         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
9787         PPC_LINUX_SIZEOF_VSXREGSET.
9788
9789 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9790
9791         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
9792         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
9793         nat/ppc-linux.c.
9794         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
9795         ppc_linux_target_wordsize with tid.
9796         (ppc_linux_nat_target::read_description): Call ppc_linux_target
9797         wordsize with tid.
9798         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
9799         (ppc64_64bit_inferior_p): Add static and inline specifiers.
9800         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
9801         tid parameter. Remove static specifier.
9802         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
9803         (ppc_linux_target_wordsize): New declaration.
9804
9805 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9806
9807         * arch/ppc-linux-common.c: New file.
9808         * arch/ppc-linux-common.h: New file.
9809         * arch/ppc-linux-tdesc.h: New file.
9810         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
9811         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
9812         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
9813         arch/ppc-linux-tdesc.h.
9814         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
9815         arch/ppc-linux-tdesc.h.
9816         (ppc_linux_nat_target::read_description): Remove target
9817         description matching code. Fill a ppc_linux_features struct and
9818         call ppc_linux_match_description with it. Move comment about ISA
9819         2.05 to ppc-linux-common.c.
9820         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
9821         arch/ppc-linux-tdesc.h.
9822         (ppc_linux_core_read_description): Remove target description
9823         matching code. Fill a ppc_linux_features struct and call
9824         ppc_linux_match_description with it.
9825         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
9826         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
9827         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
9828         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
9829         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
9830         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
9831         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
9832         (tdesc_powerpc_e500l): Remove.
9833
9834 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
9835
9836         * ada-lang.c (catch_assert_command): Pass empty string instead
9837         of NULL for excep_string argument.
9838
9839 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9840
9841         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
9842         the width of the requested register exceeds the width of the
9843         `ptrace' data type.
9844
9845 2018-05-21  Tom Tromey  <tom@tromey.com>
9846
9847         * printcmd.c (output_command): Remove.
9848         (output_command_const): Rename to output_command.
9849         * valprint.h (output_command): Rename from output_command_const.
9850         * tracepoint.c (trace_dump_actions): Call output_command.
9851
9852 2018-05-21  Tom Tromey  <tom@tromey.com>
9853
9854         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
9855         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
9856         * ada-lang.h (create_ada_exception_catchpoint): Update.
9857         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
9858         std::string.
9859         (create_excep_cond_exprs, ~ada_catchpoint)
9860         (should_stop_exception, print_one_exception)
9861         (print_mention_exception, print_recreate_exception): Update.
9862         (ada_get_next_arg): Remove.
9863         (catch_ada_exception_command_split): Use std::string.  Change type
9864         of "excep_string", "cond_string".
9865         (catch_ada_exception_command): Update.
9866         (create_ada_exception_catchpoint): Change type of excep_string.
9867         (ada_exception_sal): Remove excep_string parameter.
9868         (~ada_catchpoint): Remove.
9869
9870 2018-05-21  Tom Tromey  <tom@tromey.com>
9871
9872         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
9873         cleanup.
9874
9875 2018-05-21  Tom Tromey  <tom@tromey.com>
9876
9877         * ada-lang.c (ada_exception_message_1, ada_exception_message):
9878         Return unique_xmalloc_ptr.
9879         (print_it_exception): Update.
9880
9881 2018-05-21  Tom Tromey  <tom@tromey.com>
9882
9883         * tracepoint.c (trace_dump_actions): Use std::string.
9884
9885 2018-05-21  Tom Tromey  <tom@tromey.com>
9886
9887         * symfile.c (reread_symbols): Use std::string for original_name.
9888
9889 2018-05-21  Tom Tromey  <tom@tromey.com>
9890
9891         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
9892         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
9893         constructor.
9894
9895 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
9896
9897         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
9898         instance to...
9899         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
9900         * objfiles.c (get_objfile_bfd_data): Allocate
9901         objfile_per_bfd_storage with obstack_new when allocating on
9902         obstack.
9903
9904 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9905
9906         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
9907         OBSTACK_ZALLOC.
9908         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
9909         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
9910         * mdebugread.c (mdebug_build_psymtabs): Likewise.
9911         (add_pending): Likewise.
9912         (parse_symbol): Likewise.
9913         (parse_partial_symbols): Likewise.
9914         (psymtab_to_symtab_1): Likewise.
9915         (new_psymtab): Likewise.
9916         (elfmdebug_build_psymtabs): Likewise.
9917         * minsyms.c (terminate_minimal_symbol_table): Likewise.
9918         * objfiles.c (get_objfile_bfd_data): Likewise.
9919         (objfile_register_static_link): Likewise.
9920         * psymtab.c (allocate_psymtab): Likewise.
9921         * stabsread.c (read_member_functions): Likewise.
9922         * xcoffread.c (xcoff_end_psymtab): Likewise.
9923
9924 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9925
9926         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
9927         compiler supports std::is_trivially_constructible.
9928         * common/poison.h: Include obstack.h.
9929         (IsMallocable): Define to is_trivially_constructible if the
9930         compiler supports it, define to true_type otherwise.
9931         (xobnew): New.
9932         (XOBNEW): Redefine.
9933         (xobnewvec): New.
9934         (XOBNEWVEC): Redefine.
9935         * gdb_obstack.h (obstack_zalloc): New.
9936         (OBSTACK_ZALLOC): Redefine.
9937         (obstack_calloc): New.
9938         (OBSTACK_CALLOC): Redefine.
9939         (obstack_new): New.
9940         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
9941         (gdbarch_obstack): New declaration in gdbarch.h, definition in
9942         gdbarch.c.
9943         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
9944         obstack_calloc/obstack_zalloc.
9945         (gdbarch_obstack_zalloc): Remove.
9946         * target-descriptions.c (tdesc_data_init): Use obstack_new.
9947
9948 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9949
9950         * stack.c (backtrace_command_1): Remove useless variable int i.
9951
9952 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9953
9954         * stack.c (print_frame_info): Fix comment.
9955
9956 2018-05-18  Tom Tromey  <tom@tromey.com>
9957
9958         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
9959         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
9960         (~dwarf2_per_objfile): Update
9961         (dwarf2_get_dwz_file): Use new.
9962         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
9963         unique_ptr.
9964
9965 2018-05-18  Tom Tromey  <tom@tromey.com>
9966
9967         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
9968         unique_ptr.
9969         * dwarf2read.c (struct dwp_file): Add constructor and
9970         initializers.
9971         (open_and_init_dwp_file): Return a unique_ptr.
9972         (dwarf2_per_objfile, create_dwp_hash_table)
9973         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
9974         (lookup_dwo_unit_in_dwp): Update.
9975         (open_and_init_dwp_file, get_dwp_file): Update.
9976
9977 2018-05-18  Tom Tromey  <tom@tromey.com>
9978
9979         * dwarf2read.c (dwarf2_per_objfile): Update.
9980         (struct mapped_index): Add initializers.
9981         (dwarf2_read_index): Use new.
9982         (dw2_symtab_iter_init): Update.
9983         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
9984         unique_ptr.
9985
9986 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9987
9988         * dwarf2read.c (mapped_index) <total_size>: Remove.
9989
9990 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9991
9992         * unittests/format_pieces-selftests.c (test_format_specifier):
9993         Add ARI comments.
9994
9995 2018-05-18  Tom Tromey  <tom@tromey.com>
9996
9997         * c-typeprint.c (maybe_print_hole): New function.
9998         (c_print_type_struct_field_offset): Update.
9999         (c_type_print_base_struct_union): Call maybe_print_hole.
10000
10001 2018-05-17  Keith Seitz  <keiths@redhat.com>
10002
10003         * breakpoint.c (build_bpstat_chain): New function, moved from
10004         bpstat_stop_status.
10005         (bpstat_stop_status): Add optional parameter, `stop_chain'.
10006         If no stop chain is passed, call build_bpstat_chain to build it.
10007         * breakpoint.h (build_bpstat_chain): Declare.
10008         (bpstat_stop_status): Move documentation here from breakpoint.c.
10009         * infrun.c (handle_signal_stop): Before eliding inlined frames,
10010         build the stop chain and pass it to skip_inline_frames.
10011         Pass this stop chain to bpstat_stop_status.
10012         * inline-frame.c: Include breakpoint.h.
10013         (stopped_by_user_bp_inline_frame): New function.
10014         (skip_inline_frames): Add parameter `stop_chain'.
10015         Move documention to inline-frame.h.
10016         If non-NULL, use stopped_by_user_bp_inline_frame to determine
10017         whether the frame should be elided.
10018         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
10019         Add moved documentation and update for new parameter.
10020
10021 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
10022
10023         PR cli/14975
10024         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10025         unittests/format_pieces-selftests.c.
10026         * common/format.h (format_piece) <operator==>: New.
10027         (format_pieces) <operator[]>: Remove.
10028         * common/format.c (format_pieces::format_pieces): Handle \e.
10029         * unittests/format_pieces-selftests.c: New.
10030
10031 2018-05-17  Tom Tromey  <tom@tromey.com>
10032
10033         PR symtab/23010:
10034         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
10035         (dw2_instantiate_symtab): Add skip_partial parameter.
10036         (dw2_find_last_source_symtab, dw2_map_expand_apply)
10037         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
10038         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
10039         (dw2_expand_symtabs_matching_one)
10040         (dw2_find_pc_sect_compunit_symtab)
10041         (dw2_debug_names_lookup_symbol)
10042         (dw2_debug_names_expand_symtabs_for_function): Update.
10043         (init_cutu_and_read_dies): Add skip_partial parameter.
10044         (process_psymtab_comp_unit, build_type_psymtabs_1)
10045         (process_skeletonless_type_unit, load_partial_comp_unit)
10046         (psymtab_to_symtab_1): Update.
10047         (load_full_comp_unit): Add skip_partial parameter.
10048         (process_imported_unit_die, dwarf2_read_addr_index)
10049         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
10050         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
10051         (read_signatured_type): Update.
10052
10053 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
10054
10055         * value.c (release_value): Remove unused variable.
10056         (record_latest_value): Likewise.
10057         (access_value_history): Likewise.
10058         (preserve_values): Likewise.
10059
10060 2018-05-17  Tom Tromey  <tom@tromey.com>
10061
10062         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
10063         Initialize.
10064
10065 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
10066
10067         PR gdb/22286
10068         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
10069         Also handle registers whose width is not a multiple of
10070         PTRACE_TYPE_RET.
10071         (linux_nat_trad_target::store_register): Likewise.
10072
10073 2018-05-16  Tom Tromey  <tom@tromey.com>
10074
10075         * gdbcore.h (core_bfd): Redefine.
10076         * corelow.c (core_target::close): Update.
10077         (core_target_open): Update.
10078         * progspace.h (struct program_space) <cbfd>: Now a
10079         gdb_bfd_ref_ptr.
10080
10081 2018-05-16  Tom Tromey  <tom@tromey.com>
10082
10083         PR cli/19551:
10084         * symfile-add-flags.h (enum symfile_add_flags)
10085         <SYMFILE_NOT_FILENAME>: New constant.
10086         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
10087         objfile name from BFD.
10088         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
10089         * minidebug.c (find_separate_debug_file_in_section): Put
10090         ".gnu_debugdata" into BFD's file name.
10091
10092 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
10093
10094         * regcache.c (regcache_read_ftype, regcache_write_ftype):
10095         Remove.
10096
10097 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
10098
10099         PR binutils/21446
10100         * aarch64-tdep.c (aarch64_analyze_prologue,
10101         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
10102         Indicate not interested in errors.
10103
10104 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
10105
10106         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
10107         Supply the MIPS_ZERO_REGNUM register.
10108
10109 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
10110
10111         * mips-tdep.c (mask_address_var): Make variable static.
10112
10113 2018-05-14  Tom Tromey  <tom@tromey.com>
10114
10115         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
10116
10117 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
10118
10119         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
10120         FXSAVE_ADDR for the mxcsr register.
10121
10122 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
10123
10124         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
10125
10126 2018-05-11  Pedro Alves  <palves@redhat.com>
10127
10128         * corelow.c (core_target) <core_target>: No longer inline.
10129         Initialize m_core_gdbarch, m_core_vec and build the section table
10130         here.
10131         <~core_target>: New.
10132         <core_gdbarch, get_core_register_section>: New methods.
10133         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
10134         factored out from ...
10135         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
10136         (core_ops): Delete.
10137         (sniff_core_bfd): Add gdbarch parameter.
10138         (core_close): Delete, merged into ...
10139         (core_target::close): ... here.  Delete self.
10140         (core_close_cleanup): Delete.
10141         (core_target_open): Allocate a core_target on the heap.  Use a
10142         unique_ptr instead of a cleanup.  Bits moved into the core_target
10143         ctor.  Adjust to use core_target methods instead of globals.
10144         (get_core_register_section): Rename to ...
10145         (core_target::get_core_register_section): ... this and adjust.
10146         (struct get_core_registers_cb_data): New.
10147         (get_core_registers_cb): Use it.  Use bool.
10148         (core_target::fetch_registers, core_target::files_info)
10149         (core_target::xfer_partial, core_target::read_description)
10150         (core_target::pid_to, core_target::thread_name): Adjust to
10151         reference class fields instead of globals.
10152         * target.h (struct target_ops_deleter, target_ops_up): New.
10153
10154 2018-05-11  Pedro Alves  <palves@redhat.com>
10155
10156         * corefile.c (core_file_command): Move to corelow.c.
10157         * corelow.c (the_core_target): Delete.
10158         (core_file_command): Moved from corefile.c.  Check exec_bfd
10159         instead of the_core_target.  Use target_detach instead of calling
10160         into the_core_target directly.
10161         (maybe_say_no_core_file_now): New.
10162         (core_target::detach): Use it.
10163         (_initialize_corelow): Remove references to the_core_target.
10164         * gdbcore.h (the_core_target): Delete.
10165
10166 2018-05-11  Tom Tromey  <tromey@redhat.com>
10167             Pedro Alves  <palves@redhat.com>
10168
10169         * corefile.c (core_bfd): Remove.
10170         * gdbcore.h (core_bfd): Now a macro.
10171         * progspace.h (struct program_space) <cbfd>: New field.
10172
10173 2018-05-11  Tom Tromey  <tom@tromey.com>
10174
10175         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
10176         gdb::def_vector.
10177
10178 2018-05-10  Tom Tromey  <tom@tromey.com>
10179
10180         * configure: Rebuild.
10181         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
10182
10183 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
10184
10185         PR server/23158:
10186         * regformats/regdat.sh: Adjust script, following the addition
10187         of the new expedite_regs parameter to init_target_desc.
10188
10189 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
10190     
10191         PR gdb/23127
10192         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
10193         set_gdbarch_significant_addr_bit.
10194         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
10195         set_gdbarch_significant_addr_bit.
10196         * utils.c (address_significant): Update to sign extend addr.
10197
10198 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
10199
10200         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
10201         (xtensa_linux_init_abi): Limit tdep->num_regs by
10202         tdep->num_nopriv_regs.
10203         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
10204         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
10205         not initialized.
10206
10207 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
10208
10209         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
10210
10211 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
10212
10213         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
10214         (I387_MXCSR_INIT_VAL): New constant.
10215         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
10216         buffer if it was supplied by the inferior.
10217         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
10218         (i387_xsave_get_clear_bv): New function.
10219         (i387_supply_xsave): Only read x87 control registers from the
10220         xsave buffer if the feature is enabled, and the state will have
10221         been written, otherwise, provide a suitable default.
10222         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
10223         including x87 control registers.  Update control registers if they
10224         have changed from the default value, and mark features as enabled
10225         as required.
10226         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
10227
10228 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
10229
10230         * spu-tdep.c (info_spu_event_command): Fix output formatting.
10231
10232 2018-05-07  Tom Tromey  <tom@tromey.com>
10233
10234         * configure: Rebuild.
10235         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
10236
10237 2018-05-07  Tom Tromey  <tom@tromey.com>
10238
10239         PR tdep/20362:
10240         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
10241         bit.  Use correct value for VDIV.
10242
10243 2018-05-04  Tom Tromey  <tom@tromey.com>
10244
10245         * configure: Rebuild.
10246         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
10247
10248 2018-05-04  Tom Tromey  <tom@tromey.com>
10249
10250         * linux-record.c (record_linux_system_call) <case
10251         RECORD_SYS_RECVFROM>: Add "break".
10252
10253 2018-05-04  Tom Tromey  <tom@tromey.com>
10254
10255         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
10256         Add missing "break".
10257         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
10258         Add missing "break".
10259
10260 2018-05-04  Tom Tromey  <tom@tromey.com>
10261
10262         * rs6000-tdep.c (ppc_process_record_op4)
10263         (ppc_process_record_op63): Add fall-through comment.
10264
10265 2018-05-04  Tom Tromey  <tom@tromey.com>
10266
10267         * i386-tdep.c (i386_process_record): Add fall-through comment.
10268
10269 2018-05-04  Tom Tromey  <tom@tromey.com>
10270
10271         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
10272         comment.
10273
10274 2018-05-04  Tom Tromey  <tom@tromey.com>
10275
10276         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
10277         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
10278         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
10279         comment.
10280         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
10281         comment.
10282         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
10283         comment.
10284
10285 2018-05-04  Tom Tromey  <tom@tromey.com>
10286
10287         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
10288
10289 2018-05-04  Tom Tromey  <tom@tromey.com>
10290
10291         * s390-tdep.c (s390_process_record): Fix fall-through comments.
10292         * xcoffread.c (scan_xcoff_symtab): Move comment later.
10293         * symfile.c (section_is_mapped): Fix fall-through comment.
10294         * stabsread.c (define_symbol, read_member_functions): Fix
10295         fall-through comment.
10296         * s390-linux-tdep.c (s390_process_record): Fix fall-through
10297         comment.
10298         * remote.c (remote_wait_as): Fix fall-through comment.
10299         * p-exp.y (yylex): Fix fall-through comment.
10300         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
10301         comment.
10302         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
10303         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
10304         * jv-exp.y (yylex): Fix fall-through comment.
10305         * go-exp.y (lex_one_token): Fix fall-through comment.
10306         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
10307         fall-through comment.
10308         * f-exp.y (yylex): Fix fall-through comment.
10309         * dwarf2read.c (process_die): Fix fall-through comments.
10310         * dbxread.c (process_one_symbol): Fix fall-through comment.
10311         * d-exp.y (lex_one_token): Fix fall-through comment.
10312         * cp-name-parser.y (yylex): Fix fall-through comment.
10313         * coffread.c (coff_symtab_read): Fix fall-through comment.
10314         * c-exp.y (lex_one_token): Fix fall-through comment.
10315         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
10316         comment.
10317         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
10318         comment.
10319
10320 2018-05-04  Tom Tromey  <tom@tromey.com>
10321
10322         PR python/22730:
10323         * NEWS: Mention gdb.execute change.
10324         * gdbcmd.h (execute_control_command): Don't declare.
10325         * python/python.c (execute_gdb_command): Use read_command_lines_1,
10326         execute_control_commands, execute_control_commands_to_string.
10327         * cli/cli-script.h (execute_control_commands)
10328         (execute_control_commands_to_string): Declare.
10329         (execute_control_command): Add from_tty parameter.
10330         * cli/cli-script.c (execute_control_commands)
10331         (execute_control_commands_to_string): New functions.
10332         (execute_user_command): Use execute_control_commands.
10333         (execute_control_command_1): Add "from_tty" parameter.  Update.
10334         (execute_control_command): Likewise.
10335
10336 2018-05-04  Tom Tromey  <tom@tromey.com>
10337
10338         PR python/22731:
10339         * NEWS: Mention that breakpoint commands are writable.
10340         * python/py-breakpoint.c (bppy_set_commands): New function.
10341         (breakpoint_object_getset) <"commands">: Use it.
10342
10343 2018-05-04  Tom Tromey  <tom@tromey.com>
10344
10345         * tracepoint.c (actions_command): Update.
10346         * mi/mi-cmd-break.c (mi_command_line_array)
10347         (mi_command_line_array_cnt, mi_command_line_array_ptr)
10348         (mi_read_next_line): Remove.
10349         (mi_cmd_break_commands): Update.
10350         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
10351         function_view.
10352         * cli/cli-script.c (get_command_line): Update.
10353         (process_next_line): Use function_view.  Constify.
10354         (recurse_read_control_structure, read_command_lines)
10355         (read_command_lines_1): Change argument types to function_view.
10356         (do_define_command, document_command): Update.
10357         * breakpoint.h (check_tracepoint_command): Don't declare.
10358         * breakpoint.c (check_tracepoint_command): Remove.
10359         (commands_command_1, create_tracepoint_from_upload): Update.
10360
10361 2018-05-04  Tom Tromey  <tom@tromey.com>
10362
10363         PR gdb/11750:
10364         * cli/cli-script.h (enum command_control_type) <define_control>:
10365         New constant.
10366         * cli/cli-script.c (multi_line_command_p): Handle define_control.
10367         (build_command_line, execute_control_command_1)
10368         (process_next_line): Likewise.
10369         (do_define_command): New function, extracted from define_command.
10370         (define_command): Use it.
10371
10372 2018-05-04  Tom Tromey  <tom@tromey.com>
10373
10374         * tracepoint.c (actions_command): Update.
10375         * cli/cli-script.h (read_command_lines): Update.
10376         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
10377         (MAX_TMPBUF): Remove define.
10378         (define_command): Use string_printf.
10379         (document_command): Likewise.
10380         * breakpoint.c (commands_command_1): Update.
10381
10382 2018-05-04  Tom Tromey  <tom@tromey.com>
10383
10384         * top.c (execute_command): Update.
10385         * cli/cli-script.h (print_command_lines): Now varargs.
10386         * cli/cli-script.c (print_command_lines): Now varargs.
10387         (execute_control_command_1) <case while_control, case if_control>:
10388         Update.
10389
10390 2018-05-04  Tom Tromey  <tom@tromey.com>
10391
10392         * tracepoint.c (all_tracepoint_actions): Rename from
10393         all_tracepoint_actions_and_cleanup.  Change return type.
10394         (actions_command, encode_actions_1, encode_actions)
10395         (trace_dump_actions, tdump_command): Update.
10396         * remote.c (remote_download_command_source): Update.
10397         * python/python.c (gdbpy_eval_from_control_command)
10398         (python_command, python_interactive_command): Update.
10399         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
10400         * guile/guile.c (guile_command)
10401         (gdbscm_eval_from_control_command, guile_command): Update.
10402         * compile/compile.c (compile_code_command)
10403         (compile_print_command, compile_to_object): Update.
10404         * cli/cli-script.h (struct command_lines_deleter): New.
10405         (counted_command_line): New typedef.
10406         (struct command_line): Add constructor, destructor.
10407         <body_list>: Remove.
10408         <body_list_0, body_list_1>: New members.
10409         (command_line_up): Remove typedef.
10410         (read_command_lines, read_command_lines_1, get_command_line):
10411         Update.
10412         (copy_command_lines): Don't declare.
10413         * cli/cli-script.c (build_command_line): Use "new".
10414         (get_command_line): Return counted_command_line.
10415         (print_command_lines, execute_user_command)
10416         (execute_control_command_1, while_command, if_command): Update.
10417         (realloc_body_list): Remove.
10418         (process_next_line, recurse_read_control_structure): Update.
10419         (read_command_lines, read_command_lines_1): Return counted_command_line.
10420         (free_command_lines): Use "delete".
10421         (copy_command_lines): Remove.
10422         (define_command, document_command, show_user_1): Update.
10423         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
10424         a counted_command_line.
10425         * breakpoint.h (counted_command_line): Remove typedef.
10426         (breakpoint_set_commands): Update.
10427         * breakpoint.c (check_no_tracepoint_commands)
10428         (validate_commands_for_breakpoint): Update.
10429         (breakpoint_set_commands): Change commands to be a
10430         counted_command_line.
10431         (commands_command_1, update_dprintf_command_list)
10432         (create_tracepoint_from_upload): Update.
10433
10434 2018-05-04  Tom Tromey  <tom@tromey.com>
10435
10436         * cli/cli-decode.h (cmd_list_element): New constructor.
10437         (~cmd_list_element): New destructor.
10438         (struct cmd_list_element): Add initializers.
10439         * cli/cli-decode.c (do_add_cmd): Use "new".
10440         (delete_cmd): Use "delete".
10441
10442 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
10443             Pedro Alves <palves@redhat.com>
10444
10445         PR breakpoints/19806 and support for PR external/20207.
10446         * NEWS: Mention Aarch64 watchpoint improvements.
10447         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
10448         watchpoints and PR external/20207 watchpoints.
10449         * nat/aarch64-linux-hw-point.c
10450         (kernel_supports_any_contiguous_range): New.
10451         (aarch64_watchpoint_offset): New.
10452         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
10453         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
10454         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
10455         (aarch64_align_watchpoint): New parameters aligned_offset_p and
10456         next_addr_orig_p.  Support PR external/20207 watchpoints.
10457         (aarch64_downgrade_regs): New.
10458         (aarch64_dr_state_insert_one_point): New parameters offset and
10459         addr_orig.
10460         (aarch64_dr_state_remove_one_point): Likewise.
10461         (aarch64_handle_breakpoint): Update caller.
10462         (aarch64_handle_aligned_watchpoint): Likewise.
10463         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
10464         aligned_offset.
10465         (aarch64_linux_set_debug_regs): Remove const from state.  Call
10466         aarch64_downgrade_regs.
10467         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
10468         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
10469         (DR_CONTROL_MASK): ... this.
10470         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
10471         (unsigned int aarch64_watchpoint_offset): New prototype.
10472         (aarch64_linux_set_debug_regs): Remove const from state.
10473         * utils.c (align_up, align_down): Move to ...
10474         * common/common-utils.c (align_up, align_down): ... here.
10475         * utils.h (align_up, align_down): Move to ...
10476         * common/common-utils.h (align_up, align_down): ... here.
10477
10478 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
10479
10480         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
10481         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
10482         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
10483         Re-implement to match the ABI as summarized in GCC's
10484         gcc/config/sparc/sparc.c.  All callers updated.
10485         (sparc32_store_arguments): Remove assertion.
10486
10487 2018-05-04  Tom Tromey  <tom@tromey.com>
10488
10489         * printcmd.c: Don't include tui.h.
10490         (decode_format): Use skip_spaces.
10491
10492 2018-05-04  Tom Tromey  <tom@tromey.com>
10493
10494         PR gdb/22619:
10495         * printcmd.c (last_count): New global.
10496         (x_command): Use saved count when repeating.
10497
10498 2018-05-04  Tom Tromey  <tom@tromey.com>
10499
10500         * nto-procfs.c (do_closedir_cleanup): Remove.
10501         (procfs_pidlist): Use gdb_dir_up.
10502         * procfs.c (do_closedir_cleanup): Remove.
10503         (proc_update_threads): Use gdb_dir_up.
10504         * common/filestuff.h (struct gdb_dir_deleter): New.
10505         (gdb_dir_up): New typedef.
10506
10507 2018-05-04  Tom Tromey  <tom@tromey.com>
10508
10509         * ada-lang.c (print_mention_exception): Use std::string.
10510
10511 2018-05-04  Tom Tromey  <tom@tromey.com>
10512
10513         * ada-lang.c (create_excep_cond_exprs): Update.
10514         (ada_exception_catchpoint_cond_string): Use std::string.
10515
10516 2018-05-04  Tom Tromey  <tom@tromey.com>
10517
10518         * ada-lang.c (xget_renaming_scope): Return std::string.
10519         (old_renaming_is_invisible): Update.
10520
10521 2018-05-04  Tom Tromey  <tom@tromey.com>
10522
10523         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
10524         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
10525
10526 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
10527
10528         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
10529
10530 2018-05-04  Tom Tromey  <tom@tromey.com>
10531
10532         * remote.c (remote_query_supported_append): Change type.
10533         (remote_check_symbols): Update.
10534
10535 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
10536
10537         PR gdb/11420
10538         * configure.ac: Prepend libpython.
10539         * python/python-config.py: Likewise.
10540         * configure: Regenerate.
10541
10542 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
10543
10544         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
10545
10546 2018-05-03  Pedro Alves  <palves@redhat.com>
10547
10548         * s390-linux-nat.c
10549         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
10550         override.  Write 'true' instead of '1'.
10551         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
10552         declaration.
10553
10554 2018-05-02  Pedro Alves  <palves@redhat.com>
10555
10556         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
10557         add_inf_child_target.
10558         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
10559         add_inf_child_target.
10560         * aix-thread.c (aix_thread_target_info): New.
10561         (aix_thread_target) <shortname, longname, doc>: Delete.
10562         <info>: New.
10563         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
10564         add_inf_child_target.
10565         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
10566         add_inf_child_target.
10567         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
10568         add_inf_child_target.
10569         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
10570         add_inf_child_target.
10571         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
10572         add_inf_child_target.
10573         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
10574         add_inf_child_target.
10575         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
10576         add_inf_child_target.
10577         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
10578         add_inf_child_target.
10579         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
10580         add_inf_child_target.
10581         * bfd-target.c (target_bfd_target_info): New.
10582         (target_bfd) <shortname, longname, doc>: Delete.
10583         <info>: New.
10584         * bsd-kvm.c (bsd_kvm_target_info): New.
10585         (bsd_kvm_target) <shortname, longname, doc>: Delete.
10586         <info>: New.
10587         (bsd_kvm_target::open): Rename to ...
10588         (bsd_kvm_target_open): ... this.  Adjust.
10589         * bsd-uthread.c (bsd_uthread_target_info): New.
10590         (bsd_uthread_target) <shortname, longname, doc>: Delete.
10591         <info>: New.
10592         * corefile.c (core_file_command): Adjust.
10593         * corelow.c (core_target_info): New.
10594         (core_target) <shortname, longname, doc>: Delete.
10595         <info>: New.
10596         (core_target::open): Rename to ...
10597         (core_target_open): ... this.  Adjust.
10598         * ctf.c (ctf_target_info): New.
10599         (ctf_target) <shortname, longname, doc>: Delete.
10600         <info>: New.
10601         (ctf_target::open): Rename to ...
10602         (ctf_target_open): ... this.
10603         (_initialize_ctf): Adjust.
10604         * exec.c (exec_target_info): New.
10605         (exec_target) <shortname, longname, doc>: Delete.
10606         <info>: New.
10607         (exec_target::open): Rename to ...
10608         (exec_target_open): ... this.
10609         * gdbcore.h (core_target_open): Declare.
10610         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
10611         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
10612         add_inf_child_target.
10613         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
10614         add_inf_child_target.
10615         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
10616         add_inf_child_target.
10617         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
10618         add_inf_child_target.
10619         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
10620         add_inf_child_target.
10621         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
10622         add_inf_child_target.
10623         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
10624         add_inf_child_target.
10625         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
10626         add_inf_child_target.
10627         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
10628         add_inf_child_target.
10629         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
10630         add_inf_child_target.
10631         * inf-child.c (inf_child_target_info): New.
10632         (inf_child_target::info): New.
10633         (inf_child_open_target): Remove 'target' parameter.  Use
10634         get_native_target instead.
10635         (inf_child_target::open): Delete.
10636         (add_inf_child_target): New.
10637         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
10638         Delete.
10639         <info>: New.
10640         (add_inf_child_target): Declare.
10641         (inf_child_open_target): Declare.
10642         * linux-thread-db.c (thread_db_target_info): New.
10643         (thread_db_target) <shortname, longname, doc>: Delete.
10644         <info>: New.
10645         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
10646         add_inf_child_target.
10647         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
10648         add_inf_child_target.
10649         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
10650         add_inf_child_target.
10651         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
10652         add_inf_child_target.
10653         * make-target-delegates (print_class): Adjust.
10654         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
10655         add_inf_child_target.
10656         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
10657         add_inf_child_target.
10658         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
10659         add_inf_child_target.
10660         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
10661         add_inf_child_target.
10662         * nto-procfs.c (nto_native_target_info): New.
10663         (nto_procfs_target_native) <shortname, longname, doc>:
10664         Delete.
10665         <info>: New.
10666         (nto_procfs_target_info): New.
10667         (nto_procfs_target_procfs) <shortname, longname, doc>:
10668         Delete.
10669         <info>: New.
10670         (init_procfs_targets): Adjust.
10671         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
10672         add_inf_child_target.
10673         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
10674         add_inf_child_target.
10675         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
10676         add_inf_child_target.
10677         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
10678         add_inf_child_target.
10679         * ravenscar-thread.c (ravenscar_target_info): New.
10680         (ravenscar_thread_target) <shortname, longname, doc>:
10681         Delete.
10682         <info>: New.
10683         * record-btrace.c (record_btrace_target_info):
10684         (record_btrace_target) <shortname, longname, doc>: Delete.
10685         <info>: New.
10686         (record_btrace_target::open): Rename to ...
10687         (record_btrace_target_open): ... this.  Adjust.
10688         * record-full.c (record_longname, record_doc): New.
10689         (record_full_base_target) <shortname, longname, doc>: Delete.
10690         <info>: New.
10691         (record_full_target_info): New.
10692         (record_full_target): <shortname>: Delete.
10693         <info>: New.
10694         (record_full_core_open_1, record_full_open_1): Update comments.
10695         (record_full_base_target::open): Rename to ...
10696         (record_full_open): ... this.
10697         (cmd_record_full_restore): Update.
10698         (_initialize_record_full): Update.
10699         * remote-sim.c (remote_sim_target_info): New.
10700         (gdbsim_target) <shortname, longname, doc>: Delete.
10701         <info>: New.
10702         (gdbsim_target::open): Rename to ...
10703         (gdbsim_target_open): ... this.
10704         (_initialize_remote_sim): Adjust.
10705         * remote.c (remote_doc): New.
10706         (remote_target_info): New.
10707         (remote_target) <shortname, longname, doc>: Delete.
10708         <info>: New.
10709         (extended_remote_target_info): New.
10710         (extended_remote_target) <shortname, longname, doc>: Delete.
10711         <info>: New.
10712         (remote_target::open_1): Make static.  Adjust.
10713         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
10714         * s390-linux-nat.c (_initialize_s390_nat): Use
10715         add_inf_child_target.
10716         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
10717         add_inf_child_target.
10718         * sol-thread.c (thread_db_target_info): New.
10719         (sol_thread_target) <shortname, longname, doc>: Delete.
10720         <info>: New.
10721         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
10722         add_inf_child_target.
10723         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
10724         add_inf_child_target.
10725         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
10726         add_inf_child_target.
10727         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
10728         add_inf_child_target.
10729         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
10730         add_inf_child_target.
10731         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
10732         add_inf_child_target.
10733         * spu-linux-nat.c (_initialize_spu_nat): Use
10734         add_inf_child_target.
10735         * spu-multiarch.c (spu_multiarch_target_info): New.
10736         (spu_multiarch_target) <shortname, longname, doc>: Delete.
10737         <info>: New.
10738         * target-delegates.c: Regenerate.
10739         * target.c: Include <unordered_map>.
10740         (target_ops_p): Delete.
10741         (DEF_VEC_P(target_ops_p)): Delete.
10742         (target_factories): New.
10743         (test_target_info): New.
10744         (test_target_ops::info): New.
10745         (open_target): Adjust to use target_factories.
10746         (add_target_with_completer): Rename to ...
10747         (add_target): ... this.  Change prototype.  Register target_info
10748         and open callback in target_factories.  Register target_info in
10749         command context instead of target_ops.
10750         (add_target): Delete old implementation.
10751         (add_deprecated_target_alias): Change prototype.  Adjust.
10752         (the_native_target): New.
10753         (set_native_target, get_native_target): New.
10754         (find_default_run_target): Use the_native_target.
10755         (find_attach_target, find_run_target): Simplify.
10756         (target_ops::open): Delete.
10757         (dummy_target_info): New.
10758         (dummy_target::shortname, dummy_target::longname)
10759         (dummy_target::doc): Delete.
10760         (dummy_target::info): New.
10761         (debug_target::shortname, debug_target::longname)
10762         (debug_target::doc): Delete.
10763         (debug_target::info): New.
10764         * target.h (struct target_info): New.
10765         (target_ops::~target_ops): Add comment.
10766         (target_ops::info): New.
10767         (target_ops::shortname, target_ops::longname, target_ops::doc): No
10768         longer virtual.  Implement in terms of target_info.
10769         (set_native_target, get_native_target): Declare.
10770         (target_open_ftype): New.
10771         (add_target, add_target_with_completer)
10772         (add_deprecated_target_alias): Change prototype.
10773         (test_target) <shortname, longname, doc>: Delete.
10774         <info>: New.
10775         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
10776         add_inf_child_target.
10777         * tracefile-tfile.c (tfile_target_info): New.
10778         (tfile_target) <shortname, longname, doc>: Delete.
10779         <info>: New.
10780         (tfile_target::open): Rename to ...
10781         (tfile_target_open): ... this.
10782         (_initialize_tracefile_tfile): Adjust.
10783         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
10784         add_inf_child_target.
10785         * windows-nat.c (_initialize_windows_nat): Use
10786         add_inf_child_target.
10787         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
10788         add_inf_child_target.
10789
10790 2018-05-02  Pedro Alves  <palves@redhat.com>
10791
10792         * linux-nat.h (linux_nat_target) <low_new_thread,
10793         low_delete_thread, low_new_fork, low_forget_process,
10794         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
10795         New virtual methods.
10796         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10797         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
10798         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
10799         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10800         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
10801         Delete.
10802         * linux-fork.c (delete_fork): Adjust to call low method.
10803         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
10804         (linux_nat_new_fork, linux_nat_forget_process_hook)
10805         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
10806         (linux_nat_status_is_event):
10807         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
10808         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
10809         to call low method.
10810         (sigtrap_is_event): Rename to ...
10811         (linux_nat_target::low_status_is_event): ... this.
10812         (linux_nat_set_status_is_event): Delete.
10813         (save_stop_reason, linux_nat_wait_1)
10814         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
10815         low methods.
10816         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10817         (linux_nat_set_new_fork, linux_nat_set_forget_process)
10818         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10819         (linux_nat_set_prepare_to_resume): Delete.
10820         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
10821         low virtual methods.
10822         * amd64-linux-nat.c: Likewise.
10823         * arm-linux-nat.c: Likewise.
10824         * i386-linux-nat.c: Likewise.
10825         * ia64-linux-nat.c: Likewise.
10826         * mips-linux-nat.c: Likewise.
10827         * ppc-linux-nat.c: Likewise.
10828         * s390-linux-nat.c: Likewise.
10829         * sparc64-linux-nat.c: Likewise.
10830         * x86-linux-nat.c: Likewise.
10831         * x86-linux-nat.h: Include "nat/x86-linux.h".
10832         (x86_linux_nat_target) <low_new_fork, low_forget_process,
10833         low_prepare_to_resume, low_new_thread, low_delete_thread>:
10834         Override methods.
10835
10836 2018-05-02  Pedro Alves  <palves@redhat.com>
10837
10838         * target.h (target_ops)
10839         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
10840         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
10841         stopped_by_watchpoint, have_continuable_watchpoint,
10842         stopped_data_address, watchpoint_addr_within_range,
10843         can_accel_watchpoint_condition, can_run, thread_alive,
10844         has_all_memory, has_memory, has_stack, has_registers,
10845         has_execution, can_async_p, is_async_p, supports_non_stop,
10846         always_non_stop_p, can_execute_reverse, supports_multi_process,
10847         supports_enable_disable_tracepoint,
10848         supports_disable_randomization, supports_string_tracing,
10849         supports_evaluation_of_breakpoint_conditions,
10850         can_run_breakpoint_commands, filesystem_is_local,
10851         can_download_tracepoint, get_trace_state_variable_value,
10852         set_trace_notes, get_tib_address, use_agent, can_use_agent,
10853         record_is_replaying, record_will_replay,
10854         augmented_libraries_svr4_read>: Adjust to return bool.
10855         * aarch64-linux-nat.c: All implementations adjusted.
10856         * aix-thread.c: All implementations adjusted.
10857         * arm-linux-nat.c: All implementations adjusted.
10858         * breakpoint.c: All implementations adjusted.
10859         * bsd-kvm.c: All implementations adjusted.
10860         * bsd-uthread.c: All implementations adjusted.
10861         * corelow.c: All implementations adjusted.
10862         * ctf.c: All implementations adjusted.
10863         * darwin-nat.c: All implementations adjusted.
10864         * darwin-nat.h: All implementations adjusted.
10865         * exec.c: All implementations adjusted.
10866         * fbsd-nat.c: All implementations adjusted.
10867         * fbsd-nat.h: All implementations adjusted.
10868         * gnu-nat.c: All implementations adjusted.
10869         * gnu-nat.h: All implementations adjusted.
10870         * go32-nat.c: All implementations adjusted.
10871         * ia64-linux-nat.c: All implementations adjusted.
10872         * inf-child.c: All implementations adjusted.
10873         * inf-child.h: All implementations adjusted.
10874         * inf-ptrace.c: All implementations adjusted.
10875         * inf-ptrace.h: All implementations adjusted.
10876         * linux-nat.c: All implementations adjusted.
10877         * linux-nat.h: All implementations adjusted.
10878         * mips-linux-nat.c: All implementations adjusted.
10879         * nto-procfs.c: All implementations adjusted.
10880         * ppc-linux-nat.c: All implementations adjusted.
10881         * procfs.c: All implementations adjusted.
10882         * ravenscar-thread.c: All implementations adjusted.
10883         * record-btrace.c: All implementations adjusted.
10884         * record-full.c: All implementations adjusted.
10885         * remote-sim.c: All implementations adjusted.
10886         * remote.c: All implementations adjusted.
10887         * s390-linux-nat.c: All implementations adjusted.
10888         * sol-thread.c: All implementations adjusted.
10889         * spu-multiarch.c: All implementations adjusted.
10890         * target-delegates.c: All implementations adjusted.
10891         * target.c: All implementations adjusted.
10892         * target.h: All implementations adjusted.
10893         * tracefile-tfile.c: All implementations adjusted.
10894         * tracefile.c: All implementations adjusted.
10895         * tracefile.h: All implementations adjusted.
10896         * windows-nat.c: All implementations adjusted.
10897         * x86-linux-nat.h: All implementations adjusted.
10898         * x86-nat.h: All implementations adjusted.
10899
10900 2018-05-02  Pedro Alves  <palves@redhat.com>
10901
10902         * make-target-delegates (scan_target_h): Don't trim lines here.
10903         Replace sequences of tabs and/or whitespace with a single
10904         whitespace.
10905         (top level, parsing methods): Trim each line before processing it
10906         here.
10907
10908 2018-05-02  Pedro Alves  <palves@redhat.com>
10909             John Baldwin  <jhb@freebsd.org>
10910
10911         * target.h (enum strata) <debug_stratum>: New.
10912         (struct target_ops) <all delegation methods>: Replace by C++
10913         virtual methods, and drop "to_" prefix.  All references updated
10914         throughout.
10915         <to_shortname, to_longname, to_doc, to_data,
10916         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
10917         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
10918         virtual methods.  All references updated throughout.
10919         <can_attach, supports_terminal_ours, can_create_inferior,
10920         get_thread_control_capabilities, attach_no_wait>: New
10921         virtual methods.
10922         <insert_breakpoint, remove_breakpoint>: Now
10923         TARGET_DEFAULT_NORETURN methods.
10924         <info_proc>: Now returns bool.
10925         <to_magic>: Delete.
10926         (OPS_MAGIC): Delete.
10927         (current_target): Delete.  All references replaced by references
10928         to ...
10929         (target_stack): ... this.  New.
10930         (target_shortname, target_longname): Adjust.
10931         (target_can_run): Now a function declaration.
10932         (default_child_has_all_memory, default_child_has_memory)
10933         (default_child_has_stack, default_child_has_registers)
10934         (default_child_has_execution): Remove target_ops parameter.
10935         (complete_target_initialization): Delete.
10936         (memory_breakpoint_target): New template class.
10937         (test_target_ops): Refactor as a C++ class with virtual methods.
10938         * make-target-delegates (NAME_PART): Tighten.
10939         (POINTER_PART, CP_SYMBOL): New.
10940         (SIMPLE_RETURN_PART): Reimplement.
10941         (VEC_RETURN_PART): Expect less.
10942         (RETURN_PART, VIRTUAL_PART): New.
10943         (METHOD): Adjust to C++ virtual methods.
10944         (scan_target_h): Remove reference to C99.
10945         (dname): Output "target_ops::" prefix.
10946         (write_function_header): Adjust to output a C++ class method.
10947         (write_declaration): New.
10948         (write_delegator): Adjust to output a C++ class method.
10949         (tdname): Output "dummy_target::" prefix.
10950         (write_tdefault, write_debugmethod): Adjust to output a C++ class
10951         method.
10952         (tdefault_names, debug_names): Delete.
10953         (return_types, tdefaults, styles, argtypes_array): New.
10954         (top level): All methods are delegators.
10955         (print_class): New.
10956         (top level): Print dummy_target and debug_target classes.
10957         * target-delegates.c: Regenerate.
10958         * target-debug.h (target_debug_print_enum_info_proc_what)
10959         (target_debug_print_thread_control_capabilities)
10960         (target_debug_print_thread_info_p): New.
10961         * target.c (dummy_target): Delete.
10962         (the_dummy_target, the_debug_target): New.
10963         (target_stack): Now extern.
10964         (set_targetdebug): Push/unpush debug target.
10965         (default_child_has_all_memory, default_child_has_memory)
10966         (default_child_has_stack, default_child_has_registers)
10967         (default_child_has_execution): Remove target_ops parameter.
10968         (complete_target_initialization): Delete.
10969         (add_target_with_completer): No longer call
10970         complete_target_initialization.
10971         (target_supports_terminal_ours): Use regular delegation.
10972         (update_current_target): Delete.
10973         (push_target): No longer check magic number.  Don't call
10974         update_current_target.
10975         (unpush_target): Don't call update_current_target.
10976         (target_is_pushed): No longer check magic number.
10977         (target_require_runnable): Skip for all stratums over
10978         process_stratum.
10979         (target_ops::info_proc): New.
10980         (target_info_proc): Use find_target_at and
10981         find_default_run_target.
10982         (target_supports_disable_randomization): Use regular delegation.
10983         (target_get_osdata): Use find_target_at.
10984         (target_ops::open, target_ops::close, target_ops::can_attach)
10985         (target_ops::attach, target_ops::can_create_inferior)
10986         (target_ops::create_inferior, target_ops::can_run)
10987         (target_can_run): New.
10988         (default_fileio_target): Use regular delegation.
10989         (target_ops::fileio_open, target_ops::fileio_pwrite)
10990         (target_ops::fileio_pread, target_ops::fileio_fstat)
10991         (target_ops::fileio_close, target_ops::fileio_unlink)
10992         (target_ops::fileio_readlink): New.
10993         (target_fileio_open_1, target_fileio_unlink)
10994         (target_fileio_readlink): Always call the target method.  Handle
10995         FILEIO_ENOSYS.
10996         (return_zero, return_zero_has_execution): Delete.
10997         (init_dummy_target): Delete.
10998         (dummy_target::dummy_target, dummy_target::shortname)
10999         (dummy_target::longname, dummy_target::doc)
11000         (debug_target::debug_target, debug_target::shortname)
11001         (debug_target::longname, debug_target::doc): New.
11002         (target_supports_delete_record): Use regular delegation.
11003         (setup_target_debug): Delete.
11004         (maintenance_print_target_stack): Skip debug_stratum.
11005         (initialize_targets): Instantiate the_dummy_target and
11006         the_debug_target.
11007         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
11008         use target_stack.
11009         (target_auxv_search, fprint_target_auxv): Adjust.
11010         (info_auxv_command): Adjust to use target_stack.
11011         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
11012         * exceptions.c (print_flush): Handle a NULL target_stack.
11013         * regcache.c (target_ops_no_register): Refactor as class with
11014         virtual methods.
11015
11016         * exec.c (exec_target): New class.
11017         (exec_ops): Now an exec_target.
11018         (exec_open, exec_close_1, exec_get_section_table)
11019         (exec_xfer_partial, exec_files_info, exec_has_memory)
11020         (exec_make_note_section): Refactor as exec_target methods.
11021         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
11022         Delete.
11023         (exec_target::find_memory_regions): New.
11024         (_initialize_exec): Don't call init_exec_ops.
11025         * gdbcore.h (exec_file_clear): Delete.
11026
11027         * corefile.c (core_target): Delete.
11028         (core_file_command): Adjust.
11029         * corelow.c (core_target): New class.
11030         (the_core_target): New.
11031         (core_close): Remove target_ops parameter.
11032         (core_close_cleanup): Adjust.
11033         (core_target::close): New.
11034         (core_open, core_detach, get_core_registers, core_files_info)
11035         (core_xfer_partial, core_thread_alive, core_read_description)
11036         (core_pid_to_str, core_thread_name, core_has_memory)
11037         (core_has_stack, core_has_registers, core_info_proc): Rework as
11038         core_target methods.
11039         (ignore, core_remove_breakpoint, init_core_ops): Delete.
11040         (_initialize_corelow): Initialize the_core_target.
11041         * gdbcore.h (core_target): Delete.
11042         (the_core_target): New.
11043
11044         * ctf.c: (ctf_target): New class.
11045         (ctf_ops): Now a ctf_target.
11046         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
11047         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
11048         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
11049         methods.
11050         (init_ctf_ops): Delete.
11051         (_initialize_ctf): Don't call it.
11052         * tracefile-tfile.c (tfile_target): New class.
11053         (tfile_ops): Now a tfile_target.
11054         (tfile_open, tfile_close, tfile_files_info)
11055         (tfile_get_tracepoint_status, tfile_trace_find)
11056         (tfile_fetch_registers, tfile_xfer_partial)
11057         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
11058         Refactor as tfile_target methods.
11059         (tfile_xfer_partial_features): Remove target_ops parameter.
11060         (init_tfile_ops): Delete.
11061         (_initialize_tracefile_tfile): Don't call it.
11062         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
11063         (tracefile_has_stack, tracefile_has_registers)
11064         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
11065         tracefile_target methods.
11066         (init_tracefile_ops): Delete.
11067         (tracefile_target::tracefile_target): New.
11068         * tracefile.h: Include "target.h".
11069         (tracefile_target): New class.
11070         (init_tracefile_ops): Delete.
11071
11072         * spu-multiarch.c (spu_multiarch_target): New class.
11073         (spu_ops): Now a spu_multiarch_target.
11074         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
11075         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
11076         (spu_search_memory, spu_mourn_inferior): Refactor as
11077         spu_multiarch_target methods.
11078         (init_spu_ops): Delete.
11079         (_initialize_spu_multiarch): Remove references to init_spu_ops,
11080         complete_target_initialization.
11081
11082         * ravenscar-thread.c (ravenscar_thread_target): New class.
11083         (ravenscar_ops): Now a ravenscar_thread_target.
11084         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
11085         (ravenscar_thread_alive, ravenscar_pid_to_str)
11086         (ravenscar_fetch_registers, ravenscar_store_registers)
11087         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
11088         (ravenscar_stopped_by_hw_breakpoint)
11089         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
11090         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
11091         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
11092         methods.
11093         (init_ravenscar_thread_ops): Delete.
11094         (_initialize_ravenscar): Remove references to
11095         init_ravenscar_thread_ops and complete_target_initialization.
11096
11097         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
11098         (bsd_uthread_target): New class.
11099         (bsd_uthread_ops): Now a bsd_uthread_target.
11100         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
11101         (bsd_uthread_close, bsd_uthread_mourn_inferior)
11102         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
11103         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
11104         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
11105         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
11106         (bsd_uthread_target): Delete function.
11107         (_initialize_bsd_uthread): Remove reference to
11108         complete_target_initialization.
11109
11110         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
11111         (target_bfd): ... this new class.
11112         (target_bfd_xfer_partial, target_bfd_get_section_table)
11113         (target_bfd_close): Refactor as target_bfd methods.
11114         (target_bfd::~target_bfd): New.
11115         (target_bfd_reopen): Adjust.
11116         (target_bfd::close): New.
11117
11118         * record-btrace.c (record_btrace_target): New class.
11119         (record_btrace_ops): Now a record_btrace_target.
11120         (record_btrace_open, record_btrace_stop_recording)
11121         (record_btrace_disconnect, record_btrace_close)
11122         (record_btrace_async, record_btrace_info)
11123         (record_btrace_insn_history, record_btrace_insn_history_range)
11124         (record_btrace_insn_history_from, record_btrace_call_history)
11125         (record_btrace_call_history_range)
11126         (record_btrace_call_history_from, record_btrace_record_method)
11127         (record_btrace_is_replaying, record_btrace_will_replay)
11128         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
11129         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
11130         (record_btrace_store_registers, record_btrace_prepare_to_store)
11131         (record_btrace_to_get_unwinder)
11132         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
11133         (record_btrace_commit_resume, record_btrace_wait)
11134         (record_btrace_stop, record_btrace_can_execute_reverse)
11135         (record_btrace_stopped_by_sw_breakpoint)
11136         (record_btrace_supports_stopped_by_sw_breakpoint)
11137         (record_btrace_stopped_by_hw_breakpoint)
11138         (record_btrace_supports_stopped_by_hw_breakpoint)
11139         (record_btrace_update_thread_list, record_btrace_thread_alive)
11140         (record_btrace_goto_begin, record_btrace_goto_end)
11141         (record_btrace_goto, record_btrace_stop_replaying_all)
11142         (record_btrace_execution_direction)
11143         (record_btrace_prepare_to_generate_core)
11144         (record_btrace_done_generating_core): Refactor as
11145         record_btrace_target methods.
11146         (init_record_btrace_ops): Delete.
11147         (_initialize_record_btrace): Remove reference to
11148         init_record_btrace_ops.
11149         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
11150         the execution_direction global.
11151         (record_full_base_target, record_full_target)
11152         (record_full_core_target): New classes.
11153         (record_full_ops): Now a record_full_target.
11154         (record_full_core_ops): Now a record_full_core_target.
11155         (record_full_target::detach, record_full_target::disconnect)
11156         (record_full_core_target::disconnect)
11157         (record_full_target::mourn_inferior, record_full_target::kill):
11158         New.
11159         (record_full_open, record_full_close, record_full_async): Refactor
11160         as methods of the record_full_base_target class.
11161         (record_full_resume, record_full_commit_resume): Refactor
11162         as methods of the record_full_target class.
11163         (record_full_wait, record_full_stopped_by_watchpoint)
11164         (record_full_stopped_data_address)
11165         (record_full_stopped_by_sw_breakpoint)
11166         (record_full_supports_stopped_by_sw_breakpoint)
11167         (record_full_stopped_by_hw_breakpoint)
11168         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
11169         methods of the record_full_base_target class.
11170         (record_full_store_registers, record_full_xfer_partial)
11171         (record_full_insert_breakpoint, record_full_remove_breakpoint):
11172         Refactor as methods of the record_full_target class.
11173         (record_full_can_execute_reverse, record_full_get_bookmark)
11174         (record_full_goto_bookmark, record_full_execution_direction)
11175         (record_full_record_method, record_full_info, record_full_delete)
11176         (record_full_is_replaying, record_full_will_replay)
11177         (record_full_goto_begin, record_full_goto_end, record_full_goto)
11178         (record_full_stop_replaying): Refactor as methods of the
11179         record_full_base_target class.
11180         (record_full_core_resume, record_full_core_kill)
11181         (record_full_core_fetch_registers)
11182         (record_full_core_prepare_to_store)
11183         (record_full_core_store_registers, record_full_core_xfer_partial)
11184         (record_full_core_insert_breakpoint)
11185         (record_full_core_remove_breakpoint)
11186         (record_full_core_has_execution): Refactor
11187         as methods of the record_full_core_target class.
11188         (record_full_base_target::supports_delete_record): New.
11189         (init_record_full_ops): Delete.
11190         (init_record_full_core_ops): Delete.
11191         (record_full_save): Refactor as method of the
11192         record_full_base_target class.
11193         (_initialize_record_full): Remove references to
11194         init_record_full_ops and init_record_full_core_ops.
11195
11196         * remote.c (remote_target, extended_remote_target): New classes.
11197         (remote_ops): Now a remote_target.
11198         (extended_remote_ops): Now an extended_remote_target.
11199         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
11200         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
11201         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
11202         (remote_pass_signals, remote_set_syscall_catchpoint)
11203         (remote_program_signals, )
11204         (remote_thread_always_alive): Remove target_ops parameter.
11205         (remote_thread_alive, remote_thread_name)
11206         (remote_update_thread_list, remote_threads_extra_info)
11207         (remote_static_tracepoint_marker_at)
11208         (remote_static_tracepoint_markers_by_strid)
11209         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
11210         (remote_open): Refactor as methods of remote_target.
11211         (extended_remote_open, extended_remote_detach)
11212         (extended_remote_attach, extended_remote_post_attach):
11213         (extended_remote_supports_disable_randomization)
11214         (extended_remote_create_inferior): : Refactor as method of
11215         extended_remote_target.
11216         (remote_set_permissions, remote_open_1, remote_detach)
11217         (remote_follow_fork, remote_follow_exec, remote_disconnect)
11218         (remote_resume, remote_commit_resume, remote_stop)
11219         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
11220         (remote_terminal_ours, remote_wait, remote_fetch_registers)
11221         (remote_prepare_to_store, remote_store_registers)
11222         (remote_flash_erase, remote_flash_done, remote_files_info)
11223         (remote_kill, remote_mourn, remote_insert_breakpoint)
11224         (remote_remove_breakpoint, remote_insert_watchpoint)
11225         (remote_watchpoint_addr_within_range)
11226         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
11227         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
11228         (remote_supports_stopped_by_sw_breakpoint)
11229         (remote_stopped_by_hw_breakpoint)
11230         (remote_supports_stopped_by_hw_breakpoint)
11231         (remote_stopped_by_watchpoint, remote_stopped_data_address)
11232         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
11233         (remote_verify_memory): Refactor as methods of remote_target.
11234         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
11235         parameter.
11236         (remote_xfer_partial, remote_get_memory_xfer_limit)
11237         (remote_search_memory, remote_rcmd, remote_memory_map)
11238         (remote_pid_to_str, remote_get_thread_local_address)
11239         (remote_get_tib_address, remote_read_description): Refactor as
11240         methods of remote_target.
11241         (remote_target::fileio_open, remote_target::fileio_pwrite)
11242         (remote_target::fileio_pread, remote_target::fileio_close): New.
11243         (remote_hostio_readlink, remote_hostio_fstat)
11244         (remote_filesystem_is_local, remote_can_execute_reverse)
11245         (remote_supports_non_stop, remote_supports_disable_randomization)
11246         (remote_supports_multi_process, remote_supports_cond_breakpoints)
11247         (remote_supports_enable_disable_tracepoint)
11248         (remote_supports_string_tracing)
11249         (remote_can_run_breakpoint_commands, remote_trace_init)
11250         (remote_download_tracepoint, remote_can_download_tracepoint)
11251         (remote_download_trace_state_variable, remote_enable_tracepoint)
11252         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
11253         (remote_trace_start, remote_get_trace_status)
11254         (remote_get_tracepoint_status, remote_trace_stop)
11255         (remote_trace_find, remote_get_trace_state_variable_value)
11256         (remote_save_trace_data, remote_get_raw_trace_data)
11257         (remote_set_disconnected_tracing, remote_core_of_thread)
11258         (remote_set_circular_trace_buffer, remote_traceframe_info)
11259         (remote_get_min_fast_tracepoint_insn_len)
11260         (remote_set_trace_buffer_size, remote_set_trace_notes)
11261         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
11262         (remote_disable_btrace, remote_teardown_btrace)
11263         (remote_read_btrace, remote_btrace_conf)
11264         (remote_augmented_libraries_svr4_read, remote_load)
11265         (remote_pid_to_exec_file, remote_can_do_single_step)
11266         (remote_execution_direction, remote_thread_handle_to_thread_info):
11267         Refactor as methods of remote_target.
11268         (init_remote_ops, init_extended_remote_ops): Delete.
11269         (remote_can_async_p, remote_is_async_p, remote_async)
11270         (remote_thread_events, remote_upload_tracepoints)
11271         (remote_upload_trace_state_variables): Refactor as methods of
11272         remote_target.
11273         (_initialize_remote): Remove references to init_remote_ops and
11274         init_extended_remote_ops.
11275
11276         * remote-sim.c (gdbsim_target): New class.
11277         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
11278         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
11279         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
11280         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
11281         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
11282         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
11283         Refactor as methods of gdbsim_target.
11284         (gdbsim_ops): Now a gdbsim_target.
11285         (init_gdbsim_ops): Delete.
11286         (gdbsim_cntrl_c): Adjust.
11287         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
11288
11289         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
11290         (the_amd64_linux_nat_target): New.
11291         (amd64_linux_fetch_inferior_registers)
11292         (amd64_linux_store_inferior_registers): Refactor as methods of
11293         amd64_linux_nat_target.
11294         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
11295         * i386-linux-nat.c: Don't include "linux-nat.h".
11296         (i386_linux_nat_target): New class.
11297         (the_i386_linux_nat_target): New.
11298         (i386_linux_fetch_inferior_registers)
11299         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
11300         as methods of i386_linux_nat_target.
11301         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
11302         * inf-child.c (inf_child_ops): Delete.
11303         (inf_child_fetch_inferior_registers)
11304         (inf_child_store_inferior_registers): Delete.
11305         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
11306         methods of inf_child_target.
11307         (inf_child_target::supports_terminal_ours)
11308         (inf_child_target::terminal_init)
11309         (inf_child_target::terminal_inferior)
11310         (inf_child_target::terminal_ours_for_output)
11311         (inf_child_target::terminal_ours, inf_child_target::interrupt)
11312         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
11313         New.
11314         (inf_child_open, inf_child_disconnect, inf_child_close)
11315         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
11316         (inf_child_post_startup_inferior, inf_child_can_run)
11317         (inf_child_pid_to_exec_file): Refactor as methods of
11318         inf_child_target.
11319         (inf_child_follow_fork): Delete.
11320         (inf_child_target::can_create_inferior)
11321         (inf_child_target::can_attach): New.
11322         (inf_child_target::has_all_memory, inf_child_target::has_memory)
11323         (inf_child_target::has_stack, inf_child_target::has_registers)
11324         (inf_child_target::has_execution): New.
11325         (inf_child_fileio_open, inf_child_fileio_pwrite)
11326         (inf_child_fileio_pread, inf_child_fileio_fstat)
11327         (inf_child_fileio_close, inf_child_fileio_unlink)
11328         (inf_child_fileio_readlink, inf_child_use_agent)
11329         (inf_child_can_use_agent): Refactor as methods of
11330         inf_child_target.
11331         (return_zero, inf_child_target): Delete.
11332         (inf_child_target::inf_child_target): New.
11333         * inf-child.h: Include "target.h".
11334         (inf_child_target): Delete function prototype.
11335         (inf_child_target): New class.
11336         (inf_child_open_target, inf_child_mourn_inferior)
11337         (inf_child_maybe_unpush_target): Delete.
11338         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
11339         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
11340         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
11341         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
11342         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
11343         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
11344         (inf_ptrace_wait, inf_ptrace_xfer_partial)
11345         (inf_ptrace_thread_alive, inf_ptrace_files_info)
11346         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
11347         methods of inf_ptrace_target.
11348         (inf_ptrace_target): Delete function.
11349         * inf-ptrace.h: Include "inf-child.h".
11350         (inf_ptrace_target): Delete function declaration.
11351         (inf_ptrace_target): New class.
11352         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
11353         * linux-nat.c (linux_target): New.
11354         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
11355         (linux_nat_target::~linux_nat_target): New.
11356         (linux_child_post_attach, linux_child_post_startup_inferior)
11357         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
11358         (linux_child_remove_fork_catchpoint)
11359         (linux_child_insert_vfork_catchpoint)
11360         (linux_child_remove_vfork_catchpoint)
11361         (linux_child_insert_exec_catchpoint)
11362         (linux_child_remove_exec_catchpoint)
11363         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
11364         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
11365         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
11366         (linux_nat_stopped_data_address)
11367         (linux_nat_stopped_by_sw_breakpoint)
11368         (linux_nat_supports_stopped_by_sw_breakpoint)
11369         (linux_nat_stopped_by_hw_breakpoint)
11370         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
11371         (linux_nat_kill, linux_nat_mourn_inferior)
11372         (linux_nat_xfer_partial, linux_nat_thread_alive)
11373         (linux_nat_update_thread_list, linux_nat_pid_to_str)
11374         (linux_nat_thread_name, linux_child_pid_to_exec_file)
11375         (linux_child_static_tracepoint_markers_by_strid)
11376         (linux_nat_is_async_p, linux_nat_can_async_p)
11377         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
11378         (linux_nat_supports_multi_process)
11379         (linux_nat_supports_disable_randomization, linux_nat_async)
11380         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
11381         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
11382         (linux_nat_fileio_open, linux_nat_fileio_readlink)
11383         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
11384         methods of linux_nat_target.
11385         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
11386         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
11387         parameter.
11388         (check_stopped_by_watchpoint): Adjust.
11389         (linux_xfer_partial): Delete.
11390         (linux_target_install_ops, linux_target, linux_nat_add_target):
11391         Delete.
11392         (linux_nat_target::linux_nat_target): New.
11393         * linux-nat.h: Include "inf-ptrace.h".
11394         (linux_nat_target): New.
11395         (linux_target, linux_target_install_ops, linux_nat_add_target):
11396         Delete function declarations.
11397         (linux_target): Declare global.
11398         * linux-thread-db.c (thread_db_target): New.
11399         (thread_db_target::thread_db_target): New.
11400         (thread_db_ops): Delete.
11401         (the_thread_db_target): New.
11402         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
11403         (thread_db_update_thread_list, thread_db_pid_to_str)
11404         (thread_db_extra_thread_info)
11405         (thread_db_thread_handle_to_thread_info)
11406         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
11407         (thread_db_resume): Refactor as methods of thread_db_target.
11408         (init_thread_db_ops): Delete.
11409         (_initialize_thread_db): Remove reference to init_thread_db_ops.
11410         * x86-linux-nat.c: Don't include "linux-nat.h".
11411         (super_post_startup_inferior): Delete.
11412         (x86_linux_nat_target::~x86_linux_nat_target): New.
11413         (x86_linux_child_post_startup_inferior)
11414         (x86_linux_read_description, x86_linux_enable_btrace)
11415         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
11416         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
11417         methods of x86_linux_nat_target.
11418         (x86_linux_create_target): Delete.  Bits folded ...
11419         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
11420         pointer.
11421         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
11422         (x86_linux_nat_target): New class.
11423         (x86_linux_create_target): Delete.
11424         (x86_linux_add_target): Now takes a linux_nat_target pointer.
11425         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
11426         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
11427         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
11428         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
11429         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
11430         make extern.
11431         (x86_use_watchpoints): Delete.
11432         * x86-nat.h: Include "breakpoint.h" and "target.h".
11433         (x86_use_watchpoints): Delete.
11434         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
11435         (x86_stopped_by_watchpoint, x86_stopped_data_address)
11436         (x86_insert_watchpoint, x86_remove_watchpoint)
11437         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
11438         (x86_stopped_by_hw_breakpoint): New declarations.
11439         (x86_nat_target): New template class.
11440
11441         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
11442         (the_ppc_linux_nat_target): New.
11443         (ppc_linux_fetch_inferior_registers)
11444         (ppc_linux_can_use_hw_breakpoint)
11445         (ppc_linux_region_ok_for_hw_watchpoint)
11446         (ppc_linux_ranged_break_num_registers)
11447         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
11448         (ppc_linux_insert_mask_watchpoint)
11449         (ppc_linux_remove_mask_watchpoint)
11450         (ppc_linux_can_accel_watchpoint_condition)
11451         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
11452         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
11453         (ppc_linux_watchpoint_addr_within_range)
11454         (ppc_linux_masked_watch_num_registers)
11455         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
11456         (ppc_linux_read_description): Refactor as methods of
11457         ppc_linux_nat_target.
11458         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
11459
11460         * procfs.c (procfs_xfer_partial): Delete forward declaration.
11461         (procfs_target): New class.
11462         (the_procfs_target): New.
11463         (procfs_target): Delete function.
11464         (procfs_auxv_parse, procfs_attach, procfs_detach)
11465         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
11466         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
11467         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
11468         (procfs_create_inferior, procfs_update_thread_list)
11469         (procfs_thread_alive, procfs_pid_to_str)
11470         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
11471         (procfs_stopped_data_address, procfs_insert_watchpoint)
11472         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
11473         (proc_find_memory_regions, procfs_info_proc)
11474         (procfs_make_note_section): Refactor as methods of procfs_target.
11475         (_initialize_procfs): Adjust.
11476         * sol-thread.c (sol_thread_target): New class.
11477         (sol_thread_ops): Now a sol_thread_target.
11478         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
11479         (sol_thread_fetch_registers, sol_thread_store_registers)
11480         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
11481         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
11482         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
11483         (init_sol_thread_ops): Delete.
11484         (_initialize_sol_thread): Adjust.  Remove references to
11485         init_sol_thread_ops and complete_target_initialization.
11486
11487         * windows-nat.c (windows_nat_target): New class.
11488         (windows_fetch_inferior_registers)
11489         (windows_store_inferior_registers, windows_resume, windows_wait)
11490         (windows_attach, windows_detach, windows_pid_to_exec_file)
11491         (windows_files_info, windows_create_inferior)
11492         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
11493         (windows_close, windows_pid_to_str, windows_xfer_partial)
11494         (windows_get_tib_address, windows_get_ada_task_ptid)
11495         (windows_thread_name, windows_thread_alive): Refactor as
11496         windows_nat_target methods.
11497         (do_initial_windows_stuff): Adjust.
11498         (windows_target): Delete function.
11499         (_initialize_windows_nat): Adjust.
11500
11501         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
11502         (darwin_mourn_inferior, darwin_kill_inferior)
11503         (darwin_create_inferior, darwin_attach, darwin_detach)
11504         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
11505         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
11506         (darwin_supports_multi_process): Refactor as darwin_nat_target
11507         methods.
11508         (darwin_resume_to, darwin_files_info): Delete.
11509         (_initialize_darwin_inferior): Rename to ...
11510         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
11511         * darwin-nat.h: Include "inf-child.h".
11512         (darwin_nat_target): New class.
11513         (darwin_complete_target): Delete.
11514         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
11515         (darwin_target): New.
11516         (i386_darwin_fetch_inferior_registers)
11517         (i386_darwin_store_inferior_registers): Refactor as methods of
11518         darwin_nat_target.
11519         (darwin_complete_target): Delete, with ...
11520         (_initialize_i386_darwin_nat): ... bits factored out here.
11521
11522         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
11523         (the_alpha_linux_nat_target): New.
11524         (alpha_linux_register_u_offset): Refactor as
11525         alpha_linux_nat_target method.
11526         (_initialize_alpha_linux_nat): Adjust.
11527         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
11528         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11529         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
11530         methods of linux_nat_trad_target.
11531         (linux_trad_target): Delete.
11532         * linux-nat-trad.h (linux_trad_target): Delete function.
11533         (linux_nat_trad_target): New class.
11534         * mips-linux-nat.c (mips_linux_nat_target): New class.
11535         (super_fetch_registers, super_store_registers, super_close):
11536         Delete.
11537         (the_mips_linux_nat_target): New.
11538         (mips64_linux_regsets_fetch_registers)
11539         (mips64_linux_regsets_store_registers)
11540         (mips64_linux_fetch_registers, mips64_linux_store_registers)
11541         (mips_linux_register_u_offset, mips_linux_read_description)
11542         (mips_linux_can_use_hw_breakpoint)
11543         (mips_linux_stopped_by_watchpoint)
11544         (mips_linux_stopped_data_address)
11545         (mips_linux_region_ok_for_hw_watchpoint)
11546         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
11547         (mips_linux_close): Refactor as methods of mips_linux_nat.
11548         (_initialize_mips_linux_nat): Adjust to C++ification.
11549
11550         * aix-thread.c (aix_thread_target): New class.
11551         (aix_thread_ops): Now an aix_thread_target.
11552         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
11553         (aix_thread_fetch_registers, aix_thread_store_registers)
11554         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
11555         (aix_thread_thread_alive, aix_thread_pid_to_str)
11556         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
11557         Refactor as methods of aix_thread_target.
11558         (init_aix_thread_ops): Delete.
11559         (_initialize_aix_thread): Remove references to init_aix_thread_ops
11560         and complete_target_initialization.
11561         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
11562         (rs6000_nat_target): New class.
11563         (the_rs6000_nat_target): New.
11564         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
11565         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
11566         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
11567         (super_create_inferior): Delete.
11568         (_initialize_rs6000_nat): Adjust to C++ification.
11569
11570         * arm-linux-nat.c (arm_linux_nat_target): New class.
11571         (the_arm_linux_nat_target): New.
11572         (arm_linux_fetch_inferior_registers)
11573         (arm_linux_store_inferior_registers, arm_linux_read_description)
11574         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
11575         (arm_linux_remove_hw_breakpoint)
11576         (arm_linux_region_ok_for_hw_watchpoint)
11577         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
11578         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
11579         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
11580         arm_linux_nat_target.
11581         (_initialize_arm_linux_nat): Adjust to C++ification.
11582
11583         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
11584         (the_aarch64_linux_nat_target): New.
11585         (aarch64_linux_fetch_inferior_registers)
11586         (aarch64_linux_store_inferior_registers)
11587         (aarch64_linux_child_post_startup_inferior)
11588         (aarch64_linux_read_description)
11589         (aarch64_linux_can_use_hw_breakpoint)
11590         (aarch64_linux_insert_hw_breakpoint)
11591         (aarch64_linux_remove_hw_breakpoint)
11592         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
11593         (aarch64_linux_region_ok_for_hw_watchpoint)
11594         (aarch64_linux_stopped_data_address)
11595         (aarch64_linux_stopped_by_watchpoint)
11596         (aarch64_linux_watchpoint_addr_within_range)
11597         (aarch64_linux_can_do_single_step): Refactor as methods of
11598         aarch64_linux_nat_target.
11599         (super_post_startup_inferior): Delete.
11600         (_initialize_aarch64_linux_nat): Adjust to C++ification.
11601
11602         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
11603         (the_hppa_linux_nat_target): New.
11604         (hppa_linux_fetch_inferior_registers)
11605         (hppa_linux_store_inferior_registers): Refactor as methods of
11606         hppa_linux_nat_target.
11607         (_initialize_hppa_linux_nat): Adjust to C++ification.
11608
11609         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
11610         (the_ia64_linux_nat_target): New.
11611         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
11612         (ia64_linux_stopped_data_address)
11613         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
11614         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
11615         ia64_linux_nat_target methods.
11616         (super_xfer_partial): Delete.
11617         (_initialize_ia64_linux_nat): Adjust to C++ification.
11618
11619         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
11620         (the_m32r_linux_nat_target): New.
11621         (m32r_linux_fetch_inferior_registers)
11622         (m32r_linux_store_inferior_registers): Refactor as
11623         m32r_linux_nat_target methods.
11624         (_initialize_m32r_linux_nat): Adjust to C++ification.
11625
11626         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
11627         (the_m68k_linux_nat_target): New.
11628         (m68k_linux_fetch_inferior_registers)
11629         (m68k_linux_store_inferior_registers): Refactor as
11630         m68k_linux_nat_target methods.
11631         (_initialize_m68k_linux_nat): Adjust to C++ification.
11632
11633         * s390-linux-nat.c (s390_linux_nat_target): New class.
11634         (the_s390_linux_nat_target): New.
11635         (s390_linux_fetch_inferior_registers)
11636         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
11637         (s390_insert_watchpoint, s390_remove_watchpoint)
11638         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
11639         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
11640         (s390_auxv_parse, s390_read_description): Refactor as methods of
11641         s390_linux_nat_target.
11642         (_initialize_s390_nat): Adjust to C++ification.
11643
11644         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
11645         (the_sparc_linux_nat_target): New.
11646         (_initialize_sparc_linux_nat): Adjust to C++ification.
11647         * sparc-nat.c (sparc_fetch_inferior_registers)
11648         (sparc_store_inferior_registers): Remove target_ops parameter.
11649         * sparc-nat.h (sparc_fetch_inferior_registers)
11650         (sparc_store_inferior_registers): Remove target_ops parameter.
11651         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
11652         (the_sparc64_linux_nat_target): New.
11653         (_initialize_sparc64_linux_nat): Adjust to C++ification.
11654
11655         * spu-linux-nat.c (spu_linux_nat_target): New class.
11656         (the_spu_linux_nat_target): New.
11657         (spu_child_post_startup_inferior, spu_child_post_attach)
11658         (spu_child_wait, spu_fetch_inferior_registers)
11659         (spu_store_inferior_registers, spu_xfer_partial)
11660         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
11661         methods.
11662         (_initialize_spu_nat): Adjust to C++ification.
11663
11664         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
11665         (the_tilegx_linux_nat_target): New.
11666         (fetch_inferior_registers, store_inferior_registers):
11667         Refactor as methods.
11668         (_initialize_tile_linux_nat): Adjust to C++ification.
11669
11670         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
11671         (the_xtensa_linux_nat_target): New.
11672         (xtensa_linux_fetch_inferior_registers)
11673         (xtensa_linux_store_inferior_registers): Refactor as
11674         xtensa_linux_nat_target methods.
11675         (_initialize_xtensa_linux_nat): Adjust to C++ification.
11676
11677         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
11678         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
11679         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
11680         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
11681         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
11682         (fbsd_stopped_by_sw_breakpoint)
11683         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
11684         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
11685         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
11686         (fbsd_post_startup_inferior, fbsd_post_attach)
11687         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
11688         (fbsd_set_syscall_catchpoint)
11689         (super_xfer_partial, super_resume, super_wait)
11690         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
11691         (fbsd_handle_debug_trap): Remove target_ops parameter.
11692         (fbsd_nat_add_target): Delete.
11693         * fbsd-nat.h: Include "inf-ptrace.h".
11694         (fbsd_nat_add_target): Delete.
11695         (USE_SIGTRAP_SIGINFO): Define.
11696         (fbsd_nat_target): New class.
11697
11698         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
11699         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
11700         (amd64bsd_target): Delete.
11701         * amd64-bsd-nat.h: New file.
11702         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
11703         "x86-bsd-nat.h".
11704         (amd64_fbsd_nat_target): New class.
11705         (the_amd64_fbsd_nat_target): New.
11706         (amd64fbsd_read_description): Refactor as method of
11707         amd64_fbsd_nat_target.
11708         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11709         (_initialize_amd64fbsd_nat): Adjust to C++ification.
11710         * amd64-nat.h (amd64bsd_target): Delete function declaration.
11711         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
11712         (i386bsd_store_inferior_registers): Remove target_ops parameter.
11713         (i386bsd_target): Delete.
11714         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
11715         (i386bsd_fetch_inferior_registers)
11716         (i386bsd_store_inferior_registers): Declare.
11717         (i386_bsd_nat_target): New class.
11718         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
11719         (the_i386_fbsd_nat_target): New.
11720         (i386fbsd_resume, i386fbsd_read_description): Refactor as
11721         i386_fbsd_nat_target methods.
11722         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11723         (_initialize_i386fbsd_nat): Adjust to C++ification.
11724         * x86-bsd-nat.c (super_mourn_inferior): Delete.
11725         (x86bsd_mourn_inferior, x86bsd_target): Delete.
11726         (_initialize_x86_bsd_nat): Adjust to C++ification.
11727         * x86-bsd-nat.h: Include "x86-nat.h".
11728         (x86bsd_target): Delete declaration.
11729         (x86bsd_nat_target): New class.
11730
11731         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
11732         (the_aarch64_fbsd_nat_target): New.
11733         (aarch64_fbsd_fetch_inferior_registers)
11734         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
11735         aarch64_fbsd_nat_target.
11736         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
11737         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
11738         (the_alpha_bsd_nat_target): New.
11739         (alphabsd_fetch_inferior_registers)
11740         (alphabsd_store_inferior_registers): Refactor as
11741         alpha_bsd_nat_target methods.
11742         (_initialize_alphabsd_nat): Refactor as methods of
11743         alpha_bsd_nat_target.
11744         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
11745         (the_amd64_nbsd_nat_target): New.
11746         (_initialize_amd64nbsd_nat): Adjust to C++ification.
11747         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
11748         (the_amd64_obsd_nat_target): New.
11749         (_initialize_amd64obsd_nat): Adjust to C++ification.
11750         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
11751         (the_arm_fbsd_nat_target): New.
11752         (arm_fbsd_fetch_inferior_registers)
11753         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
11754         (_initialize_arm_fbsd_nat): Refactor as methods of
11755         arm_fbsd_nat_target.
11756         (_initialize_arm_fbsd_nat): Adjust to C++ification.
11757         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
11758         (the_arm_netbsd_nat_target): New.
11759         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
11760         arm_netbsd_nat_target.
11761         (_initialize_arm_netbsd_nat): Adjust to C++ification.
11762         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
11763         (the_hppa_nbsd_nat_target): New.
11764         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
11765         hppa_nbsd_nat_target methods.
11766         (_initialize_hppanbsd_nat): Adjust to C++ification.
11767         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
11768         (the_hppa_obsd_nat_target): New.
11769         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
11770         methods of hppa_obsd_nat_target.
11771         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
11772         add_target.
11773         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
11774         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
11775         add_target.
11776         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
11777         (_initialize_i386obsd_nat): Use add_target.
11778         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
11779         (the_m68k_bsd_nat_target): New.
11780         (m68kbsd_fetch_inferior_registers)
11781         (m68kbsd_store_inferior_registers): Refactor as methods of
11782         m68k_bsd_nat_target.
11783         (_initialize_m68kbsd_nat): Adjust to C++ification.
11784         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
11785         (the_mips_fbsd_nat_target): New.
11786         (mips_fbsd_fetch_inferior_registers)
11787         (mips_fbsd_store_inferior_registers): Refactor as methods of
11788         mips_fbsd_nat_target.
11789         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
11790         add_target.
11791         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
11792         (the_mips_nbsd_nat_target): New.
11793         (mipsnbsd_fetch_inferior_registers)
11794         (mipsnbsd_store_inferior_registers): Refactor as methods of
11795         mips_nbsd_nat_target.
11796         (_initialize_mipsnbsd_nat): Adjust to C++ification.
11797         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
11798         (the_mips64_obsd_nat_target): New.
11799         (mips64obsd_fetch_inferior_registers)
11800         (mips64obsd_store_inferior_registers): Refactor as methods of
11801         mips64_obsd_nat_target.
11802         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
11803         add_target.
11804         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
11805         nbsd_nat_target.
11806         * nbsd-nat.h: Include "inf-ptrace.h".
11807         (nbsd_nat_target): New class.
11808         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
11809         (obsd_wait): Refactor as methods of obsd_nat_target.
11810         (obsd_add_target): Delete.
11811         * obsd-nat.h: Include "inf-ptrace.h".
11812         (obsd_nat_target): New class.
11813         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
11814         (the_ppc_fbsd_nat_target): New.
11815         (ppcfbsd_fetch_inferior_registers)
11816         (ppcfbsd_store_inferior_registers): Refactor as methods of
11817         ppc_fbsd_nat_target.
11818         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
11819         add_target.
11820         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
11821         (the_ppc_nbsd_nat_target): New.
11822         (ppcnbsd_fetch_inferior_registers)
11823         (ppcnbsd_store_inferior_registers): Refactor as methods of
11824         ppc_nbsd_nat_target.
11825         (_initialize_ppcnbsd_nat): Adjust to C++ification.
11826         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
11827         (the_ppc_obsd_nat_target): New.
11828         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
11829         methods of ppc_obsd_nat_target.
11830         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
11831         add_target.
11832         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
11833         (the_sh_nbsd_nat_target): New.
11834         (shnbsd_fetch_inferior_registers)
11835         (shnbsd_store_inferior_registers): Refactor as methods of
11836         sh_nbsd_nat_target.
11837         (_initialize_shnbsd_nat): Adjust to C++ification.
11838         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
11839         (inf_ptrace_xfer_partial): Delete.
11840         (sparc_xfer_partial, sparc_target): Delete.
11841         * sparc-nat.h (sparc_fetch_inferior_registers)
11842         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
11843         (sparc_target): Delete function declaration.
11844         (sparc_target): New template class.
11845         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
11846         (_initialize_sparcnbsd_nat): Adjust to C++ification.
11847         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
11848         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
11849         add_target.
11850         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
11851         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
11852         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
11853         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
11854         add_target.
11855         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
11856         (the_vax_bsd_nat_target): New.
11857         (vaxbsd_fetch_inferior_registers)
11858         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
11859         methods.
11860         (_initialize_vaxbsd_nat): Adjust to C++ification.
11861
11862         * bsd-kvm.c (bsd_kvm_target): New class.
11863         (bsd_kvm_ops): Now a bsd_kvm_target.
11864         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
11865         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
11866         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
11867         bsd_kvm_target.
11868         (bsd_kvm_return_one): Delete.
11869         (bsd_kvm_add_target): Adjust to C++ification.
11870
11871         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
11872         (nto_procfs_target_procfs): New classes.
11873         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
11874         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
11875         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
11876         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
11877         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
11878         (procfs_remove_hw_breakpoint, procfs_resume)
11879         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
11880         (procfs_kill_inferior, procfs_store_registers)
11881         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
11882         as methods of nto_procfs_target.
11883         (nto_procfs_ops): Now an nto_procfs_target_procfs.
11884         (nto_native_ops): Delete.
11885         (procfs_open, procfs_native_open): Delete.
11886         (nto_native_ops): Now an nto_procfs_target_native.
11887         (init_procfs_targets): Adjust to C++ification.
11888         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
11889         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
11890         Refactor as methods of nto_procfs_target.
11891
11892         * go32-nat.c (go32_nat_target): New class.
11893         (the_go32_nat_target): New.
11894         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
11895         (go32_store_registers, go32_xfer_partial, go32_files_info)
11896         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
11897         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
11898         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
11899         (go32_pid_to_str): Refactor as methods of go32_nat_target.
11900         (go32_target): Delete.
11901         (_initialize_go32_nat): Adjust to C++ification.
11902
11903         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
11904         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
11905         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
11906         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
11907         gnu_nat_target.
11908         (gnu_target): Delete.
11909         * gnu-nat.h (gnu_target): Delete.
11910         (gnu_nat_target): New class.
11911         * i386-gnu-nat.c (gnu_base_target): New.
11912         (i386_gnu_nat_target): New class.
11913         (the_i386_gnu_nat_target): New.
11914         (_initialize_i386gnu_nat): Adjust to C++ification.
11915
11916 2018-05-02  Pedro Alves  <palves@redhat.com>
11917
11918         * bfd-target.c (target_bfd_xclose): Rename to ...
11919         (target_bfd_close): ... this.
11920         (target_bfd_reopen): Adjust.
11921         * target.c (target_close): Remove references to to_xclose.
11922         * target.h (target_ops::to_xclose): Delete.
11923         (target_ops::to_close): Update comments.
11924
11925 2018-05-02  Pedro Alves  <palves@redhat.com>
11926
11927         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
11928         "linux-nat.h".
11929         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
11930         * inf-ptrace.c (inf_ptrace_register_u_offset)
11931         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11932         (inf_ptrace_store_register, inf_ptrace_store_registers)
11933         (inf_ptrace_trad_target): Move to ...
11934         * linux-nat-trad.c: ... this new file.
11935         * linux-nat-trad.h: New file.
11936         * linux-nat.c (linux_target_install_ops): Make extern.
11937         (linux_trad_target): Delete.
11938         * linux-nat.h (linux_trad_target): Delete declaration.
11939         (linux_target_install_ops): Declare.
11940         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
11941         "linux-nat.h".
11942
11943 2018-05-02  Pedro Alves  <palves@redhat.com>
11944
11945         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11946         procfs_target/add_target here.
11947         * procfs.c (procfs_target): Make static.
11948         (_initialize_procfs): Call add_target here.
11949         * procfs.h (struct target_ops): Remove forward declaration.
11950         (procfs_target): Remove declaration.
11951         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
11952
11953 2018-05-02  Pedro Alves  <palves@redhat.com>
11954
11955         * procfs.c (procfs_stopped_by_watchpoint)
11956         (procfs_insert_watchpoint, procfs_remove_watchpoint)
11957         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
11958         Forward declare.
11959         (procfs_use_watchpoints): Delete, move contents...
11960         (procfs_target): ... here.
11961         * procfs.h (procfs_use_watchpoints): Delete declaration.
11962         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11963         procfs_use_watchpoints.
11964         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
11965         procfs_use_watchpoints.
11966
11967 2018-05-02  Tom Tromey  <tom@tromey.com>
11968
11969         PR python/20084:
11970         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
11971         and var_zuinteger_unlimited.
11972         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
11973         and PARAM_ZUINTEGER_UNLIMITED.
11974         (set_parameter_value): Handle var_zuinteger and
11975         var_zuinteger_unlimited.
11976         (add_setshow_generic): Likewise.
11977         (parmpy_init): Likewise.
11978
11979 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
11980
11981         PR rust/23124
11982         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
11983         pointer is not null before dereferencing it.
11984
11985 2018-04-30  Tom Tromey  <tom@tromey.com>
11986
11987         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
11988         is_mi_like_p.
11989
11990 2018-04-30  Tom Tromey  <tom@tromey.com>
11991
11992         * breakpoint.c (mention): Remove use of is_mi_like_p.
11993         (print_mention_ranged_breakpoint): Likewise.
11994         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
11995         of is_mi_like_p.
11996
11997 2018-04-30  Tom Tromey  <tom@tromey.com>
11998
11999         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
12000
12001 2018-04-30  Tom Tromey  <tom@tromey.com>
12002
12003         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
12004         (info_spu_event_command): Remove some uses of is_mi_like_p.
12005
12006 2018-04-30  Tom Tromey  <tom@tromey.com>
12007
12008         * python/py-framefilter.c (py_print_single_arg)
12009         (enumerate_locals, py_print_args, py_print_frame): Remove some
12010         uses of is_mi_like_p.
12011
12012 2018-04-30  Tom Tromey  <tom@tromey.com>
12013
12014         * ui-out.c: Update.
12015         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
12016         * ui-out.h (ui_out::is_mi_like_p): Now const.
12017         (ui_out::do_is_mi_like_p): Now const.
12018         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
12019
12020 2018-04-30  Tom Tromey  <tom@tromey.com>
12021
12022         * varobj.c (varobj_set_visualizer): Use new_reference.
12023         * python/python.c (gdbpy_decode_line): Use new_reference.
12024         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
12025         new_reference.
12026
12027 2018-04-30  Tom Tromey  <tom@tromey.com>
12028
12029         * varobj.c (install_new_value): Use new_reference.
12030         * value.h (value_incref): Return void.  Swap intro comment with
12031         value_decref.
12032         * value.c (set_value_parent): Use new_reference.
12033         (value_incref): Return void.  Update intro comment.
12034         (release_value): Use new_reference.
12035         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
12036
12037 2018-04-30  Tom Tromey  <tom@tromey.com>
12038
12039         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
12040         * gdb_bfd.h (new_bfd_ref): Remove.
12041         (gdb_bfd_open): Update comment.
12042         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
12043         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
12044         (gdb_bfd_fdopenr): Use new_reference.
12045         * exec.c (exec_file_attach): Use new_reference.
12046
12047 2018-04-30  Tom Tromey  <tom@tromey.com>
12048
12049         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
12050         method.
12051
12052 2018-04-30  Tom Tromey  <tom@tromey.com>
12053
12054         * jit.c (jit_read_code_entry): Use type_align.
12055         * i386-tdep.c (i386_gdbarch_init): Don't call
12056         set_gdbarch_long_long_align_bit.
12057         * gdbarch.sh: Remove long_long_align_bit.
12058         * gdbarch.c, gdbarch.h: Rebuild.
12059         * arc-tdep.c (arc_type_align): New function.
12060         (arc_gdbarch_init): Use arc_type_align.  Don't call
12061         set_gdbarch_long_long_align_bit.
12062
12063 2018-04-30  Tom Tromey  <tom@tromey.com>
12064
12065         * rust-lang.c (rust_type_alignment): Remove.
12066         (rust_composite_type): Use type_align.
12067
12068 2018-04-30  Tom Tromey  <tom@tromey.com>
12069
12070         * NEWS: Mention Type.align.
12071         * python/py-type.c (typy_get_alignof): New function.
12072         (type_object_getset): Add "alignof".
12073
12074 2018-04-30  Tom Tromey  <tom@tromey.com>
12075
12076         PR exp/17095:
12077         * NEWS: Update.
12078         * std-operator.def (UNOP_ALIGNOF): New operator.
12079         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
12080         New.
12081         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
12082         * c-lang.c (c_op_print_tab): Add alignof.
12083         * c-exp.y (ALIGNOF): New token.
12084         (exp): Add "ALIGNOF" production.
12085         (ident_tokens): Add _Alignof and alignof.
12086
12087 2018-04-30  Tom Tromey  <tom@tromey.com>
12088
12089         * i386-tdep.c (i386_type_align): New function.
12090         (i386_gdbarch_init): Update.
12091         * gdbarch.sh (type_align): New method.
12092         * gdbarch.c, gdbarch.h: Rebuild.
12093         * arch-utils.h (default_type_align): Declare.
12094         * arch-utils.c (default_type_align): New function.
12095         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
12096         (struct type) <align_log2>: New field.
12097         <instance_flags>: Now a bitfield.
12098         (TYPE_RAW_ALIGN): New macro.
12099         (type_align, type_raw_align, set_type_align): Declare.
12100         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
12101         functions.
12102         * dwarf2read.c (quirk_rust_enum): Set type alignment.
12103         (get_alignment, maybe_set_alignment): New functions.
12104         (read_structure_type, read_enumeration_type, read_array_type)
12105         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
12106         (read_subrange_type, read_base_type): Set type alignment.
12107
12108 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
12109
12110         * dwarf2read.c (read_index_from_section): Use bool.
12111
12112 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
12113
12114         PR gdb/22950
12115         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
12116         with #ifdef.
12117
12118 2018-04-29  John Reiser  <jreiser@BitWagon.com>
12119
12120         PR build/22873
12121         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
12122         last step, and do it atomically.
12123
12124 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
12125
12126         * compile/compile-c-types.c (convert_int, convert_float):
12127         Update for C FE v1.
12128
12129 2018-04-27  Tom Tromey  <tom@tromey.com>
12130
12131         PR rust/22545:
12132         * rust-lang.c (rust_inclusive_range_type_p): New function.
12133         (rust_range): Handle inclusive ranges.
12134         (rust_compute_range): Likewise.
12135         * rust-exp.y (struct rust_op) <inclusive>: New field.
12136         (DOTDOTEQ): New constant.
12137         (range_expr): Add "..=" productions.
12138         (operator_tokens): Add "..=" token.
12139         (ast_range): Add "inclusive" parameter.
12140         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
12141         ranges.
12142         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
12143         bounds values.
12144         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
12145         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
12146         Update comments.
12147         * expprint.c (print_subexp_standard): Handle new bounds values.
12148         (dump_subexp_body_standard): Likewise.
12149
12150 2018-04-27  Tom Tromey  <tom@tromey.com>
12151
12152         * configure: Rebuild.
12153         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
12154         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
12155         "OVERRIDE".
12156         (class symbol_needs_eval_context): Likewise.
12157         * dwarf2read.c (mock_mapped_index::symbol_name_count)
12158         (mock_mapped_index::symbol_name_at): Use "override".  Remove
12159         "virtual".
12160         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
12161         "override".
12162         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
12163         * aarch64-tdep.c (instruction_reader::read): Use "override".
12164         (instruction_reader_test::read): Likewise.
12165         * arm-tdep.c (instruction_reader::read): Use "override".
12166         (instruction_reader_thumb::read): Likewise.
12167
12168 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
12169
12170         PR remote/9665
12171         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
12172         instead of remote_send.
12173         (remote_send): Remove.
12174
12175 2018-04-26  Pedro Alves  <palves@redhat.com>
12176
12177         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
12178         find_function_start_sal instead of find_pc_line.
12179
12180 2018-04-26  Pedro Alves  <palves@redhat.com>
12181
12182         * breakpoint.c (set_breakpoint_location_function): Handle
12183         mst_data_gnu_ifunc.
12184         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
12185         * elfread.c (elf_symtab_read): Give data symbols with
12186         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
12187         (elf_rel_plt_read): Update comment.
12188         * linespec.c (convert_linespec_to_sals): Handle
12189         mst_data_gnu_ifunc.
12190         (minsym_found): Handle mst_data_gnu_ifunc.
12191         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
12192         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
12193         * parse.c (find_minsym_type_and_address): Handle
12194         mst_data_gnu_ifunc.
12195         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
12196         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
12197         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
12198         comment.
12199         <mst_data_gnu_ifunc>: New enumerator.
12200
12201 2018-04-26  Pedro Alves  <palves@redhat.com>
12202
12203         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
12204         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
12205         'want_trampoline' parameter by a lookup_msym_prefer parameter.
12206         Handle it.
12207         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
12208         (lookup_minimal_symbol_by_pc): Adjust.
12209         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
12210         (lookup_solib_trampoline_symbol_by_pc): Adjust.
12211         * minsyms.h (lookup_msym_prefer): New enum.
12212         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
12213         parameter by a lookup_msym_prefer parameter.
12214
12215 2018-04-26  Pedro Alves  <palves@redhat.com>
12216
12217         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
12218         ends in "@plt" instead of looking at the symbol's section.
12219
12220 2018-04-26  Pedro Alves  <palves@redhat.com>
12221
12222         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
12223         all references.
12224         (find_pc_partial_function_gnu_ifunc): Rename to ...
12225         (find_pc_partial_function): ... this, and remove references to
12226         'is_gnu_ifunc_p'.
12227         (find_pc_partial_function): Delete old implementation.
12228         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
12229
12230 2018-04-26  Pedro Alves  <palves@redhat.com>
12231
12232         * linespec.c (struct bound_minimal_symbol_search_key): New.
12233         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
12234         skip first line if we found a GNU ifunc minimal symbol by name.
12235         (compare_msymbols): Change parameters to work with a destructured
12236         lhs minsym.
12237         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
12238         functions.
12239
12240 2018-04-26  Pedro Alves  <palves@redhat.com>
12241
12242         * breakpoint.c (set_breakpoint_location_function): Don't resolve
12243         ifunc targets here.  Instead, if we have an ifunc minsym, use its
12244         address/name.
12245         (add_location_to_breakpoint): Store the minsym and the objfile in
12246         the breakpoint location.
12247         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
12248         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
12249         Record the minsym in the sal.
12250         * symtab.h (symtab_and_line) <msymbol>: New field.
12251
12252 2018-04-26  Pedro Alves  <palves@redhat.com>
12253
12254         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
12255         unless we actually resolved the ifunc.
12256
12257 2018-04-26  Pedro Alves  <palves@redhat.com>
12258
12259         * c-exp.y (variable production): Prefer ifunc minsyms over
12260         regular function symbols.
12261         * symtab.c (find_gnu_ifunc): New function.
12262         * minsyms.h (lookup_msym_prefer): New enum.
12263         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
12264         parameter by a lookup_msym_prefer parameter.
12265         * symtab.h (find_gnu_ifunc): New declaration.
12266
12267 2018-04-26  Pedro Alves  <palves@redhat.com>
12268
12269         * blockframe.c (find_gnu_ifunc_target_type): New function.
12270         (find_function_type): New.
12271         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
12272         return a value with a memory address.
12273         (eval_call): For calls to GNU ifunc functions, try to find the
12274         type of the target function from the type that the resolver
12275         returns.
12276         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
12277         symbols.
12278         * infcall.c (find_function_return_type): Delete.
12279         (find_function_addr): Add 'function_type' parameter.  For calls to
12280         GNU ifunc functions, try to find the type of the target function
12281         from the type that the resolver returns, and return it via
12282         FUNCTION_TYPE.
12283         (call_function_by_hand_dummy): Adjust to use the function type
12284         returned by find_function_addr.
12285         (find_function_addr): Add 'function_type' parameter and move
12286         description here.
12287         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
12288         declarations.
12289
12290 2018-04-26  Pedro Alves  <palves@redhat.com>
12291
12292         * c-exp.y (variable production): Skip finding an alias for ifunc
12293         symbols.
12294
12295 2018-04-26  Pedro Alves  <palves@redhat.com>
12296
12297         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
12298
12299 2018-04-25  Pedro Alves  <palves@redhat.com>
12300
12301         * infcmd.c (kill_command): Print the pid as string, not the whole
12302         thread's ptid.  Add comment.  s/has been killed/killed/ in output
12303         message.
12304         * remote.c (remote_detach_1): Print the pid as string, not the
12305         whole thread's ptid.
12306
12307 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
12308             Sergio Durigan Junior  <sergiodj@redhat.com>
12309             Pedro Alves  <palves@redhat.com>
12310
12311         * infcmd.c (kill_command): Print message when inferior has
12312         been killed.
12313         * inferior.c (print_inferior_events): Remove 'static'.  Set as
12314         '1'.
12315         (add_inferior): Improve message printed when
12316         'print_inferior_events' is on.
12317         (exit_inferior): Remove message printed when
12318         'print_inferior_events' is on.
12319         (detach_inferior): Improve message printed when
12320         'print_inferior_events' is on.
12321         (initialize_inferiors): Use 'add_inferior_silent' to set
12322         'current_inferior_'.
12323         * inferior.h (print_inferior_events): Declare here as
12324         'extern'.
12325         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
12326         '[Detaching...]' messages when 'print_inferior_events' is on.
12327         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
12328         as prefix/suffix for messages.  Remove periods.  Fix erroneous
12329         'Detaching after fork from child...', replace it by '... from
12330         parent...'.
12331         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
12332         prefix/suffix when printing 'Detaching...' messages.  Print
12333         them when 'print_inferior_events' is on.
12334         * remote.c (remote_detach_1): Print message when detaching
12335         from inferior and '!is_fork_parent'.
12336
12337 2018-04-24  Tom Tromey  <tom@tromey.com>
12338
12339         * cli-out.h: Reindent.
12340
12341 2018-04-24  Tom Tromey  <tom@tromey.com>
12342
12343         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
12344         (cli_ui_out::do_field_string): Use fputs_filtered.
12345         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
12346
12347 2018-04-23  Tom Tromey  <tom@tromey.com>
12348
12349         * guile/scm-frame.c (gdbscm_frame_read_var): Use
12350         gdb::unique_xmalloc_ptr.
12351
12352 2018-04-23  Tom Tromey  <tom@tromey.com>
12353
12354         * configure: Rebuild.
12355
12356 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
12357
12358         PR gdb/23095
12359         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
12360         prepare_for_testing.  Set normal_bp to r_debug_state if target
12361         is bsd.
12362
12363 2018-04-21  Pedro Alves  <palves@redhat.com>
12364             Rajendra SY  <rajendra.sy@gmail.com>
12365
12366         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
12367         * remote.c (extended_remote_attach): In all-stop mode, mark the
12368         thread as executing.
12369
12370 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
12371
12372         * thread.c (thread_apply_all_command): Fix comment.
12373         (thread_command): Fix comment.
12374
12375 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
12376
12377         * common/tdesc.h (tdesc_create_feature): Remove xml filename
12378         parameter.
12379         * features/aarch64-core.c (create_feature_aarch64_core):
12380         Regenerate.
12381         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
12382         Likewise.
12383         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
12384         Likewise.
12385         * features/i386/32bit-avx512.c
12386         (create_feature_i386_32bit_avx512): Likewise.
12387         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
12388         Likewise.
12389         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
12390         Likewise.
12391         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
12392         Likewise.
12393         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
12394         Likewise.
12395         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
12396         Likewise.
12397         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
12398         Likewise.
12399         * features/i386/64bit-avx512.c
12400         (create_feature_i386_64bit_avx512): Likewise.
12401         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
12402         Likewise.
12403         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
12404         Likewise.
12405         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
12406         Likewise.
12407         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
12408         Likewise.
12409         * features/i386/64bit-segments.c
12410         (create_feature_i386_64bit_segments): Likewise.
12411         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
12412         Likewise.
12413         * features/i386/x32-core.c
12414         (create_feature_i386_x32_core): Likewise.
12415         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
12416         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
12417         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
12418         * target-descriptions.c: In generated code, don't pass xml
12419         filename.
12420
12421 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12422
12423         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
12424         (print_xml_feature::visit_post): Likewise.
12425         (print_xml_feature::visit): Likewise.
12426         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
12427         (print_xml_feature): Add new class.
12428         * regformats/regdat.sh: Null xmltarget on feature targets.
12429         * target-descriptions.c (struct target_desc): Add xmltarget.
12430         (maintenance_check_tdesc_xml_convert): Add unittest function.
12431         (tdesc_get_features_xml): Add function to get xml.
12432         (maintenance_check_xml_descriptions): Test xml generation.
12433         * xml-tdesc.c (string_read_description_xml): Add function.
12434         * xml-tdesc.h (string_read_description_xml): Add declaration.
12435
12436 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12437
12438         * features/Makefile: Add feature marker to targets with new style
12439         target descriptions.
12440         * regformats/aarch64.dat: Regenerate.
12441         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
12442         * regformats/i386/amd64-avx-linux.dat: Likewise.
12443         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
12444         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
12445         * regformats/i386/amd64-linux.dat: Likewise.
12446         * regformats/i386/amd64-mpx-linux.dat: Likewise.
12447         * regformats/i386/amd64.dat: Likewise.
12448         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
12449         * regformats/i386/i386-avx-linux.dat: Likewise.
12450         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
12451         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
12452         * regformats/i386/i386-linux.dat: Likewise.
12453         * regformats/i386/i386-mmx-linux.dat: Likewise.
12454         * regformats/i386/i386-mpx-linux.dat: Likewise.
12455         * regformats/i386/i386.dat: Likewise.
12456         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
12457         * regformats/i386/x32-avx-linux.dat: Likewise.
12458         * regformats/i386/x32-linux.dat: Likewise.
12459         * regformats/tic6x-c62x-linux.dat: Likewise.
12460         * regformats/tic6x-c64x-linux.dat: Likewise.
12461         * regformats/tic6x-c64xp-linux.dat: Likewise.
12462         * regformats/regdat.sh: Parse feature marker.
12463
12464 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12465
12466         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
12467         (tdesc_osabi_name): Likewise.
12468         * target-descriptions.c (tdesc_architecture_name): Add new
12469         function.
12470         (tdesc_osabi_name): Likewise.
12471
12472 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12473
12474         * common/tdesc.c (tdesc_predefined_type): Move to here.
12475         (tdesc_named_type): Likewise.
12476         (tdesc_create_vector): Likewise.
12477         (tdesc_create_struct): Likewise.
12478         (tdesc_set_struct_size): Likewise.
12479         (tdesc_create_union): Likewise.
12480         (tdesc_create_flags): Likewise.
12481         (tdesc_create_enum): Likewise.
12482         (tdesc_add_field): Likewise.
12483         (tdesc_add_typed_bitfield): Likewise.
12484         (tdesc_add_bitfield): Likewise.
12485         (tdesc_add_flag): Likewise.
12486         (tdesc_add_enum_value): Likewise.
12487         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
12488         (struct tdesc_type_vector): Likewise.
12489         (struct tdesc_type_field): Likewise.
12490         (struct tdesc_type_with_fields): Likewise.
12491         (tdesc_create_enum): Add declaration.
12492         (tdesc_add_typed_bitfield): Likewise.
12493         (tdesc_add_enum_value): Likewise.
12494         * target-descriptions.c (tdesc_type_field): Move from here.
12495         (tdesc_type_builtin): Likewise.
12496         (tdesc_type_vector): Likewise.
12497         (tdesc_type_with_fields): Likewise.
12498         (tdesc_predefined_types): Likewise.
12499         (tdesc_named_type): Likewise.
12500         (tdesc_create_vector): Likewise.
12501         (tdesc_create_struct): Likewise.
12502         (tdesc_set_struct_size): Likewise.
12503         (tdesc_create_union): Likewise.
12504         (tdesc_create_flags): Likewise.
12505         (tdesc_create_enum): Likewise.
12506         (tdesc_add_field): Likewise.
12507         (tdesc_add_typed_bitfield): Likewise.
12508         (tdesc_add_bitfield): Likewise.
12509         (tdesc_add_flag): Likewise.
12510         (tdesc_add_enum_value): Likewise.
12511         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
12512         (tdesc_add_typed_bitfield): Likewise.
12513         (tdesc_add_enum_value): Likewise.
12514
12515 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12516
12517         * common/tdesc.c (tdesc_feature::accept): Move to here.
12518         (tdesc_feature::operator==): Likewise.
12519         (tdesc_create_reg): Likewise.
12520         * common/tdesc.h (tdesc_type_kind): Likewise.
12521         (struct tdesc_type): Likewise.
12522         (struct tdesc_feature): Likewise.
12523         * regformats/regdat.sh: Create a feature.
12524         * target-descriptions.c (tdesc_type_kind): Move from here.
12525         (tdesc_type): Likewise.
12526         (tdesc_type_up): Likewise.
12527         (tdesc_feature): Likewise.
12528         (tdesc_create_reg): Likewise.
12529
12530 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12531
12532         * Makefile.in: Add arch/tdesc.c
12533         * common/tdesc.c: New file.
12534         * common/tdesc.h (tdesc_element_visitor): Move to here.
12535         (tdesc_element): Likewise.
12536         (tdesc_reg): Likewise.
12537         (tdesc_reg_up): Likewise.
12538         * regformats/regdef.h (reg): Add offset to constructors.
12539         * target-descriptions.c (tdesc_element_visitor): Move from here.
12540         (tdesc_element): Likewise.
12541         (tdesc_reg): Likewise.
12542         (tdesc_reg_up): Likewise.
12543
12544 2018-04-17  Tom Tromey  <tom@tromey.com>
12545
12546         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
12547         discriminant field.
12548
12549 2018-04-17  Tom Tromey  <tom@tromey.com>
12550
12551         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
12552
12553 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12554
12555         * symtab.c (print_symbol_info): Skip printing filename and line
12556         number when `last' is NULL.
12557         (symtab_symbol_info): Use empty string instead of NULL for first
12558         invocation of print_symbol_info.
12559         (rbreak_command): Pass NULL to `last' parameter of
12560         print_symbol_info.
12561
12562 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
12563
12564         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
12565         instead of nullptr.
12566
12567 2018-04-16  Pedro Alves  <palves@redhat.com>
12568
12569         * MAINTAINERS (sh): Remove.
12570         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
12571         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
12572         (ALLDEPFILES): Remove sh64-tdep.c.
12573         * NEWS: Mentions that support for SH-5/SH64 is removed.
12574         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
12575         (sh*-*-openbsd*): Ditto.
12576         (sh64-*-elf*): Remove.
12577         (sh*): Remove.
12578         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
12579         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
12580         * sh-tdep.c: No longer include "sh64-tdep.h".
12581         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
12582         * sh64-tdep.c, sh64-tdep.h: Remove files.
12583
12584 2018-04-16  Pedro Alves  <palves@redhat.com>
12585
12586         * MAINTAINERS: Remove m88k.
12587         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
12588         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
12589         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
12590         * NEWS: Mention that support for m88k was removed.
12591         * configure.host (m88*-*-*): Remove support.
12592         * configure.nat (m88k-*-*): Remove support.
12593         * configure.tgt (m88*-*-openbsd*): Remove.
12594         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
12595
12596 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
12597
12598         * configure.tgt (x86_tobjs): New variable.
12599         (amd64_tobjs, i386_tobjs): Use it.
12600
12601 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12602
12603         * symtab.c (print_symbol_info): Precede the symbol definition by
12604         the line number when available.
12605         * NEWS: Advertise this enhancement.
12606
12607 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12608
12609         * NEWS (New options): announce set/show record btrace cpu.
12610         * btrace.c: Include record-btrace.h.
12611         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
12612         the vendor is unknown.
12613         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
12614         Maybe overwrite the btrace configuration's cpu.
12615         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
12616         (btrace_fetch): Add cpu parameter.  Update callers.
12617         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
12618         Maybe overwrite the btrace configuration's cpu.  Skip enabling
12619         errata workarounds if the vendor is unknown.
12620         * python/py-record-btrace.c: Include record-btrace.h.
12621         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
12622         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
12623         * record-btrace.c (record_btrace_cpu_state_kind): New.
12624         (record_btrace_cpu): New.
12625         (set_record_btrace_cpu_cmdlist): New.
12626         (record_btrace_get_cpu): New.
12627         (require_btrace_thread, record_btrace_info)
12628         (record_btrace_resume_thread): Call record_btrace_get_cpu.
12629         (cmd_set_record_btrace_cpu_none): New.
12630         (cmd_set_record_btrace_cpu_auto): New.
12631         (cmd_set_record_btrace_cpu): New.
12632         (cmd_show_record_btrace_cpu): New.
12633         (_initialize_record_btrace): Initialize set/show record btrace cpu
12634         commands.
12635         * record-btrace.h (record_btrace_get_cpu): New.
12636
12637 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12638
12639         * record.c (set_record_command): Fix typo in message.
12640
12641 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12642
12643         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
12644
12645 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12646
12647         * infrun.c (process_event_stop_test): Call
12648         gdbarch_in_indirect_branch_thunk.
12649         * gdbarch.sh (in_indirect_branch_thunk): New.
12650         * gdbarch.c: Regenerated.
12651         * gdbarch.h: Regenerated.
12652         * x86-tdep.h: New.
12653         * x86-tdep.c: New.
12654         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
12655         (HFILES_NO_SRCDIR): Add x86-tdep.h.
12656         (ALLDEPFILES): Add x86-tdep.c.
12657         * arch-utils.h (default_in_indirect_branch_thunk): New.
12658         * arch-utils.c (default_in_indirect_branch_thunk): New.
12659         * i386-tdep: Include x86-tdep.h.
12660         (i386_in_indirect_branch_thunk): New.
12661         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
12662         function.
12663         * amd64-tdep: Include x86-tdep.h.
12664         (amd64_in_indirect_branch_thunk): New.
12665         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
12666
12667 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
12668
12669         PR gdb/23053
12670         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
12671         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
12672         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
12673         regression.
12674
12675 2018-04-12  Tom Tromey  <tom@tromey.com>
12676
12677         * rust-lang.c (rust_print_struct_def): Remove univariant code.
12678         (rust_evaluate_subexp): Likewise.
12679
12680 2018-04-12  Pedro Alves  <palves@redhat.com>
12681
12682         * procfs.c (procfs_detach): Make forward declaration's prototype
12683         match definition's protototype.
12684         (proc_get_LDT_entry): Remove stale do_cleanups call.
12685
12686 2018-04-12  Pedro Alves  <palves@redhat.com>
12687
12688         * target.h (target_ops::to_has_exited): Delete.
12689         (target_has_exited): Delete.
12690         * target-delegates.c: Regenerate.
12691
12692 2018-04-11  Pedro Alves  <palves@redhat.com>
12693
12694         * target.c (fileio_fh_t::t): Add comment.
12695         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12696         (target_fileio_close): Handle a NULL target.
12697         (invalidate_fileio_fh): New.
12698         (target_close): Call it.
12699         * remote.c (remote_hostio_send_command): No longer check whether
12700         remote_desc is open.
12701
12702 2018-04-11  Pedro Alves  <palves@redhat.com>
12703
12704         * target.c (fileio_fh_t): Make it a named struct instead of a
12705         typedef.
12706         (fileio_fh_t::is_closed): New method.
12707         (DEF_VEC_O (fileio_fh_t)): Remove.
12708         (fileio_fhandles): Now a std::vector.
12709         (is_closed_fileio_fh): Delete.
12710         (acquire_fileio_fd): Adjust.  Rename parameters.
12711         (release_fileio_fd): Adjust.
12712         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
12713         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12714         (target_fileio_close): Adjust.
12715
12716 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
12717
12718         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
12719         index.
12720
12721 2018-04-10  Pedro Alves  <palves@redhat.com>
12722
12723         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
12724         (scoped_finish_thread_state): New class.
12725         * infcmd.c (run_command_1): Use it instead of finish_thread_state
12726         cleanup.
12727         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
12728         (fetch_inferior_event, normal_stop): Likewise.
12729         * thread.c (finish_thread_state_cleanup): Delete.
12730
12731 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12732             Pedro Alves  <palves@redhat.com>
12733
12734         * value.c: Include "selftest.h" and "common/array-view.h".
12735         (struct range) <operator ==>: New.
12736         (test_ranges_contain): New.
12737         (check_ranges_vector): New.
12738         (test_insert_into_bit_range_vector): New.
12739         (_initialize_values): Register selftests.
12740         * common/array-view.h (operator==, operator!=): New.
12741
12742 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12743
12744         * common/gdb_vecs.h (unordered_remove): Add overload that takes
12745         an iterator.
12746         * inline-frame.c: Include <algorithm>.
12747         (struct inline_state): Add constructor.
12748         (inline_state_s): Remove.
12749         (DEF_VEC_O(inline_state_s)): Remove.
12750         (inline_states): Change type to std::vector.
12751         (find_inline_frame_state): Adjust to std::vector.
12752         (allocate_inline_frame_state): Remove.
12753         (clear_inline_frame_state): Adjust to std::vector.
12754         (skip_inline_frames): Adjust to std::vector.
12755
12756 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12757
12758         * tracepoint.h (struct trace_state_variable): Add constructor.
12759         <name>: Change type to std::string.
12760         * tracepoint.c (tsv_s): Remove.
12761         (DEF_VEC_O(tsv_s)): Remove.
12762         (tvariables): Change to std::vector.
12763         (create_trace_state_variable): Adjust to std::vector.
12764         (find_trace_state_variable): Likewise.
12765         (find_trace_state_variable_by_number): Likewise.
12766         (delete_trace_state_variable): Likewise.
12767         (trace_variable_command): Adjust to std::string.
12768         (delete_trace_variable_command): Likewise.
12769         (tvariables_info_1): Adjust to std::vector.
12770         (save_trace_state_variables): Likewise.
12771         (start_tracing): Likewise.
12772         (merge_uploaded_trace_state_variables): Adjust to std::vector
12773         and std::string.
12774         * target.h (struct target_ops)
12775         <to_download_trace_state_variable>: Pass reference to
12776         trace_state_variable.
12777         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
12778         * target-delegates.c: Re-generate.
12779         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
12780         (mi_tsv_deleted): Likewise.
12781         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
12782         * remote.c (remote_download_trace_state_variable): Change
12783         pointer to reference and adjust.
12784         * make-target-delegates (parse_argtypes): Handle references.
12785         (write_function_header): Likewise.
12786         (munge_type): Likewise.
12787
12788 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12789
12790         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12791         string_view-selftests.c.
12792         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
12793         testsuite.
12794         * unittests/basic_string_view/cons/char/1.cc: Likewise.
12795         * unittests/basic_string_view/cons/char/2.cc: Likewise.
12796         * unittests/basic_string_view/cons/char/3.cc: Likewise.
12797         * unittests/basic_string_view/element_access/char/1.cc:
12798         Likewise.
12799         * unittests/basic_string_view/element_access/char/empty.cc:
12800         Likewise.
12801         * unittests/basic_string_view/element_access/char/front_back.cc:
12802         Likewise.
12803         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
12804         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
12805         Likewise.
12806         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
12807         Likewise.
12808         * unittests/basic_string_view/modifiers/swap/char/1.cc:
12809         Likewise.
12810         * unittests/basic_string_view/operations/compare/char/1.cc:
12811         Likewise.
12812         * unittests/basic_string_view/operations/compare/char/13650.cc:
12813         Likewise.
12814         * unittests/basic_string_view/operations/copy/char/1.cc:
12815         Likewise.
12816         * unittests/basic_string_view/operations/data/char/1.cc:
12817         Likewise.
12818         * unittests/basic_string_view/operations/find/char/1.cc:
12819         Likewise.
12820         * unittests/basic_string_view/operations/find/char/2.cc:
12821         Likewise.
12822         * unittests/basic_string_view/operations/find/char/3.cc:
12823         Likewise.
12824         * unittests/basic_string_view/operations/find/char/4.cc:
12825         Likewise.
12826         * unittests/basic_string_view/operations/rfind/char/1.cc:
12827         Likewise.
12828         * unittests/basic_string_view/operations/rfind/char/2.cc:
12829         Likewise.
12830         * unittests/basic_string_view/operations/rfind/char/3.cc:
12831         Likewise.
12832         * unittests/basic_string_view/operations/substr/char/1.cc:
12833         Likewise.
12834         * unittests/basic_string_view/operators/char/2.cc: Likewise.
12835         * unittests/string_view-selftests.c: New file.
12836
12837 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12838
12839         * unittests/basic_string_view/capacity/1.cc: New file.
12840         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
12841         * unittests/basic_string_view/cons/char/1.cc: New file.
12842         * unittests/basic_string_view/cons/char/2.cc: New file.
12843         * unittests/basic_string_view/cons/char/3.cc: New file.
12844         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
12845         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
12846         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
12847         * unittests/basic_string_view/element_access/char/1.cc: New file.
12848         * unittests/basic_string_view/element_access/char/2.cc: New file.
12849         * unittests/basic_string_view/element_access/char/empty.cc: New file.
12850         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
12851         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
12852         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
12853         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
12854         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
12855         * unittests/basic_string_view/include.cc: New file.
12856         * unittests/basic_string_view/inserters/char/1.cc: New file.
12857         * unittests/basic_string_view/inserters/char/2.cc: New file.
12858         * unittests/basic_string_view/inserters/char/3.cc: New file.
12859         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
12860         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
12861         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
12862         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
12863         * unittests/basic_string_view/literals/types.cc: New file.
12864         * unittests/basic_string_view/literals/values.cc: New file.
12865         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
12866         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
12867         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
12868         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
12869         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
12870         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
12871         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
12872         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
12873         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
12874         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
12875         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
12876         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
12877         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
12878         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
12879         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
12880         * unittests/basic_string_view/operations/data/char/1.cc: New file.
12881         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
12882         * unittests/basic_string_view/operations/find/char/1.cc: New file.
12883         * unittests/basic_string_view/operations/find/char/2.cc: New file.
12884         * unittests/basic_string_view/operations/find/char/3.cc: New file.
12885         * unittests/basic_string_view/operations/find/char/4.cc: New file.
12886         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
12887         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
12888         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
12889         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
12890         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
12891         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
12892         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
12893         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
12894         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
12895         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
12896         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
12897         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
12898         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
12899         * unittests/basic_string_view/operators/char/2.cc: New file.
12900         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
12901         * unittests/basic_string_view/range_access/char/1.cc: New file.
12902         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
12903         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
12904         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
12905         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
12906         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
12907         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
12908         * unittests/basic_string_view/requirements/typedefs.cc: New file.
12909         * unittests/basic_string_view/typedefs.cc: New file.
12910         * unittests/basic_string_view/types/1.cc: New file.
12911
12912 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12913
12914         * common/gdb_string_view.h: Remove libstdc++ implementation
12915         details, adjust to gdb reality.
12916         * common/gdb_string_view.tcc: Likewise.
12917         * cli/cli-script.c (struct string_view): Remove.
12918         (user_args) <m_args>: Change element type to gdb::string_view.
12919         (user_args::insert_args): Adjust.
12920
12921 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12922
12923         * common/gdb_string_view.h: New file.
12924         * common/gdb_string_view.tcc: New file.
12925
12926 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12927
12928         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
12929         * configure: Re-generate.
12930
12931 2018-04-09  Pedro Alves  <palves@redhat.com>
12932
12933         * gdbarch.sh: Include "observable.h" instead of "observer.h".
12934         (set_target_gdbarch): Call
12935         gdb::observers::architecture_changed.notify instead of
12936         observer_notify_architecture_changed.
12937
12938 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12939
12940         * tracepoint.c (struct current_traceframe_cleanup): Remove.
12941         (do_restore_current_traceframe_cleanup): Remove.
12942         (restore_current_traceframe_cleanup_dtor): Remove.
12943         (make_cleanup_restore_current_traceframe): Remove.
12944         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
12945         New.
12946         * tracepoint.h (struct scoped_restore_current_traceframe): New.
12947         * infrun.c (fetch_inferior_event): Use
12948         scoped_restore_current_traceframe.
12949
12950 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12951
12952         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
12953         Remove.
12954         <n_allocated_type_units>: Remove.
12955         <all_type_units>: Change to std::vector.
12956         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12957         to std::vector change.
12958         (dwarf2_per_objfile::get_cutu): Likewise.
12959         (dwarf2_per_objfile::get_tu): Likewise.
12960         (create_signatured_type_table_from_index): Likewise.
12961         (create_signatured_type_table_from_debug_names): Likewise.
12962         (dw2_symtab_iter_next): Likewise.
12963         (dw2_print_stats): Likewise.
12964         (dw2_expand_all_symtabs): Likewise.
12965         (dw2_expand_marked_cus): Likewise.
12966         (dw2_debug_names_iterator::next): Likewise.
12967         (dwarf2_initialize_objfile): Likewise.
12968         (add_signatured_type_cu_to_table): Likewise.
12969         (create_all_type_units): Likewise.
12970         (add_type_unit): Likewise.
12971         (struct tu_abbrev_offset): Add constructor.
12972         (build_type_psymtabs_1): Adjust to std::vector change.
12973         (print_tu_stats): Likewise.
12974         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12975         (write_debug_names): Likewise.
12976
12977 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12978
12979         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
12980         Make an std::vector.
12981         <n_comp_units>: Remove.
12982         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12983         to std::vector change.
12984         (dwarf2_per_objfile::get_cutu): Likewise.
12985         (dwarf2_per_objfile::get_cu): Likewise.
12986         (create_cus_from_index): Likewise.
12987         (create_addrmap_from_index): Likewise.
12988         (create_addrmap_from_aranges): Likewise.
12989         (dwarf2_read_index): Likewise.
12990         (dw2_find_last_source_symtab): Likewise.
12991         (dw2_map_symtabs_matching_filename): Likewise.
12992         (dw2_symtab_iter_next): Likewise.
12993         (dw2_print_stats): Likewise.
12994         (dw2_expand_all_symtabs): Likewise.
12995         (dw2_expand_symtabs_with_fullname): Likewise.
12996         (dw2_expand_marked_cus): Likewise.
12997         (dw2_map_symbol_filenames): Likewise.
12998         (create_cus_from_debug_names): Likewise.
12999         (dwarf2_read_debug_names): Likewise.
13000         (dw2_debug_names_iterator::next): Likewise.
13001         (dwarf2_initialize_objfile): Likewise.
13002         (set_partial_user): Likewise.
13003         (dwarf2_build_psymtabs_hard): Likewise.
13004         (read_comp_units_from_section): Remove arguments, adjust to
13005         std::vector change.
13006         (create_all_comp_units): Adjust to std::vector and
13007         read_comp_units_from_section changes.
13008         (dwarf2_find_containing_comp_unit): Adjust to std::vector
13009         change.
13010         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
13011         (psyms_seen_size): Likewise.
13012         (write_gdbindex): Likewise.
13013         (write_debug_names): Likewise.
13014
13015 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13016
13017         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
13018         with dwarf2_per_objfile.
13019         (create_cus_from_index): Likewise.
13020         (create_signatured_type_table_from_index): Likewise.
13021         (dwarf2_read_index): Likewise.
13022         (dwarf2_initialize_objfile): Likewise.
13023         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
13024         per_cu rather than get_dwarf2_per_objfile.
13025
13026 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13027
13028         * dwarf2read.h (struct signatured_type): Forward declare.
13029         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
13030         New methods.
13031         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
13032         (dw2_get_cutu): ...this.
13033         (dwarf2_per_objfile::get_cu): Rename from...
13034         (dw2_get_cu): ...this.
13035         (dwarf2_per_objfile::get_tu): New.
13036         (create_addrmap_from_index): Adjust.
13037         (create_addrmap_from_aranges): Adjust.
13038         (dw2_find_last_source_symtab): Adjust.
13039         (dw2_map_symtabs_matching_filename): Adjust.
13040         (dw2_symtab_iter_next): Adjust.
13041         (dw2_print_stats): Adjust.
13042         (dw2_expand_all_symtabs): Adjust.
13043         (dw2_expand_symtabs_with_fullname): Adjust.
13044         (dw2_expand_marked_cus): Adjust.
13045         (dw_expand_symtabs_matching_file_matcher): Adjust.
13046         (dw2_map_symbol_filenames): Adjust.
13047         (dw2_debug_names_iterator::next): Adjust.
13048         (dwarf2_initialize_objfile): Adjust.
13049         (set_partial_user): Adjust.
13050         (dwarf2_build_psymtabs_hard): Adjust.
13051
13052 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13053
13054         * dwarf2read.c (create_signatured_type_table_from_debug_names):
13055         Remove unused variables.
13056         (dw2_map_symtabs_matching_filename): Likewise.
13057         (dwarf2_record_block_ranges): Likewise.
13058         (dwarf2_read_addr_index): Likewise.
13059         (follow_die_offset): Likewise.
13060
13061 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13062
13063         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
13064         to symbol_file_add_main.
13065
13066 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13067
13068         PR mi/22299
13069         * mi/mi-console.c (do_fputc_async_safe): New.
13070         (mi_console_file::write_async_safe): New.
13071         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
13072         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
13073         New.
13074         * ui-file.c (ui_file::putstrn): Adjust call to
13075         fputstrn_unfiltered.
13076         * utils.c (printchar): Replace do_fputs and do_fprintf
13077         parameters by do_fputc.
13078         (fputstr_filtered): Adjust call to printchar.
13079         (fputstr_unfiltered): Likewise.
13080         (fputstrn_filtered): Likewise.
13081         (fputstrn_unfiltered): Add do_fputc parameter, pass to
13082         printchar.
13083         * utils.h (do_fputc_ftype): New typedef.
13084         (fputstrn_unfiltered): Add do_fputc parameter.
13085
13086 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13087
13088         * regformats/i386/i386-avx.dat: Remove.
13089
13090 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13091
13092         PR gdb/22979
13093         * amd64-tdep.c (amd64_none_init_abi): New function.
13094         (amd64_x32_none_init_abi): New function.
13095         (_initialize_amd64_tdep): Register handlers for x86-64 and
13096         x64_32 with GDB_OSABI_NONE.
13097         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
13098         GDB_OSABI_NONE osabi.
13099
13100 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13101
13102         PR gdb/22980
13103         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
13104         GDB_OSABI_NONE.
13105         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
13106         * osabi.c (gdb_osabi_names): Add "unknown" entry.
13107
13108 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13109
13110         * common/byte-vector.h (char_vector): New type.
13111         * target.h (target_read_alloc): Return
13112         gdb::optional<byte_vector>.
13113         (target_read_stralloc): Return gdb::optional<char_vector>.
13114         (target_get_osdata): Return gdb::optional<char_vector>.
13115         * target.c (target_read_alloc_1): Templatize.  Replacement
13116         manual memory management with vector.
13117         (target_read_alloc): Change return type, adjust.
13118         (target_read_stralloc): Change return type, adjust.
13119         (target_get_osdata): Change return type, adjust.
13120         * auxv.c (struct auxv_info) <length>: Remove.
13121         <data>: Change type to gdb::optional<byte_vector>.
13122         (auxv_inferior_data_cleanup): Free auxv_info with delete.
13123         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
13124         (target_auxv_search): Adjust.
13125         (fprint_target_auxv): Adjust.
13126         * avr-tdep.c (avr_io_reg_read_command): Adjust.
13127         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
13128         (linux_make_corefile_notes): Adjust.
13129         * osdata.c (get_osdata): Adjust.
13130         * remote.c (remote_get_threads_with_qxfer): Adjust.
13131         (remote_memory_map): Adjust.
13132         (remote_traceframe_info): Adjust.
13133         (btrace_read_config): Adjust.
13134         (remote_read_btrace): Adjust.
13135         (remote_pid_to_exec_file): Adjust.
13136         * solib-aix.c (solib_aix_get_library_list): Adjust.
13137         * solib-dsbt.c (decode_loadmap): Don't free buf.
13138         (dsbt_get_initial_loadmaps): Adjust.
13139         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
13140         * solib-target.c (solib_target_current_sos): Adjust.
13141         * tracepoint.c (sdata_make_value): Adjust.
13142         * xml-support.c (xinclude_start_include): Adjust.
13143         (xml_fetch_content_from_file): Adjust.
13144         * xml-support.h (xml_fetch_another): Change return type.
13145         (xml_fetch_content_from_file): Change return type.
13146         * xml-syscall.c (xml_init_syscalls_info): Adjust.
13147         * xml-tdesc.c (file_read_description_xml): Adjust.
13148         (fetch_available_features_from_target): Change return type.
13149         (target_fetch_description_xml): Adjust.
13150         (target_read_description_xml): Adjust.
13151
13152 2018-04-06  Tom Tromey  <tom@tromey.com>
13153
13154         * value.c (~value): Update.
13155         (struct value) <contents>: Now unique_xmalloc_ptr.
13156         (value_contents_bits_eq, allocate_value_contents)
13157         (value_contents_raw, value_contents_all_raw)
13158         (value_contents_for_printing, value_contents_for_printing_const)
13159         (set_value_enclosing_type): Update.
13160
13161 2018-04-06  Tom Tromey  <tom@tromey.com>
13162
13163         * value.c (range_s): Remove typedef, VEC.
13164         (struct range): Add operator<.
13165         (range_lessthan): Remove.
13166         (ranges_contain): Change type.
13167         (~value): Update.
13168         (struct value) <unavailable, optimized_out>: Now std::vector.
13169         (value_entirely_available)
13170         (value_entirely_covered_by_range_vector)
13171         (value_entirely_unavailable, value_entirely_optimized_out):
13172         Update.
13173         (insert_into_bit_range_vector): Change argument type.
13174         (find_first_range_overlap): Likewise.
13175         (struct ranges_and_idx, value_contents_bits_eq)
13176         (require_not_optimized_out, require_available): Update.
13177         (ranges_copy_adjusted): Change argument types.
13178         (value_optimized_out, value_copy, value_fetch_lazy): Update.
13179
13180 2018-04-06  Tom Tromey  <tom@tromey.com>
13181
13182         * value.c (~value): Update.
13183         (struct value) <parent>: Now a value_ref_ptr.
13184         (value_parent, set_value_parent, value_address, value_copy):
13185         Update.
13186
13187 2018-04-06  Tom Tromey  <tom@tromey.com>
13188
13189         * value.c (struct value): Add constructor, destructor, and member
13190         initializers.
13191         (allocate_value_lazy, value_decref): Update.
13192
13193 2018-04-06  Tom Tromey  <tom@tromey.com>
13194
13195         * value.c (struct value) <released, next>: Remove.
13196         (all_values): Now a std::vector.
13197         (allocate_value_lazy): Update.
13198         (value_next): Remove.
13199         (value_mark, value_free_to_mark, release_value)
13200         (value_release_to_mark): Update.
13201
13202 2018-04-06  Tom Tromey  <tom@tromey.com>
13203
13204         * value.h (fetch_subexp_value, value_release_to_mark): Update.
13205         (free_value_chain): Remove.
13206         * value.c (free_value_chain): Remove.
13207         (value_release_to_mark): Return a std::vector.
13208         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
13209         std::vector.
13210         (check_condition): Update.
13211         * eval.c (fetch_subexp_value): Change "val_chain" to a
13212         std::vector.
13213         * breakpoint.c (update_watchpoint): Update.
13214         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
13215
13216 2018-04-06  Tom Tromey  <tom@tromey.com>
13217
13218         * value.h (free_all_values): Remove.
13219         * value.c (free_all_values): Remove.
13220
13221 2018-04-06  Tom Tromey  <tom@tromey.com>
13222
13223         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
13224         (value_history_chain, value_history_count): Remove.
13225         (value_history): New global.
13226         (record_latest_value, access_value_history, show_values)
13227         (preserve_values): Update.
13228
13229 2018-04-06  Tom Tromey  <tom@tromey.com>
13230
13231         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
13232         * varobj.c (varobj_set_display_format, varobj_set_value)
13233         (install_default_visualizer, construct_visualizer)
13234         (install_new_value, ~varobj, varobj_get_value_type)
13235         (my_value_of_variable, varobj_editable_p): Update.
13236         * c-varobj.c (c_describe_child, c_value_of_variable)
13237         (cplus_number_of_children, cplus_describe_child): Update.
13238         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
13239         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
13240         (ada_value_of_variable, ada_value_is_changeable_p): Update.
13241
13242 2018-04-06  Tom Tromey  <tom@tromey.com>
13243
13244         * printcmd.c (last_examine_address): Change type to
13245         value_ref_ptr.
13246         (do_examine, x_command): Update.
13247
13248 2018-04-06  Tom Tromey  <tom@tromey.com>
13249
13250         * value.c (release_value): Update.
13251         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
13252         (struct bpstats) <val>: Now a value_ref_ptr.
13253         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
13254         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
13255         (~watchpoint, print_it_watchpoint, watch_command_1)
13256         (invalidate_bp_value_on_memory_change): Update.
13257
13258 2018-04-06  Tom Tromey  <tom@tromey.com>
13259
13260         * varobj.c (varobj_clear_saved_item)
13261         (update_dynamic_varobj_children, install_new_value, ~varobj):
13262         Update.
13263         * value.h (value_incref): Move declaration earlier.
13264         (value_decref): Rename from value_free.
13265         (struct value_ref_policy): New.
13266         (value_ref_ptr): New typedef.
13267         (struct value_deleter): Remove.
13268         (gdb_value_up): Remove typedef.
13269         (release_value): Change return type.
13270         (release_value_or_incref): Remove.
13271         * value.c (set_value_parent): Update.
13272         (value_incref): Change return type.
13273         (value_decref): Rename from value_free.
13274         (value_free_to_mark, free_all_values, free_value_chain): Update.
13275         (release_value): Return value_ref_ptr.
13276         (release_value_or_incref): Remove.
13277         (record_latest_value, set_internalvar, clear_internalvar):
13278         Update.
13279         * stack.c (info_frame_command): Don't call value_free.
13280         * python/py-value.c (valpy_dealloc, valpy_new)
13281         (value_to_value_object): Update.
13282         * printcmd.c (do_examine): Update.
13283         * opencl-lang.c (lval_func_free_closure): Update.
13284         * mi/mi-main.c (register_changed_p): Don't call value_free.
13285         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
13286         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
13287         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
13288         value_free.
13289         * guile/scm-value.c (vlscm_free_value_smob)
13290         (vlscm_scm_from_value): Update.
13291         * frame.c (frame_register_unwind, frame_unwind_register_signed)
13292         (frame_unwind_register_unsigned, get_frame_register_bytes)
13293         (put_frame_register_bytes): Don't call value_free.
13294         * findvar.c (address_from_register): Don't call value_free.
13295         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
13296         * dwarf2loc.c (entry_data_value_free_closure)
13297         (value_of_dwarf_reg_entry, free_pieced_value_closure)
13298         (dwarf2_evaluate_loc_desc_full): Update.
13299         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
13300         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
13301         (~watchpoint, watch_command_1)
13302         (invalidate_bp_value_on_memory_change): Update.
13303         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
13304
13305 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
13306
13307         PR gdb/23022
13308         * warning.m4: Add -Wno-error=deprecated-register.
13309         * configure: Re-generate.
13310
13311 2018-04-05  Tom Tromey  <tom@tromey.com>
13312
13313         * linespec.h: Remove include of "vec.h".
13314
13315 2018-04-05  Tom Tromey  <tom@tromey.com>
13316
13317         * linespec.c (typep): Remove typedef.
13318         (find_methods, find_superclass_methods): Take a std::vector.
13319         (find_method): Use std::vector.
13320
13321 2018-04-05  Tom Tromey  <tom@tromey.com>
13322
13323         * utils.c (compare_strings): Remove.
13324         * utils.h (compare_strings): Remove.
13325         * objc-lang.h (find_imps): Update.
13326         * objc-lang.c (find_methods): Take a std::vector.
13327         (uniquify_strings, find_imps): Likewise.
13328         * linespec.c (find_methods): Take a std::vector.
13329         (decode_objc): Use std::vector.
13330         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
13331         a std::vector.
13332         (find_method, find_function_symbols): Use std::vector.
13333
13334 2018-04-05  Tom Tromey  <tom@tromey.com>
13335
13336         * completer.c (completion_tracker::completion_tracker): Remove
13337         cast.
13338         (completion_tracker::discard_completions): Likewise.
13339         * breakpoint.c (ambiguous_names_p): Remove cast.
13340         * ada-lang.c (_initialize_ada_language): Remove cast.
13341         * utils.h (streq): Update.
13342         (streq_hash): Add new declaration.
13343         * utils.c (streq): Return bool.
13344         (streq_hash): New function.
13345
13346 2018-04-05  Tom Tromey  <tom@tromey.com>
13347
13348         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
13349         Remove a string copy.
13350
13351 2018-04-05  Tom Tromey  <tom@tromey.com>
13352
13353         * linespec.c (filter_results): Use std::vector.
13354         (decode_line_2, decode_line_full): Update.
13355
13356 2018-04-05  Tom Tromey  <tom@tromey.com>
13357
13358         * linespec.c (canonical_to_fullform): Return std::string.
13359         (filter_results): Update.
13360         (struct decode_line_2_item): Add constructor.
13361         <fullform, displayform>: Now std::string.
13362         (decode_line_2_compare_items): Now a std::sort comparator.
13363         (decode_line_2): Update.
13364
13365 2018-04-05  Tom Tromey  <tom@tromey.com>
13366
13367         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
13368         (unexpected_linespec_error): Update.
13369         (linespec_parse_basic, parse_linespec): Update.
13370
13371 2018-04-05  Tom Tromey  <tom@tromey.com>
13372
13373         * linespec.c (linespec_parse_basic): Reindent.
13374
13375 2018-04-05  Tom Tromey  <tom@tromey.com>
13376
13377         * minsyms.h (iterate_over_minimal_symbols): Update.
13378         * minsyms.c (iterate_over_minimal_symbols): Take a
13379         gdb::function_view.
13380         * linespec.c (struct collect_minsyms): Remove.
13381         (compare_msyms): Now a std::sort comparator.
13382         (add_minsym): Add parameters.
13383         (search_minsyms_for_name): Update.  Use std::vector.
13384
13385 2018-04-03  Tom Tromey  <tom@tromey.com>
13386
13387         * mipsread.c (read_alphacoff_dynamic_symtab): Use
13388         gdb::byte_vector.
13389
13390 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13391
13392         * MAINTAINERS (Write After Approval): Add Weimin Pan.
13393
13394 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13395
13396         PR gdb/16959
13397         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
13398         printing static type.
13399
13400 2018-04-01  Tom Tromey  <tom@tromey.com>
13401
13402         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
13403         (rs6000_xfer_shared_libraries): Update.
13404
13405 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
13406
13407         * common/gdb_vecs.h (char_ptr): Remove.
13408         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
13409
13410 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13411
13412         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
13413         with std::vector.
13414         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
13415
13416 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13417
13418         * tracepoint.h (struct uploaded_tp): Initialize fields.
13419         <actions, step_actions, cmd_strings>: Change type to
13420         std::vector<char *>.
13421         * tracepoint.c (get_uploaded_tp): Allocate with new.
13422         (free_uploaded_tps): Free with delete.
13423         (parse_tracepoint_definition): Adjust to std::vector change.
13424         * breakpoint.c (read_uploaded_action): Likewise.
13425         (create_tracepoint_from_upload): Likewise.
13426         * ctf.c (ctf_write_uploaded_tp): Likewise.
13427         (SET_ARRAY_FIELD): Likewise.
13428         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
13429
13430 2018-03-30  Tom Tromey  <tom@tromey.com>
13431
13432         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
13433         std::unique_ptr.
13434         (svr4_keep_data_in_core): Update.
13435         (svr4_read_so_list): Update.
13436
13437 2018-03-30  Tom Tromey  <tom@tromey.com>
13438
13439         * windows-nat.c (handle_output_debug_string, handle_exception):
13440         Update.
13441         * target.h (target_read_string): Update.
13442         * target.c (target_read_string): Change "string" to
13443         unique_xmalloc_ptr.
13444         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
13445         Update.
13446         * solib-frv.c (frv_current_sos): Update.
13447         * solib-dsbt.c (dsbt_current_sos): Update.
13448         * solib-darwin.c (darwin_current_sos): Update.
13449         * linux-thread-db.c (inferior_has_bug): Update.
13450         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
13451         Update.  Remove alloca.
13452         * ada-lang.c (ada_main_name): Update.
13453
13454 2018-03-30  Tom Tromey  <tom@tromey.com>
13455
13456         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
13457         (struct dwo_file_deleter): New.
13458         (dwo_file_up): New typedef.
13459         (open_and_init_dwo_file): Use dwo_file_up.
13460         (free_dwo_file_cleanup): Remove.
13461
13462 2018-03-30  Tom Tromey  <tom@tromey.com>
13463
13464         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
13465         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
13466
13467 2018-03-30  Tom Tromey  <tom@tromey.com>
13468
13469         * dwarf2read.c (class free_cached_comp_units): New class.
13470         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
13471         (free_cached_comp_units): Remove function.
13472
13473 2018-03-30  Tom Tromey  <tom@tromey.com>
13474
13475         * utils.h (make_cleanup_unpush_target): Remove.
13476         * inf-ptrace.c (struct target_unpusher): New.
13477         (target_unpush_up) New typedef.
13478         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
13479         target_unpush_up.
13480         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
13481
13482 2018-03-27  Tom Tromey  <tom@tromey.com>
13483
13484         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
13485
13486 2018-03-27  Pedro Alves  <palves@redhat.com>
13487             Tom Tromey  <tom@tromey.com>
13488
13489         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
13490         destructor.  Now a class.
13491         (gdb_readline_wrapper_cleanup): Remove function.
13492         (gdb_readline_wrapper): Remove cleanups.
13493
13494 2018-03-27  Tom Tromey  <tom@tromey.com>
13495
13496         * typeprint.h (struct type_print_options) <local_typedefs,
13497         global_typedefs>: Remove "struct" keyword.
13498         (class typedef_hash_table): New class.
13499         (recursively_update_typedef_hash, add_template_parameters)
13500         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
13501         (find_typedef_in_hash): Don't declare.
13502         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
13503         (typedef_hash_table::recursively_update): Rename from
13504         recursively_update_typedef_hash.  Now a member.
13505         (typedef_hash_table::add_template_parameters): Rename from
13506         add_template_parameters.  Now a member.
13507         (typedef_hash_table::typedef_hash_table): Now a constructor;
13508         rename from create_typedef_hash.
13509         (typedef_hash_table::~typedef_hash_table): Now a destructor;
13510         rename from free_typedef_hash.
13511         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
13512         (do_free_global_table): Remove.
13513         (typedef_hash_table::typedef_hash_table): New constructor; renamed
13514         from copy_type_recursive.
13515         (create_global_typedef_table): Remove.
13516         (typedef_hash_table::find_global_typedef): Now a member of
13517         typedef_hash_table.
13518         (typedef_hash_table::find_typedef): Rename from
13519         find_typedef_in_hash; now a member.
13520         (whatis_exp): Update.
13521         * extension.h (struct ext_lang_type_printers): Add constructor and
13522         destructor.
13523         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
13524         declare.
13525         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
13526         Now a constructor; rename from start_ext_lang_type_printers.
13527         (ext_lang_type_printers): Now a destructor; rename from
13528         free_ext_lang_type_printers.
13529         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
13530         Update.
13531         (c_type_print_base_struct_union): Update.  Remove cleanups.
13532
13533 2018-03-27  Tom Tromey  <tom@tromey.com>
13534
13535         * dwarf-index-write.c: Include <cmath>.
13536
13537 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13538
13539         * NEWS: Add entry describing new "set|show varsize-limit" command.
13540         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
13541         command.
13542         * printcmd.c (_initialize_printcmd): Add "set var" alias of
13543         "set variable".
13544
13545 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
13546
13547         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
13548         dwarf-index-write.c
13549         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
13550         * dwarf-index-common.c: New file.
13551         * dwarf-index-common.h: New file.
13552         * dwarf-index-write.c: New file.
13553         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
13554         (struct dwarf2_section_info): Move from here.
13555         (dwarf2_section_info_def): Likewise.
13556         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
13557         (offset_type): Likewise.
13558         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
13559         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
13560         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
13561         (byte_swap): Likewise.
13562         (MAYBE_SWAP): Likewise.
13563         (dwarf2_per_cu_ptr): Likewise.
13564         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
13565         (struct tu_stats): Likewise.
13566         (struct dwarf2_per_objfile): Likewise.
13567         (struct dwarf2_per_cu_data): Likewise.
13568         (struct signatured_type): Likewise.
13569         (sig_type_ptr): Likewise.
13570         (DEF_VEC_P (sig_type_ptr)): Likewise.
13571         (INDEX4_SUFFIX): Likewise.
13572         (INDEX5_SUFFIX): Likewise.
13573         (DEBUG_STR_SUFFIX): Likewise.
13574         (dwarf2_read_section): Make non-static.
13575         (mapped_index_string_hash): Move from here.
13576         (dwarf5_djb_hash): Likewise.
13577         (file_write): Likewise.
13578         (class data_buf): Likewise.
13579         (struct symtab_index_entry): Likewise.
13580         (struct mapped_symtab): Likewise.
13581         (find_slot): Likewise.
13582         (hash_expand): Likewise.
13583         (add_index_entry): Likewise.
13584         (uniquify_cu_indices): Likewise.
13585         (class c_str_view): Likewise.
13586         (class c_str_view_hasher): Likewise.
13587         (class vector_hasher): Likewise.
13588         (write_hash_table): Likewise.
13589         (psym_index_map): Likewise.
13590         (struct addrmap_index_data): Likewise.
13591         (add_address_entry): Likewise.
13592         (add_address_entry_worker): Likewise.
13593         (write_address_map): Likewise.
13594         (symbol_kind): Likewise.
13595         (write_psymbols): Likewise.
13596         (struct signatured_type_index_data): Likewise.
13597         (write_one_signatured_type): Likewise.
13598         (recursively_count_psymbols): Likewise.
13599         (recursively_write_psymbols): Likewise.
13600         (class debug_names): Likewise.
13601         (check_dwarf64_offsets): Likewise.
13602         (psyms_seen_size): Likewise.
13603         (write_gdbindex): Likewise.
13604         (write_debug_names): Likewise.
13605         (assert_file_size): Likewise.
13606         (write_psymtabs_to_index): Likewise.
13607         (save_gdb_index_command): Likewise.
13608         (_initialize_dwarf2_read): Don't register the "save gdb-index"
13609         command.
13610         * dwarf2read.h: New file.
13611
13612 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13613
13614         PR gdb/22670
13615         * dwarf2read.c (dwarf2_physname): Do not return the demangled
13616         symbol name if the CU's language stores symbol names in linkage
13617         format.
13618         * language.h (struct language_defn)
13619         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
13620         all instances of this struct.
13621
13622 2018-03-26  Tom Tromey  <tom@tromey.com>
13623
13624         * stack.c (backtrace_command_1): Remove verbose code.
13625
13626 2018-03-26  Tom Tromey  <tom@tromey.com>
13627
13628         * python/py-framefilter.c (py_print_type): Don't catch
13629         exceptions.  Return void.
13630         (py_print_value): Likewise.
13631         (py_print_single_arg): Likewise.
13632         (enumerate_args): Don't catch exceptions.
13633         (py_print_args): Likewise.
13634         (py_print_frame): Likewise.
13635         (gdbpy_apply_frame_filter): Catch exceptions here.
13636
13637 2018-03-26  Tom Tromey  <tom@tromey.com>
13638
13639         * stack.c (_initialize_stack): Remove trailing newlines from help
13640         text.  Add "Usage" line to "backtrace" help.
13641
13642 2018-03-26  Tom Tromey  <tom@tromey.com>
13643
13644         PR python/16486:
13645         * python/py-framefilter.c (py_print_args): Call wrap_hint.
13646
13647 2018-03-26  Tom Tromey  <tom@tromey.com>
13648
13649         * python/py-framefilter.c (py_print_single_arg): Return
13650         EXT_LANG_BT_ERROR from catch.
13651
13652 2018-03-26  Tom Tromey  <tom@tromey.com>
13653
13654         PR backtrace/15584:
13655         * stack.c (backtrace_command_1): Move some code into no-filters
13656         "if".
13657
13658 2018-03-26  Tom Tromey  <tom@tromey.com>
13659
13660         * python/py-framefilter.c (throw_quit_or_print_exception): New
13661         function.
13662         (gdbpy_apply_frame_filter): Use it.
13663
13664 2018-03-26  Tom Tromey  <tom@tromey.com>
13665
13666         PR cli/17716:
13667         * python/py-framefilter.c (py_print_type, py_print_value)
13668         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
13669         RETURN_MASK_ERROR.
13670
13671 2018-03-26  Tom Tromey  <tom@tromey.com>
13672
13673         * python/py-framefilter.c (enumerate_args): Use
13674         gdb::unique_xmalloc_ptr.
13675
13676 2018-03-26  Tom Tromey  <tom@tromey.com>
13677
13678         * python/py-framefilter.c (py_print_frame): Return
13679         EXT_LANG_BT_OK.
13680         (gdbpy_apply_frame_filter): Update comment.
13681         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
13682         Remove.
13683         <EXT_LANG_BT_NO_FILTERS>: Change value.
13684
13685 2018-03-26  Tom Tromey  <tom@tromey.com>
13686
13687         PR backtrace/15582:
13688         * stack.c (backtrace_command): Parse "hide" argument.
13689         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
13690         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
13691         constant.
13692
13693 2018-03-26  Tom Tromey  <tom@tromey.com>
13694
13695         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
13696         add "flags".
13697         (backtrace_command): Remove "fulltrace", add "flags".
13698
13699 2018-03-26  Tom Tromey  <tom@tromey.com>
13700
13701         * stack.c (backtrace_command): Rewrite command line parsing.
13702
13703 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13704
13705         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
13706
13707 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13708
13709         * filename-seen-cache.h: Add include guard.
13710
13711 2018-03-26  Keith Seitz  <keiths@redhat.com>
13712
13713         * symfile.c (place_section): Remove "struct" from section_addr_info
13714         in comment.
13715         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
13716         "struct" keyword from section_addr_info.
13717
13718 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
13719
13720         * regformats/regdef.h (reg): Add constructors.
13721
13722 2018-03-25  Pedro Alves  <palves@redhat.com>
13723
13724         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
13725         if then/else bodies in var_func_name extraction.
13726
13727 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
13728
13729         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
13730         lookup_minimal_symbol() to find symbol entry.
13731         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
13732
13733 2018-03-23  Keith Seitz  <keiths@redhat.com>
13734
13735         PR c++/22968
13736         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
13737         nested type definitions for C++, too.
13738
13739 2018-03-23  Tom Tromey  <tom@tromey.com>
13740
13741         * machoread.c (struct oso_el): Add a constructor.  Don't define as
13742         a typedef.
13743         (macho_register_oso): Remove.
13744         (macho_symtab_read): Take a std::vector.
13745         (oso_el_compare_name): Now a std::sort comparator.
13746         (macho_symfile_read_all_oso): Take a std::vector.
13747         (macho_symfile_read): Use std::vector.  Remove cleanups.
13748
13749 2018-03-22  Tom Tromey  <tom@tromey.com>
13750
13751         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
13752         (record_full_goto_bookmark): Use std::string.
13753
13754 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13755
13756         PR tdep/18295
13757         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
13758         a single mask.
13759
13760 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13761
13762         * rs6000-tdep.c (store_insn_p): New function.
13763         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
13764         and cr_reg to their unshifted values. Use store_insn_p to
13765         match LR saves using either R1 or fdata->alloca_reg. Use
13766         store_insn_p to match CR saves. Set alloca_reg_offset
13767         when alloca_reg and framep are set. Remove lr_reg shift
13768         when assigning to fdata->lr_register.
13769
13770 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13771
13772         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
13773         command line args instead of emitting a warning.
13774
13775 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13776
13777         * tracepoint.h (struct static_tracepoint_marker): Initialize
13778         fields, define default constructor, move constructor and move
13779         assignment, disable the rest.
13780         <str_id, extra>: Make std::string.
13781         (release_static_tracepoint_marker): Remove.
13782         (free_current_marker): Remove.
13783         * tracepoint.c (free_current_marker): Remove.
13784         (parse_static_tracepoint_marker_definition): Adjust to
13785         std::string, use new hex2str overload.
13786         (release_static_tracepoint_marker): Remove.
13787         (print_one_static_tracepoint_marker): Get marker by reference
13788         and adjust to std::string.
13789         (info_static_tracepoint_markers_command): Adjust to std::vector
13790         changes
13791         * target.h (static_tracepoint_marker_p): Remove typedef.
13792         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
13793         (struct target_ops) <to_static_tracepoint_marker_at>: Return
13794         bool.
13795         <to_static_tracepoint_markers_by_strid>: Return std::vector.
13796         * target-debug.h
13797         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
13798         (target_debug_print_std_vector_static_tracepoint_marker): New.
13799         (target_debug_print_struct_static_tracepoint_marker_p): Rename
13800         to...
13801         (target_debug_print_static_tracepoint_marker_p): ... this.
13802         * target-delegates.c: Re-generate.
13803         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
13804         Make std::string.
13805         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
13806         (decode_static_tracepoint_spec): Adjust to std::vector.
13807         (tracepoint_print_one_detail): Adjust to std::string.
13808         (strace_marker_decode_location): Adjust to std::string.
13809         (update_static_tracepoint): Adjust to std::string, remove call
13810         to release_static_tracepoint_marker.
13811         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
13812         Adjust to std::vector.
13813         * remote.c (remote_static_tracepoint_marker_at): Return bool.
13814         (remote_static_tracepoint_markers_by_strid): Adjust to
13815         std::vector.
13816         * common/rsp-low.h (hex2str): New overload with explicit count
13817         of bytes.
13818         * common/rsp-low.c (hex2str): New overload with explicit count
13819         of bytes.
13820         * unittests/rsp-low-selftests.c (test_hex2str): New function.
13821         (_initialize_rsp_low_selftests): Add test_hex2str test.
13822         * unittests/tracepoint-selftests.c
13823         (test_parse_static_tracepoint_marker_definition): Adjust to
13824         std::string.
13825
13826 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13827
13828         * tracepoint.c (parse_static_tracepoint_marker_definition):
13829         Consider case where the definition is followed by more
13830         definitions.
13831         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13832         tracepoint-selftests.c.
13833         * unittests/tracepoint-selftests.c: New.
13834
13835 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13836
13837         * MAINTAINERS (Write After Approval): Add Pedro Franco de
13838         Carvalho.
13839
13840 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13841
13842         * symtab.c (find_pc_sect_line): fixed indentation.
13843
13844 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13845
13846         * symtab.c (find_pc_sect_line): now uses binary search.
13847
13848 2018-03-19  Tom Tromey  <tom@tromey.com>
13849
13850         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
13851         "IDENT" production.
13852
13853 2018-03-19  Pedro Alves  <palves@redhat.com>
13854             Tom Tromey  <tom@tromey.com>
13855
13856         * unittests/observable-selftests.c: New file.
13857         * common/observable.h: New file.
13858         * observable.h: New file.
13859         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
13860         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
13861         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
13862         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
13863         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
13864         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
13865         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
13866         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
13867         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
13868         python/py-breakpoint.c, python/py-finishbreakpoint.c,
13869         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
13870         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
13871         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
13872         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
13873         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
13874         tui/tui-interp.c, valops.c: Update all users.
13875         * tui/tui-hooks.c (tui_bp_created_observer)
13876         (tui_bp_deleted_observer, tui_bp_modified_observer)
13877         (tui_inferior_exit_observer, tui_before_prompt_observer)
13878         (tui_normal_stop_observer, tui_register_changed_observer):
13879         Remove.
13880         (tui_observers_token): New global.
13881         (attach_or_detach, tui_attach_detach_observers): New functions.
13882         (tui_install_hooks, tui_remove_hooks): Use
13883         tui_attach_detach_observers.
13884         * record-btrace.c (record_btrace_thread_observer): Remove.
13885         (record_btrace_thread_observer_token): New global.
13886         * observer.sh: Remove.
13887         * observer.c: Rename to observable.c.
13888         * observable.c (namespace gdb_observers): Define new objects.
13889         (observer_debug): Move into gdb_observers namespace.
13890         (struct observer, struct observer_list, xalloc_observer_list_node)
13891         (xfree_observer_list_node, generic_observer_attach)
13892         (generic_observer_detach, generic_observer_notify): Remove.
13893         (_initialize_observer): Update.
13894         Don't include observer.inc.
13895         * Makefile.in (generated_files): Remove observer.h, observer.inc.
13896         (clean mostlyclean): Likewise.
13897         (observer.h, observer.inc): Remove targets.
13898         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
13899         (COMMON_SFILES): Use observable.c, not observer.c.
13900         * .gitignore: Remove observer.h.
13901
13902 2018-03-18  Tom Tromey  <tom@tromey.com>
13903
13904         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
13905         gdb::def_vector.
13906         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
13907
13908 2018-03-17  Tom Tromey  <tom@tromey.com>
13909
13910         * auto-load.c (auto_load_objfile_script_1): Use std::string.
13911
13912 2018-03-17  Tom Tromey  <tom@tromey.com>
13913
13914         * target.c (class scoped_target_fd): New.
13915         (target_fileio_close_cleanup): Remove.
13916         (target_fileio_read_alloc_1): Use scoped_target_fd.
13917
13918 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
13919
13920         * silent-rules.mk: New.
13921         * Makefile.in: Include silent-rules.mk
13922         (srcdir, VPATH, top_srcdir): Move up.
13923         (COMPILE): Add ECHO_CXX.
13924         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
13925         (init.c): Add ECHO_INIT_C.
13926         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
13927         (version.c): Add ECHO_GEN.
13928         (printcmd.o): Add ECHO_CXX.
13929         (target-float.o): Add ECHO_CXX.
13930         (ada-exp.o): Add ECHO_CXX.
13931         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
13932         (insight$(EXEEXT)): Add ECHO_CXXLD.
13933         * gnulib/configure.ac: Add AM_SILENT_RULES.
13934         * gnulib/aclocal.m4: Re-generate.
13935         * gnulib/configure: Re-generate.
13936         * gnulib/import/Makefile.in: Re-generate.
13937
13938 2018-03-16  Tom Tromey  <tom@tromey.com>
13939
13940         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
13941         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
13942         * utils.c (do_free_section_addr_info)
13943         (make_cleanup_free_section_addr_info): Remove.
13944         * symfile.h (struct other_sections): Add constructor.
13945         (struct section_addr_info): Remove.
13946         (section_addr_info): New typedef.
13947         (struct sym_fns) <sym_offsets>: Change type of parameter.
13948         (build_section_addr_info_from_objfile)
13949         (relative_addr_info_to_section_offsets, addr_info_make_relative)
13950         (default_symfile_offsets, symbol_file_add)
13951         (symbol_file_add_from_bfd)
13952         (build_section_addr_info_from_section_table): Update.
13953         (alloc_section_addr_info, free_section_addr_info): Don't declare.
13954         * symfile.c (alloc_section_addr_info): Remove.
13955         (build_section_addr_info_from_section_table): Change return type.
13956         Update.
13957         (build_section_addr_info_from_bfd)
13958         (build_section_addr_info_from_objfile): Likewise.
13959         (free_section_addr_info): Remove.
13960         (relative_addr_info_to_section_offsets): Change type of "addrs".
13961         (addrs_section_compar): Now a std::sort comparator.
13962         (addrs_section_sort): Change return type.
13963         (addr_info_make_relative): Change type of "addrs".  Update.
13964         (default_symfile_offsets, syms_from_objfile_1)
13965         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
13966         (symbol_file_add_separate): Update.
13967         (symbol_file_add): Change type of "addrs".  Update.
13968         (add_symbol_file_command): Update.  Remove cleanups.
13969         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
13970         cleanups.
13971         * symfile-debug.c (debug_sym_offsets): Change type of "info".
13972         * solib.c (solib_read_symbols): Update.
13973         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
13974         * machoread.c (macho_symfile_offsets): Update.
13975         * jit.c (jit_bfd_try_read_symtab): Update.
13976
13977 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
13978
13979         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13980         unittests/utils-selftests.c.
13981         * unittests/utils-selftests.c: New file.
13982
13983 2018-03-14  Tom Tromey  <tom@tromey.com>
13984
13985         PR cli/14977:
13986         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
13987         for NULL.
13988
13989 2018-03-14  Tom Tromey  <tom@tromey.com>
13990
13991         PR cli/19918:
13992         * printcmd.c (printf_pointer): Allow "-" in format.
13993
13994 2018-03-14  Tom Tromey  <tom@tromey.com>
13995
13996         * printcmd.c (_initialize_printcmd): Add usage to printf.
13997
13998 2018-03-14  Yao Qi  <qiyao@sourceware.org>
13999
14000         * MAINTAINERS: Update my email address.
14001
14002 2018-03-13  Tom Tromey  <tom@tromey.com>
14003
14004         * machoread.c (macho_check_dsym): Change filenamep to a
14005         std::string*.
14006         (macho_symfile_read): Update.
14007         * symfile.c (load_command): Use std::string.
14008
14009 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
14010
14011         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
14012         to error message string.
14013         (riscv_register_name): Use xsnprintf instead of sprintf.
14014         (riscv_insn::fetch_instruction): Use gdb_assert instead of
14015         internal_error.
14016         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
14017         error.
14018         (riscv_push_dummy_call): Likewise.
14019
14020 2018-03-12  Tom Tromey  <tom@tromey.com>
14021
14022         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
14023         Use gdb::byte_vector.
14024         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
14025
14026 2018-03-12  Yao Qi  <yao.qi@linaro.org>
14027
14028         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
14029         parameter type to readable_regcache.
14030         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
14031         the declaration.
14032
14033 2018-03-11  Tom Tromey  <tom@tromey.com>
14034
14035         * dwarf2read.c (struct nextfield): Add initializers.
14036         (struct nextfnfield): Remove.
14037         (struct fnfieldlist): Add initializers.  Remove "length" and
14038         "head", use std::vector.
14039         (struct decl_field_list): Remove.
14040         (struct field_info): Add initializers.
14041         <fields, baseclasses>: Now std::vector.
14042         <nbaseclasses, nfnfields, typedef_field_list_count,
14043         nested_types_list_count>: Remove.
14044         (dwarf2_add_field, dwarf2_add_type_defn)
14045         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
14046         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
14047         (process_structure_scope): Update.
14048
14049 2018-03-11  Tom Tromey  <tom@tromey.com>
14050
14051         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
14052         for use by std::sort.
14053         (build_type_psymtabs_1): Use std::vector.
14054
14055 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
14056
14057         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
14058         and LIBMPFR in the printed configuration.
14059
14060 2018-03-08  Tom Tromey  <tom@tromey.com>
14061
14062         * source.c (get_filename_and_charpos): Use scoped_fd.
14063         * nto-procfs.c (procfs_open_1): Use scoped_fd.
14064         (procfs_pidlist): Likewise.
14065         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
14066         (iterate_over_mappings): Likewise.
14067
14068 2018-03-08  Tom Tromey  <tom@tromey.com>
14069
14070         * infcall.c (struct call_return_meta_info)
14071         <stack_temporaries_enabled>: Remove.
14072         (get_call_return_value, call_function_by_hand_dummy): Update.
14073         * thread.c (disable_thread_stack_temporaries): Remove.
14074         (enable_thread_stack_temporaries): Remove.
14075         (thread_stack_temporaries_enabled_p): Return bool.
14076         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
14077         (get_last_thread_stack_temporary): Update.
14078         * eval.c (evaluate_subexp): Update.
14079         * gdbthread.h (class enable_thread_stack_temporaries): Now a
14080         class, not a function.
14081         (value_ptr, value_vec): Remove typedefs.
14082         (class thread_info) <stack_temporaries_enabled>: Now bool.
14083         <stack_temporaries>: Now a std::vector.
14084         (thread_stack_temporaries_enabled_p)
14085         (value_in_thread_stack_temporaries): Return bool.
14086
14087 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
14088
14089         * remote.c (putpkt_binary): Fix omitted bytes reporting.
14090         (getpkt_or_notif_sane_1): Likewise.
14091
14092 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14093
14094         * build-id.c (build_id_to_debug_bfd): Use std::string.
14095
14096 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14097
14098         * build-id.c (find_separate_debug_file_by_buildid): Return
14099         std::string.
14100         * build-id.h (find_separate_debug_file_by_buildid): Return
14101         std::string.
14102         * coffread.c (coff_symfile_read): Adjust to std::string.
14103         * elfread.c (elf_symfile_read): Adjust to std::string.
14104         * symfile.c (separate_debug_file_exists): Change parameter to
14105         std::string.
14106         (find_separate_debug_file): Return std::string.
14107         (find_separate_debug_file_by_debuglink): Return std::string.
14108         * symfile.h (find_separate_debug_file_by_debuglink): Return
14109         std::string.
14110
14111 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14112
14113         * common/xml-utils.c (xml_escape_text): Move code to...
14114         (xml_escape_text_append): ... this new function.
14115         * common/xml-utils.h (xml_escape_text_append): New declaration.
14116         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
14117         New function.
14118         (_initialize_xml_utils): register test_xml_escape_text_append as
14119         a selftest.
14120
14121 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
14122
14123         * defs.h: Remove MAX_REGISTER_SIZE.
14124         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
14125         asserts.
14126         * python/py-unwind.c (pyuw_sniffer): Likewise.
14127
14128 2018-03-07  Tom Tromey  <tom@tromey.com>
14129
14130         * linux-tdep.c (linux_info_proc): Update.
14131         * target.h (struct target_ops) <to_fileio_readlink>: Return
14132         optional<string>.
14133         (target_fileio_readlink): Return optional<string>.
14134         * remote.c (remote_hostio_readlink): Return optional<string>.
14135         * inf-child.c (inf_child_fileio_readlink): Return
14136         optional<string>.
14137         * target.c (target_fileio_readlink): Return optional<string>.
14138
14139 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
14140
14141         * regcache.c (cooked_read_test): Add riscv to the list of
14142         architectures that have a save_reggroup.
14143
14144 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14145
14146         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
14147         value is not a dynamic class object.
14148
14149 2018-03-06  Tom Tromey  <tom@tromey.com>
14150
14151         * rust-exp.y: Formatting fixes.
14152
14153 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14154
14155         * riscv-tdep.c (riscv_register_name): Remove target description
14156         support.
14157         (riscv_gdbarch_init): Remove target description check.
14158
14159 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14160
14161         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
14162         comment.
14163         * riscv-tdep.h: Likewise.
14164
14165 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14166
14167         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
14168         (riscv_pseudo_register_write): Delete.
14169         (riscv_gdbarch_init): Remove all use of pseudo registers.
14170
14171 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14172
14173         * record-btrace.c (btrace_print_lines): Replace cleanup
14174         parameter with RAII equivalents.
14175         (btrace_insn_history): Replace cleanup with RAII equivalents.
14176         * ui-out.h (make_cleanup_ui_out_list_begin_end,
14177         make_cleanup_ui_out_tuple_begin_end): Remove.
14178         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
14179         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
14180         make_cleanup_ui_out_list_begin_end): Remove.
14181
14182 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14183
14184         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
14185         parameter types to std::vector.  Use bool.
14186         (record_btrace_wait): Replace VEC(tp_t) with
14187         std::vector<thread_info *>.
14188         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
14189
14190 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14191
14192         * record-btrace.c (record_btrace_disable_callback): Remove.
14193         (struct scoped_btrace_disable): New.
14194         (record_btrace_open): Use scoped_btrace_disable.
14195
14196 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14197
14198         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
14199         reading values from registers.
14200
14201 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14202
14203         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
14204         where appropriate.
14205
14206 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14207
14208         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
14209         change parameter type.  Use GDB's print functions, and use
14210         core_addr_to_string where appropriate.
14211         (riscv_push_dummy_call): Use core_addr_to_string where
14212         appropriate, update call to riscv_print_arg_location, and reindent
14213         a few lines.
14214         (riscv_return_value): Update call to riscv_print_arg_location.
14215
14216 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14217             Tim Newsome <tim@sifive.com>
14218             Albert Ou <a0u@eecs.berkeley.edu>
14219             Darius Rad <darius@bluespec.com>
14220
14221         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
14222         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
14223         (ALLDEPFILES): Add riscv-tdep.c
14224         * configure.tgt: Add riscv support.
14225         * riscv-tdep.c: New file.
14226         * riscv-tdep.h: New file.
14227         * NEWS: Mention new target.
14228         * MAINTAINERS: Add entry for riscv.
14229
14230 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14231
14232         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
14233         fields within aggregates.
14234
14235 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
14236
14237         * record-btrace.c (btrace_print_lines): Change type of flags to
14238         gdb_disassembly_flags.
14239
14240 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14241
14242         * fbsd-nat.c: Include "inf-ptrace.h".
14243         (USE_SIGTRAP_SIGINFO): Conditionally define.
14244         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
14245         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
14246         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
14247         function.
14248         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
14249         Likewise.
14250         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
14251         Likewise.
14252         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
14253         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
14254         "supports_stopped_by_hw_breakpoint" target methods.
14255
14256 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14257
14258         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
14259         * fbsd-nat.c (debug_fbsd_nat): New variable.
14260         (show_fbsd_nat_debug): New function.
14261         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
14262         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
14263
14264 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14265
14266         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
14267         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
14268         prototype.
14269         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
14270         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
14271         method.
14272
14273 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14274
14275         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
14276         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
14277
14278 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14279
14280         * charset.c (struct charset_vector): New.
14281         (charsets): Change type to charset_vector.
14282         (find_charset_names): Adjust.
14283         (add_one): Adjust.
14284         (_initialize_charset): Adjust.
14285
14286 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14287
14288         * progspace.h (struct program_space) <deleted_solibs>: Change
14289         type to std::vector<std::string>.
14290         * progspace.c (clear_program_space_solib_cache): Adjust.
14291         * breakpoint.c (print_solib_event): Adjust.
14292         (check_status_catch_solib): Adjust.
14293         * solib.c (update_solib_list): Adjust.
14294         * ui-out.h (class ui_out) <field_string>: New overload.
14295         * ui-out.c (ui_out::field_string): New overload.
14296
14297 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14298
14299         * progspace.h (struct program_space): Add constructor and
14300         destructor, initialize fields.
14301         (add_program_space): Remove.
14302         * progspace.c (add_program_space): Rename to...
14303         (program_space::program_space): ... this.
14304         (release_program_space): Rename to...
14305         (program_space::~program_space): ... this.
14306         (delete_program_space): Use delete to delete program_space.
14307         (initialize_progspace): Use new to allocate program_space.
14308         * inferior.c (add_inferior_with_spaces): Likewise.
14309         (clone_inferior_command): Likewise.
14310         * infrun.c (follow_fork_inferior): Likewise.
14311         (handle_vfork_child_exec_or_exit): Likewise.
14312
14313 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14314
14315         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
14316         (delim_string_to_char_ptr_vec): Return std::vector of
14317         gdb::unique_xmalloc_ptr.
14318         (dirnames_to_char_ptr_vec_append): Take std::vector of
14319         gdb::unique_xmalloc_ptr.
14320         (dirnames_to_char_ptr_vec): Return std::vector of
14321         gdb::unique_xmalloc_ptr.
14322         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
14323         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
14324         (delim_string_to_char_ptr_vec): Return an std::vector of
14325         gdb::unique_xmalloc_ptr, adjust the code.
14326         (dirnames_to_char_ptr_vec_append): Take an std::vector of
14327         gdb::unique_xmalloc_ptr, adjust the code.
14328         (dirnames_to_char_ptr_vec): Return an std::vector of
14329         gdb::unique_xmalloc_ptr, adjust the code.
14330         * auto-load.c (auto_load_safe_path_vec): Change type to
14331         std::vector of gdb::unique_xmalloc_ptr.
14332         (auto_load_expand_dir_vars): Return an std::vector of
14333         gdb::unique_xmalloc_ptr, adjust the code.
14334         (auto_load_safe_path_vec_update): Adjust.
14335         (filename_is_in_auto_load_safe_path_vec): Adjust.
14336         (auto_load_objfile_script_1): Adjust.
14337         * build-id.c (build_id_to_debug_bfd): Adjust.
14338         * linux-thread-db.c (thread_db_load_search): Adjust.
14339         * source.c (add_path): Adjust.
14340         (openp): Adjust.
14341         * symfile.c (find_separate_debug_file): Adjust.
14342         * utils.c (do_free_char_ptr_vec): Remove.
14343         (make_cleanup_free_char_ptr_vec): Remove.
14344
14345 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
14346
14347         PR gdb/22907
14348         * common/pathstuff.c: Conditionally include "<windows.h>".
14349
14350 2018-03-01  Georg Sauthoff  <mail@georg.so>
14351
14352         PR gdb/22888
14353         * gcore.in: Quote variables and switch interpreter to bash.
14354
14355 2018-03-01  Tom Tromey  <tom@tromey.com>
14356
14357         * dwarf2read.c (alloc_discriminant_info): Fix default_index
14358         assertion.  Add assertion for discriminant_index.
14359         (quirk_rust_enum): Use correct base type name in univariant case.
14360
14361 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
14362
14363         * record.c (get_call_history_modifiers): Return a
14364         record_print_flags.
14365         (cmd_record_call_history): Adjust.
14366         * record-btrace.c (record_btrace_call_history): Adjust.
14367         (record_btrace_call_history_range): Adjust.
14368         (record_btrace_call_history_from): Adjust.
14369         * target-debug.h (target_debug_print_record_print_flags): New.
14370         * target-delegates.c: Re-generate.
14371         * target.c (target_call_history): Change flags type.
14372         (target_call_history_from): Likewise.
14373         (target_call_history_range): Likewise.
14374         * target.h (struct target_ops) <target_call_history>: Likewise.
14375         (target_call_history_from): Likewise.
14376         (target_call_history_range): Likewise.
14377
14378 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14379             Simon Marchi  <simon.marchi@polymtl.ca>
14380
14381         * common/common-utils.c: Include "sys/stat.h".
14382         (is_regular_file): Move here from "source.c"; change return
14383         type to "bool".
14384         * common/common-utils.h (is_regular_file): New prototype.
14385         * common/pathstuff.c (contains_dir_separator): New function.
14386         * common/pathstuff.h (contains_dir_separator): New prototype.
14387         * source.c: Don't include "sys/stat.h".
14388         (is_regular_file): Move to "common/common-utils.c".
14389
14390 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14391
14392         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
14393         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
14394         * auto-load.c: Include "common/pathstuff.h".
14395         * common/common-def.h (current_directory): Move here.
14396         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
14397         function.
14398         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
14399         prototype.
14400         * common/pathstuff.c: New file.
14401         * common/pathstuff.h: New file.
14402         * compile/compile.c: Include "common/pathstuff.h".
14403         * defs.h (current_directory): Move to "common/common-defs.h".
14404         * dwarf2read.c: Include "common/pathstuff.h".
14405         * exec.c: Likewise.
14406         * guile/scm-safe-call.c: Likewise.
14407         * linux-thread-db.c: Likewise.
14408         * main.c: Likewise.
14409         * nto-tdep.c: Likewise.
14410         * objfiles.c: Likewise.
14411         * source.c: Likewise.
14412         * symtab.c: Likewise.
14413         * utils.c: Include "common/pathstuff.h".
14414         (gdb_realpath): Move to "common/pathstuff.c".
14415         (gdb_realpath_keepfile): Likewise.
14416         (gdb_abspath): Likewise.
14417         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
14418         (gdb_realpath_keepfile): Likewise.
14419         (gdb_abspath): Likewise.
14420
14421 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
14422
14423         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
14424         wildcard process pid for super_resume for kernels with a
14425         specific bug.
14426
14427 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
14428
14429         * compile/compile.c (get_args): Add additional comments
14430         explaining function.
14431
14432 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
14433             Tom Tromey  <tom@tromey.com>
14434
14435         * target.h (memory_write_request_s): Remove typedef.  Don't define
14436         VEC.
14437         (target_write_memory_blocks): Change argument to std::vector.
14438         (struct memory_write_request): Add constructor.
14439         * target-memory.c (compare_block_starting_address): Return bool.
14440         Change argument types.
14441         (claim_memory): Change arguments to use std::vector.
14442         (split_regular_and_flash_blocks, blocks_to_erase)
14443         (compute_garbled_blocks): Likewise.
14444         (cleanup_request_data, cleanup_write_requests_vector): Remove.
14445         (target_write_memory_blocks): Change argument to std::vector.
14446         * symfile.c (struct load_section_data): Add constructor and
14447         destructor.  Use std::vector for "requests".
14448         (struct load_progress_data): Add initializers.
14449         (load_section_callback): Update.  Use "new".
14450         (clear_memory_write_data): Remove.
14451         (generic_load): Update.
14452
14453 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
14454
14455         * arch/aarch64.h: Use common/tdesc.h.
14456
14457 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14458
14459         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
14460         architecture with a 64-bit ABI.
14461
14462 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14463
14464         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
14465         ahead of target description loading.
14466
14467 2018-02-26  Tom Tromey  <tom@tromey.com>
14468
14469         * stack.c (backtrace_command_1): Update.
14470         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
14471         of "flags".
14472         * python/py-framefilter.c (py_print_frame)
14473         (gdbpy_apply_frame_filter): Change type of "flags".
14474         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
14475         of "flags".
14476         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
14477         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
14478         * extension.h (enum frame_filter_flag): Rename from
14479         frame_filter_flags.
14480         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
14481         (apply_ext_lang_frame_filter): Change type of "flags".
14482         * extension.c (apply_ext_lang_frame_filter): Change type of
14483         "flags".
14484         * extension-priv.h (struct extension_language_ops)
14485         <apply_frame_filter>: Change type of "flags".
14486
14487 2018-02-26  Tom Tromey  <tom@tromey.com>
14488
14489         PR python/16497:
14490         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
14491         off-by-one in py_end computation.
14492         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
14493         PRINT_MORE_FRAMES.
14494         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
14495         constant.
14496
14497 2018-02-26  Tom Tromey  <tom@tromey.com>
14498
14499         * dwarf2read.c (struct variant_field): New.
14500         (struct nextfield) <variant>: New field.
14501         (dwarf2_add_field): Handle DW_TAG_variant_part.
14502         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
14503         discriminated union.
14504         (read_structure_type): Handle DW_TAG_variant_part.
14505         (handle_struct_member_die): New function, extracted from
14506         process_structure_scope.  Handle DW_TAG_variant.
14507         (process_structure_scope): Handle discriminated unions.  Call
14508         handle_struct_member_die.
14509
14510 2018-02-26  Tom Tromey  <tom@tromey.com>
14511
14512         * rust-lang.h (rust_last_path_segment): Declare.
14513         * rust-lang.c (rust_last_path_segment): Now public.  Change
14514         contract.
14515         (struct disr_info): Remove.
14516         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
14517         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
14518         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
14519         (rust_enum_p, rust_enum_variant): New function.
14520         (rust_underscore_fields): Remove "offset" parameter.
14521         (rust_print_enum): New function.
14522         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
14523         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
14524         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
14525         enums.
14526         (rust_internal_print_type): New function, from rust_print_type.
14527         Remove enum code.
14528         (rust_print_type): Call rust_internal_print_type.
14529         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
14530         Update enum handling.
14531         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
14532         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
14533         (rust_union_quirks): New functions.
14534         (process_full_comp_unit, process_full_type_unit): Call
14535         rust_union_quirks.
14536         (process_structure_scope): Update rust_unions if necessary.
14537
14538 2018-02-26  Tom Tromey  <tom@tromey.com>
14539
14540         * value.h (value_union_variant): Declare.
14541         * valops.c (value_union_variant): New function.
14542         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
14543         (struct discriminant_info): New.
14544         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
14545         enumerator.
14546         (struct main_type) <flag_discriminated_union>: New field.
14547
14548 2018-02-26  Tom Tromey  <tom@tromey.com>
14549
14550         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14551         unittests/unpack-selftests.c.
14552         * unittests/unpack-selftests.c: New file.
14553         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
14554
14555 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14556
14557         * dwarf2read.c (struct partial_die_info) <read>: New method.
14558         (read_partial_die): Remove the declaration.
14559         (load_partial_dies): Update.
14560         (partial_die_info::partial_die_info):
14561         (read_partial_die): Change it to partial_die_info::read.
14562
14563 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14564
14565         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
14566         (fixup_partial_die): Remove declaration.
14567         (scan_partial_symbols): Update.
14568         (partial_die_parent_scope): Likewise.
14569         (partial_die_full_name): Likewise.
14570         (fixup_partial_die): Change it to partial_die_info::fixup.
14571
14572 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14573
14574         * dwarf2read.c (read_partial_die): Update the declaration.
14575         (load_partial_dies): Caller update.
14576         (read_partial_die): Remove one argument abbrev_len.
14577
14578 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14579
14580         * dwarf2read.c (struct partial_die_info): Add ctor, delete
14581         assignment operator.
14582         (load_partial_dies): Use ctor and copy ctor.
14583         (read_partial_die): Update.
14584         (dwarf2_cu::find_partial_die): Use ctor.
14585
14586 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14587
14588         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
14589         (find_partial_die_in_comp_unit): Change it to
14590         dwarf2_cu::find_partial_die.
14591         (find_partial_die): Update.
14592
14593 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14594
14595         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
14596         is NULL.
14597
14598 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14599
14600         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
14601
14602 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
14603
14604         * arch/amd64.h: Use common/tdesc.h.
14605         * arch/i386.c: Likewise.
14606         * arch/i386.h: Likewise.
14607         * arch/tic6x.c: Likewise.
14608         * arch/tdesc.h: Move file from here...
14609         * common/tdesc.h: ...to here.
14610         * features/aarch64-core.c: Regenerate.
14611         * features/aarch64-fpu.c: Regenerate.
14612         * features/i386/32bit-avx.c: Regenerate.
14613         * features/i386/32bit-avx512.c: Regenerate.
14614         * features/i386/32bit-core.c: Regenerate.
14615         * features/i386/32bit-linux.c: Regenerate.
14616         * features/i386/32bit-mpx.c: Regenerate.
14617         * features/i386/32bit-pkeys.c: Regenerate.
14618         * features/i386/32bit-sse.c: Regenerate.
14619         * features/i386/64bit-avx.c: Regenerate.
14620         * features/i386/64bit-avx512.c: Regenerate.
14621         * features/i386/64bit-core.c: Regenerate.
14622         * features/i386/64bit-linux.c: Regenerate.
14623         * features/i386/64bit-mpx.c: Regenerate.
14624         * features/i386/64bit-pkeys.c: Regenerate.
14625         * features/i386/64bit-segments.c: Regenerate.
14626         * features/i386/64bit-sse.c: Regenerate.
14627         * features/i386/x32-core.c: Regenerate.
14628         * features/tic6x-c6xp.c: Regenerate.
14629         * features/tic6x-core.c: Regenerate.
14630         * features/tic6x-gp.c: Regenerate.
14631         * target-descriptions.c: Use common/tdesc.h.
14632         * target-descriptions.h: Likewise.
14633
14634 2018-02-24  Tom Tromey  <tom@tromey.com>
14635
14636         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
14637         (try_thread_db_load_from_dir, thread_db_load_search): Use
14638         std::string.
14639         (info_auto_load_libthread_db_compare): Return bool.  Change
14640         argument types.
14641         (info_auto_load_libthread_db): Use std::vector, std::string.
14642         Remove cleanups.
14643
14644 2018-02-24  Tom Tromey  <tom@tromey.com>
14645
14646         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
14647         std::string.
14648         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
14649         std::string*.
14650         * gdbarch.c: Rebuild.
14651         * gdbarch.h: Rebuild.
14652         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
14653         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
14654         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
14655         std::string*.
14656
14657 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
14658
14659         * gdbtypes.h (sect_offset): Change type to uint64_t.
14660         (sect_offset_str): New function.
14661         * dwarf2read.c (create_addrmap_from_aranges): Use
14662         sect_offset_str.
14663         (error_check_comp_unit_head): Likewise.
14664         (create_debug_type_hash_table): Likewise.
14665         (read_cutu_die_from_dwo): Likewise.
14666         (init_cutu_and_read_dies): Likewise.
14667         (init_cutu_and_read_dies_no_follow): Likewise.
14668         (process_psymtab_comp_unit_reader): Likewise.
14669         (partial_die_parent_scope): Likewise.
14670         (peek_die_abbrev): Likewise.
14671         (process_queue): Likewise.
14672         (dwarf2_physname): Likewise.
14673         (read_namespace_alias): Likewise.
14674         (read_import_statement): Likewise.
14675         (create_dwo_cu_reader): Likewise.
14676         (create_cus_hash_table): Likewise.
14677         (lookup_dwo_cutu): Likewise.
14678         (inherit_abstract_dies): Likewise.
14679         (read_func_scope): Likewise.
14680         (read_call_site_scope): Likewise.
14681         (dwarf2_add_member_fn): Likewise.
14682         (read_common_block): Likewise.
14683         (read_module_type): Likewise.
14684         (read_typedef): Likewise.
14685         (read_subrange_type): Likewise.
14686         (load_partial_dies): Likewise.
14687         (read_partial_die): Likewise.
14688         (find_partial_die): Likewise.
14689         (read_str_index): Likewise.
14690         (dwarf2_string_attr): Likewise.
14691         (build_error_marker_type): Likewise.
14692         (lookup_die_type): Likewise.
14693         (dump_die_shallow): Likewise.
14694         (follow_die_ref): Likewise.
14695         (dwarf2_fetch_die_loc_sect_off): Likewise.
14696         (dwarf2_fetch_constant_bytes): Likewise.
14697         (follow_die_sig): Likewise.
14698         (get_signatured_type): Likewise.
14699         (get_DW_AT_signature_type): Likewise.
14700         (dwarf2_find_containing_comp_unit): Likewise.
14701         (set_die_type): Likewise.
14702
14703 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
14704
14705         * arch/aarch64.c: Include "common-defs.h".
14706         * arch/amd64.c: Likewise.
14707         * arch/i386.c: Likewise.
14708
14709 2018-02-21  Tom Tromey  <tom@tromey.com>
14710
14711         * value.h: (extract_field_op): Update.
14712         * eval.c (extract_field_op): Return a const char *.
14713         * expression.h (parse_expression_for_completion): Update.
14714         * completer.c (complete_expression): Update.
14715         (add_struct_fields): Make fieldname const.
14716         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
14717         (mark_completion_tag, parse_exp_in_context_1): Update.
14718         (parse_expression_for_completion): Change "name" to
14719         unique_xmalloc_ptr*.
14720
14721 2018-02-21  Tom Tromey  <tom@tromey.com>
14722
14723         * infcall.c (call_function_by_hand_dummy): Use std::vector.
14724
14725 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14726
14727         * avr-tdep.c (avr_read_pc): Change parameter type to
14728         readable_regcache.
14729         * gdbarch.sh (read_pc): Likewise.
14730         * gdbarch.c: Re-generated.
14731         * gdbarch.h: Re-generated.
14732         * hppa-tdep.c (hppa_read_pc): Change parameter type to
14733         readable_regcache.
14734         * ia64-tdep.c (ia64_read_pc): Likewise.
14735         * mips-tdep.c (mips_read_pc): Likewise.
14736         * spu-tdep.c (spu_read_pc): Likewise.
14737
14738 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14739
14740         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
14741         * regcache-dump.c: New file.
14742         * regcache.c: Move register_dump to regcache-dump.c.
14743         (maintenance_print_registers): Likewise.
14744         (maintenance_print_raw_registers): Likewise.
14745         (maintenance_print_cooked_registers): Likewise.
14746         (maintenance_print_register_groups): Likewise.
14747         (maintenance_print_remote_registers): Likewise.
14748         (_initialize_regcache): Likewise.
14749         * regcache.h (register_dump): Moved from regcache.c.
14750
14751 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14752
14753         * regcache.c (regcache::regcache): Update.
14754         (regcache::invalidate): Move it to detached_regcache::invalidate.
14755         (get_thread_arch_aspace_regcache): Update.
14756         (regcache::raw_update): Update.
14757         (regcache::cooked_read): Remove some code.
14758         (regcache::cooked_read_value): Likewise.
14759         (regcache::raw_write): Remove assert on m_readonly_p.
14760         (regcache::raw_supply_integer): Move it to
14761         detached_regcache::raw_supply_integer.
14762         (regcache::raw_supply_zeroed): Likewise.
14763         * regcache.h (detached_regcache) <raw_supply_integer>: New
14764         declaration.
14765         <raw_supply_zeroed, invalidate>: Likewise.
14766         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
14767         <invalidate>: Likewise.
14768         <m_readonly_p>: Removed.
14769
14770 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14771
14772         * infcmd.c (get_return_value): Let stop_regs point to
14773         get_current_regcache.
14774         * regcache.c (regcache::regcache): Remove.
14775         (register_dump_reg_buffer): New class.
14776         (regcache_print): Adjust.
14777         * regcache.h (regcache): Remove constructors.
14778
14779 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14780
14781         * regcache.c (class register_dump): New class.
14782         (register_dump_regcache, register_dump_none): New class.
14783         (register_dump_remote, register_dump_groups): New class.
14784         (regcache_print): Update.
14785         * regcache.h (regcache_dump_what): Move it to regcache.c.
14786         (regcache) <dump>: Remove.
14787
14788 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14789
14790         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
14791          reg_buffer_rw *.
14792         (jit_unwind_reg_set_impl): Call raw_supply.
14793         (jit_frame_sniffer): Use reg_buffer_rw.
14794         * record-full.c (record_full_core_regbuf): Change its type.
14795         (record_full_core_open_1): Use reg_buffer_rw.
14796         (record_full_close): Likewise.
14797         (record_full_core_fetch_registers): Use regcache->raw_supply.
14798         (record_full_core_store_registers): Likewise.
14799         * regcache.c (regcache::get_register_status): Move it to
14800         reg_buffer.
14801         (regcache_raw_set_cached_value): Remove.
14802         (regcache::raw_set_cached_value): Remove.
14803         (regcache::raw_write): Call raw_supply.
14804         (regcache::raw_supply): Move it to reg_buffer_rw.
14805         * regcache.h (regcache_raw_set_cached_value): Remove.
14806         (reg_buffer_rw): New class.
14807
14808 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14809
14810         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
14811         readonly_detached_regcache.
14812         (dummy_frame_prev_register): Use regcache->cooked_read.
14813         * frame.c (frame_save_as_regcache): Change return type.
14814         (frame_pop): Update.
14815         * frame.h (frame_save_as_regcache): Update declaration.
14816         * inferior.h (get_infcall_suspend_state_regcache): Update
14817         declaration.
14818         * infrun.c (infcall_suspend_state) <registers>: use
14819         readonly_detached_regcache.
14820         (save_infcall_suspend_state): Don't use regcache_dup.
14821         (get_infcall_suspend_state_regcache): Change return type.
14822         * linux-fork.c (struct fork_info) <savedregs>: Change to
14823         readonly_detached_regcache.
14824         <pc>: New field.
14825         (fork_save_infrun_state): Don't use regcache_dup.
14826         (info_checkpoints_command): Adjust.
14827         * mi/mi-main.c (register_changed_p): Update declaration.
14828         (mi_cmd_data_list_changed_registers): Use
14829         readonly_detached_regcache.
14830         (register_changed_p): Change parameter type to
14831         readonly_detached_regcache.
14832         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
14833         readonly_detached_regcache.
14834         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
14835         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
14836         New.
14837         (regcache::save): Move it to reg_buffer.
14838         (regcache::restore): Change parameter type.
14839         (regcache_dup): Remove.
14840         * regcache.h (reg_buffer) <save>: New method.
14841         (readonly_detached_regcache): New class.
14842         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
14843         readonly_detached_regcache.
14844         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
14845
14846 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14847
14848         * frame.c (frame_save_as_regcache): Use regcache method save.
14849         (frame_pop): Use regcache method restore.
14850         * infrun.c (restore_infcall_suspend_state): Likewise.
14851         * linux-fork.c (fork_load_infrun_state): Likewise.
14852         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
14853         save.
14854         * regcache.c (regcache_save): Remove.
14855         (regcache::restore): More asserts.
14856         (regcache_cpy): Remove.
14857         * regcache.h (regcache_save): Remove the declaration.
14858         (regcache::restore): Move from private to public.
14859         Remove the friend declaration of regcache_cpy.
14860         (regcache_cpy): Remove declaration.
14861
14862 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14863
14864         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
14865         parameter type to 'readable_regcache *'.
14866         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14867         * arm-tdep.c (arm_neon_quad_read): Likewise.
14868         (arm_pseudo_read): Likewise.
14869         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14870         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14871         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14872         * gdbarch.c: Re-generated.
14873         * gdbarch.h: Re-generated.
14874         * gdbarch.sh (pseudo_register_read): Change parameter type to
14875         'readable_regcache *'.
14876         (pseudo_register_read_value): Likewise.
14877         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
14878         (h8300_pseudo_register_read): Likewise.
14879         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
14880         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14881         (i386_pseudo_register_read_into_value): Likewise.
14882         (i386_pseudo_register_read_value): Likewise.
14883         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
14884         declaration.
14885         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
14886         * m32c-tdep.c (m32c_raw_read): Likewise.
14887         (m32c_read_flg): Likewise.
14888         (m32c_banked_register): Likewise.
14889         (m32c_banked_read): Likewise.
14890         (m32c_sb_read): Likewise.
14891         (m32c_part_read): Likewise.
14892         (m32c_cat_read): Likewise.
14893         (m32c_r3r2r1r0_read): Likewise.
14894         (m32c_pseudo_register_read): Likewise.
14895         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14896         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14897         (mep_pseudo_cr64_read): Likewise.
14898         (mep_pseudo_register_read): Likewise.
14899         * mips-tdep.c (mips_pseudo_register_read): Likewise.
14900         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14901         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14902         * regcache.c (regcache::raw_read): Move it to readable_regcache.
14903         (regcache::cooked_read): Likewise.
14904         (regcache::cooked_read_value): Likewise.
14905         (regcache_cooked_read_signed):
14906         (regcache::cooked_read): Likewise.
14907         * regcache.h (readable_regcache): New class.
14908         (regcache): Inherit readable_regcache.  Move some methods to
14909         readable_regcache.
14910         * rl78-tdep.c (rl78_pseudo_register_read): Change
14911         parameter type to 'readable_regcache *'.
14912         * rs6000-tdep.c (do_regcache_raw_read): Remove.
14913         (e500_pseudo_register_read): Change parameter type to
14914         'readable_regcache *'.
14915         (dfp_pseudo_register_read): Likewise.
14916         (vsx_pseudo_register_read): Likewise.
14917         (efpr_pseudo_register_read): Likewise.
14918         * s390-tdep.c (s390_pseudo_register_read): Likewise.
14919         * sh-tdep.c (sh_pseudo_register_read): Likewise.
14920         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
14921         (sh64_pseudo_register_read): Likewise.
14922         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
14923         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14924         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
14925         (spu_pseudo_register_read): Likewise.
14926         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14927         (xtensa_pseudo_register_read): Likewise.
14928
14929 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14930
14931         * regcache.c (regcache::regcache): Call reg_buffer ctor.
14932         (regcache::arch): Move it to reg_buffer::arch.
14933         (regcache::register_buffer): Likewise.
14934         (regcache::assert_regnum): Likewise.
14935         (regcache::num_raw_registers): Likewise.
14936         * regcache.h (reg_buffer): New class.
14937         (regcache): Inherit reg_buffer.
14938
14939 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
14940
14941         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
14942         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
14943
14944 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
14945
14946         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
14947
14948 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
14949
14950         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
14951         (SFILES): Remove common/*.c files.
14952         (COMMON_OBS): Remove some *.o files built from common/*.c files.
14953         * common/common.host: Add common reference.
14954         * configure.ac: Likewise.
14955         * configure: Regenerate.
14956
14957 2018-02-16  Yao Qi  <yao.qi@linaro.org>
14958
14959         * block.c (block_namespace_info): Inherit allocate_on_obstack.
14960         (block_initialize_namespace): Use new.
14961         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
14962         (dwarf2_free_objfile): Use delete.
14963         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
14964         (copy_type_recursive): Use new.
14965         * gdb_obstack.h (allocate_on_obstack): New.
14966
14967 2018-02-15  Yao Qi  <yao.qi@linaro.org>
14968
14969         PR gdb/22849
14970         * inferior.c (exit_inferior_1): Reset inf->control.
14971
14972 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
14973
14974         * ada-lang.c (ada_to_fixed_value_create): Delete advance
14975         declaration.
14976
14977 2018-02-14  Pedro Alves  <palves@redhat.com>
14978
14979         * frame-unwind.c (frame_unwind_try_unwinder): Always call
14980         frame_cleanup_after_sniffer on exception.
14981
14982 2018-02-14  Tom Tromey  <tom@tromey.com>
14983
14984         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
14985         const.
14986         (solib_bfd_open): Make pathname const.
14987         * solib.c (solib_bfd_open): Make pathname const.
14988         * solib-spu.c (spu_bfd_fopen): Make name const.
14989         (spu_bfd_open): Make pathname const.
14990         * solib-darwin.c (darwin_bfd_open): Make pathname const.
14991         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
14992
14993 2018-02-14  Tom Tromey  <tom@tromey.com>
14994
14995         * symfile.c (symfile_bfd_open): Update.
14996         * source.h (openp, source_full_path_of, find_and_open_source):
14997         Change argument type to unique_xmalloc_ptr.
14998         * source.c (openp): Take a unique_xmalloc_ptr.
14999         (source_full_path_of, find_and_open_source): Likewise.
15000         (open_source_file, symtab_to_fullname): Update.
15001         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
15002         unique_xmalloc_ptr.
15003         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
15004         (exec_file_find): Update.
15005         * psymtab.c (psymtab_to_fullname): Update.
15006         * nto-tdep.h (nto_find_and_open_solib): Update.
15007         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
15008         unique_xmalloc_ptr.
15009         * exec.c (exec_file_attach): Update.
15010         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
15011         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
15012
15013 2018-02-14  Tom Tromey  <tom@tromey.com>
15014
15015         * solib.c: Include source.h.
15016         * nto-tdep.c: Include source.h.
15017         * mi/mi-cmd-env.c: Include source.h.
15018         * infcmd.c: Include source.h.
15019         * exec.c: Include source.h.
15020         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
15021         (add_path, directory_switch, source_path, init_source_path): Move
15022         declarations...
15023         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
15024         (add_path, directory_switch, source_path, init_source_path):
15025         ...here.
15026
15027 2018-02-14  Tom Tromey  <tom@tromey.com>
15028
15029         * solist.h (exec_file_find, solib_find): Return
15030         unique_xmalloc_ptr.
15031         (solib_bfd_fopen): Take a const char *.
15032         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
15033         (exec_file_find, solib_find): Likewise.
15034         (solib_bfd_fopen): Do not take ownership of "pathname".
15035         (solib_bfd_open): Use unique_xmalloc_ptr.
15036         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
15037         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
15038         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
15039         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
15040
15041 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
15042
15043         * ada-lang.c (name_match_type_from_name): Remove reference to
15044         ada_name_for_lookup in function's documentation.
15045         * ada-lang.h (ada_name_for_lookup): Delete declaration.
15046
15047 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
15048
15049         * defs.h (enum openp_flags): New enum.
15050         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
15051         Move to enum openp_flags.
15052         (openp_flags): New enum flags.
15053         (openp): Change parameter type to openp_flags.
15054         * source.c (openp): Change parameter type to openp_flags.
15055         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
15056         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
15057
15058 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
15059
15060         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
15061         per-command.
15062
15063 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
15064
15065         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
15066         into...
15067         (class dwarf2_queue_guard): ...the destructor of this new class.
15068         (dw2_do_instantiate_symtab): Create instance of the new class
15069         dwarf2_queue_guard, remove cleanup.
15070
15071 2018-02-09  Tom Tromey  <tom@tromey.com>
15072
15073         * source.c (find_source_lines): Don't reference past the end of
15074         the vector.
15075
15076 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15077
15078         * remote.c (remote_btrace_maybe_reopen): Change error message.
15079         * btrace.c (btrace_enable): Likewise.
15080         (parse_xml_btrace): Likewise.
15081         (parse_xml_btrace_conf): Likewise.
15082
15083 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15084
15085         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
15086         (linux_enable_pt, linux_enable_bts): Call
15087         diagnose_perf_event_open_fail.
15088
15089 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15090
15091         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
15092         Remove parameter and change return type.  Update callers.  Move it.
15093         (linux_enable_bts, linux_enable_pt): Improve error message.
15094         (linux_enable_pt): Remove zero buffer size check.
15095         (linux_enable_btrace): Improve error messages.  Remove NULL return
15096         check.
15097
15098 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15099
15100         * btrace.c (btrace_enable): Remove target_supports_btrace call.
15101         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
15102         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
15103         (linux_supports_pt, linux_supports_btrace): Remove.
15104         (linux_enable_bts): Call cpu_supports_bts.
15105         * nat/linux-btrace.h (linux_supports_btrace): Remove.
15106         * remote.c (remote_supports_btrace): Remove.
15107         (init_remote_ops): Remove remote_supports_btrace.
15108         * target-delegates.c: Regenerated.
15109         * target.c (target_supports_btrace): Remove.
15110         * target.h (target_ops) <to_supports_btrace>: Remove
15111         (target_supports_btrace): Remove.
15112         * x86-linux-nat.c (x86_linux_create_target): Remove
15113         linux_supports_btrace.
15114
15115 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15116
15117         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
15118         btrace failed.
15119         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
15120         exception and use message in own exception.
15121
15122 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15123
15124         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
15125         (perf_event_pt_event_type): Use gdb_file_up.
15126         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
15127         scoped_fd, and scoped_mmap.
15128
15129 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15130
15131         * common/scoped_mmap.h: New.
15132         * unittests/scoped_mmap-selftest.c: New.
15133         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
15134         unittests/scoped_mmap-selftest.c.
15135
15136 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15137
15138         * common/scoped_fd.h: New.
15139         * unittests/scoped_fd-selftest.c: New.
15140         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
15141         unittests/scoped_fd-selftest.c.
15142
15143 2018-02-09  Tom Tromey  <tom@tromey.com>
15144
15145         * auto-load.c (auto_load_section_scripts): Use
15146         gdb::unique_xmalloc_ptr.
15147
15148 2018-02-09  Tom Tromey  <tom@tromey.com>
15149
15150         * auto-load.c (execute_script_contents): Use std::string.
15151
15152 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
15153
15154         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
15155         Python function, rather than a new command.
15156
15157 2018-02-08  Tom Tromey  <tom@tromey.com>
15158
15159         * solib.c (solib_find_1): Use std::string.
15160         (solib_bfd_fopen): Use unique_xmalloc_ptr.
15161
15162 2018-02-08  Tom Tromey  <tom@tromey.com>
15163
15164         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
15165
15166 2018-02-08  Tom Tromey  <tom@tromey.com>
15167
15168         * source.c (find_source_lines): Use gdb::def_vector.
15169
15170 2018-02-08  Tom Tromey  <tom@tromey.com>
15171
15172         * macrocmd.c (struct temporary_macro_definition): New.
15173         (macro_define_command): Use temporary_macro_definition.  Remove
15174         cleanups.
15175         (free_macro_definition_ptr): Remove.
15176
15177 2018-02-08  Tom Tromey  <tom@tromey.com>
15178
15179         * macroexp.c (maybe_expand): Use std::string.
15180
15181 2018-02-08  Tom Tromey  <tom@tromey.com>
15182
15183         * macroexp.c (struct macro_buffer): Add initializers for some
15184         members.
15185         (init_buffer, init_shared_buffer, free_buffer)
15186         (free_buffer_return_text): Remove.
15187         (macro_buffer): New constructors.
15188         (~macro_buffer): New destructor.
15189         (macro_buffer::set_shared): New method.
15190         (macro_buffer::resize_buffer, macro_buffer::appendc)
15191         (macro_buffer::appendmem): Now methods, not free functions.
15192         (set_token, append_tokens_without_splicing, stringify)
15193         (macro_stringify): Update.
15194         (gather_arguments): Change return type.  Remove argc_p argument,
15195         add args_ptr argument.  Use std::vector.
15196         (substitute_args): Remove argc argument.  Accept std::vector.
15197         (expand): Update.  Use std::vector.
15198         (scan, macro_expand, macro_expand_next): Update.
15199
15200 2018-02-08  Tom Tromey  <tom@tromey.com>
15201
15202         * symtab.c (default_collect_symbol_completion_matches_break_on):
15203         Use unique_xmalloc_ptr.
15204         * macroscope.h: (sal_macro_scope, user_macro_scope)
15205         (default_macro_scope): Return unique_xmalloc_ptr.
15206         * macroscope.c (sal_macro_scope, user_macro_scope)
15207         (default_macro_scope): Return unique_xmalloc_ptr.
15208         * macroexp.h (macro_expand, macro_expand_once): Return
15209         unique_xmalloc_ptr.
15210         * macroexp.c (macro_expand, macro_expand_once): Return
15211         unique_xmalloc_ptr.
15212         * macrocmd.c (macro_expand_command, macro_expand_once_command)
15213         (info_macro_command, info_macros_command): Use
15214         unique_xmalloc_ptr.
15215         * compile/compile-c-support.c (write_macro_definitions): Use
15216         unique_xmalloc_ptr.
15217         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
15218
15219 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
15220
15221         * value.c (value_static_field): Assign field type instead of
15222         containing type when returning an optimized out value.
15223
15224 2018-02-06  Yao Qi  <yao.qi@linaro.org>
15225
15226         * ft32-tdep.c (ft32_read_pc): Remove.
15227         (ft32_write_pc): Remove.
15228         (ft32_gdbarch_init): Update.
15229         * m32r-tdep.c (m32r_read_pc): Remove.
15230         (m32r_gdbarch_init): Update.
15231         * mep-tdep.c (mep_read_pc): Remove.
15232         (mep_gdbarch_init): Update.
15233         * microblaze-tdep.c (microblaze_write_pc): Remove.
15234         (microblaze_gdbarch_init): Update.
15235         * mn10300-tdep.c (mn10300_read_pc): Remove.
15236         (mn10300_write_pc): Remove.
15237         (mn10300_gdbarch_init): Update.
15238         * moxie-tdep.c (moxie_read_pc): Remove.
15239         (moxie_write_pc): Remove.
15240         (moxie_gdbarch_init): Update.
15241
15242 2018-02-06  Yao Qi  <yao.qi@linaro.org>
15243
15244         * expprint.c (print_subexp_standard): Handle
15245         OP_F77_UNDETERMINED_ARGLIST.
15246         (dump_subexp_body_standard): Likewise.
15247
15248 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
15249
15250         * target-descriptions.c (tdesc_element_visitor) Add empty
15251         implementations.
15252         (tdesc_type): Move make_gdb_type from here.
15253         (tdesc_type_builtin): Likewise.
15254         (tdesc_type_vector): Likewise.
15255         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
15256         (make_gdb_type_struct): Move from tdesc_type_with_fields.
15257         (make_gdb_type_union): Likewise.
15258         (make_gdb_type_flags): Likewise.
15259         (make_gdb_type_enum): Likewise.
15260         (make_gdb_type): New function.
15261         (tdesc_register_type): Use static make_gdb_type.
15262
15263 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
15264
15265         * infcmd.c (default_print_one_register_info): Align natural-format
15266         column values consistently one under another.
15267         (pad_to_column): New function.
15268
15269 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
15270
15271         * dwarf2read.c (dwarf2_physname): Move commment.
15272
15273 2018-02-01  Leszek Swirski  <leszeks@google.com>
15274
15275         * varobj.c (varobj_formatted_print_options): Allow recursive
15276         pretty printing if pretty printing is enabled.
15277
15278 2018-02-01  Leszek Swirski  <leszeks@google.com>
15279
15280         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
15281         names after a structop as a filename.
15282
15283 2018-02-01  Yao Qi  <yao.qi@linaro.org>
15284
15285         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
15286         (arm_record_coproc_data_proc): Likewise.
15287
15288 2018-02-01  Yao Qi  <yao.qi@linaro.org>
15289
15290         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
15291
15292 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
15293
15294         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
15295         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
15296
15297 2018-01-31  Pedro Alves  <palves@redhat.com>
15298
15299         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
15300         * inflow.c (child_terminal_save_inferior): Wrap reference to
15301         tcgetpgrp in HAVE_TERMIOS_H.
15302         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
15303         _WIN32.
15304         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
15305         always iterate over all inferiors.
15306         (gdbsim_cntrl_c): Adjust.
15307         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
15308
15309 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15310
15311         * gdbtypes.c (lookup_array_range_type): Make sure the array's
15312         index type is objfile-owned if the element type is as well.
15313
15314 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15315
15316         GDB 8.1 released.
15317
15318 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15319
15320         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
15321         "features/s390x-linux64.c".
15322         (_initialize_s390_linux_tdep): Remove initialization of tdescs
15323         s390_linux32 and s390x_linux64.
15324         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
15325         default tdesc.
15326         * s390-tdep.c: Include "features/s390-linux32.c" and
15327         "features/s390x-linux64.c".
15328         (s390_tdesc_valid): Add check for tdesc_has_registers.
15329         (s390_gdbarch_init): Make sure there is always a valid tdesc.
15330         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
15331         tdesc_s390x_linux64.
15332         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
15333         tdesc_s390x_linux64 to...
15334         * s390-tdep.h: ...here.
15335
15336 2018-01-30  Pedro Alves  <palves@redhat.com>
15337
15338         PR gdb/13211
15339         * config.in, configure: Regenerate.
15340         * configure.ac: Check for getpgid.
15341         * go32-nat.c (go32_pass_ctrlc): New.
15342         (go32_target): Install it.
15343         * inf-child.c (inf_child_target): Install
15344         child_terminal_save_inferior, child_pass_ctrlc and
15345         child_interrupt.
15346         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
15347         (inf_ptrace_target): No longer install it.
15348         * infcmd.c (interrupt_target_1): Adjust.
15349         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
15350         (child_interrupt): Declare.
15351         (inferior::terminal_state): New.
15352         * inflow.c (struct terminal_info): Update comments.
15353         (inferior_process_group): Delete.
15354         (terminal_is_ours): Delete.
15355         (gdb_tty_state): New.
15356         (child_terminal_init): Adjust.
15357         (is_gdb_terminal, sharing_input_terminal_1)
15358         (sharing_input_terminal): New functions.
15359         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
15360         Set the process's actual process group in the foreground if
15361         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
15362         mark terminal as the inferior's if not sharing GDB's terminal.
15363         Don't check attach_flag.
15364         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
15365         pass down a target_terminal_state.
15366         (child_terminal_save_inferior): New, factored out from ...
15367         (child_terminal_ours_1): ... this.  Handle
15368         target_terminal_state::is_ours_for_output.
15369         (child_interrupt, child_pass_ctrlc): New.
15370         (inflow_inferior_exit): Clear the inferior's terminal_state.
15371         (copy_terminal_info): Copy the inferior's terminal state.
15372         (_initialize_inflow): Remove reference to terminal_is_ours.
15373         * inflow.h (inferior_process_group): Delete.
15374         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
15375         * procfs.c (procfs_target): Don't install procfs_interrupt.
15376         (procfs_interrupt): Delete.
15377         * remote.c (remote_serial_quit_handler): Adjust.
15378         (remote_interrupt): Remove ptid parameter.  Adjust.
15379         * target-delegates.c: Regenerate.
15380         * target.c: Include "terminal.h".
15381         (target_terminal::terminal_state): Rename to ...
15382         (target_terminal::m_terminal_state): ... this.
15383         (target_terminal::init): Adjust.
15384         (target_terminal::inferior): Adjust to per-inferior
15385         terminal_state.
15386         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
15387         (target_terminal::ours, target_terminal::ours_for_output): Use
15388         target_terminal_is_ours_kind.
15389         (target_interrupt): Remove ptid parameter.  Adjust.
15390         (default_target_pass_ctrlc): Adjust.
15391         * target.h (target_ops::to_terminal_save_inferior): New field.
15392         (target_ops::to_interrupt): Remove ptid_t parameter.
15393         (target_interrupt): Remove ptid_t parameter.  Update comment.
15394         (target_pass_ctrlc): Update comment.
15395         * target/target.h (target_terminal_state): New scoped enum,
15396         factored out of ...
15397         (target_terminal::terminal_state): ... here.
15398         (target_terminal::inferior): Update comments.
15399         (target_terminal::restore_inferior): New.
15400         (target_terminal::is_inferior, target_terminal::is_ours)
15401         (target_terminal::is_ours_for_output): Adjust.
15402         (target_terminal::scoped_restore_terminal_state): Adjust to
15403         rename, and call restore_inferior() instead of inferior().
15404         (target_terminal::scoped_restore_terminal_state::m_state): Change
15405         type.
15406         (target_terminal::terminal_state): Rename to ...
15407         (target_terminal::m_terminal_state): ... this and change type.
15408
15409 2018-01-30  Pedro Alves  <palves@redhat.com>
15410
15411         * linux-nat.c (wait_for_signal): New function.
15412         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
15413         directly.
15414         (async_terminal_is_ours)
15415         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
15416         (linux_nat_add_target): Don't override
15417         to_terminal_inferior/to_terminal_ours.
15418
15419 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
15420
15421         * remote.c (remote_follow_fork): Don't call "detach_inferior".
15422
15423 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
15424
15425         * dwarf2read.c (free_dwo_files): Add forward-declaration.
15426         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
15427         dwarf2_per_objfile_free here.
15428         (dwarf2_per_objfile_free): Remove.
15429         (_initialize_dwarf2_read): Don't register
15430         dwarf2_per_objfile_free as a registry cleanup.
15431
15432 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
15433
15434         Avoid compilation errors in MinGW native builds
15435
15436         The error is triggered by including python-internal.h, and the
15437         error message is:
15438
15439              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
15440                       from build-gnulib/import/math.h:27,
15441                       from d:/usr/Python26/include/pyport.h:235,
15442                       from d:/usr/Python26/include/Python.h:58,
15443                       from python/python-internal.h:94,
15444                       from python/py-arch.c:24:
15445              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
15446         using ::hypot;
15447                 ^~~~~
15448
15449         This happens because Python headers define 'hypot' to expand t
15450         '_hypot' in the Windows builds.
15451         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
15452         'hypoth'.  This avoids a compilation error.
15453
15454 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15455
15456         * MAINTAINERS (Write After Approval): Fix ordering.
15457
15458 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15459
15460         * MAINTAINERS (Write After Approval): Add Alan Hayward.
15461
15462 2018-01-26  Alan Modra  <amodra@gmail.com>
15463
15464         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
15465         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
15466         Remove nop.  Make const.  Comment.
15467         (powerpc32_plt_stub_so_2): New.
15468         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
15469         Correct count.  Update uses.
15470         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
15471         Move common code reading PLT entry word.  Correct
15472         powerpc32_plt_stub PLT address calculation.
15473         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
15474         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
15475         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
15476         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
15477         (ppc64_standard_linkage8): Likewise.
15478         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
15479         Correct insns description.
15480         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
15481
15482 2018-01-24  Pedro Alves  <palves@redhat.com>
15483
15484         GCC PR libstdc++/83906
15485         * gdbtypes.c (operator==(const dynamic_prop &,
15486         const dynamic_prop &)): New.
15487         (operator==(const range_bounds &, const range_bounds &)): New.
15488         (check_types_equal): Use them instead of memcmp.
15489         * gdbtypes.h (operator==(const dynamic_prop &,
15490         const dynamic_prop &)): Declare.
15491         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
15492         (operator==(const range_bounds &, const range_bounds &)): Declare.
15493         (operator!=(const range_bounds &, const range_bounds &)): Declare.
15494
15495 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15496
15497         * s390-linux-tdep.c (s390_record_address_mask)
15498         (s390_record_calc_disp_common, s390_record_calc_disp)
15499         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15500         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15501         (s390_process_record): Move to s390-tdep.c.
15502         (s390_linux_init_abi_any): Adjust.
15503         * s390-tdep.c (s390_record_address_mask)
15504         (s390_record_calc_disp_common, s390_record_calc_disp)
15505         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15506         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15507         (s390_process_record): Moved from s390-linux-tdep.c
15508         (s390_gdbarch_init): Adjust.
15509
15510 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15511
15512         * s390-linux-nat.c (s390-tdep.h): New include.
15513         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
15514         (HFILES_NO_SRCDIR): Add s390-tdep.h.
15515         (ALLDEPFILES): Add s390-tdep.c.
15516         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
15517         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
15518         * s390-tdep.h: ...this.  New file.
15519         * s390-linux-tdep.c (s390-tdep.h): New include.
15520         (_initialize_s390_tdep): Rename to...
15521         (_initialize_s390_linux_tdep): ...this and adjust.
15522         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
15523         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
15524         s390-tdep.h.
15525         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
15526         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
15527         (s390_is_partial_instruction, s390_software_single_step)
15528         (is_non_branch_ril, s390_displaced_step_copy_insn)
15529         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
15530         (s390_prologue_data, s390_addr, s390_store, s390_load)
15531         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
15532         (s390_register_call_saved, s390_guess_tracepoint_registers)
15533         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
15534         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
15535         (s390_pseudo_register_name, s390_pseudo_register_type)
15536         (s390_pseudo_register_read, s390_pseudo_register_write)
15537         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
15538         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
15539         (s390_addr_bits_remove, s390_address_class_type_flags)
15540         (s390_address_class_type_flags_to_name)
15541         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
15542         (s390_function_arg_float, s390_function_arg_vector)
15543         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
15544         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
15545         (s390_frame_align, s390_register_return_value, s390_return_value)
15546         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
15547         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
15548         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
15549         (s390_trad_frame_prev_register, s390_unwind_cache)
15550         (s390_prologue_frame_unwind_cache)
15551         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
15552         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
15553         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
15554         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
15555         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
15556         (s390_frame_base_address, s390_local_base_address)
15557         (s390_frame_base, s390_gcc_target_options)
15558         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
15559         (s390_validate_reg_range, s390_tdesc_valid)
15560         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
15561         * s390-tdep.c: ...this.  New file.
15562
15563 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15564
15565         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
15566         (s390_process_record, s390_gdbarch_tdep_alloc)
15567         (s390_linux_init_abi_any): Use/set new hook.
15568
15569 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15570
15571         * s390-linux-tdep.c (osabi.h): New include.
15572         (s390_linux_init_abi_31, s390_linux_init_abi_64)
15573         (s390_linux_init_abi_any): New functions.
15574         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
15575
15576 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15577
15578         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
15579         tdesc_has_registers check
15580
15581 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15582
15583         * s390-linux-tdep.c (s390_tdesc_valid): New function.
15584         (s390_validate_reg_range): New macro.
15585         (s390_gdbarch_init): Adjust.
15586
15587 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15588
15589         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
15590         (s390_gdbarch_tdep_alloc): Adjust.
15591         (s390_gdbarch_init): Adjust.
15592
15593 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15594
15595         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
15596         <have_tdb>: Change type to bool.
15597         (s390_gdbarch_tdep_alloc): Adjust.
15598         (s390_gdbarch_init): Adjust.
15599
15600 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15601
15602         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
15603         (gdbarch_tdep) <have_upper, have_vx>: New fields.
15604         (s390_gdbarch_tdep_alloc): New function.
15605         (s390_gdbarch_init): Allocate tdep at start and use its fields
15606         instead of separate variables.
15607
15608 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15609
15610         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
15611         when looking for cached gdbarch and add comment for remaining.
15612
15613 2018-01-22  Pedro Alves  <palves@redhat.com>
15614             Sergio Durigan Junior  <sergiodj@redhat.com>
15615
15616         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
15617         case.
15618
15619 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
15620
15621         * MAINTAINERS: Update my company e-mail address.
15622
15623 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15624
15625         * regcache.c (cooked_write_test): New function.
15626         (_initialize_regcache): Register the test.
15627
15628 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15629
15630         * ia64-tdep.c (ia64_pseudo_register_read): Call
15631         regcache->cooked_read instead of regcache_cooked_read_unsigned.
15632         * m32c-tdep.c (m32c_cat_read): Likewise.
15633         (m32c_r3r2r1r0_read): Likewise.
15634         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
15635         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
15636
15637 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15638
15639         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
15640         method raw_read instead of regcache_raw_read.
15641         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
15642         * arm-tdep.c (arm_neon_quad_read): Likewise.
15643         * avr-tdep.c (avr_pseudo_register_read): Likewise.
15644         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
15645         * frv-tdep.c (frv_pseudo_register_read): Likewise.
15646         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
15647         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
15648         (i386_pseudo_register_read_into_value): Likewise.
15649         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
15650         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
15651         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
15652         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
15653         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
15654         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
15655         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
15656         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
15657         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
15658
15659 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15660
15661         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
15662         * configure.tgt: Remove target mt.
15663         * mt-tdep.c: Remove.
15664         * regcache.c (cooked_read_test): Remove the check for mt.
15665
15666 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15667
15668         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
15669         instead of gdbarch_pseudo_register_read_value.
15670
15671 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15672
15673         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
15674         language is Ada.
15675
15676 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15677
15678         * linespec.c (create_sals_line_offset): Remove code that preserved
15679         the symtab_and_line's line number.
15680
15681 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15682
15683         * varobj.c (varobj_create): Don't set valid_block when creating a
15684         floating varobj.
15685
15686 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15687
15688         * varobj.c (varobj_create): Remove out of date comment.
15689
15690 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15691
15692         PR mi/20395
15693         * ada-exp.y (write_var_from_sym): Pass extra parameter when
15694         updating innermost block.
15695         * parse.c (innermost_block_tracker::update): Take extra type
15696         parameter, and check types match before updating innermost block.
15697         (write_dollar_variable): Update innermost block for registers.
15698         * parser-defs.h (enum innermost_block_tracker_type): New enum.
15699         (innermost_block_tracker::innermost_block_tracker): Initialise
15700         m_types member.
15701         (innermost_block_tracker::reset): Take type parameter.
15702         (innermost_block_tracker::update): Take type parameter, and pass
15703         type through as needed.
15704         (innermost_block_tracker::m_types): New member.
15705         * varobj.c (varobj_create): Pass type when reseting innermost
15706         block.
15707
15708 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15709
15710         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
15711         * ada-lang.c (resolve_subexp): Likewise.
15712         * breakpoint.c (set_breakpoint_condition) Likewise.
15713         (watch_command_1) Likewise.
15714         * c-exp.y (variable): Likewise.
15715         * d-exp.y (PrimaryExpression): Likewise.
15716         * f-exp.y (variable): Likewise.
15717         * go-exp.y (variable): Likewise.
15718         * m2-exp.y (variable): Likewise.
15719         * objfiles.c (objfile::~objfile): Likewise.
15720         * p-exp.y (variable): Likewise.
15721         * parse.c (innermost_block): Change type.
15722         * parser-defs.h (class innermost_block_tracker): New.
15723         (innermost_block): Change to innermost_block_tracker.
15724         * printcmd.c (display_command): Switch to innermost_block API.
15725         (do_one_display): Likewise.
15726         * rust-exp.y (do_one_display): Likewise.
15727         * symfile.c (clear_symtab_users): Likewise.
15728         * varobj.c (varobj_create): Switch to innermost_block API, replace
15729         use of innermost_block with block stored on varobj object.
15730
15731 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15732
15733         * expression.h (innermost_block): Remove declaration.
15734         * varobj.c: Add 'parser-defs.h' include.
15735
15736 2018-01-19  Tom Tromey  <tom@tromey.com>
15737
15738         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
15739         symbols in the static and global blocks.
15740
15741 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
15742
15743         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
15744         gdb_ptrace.h, and move including gdb_wait.h ...
15745         * nat/linux-ptrace.h: ... to here.
15746
15747 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15748
15749         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
15750         inf_ptrace_detach_success.
15751         (inf_ptrace_detach_success): Add inferior parameter, use it
15752         instead of inferior_ptid, pass it to detach_inferior.
15753         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
15754         parameter.
15755         * inferior.c (detach_inferior): Add overload that takes an
15756         inferior object.
15757         * inferior.h (detach_inferior): Likewise.
15758         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
15759         use inferior_ptid, adjust call to inf_ptrace_detach_success.
15760         * linux-thread-db.c (thread_db_detach): Use inf parameter.
15761
15762 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15763
15764         * target.h (struct target_ops) <to_detach>: Add inferior
15765         parameter.
15766         (target_detach): Likewise.
15767         * target.c (dispose_inferior): Pass inferior down.
15768         (target_detach): Pass inferior down.  Assert that it is equal to
15769         the current inferior.
15770         * aix-thread.c (aix_thread_detach): Pass inferior down.
15771         * corefile.c (core_file_command): Pass current_inferior() down.
15772         * corelow.c (core_detach): Add inferior parameter.
15773         * darwin-nat.c (darwin_detach): Likewise.
15774         * gnu-nat.c (gnu_detach): Likewise.
15775         * inf-ptrace.c (inf_ptrace_detach): Likewise.
15776         * infcmd.c (detach_command): Pass current_inferior() down to
15777         target_detach.
15778         * infrun.c (follow_fork_inferior): Pass parent_inf to
15779         target_detach.
15780         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
15781         target_detach.
15782         * linux-nat.c (linux_nat_detach): Add inferior parameter.
15783         * linux-thread-db.c (thread_db_detach): Likewise.
15784         * nto-procfs.c (procfs_detach): Likewise.
15785         * procfs.c (procfs_detach): Likewise.
15786         * record.c (record_detach): Likewise.
15787         * record.h (struct inferior): Forward-declare.
15788         (record_detach): Add inferior parameter.
15789         * remote-sim.c (gdbsim_detach): Likewise.
15790         * remote.c (remote_detach_1): Likewise.
15791         (remote_detach): Likewise.
15792         (extended_remote_detach): Likewise.
15793         * sol-thread.c (sol_thread_detach): Likewise.
15794         * target-debug.h (target_debug_print_inferior_p): New macro.
15795         * target-delegates.c: Re-generate.
15796         * top.c (kill_or_detach): Pass inferior down to target_detach.
15797         * windows-nat.c (windows_detach): Add inferior parameter.
15798
15799 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15800
15801         * target.h (struct target_ops) <to_detach>: Remove args
15802         parameter.
15803         (target_detach): Likewise.
15804         * target.c (dispose_inferior): Adjust.
15805         (target_detach): Remove args parameter, adjust.
15806         * aix-thread.c (aix_thread_detach): Adjust.
15807         * corefile.c (core_file_command): Adjust.
15808         * corelow.c (core_detach): Adjust.
15809         * darwin-nat.c (darwin_detach): Adjust.
15810         * gnu-nat.c (gnu_detach): Adjust.
15811         * inf-ptrace.c (inf_ptrace_detach): Adjust.
15812         * infcmd.c (detach_command): Adjust
15813         * infrun.c (follow_fork_inferior): Adjust.
15814         (handle_vfork_child_exec_or_exit): Adjust.
15815         * linux-fork.c (linux_fork_detach): Remove args parameter.
15816         * linux-fork.h (linux_fork_detach): Likewise.
15817         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
15818         * linux-thread-db.c (thread_db_detach): Likewise.
15819         * nto-procfs.c (procfs_detach): Likewise.
15820         * procfs.c (procfs_detach): Likewise.
15821         (do_detach): Remove signo parameter.
15822         * record.c (record_detach): Remove args parameter.
15823         * record.h (record_detach): Likewise.
15824         * remote-sim.c (gdbsim_detach): Likewise.
15825         * remote.c (remote_detach_1): Likewise.
15826         (remote_detach): Likewise.
15827         (extended_remote_detach): Likewise.
15828         * sol-thread.c (sol_thread_detach): Likewise.
15829         * target-delegates.c: Re-generate.
15830         * top.c (struct qt_args) <args>: Remove field.
15831         (kill_or_detach): Don't pass args.
15832         (quit_force): Don't set args.
15833         * windows-nat.c (windows_detach): Remove args parameter.
15834
15835 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15836
15837         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
15838         (arm_linux_init_abi): Install it.
15839
15840 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15841
15842         * osabi.c (gdb_osabi_names): Extend the regexp for
15843         arm-linux-gnueabihf.
15844
15845 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15846
15847         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
15848         m_abbrevs.
15849         (abbrev_table::add_abbrev): Update.
15850         (abbrev_table::lookup_abbrev): Update.
15851
15852 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15853
15854         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
15855
15856 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
15857
15858         * compile/compile.c (compile_to_object): Convert "triplet_rx"
15859         to "std::string".
15860
15861 2018-01-17  Tom Tromey  <tom@tromey.com>
15862
15863         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
15864
15865 2018-01-17  Tom Tromey  <tom@tromey.com>
15866
15867         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
15868         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
15869         (create_array_type_with_stride): Update.
15870         * dwarf2read.c (set_die_type): Update.
15871
15872 2018-01-17  Tom Tromey  <tom@tromey.com>
15873
15874         * dwarf2read.c (delayed_method_info): Remove typedef.
15875         (dwarf2_cu::method_info): Now a std::vector.
15876         (add_to_method_list): Update.
15877         (free_delayed_list): Remove.
15878         (compute_delayed_physnames): Update.
15879         (process_full_comp_unit, process_full_type_unit): Clear the method
15880         list.  Remove cleanups.
15881         (psymtab_include_file_name): Add name_holder parameter.  Use
15882         unique_xmalloc_ptr.
15883         (dwarf_decode_lines): Update.
15884
15885 2018-01-17  Tom Tromey  <tom@tromey.com>
15886             Simon Marchi  <simon.marchi@ericsson.com>
15887
15888         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
15889         (dwarf2_per_objfile::free_cached_comp_units)
15890         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15891         (init_cutu_and_read_dies_no_follow): Update.
15892         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
15893         (dwarf2_cu::~dwarf2_cu): New.
15894         (free_heap_comp_unit, free_stack_comp_unit): Remove.
15895         (age_cached_comp_units, free_one_cached_comp_unit): Update.
15896
15897 2018-01-17  Tom Tromey  <tom@tromey.com>
15898             Simon Marchi  <simon.marchi@ericsson.com>
15899
15900         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
15901         (struct die_reader_specs) <abbrev_table>: New member.
15902         (struct abbrev_table): Add constructor.
15903         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
15904         <abbrev_obstack>: Now an auto_obstack.
15905         (abbrev_table_up): New typedef.
15906         (init_cu_die_reader): Add abbrev_table parameter.
15907         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
15908         Add result_dwo_abbrev_table.
15909         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15910         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
15911         Update.
15912         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
15913         parameter.
15914         (skip_children): Update.
15915         (abbrev_table::alloc_abbrev): Rename from
15916         abbrev_table_alloc_abbrev.
15917         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
15918         (abbrev_table::lookup_abbrev): Rename from
15919         abbrev_table_lookup_abbrev.
15920         (abbrev_table_read_table): Return abbrev_table_up.
15921         (abbrev_table_free, abbrev_table_free_cleanup)
15922         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
15923         (load_partial_dies): Update.
15924
15925 2018-01-17  Tom Tromey  <tom@tromey.com>
15926
15927         * dwarf2read.c (dwarf2_compute_name): Update comment.
15928         (read_func_scope, read_variable): Update.
15929         (new_symbol): Remove.
15930         (new_symbol_full): Rename to new_symbol.
15931
15932 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
15933
15934         PR gdb/16577
15935         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
15936         a warning instead of throwing an error, set section size to 0 and return
15937         NULL.
15938         * gdb_bfd.h (gdb_bfd_map_section): Update description.
15939
15940 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15941
15942         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
15943         std::string.
15944         (linux_ptrace_attach_fail_reason_string): Likewise.
15945         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
15946         Likewise.
15947         (linux_ptrace_attach_fail_reason_string): Likewise.
15948         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
15949
15950 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15951
15952         * linux-nat.c (linux_nat_attach): Remove xstrdup.
15953
15954 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
15955
15956         PR gdb/21559
15957         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
15958         checking for fs_base/gs_base fields in struct user_regs_struct.
15959         * configure: Regenerate.
15960
15961 2018-01-17  Yao Qi  <yao.qi@linaro.org>
15962
15963         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
15964         function.
15965         (aarch64_linux_init_abi): Install it to gdbarch hook
15966         gcc_target_options.
15967
15968 2018-01-15  Pedro Alves  <palves@redhat.com>
15969
15970         * common/signals-state-save-restore.c
15971         (save_original_signals_state): Fix typos.
15972
15973 2017-01-12  Tom Tromey  <tom@tromey.com>
15974             Sergio Durigan Junior  <sergiodj@redhat.com>
15975
15976         * Makefile.in (install-only): Install gdb-add-index.
15977
15978 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
15979
15980         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
15981
15982 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
15983
15984         * infrun.c (keep_going_pass_signal): Clear step-over info when
15985         insert_breakpoints fails.
15986
15987 2018-01-11  Pedro Alves  <palves@redhat.com>
15988
15989         PR gdb/22583
15990         * infrun.c (resume): Rename to ...
15991         (resume_1): ... this.
15992         (resume): Reimplement as wrapper around resume_1.
15993
15994 2018-01-11  Pedro Alves  <palves@redhat.com>
15995
15996         PR remote/22597
15997         * remote.c (remote_parse_stop_reply): Default to the last-set
15998         general thread instead of to 'magic_null_ptid'.
15999
16000 2018-01-10  Pedro Alves  <palves@redhat.com>
16001
16002         * language.h (language_get_symbol_name_matcher): Rename ...
16003         (get_symbol_name_matcher): ... this.
16004         * language.c (language_get_symbol_name_matcher): Ditto.
16005         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
16006         callers adjusted.
16007
16008 2018-01-10  Pedro Alves  <palves@redhat.com>
16009
16010         PR gdb/22670
16011         * dwarf2read.c
16012         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
16013         Adjust to use language_get_symbol_name_matcher instead of
16014         language_defn::la_get_symbol_name_matcher.
16015         * language.c (language_get_symbol_name_matcher): If in Ada mode
16016         and the lookup name is a verbatim match, return Ada's matcher.
16017         * language.h (language_get_symbol_name_matcher): Adjust comment.
16018         (ada_lookup_name_info::verbatim_p):: New method.
16019
16020 2018-01-10  Pedro Alves  <palves@redhat.com>
16021
16022         PR gdb/22670
16023         * ada-lang.c (ada_collect_symbol_completion_matches): If the
16024         minsym's language is language_auto or language_cplus, pass down
16025         language_ada instead.
16026         * symtab.c (compare_symbol_name): Don't frob symbol language here.
16027
16028 2018-01-10  Pedro Alves  <palves@redhat.com>
16029
16030         PR gdb/22670
16031         * minsyms.c (linkage_name_str): New function.
16032         (iterate_over_minimal_symbols): Use it.
16033
16034 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16035
16036         * NEWS: Document that 'info proc' now works on FreeBSD.
16037
16038 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16039
16040         * configure.ac: Check for kinfo_getfile in libutil.
16041         * configure: Regenerate.
16042         * config.in: Regenerate.
16043         * fbsd-nat.c: Include "fbsd-tdep.h".
16044         (fbsd_fetch_cmdline): New.
16045         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
16046         rather than calling error.
16047         (fbsd_info_proc): New.
16048         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
16049         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
16050         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
16051
16052 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16053
16054         * fbsd-nat.c (struct free_deleter): Remove.
16055         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
16056
16057 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16058
16059         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
16060         NULL for an empty pathname.
16061
16062 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16063
16064         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
16065         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
16066         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
16067         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
16068         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
16069         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
16070         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
16071         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
16072         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
16073         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
16074         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
16075         (fbsd_core_fetch_timeval, fbsd_print_sigset)
16076         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
16077         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
16078         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
16079
16080 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
16081
16082         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
16083         (gnu_xfer_auxv): New function.
16084         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
16085         TARGET_OBJECT_AUXV.
16086
16087 2018-01-08  Yao Qi  <yao.qi@linaro.org>
16088             Simon Marchi  <simon.marchi@ericsson.com>
16089
16090         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
16091         common/selftest.c.
16092         (COMMON_OBS): Remove selftest.o.
16093         * configure.ac: Append selftest-arch.c and common/selftest.c to
16094         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
16095         * configure: Re-generated.
16096         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
16097         GDB_SELF_TEST.
16098         (maintenance_info_selftests): Likewise.
16099
16100 2018-01-08  Xavier Roirand  <roirand@adacore.com>
16101
16102         * ada-valprint.c (val_print_packed_array_elements): Use
16103         proper number of elements when printing an array indexed
16104         by an enumeration type.
16105
16106 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16107
16108         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
16109         (dw2_get_file_names_reader): Adjust.
16110         (lookup_dwo_signatured_type): Adjust.
16111         (lookup_dwp_signatured_type): Adjust.
16112         (lookup_signatured_type): Adjust.
16113         (create_type_unit_group): Adjust.
16114         (get_type_unit_group): Adjust.
16115         (process_psymtab_comp_unit_reader): Adjust.
16116         (build_type_psymtabs_reader): Adjust.
16117         (scan_partial_symbols): Adjust.
16118         (add_partial_symbol): Adjust.
16119         (add_partial_subprogram): Adjust.
16120         (peek_die_abbrev): Adjust.
16121         (fixup_go_packaging): Adjust.
16122         (process_imported_unit_die): Adjust.
16123         (dwarf2_compute_name): Adjust.
16124         (dwarf2_physname): Adjust.
16125         (read_import_statement): Adjust.
16126         (handle_DW_AT_stmt_list): Adjust.
16127         (read_file_scope): Adjust.
16128         (read_func_scope): Adjust.
16129         (read_lexical_block_scope): Adjust.
16130         (read_call_site_scope): Adjust.
16131         (read_variable): Adjust.
16132         (dwarf2_rnglists_process): Adjust.
16133         (dwarf2_ranges_process): Adjust.
16134         (dwarf2_ranges_read): Adjust.
16135         (dwarf2_get_pc_bounds): Adjust.
16136         (dwarf2_record_block_ranges): Adjust.
16137         (dwarf2_add_field): Adjust.
16138         (dwarf2_add_member_fn): Adjust.
16139         (read_structure_type): Adjust.
16140         (process_structure_scope): Adjust.
16141         (read_enumeration_type): Adjust.
16142         (read_array_type): Adjust.
16143         (mark_common_block_symbol_computed): Adjust.
16144         (read_common_block): Adjust.
16145         (read_namespace_type): Adjust.
16146         (read_namespace): Adjust.
16147         (read_module_type): Adjust.
16148         (read_tag_pointer_type): Adjust.
16149         (read_tag_ptr_to_member_type): Adjust.
16150         (read_tag_string_type): Adjust.
16151         (read_subroutine_type): Adjust.
16152         (read_typedef): Adjust.
16153         (read_base_type): Adjust.
16154         (attr_to_dynamic_prop): Adjust.
16155         (read_subrange_type): Adjust.
16156         (read_unspecified_type): Adjust.
16157         (dwarf2_read_abbrevs): Adjust.
16158         (load_partial_dies): Adjust.
16159         (read_partial_die): Adjust.
16160         (find_partial_die): Adjust.
16161         (guess_partial_die_structure_name): Adjust.
16162         (fixup_partial_die): Adjust.
16163         (read_attribute_value): Adjust.
16164         (read_addr_index): Adjust.
16165         (read_addr_index_from_leb128): Adjust.
16166         (read_str_index): Adjust.
16167         (dwarf2_string_attr): Adjust.
16168         (get_debug_line_section): Adjust.
16169         (dwarf_decode_line_header): Adjust.
16170         (lnp_state_machine::check_line_address): Adjust.
16171         (dwarf_decode_lines_1): Adjust.
16172         (dwarf_decode_lines): Adjust.
16173         (dwarf2_start_symtab): Adjust.
16174         (var_decode_location): Adjust.
16175         (new_symbol_full): Adjust.
16176         (dwarf2_const_value_data): Adjust.
16177         (dwarf2_const_value_attr): Adjust.
16178         (dwarf2_const_value): Adjust.
16179         (die_type): Adjust.
16180         (die_containing_type): Adjust.
16181         (build_error_marker_type): Adjust.
16182         (lookup_die_type): Adjust.
16183         (guess_full_die_structure_name): Adjust.
16184         (anonymous_struct_prefix): Adjust.
16185         (determine_prefix): Adjust.
16186         (dwarf2_name): Adjust.
16187         (follow_die_ref_or_sig): Adjust.
16188         (follow_die_offset): Adjust.
16189         (follow_die_ref): Adjust.
16190         (follow_die_sig_1): Adjust.
16191         (follow_die_sig): Adjust.
16192         (get_signatured_type): Adjust.
16193         (get_DW_AT_signature_type): Adjust.
16194         (decode_locdesc): Adjust.
16195         (dwarf_decode_macros): Adjust.
16196         (cu_debug_loc_section): Adjust.
16197         (fill_in_loclist_baton): Adjust.
16198         (dwarf2_symbol_mark_computed): Adjust.
16199         (init_one_comp_unit): Don't assign
16200         dwarf2_cu::dwarf2_per_objfile.
16201         (set_die_type): Adjust.
16202
16203 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16204
16205         * dwarf2read.c (struct mapped_debug_names): Add constructor.
16206         <dwarf2_per_objfile>: New field.
16207         (dwarf2_per_objfile): Remove global.
16208         (get_dwarf2_per_objfile): New function.
16209         (set_dwarf2_per_objfile): New function.
16210         (dwarf2_build_psymtabs_hard): Change objfile parameter to
16211         dwarf2_per_objfile.
16212         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16213         (read_abbrev_offset): Likewise.
16214         (read_indirect_string): Likewise.
16215         (read_indirect_line_string): Likewise.
16216         (read_indirect_string_at_offset): Likewise.
16217         (read_indirect_string_from_dwz): Likewise.
16218         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16219         dwarf2_per_objfile.
16220         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16221         (create_all_comp_units): Change objfile parameter to
16222         dwarf2_per_objfile.
16223         (create_all_type_units): Likewise.
16224         (process_queue): Add dwarf2_per_objfile parameter.
16225         (read_and_check_comp_unit_head): Likewise.
16226         (lookup_dwo_unit_in_dwp): Likewise.
16227         (get_dwp_file): Likewise.
16228         (process_cu_includes): Likewise.
16229         (struct free_dwo_file_cleanup_data): New struct.
16230         (dwarf2_has_info): Use get_dwarf2_per_objfile and
16231         set_dwarf2_per_objfile.
16232         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
16233         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
16234         context, adjust calls.
16235         (dw2_instantiate_symtab): Likewise.
16236         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
16237         (dw2_get_cu): Likewise.
16238         (create_cu_from_index_list): Change objfile parameter to
16239         dwarf2_per_objfile.
16240         (create_cus_from_index_list): Get dwarf2_per_objfile from
16241         context, adjust calls.
16242         (create_cus_from_index): Likewise.
16243         (create_signatured_type_table_from_index): Change objfile
16244         parameter to dwarf2_per_objfile.
16245         (create_signatured_type_table_from_debug_names): Change objfile
16246         parameter to dwarf2_per_objfile.
16247         (create_addrmap_from_index): Likewise.
16248         (create_addrmap_from_aranges): Likewise.
16249         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
16250         (dw2_setup): Remove.
16251         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
16252         context.
16253         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
16254         get_dwarf2_per_objfile.
16255         (dw2_forget_cached_source_info): Likewise.
16256         (dw2_map_symtabs_matching_filename): Likewise.
16257         (struct dw2_symtab_iterator) <index>: Remove.
16258         <dwarf2_per_objfile>: New field.
16259         (dw2_symtab_iter_init): Replace index parameter with
16260         dwarf2_per_objfile.
16261         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
16262         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
16263         (dw2_print_stats): Likewise.
16264         (dw2_dump): Likewise.
16265         (dw2_expand_symtabs_for_function): Likewise.
16266         (dw2_expand_all_symtabs): Likewise.
16267         (dw2_expand_symtabs_with_fullname): Likewise.
16268         (dw2_expand_marked_cus): Replace index and objfile parameters
16269         with dwarf2_per_objfile.
16270         (dw_expand_symtabs_matching_file_matcher): Add
16271         dwarf2_per_objfile parameter and adjust calls.
16272         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
16273         adjust calls.
16274         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
16275         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
16276         adjust calls.
16277         (create_cus_from_debug_names_list): Replace objfile parameter
16278         with dwarf2_per_objfile and adjust calls.
16279         (create_cus_from_debug_names): Likewise.
16280         (dwarf2_read_debug_names): Likewise.
16281         (mapped_debug_names::namei_to_name): Adjust call.
16282         (dw2_debug_names_iterator::next): Likewise.
16283         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
16284         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
16285         (dw2_debug_names_dump): Likewise.
16286         (dw2_debug_names_expand_symtabs_for_function): Likewise.
16287         (dw2_debug_names_expand_symtabs_matching): Likewise.
16288         (dwarf2_initialize_objfile): Likewise.
16289         (dwarf2_build_psymtabs): Likewise.
16290         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
16291         this_cu.
16292         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
16293         (read_and_check_comp_unit_head): Likewise.
16294         (read_abbrev_offset): Likewise.
16295         (create_debug_type_hash_table): Likewise.
16296         (create_debug_types_hash_table): Likewise.
16297         (create_all_type_units): Replace objfile parameter with
16298         dwarf2_per_objfile.
16299         (add_type_unit): Add dwarf2_per_objfile parameter.
16300         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
16301         with dwarf2_per_objfile.
16302         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
16303         (lookup_dwp_signatured_type): Likewise.
16304         (lookup_signatured_type): Likewise.
16305         (read_cutu_die_from_dwo): Likewise.
16306         (init_tu_and_read_dwo_dies): Likewise.
16307         (init_cutu_and_read_dies): Likewise.
16308         (init_cutu_and_read_dies_no_follow): Likewise.
16309         (allocate_type_unit_groups_table): Add objfile parameter.
16310         (create_type_unit_group): Use dwarf2_per_objfile from cu.
16311         (get_type_unit_group): Likewise.
16312         (process_psymtab_comp_unit): Update call.
16313         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
16314         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
16315         (print_tu_stats): Likewise.
16316         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
16317         in void* parameter.
16318         (build_type_psymtabs): Change objfile parameter to
16319         dwarf2_per_objfile.
16320         (process_skeletonless_type_unit): Use dwarf2_per_objfile
16321         passed in void* parameter.
16322         (process_skeletonless_type_units): Change objfile parameter to
16323         dwarf2_per_objfile.
16324         (set_partial_user): Likewise.
16325         (dwarf2_build_psymtabs_hard): Likewise.
16326         (read_comp_units_from_section): Likewise.
16327         (create_all_comp_units): Likewise.
16328         (scan_partial_symbols): Update calls.
16329         (add_partial_symbol): Likewise.
16330         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
16331         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
16332         (process_queue): Add dwarf2_per_objfile parameter.
16333         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
16334         (compute_compunit_symtab_includes): Likewise.
16335         (process_cu_includes): Add dwarf2_per_objfile parameter.
16336         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
16337         (process_full_type_unit): Likewise.
16338         (process_imported_unit_die): Update call.
16339         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
16340         (read_file_scope): Likewise.
16341         (allocate_dwo_file_hash_table): Add objfile parameter.
16342         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
16343         (create_cus_hash_table): Likewise.
16344         (create_dwp_hash_table): Likewise.
16345         (create_dwo_unit_in_dwp_v1): Likewise.
16346         (create_dwp_v2_section): Likewise.
16347         (create_dwo_unit_in_dwp_v2): Likewise.
16348         (lookup_dwo_unit_in_dwp): Likewise.
16349         (try_open_dwop_file): Likewise.
16350         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
16351         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
16352         cleanup to include a reference to dwarf2_per_objfile.
16353         (open_dwp_file): Add dwarf2_per_objfile parameter.
16354         (open_and_init_dwp_file): Likewise.
16355         (get_dwp_file): Likewise.
16356         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
16357         (queue_and_load_all_dwo_tus): Update call.
16358         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
16359         data.
16360         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
16361         (dwarf2_ranges_process): Likewise.
16362         (dwarf2_get_pc_bounds): Likewise.
16363         (mark_common_block_symbol_computed): Likewise.
16364         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16365         (dwarf2_read_abbrevs): Update call.
16366         (read_partial_die): Use dwarf2_per_objfile from cu.
16367         (find_partial_die): Likewise.
16368         (fixup_partial_die): Likewise.
16369         (read_attribute_value): Likewise.
16370         (read_indirect_string_at_offset_from): Add objfile parameter.
16371         (read_indirect_string_at_offset): Add dwarf2_per_objfile
16372         parameter.
16373         (read_indirect_string_from_dwz): Add objfile parameter.
16374         (read_indirect_string): Add objfile parameter.
16375         (read_addr_index_1): Add dwarf2_per_objfile parameter.
16376         (read_addr_index): Use dwarf2_per_objfile from cu.
16377         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
16378         call dw2_setup.
16379         (read_str_index): Use dwarf2_per_objfile from cu.
16380         (get_debug_line_section): Likewise.
16381         (read_formatted_entries): Add dwarf2_per_objfile parameter.
16382         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
16383         (new_symbol_full): Use dwarf2_per_objfile from cu.
16384         (build_error_marker_type): Likewise.
16385         (lookup_die_type): Likewise.
16386         (determine_prefix): Likewise.
16387         (follow_die_offset): Likewise.
16388         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
16389         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
16390         (dwarf2_fetch_die_type_sect_off): Likewise.
16391         (dwarf2_get_die_type): Likewise.
16392         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
16393         (get_signatured_type): Likewise.
16394         (get_DW_AT_signature_type): Likewise.
16395         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
16396         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
16397         (cu_debug_loc_section): Likewise.
16398         (fill_in_loclist_baton): Likewise.
16399         (dwarf2_symbol_mark_computed): Likewise.
16400         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16401         dwarf2_per_objfile.
16402         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
16403         parameter.
16404         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16405         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
16406         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
16407         (set_die_type): Use dwarf2_free_objfile from cu.
16408         (get_die_type_at_offset): Likewise.
16409         (dwarf2_per_objfile_free): Don't assign global variable.
16410         (debug_names) <constructor>: Add dwarf2_per_objfile
16411         parameter, update m_debugstrlookup construction.
16412         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
16413         parameter.
16414         <m_dwarf2_per_objfile>: New field.
16415         <lookup>: Use m_dwarf2_per_objfile.
16416         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
16417         (psyms_seen_size): Likewise.
16418         (write_gdbindex): Replace objfile parameter with
16419         dwarf2_per_objfile.
16420         (write_debug_names): Likewise.
16421         (write_psymtabs_to_index): Likewise.
16422         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
16423         calls.
16424
16425 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16426
16427         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
16428         <dwarf2_per_objfile>: New field.
16429         (struct dwarf2_per_cu_data) <objfile>: Remove.
16430         <dwarf2_per_objfile>: New field.
16431         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
16432         of objfile.
16433         (create_signatured_type_table_from_index): Likewise.
16434         (create_debug_type_hash_table): Likewise.
16435         (fill_in_sig_entry_from_dwo_entry): Likewise.
16436         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
16437         (create_type_unit_group): Assign dwarf2_per_objfile instead of
16438         objfile.
16439         (create_partial_symtab): Access objfile through
16440         dwarf2_per_objfile.
16441         (process_psymtab_comp_unit_reader): Likewise.
16442         (read_comp_units_from_section): Likewise.
16443         (scan_partial_symbols): Likewise.
16444         (add_partial_symbol): Likewise.
16445         (add_partial_subprogram): Likewise.
16446         (peek_die_abbrev): Likewise.
16447         (fixup_go_packaging): Likewise.
16448         (process_full_comp_unit): Likewise.
16449         (process_full_type_unit): Likewise.
16450         (process_imported_unit_die): Likewise.
16451         (dwarf2_compute_name): Likewise.
16452         (dwarf2_physname): Likewise.
16453         (read_import_statement): Likewise.
16454         (create_cus_hash_table): Assign dwarf2_physname instead of
16455         objfile.
16456         (read_func_scope): Access objfile through dwarf2_per_objfile.
16457         (read_lexical_block_scope): Likewise.
16458         (read_call_site_scope): Likewise.
16459         (read_variable): Likewise.
16460         (dwarf2_rnglists_process): Likewise.
16461         (dwarf2_ranges_process): Likewise.
16462         (dwarf2_ranges_read): Likewise.
16463         (dwarf2_record_block_ranges): Likewise.
16464         (dwarf2_add_field): Likewise.
16465         (dwarf2_add_member_fn): Likewise.
16466         (read_structure_type): Likewise.
16467         (process_structure_scope): Likewise.
16468         (read_enumeration_type): Likewise.
16469         (read_array_type): Likewise.
16470         (read_common_block): Likewise.
16471         (read_namespace_type): Likewise.
16472         (read_namespace): Likewise.
16473         (read_module_type): Likewise.
16474         (read_tag_pointer_type): Likewise.
16475         (read_tag_ptr_to_member_type): Likewise.
16476         (read_tag_string_type): Likewise.
16477         (read_subroutine_type): Likewise.
16478         (read_typedef): Likewise.
16479         (read_base_type): Likewise.
16480         (attr_to_dynamic_prop): Likewise.
16481         (read_subrange_type): Likewise.
16482         (read_unspecified_type): Likewise.
16483         (load_partial_dies): Likewise.
16484         (read_partial_die): Likewise.
16485         (find_partial_die): Likewise.
16486         (guess_partial_die_structure_name): Likewise.
16487         (fixup_partial_die): Likewise.
16488         (read_attribute_value): Likewise.
16489         (read_addr_index_from_leb128): Likewise.
16490         (dwarf2_read_addr_index): Likewise.
16491         (dwarf2_string_attr): Likewise.
16492         (lnp_state_machine::check_line_address): Likewise.
16493         (dwarf_decode_lines_1): Likewise.
16494         (dwarf_decode_lines): Likewise.
16495         (dwarf2_start_symtab): Likewise.
16496         (var_decode_location): Likewise.
16497         (new_symbol_full): Likewise.
16498         (dwarf2_const_value_data): Likewise.
16499         (dwarf2_const_value_attr): Likewise.
16500         (dwarf2_const_value): Likewise.
16501         (die_type): Likewise.
16502         (die_containing_type): Likewise.
16503         (lookup_die_type): Likewise.
16504         (guess_full_die_structure_name): Likewise.
16505         (anonymous_struct_prefix): Likewise.
16506         (dwarf2_name): Likewise.
16507         (follow_die_ref_or_sig): Likewise.
16508         (follow_die_offset): Likewise.
16509         (follow_die_ref): Likewise.
16510         (dwarf2_fetch_die_loc_sect_off): Likewise.
16511         (dwarf2_fetch_constant_bytes): Likewise.
16512         (dwarf2_fetch_die_type_sect_off): Likewise.
16513         (dwarf2_get_die_type): Likewise.
16514         (follow_die_sig): Likewise.
16515         (decode_locdesc): Likewise.
16516         (dwarf2_per_cu_objfile): Likewise.
16517         (dwarf2_per_cu_text_offset): Likewise.
16518         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
16519         objfile.
16520         (set_die_type): Access objfile through
16521         dwarf2_per_objfile.
16522
16523 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16524
16525         * valprint.c (converted_character_d): Remove typedef.
16526         (DEF_VEC_O (converted_character_d)): Remove.
16527         (count_next_character): Use std::vector.
16528         (print_converted_chars_to_obstack): Likewise.
16529         (generic_printstr): Likewise.
16530
16531 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16532
16533         * xml-support.h (struct gdb_xml_value): Add constructor.
16534         <value>: Change type to unique_xmalloc_ptr.
16535         (gdb_xml_value_s): Remove typedef.
16536         (DEF_VEC_O (gdb_xml_value_s)): Remove.
16537         (gdb_xml_element_start_handler): Change parameter type to
16538         std::vector.
16539         (xml_find_attribute): Likewise.
16540         * xml-support.c (xml_find_attribute): Change parameter type to
16541         std::vector and adjust.
16542         (gdb_xml_values_cleanup): Remove.
16543         (gdb_xml_parser::start_element): Adjust to std::vector.
16544         (xinclude_start_include): Change paraeter type to std::vector
16545         and adjust.
16546         * btrace.c (check_xml_btrace_version): Likewise.
16547         (parse_xml_btrace_block): Likewise.
16548         (parse_xml_btrace_pt_config_cpu): Likewise.
16549         (parse_xml_btrace_pt): Likewise.
16550         (parse_xml_btrace_conf_bts): Likewise.
16551         (parse_xml_btrace_conf_pt): Likewise.
16552         * memory-map.c (memory_map_start_memory): Likewise.
16553         (memory_map_start_property): Likewise.
16554         * osdata.c (osdata_start_osdata): Likewise.
16555         (osdata_start_item): Likewise.
16556         (osdata_start_column): Likewise.
16557         * remote.c (start_thread): Likewise.
16558         * solib-aix.c (library_list_start_library): Likewise.
16559         (library_list_start_list): Likewise.
16560         * solib-svr4.c (library_list_start_library): Likewise.
16561         (svr4_library_list_start_list): Likewise.
16562         * solib-target.c (library_list_start_segment): Likewise.
16563         (library_list_start_section): Likewise.
16564         (library_list_start_library): Likewise.
16565         (library_list_start_list): Likewise.
16566         * tracepoint.c (traceframe_info_start_memory): Likewise.
16567         (traceframe_info_start_tvar): Likewise.
16568         * xml-syscall.c (syscall_start_syscall): Likewise.
16569         * xml-tdesc.c (tdesc_start_target): Likewise.
16570         (tdesc_start_feature): Likewise.
16571         (tdesc_start_reg): Likewise.
16572         (tdesc_start_union): Likewise.
16573         (tdesc_start_struct): Likewise.
16574         (tdesc_start_flags): Likewise.
16575         (tdesc_start_enum): Likewise.
16576         (tdesc_start_field): Likewise.
16577         (tdesc_start_enum_value): Likewise.
16578         (tdesc_start_vector): Likewise.
16579
16580 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16581
16582         * extension.h (struct xmethod_worker) <clone>: Remove.
16583         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
16584         Remove.
16585         (python_xmethod_worker::clone): Remove.
16586         * valops.c (find_overload_match): Use std::move instead of
16587         clone.
16588
16589 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16590
16591         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
16592         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
16593         <free_xmethod_worker_data>: Remove.
16594         <get_matching_xmethod_workers>: Chance VEC to std::vector.
16595         <get_xmethod_arg_types>: Remove.
16596         <get_xmethod_result_type>: Remove.
16597         <invoke_xmethod>: Remove.
16598         * extension.c (new_xmethod_worker): Remove.
16599         (clone_xmethod_worker): Remove.
16600         (get_matching_xmethod_workers): Return void, pass std::vector by
16601         pointer.
16602         (get_xmethod_arg_types): Rename to...
16603         (xmethod_worker::get_arg_types): ... this, and adjust.
16604         (get_xmethod_result_type): Rename to...
16605         (xmethod_worker::get_result_type): ... this, and adjust.
16606         (invoke_xmethod): Remove.
16607         (free_xmethod_worker): Remove.
16608         (free_xmethod_worker_vec): Remove.
16609         * extension.h (enum ext_lang_rc): Move here from
16610         extension-priv.h.
16611         (struct xmethod_worker): Add constructor and destructor.
16612         <data>: Remove.
16613         <value>: Remove.
16614         <invoke, clone, do_get_result_type, do_get_arg_types>: New
16615         virtual pure methods.
16616         <get_arg_types, get_result_type>: New methods.
16617         (xmethod_worker_ptr): Remove typedef.
16618         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
16619         (xmethod_worker_vec): Remove typedef.
16620         (xmethod_worker_up): New typedef.
16621         (invoke_xmethod): Remove.
16622         (clone_xmethod_worker): Remove.
16623         (free_xmethod_worker): Remove.
16624         (free_xmethod_worker_vec): Remove.
16625         (get_xmethod_arg_types): Remove.
16626         (get_xmethod_result_type): Remove.
16627         * valops.c (find_method_list): Use std::vector, don't use
16628         intermediate vector.
16629         (value_find_oload_method_list): Use std::vector.
16630         (find_overload_match): Use std::vector.
16631         (find_oload_champ): Use std::vector.
16632         * value.c (value_free): Use operator delete.
16633         (value_of_xmethod): Rename to...
16634         (value_from_xmethod): ... this.  Don't assign
16635         xmethod_worker::value, take rvalue-reference.
16636         (result_type_of_xmethod): Adjust.
16637         (call_xmethod): Adjust.
16638         * value.h: Include extension.h.
16639         (struct xmethod_worker): Don't forward-declare.
16640         (value_of_xmethod): Rename to...
16641         (value_from_xmethod): ... this, take rvalue-reference.
16642         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
16643         (struct python_xmethod_worker): ... this, add constructor and
16644         destructor.
16645         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
16646         (gdbpy_free_xmethod_worker_data): Rename to...
16647         (python_xmethod_worker::~python_xmethod_worker): ... this and
16648         adjust.
16649         (gdbpy_clone_xmethod_worker_data): Rename to...
16650         (python_xmethod_worker::clone): ... this and adjust.
16651         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
16652         temporary vector.
16653         (gdbpy_get_xmethod_arg_types): Rename to...
16654         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
16655         (gdbpy_get_xmethod_result_type): Rename to...
16656         (python_xmethod_worker::do_get_result_type): ... this and
16657         adjust.
16658         (gdbpy_invoke_xmethod): Rename to...
16659         (python_xmethod_worker::invoke): ... this and adjust.
16660         (new_python_xmethod_worker): Rename to...
16661         (python_xmethod_worker::python_xmethod_worker): ... this and
16662         adjust.
16663         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
16664         Remove.
16665         (gdbpy_free_xmethod_worker_data): Remove.
16666         (gdbpy_get_matching_xmethod_workers): Use std::vector.
16667         (gdbpy_get_xmethod_arg_types): Remove.
16668         (gdbpy_get_xmethod_result_type): Remove.
16669         (gdbpy_invoke_xmethod): Remove.
16670         * python/python.c (python_extension_ops): Remove obsolete
16671         callbacks.
16672
16673 2018-01-05  Pedro Alves  <palves@redhat.com>
16674
16675         PR gdb/18653
16676         * common/signals-state-save-restore.c
16677         (save_original_signals_state): New parameter 'quiet'.  Warn if we
16678         find a custom handler preinstalled, instead of internal erroring.
16679         But only warn if !quiet.
16680         * common/signals-state-save-restore.h
16681         (save_original_signals_state): New parameter 'quiet'.
16682         * main.c (captured_main_1): Move save_original_signals_state call
16683         after option handling, and pass QUIET.
16684
16685 2018-01-05  Pedro Alves  <palves@redhat.com>
16686
16687         * spu-tdep.c (spu_catch_start): Pass
16688         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
16689
16690 2018-01-05  Pedro Alves  <palves@redhat.com>
16691
16692         PR gdb/22670
16693         * ada-lang.c (literal_symbol_name_matcher): New function.
16694         (ada_get_symbol_name_matcher): Use it for
16695         symbol_name_match_type::SEARCH_NAME.
16696         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
16697         it down instead of assuming symbol_name_match_type::FULL.
16698         * block.h (block_lookup_symbol): New parameter 'match_type'.
16699         * c-valprint.c (print_unpacked_pointer): Use
16700         lookup_symbol_search_name instead of lookup_symbol.
16701         * compile/compile-object-load.c (get_out_value_type): Pass down
16702         symbol_name_match_type::SEARCH_NAME.
16703         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
16704         symbol_name_match_type::FULL.
16705         * cp-support.c (cp_get_symbol_name_matcher): Handle
16706         symbol_name_match_type::SEARCH_NAME.
16707         * infrun.c (insert_exception_resume_breakpoint): Use
16708         lookup_symbol_search_name.
16709         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
16710         * psymtab.c (maintenance_check_psymtabs): Use
16711         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
16712         * stack.c (print_frame_args): Use lookup_symbol_search_name and
16713         SYMBOL_SEARCH_NAME.
16714         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
16715         if symbol_name_match_type::SEARCH_NAME.
16716         (lookup_symbol_in_language): Pass down
16717         symbol_name_match_type::FULL.
16718         (lookup_symbol_search_name): New.
16719         (lookup_language_this): Pass down
16720         symbol_name_match_type::SEARCH_NAME.
16721         (lookup_symbol_aux, lookup_local_symbol): New parameter
16722         'match_type'.  Pass it down.
16723         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
16724         (lookup_symbol_search_name): New declaration.
16725         (lookup_symbol_in_block): New 'match_type' parameter.
16726
16727 2018-01-05  Pedro Alves  <palves@redhat.com>
16728
16729         PR gdb/22670
16730         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
16731         ada_lookup_symbol.
16732         (ada_lookup_symbol): Reimplement in terms of
16733         ada_lookup_symbol_list, bits factored out from
16734         ada_lookup_encoded_symbol.
16735
16736 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16737
16738         * ada-exp.y (write_object_renaming): When subscripting an array
16739         using a symbol as the index, pass the block in call to
16740         ada_lookup_encoded_symbol when looking that symbol up.
16741
16742 2018-01-05  Jerome Guitton  <guitton@adacore.com>
16743
16744         * ada-lang.c (ada_array_length): Use ada_index_type instead of
16745         TYPE_INDEX_TYPE.
16746
16747 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16748
16749         * ada-lang.c (ada_to_fixed_value_create): Add handling of
16750         the case where VALUE_LVAL (val0) is not lval_memory.
16751
16752 2018-01-05  Xavier Roirand  <roirand@adacore.com>
16753
16754         * ada-valprint.c (print_optional_low_bound): Handle
16755         character-indexed array printing like boolean-indexed array
16756         printing.
16757
16758 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16759
16760         * NEWS: Create a new section for the next release branch.
16761         Rename the section of the current branch, now that it has
16762         been cut.
16763
16764 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16765
16766         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
16767         * version.in: Bump version to 8.1.50.DATE-git.
16768
16769 2018-01-03  Xavier Roirand  <roirand@adacore.com>
16770
16771         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
16772         Add field.
16773         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
16774         Add field.
16775         (default_exception_support_info) <catch_handlers_sym>: Add field.
16776         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
16777         (ada_exception_name_addr_1): Add "catch handlers" handling.
16778         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
16779         Update all callers.
16780         (create_excep_cond_exprs) <ex>: Add parameter.
16781         (re_set_exception): Update create_excep_cond_exprs call.
16782         (print_it_exception, print_one_exception, print_mention_exception)
16783         (print_recreate_exception): Add "catch handler" handling.
16784         (allocate_location_catch_handlers, re_set_catch_handlers)
16785         (check_status_catch_handlers, print_it_catch_handlers)
16786         (print_one_catch_handlers, print_mention_catch_handlers)
16787         (print_recreate_catch_handlers): New function.
16788         (catch_handlers_breakpoint_ops): New variable.
16789         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
16790         Add parameter.  Add "catch handler" handling.
16791         (ada_exception_sym_name, ada_exception_breakpoint_ops):
16792         Add "catch handler" handling.
16793         (ada_exception_catchpoint_cond_string): Add "catch handler"
16794         handling.
16795         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
16796         call.
16797         (catch_ada_handlers_command): New function.
16798         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
16799         operations structure.
16800         (_initialize_ada_language): Add "catch handlers" command entry.
16801         * NEWS: Document "catch handlers" feature.
16802
16803 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16804
16805         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
16806         account when creating the array type of the slice.
16807         (ada_value_slice): Likewise.
16808
16809 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16810
16811         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
16812         New enum value.
16813         (create_array_type_with_stride): Add byte_stride_prop parameter.
16814         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
16815         New parameter.  Update all callers in this file.
16816         (array_type_has_dynamic_stride): New function.
16817         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
16818         of arrays with dynamic byte strides.
16819         * dwarf2read.c (read_array_type): Add support for dynamic
16820         DW_AT_byte_stride attributes.
16821
16822 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16823
16824         * dwarf2read.c (read_unspecified_type): Treat
16825         DW_TAG_enumeration_type DIEs from Ada units as stubs.
16826
16827 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16828
16829         Update copyright year range in all GDB files.
16830
16831 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
16832
16833         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
16834         and gdb/testsuite/gdb.base/step-line.c.
16835
16836 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16837
16838         * copyright.py (main): Dump the contents of
16839         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
16840         even if BY_HAND is empty.
16841
16842 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16843
16844         * top.c (print_gdb_version): Update Copyright year in version
16845         message.
16846
16847 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16848
16849         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
16850
16851 For older changes see ChangeLog-2017.
16852 \f
16853 Local Variables:
16854 mode: change-log
16855 left-margin: 8
16856 fill-column: 74
16857 version-control: never
16858 coding: utf-8
16859 End: