gdb/riscv: Prevent buffer overflow in riscv_return_value
[external/binutils.git] / gdb / ChangeLog
1 2018-12-22  Andrew Burgess  <andrew.burgess@embecosm.com>
2
3         * riscv-tdep.c (riscv_call_arg_struct): Don't adjust size before
4         assigning locations.
5         (riscv_return_value): Take more care not to read/write outside of
6         argument buffer.  Cast return value between the declared type and
7         the abi type.
8
9 2018-12-22  Andrew Burgess  <andrew.burgess@embecosm.com>
10
11         * riscv-tdep.c (riscv_register_reggroup_p): Save and restore fcsr,
12         fflags, and frm registers.
13
14 2018-12-22  Andrew Burgess  <andrew.burgess@embecosm.com>
15
16         * riscv-tdep.c (riscv_dwarf_reg_to_regnum): New function.
17         (riscv_gdbarch_init): Register new function with gdbarch.
18         * riscv-tdep.h: New enum to define RISC-V DWARF register numbers.
19
20 2018-12-21  Simon Marchi  <simon.marchi@ericsson.com>
21
22         * minsyms.c (mst_str): New.
23         (minimal_symbol_reader::record_full): Add debug output.
24
25 2018-12-21  John Baldwin  <jhb@FreeBSD.org>
26
27         * fbsd-nat.c (fbsd_handle_debug_trap): Require pl.pl_flags to
28         equal PL_FLAG_SI.
29         (fbsd_nat_target::stopped_by_sw_breakpoint): Likewise.
30
31 2018-12-21  Paul Marechal  <paul.marechal@ericsson.com>
32
33         PR gdb/23974
34         * target.c (target_read_stralloc): Check for empty vector.
35
36 2018-12-21  Дилян Палаузов  <dilyan.palauzov@aegee.org>
37
38         * top.c (print_gdb_configuration): Print "--without-python"
39         if GDB was configured without Python.
40
41 2018-12-21  Andrew Burgess  <andrew.burgess@embecosm.com>
42
43         * riscv-tdep.c (riscv_scan_prologue): Use plongest to format
44         a signed offset as a string.
45
46 2018-12-21  Dave Murphy  <davem@devkitpro.org>
47
48         * dtrace-probe.c (dtrace_static_probe_ops): Explicit zero
49         initialise.
50         * probe.c (any_static_probe_ops): Ditto.
51         * record-btrace.c (record_btrace_thread_observer_token): Ditto.
52         * stap-probe.c (stap_static_probe_ops): Ditto.
53         * tui/tui-hooks.c (tui_observers_token): Ditto.
54         * unittests/observable-selftests.c (token1, token2, token3): Ditto.
55
56 2018-12-19  Andrew Burgess  <andrew.burgess@embecosm.com>
57
58         * gdb/dummy-frame.c (default_dummy_id): Defined new function.
59         * gdb/dummy-frame.h (default_dummy_id): Declare new function.
60         * gdb/frame-unwind.c (default_unwind_pc): Define new function.
61         (default_unwind_sp): Define new function.
62         * gdb/frame-unwind.h (default_unwind_pc): Declare new function.
63         (default_unwind_sp): Declare new function.
64         * gdb/frame.c (frame_unwind_pc): Assume gdbarch_unwind_pc is
65         available.
66         (get_frame_sp): Assume that gdbarch_unwind_sp is available.
67         * gdb/gdbarch.c: Regenerate.
68         * gdb/gdbarch.h: Regenerate.
69         * gdb/gdbarch.sh: Update definition of dummy_id, unwind_pc, and
70         unwind_sp.  Add additional header files to be included in
71         generated file.
72
73 2018-12-19  Dimitar Dimitrov  <dimitar@dinux.eu>
74
75         * nat/linux-ptrace.c (linux_ptrace_test_ret_to_nx): Remove
76         sp clobbers.
77
78 2018-12-17  Andrew Burgess  <andrew.burgess@embecosm.com>
79
80         * dwarf2read.c (struct dwarf2_cu): Convert the fields 'mark',
81         'has_loclist', 'checked_producer', 'producer_is_gxx_lt_4_6',
82         'producer_is_gcc_lt_4_3', 'producer_is_icc_lt_14',
83         'processing_has_namespace_info' from unsigned int to bool.  Update
84         comments.
85         (producer_is_icc_lt_14): Update return type.
86         (producer_is_gcc_lt_4_3): Likewise.
87         (producer_is_gxx_lt_4_6): Likewise.
88         (process_die): Write true instead of 1 into predicate fields.
89         (dwarf2_start_symtab): Likewise.
90         (var_decode_location): Likewise.
91         (dwarf2_mark_helper): Likewise.
92         (dwarf2_mark): Likewise.
93         (dwarf2_clear_marks): Write false instead of 0 into predicate
94         field.
95         (dwarf2_cu::dwarf2_cu): Initialise predicate fields to false, not
96         0.
97
98 2018-12-17  Szabolcs Nagy  <szabolcs.nagy@arm.com>
99
100         * nat/aarch64-sve-linux-ptrace.h: Include signal.h instead of
101         asm/sigcontext.h.
102
103 2018-12-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
104
105         * nat/linux-ptrace.c (kill_child): Fix ARI warning by removing
106         warning trailing new line.
107
108 2018-12-16  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
109
110         * nat/linux-ptrace.c (kill_child): New function.
111         (linux_ptrace_test_ret_to_nx): Use kill_child instead of local code.
112         Add a call to kill_child in case of early return after fork.
113         (linux_check_ptrace_features): Use kill_child instead of local code.
114         (linux_test_for_tracefork): Likewise.
115
116 2018-12-14  Tom Tromey  <tom@tromey.com>
117
118         * Makefile.in: Remove "alloca" comment.
119         (INFOFILES): Remove.
120         (local-maintainer-clean): Don't use INFOFILES.
121
122 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
123
124         * syscalls/update-freebsd.sh: New file.
125         * syscalls/freebsd.xml: Regenerate.
126
127 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
128
129         * NEWS: Add entry documenting system call aliases.
130         * break-catch-syscall.c (catch_syscall_split_args): Pass 'result'
131         to get_syscalls_by_name.
132         * gdbarch.sh (UNKNOWN_SYSCALL): Remove.
133         * gdbarch.h: Regenerate.
134         * syscalls/gdb-syscalls.dtd (syscall): Add alias attribute.
135         * xml-syscall.c [!HAVE_LIBEXPAT] (get_syscalls_by_name): Rename
136         from get_syscall_by_name.  Now accepts a pointer to a vector of
137         integers and returns a bool.
138         [HAVE_LIBEXPAT] (struct syscall_desc): Add alias member.
139         (syscall_create_syscall_desc): Add alias parameter and pass it to
140         syscall_desc constructor.
141         (syscall_start_syscall): Handle alias attribute.
142         (syscall_attr): Add alias attribute.
143         (xml_get_syscalls_by_name): Rename from xml_get_syscall_number.
144         Now accepts a pointer to a vector of integers and returns a
145         bool.  Add syscalls whose alias or name matches the requested
146         name.
147         (get_syscalls_by_name): Rename from get_syscall_by_name.  Now
148         accepts a pointer to a vector of integers and returns a bool.
149         * xml-syscall.h (get_syscalls_by_name): Likewise.
150
151 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
152
153         * break-catch-syscall.c (catch_syscall_split_args): Pass 'result'
154         to get_syscalls_by_group.
155         * xml-syscall.c [!HAVE_LIBEXPAT] (get_syscalls_by_group): Return
156         false.
157         [HAVE_LIBEXPAT] (xml_list_syscalls_by_group): Append syscall
158         numbers to an existing vector of integers and return a bool.
159         (get_syscalls_by_group): Accept pointer to vector of integers
160         and change return type to bool.
161         * xml-syscall.h (get_syscalls_by_group): Likewise.
162
163 2018-12-13  Jim Wilson  <jimw@sifive.com>
164
165         * riscv-tdep.c (riscv_print_one_register_info): For MSTATUS, add
166         comment for SD field, and correct xlen calculation.  For MISA, add
167         comment for MXL field, add call to register_size, and correct base
168         calculation.
169
170 2018-12-13  Stafford Horne  <shorne@gmail.com>
171
172         * NEWS(New targets): Add or1k*-*-linux*.
173
174 2018-12-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
175
176         * nat/linux-osdata.c (linux_xfer_osdata_info_os_types): Forward
177         declare on one line to fix ARI warning.
178
179 2018-12-12  Andrew Burgess  <andrew.burgess@embecosm.com>
180
181         * infrun.c (infcall_suspend_state::infcall_suspend_state): New.
182         (infcall_suspend_state::registers): New.
183         (infcall_suspend_state::restore): New.
184         (infcall_suspend_state::thread_suspend): Rename to...
185         (infcall_suspend_state::m_thread_suspend): ...this.
186         (infcall_suspend_state::registers): Rename to...
187         (infcall_suspend_state::m_registers): ...this.
188         (infcall_suspend_state::siginfo_gdbarch): Rename to...
189         (infcall_suspend_state::m_siginfo_gdbarch): ...this.
190         (infcall_suspend_state::siginfo_data): Rename to...
191         (infcall_suspend_state::m_siginfo_data): ...this.
192         (save_infcall_suspend_state): Rewrite to use infcall_suspend_state
193         constructor.
194         (restore_infcall_suspend_state): Rewrite to use
195         infcall_suspend_state::restore method.
196         (get_infcall_suspend_state_regcache): Use
197         infcall_suspend_state::registers method.
198
199 2018-12-12  Andrew Burgess  <andrew.burgess@embecosm.com>
200
201         * riscv-tdep.c (riscv_call_arg_scalar_float): Unnamed (variadic)
202         arguments are passed in integer registers.
203         (riscv_call_arg_complex_float): Likewise.
204
205 2018-12-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
206
207         * nat/linux-osdata.c (common_getter): New function.
208         (struct osdata_type): Change getter to take_snapshot.
209         Add LONGEST len_avail and struct buffer buffer.
210         Change all elements in the initializer.
211         Add an element for the list of types.
212         (linux_xfer_osdata_info_os_types): New function.
213         (linux_common_xfer_osdata): Use common_getter for the list of types.
214         Replace getter call by common_getter.
215         (linux_xfer_osdata_cpus): Remove args READBUF, OFFSET, LEN.
216         Add arg BUFFER.  Only keep the code that adds data in BUFFER.
217         (linux_xfer_osdata_fds): Likewise.
218         (linux_xfer_osdata_modules): Likewise.
219         (linux_xfer_osdata_msg): Likewise.
220         (linux_xfer_osdata_processes): Likewise.
221         (linux_xfer_osdata_processgroups): Likewise.
222         (linux_xfer_osdata_sem): Likewise.
223         (linux_xfer_osdata_shm): Likewise.
224         (linux_xfer_osdata_isockets): Likewise.
225         (linux_xfer_osdata_threads): Likewise.
226
227 2018-12-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
228
229         * nat/linux-osdata.c: Removed various trailing spaces.
230
231 2018-12-10  Andrew Burgess  <andrew.burgess@embecosm.com>
232
233         * riscv-tdep.c (riscv_register_name): Fix ARI warning by removing
234         leading whitespace before #include line.
235
236 2018-12-08  Simon Marchi  <simon.marchi@ericsson.com>
237             Дилян Палаузов  <dilyan.palauzov@aegee.org>
238
239         PR gdb/23950
240         * configure.ac: Search for tgetent in libtinfow.
241         * configure: Re-generate.
242
243 2018-12-08  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
244
245         * linux-thread-db.c (struct thread_db_info): Add td_ta_delete_p.
246         (thread_db_err_str): Forward declare.
247         (delete_thread_db_info): Call td_ta_delete_p if available.
248         (try_thread_db_load_1): Acquire td_ta_delete address.
249         * nat/gdb_thread_db.h (td_ta_delete_ftype): Declare.
250
251 2018-12-08  Pedro Alves  <palves@redhat.com>
252
253         * source.c (forward_search_command): Rename to ...
254         (search_command_helper): ... this.  Add 'forward' parameter.
255         Tweak to use a gdb::def_vector<char> instead of a xrealloc'ed
256         buffer.  Handle backward searches too.
257         (forward_search_command, reverse_search_command): Reimplement by
258         calling search_command_helper.
259
260 2018-12-07  Andrew Burgess  <andrew.burgess@embecosm.com>
261
262         * .dir-locals.el: Copy most of the settings from c-mode over to
263         c++-mode.
264
265 2018-12-08  Stafford Horne  <shorne@gmail.com>
266
267         * Makefile.in (ALL_TARGET_OBS): Add or1k-linux-tdep.o.
268         * configure.tgt: Add or1k*-*-linux*.
269         * or1k-linux-tdep.c: New file.
270         * or1k-tdep.c (or1k_gdbarch_init): Call gdbarch_init_osabi.
271
272 2018-12-07  Pedro Alves  <palves@redhat.com>
273
274         * dwarf2read.c (get_gdb_index_contents_from_section): Use
275         gdb::make_array_view.
276
277 2018-12-05  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
278
279         * language.c (_initialize_language): Fix leak by assigning
280         a static string to language.  Same for range and case_sensitive,
281         even if no leak is detected for these variables.
282
283 2018-12-05  John Baldwin  <jhb@FreeBSD.org>
284
285         * configure: Re-generate.
286         * configure.ac: Use separate sed expressions to escape variables
287         in auto-load directories.
288
289 2018-12-05  Andrew Burgess  <andrew.burgess@embecosm.com>
290
291         * riscv-tdep.c (riscv_features_from_gdbarch_info): New function.
292         (riscv_find_default_target_description): Use new function to
293         extract feature from gdbarch_info.
294         (riscv_gdbarch_init): Add error checks for xlen and flen between
295         target description and bfd headers.  Be smarter about when we
296         think the hardware floating point abi should be used.
297
298 2018-12-05  Alan Hayward  <alan.hayward@arm.com>
299
300         * nat/aarch64-linux-hw-point.c
301         (aarch64_linux_any_set_debug_regs_state): New function.
302         * nat/aarch64-linux-hw-point.h
303         (aarch64_linux_any_set_debug_regs_state): New declaration.
304         * nat/aarch64-linux.c (aarch64_linux_new_thread): Check if any
305         BPs or WPs are set.
306
307 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
308
309         * common/filestuff.c [HAVE_KINFO_GETFILE]: Include headers.
310         (fdwalk) [HAVE_KINFO_GETFILE]: Use kinfo_getfile.
311
312 2018-11-30  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
313             Simon Marchi  <simon.marchi@ericsson.com>
314
315         * linespec.c (symtab_vector_up): Remove.
316         (symtabs_from_filename): Change return type to std::vector.
317         (collect_symtabs_from_filename): Likewise.
318         (create_sals_line_offset): Assign return value of
319         collect_symtabs_from_filename to *ls->file_symtabs.
320         (convert_explicit_location_to_linespec): Remove call to release.
321         (parse_linespec): Likewise.
322         (symtab_collector) <symtab_collector>: Remove initialization of
323         m_symtabs.
324         <release_symtabs>: Change return type to std::vector<symtab *>.
325         <operator ()>: Adjust.
326
327 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
328
329         * fbsd-nat.c [__FreeBSD_version >= 700009] (USE_SIGINFO): Macro
330         defined.
331         (union sigval32, struct siginfo32, fbsd_siginfo_size)
332         (fbsd_convert_siginfo): Make conditional on USE_SIGINFO instead
333         of KERN_PROC_AUXV and PT_LWPINFO.
334         (fbsd_nat_target::xfer_partial): Define method unconditionally.
335         Make TARGET_OBJECT_SIGNAL_INFO conditional on USE_SIGINFO.
336         Make TARGET_OBJECT_AUXV conditional on KERN_PROC_AUXV.
337         Make TARGET_OBJECT_FREEBSD_VMMAP and
338         TARGET_OBJECT_FREEBSD_PS_STRINGS conditional on KERN_PROC_VMMAP
339         and KERN_PROC_PS_STRINGS.
340         * fbsd-nat.h: Include <sys/proc.h>.
341         (fbsd_nat_target::xfer_partial): Declare method unconditionally.
342
343 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
344
345         * riscv-linux-nat.c: Add 'inferior.h' and 'target-descriptions.h'
346         header files.
347         (riscv_linux_nat_target::read_description): New method.
348
349 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
350
351         * arch/riscv.h (riscv_gdbarch_features::hash): New method.
352         * arch/riscv.c (struct riscv_gdbarch_features_hasher): New.
353         (riscv_tdesc_cache): New global.
354         (riscv_create_target_description): Look in the cache before
355         creating a new target description.
356
357 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
358
359         * arch/riscv.h (riscv_gdb_features::operator==): New.
360         (riscv_gdb_features::operator!=): New.
361         * riscv-tdep.c (riscv_gdbarch_init): Make use of the inequality
362         operator.
363
364 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
365
366         * arch/riscv.h (riscv_create_target_description): Make return type
367         const.
368         * arch/riscv.c (riscv_create_target_description): Likewise.
369         * riscv-tdep.c (riscv_find_default_target_description): Likewise.
370
371 2018-11-30  Jan Kratochvil  <jan.kratochvil@redhat.com>
372             Keith Seitz  <keiths@redhat.com>
373             Tom Tromey  <tom@tromey.com>
374             Sergio Durigan Junior  <sergiodj@redhat.com>
375
376         https://bugzilla.redhat.com/show_bug.cgi?id=1613614
377         * dwarf2read.c (dwarf2_find_containing_comp_unit): Add
378         'mid_cu->length' to '*cu_off' when checking if 'sect_off' is
379         inside the CU.
380
381 2018-11-30  Pedro Alves  <palves@redhat.com>
382
383         * aix-thread.c (aix_thread_target) <aix_thread_target>: Delete.
384         <stratum>: New override.
385         * bfd-target.c (aix_thread_target) <aix_thread_target>: Delete.
386         <stratum>: New override.
387         * bsd-uthread.c (bsd_uthread_target) <bsd_uthread_target>: Delete.
388         <stratum>: New override.
389         * exec.c (exec_target) <exec_target>: Delete.
390         <stratum>: New override.
391         * gdbarch-selftests.c (register_to_value_test): Adjust to use the
392         stratum method instead of the to_stratum field.
393         * linux-thread-db.c (thread_db_target) <thread_db_target>: Delete.
394         <stratum>: New override.
395         (thread_db_target::thread_db_target): Delete.
396         * make-target-delegates (print_class): Don't print a ctor
397         declaration.  Print a stratum method override declaration.
398         * process-stratum-target.h (process_stratum_target)
399         <process_stratum_target>: Delete.
400         <stratum>: New override.
401         * ravenscar-thread.c (ravenscar_thread_target)
402         <ravenscar_thread_target>: Delete.
403         <stratum>: New override.
404         * record-btrace.c (record_btrace_target)
405         <record_btrace_target>: Delete.
406         <stratum>: New override.
407         * record-full.c (record_full_base_target)
408         <record_full_base_target>: Delete.
409         <stratum>: New override.
410         * record.c (record_disconnect, record_detach)
411         (record_mourn_inferior, record_kill): Adjust to use the stratum
412         method instead of the to_stratum field.
413         * regcache.c (cooked_read_test, cooked_write_test): Likewise.
414         * sol-thread.c (sol_thread_target)
415         <sol_thread_target>: Delete.
416         <stratum>: New override.
417         * spu-multiarch.c (spu_multiarch_target)
418         <spu_multiarch_target>: Delete.
419         <stratum>: New override.
420         * target-delegates.c: Regenerate.
421         * target.c (target_stack::push, target_stack::unpush)
422         (pop_all_targets_above, pop_all_targets_at_and_above)
423         (info_target_command, target_require_runnable)
424         (target_stack::find_beneath): Adjust to use the stratum method
425         instead of the to_stratum field.
426         (dummy_target::dummy_target): Delete.
427         (dummy_target::stratum): New.
428         (debug_target::debug_target): Delete.
429         (debug_target::stratum): New.
430         (maintenance_print_target_stack): Adjust to use the stratum method
431         instead of the to_stratum field.
432         * target.h (struct target_ops) <stratum>: New method.
433         <to_stratum>: Delete.
434         <is_pushed>: Adjust to use the stratum method
435         instead of the to_stratum field.
436
437 2018-11-30  Pedro Alves  <palves@redhat.com>
438
439         * corelow.c (core_target) <has_all_memory, has_execution>: New
440         overrides.
441         * inf-child.c (inf_child_target::has_all_memory)
442         (inf_child_target::has_memory, inf_child_target::has_stack)
443         (inf_child_target::has_registers)
444         (inf_child_target::has_execution): Delete.
445         * inf-child.h (inf_child_target) <has_all_memory, has_memory,
446         has_stack, has_registers, has_execution>: Delete.
447         * process-stratum-target.c
448         (process_stratum_target::has_all_memory)
449         (process_stratum_target::has_memory)
450         (process_stratum_target::has_stack)
451         (process_stratum_target::has_registers)
452         (process_stratum_target::has_execution): New.
453         * process-stratum-target.h (process_stratum_target)
454         <has_all_memory, has_memory, has_stack, has_registers,
455         has_execution>: New method overrides.
456         * ravenscar-thread.c (ravenscar_thread_target) <has_all_memory,
457         has_memory, has_stack, has_registers, has_execution>: Delete.
458         * remote-sim.c (gdbsim_target) <has_stack, has_registers,
459         has_execution>: Delete.
460         * remote.c (remote_target) <has_all_memory, has_memory, has_stack,
461         has_registers, has_execution>: Delete.
462         * target.c (default_child_has_all_memory)
463         (default_child_has_memory, default_child_has_stack)
464         (default_child_has_registers, default_child_has_execution):
465         Delete.
466         * target.h (default_child_has_all_memory)
467         (default_child_has_memory, default_child_has_stack)
468         (default_child_has_registers, default_child_has_execution):
469         Delete.
470         * tracefile.h (tracefile_target) <has_execution>: New override.
471
472 2018-11-30  Pedro Alves  <palves@redhat.com>
473
474         * Makefile.in (COMMON_SFILES): Add process-stratum-target.c.
475         * bsd-kvm.c: Include "process-stratum-target.h".
476         (bsd_kvm_target): Now inherits from process_stratum_target.
477         (bsd_kvm_target::bsd_kvm_target): Default it.
478         * corelow.c: Include "process-stratum-target.h".
479         (core_target): Now inherits from process_stratum_target.
480         (core_target::core_target): Don't set to_stratum here.
481         * inf-child.c (inf_child_target::inf_child_target): Delete.
482         * inf-child.h: Include "process-stratum-target.h".
483         (inf_child_target): Inherit from process_stratum_target.
484         (inf_child_target) <inf_child_target>: Default it.
485         <can_async_p, supports_non_stop, supports_disable_randomization>:
486         Delete overrides.
487         * process-stratum-target.c: New file.
488         * process-stratum-target.h: New file.
489         * remote-sim.c: Include "process-stratum-target.h".
490         (gdbsim_target): Inherit from process_stratum_target.
491         <gdbsim_target>: Default it.
492         * remote.c: Include "process-stratum-target.h".
493         (remote_target): Inherit from process_stratum_target.
494         <remote_target>: Default it.
495         * target.c (default_thread_address_space)
496         (default_thread_architecture): Delete.
497         * target.h (target_ops) <thread_architecture>: Now returns NULL by
498         default.
499         <thread_address_space>: Ditto.
500         * test-target.h: Include "process-stratum-target.h" instead of
501         "target.h".
502         (test_target_ops): Inherit from process_stratum_target.
503         <test_target_ops>: Default it.
504         * tracefile.c (tracefile_target::tracefile_target): Delete.
505         * tracefile.h: Include "process-stratum-target.h".
506         (tracefile_target): Inherit from process_stratum_target.
507         <tracefile_target>: Default it.
508         * target-delegates.c: Regenerate.
509
510 2018-11-30  Pedro Alves  <palves@redhat.com>
511
512         * Makefile.in (COMMON_SFILES): Add test-target.c.
513         * gdbarch-selftests.c: Include "test-target.h".
514         * regcache.c: Include "test-target.h".
515         * target.c (test_target_info, test_target_ops::info): Move to ...
516         * test-target.c: ... this new file.
517         * target.h (test_target_ops): Move to ...
518         * test-target.h: ... this new file.
519
520 2018-11-29  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
521
522         * source.c (forward_search_command): Fix leak by using
523         xrealloc even for the first allocation in the loop, as buf
524         is static.
525
526 2018-11-29  Rajendra SY  <rajendra.sy@gmail.com>
527
528         PR gdb/23093
529         * gdb/fbsd-tdep.c (fbsd_gdb_signal_from_target)
530         (fbsd_gdb_signal_to_target): New.
531         (fbsd_init_abi): Install gdbarch "signal_from_target" and
532         "signal_to_target" methods.
533
534 2018-11-29  Tom Tromey  <tom@tromey.com>
535
536         * valarith.c (value_x_unop): Don't set argvec[3].
537
538 2018-11-26  Simon Marchi  <simon.marchi@ericsson.com>
539
540         PR gdb/23917
541         * sparc-linux-nat.c (sparc_linux_nat_target): Remove extraneous
542         semicolon.
543
544 2018-11-26  Pedro Alves  <palves@redhat.com>
545
546         * procfs.c (procfs_notice_thread): Replace uses of
547         in_thread_list/is_exited with find_thread_ptid/THREAD_EXITED.
548         * sol-thread.c (sol_thread_target::wait)
549         (sol_update_thread_list_callback): Likewise.
550
551 2018-11-25  Tom Tromey  <tom@tromey.com>
552
553         * ui-out.c (ui_out::field_fmt): Remove comment.
554         * tui/tui-out.c (tui_ui_out::do_field_fmt): Remove comment.
555         * mi/mi-out.c (mi_ui_out::do_field_fmt): Remove comment.
556
557 2018-11-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
558
559         * source.c (open_source_file): Leak fixed in '8e6a5953e1d Fix 4K
560         leak in open_source_file' has been partially undone by '2179fbc36d23
561         Return scoped_fd from open_source_file'. Re-add the transfer of
562         current s->fullname to the unique_xmalloc_ptr fullname given
563         to find_and_open_source.
564
565 2018-11-23  Pedro Alves  <palves@redhat.com>
566
567         * gdbthread.h (enum thread_state): Move comments here.
568         (is_running, is_stopped, is_exited): Remove declarations.
569
570 2018-11-22  Pedro Alves  <palves@redhat.com>
571
572         * Makefile.in (COMMON_SFILES): Add thread-iter.c.
573         * breakpoint.c (breakpoints_should_be_inserted_now): Replace
574         ALL_NON_EXITED_THREADS with all_non_exited_threads.
575         (print_one_breakpoint_location): Replace ALL_INFERIORS with
576         all_inferiors.
577         * bsd-kvm.c: Include inferior.h.
578         * btrace.c (btrace_free_objfile): Replace ALL_NON_EXITED_THREADS
579         with all_non_exited_threads.
580         * common/filtered-iterator.h: New.
581         * common/safe-iterator.h: New.
582         * corelow.c (core_target_open): Don't call init_thread_list here.
583         * darwin-nat.c (thread_info_from_private_thread_info): Replace
584         ALL_THREADS with all_threads.
585         * fbsd-nat.c (fbsd_nat_target::resume): Replace
586         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
587         * fbsd-tdep.c (fbsd_make_corefile_notes): Replace
588         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
589         * fork-child.c (postfork_hook): Don't call init_thread_list here.
590         * gdbarch-selftests.c (register_to_value_test): Adjust.
591         * gdbthread.h: Don't include "inferior.h" here.
592         (struct inferior): Forward declare.
593         (enum step_over_calls_kind): Moved here from inferior.h.
594         (thread_info::deletable): Definition moved to thread.c.
595         (find_thread_ptid (inferior *, ptid_t)): Declare.
596         (ALL_THREADS, ALL_THREADS_BY_INFERIOR, ALL_THREADS_SAFE): Delete.
597         Include "thread-iter.h".
598         (all_threads, all_non_exited_threads, all_threads_safe): New.
599         (any_thread_p): Declare.
600         (thread_list): Delete.
601         * infcmd.c (signal_command): Replace ALL_NON_EXITED_THREADS with
602         all_non_exited_threads.
603         (proceed_after_attach_callback): Delete.
604         (proceed_after_attach): Take an inferior pointer instead of an
605         integer PID.  Adjust to use range-for.
606         (attach_post_wait): Pass down inferior pointer instead of pid.
607         Use range-for instead of ALL_NON_EXITED_THREADS.
608         (detach_command): Remove init_thread_list call.
609         * inferior-iter.h: New.
610         * inferior.c (struct delete_thread_of_inferior_arg): Delete.
611         (delete_thread_of_inferior): Delete.
612         (delete_inferior, exit_inferior_1): Use range-for with
613         inf->threads_safe() instead of iterate_over_threads.
614         (inferior_appeared): Call init_thread_list here.
615         (discard_all_inferiors): Use all_non_exited_inferiors.
616         (find_inferior_id, find_inferior_pid): Use all_inferiors.
617         (iterate_over_inferiors): Use all_inferiors_safe.
618         (have_inferiors, number_of_live_inferiors): Use
619         all_non_exited_inferiors.
620         (number_of_inferiors): Use all_inferiors and std::distance.
621         (print_inferior): Use all_inferiors.
622         * inferior.h: Include gdbthread.h.
623         (enum step_over_calls_kind): Moved to gdbthread.h.
624         (struct inferior) <thread_list>: New field.
625         <threads, non_exited_threads, threads_safe>: New methods.
626         (ALL_INFERIORS): Delete.
627         Include "inferior-iter.h".
628         (ALL_NON_EXITED_INFERIORS): Delete.
629         (all_inferiors_safe, all_inferiors, all_non_exited_inferiors): New
630         functions.
631         * inflow.c (child_interrupt, child_pass_ctrlc): Replace
632         ALL_NON_EXITED_THREADS with all_non_exited_threads.
633         * infrun.c (follow_exec): Use all_threads_safe.
634         (clear_proceed_status, proceed): Use all_non_exited_threads.
635         (init_wait_for_inferior): Don't clear inline frame state here.
636         (infrun_thread_stop_requested, for_each_just_stopped_thread): Use
637         all_threads instead of ALL_NON_EXITED_THREADS.
638         (random_pending_event_thread): Use all_non_exited_threads instead
639         of ALL_NON_EXITED_THREADS.  Use a lambda for repeated code.
640         (clean_up_just_stopped_threads_fsms): Use all_non_exited_threads
641         instead of ALL_NON_EXITED_THREADS.
642         (handle_no_resumed): Use all_non_exited_threads instead of
643         ALL_NON_EXITED_THREADS.  Use all_inferiors instead of
644         ALL_INFERIORS.
645         (restart_threads, switch_back_to_stepped_thread): Use
646         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
647         * linux-nat.c (check_zombie_leaders): Replace ALL_INFERIORS with
648         all_inferiors.
649         (kill_unfollowed_fork_children): Use inf->non_exited_threads
650         instead of ALL_NON_EXITED_THREADS.
651         * linux-tdep.c (linux_make_corefile_notes): Use
652         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
653         * linux-thread-db.c (thread_db_target::update_thread_list):
654         Replace ALL_INFERIORS with all_inferiors.
655         (thread_db_target::thread_handle_to_thread_info): Use
656         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
657         * mi/mi-interp.c (multiple_inferiors_p): New.
658         (mi_on_resume_1): Simplify using all_non_exited_threads and
659         multiple_inferiors_p.
660         * mi/mi-main.c (mi_cmd_thread_list_ids): Use all_non_exited_threads
661         instead of ALL_NON_EXITED_THREADS.
662         * nto-procfs.c (nto_procfs_target::open): Don't call
663         init_thread_list here.
664         * record-btrace.c (record_btrace_target_open)
665         (record_btrace_target::stop_recording)
666         (record_btrace_target::close)
667         (record_btrace_target::record_is_replaying)
668         (record_btrace_target::resume, record_btrace_target::wait)
669         (record_btrace_target::record_stop_replaying): Use
670         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
671         * record-full.c (record_full_wait_1): Use all_non_exited_threads
672         instead of ALL_NON_EXITED_THREADS.
673         * regcache.c (cooked_read_test): Remove reference to global
674         thread_list.
675         * remote-sim.c (gdbsim_target::create_inferior): Don't call
676         init_thread_list here.
677         * remote.c (remote_target::update_thread_list): Use
678         all_threads_safe instead of ALL_NON_EXITED_THREADS.
679         (remote_target::process_initial_stop_replies): Replace
680         ALL_INFERIORS with all_non_exited_inferiors and use
681         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
682         (remote_target::open_1): Don't call init_thread_list here.
683         (remote_target::append_pending_thread_resumptions)
684         (remote_target::remote_resume_with_hc): Use all_non_exited_threads
685         instead of ALL_NON_EXITED_THREADS.
686         (remote_target::commit_resume)
687         (remote_target::remove_new_fork_children): Replace ALL_INFERIORS
688         with all_non_exited_inferiors and use all_non_exited_threads
689         instead of ALL_NON_EXITED_THREADS.
690         (remote_target::kill_new_fork_children): Use
691         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.  Remove
692         init_thread_list and init_wait_for_inferior calls.
693         (remote_target::remote_btrace_maybe_reopen)
694         (remote_target::thread_handle_to_thread_info): Use
695         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
696         * target.c (target_terminal::restore_inferior)
697         (target_terminal_is_ours_kind): Replace ALL_INFERIORS with
698         all_non_exited_inferiors.
699         * thread-iter.c: New file.
700         * thread-iter.h: New file.
701         * thread.c: Include "inline-frame.h".
702         (thread_list): Delete.
703         (clear_thread_inferior_resources): Call clear_inline_frame_state.
704         (init_thread_list): Use all_threads_safe instead of
705         ALL_THREADS_SAFE.  Adjust to per-inferior thread lists.
706         (new_thread): Adjust to per-inferior thread lists.
707         (add_thread_silent): Pass inferior to find_thread_ptid.
708         (thread_info::deletable): New, moved from the header.
709         (delete_thread_1): Adjust to per-inferior thread lists.
710         (find_thread_global_id): Use inf->threads().
711         (find_thread_ptid): Use find_inferior_ptid and pass inferior to
712         find_thread_ptid.
713         (find_thread_ptid(inferior*, ptid_t)): New overload.
714         (iterate_over_threads): Use all_threads_safe.
715         (any_thread_p): New.
716         (thread_count): Use all_threads and std::distance.
717         (live_threads_count): Use all_non_exited_threads and
718         std::distance.
719         (valid_global_thread_id): Use all_threads.
720         (in_thread_list): Use find_thread_ptid.
721         (first_thread_of_inferior): Adjust to per-inferior thread lists.
722         (any_thread_of_inferior, any_live_thread_of_inferior): Use
723         inf->non_exited_threads().
724         (prune_threads, delete_exited_threads): Use all_threads_safe.
725         (thread_change_ptid): Pass inferior pointer to find_thread_ptid.
726         (set_resumed, set_running): Use all_non_exited_threads.
727         (is_thread_state, is_stopped, is_exited, is_running)
728         (is_executing): Delete.
729         (set_executing, set_stop_requested, finish_thread_state): Use
730         all_non_exited_threads.
731         (print_thread_info_1): Use all_inferiors and all_threads.
732         (thread_apply_all_command): Use all_non_exited_threads.
733         (thread_find_command): Use all_threads.
734         (update_threads_executing): Use all_non_exited_threads.
735         * tid-parse.c (parse_thread_id): Use inf->threads.
736         * x86-bsd-nat.c (x86bsd_dr_set): Use inf->non_exited_threads ().
737
738 2018-11-22  Pedro Alves  <palves@redhat.com>
739
740         * infrun.c (follow_exec) <set follow-exec new>: Add thread and
741         switch to it before calling into try_open_exec_file.
742
743 2018-11-22  Pedro Alves  <palves@redhat.com>
744
745         * cli/cli-interp.c (cli_on_user_selected_context_changed): Use
746         inferior_thread instead of find_thread_ptid, and only when
747         inferior_ptid is not null_ptid.
748         * inferior.c (add_inferior): Don't include target_pid_to_str
749         output when the inferior is not started.
750         * python/py-inferior.c (python_on_normal_stop): Don't use
751         find_thread_ptid.
752         (tui_on_user_selected_context_changed): Use inferior_thread
753         instead of find_thread_ptid, and only when inferior_ptid is not
754         null_ptid.
755
756 2018-11-21  Benno Fünfstück  <benno.fuenfstueck@gmail.com>
757
758         PR python/23714
759         * gdb/python/python.c (execute_gdb_command): Call
760         prevent_dont_repeat earlier to avoid affecting dont_repeat.
761
762 2018-11-21  Andrew Burgess  <andrew.burgess@embecosm.com>
763
764         * Makefile.in (ALL_TARGET_OBS): Add arch/riscv.o.
765         (HFILES_NO_SRCDIR): Add arch/riscv.h.
766         * arch/riscv.c: New file.
767         * arch/riscv.h: New file.
768         * configure.tgt: Add cpu_obs list of riscv, move riscv-tdep.o into
769         this list, and add arch/riscv.o.
770         * features/Makefile: Add riscv features.
771         * features/riscv/32bit-cpu.c: New file.
772         * features/riscv/32bit-cpu.xml: New file.
773         * features/riscv/32bit-csr.c: New file.
774         * features/riscv/32bit-csr.xml: New file.
775         * features/riscv/32bit-fpu.c: New file.
776         * features/riscv/32bit-fpu.xml: New file.
777         * features/riscv/64bit-cpu.c: New file.
778         * features/riscv/64bit-cpu.xml: New file.
779         * features/riscv/64bit-csr.c: New file.
780         * features/riscv/64bit-csr.xml: New file.
781         * features/riscv/64bit-fpu.c: New file.
782         * features/riscv/64bit-fpu.xml: New file.
783         * features/riscv/rebuild-csr-xml.sh: New file.
784         * riscv-tdep.c: Add 'arch/riscv.h' include.
785         (riscv_gdb_reg_names): Delete.
786         (csr_reggroup): New global.
787         (struct riscv_register_alias): Delete.
788         (struct riscv_register_feature): New structure.
789         (riscv_register_aliases): Delete.
790         (riscv_xreg_feature): New global.
791         (riscv_freg_feature): New global.
792         (riscv_virtual_feature): New global.
793         (riscv_csr_feature): New global.
794         (riscv_create_csr_aliases): New function.
795         (riscv_read_misa_reg): Delete.
796         (riscv_has_feature): Delete.
797         (riscv_isa_xlen): Simplify, just return cached xlen.
798         (riscv_isa_flen): Simplify, just return cached flen.
799         (riscv_has_fp_abi): Update for changes in struct gdbarch_tdep.
800         (riscv_register_name): Update to make use of tdesc_register_name.
801         Look up xreg and freg names in the new globals riscv_xreg_feature
802         and riscv_freg_feature.  Don't supply csr aliases here.
803         (riscv_fpreg_q_type): Delete.
804         (riscv_register_type): Use tdesc_register_type in almost all
805         cases, override the returned type in a few specific cases only.
806         (riscv_print_one_register_info): Handle errors reading registers.
807         (riscv_register_reggroup_p): Use tdesc_register_in_reggroup_p for
808         registers that are otherwise unknown to GDB.  Also check the
809         csr_reggroup.
810         (riscv_print_registers_info): Remove assert about upper register
811         number, and use gdbarch_register_reggroup_p instead of
812         short-cutting.
813         (riscv_find_default_target_description): New function.
814         (riscv_check_tdesc_feature): New function.
815         (riscv_add_reggroups): New function.
816         (riscv_setup_register_aliases): New function.
817         (riscv_init_reggroups): New function.
818         (_initialize_riscv_tdep): Add calls to setup CSR aliases, and
819         setup register groups.  Register new riscv debug variable.
820         * riscv-tdep.h: Add 'arch/riscv.h' include.
821         (struct gdbarch_tdep): Remove abi union, and add
822         riscv_gdbarch_features field.  Remove cached quad floating point
823         type, and provide initialisation for double type field.
824         * target-descriptions.c (maint_print_c_tdesc_cmd): Add riscv to
825         the list of targets using the feature based target descriptions.
826         * NEWS: Mention target description support.
827
828 2018-11-21  Pedro Alves  <palves@redhat.com>
829
830         * valops.c (find_method_list, value_find_oload_method_list)
831         (find_overload_match, find_oload_champ): Rename parameters and
832         locals.
833
834 2018-11-21  Pedro Alves  <palves@redhat.com>
835
836         * valops.c (find_method_list): Replace pointer and length
837         parameters with an gdb::array_view.  Adjust.
838         (value_find_oload_method_list): Likewise.
839         (find_overload_match): Use gdb::array_view for methods list.
840         Adjust to find_oload_champ interface change.
841         (find_oload_champ): 'xm_worker_vec' parameter now a pointer/array.
842         'num_fns' parameter now a size_t.  Eliminate 'fn_count' local.
843
844 2018-11-21  Pedro Alves  <palves@redhat.com>
845
846         * gdbtypes.c (compare_badness): Change type of parameters to const
847         reference.  Adjust to badness_vector being a std::vector now.
848         (rank_function): Adjust to badness_vector being a std::vector now.
849         * gdbtypes.h (badness_vector): Now a typedef to std::vector.
850         (LENGTH_MATCH): Delete.
851         (compare_badness): Change type of parameters to const reference.
852         (rank_function): Return a badness_vector by value now.
853         (find_overload_match): Adjust to badness_vector being a
854         std::vector now.  Remove cleanups.
855         (find_oload_champ_namespace): 'oload_champ_bv' parameter now a
856         badness_vector pointer.
857         (find_oload_champ_namespace_loop): 'oload_champ_bv' parameter now
858         a badness_vector pointer.  Adjust to badness_vector being a
859         std::vector now.  Remove cleanups.
860         (find_oload_champ): 'oload_champ_bv' parameter now
861         a badness_vector pointer.  Adjust to badness_vector being a
862         std::vector now.  Remove cleanups.
863
864 2018-11-21  Pedro Alves  <palves@redhat.com>
865
866         * cp-support.c (sym_return_val_size, sym_return_val_index)
867         (sym_return_val): Delete.
868         (overload_list_add_symbol): Add std::vector parameter.  Adjust to
869         add to the vector.
870         (make_symbol_overload_list): Adjust to return a std::vector
871         instead of maintaining a global open coded vector.
872         (make_symbol_overload_list_block): Add std::vector parameter.
873         (make_symbol_overload_list_block): Rename to ...
874         (add_symbol_overload_list_block): ... this and add std::vector
875         parameter.
876         (make_symbol_overload_list_namespace): Rename to ...
877         (add_symbol_overload_list_namespace): ... this and add std::vector
878         parameter.
879         (make_symbol_overload_list_adl_namespace): Rename to ...
880         (add_symbol_overload_list_adl_namespace): ... this and add
881         std::vector parameter.
882         (make_symbol_overload_list_adl): Delete.
883         (add_symbol_overload_list_adl): New.
884         (make_symbol_overload_list_using): Rename to ...
885         (add_symbol_overload_list_using): ... this and add std::vector
886         parameter.
887         (make_symbol_overload_list_qualified): Rename to ...
888         (add_symbol_overload_list_qualified): ... this and add std::vector
889         parameter.
890         * cp-support.h: Include "common/array-view.h" and <vector>.
891         (make_symbol_overload_list): Change return type to std::vector.
892         (make_symbol_overload_list_adl): Delete declaration.
893         (add_symbol_overload_list_adl): New declaration.
894         * valops.c (find_overload_match): Local 'oload_syms' now a
895         std::vector.
896         (find_oload_champ_namespace): 'oload_syms' parameter now a
897         std::vector pointer.
898         (find_oload_champ_namespace_loop): 'oload_syms' parameter now a
899         std::vector pointer.  Adjust to new make_symbol_overload_list
900         interface.
901
902 2018-11-21  Pedro Alves  <palves@redhat.com>
903
904         * common/array-view.h (array_view::splice(size_type, size_t)): New.
905         (array_view::splice(size_type)): New.
906         * eval.c (eval_call, evaluate_funcall): Adjust to use array_view.
907         * extension.c (xmethod_worker::get_arg_types): Adjust to return an
908         std::vector.
909         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
910         * extension.h: Include "common/array-view.h".
911         (xmethod_worker::invoke): Adjust to use gdb::array_view.
912         (xmethod_worker::get_arg_types): Adjust to return an std::vector.
913         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
914         (xmethod_worker::do_get_arg_types): Adjust to use std::vector.
915         (xmethod_worker::do_get_result_type): Adjust to use
916         gdb::array_view.
917         * gdbtypes.c (rank_function): Adjust to use gdb::array_view.
918         * gdbtypes.h: Include "common/array-view.h".
919         (rank_function): Adjust to use gdb::array_view.
920         * python/py-xmethods.c (python_xmethod_worker::invoke)
921         (python_xmethod_worker::do_get_arg_types)
922         (python_xmethod_worker::do_get_result_type)
923         (python_xmethod_worker::invoke): Adjust to new interfaces.
924         * valarith.c (value_user_defined_cpp_op, value_user_defined_op)
925         (value_x_binop, value_x_unop): Adjust to use gdb::array_view.
926         * valops.c (find_overload_match, find_oload_champ_namespace)
927         (find_oload_champ_namespace_loop, find_oload_champ): Adjust to use
928         gdb:array_view and the new xmethod_worker interfaces.
929         * value.c (result_type_of_xmethod, call_xmethod): Adjust to use
930         gdb::array_view.
931         * value.h (find_overload_match, result_type_of_xmethod)
932         (call_xmethod): Adjust to use gdb::array_view.
933         * unittests/array-view-selftests.c: Add slicing tests.
934
935 2018-11-21  Pedro Alves  <palves@redhat.com>
936
937         * ada-lang.c (ada_evaluate_subexp): Adjust to pass an array_view.
938         * common/array-view.h (make_array_view): New.
939         * compile/compile-object-run.c (compile_object_run): Adjust to
940         pass an array_view.
941         * elfread.c (elf_gnu_ifunc_resolve_addr): Adjust.
942         * eval.c (eval_call): Adjust to pass an array_view.
943         (evaluate_subexp_standard): Adjust to pass an array_view.
944         * gcore.c (call_target_sbrk): Adjust to pass an array_view.
945         * guile/scm-value.c (gdbscm_value_call): Likewise.
946         * infcall.c (push_dummy_code): Replace pointer + size parameters
947         with an array_view parameter.
948         (call_function_by_hand, call_function_by_hand_dummy): Likewise and
949         adjust.
950         * infcall.h: Include "common/array-view.h".
951         (call_function_by_hand, call_function_by_hand_dummy): Replace
952         pointer + size parameters with an array_view parameter.
953         * linux-fork.c (inferior_call_waitpid): Adjust to use array_view.
954         * linux-tdep.c (linux_infcall_mmap): Likewise.
955         * objc-lang.c (lookup_objc_class, lookup_child_selector)
956         (value_nsstring, print_object_command): Likewise.
957         * python/py-value.c (valpy_call): Likewise.
958         * rust-lang.c (rust_evaluate_funcall): Likewise.
959         * spu-tdep.c (flush_ea_cache): Likewise.
960         * valarith.c (value_x_binop, value_x_unop): Likewise.
961         * valops.c (value_allocate_space_in_inferior): Likewise.
962         * unittests/array-view-selftests.c (run_tests): Add
963         gdb::make_array_view test.
964
965 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
966
967         * cli-out.c (cli_ui_out::do_field_int): Use string_printf rather
968         than a fixed size buffer.
969
970 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
971
972         * breakpoint.c (print_one_breakpoint_location): Reduce whitespace,
973         and remove insertion of extra spaces in GDB's output.
974         * cli-out.c (cli_ui_out::do_field_fmt): Update header comment.
975         Layout field into a temporary buffer, and then output it as a
976         string field.
977
978 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
979
980         * NEWS: Document the language choice done by
981         'info [types|functions|variables]|rbreak'.
982
983 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
984
985         * symtab.c (treg_matches_sym_type_name): Use
986         scoped_switch_to_sym_language_if_auto instead of local logic.
987         (print_symbol_info): Use scoped_switch_to_sym_language_if_auto
988         to switch to SYM language when language mode is auto.
989
990 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
991
992         * language.h (scoped_switch_to_sym_language_if_auto): New class.
993
994 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
995
996         * symtab.c (search_symbols): Properly check absence of type regexp
997         before entering the loop scanning the minimal symbols.
998
999 2018-11-20  John Darrington  <john@darrington.wattle.id.au>
1000
1001         * s12z-tdep.c (s12z_extract_return_value): New function.
1002         (inv_reg_perm) New array.
1003         (s12z_return_value): Populate readbuf if non-null.
1004
1005 2018-11-20  Eli Zaretskii  <eliz@gnu.org>
1006
1007         * common/filestuff.c (gdb_fopen_cloexec): Disable use of "e" mode
1008         with 'fopen' also if O_CLOEXEC is equal to O_NOINHERIT, to cater
1009         to MinGW fixed by Gnulib.
1010         (O_NOINHERIT): Define if not defined.
1011
1012 2018-11-19  John Darrington  <john@darrington.wattle.id.au>
1013
1014         * s12z-tdep.c (s12z_frame_cache): Add an assertion.
1015
1016 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
1017
1018         * infrun.c (displaced_step_inferior_state) <next>: Remove.
1019
1020 2018-11-19  Tom Tromey  <tom@tromey.com>
1021
1022         * source.c (get_filename_and_charpos): Return void.
1023
1024 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
1025
1026         * skip.c (_initialize_step_skip): Fix "info skip" help.
1027
1028 2018-11-16  Tom Tromey  <tom@tromey.com>
1029
1030         PR rust/23625:
1031         * rust-lang.c (rust_internal_print_type): Handle TYPE_CODE_PTR.
1032
1033 2018-11-19  Simon Marchi  <simon.marchi@ericsson.com>
1034
1035         * infrun.c (displaced_step_inferior_states): Change type to
1036         std::forward_list.
1037         (get_displaced_stepping_state): Adjust.
1038         (displaced_step_in_progress_any_inferior): Adjust.
1039         (add_displaced_stepping_state): Adjust.
1040         (remove_displaced_stepping_state): Adjust.
1041
1042 2018-11-18  Tom Tromey  <tom@tromey.com>
1043
1044         PR build/23814:
1045         * target-delegates.c: Rebuild.
1046         * ia64-linux-nat.c (class ia64_linux_nat_target)
1047         <have_steppable_watchpoint>: Use override.  Return true, not 1.
1048         (ia64_linux_nat_target::can_use_hw_breakpoint): Rename.  Remove
1049         "self" argument.
1050         (ia64_linux_nat_target::low_new_thread): Rename.
1051         (class ia64_linux_nat_target) <read_description>: Don't declare.
1052         * target.h (struct target_ops) <have_steppable_watchpoint>: Return
1053         bool.
1054
1055 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1056
1057         PR gdb/22736:
1058         * aarch64-tdep.c (aarch64_push_dummy_call): Remove
1059         lang_struct_return code.
1060
1061 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1062
1063         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
1064         return_method.
1065         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
1066         * amd64-tdep.c (amd64_push_arguments): Likewise.
1067         (amd64_push_dummy_call): Likewise.
1068         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
1069         * arc-tdep.c (arc_push_dummy_call): Likewise.
1070         * arm-tdep.c (arm_push_dummy_call): Likewise.
1071         * avr-tdep.c (avr_push_dummy_call): Likewise.
1072         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
1073         * cris-tdep.c (cris_push_dummy_call): Likewise.
1074         * csky-tdep.c (csky_push_dummy_call): Likewise.
1075         * frv-tdep.c (frv_push_dummy_call): Likewise.
1076         * gdbarch.c: Regenerate.
1077         * gdbarch.h: Regenerate.
1078         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
1079         return_method.
1080         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
1081         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
1082         (hppa64_push_dummy_call): Likewise.
1083         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
1084         * i386-tdep.c (i386_push_dummy_call): Likewise.
1085         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
1086         * infcall.c (call_function_by_hand_dummy): Likewise.
1087         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
1088         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
1089         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
1090         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
1091         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
1092         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
1093         * mep-tdep.c (mep_push_dummy_call): Likewise.
1094         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
1095         (mips_n32n64_push_dummy_call): Likewise.
1096         (mips_o32_push_dummy_call): Likewise.
1097         (mips_o64_push_dummy_call): Likewise.
1098         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
1099         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
1100         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
1101         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
1102         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
1103         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
1104         (ppc64_sysv_abi_push_dummy_call): Likewise.
1105         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
1106         (ppc64_sysv_abi_push_dummy_call): Likewise.
1107         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
1108         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
1109         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
1110         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
1111         * rx-tdep.c (rx_push_dummy_call): Likewise.
1112         * s390-tdep.c (s390_push_dummy_call): Likewise.
1113         * score-tdep.c (score_push_dummy_call): Likewise.
1114         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
1115         (sh_push_dummy_call_nofpu): Likewise.
1116         * sparc-tdep.c (sparc32_store_arguments): Likewise.
1117         (sparc32_push_dummy_call): Likewise.
1118         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
1119         (sparc64_push_dummy_call): Likewise.
1120         * spu-tdep.c (spu_push_dummy_call): Likewise.
1121         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
1122         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
1123         * v850-tdep.c (v850_push_dummy_call): Likewise.
1124         * vax-tdep.c (vax_push_dummy_call): Likewise.
1125         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
1126         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
1127
1128 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1129
1130         * gdbarch.sh (enum function_call_return_method): Add enum.
1131         * gdbarch.h: Regenerate.
1132         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
1133
1134 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
1135
1136         * unittests/copy_bitwise-selftests.c: New file.
1137         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
1138         (selftests::copy_bitwise_tests): Delete, moving this code to
1139         unittests/copy_bitwise-selftests.c instead.
1140         (_initialize_utils): Do not register copy_bitwise tests.
1141         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1142         unittests/copy_bitwise-selftests.c.
1143
1144 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
1145
1146         * ada-lang.c (move_bits): Delete. Update all callers to use
1147         copy_bitwise instead.
1148         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
1149         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
1150         Move from here to utils.c.
1151         (_initialize_dwarf2loc): Remove call to register copy_bitwise
1152         selftests.
1153         * utils.h (copy_bitwise): Add declaration.
1154         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
1155         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
1156         Moved here from dwarf2loc.c.
1157         (_initialize_utils): Register copy_bitwise selftests.
1158
1159 2018-11-14  Jim Wilson  <jimw@sifive.com>
1160
1161         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
1162         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
1163         then increment next_regnum if odd.
1164         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
1165         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
1166         function type.  Pass new arg to riscv_arg_location based on function
1167         type.
1168         (riscv_return_value): Pass new arg to riscv_arg_location.
1169
1170         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
1171         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
1172         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
1173
1174         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
1175         setting len.  New local align, set to max of arg align and xlen,
1176         and pass to first riscv_assign_stack_location call.
1177
1178 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
1179
1180         * skip.c (complete_skip_number): New function.
1181         (_initialize_step_skip): Add completers to some skip commands.
1182
1183 2018-11-09  Tom Tromey  <tom@tromey.com>
1184
1185         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
1186         (struct remote_g_packet_data): Derive from allocate_on_obstack.
1187         <guesses>: Now a std::vector.
1188         (remote_g_packet_data_init, register_remote_g_packet_guess):
1189         Update.
1190         (remote_read_description_p): Update.  Return bool.
1191         (remote_target::read_description): Update.
1192         (struct remote_g_packet_guess): Add constructor.
1193
1194 2018-11-09  Tom Tromey  <tom@tromey.com>
1195
1196         * common/scoped_fd.h (class scoped_fd): Add move constructor and
1197         move assignment operator.
1198         * psymtab.c (psymtab_to_fullname): Update.
1199         * source.h (open_source_file): Return scoped_fd.
1200         (find_and_open_source): Likewise.
1201         * source.c (open_source_file): Return scoped_fd.
1202         (get_filename_and_charpos): Update.
1203         (print_source_lines_base): Update.  Use scoped_fd::to_file.
1204         (forward_search_command): Likewise.
1205         (reverse_search_command): Likewise.
1206         (find_and_open_source): Return scoped_fd.
1207         * tui/tui-source.c (tui_set_source_content): Update.  Use
1208         gdb_file_up.
1209
1210 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
1211
1212         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
1213         overflow.
1214
1215 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1216
1217         * configure: Regenerate.
1218
1219 2018-11-09  Tom de Vries  <tdevries@suse.de>
1220
1221         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
1222         unconditionally, to set the language of the symbol.  Manage freeing
1223         returned pointer using gdb::unique_xmalloc_ptr.
1224
1225 2018-11-08  Tom Tromey  <tom@tromey.com>
1226
1227         * record.c (require_record_target): Upper-case "<TAB>".
1228
1229 2018-11-08  Tom Tromey  <tom@tromey.com>
1230
1231         * python/lib/gdb/command/pretty_printers.py
1232         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
1233
1234 2018-11-08  Tom Tromey  <tom@tromey.com>
1235
1236         PR gdb/23555:
1237         PR gdb/23838:
1238         * target.h (target_supports_terminal_ours): Return bool.
1239         * target.c (target_supports_terminal_ours): Handle case where
1240         current_top_target returns nullptr.  Return bool.
1241
1242 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
1243
1244         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
1245         return the correct count for potential HFAs.
1246
1247 2018-11-08  Jan Beulich  <jbeulich@suse.com>
1248
1249         * i387-tdep.c (i387_supply_xsave): Split handling of
1250         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
1251         (i387_collect_xsave): Likewise.
1252
1253 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
1254
1255         * riscv-tdep.c (riscv_insn::decode): Update header comment.
1256         (riscv_frame_this_id): Catch errors thrown while building the
1257         frame cache, leave the frame id as the default, which is the outer
1258         frame id.
1259
1260 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
1261
1262         * ada-lang.c (read_atcb): Only set task_info->called_task if
1263         task_info->state == Entry_Caller_Sleep.
1264         (print_ada_task_info): Do not check task_info->state before
1265         checking task_info->called_task.
1266         (info_task): Likewise.
1267
1268 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
1269
1270         * ada-tasks.c (read_atcb): Clear task_info before computing
1271         the value of each of its fields.
1272
1273 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
1274
1275         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
1276         NULL before dereferencing it.
1277
1278 2018-11-06  Tom de Vries  <tdevries@suse.de>
1279
1280         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
1281         program headers.
1282
1283 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
1284
1285         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
1286         so that it applies to uclinux as well.
1287
1288 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
1289
1290         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
1291         when on AAPCS.
1292
1293 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
1294
1295         * riscv-fbsd-nat.c (getregs_supplies): Return true for
1296         RISCV_CSR_SSTATUS_REGNUM.
1297
1298 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1299
1300         * source.c (open_source_file): Fix leak by transferring the
1301         current s->fullname to the unique_xmalloc_ptr fullname given
1302         to find_and_open_source.
1303
1304 2018-11-04  Tom Tromey  <tom@tromey.com>
1305
1306         * varobj.c (install_default_visualizer): Update.
1307         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
1308         Return gdbpy_ref.
1309         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
1310         (find_pretty_printer_from_progspace)
1311         (find_pretty_printer_from_gdb, find_pretty_printer)
1312         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
1313         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
1314         Update.
1315
1316 2018-11-04  Tom Tromey  <tom@tromey.com>
1317
1318         * python/python.c (gdbpy_parameter_value): Update.
1319         * python/python-internal.h (python_string_to_unicode)
1320         (python_string_to_target_python_string)
1321         (host_string_to_python_string): Return gdbpy_ref.
1322         * python/py-utils.c (python_string_to_unicode)
1323         (unicode_to_encoded_python_string)
1324         (unicode_to_target_python_string)
1325         (python_string_to_target_string)
1326         (python_string_to_target_python_string): Return gdbpy_ref.
1327         (python_string_to_host_string): Update.
1328         (host_string_to_python_string): Return gdbpy_ref.
1329         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
1330         (stpy_fullname): Update.
1331         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
1332         Update.
1333         * python/py-prettyprint.c (print_string_repr): Update.
1334         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
1335         (objfpy_get_build_id): Update.
1336         * python/py-breakpoint.c (bppy_get_location)
1337         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
1338         Update.
1339
1340 2018-11-04  Tom Tromey  <tom@tromey.com>
1341
1342         * python/python-internal.h (gdb_py_object_from_longest)
1343         (gdb_py_object_from_ulongest): Return gdbpy_ref.
1344         * python/py-value.c (valpy_int): Update.
1345         * python/py-utils.c (gdb_py_object_from_longest): Return
1346         gdbpy_ref.
1347         (gdb_py_object_from_ulongest): Likewise.
1348         * python/py-type.c (typy_get_alignof): Update.
1349         * python/py-linetable.c (ltpy_get_all_source_lines)
1350         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
1351         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
1352
1353 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1354
1355         * ada-lang.c (_initialize_ada_language): Fix typo.
1356
1357 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1358
1359         * language.c (type): Remove.
1360         (_initialize_language): Remove assignment to type.
1361
1362 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
1363
1364         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
1365         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
1366         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
1367         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
1368         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
1369         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
1370         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
1371         and aarch64-ravenscar-thread.o.
1372         * NEWS: Add entry documenting Ravenscar tasking support
1373         on AArch64 ELF.
1374
1375 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
1376
1377         * symtab.c (info_functions_command): Initialize quiet flag.
1378         * stack.c (info_args_command): Likewise.
1379
1380 2018-11-01  Jim Wilson  <jimw@sifive.com>
1381
1382         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
1383         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
1384         debugging messages.
1385
1386 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1387
1388         * ada-lang.c (ada_watch_location_expression): New function.
1389         (ada_language_defn): Set la_watch_location_expression to
1390         ada_watch_location_expression.
1391
1392 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1393
1394         * print-utils.c (int_string): Remove unnecessary trailing spaces.
1395
1396 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1397
1398         * rs6000-tdep.c (skip_prologue): Fix potential negative left
1399         shifting.
1400
1401 2018-11-01  Jerome Guitton  <guitton@adacore.com>
1402             Joel Brobecker  <brobecker@adacore.com>
1403
1404         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
1405         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
1406         * arm-pikeos-tdep.c: New file.
1407         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
1408         embedded system.
1409         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
1410
1411 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
1412
1413         * common/pathstuff.c (get_standard_temp_dir): New.
1414         * common/pathstuff.h (get_standard_temp_dir): New.
1415         * config.in: Re-generate.
1416         * configure: Re-generate.
1417         * configure.ac: Don't check for mkdtemp.
1418         * gnulib/aclocal-m4-deps.mk: Re-generate.
1419         * gnulib/aclocal.m4: Re-generate.
1420         * gnulib/config.in: Re-generate.
1421         * gnulib/configure: Re-generate.
1422         * gnulib/import/Makefile.am: Re-generate.
1423         * gnulib/import/Makefile.in: Re-generate.
1424         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1425         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1426         * gnulib/import/m4/mkdtemp.m4: New file.
1427         * gnulib/import/mkdtemp.c: New file.
1428         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
1429         Add mkdtemp module.
1430         * unittests/mkdir-recursive-selftests.c (test): Use
1431         get_standard_temp_dir.
1432         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
1433         ifdef.
1434         * compile/compile.c (get_compile_file_tempdir): Likewise.
1435
1436 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1437
1438         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
1439         (SIG_FRAME_LR_OFFSET64): New define.
1440         (SIG_FRAME_FP_OFFSET64): New define.
1441         (aix_sighandle_frame_cache): New Function.
1442         (aix_sighandle_frame_this_id): New Function.
1443         (aix_sighandle_frame_prev_register): New Function.
1444         (aix_sighandle_frame_sniffer): New Function.
1445         (aix_sighandle_frame_unwind): New global variable.
1446         (rs6000_aix_init_osabi): Install new frame unwinder.
1447
1448 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
1449
1450         PR gdb/23835
1451         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
1452         already defined.
1453
1454 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1455
1456         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
1457
1458 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
1459
1460         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
1461         (producer_is_icc): New function.
1462         (check_producer): Set producer_is_icc field on dwarf2_cu.
1463         (dwarf2_init_integer_type): New function.
1464         (read_base_type): Call dwarf2_init_integer_type instead of
1465         init_integer_type in all cases.
1466         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
1467         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
1468         LEN is greater than 0.
1469
1470 2018-10-30  Tom Tromey  <tom@tromey.com>
1471
1472         * main.c (captured_main_1): Check return value of bfd_init.
1473
1474 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1475
1476         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
1477         Adjust comments.
1478
1479 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1480
1481         * procfs.c: Include common/pathstuff.h.
1482
1483 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1484
1485         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1486         Add missing braces.  No functional change.
1487
1488 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1489
1490         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
1491         to report a bad option and fix indentation.
1492         * demangle.c (demangle_command): Use report_unrecognized_option_error
1493         to report a bad option and correctly report the bad option.
1494
1495 2018-10-27  Tom Tromey  <tom@tromey.com>
1496
1497         PR cli/23364:
1498         * darwin-nat.c (copied_shell): New global.
1499         (may_have_sip): Rename from should_disable_startup_with_shell.
1500         (copy_shell_to_cache, maybe_cache_shell): New functions.
1501         (darwin_nat_target::create_inferior): Update.  Use
1502         copied_shell.
1503
1504 2018-10-27  Tom Tromey  <tom@tromey.com>
1505
1506         * unittests/scoped_fd-selftests.c (test_to_file): New function.
1507         (run_tests): Call test_to_file.
1508         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
1509         temporary files.
1510         * common/scoped_fd.h (scoped_fd::to_file): New method.
1511
1512 2018-10-27  Tom Tromey  <tom@tromey.com>
1513
1514         * unittests/scoped_mmap-selftests.c (test_normal): Use
1515         gdb_mkostemp_cloexec.
1516         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
1517         Use gdb_mkostemp_cloexec.
1518         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
1519         gnulib/config.in, gnulib/configure,
1520         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
1521         gnulib/import/m4/gnulib-cache.m4,
1522         gnulib/import/m4/gnulib-comp.m4: Update.
1523         * gnulib/import/m4/mkostemp.m4: New file.
1524         * gnulib/import/m4/mkstemp.m4: Remove.
1525         * gnulib/import/mkostemp.c: New file.
1526         * gnulib/import/mkstemp.m4: Remove.
1527         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
1528         mkstemp, add mkostemp.  Apply new patch.
1529         * gnulib/import/stdlib.in.h: Apply patch.
1530         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
1531         New file.
1532         * dwarf-index-write.c (write_psymtabs_to_index): Use
1533         gdb_mkostemp_cloexec.
1534         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
1535
1536 2018-10-27  Tom Tromey  <tom@tromey.com>
1537
1538         * unittests/mkdir-recursive-selftests.c: New file.
1539         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1540         unittests/mkdir-recursive-selftests.c.
1541         * dwarf-index-cache.c (mkdir_recursive): Move to
1542         common/filestuff.c.
1543         (index_cache::store): Check return value of mkdir_recursive.
1544         (create_dir_and_check, test_mkdir_recursive): Move to new file.
1545         (_initialize_index_cache): Don't register test.
1546         * common/filestuff.h (mkdir_recursive): Declare.
1547         * common/filestuff.c (mkdir_recursive): Move from
1548         dwarf-index-cache.c.  Return bool.
1549
1550 2018-10-27  Tom Tromey  <tom@tromey.com>
1551
1552         * dwarf-index-write.c (write_psymtabs_to_index): Move
1553         make_temp_filename to common/pathstuff.c.
1554         * common/pathstuff.h (make_temp_filename): Declare.
1555         * common/pathstuff.c (make_temp_filename): New function, moved
1556         from dwarf-index-write.c.
1557
1558 2018-10-27  Tom Tromey  <tom@tromey.com>
1559
1560         * procfs.c (procfs_target::create_inferior): Use get_shell.
1561         * cli/cli-cmds.c (shell_escape): Use get_shell.
1562         * windows-nat.c (windows_nat_target::create_inferior): Use
1563         get_shell.
1564         * common/pathstuff.c (get_shell): New function.
1565         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
1566         (fork_inferior): Use get_shell.
1567         * common/pathstuff.h (get_shell): Declare.
1568
1569 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1570
1571         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
1572
1573 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1574
1575         * stack.c (print_variable_and_value_data): Add preg and treg.
1576         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
1577         and update callers.
1578         (print_frame_arg_vars): Likewise.
1579         (prepare_reg): New function.
1580         (info_locals_command): Extract info print args and use them.
1581         (info_args_command): Likewise.
1582         (_initialize_stack): Modify on-line help.
1583         * symtab.c (treg_matches_sym_type_name): New function.
1584         (search_symbols): New arg t_regexp.
1585         (symtab_symbol_info): New args quiet, regexp, t_regexp.
1586         (info_variables_command): Extract info print args and use them.
1587         (info_functions_command): Likewise.
1588         (info_types_command): Update call to symtab_symbol_info.
1589         (_initialize_symtab): Modify on-line help.
1590         * symtab.h (treg_matches_sym_type_name): New function.
1591         (search_symbols): New t_regexp arg.
1592
1593 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1594
1595         * cli-utils.c (extract_arg_maybe_quoted): New function.
1596         (extract_info_print_args): New function.
1597         (info_print_args_help): New function.
1598         (report_unrecognized_option_error): New function.
1599         * cli-utils.h (extract_arg_maybe_quoted): New function.
1600         (extract_info_print_args): New function.
1601         (info_print_args_help): New function.
1602         (report_unrecognized_option_error): New function.
1603
1604 2018-10-26  Tom Tromey  <tom@tromey.com>
1605
1606         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
1607         (compute_compunit_symtab_includes): Update.
1608         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
1609         (compunit_symtab_ptr): Likewise.
1610
1611 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1612
1613         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
1614         default_print_auxv_entry for specific tag values.
1615
1616 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1617
1618         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
1619
1620 2018-10-26  Jim Wilson  <jimw@sifive.com>
1621
1622         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
1623         (riscv_linux_sigframe_init): Declare.
1624         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
1625         (riscv_linux_sigframe): New.
1626         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
1627         (riscv_linux_sigframe_init): Define.
1628         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
1629
1630         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
1631         (riscv_isa_flen): Likewise.  Drop static.
1632         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
1633         (riscv_isa_flen): Likewise.  Declare.
1634
1635 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1636             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1637
1638         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
1639         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
1640         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
1641         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
1642         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
1643         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
1644         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
1645         Define.
1646         (struct ppc_linux_features) <htm>: New field.
1647         (ppc_linux_no_features): Add initializer for htm field.
1648         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1649         new tdescs.
1650         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
1651         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
1652         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
1653         Define if not already defined.
1654         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
1655         and rs6000/powerpc-isa207-htm-vsx64l.
1656         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
1657         rs6000/powerpc-isa207-htm-vsx64l.xml.
1658         * features/rs6000/power-htm-spr.xml: New file.
1659         * features/rs6000/power-htm-core.xml: New file.
1660         * features/rs6000/power64-htm-core.xml: New file.
1661         * features/rs6000/power-htm-fpu.xml: New file.
1662         * features/rs6000/power-htm-altivec.xml: New file.
1663         * features/rs6000/power-htm-vsx.xml: New file.
1664         * features/rs6000/power-htm-ppr.xml: New file.
1665         * features/rs6000/power-htm-dscr.xml: New file.
1666         * features/rs6000/power-htm-tar.xml: New file.
1667         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
1668         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
1669         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
1670         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
1671         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
1672         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
1673         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1674         fetch_regset with HTM regsets.
1675         (store_register, store_ppc_registers): Call store_regset with HTM
1676         regsets.
1677         (ppc_linux_nat_target::read_description): Set htm field in the
1678         features struct if needed.
1679         * ppc-linux-tdep.c: Include
1680         features/rs6000/powerpc-isa207-htm-vsx32l.c and
1681         features/rs6000/powerpc-isa207-htm-vsx64l.c.
1682         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
1683         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
1684         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
1685         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
1686         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
1687         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
1688         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
1689         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
1690         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
1691         (ppc32_linux_ctarregset): New globals.
1692         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
1693         (ppc_linux_collect_core_cpgrregset): New function.
1694         (ppc_linux_iterate_over_regset_sections): Call back with the htm
1695         regsets.
1696         (ppc_linux_core_read_description): Check if the tm spr section is
1697         present and set htm in the features struct.
1698         (_initialize_ppc_linux_tdep): Call
1699         initialize_tdesc_powerpc_isa207_htm_vsx32l and
1700         initialize_tdesc_powerpc_isa207_htm_vsx64l.
1701         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
1702         Declare.
1703         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
1704         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
1705         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
1706         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
1707         New fields.
1708         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
1709         Likewise.
1710         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
1711         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
1712         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
1713         New enum fields.
1714         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
1715         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
1716         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
1717         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
1718         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
1719         <PPC_CTAR_REGNUM>: Likewise.
1720         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
1721         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
1722         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
1723         (IS_CEFP_PSEUDOREG): Define.
1724         (rs6000_register_name): Hide the upper halves of checkpointed VSX
1725         registers.  Return names for the checkpointed DFP, VSX, and EFP
1726         pseudo registers.
1727         (rs6000_pseudo_register_type): Remove initial assert and raise an
1728         internal error in the else clause instead.  Return types for the
1729         checkpointed DFP, VSX, and EFP pseudo registers.
1730         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
1731         checkpointed DFP pseudo registers.
1732         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
1733         checkpointed VSX pseudo registers.
1734         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
1735         from efpr_pseudo_register_read and
1736         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
1737         registers.
1738         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
1739         Handle checkpointed DFP, VSX, and EFP registers.
1740         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
1741         (efp_ax_pseudo_register_collect): New functions.
1742         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
1743         register logic to new functions.  Handle checkpointed DFP, VSX,
1744         and EFP pseudo registers.
1745         (rs6000_gdbarch_init): Look for and validate the htm features.
1746         Include checkpointed DFP, VSX and EFP pseudo-registers.
1747         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
1748         HTM registers.
1749
1750 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1751
1752         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
1753         without altivec or fpu.
1754
1755 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1756             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1757
1758         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
1759         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
1760         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
1761         Define if not already defined.
1762         * features/rs6000/power-ebb.xml: New file.
1763         * features/rs6000/power-linux-pmu.xml: New file.
1764         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
1765         features.
1766         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
1767         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
1768         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
1769         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
1770         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
1771         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1772         fetch_regset with ebb and pmu regsets.
1773         (store_register, store_ppc_registers): Call store_regset with ebb
1774         and pmu regsets.
1775         (ppc_linux_nat_target::read_description): Set isa207 field in the
1776         features struct if ebb and pmu are avaiable.
1777         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
1778         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
1779         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
1780         and pmu regsets.
1781         (ppc_linux_core_read_description): Check if the pmu section is
1782         present and set isa207 in the features struct.
1783         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
1784         (ppc32_linux_pmuregset): Declare.
1785         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
1786         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
1787         <ppc_sier_regnum>: New field.
1788         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
1789         New enum values.
1790         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
1791         values.
1792         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
1793         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
1794         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
1795         ebb and pmu features.
1796
1797 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1798             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1799
1800         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
1801         (tdesc_powerpc_isa207_vsx64l): Declare.
1802         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
1803         (struct ppc_linux_features) <isa207>: New field.
1804         (ppc_linux_no_features): Add initializer for isa207 field.
1805         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1806         new tdescs.
1807         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
1808         (NT_PPC_TAR): Define if not already defined.
1809         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
1810         rs6000/powerpc-isa207-vsx64l.
1811         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
1812         rs6000/powerpc-isa207-vsx64l.xml.
1813         * features/rs6000/power-tar.xml: New file.
1814         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
1815         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
1816         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
1817         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
1818         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
1819         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
1820         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1821         fetch_regset with the TAR regset.
1822         (store_register, store_ppc_registers): Call store_regset with the
1823         TAR regset.
1824         (ppc_linux_nat_target::read_description): Set isa207 field in the
1825         features struct if needed.
1826         * ppc-linux-tdep.c: Include
1827         features/rs6000/powerpc-isa207-vsx32l.c and
1828         features/rs6000/powerpc-isa207-vsx64l.c.
1829         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
1830         (ppc_linux_iterate_over_regset_sections): Call back with the tar
1831         regset.
1832         (ppc_linux_core_read_description): Check if the tar section is
1833         present and set isa207 in the features struct.
1834         (_initialize_ppc_linux_tdep): Call
1835         initialize_tdesc_powerpc_isa207_vsx32l and
1836         initialize_tdesc_powerpc_isa207_vsx64l.
1837         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
1838         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
1839         (enum) <PPC_TAR_REGNUM>: New enum value.
1840         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
1841         feature.
1842         (ppc_process_record_op31): Record changes to TAR.
1843
1844 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1845             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1846
1847         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
1848         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
1849         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
1850         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
1851         (struct ppc_linux_features) <ppr_dscr>: New field.
1852         (ppc_linux_no_features): Add initializer for ppr_dscr field.
1853         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1854         new tdescs.
1855         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
1856         Define if not already defined.
1857         * features/Makefile (WHICH): Add
1858         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
1859         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
1860         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
1861         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
1862         * features/rs6000/power-dscr.xml: New file.
1863         * features/rs6000/power-ppr.xml: New file.
1864         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
1865         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
1866         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
1867         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
1868         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
1869         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
1870         * ppc-linux-nat.c: Include <sys/uio.h>.
1871         (fetch_regset, store_regset, check_regset): New functions.
1872         (fetch_register, fetch_ppc_registers): Call fetch_regset with
1873         DSCR and PPR regsets.
1874         (store_register, store_ppc_registers): Call store_regset with
1875         DSCR and PPR regsets.
1876         (ppc_linux_get_hwcap2): New function.
1877         (ppc_linux_nat_target::read_description): Call
1878         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
1879         features struct if needed.
1880         * ppc-linux-tdep.c: Include
1881         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
1882         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
1883         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
1884         (ppc32_linux_dscrregset): New globals.
1885         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
1886         and dscr regsets.
1887         (ppc_linux_core_read_description): Check if the ppr and dscr
1888         sections are present and set ppr_dscr in the features struct.
1889         (_initialize_ppc_linux_tdep): Call
1890         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
1891         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
1892         * ppc-linux-tdep.h (ppc32_linux_pprregset)
1893         (ppc32_linux_dscrregset): Declare.
1894         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
1895         <ppc_dscr_regnum>: New field.
1896         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
1897         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
1898         and dscr features.
1899         (ppc_process_record_op31): Record changes to PPR and DSCR.
1900
1901 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1902
1903         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
1904         second initializer line for the have_* variables.  Initialize
1905         have_fpu to 0 instead of 1.
1906
1907 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1908
1909         * arch/ppc-linux-common.c (ppc_linux_match_description):
1910         Parenthesize tdesc assignements and indent them properly.
1911
1912 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1913
1914         * ppc-linux-nat.c (fetch_register): Change if statement to else
1915         if.
1916         (store_register): Likewise.
1917
1918 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1919
1920         * rs6000-tdep.c: Remove reggroups.h include.
1921         (rs6000_pseudo_register_reggroup_p): Remove.
1922         (rs6000_gdbarch_init): Remove call to
1923         set_tdesc_pseudo_register_reggroup_p.
1924
1925 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1926
1927         * reggroups.c (default_register_reggroup_p): Return true for
1928         decfloat registers and float_reggroup.
1929
1930 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1931
1932         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
1933         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
1934         ppc_linux_collect_vrregset by regcache_collect_regset.
1935
1936 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1937
1938         * linux-tdep.c (linux_collect_regset_section_cb): Use
1939         std::vector<gdb_byte> instead of char * and malloc for buf.
1940         Remove xfree.
1941
1942 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1943
1944         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
1945         symtab_start instead of always using language_unknown.
1946
1947 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1948
1949         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
1950         READ_P parameter, catch and ignore register access errors from
1951         either the old or new MISA location.
1952         (riscv_has_feature): Update call to riscv_read_misa_reg.
1953
1954 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1955
1956         * python/py-function.c (convert_values_to_python): Return
1957         gdbpy_ref<>.  Add header comment.
1958         (fnpy_call): Adjust.
1959
1960 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1961
1962         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
1963         (cmdpy_completer_handle_brkchars): Adjust.
1964         (cmdpy_completer): Adjust.
1965
1966 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1967
1968         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1969         Pass correct regnum to raw_supply_zeroed.
1970
1971 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1972
1973         * regcache.c (cooked_read_test): Add CSKY to the list of
1974         architectures with a save_reggroup
1975
1976 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
1977
1978         PR gdb/23368
1979         * infrun.c (follow_exec): In the follow_exec_mode_new case,
1980         transfer terminal state from old new new inferior.
1981         * terminal.h (swap_terminal_info): New function.
1982         * inflow.c (swap_terminal_info): New function.
1983
1984 2018-10-23  Tom Tromey  <tom@tromey.com>
1985
1986         * record-btrace.c (get_thread_current_frame_id): Rename from
1987         get_thread_current_frame.  Return a frame_id.
1988         (record_btrace_start_replaying): Update.
1989
1990 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1991
1992         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
1993         for CSRs.
1994
1995 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
1996
1997         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
1998         have_nonsteppable_watchpoint attribute to 1.
1999
2000 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
2001
2002         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
2003         register names.
2004         (struct register_alias): Rename to...
2005         (struct riscv_register_alias): ...this, and update comment.
2006         (riscv_register_aliases): Update type, and alias names.  Remove
2007         CSR names from this list.
2008         (riscv_register_name): Use riscv_gdb_reg_names for int and float
2009         register names.  Add an extra assertion.
2010         (riscv_is_regnum_a_named_csr): New function.
2011         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
2012
2013 2018-10-23  John Darrington  <john@darrington.wattle.id.au>
2014
2015         * configure.tgt: Add configuration for s12z.
2016         * s12z-tdep.c:  New file.
2017         * NEWS: Mention new target.
2018
2019 2018-10-22  Jim Wilson  <jimw@sifive.com>
2020
2021         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
2022         FP reg smaller than FP reg size, and fill with -1 instead of 0.
2023
2024         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
2025         (riscv_register_type): Use them.
2026         (riscv_print_one_register_info): Handle union of floats same as float.
2027         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
2028         riscv_fpreg_q_type fields.
2029
2030 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
2031
2032         * gdbarch.sh (gdbarch_num_cooked_regs): New.
2033         * gdbarch.h: Re-generate.
2034         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
2035         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
2036         * eval.c (evaluate_subexp_standard): Likewise.
2037         * findvar.c (value_of_register): Likewise.
2038         (value_of_register_lazy): Likewise.
2039         (address_from_register): Likewise.
2040         * frame.c (get_frame_register_bytes): Likewise.
2041         * gdbarch-selftests.c (register_to_value_test): Likewise.
2042         * h8300-tdep.c (h8300_register_type): Likewise.
2043         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
2044         (i386_svr4_reg_to_regnum): Likewise.
2045         * infcmd.c (default_print_registers_info): Likewise.
2046         (registers_info): Likewise.
2047         (print_vector_info): Likewise.
2048         (default_print_float_info): Likewise.
2049         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
2050         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
2051         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
2052         (mi_cmd_data_list_changed_registers): Likewise.
2053         (mi_cmd_data_list_register_values): Likewise.
2054         (mi_cmd_data_write_register_values): Likewise.
2055         (mi_cmd_trace_frame_collected): Likewise.
2056         * mips-tdep.c (print_gp_register_row): Likewise.
2057         (mips_print_registers_info): Likewise.
2058         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
2059         * regcache.c (init_regcache_descr): Likewise.
2060         (register_size): Likewise.
2061         (register_dump::dump): Likewise.
2062         (cooked_read_test): Likewise.
2063         (cooked_write_test): Likewise.
2064         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
2065         (rs6000_gdbarch_init): Likewise.
2066         * stabsread.c (stab_reg_to_regnum): Likewise.
2067         * stack.c (info_frame_command): Likewise.
2068         * target-descriptions.c (tdesc_register_name): Likewise.
2069         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
2070         * tui/tui-regs.c (tui_show_register_group): Likewise.
2071         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
2072         (user_reg_map_regnum_to_name): Likewise.
2073         (value_of_user_reg): Likewise.
2074         (maintenance_print_user_registers): Likewise.
2075         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
2076         (xtensa_register_name): Likewise.
2077         (xtensa_register_type): Likewise.
2078         (xtensa_reg_to_regnum): Likewise.
2079         (xtensa_pseudo_register_read): Likewise.
2080         (xtensa_pseudo_register_write): Likewise.
2081
2082 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
2083
2084         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
2085         correctly-sized buffer with raw_read.
2086         (amd64_pseudo_register_write): Use correctly-sized buffer for
2087         raw_read/raw_write.
2088
2089 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2090
2091         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
2092         in add_prefix_cmd of set print type.
2093
2094 2018-10-19  Tom Tromey  <tom@tromey.com>
2095
2096         PR tui/18388:
2097         * NEWS: Mention tabset deprecation.
2098         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
2099         (update_tab_width): New function.
2100         (tui_set_tab_width, tui_show_tab_width): New functions.
2101         (tui_set_tab_width_command): Use update_tab_width.
2102         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
2103         Add new "set tui tab-width" command.
2104         * tui/tui-source.c (tui_set_source_content): Update.
2105         * tui/tui-disasm.c (tui_set_disassem_content): Update.
2106         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
2107         Don't declare.
2108         (tui_tab_width): Declare.
2109         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
2110         (tui_set_default_tab_len): Remove.
2111
2112 2018-10-19  Tom Tromey  <tom@tromey.com>
2113
2114         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
2115         (key_is_backspace, tui_getc): Don't declare.
2116         * tui/tui-io.c (key_is_start_sequence): Now static.
2117         (key_is_end_sequence, key_is_backspace): Remove.
2118         (tui_getc): Now static.
2119
2120 2018-10-19  Tom Tromey  <tom@tromey.com>
2121
2122         * symfile.c (reread_symbols): Clear "static_links".
2123
2124 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
2125
2126         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
2127         define.
2128         (aarch64_linux_sigframe_init): Extra boundary checks.
2129
2130 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
2131
2132         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
2133         the possibly non-existent tdesc type 'vec128', but the type of raw
2134         register v16 instead.
2135
2136 2018-10-19  Gary Benson <gbenson@redhat.com>
2137
2138         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
2139
2140 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
2141
2142         PR cli/23785
2143         * cli/cli-dump.c (restore_binary_file): Check if "file" is
2144         NULL.
2145
2146 2018-10-17  Paul Koning  <paul_koning@dell.com>
2147
2148         * charset.c (convert_between_encodings): Fix unsigned overflow.
2149
2150 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
2151
2152         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
2153         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
2154         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
2155         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
2156         New functions.
2157         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
2158         and fbsd_info_proc_mappings_header.
2159         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
2160         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
2161         New.
2162
2163 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
2164
2165         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
2166         Solaris Maintainer.
2167
2168 2018-10-15  Tom Tromey  <tom@tromey.com>
2169
2170         * tui/tui.c (strcat_to_buf): Remove casts.
2171         * tui/tui-winsource.c (tui_show_source_line)
2172         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
2173         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
2174         * tui/tui-windata.c (tui_first_data_item_displayed)
2175         (tui_delete_data_content_windows, tui_erase_data_content)
2176         (tui_display_all_data, tui_display_data_from)
2177         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
2178         * tui/tui-win.c (tui_set_win_height)
2179         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
2180         casts.
2181         * tui/tui-win.c (tui_resize_all): Remove casts.
2182         (tui_scroll_backward_command, tui_set_focus)
2183         (tui_set_tab_width_command): Likewise.
2184         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
2185         * tui/tui-regs.c (tui_show_register_group): Remove cast.
2186         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
2187         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
2188         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
2189         Remove casts.
2190
2191 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
2192
2193         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
2194         AArch64/ARM maintainer.
2195
2196 2018-10-11  Gary Benson <gbenson@redhat.com>
2197
2198         * interps.h (interp::m_name): Make private and mutable.
2199         * interps.c (interp::~interp): Free m_name.
2200
2201 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2202             Simon Marchi <simark@simark.ca>
2203
2204         * README (`configure' options): Add documentation for new
2205         "--enable-unit-tests" option.
2206         * acinclude.m4: Include "selftest.m4".
2207         * configure: Regenerate.
2208         * configure.ac: Use "GDB_AC_SELFTEST".
2209         * maint.c (maintenance_selftest): Update message informing
2210         that selftests have been disabled.
2211         (maintenance_info_selftests): Likewise.
2212         * selftest.m4: New file.
2213
2214 2018-10-10  Gary Benson <gbenson@redhat.com>
2215
2216         * remote.c (remote_target::remote_send_printf): Add
2217         missing va_end found by Coverity.
2218
2219 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
2220
2221         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
2222
2223 2018-10-09  Tom Tromey  <tom@tromey.com>
2224
2225         * configure: Rebuild.
2226         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
2227         * NEWS: Update --enable-ubsan documentation.
2228
2229 2018-10-09  Gary Benson <gbenson@redhat.com>
2230
2231         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
2232         found by Coverity.
2233
2234 2018-10-08  Tom Tromey  <tom@tromey.com>
2235
2236         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
2237         variable.
2238         (riscv_fbsd_init_abi): Likewise.
2239
2240 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
2241         * valops.c (value_struct_elt_for_reference): Rename local variable
2242         to work around the shadowing a previous local warning.
2243
2244 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2245
2246         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
2247         * NEWS: Mention new FreeBSD/riscv native configuration.
2248         * configure.host: Add riscv*-*-freebsd*.
2249         * configure.nat: Likewise.
2250         * riscv-fbsd-nat.c: New file.
2251
2252 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2253
2254         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
2255         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
2256         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
2257         * NEWS: Mention new FreeBSD/riscv target.
2258         * configure.tgt: Add riscv*-*-freebsd*.
2259         * riscv-fbsd-tdep.c: New file.
2260         * riscv-fbsd-tdep.h: New file.
2261
2262 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2263
2264         * regcache.h (struct regcache_map_entry): Note that this type can
2265         be used with traditional frame caches.
2266         * trad-frame.c (trad_frame_set_reg_regmap): New.
2267         * trad-frame.h (trad_frame_set_reg_regmap): New.
2268
2269 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
2270
2271         PR c++/16841
2272         * valops.c (get_virtual_base_offset): New function.
2273         (value_struct_elt_for_reference): Use it to get virtual base offset
2274         and add it in calculating class member address.
2275
2276 2018-10-08  John Darrington  <john@darrington.wattle.id.au>
2277
2278         * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
2279         (check_producer): Check if the producer is codewarrior.
2280         (producer_is_codewarrior): New function.
2281         (lnp_state_machine::record_line): Ignore is_stmt flag for records
2282         produced by codewarrior.
2283         (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
2284
2285 2018-10-06  Tom Tromey  <tom@tromey.com>
2286
2287         PR python/19399:
2288         * python/py-inferior.c: Add "architecture" entry.
2289         (infpy_architecture): New function.
2290
2291 2018-10-06  Tom Tromey  <tom@tromey.com>
2292
2293         PR python/21765:
2294         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
2295         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
2296         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
2297         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
2298
2299 2018-10-06  Tom Tromey  <tom@tromey.com>
2300
2301         PR build/17077:
2302         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
2303         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
2304         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
2305         #include.
2306
2307 2018-10-06  Tom Tromey  <tom@tromey.com>
2308
2309         * python/py-breakpoint.c (bppy_get_location): Handle a
2310         bp_breakpoint without a location.
2311
2312 2018-10-06  Tom Tromey  <tom@tromey.com>
2313
2314         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
2315         (_RegEx): Reformat help text.
2316         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
2317         (AnyCallerIs, AnyCallerMatches): Reformat help text.
2318         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
2319         text.
2320         * python/lib/gdb/command/xmethods.py (InfoXMethod)
2321         (EnableXMethod, DisableXMethod): Remove help indentation.
2322         Capitalize meta-syntactic variables.
2323         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
2324         (EnableUnwinder, DisableUnwinder): Remove help indentation.
2325         Capitalize meta-syntactic variables.
2326         * python/lib/gdb/command/explore.py (ExploreCommand)
2327         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
2328         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
2329         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
2330         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
2331         Remove help indentation.
2332         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
2333         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
2334         (DisableFrameFilter, SetFrameFilterPriority)
2335         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
2336
2337 2018-10-06  Tom Tromey  <tom@tromey.com>
2338
2339         PR tui/28819:
2340         * tui/tui-io.c (gdb_wgetch): New function.
2341         (tui_mld_getc, tui_getc): Use it.
2342
2343 2018-10-05  Tom Tromey  <tom@tromey.com>
2344
2345         * sol-thread.c (sol_thread_target::wait): Rename inner
2346         "save_ptid".
2347
2348 2018-10-04  Tom Tromey  <tom@tromey.com>
2349
2350         * configure: Rebuild.
2351         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
2352
2353 2018-10-04  Tom Tromey  <tom@tromey.com>
2354
2355         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
2356         declaration of "block".
2357
2358 2018-10-04  Tom Tromey  <tom@tromey.com>
2359
2360         * common/filestuff.c (fdwalk): Remove inner declaration of
2361         "result".
2362
2363 2018-10-04  Tom Tromey  <tom@tromey.com>
2364
2365         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
2366         "structs_addr" and hoist declaration.
2367
2368 2018-10-04  Tom Tromey  <tom@tromey.com>
2369
2370         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
2371         variable "size".
2372
2373 2018-10-04  Tom Tromey  <tom@tromey.com>
2374
2375         * mdebugread.c (parse_partial_symbols): Use std::string.
2376
2377 2018-10-04  Tom Tromey  <tom@tromey.com>
2378
2379         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
2380         * p-valprint.c (pascal_val_print): Split inner "i" variable.
2381         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
2382         header.
2383         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
2384         more inner scope.
2385         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
2386         * varobj.c (varobj_update): Rename inner "newobj",
2387         "type_changed".
2388         * valprint.c (generic_emit_char): Rename inner "buf".
2389         * valops.c (find_overload_match): Rename inner "temp".
2390         (value_struct_elt_for_reference): Declare "v" in more inner
2391         scope.
2392         * v850-tdep.c (v850_push_dummy_call): Rename "len".
2393         * unittests/array-view-selftests.c (run_tests): Rename inner
2394         "vec".
2395         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
2396         header.
2397         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
2398         "tsv" in more inner scope.
2399         (print_one_static_tracepoint_marker): Rename inner
2400         "tuple_emitter".
2401         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
2402         (tic6x_push_dummy_call): Don't redeclare "addr".
2403         * target-float.c: Declare "dto" lower.
2404         * symtab.c (lookup_local_symbol): Rename inner "sym".
2405         (find_pc_sect_line): Rename inner "pc".
2406         * stack.c (print_frame): Don't redeclare "gdbarch".
2407         (return_command): Rename inner "gdbarch".
2408         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
2409         "sp".
2410         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
2411         header.
2412         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
2413         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
2414         scope.
2415         * remote.c (remote_target::update_thread_list): Don't redeclare
2416         "tp".
2417         (remote_target::process_initial_stop_replies): Rename inner
2418         "thread".
2419         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
2420         (remote_target::wait_as): Don't redeclare "stop_reply".
2421         (remote_target::get_thread_local_address): Rename inner
2422         "result".
2423         (remote_target::get_tib_address): Likewise.
2424
2425         * regcache.c (cooked_read_test): Rename "regnum".
2426         * record-btrace.c (cmd_record_btrace_start): Rename inner
2427         "exception".
2428         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
2429         loop header.
2430         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
2431         header.
2432         (ppu2spu_sniffer): Rename inner "buf".
2433         * parse.c (operator_check_standard): Rename inner "type",
2434         "objfile".
2435         * p-valprint.c (pascal_val_print): Introduce new scope for
2436         "low_bound", "high_bound".
2437         * p-exp.y (yylex): Declare "i" in loop header.
2438         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
2439         Lower declaration of "s".
2440         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
2441         header.
2442         (nios2_push_dummy_call): Rename "len".
2443         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
2444         "buf".
2445         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
2446         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
2447         (linux_xfer_osdata_modules): Likewise.
2448         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
2449         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
2450         (mips_o64_push_dummy_call): Likewise.
2451         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
2452         "op".
2453         * mi/mi-main.c (list_available_thread_groups): Rename inner
2454         "tuple_emitter".
2455         (mi_cmd_data_read_memory): Rename inner "opts".
2456         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
2457         "tuple_emitter".
2458         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
2459         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
2460         more inner scope.
2461         (parse_partial_symbols): Rename inner "pst", "p", "name"
2462         * main.c (captured_main_1): Rename inner "i"s.
2463         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
2464         "oso2".
2465         * linux-tdep.c (linux_info_proc): Rename inner "filename".
2466         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
2467         * infrun.c (handle_no_resumed): Don't redeclare "thread".
2468         (handle_signal_stop): Rename inner "gdbarch".
2469         (handle_command): Declare "signum" in loop header.
2470         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
2471         "status".
2472         (examine_prologue): Rename inner "sol" and "sof".
2473         (ia64_extract_return_value): Rename inner "val".  Declare another
2474         "val" in a more inner scope.
2475         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
2476         inner scope.
2477         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
2478         "except".
2479         * findvar.c (default_read_var_value): Don't redeclare "addr".
2480         * f-exp.y (yylex): Declare "i" in loop header.
2481         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
2482         Rename inner "type", "expect_type".
2483         (evaluate_subexp_for_sizeof): Rename inner "pc".
2484         * elfread.c (elf_symfile_read): Rename inner "abfd".
2485         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
2486         "bytes_read".
2487         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
2488         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
2489         (dwarf_decode_line_header): Rename inner "lh".
2490         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
2491         "offset".  Declare "i" in loop header.
2492         (disassemble_dwarf_expression): Rename inner "addr_size".
2493         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
2494         inner "result".
2495         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
2496         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
2497         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
2498         "inner_list_emitter".
2499         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
2500         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
2501         declaration in a block.
2502         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
2503         * cp-valprint.c (cp_print_value_fields): Don't redeclare
2504         "obstack_final_size".
2505         * cp-support.c (inspect_type): Declare "i" in loop header.
2506         * compile/compile.c (compile_instance::insert_symbol_error):
2507         Rename inner "e".
2508         * common/agent.c (agent_run_command): Remove inner "ret"
2509         declaration.
2510         * coffread.c (coff_symfile_read): Rename inner "name".
2511         (coff_symfile_read): Rename inner "abfd".
2512         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
2513         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
2514         "high".
2515         * c-exp.y (lex_one_token): Move "len" declaration lower.
2516         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
2517         "gdbarch".
2518         (create_exception_master_breakpoint): Likewise.  Don't redeclare
2519         "b".
2520         (watch_command_1): Declare "mark" later.
2521         (clear_command): Don't shadow "a" or "b".
2522         (delete_command): Rename inner "b".
2523         (delete_trace_command): Likewise.
2524         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
2525         "op".
2526         (arm_gdbarch_init): Remove inner "e_flags".
2527         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
2528         "offset" in inner blocks.
2529
2530 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
2531
2532         * dwarf-index-write.c (file_write): Don't write if the vector is
2533         empty.
2534
2535 2018-10-05  Tom de Vries  <tdevries@suse.de>
2536
2537         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
2538         PyArg_ParseTuple call.
2539
2540 2018-10-05  Tom de Vries  <tdevries@suse.de>
2541
2542         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
2543         PyArg_ParseTuple call.
2544
2545 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
2546
2547         * psymtab.c (recursively_search_psymtabs): Reformat parameters
2548         to avoid exceeding 80 characters per line limit.
2549
2550 2018-10-04  Tom Tromey  <tom@tromey.com>
2551
2552         * symfile.c (syms_from_objfile_1, finish_new_objfile)
2553         (reread_symbols): Update.
2554         * complaints.h (clear_complaints): Remove argument.
2555         * complaints.c (enum complaint_series): Remove.
2556         (series): Remove global.
2557         (complaint_internal): Update.
2558         (clear_complaints): Remove argument.
2559
2560 2018-10-04  Tom Tromey  <tom@tromey.com>
2561
2562         * symfile.c (symbol_file_add_with_addrs): Do not print "no
2563         debugging symbols" message if there is a separate debug objfile.
2564
2565 2018-10-04  Tom Tromey  <tom@tromey.com>
2566
2567         PR cli/19551:
2568         * symfile.c (symbol_file_add_with_addrs): Update output.
2569         * psymtab.c (require_partial_symbols): Update output.
2570
2571 2018-10-04  Tom Tromey  <tom@tromey.com>
2572
2573         PR cli/22234:
2574         * complaints.c: Emit \n.
2575
2576 2018-10-04  Tom Tromey  <tom@tromey.com>
2577
2578         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
2579         (separate_debug_file_exists, find_separate_debug_file)
2580         (add_symbol_file_command, reread_symbols, allocate_symtab)
2581         (allocate_compunit_symtab): Use filtered printing, not
2582         unfiltered.
2583         * psymtab.c (require_partial_symbols, dump_psymtab)
2584         (allocate_psymtab): Use filtered printing, not unfiltered.
2585
2586 2018-10-04  Tom Tromey  <tom@tromey.com>
2587
2588         * complaints.c (complaint_internal): Correctly check complaint
2589         count.
2590
2591 2018-10-04  Tom Tromey  <tom@tromey.com>
2592
2593         * complaints.h (struct complaints): Remove declaration.
2594         * complaints.c (clear_complaints): Remove an unused variable.
2595
2596 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2597
2598         * MAINTAINERS (Write After Approval): Add self.
2599
2600 2018-10-03  Tom Tromey  <tom@tromey.com>
2601
2602         * guile/scm-value.c (gdbscm_value_to_string): Initialize
2603         "buffer_contents".
2604         * coffread.c (coff_symtab_read): Initialize "newobj".
2605
2606 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
2607
2608         * dwarf2read.c (read_func_scope): Remove struct keyword in
2609         range-based for.
2610
2611 2018-10-03  Tom Tromey  <tom@tromey.com>
2612
2613         * README: Mention --enable-ubsan.
2614         * NEWS: Mention --enable-ubsan.
2615         * acinclude.m4: Include sanitize.m4.
2616         * configure: Rebuild.
2617         * configure.ac: Call AM_GDB_UBSAN.
2618         * sanitize.m4: New file.
2619
2620 2018-10-03  Tom Tromey  <tom@tromey.com>
2621
2622         * expression.h (enum exp_opcode): Use uint8_t as base type.
2623         * expprint.c (op_name): Handle invalid opcodes.
2624
2625 2018-10-03  Tom Tromey  <tom@tromey.com>
2626
2627         * parse.c (prefixify_expression): Add assert.
2628         (parse_exp_in_context_1): Throw exception if the expression is
2629         empty.
2630
2631 2018-10-03  Tom Tromey  <tom@tromey.com>
2632
2633         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
2634
2635 2018-10-03  Tom Tromey  <tom@tromey.com>
2636
2637         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
2638
2639 2018-10-03  Tom Tromey  <tom@tromey.com>
2640
2641         * dwarf2read.c (read_subrange_type): Make "negative_mask"
2642         unsigned.
2643
2644 2018-10-03  Tom Tromey  <tom@tromey.com>
2645
2646         * findvar.c (extract_integer): Do work in an unsigned type.
2647
2648 2018-10-03  Tom Tromey  <tom@tromey.com>
2649
2650         * common/enum-flags.h (enum_flags::operator~): Add static assert.
2651         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
2652         base type.
2653         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
2654         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
2655         type.
2656         * c-lang.h (enum c_string_type_values): Use unsigned as base
2657         type.
2658         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
2659
2660 2018-10-03  Tom Tromey  <tom@tromey.com>
2661
2662         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
2663         <~dwarf2_frame_state_reg_info>: Update.
2664         <dwarf2_frame_state_reg_info>: Update.
2665         <alloc_regs>: Add assertion.  Update.
2666         <reg>: Now a std::vector.
2667         <num_regs>: Remove.
2668         <swap>: Update.
2669         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
2670         (execute_cfa_program_test, dwarf2_frame_cache): Update.
2671
2672 2018-10-03  Tom Tromey  <tom@tromey.com>
2673
2674         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
2675
2676 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2677
2678         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
2679
2680 2018-10-02  Tom Tromey  <tom@tromey.com>
2681
2682         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
2683
2684 2018-10-02  John Darrington  <john@darrington.wattle.id.au>
2685
2686         * NEWS: Mention changed commands.
2687         * ser-uds.c: New file.
2688         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
2689         * configure: Regenerate.
2690         * Makefile.in: Add new file.
2691         * serial.c (serial_open): Check if filename is a socket
2692         and lookup the appropriate interface accordingly.
2693
2694 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2695
2696         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
2697         define.
2698         (AARCH64_EXTRA_MAGIC): Likewise.
2699         (AARCH64_FPSIMD_MAGIC): Likewise.
2700         (AARCH64_SVE_MAGIC): Likewise.
2701         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
2702         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
2703         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
2704         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
2705         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
2706         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
2707         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
2708         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
2709         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
2710         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
2711         (read_aarch64_ctx): Add function.
2712         (aarch64_linux_sigframe_init): Detect FP registers.
2713
2714 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2715
2716         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
2717         (AARCH64_D0_REGNUM): Likewise.
2718         (AARCH64_S0_REGNUM): Likewise.
2719         (AARCH64_H0_REGNUM): Likewise.
2720         (AARCH64_B0_REGNUM): Likewise.
2721         (AARCH64_SVE_V0_REGNUM): Likewise.
2722         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
2723         (AARCH64_D0_REGNUM): Likewise.
2724         (AARCH64_S0_REGNUM): Likewise.
2725         (AARCH64_H0_REGNUM): Likewise.
2726         (AARCH64_B0_REGNUM): Likewise.
2727         (AARCH64_SVE_V0_REGNUM): Likewise.
2728
2729 2018-10-01  Gary Benson <gbenson@redhat.com>
2730
2731         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
2732         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
2733         prfpregset_t instead of gdb_prfpregset_t.
2734         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
2735         * configure, config.in: Rebuild.
2736
2737 2018-10-01  Gary Benson <gbenson@redhat.com>
2738
2739         * common/gdb_proc_service.h: New file, factored out from...
2740         * gdb_proc_service.h: Moved common code to the above file.
2741         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
2742
2743 2018-10-01  Gary Benson <gbenson@redhat.com>
2744
2745         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
2746         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
2747
2748 2018-10-01  Gary Benson <gbenson@redhat.com>
2749
2750         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
2751         (AC_CHECK_HEADERS): Check for linux/elf.h.
2752         * configure, config.in: Rebuild.
2753         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
2754         doesn't define elf_fpregset_t.
2755
2756 2018-10-01  Gary Benson <gbenson@redhat.com>
2757
2758         * gdb_proc_service.h: Whitespace change.
2759
2760 2018-10-01  Tom Tromey  <tom@tromey.com>
2761
2762         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
2763         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
2764         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
2765
2766 2018-10-01  Tom Tromey  <tom@tromey.com>
2767
2768         * README: Minor change.
2769
2770 2018-09-30  Pedro Alves  <palves@redhat.com>
2771
2772         * darwin-nat-info.c (darwin_debug_regions_recurse)
2773         (info_mach_exceptions_command): Remove unused local variables.
2774         * darwin-nat.c (darwin_decode_notify_message)
2775         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
2776         (darwin_stop_inferior, darwin_setup_exceptions)
2777         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
2778         (darwin_nat_target::attach, darwin_nat_target::detach)
2779         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
2780         local variables.
2781         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
2782         variables.
2783
2784 2018-09-29  Tom Tromey  <tom@tromey.com>
2785
2786         * README: Remove some leftover text.
2787
2788 2018-09-29  Tom Tromey  <tom@tromey.com>
2789
2790         * PROBLEMS: Rewrite.
2791         * README: Update.
2792
2793 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
2794
2795         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
2796         case with explicit breakpoint kind.
2797         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
2798         'additional_info' and related logic.
2799         (riscv_debug_breakpoints): New variable.
2800         (riscv_breakpoint_kind_from_pc): Use the length of the existing
2801         instruction to determine the breakpoint kind.
2802         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
2803         flag.  Update description of 'set/show riscv
2804         use-compressed-breakpoints' flag.
2805
2806 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
2807
2808         (NEWS): Mention changes to frame related commands.
2809         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
2810         (add_prefix_cmd_suppress_notification): New function.
2811         (add_com_suppress_notification): Call
2812         add_cmd_suppress_notification.
2813         * command.h (add_cmd_suppress_notification): Declare.
2814         (add_prefix_cmd_suppress_notification): Declare.
2815         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
2816         (parse_frame_specification): Moved from stack.c, with
2817         simplification to handle a single argument.
2818         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
2819         switch to the selected frame.  Add a header comment.
2820         * stack.c: Remove 'safe-ctype.h' include.
2821         (find_frame_for_function): Add declaration.
2822         (find_frame_for_address): New function.
2823         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
2824         (frame_selection_by_function_completer): New function.
2825         (info_frame_command): Rename to...
2826         (info_frame_command_core): ...this, and update parameter types.
2827         (select_frame_command): Rename to...
2828         (select_frame_command_core): ...this, and update parameter types.
2829         (frame_command): Rename to...
2830         (frame_command_core): ...this, and update parameter types.
2831         (class frame_command_helper): New class to wrap implementations of
2832         frame related sub-commands.
2833         (frame_apply_cmd_list): New static global.
2834         (frame_cmd_list): Make static.
2835         (select_frame_cmd_list): New global for sub-commands.
2836         (info_frame_cmd_list): New global for sub-commands.
2837         (_initialize_stack): Register sub-commands for 'frame',
2838         'select-frame', and 'info frame'.  Update 'frame apply' commands
2839         to use frame_apply_cmd_list.  Move function local static
2840         frame_apply_list to file static frame_apply_cmd_list for
2841         consistency.
2842         * stack.h (select_frame_command): Delete declarationn.
2843         (select_frame_for_mi): Declare new function.
2844
2845 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2846
2847         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
2848         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
2849         and NOP.
2850
2851 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
2852
2853         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
2854
2855 2018-09-26  Tom Tromey  <tom@tromey.com>
2856
2857         * valops.c (auto_abandon): Remove dead code.
2858
2859 2018-09-26  Tom Tromey  <tom@tromey.com>
2860
2861         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
2862
2863 2018-09-24  Tom Tromey  <tom@tromey.com>
2864
2865         * common/pathstuff.c (get_standard_cache_dir): Make
2866         "xdg_cache_home" and "home" const.
2867         * top.c (init_history): Make "tmpenv" const.
2868         * main.c (get_init_files): Make "homedir" const.
2869
2870 2018-09-23  Tom Tromey  <tom@tromey.com>
2871
2872         PR python/18852:
2873         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
2874
2875 2018-09-23  Tom Tromey  <tom@tromey.com>
2876
2877         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
2878         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
2879         * python/python-internal.h (gdbpy_handle_exception): Declare.
2880         * python/py-utils.c (gdbpy_handle_exception): New function.
2881
2882 2018-09-23  Tom Tromey  <tom@tromey.com>
2883
2884         PR python/17284:
2885         * python/py-type.c (typy_template_argument): Check for negative
2886         argument number.
2887
2888 2018-09-23  Tom Tromey  <tom@tromey.com>
2889
2890         PR python/14062:
2891         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
2892
2893 2018-09-23  Tom Tromey  <tom@tromey.com>
2894
2895         PR python/18170:
2896         * python/py-value.c (valpy_int): Allow conversion from pointer
2897         type.
2898
2899 2018-09-23  Tom Tromey  <tom@tromey.com>
2900
2901         PR python/20126:
2902         * python/py-value.c (valpy_int): Respect type sign.
2903
2904 2018-09-23  Tom Tromey  <tom@tromey.com>
2905
2906         PR python/18352;
2907         * python/py-value.c (valpy_float): Allow conversions from int or
2908         char.
2909         (valpy_int, valpy_long): Allow conversions from float.
2910
2911 2018-09-23  Tom Tromey  <tom@tromey.com>
2912
2913         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
2914         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
2915
2916 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2917
2918         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
2919         __sighndlr.
2920         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
2921
2922 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
2923
2924         * windows-nat.c (windows_nat_target::wait): Remove a spurious
2925         target_terminal::ours().
2926
2927 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
2928
2929         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
2930         of vl to ULONGEST.
2931
2932 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
2933
2934         * breakpoint.c (update_inserted_breakpoint_locations): Remove
2935         redundant condition.
2936
2937 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2938
2939         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
2940
2941         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
2942         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
2943         * sol-thread.c (ps_pdmodel): Don't guard definition.
2944
2945         * procfs.c: Fix formatting.
2946
2947         * procfs.c (sysset_t_alloc): Remove.
2948         (create_procinfo): Use XNEW instead of sysset_t_alloc.
2949         (procfs_debug_inferior): Likewise.
2950         (procfs_set_exec_trap): Likewise.
2951         (proc_set_traced_sysentry): Don't allocate argp dynamically.
2952         (proc_set_traced_sysexit): Likewise.
2953
2954         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
2955         (dead_procinfo): Likewise.
2956         (proc_warn): Likewise.
2957         (proc_error): Likewise.
2958         (proc_get_LDT_entry): Likewise.
2959         (do_attach): Likewise.
2960         (procfs_target::pid_to_str): Likewise.
2961         (iterate_over_mappings): Likewise.
2962
2963         * procfs.c (create_procinfo): Fix ARI warning.
2964         (proc_get_status): Likewise.
2965         (proc_stop_process): Likewise.
2966         (proc_run_process): Likewise.
2967         (proc_kill): Likewise.
2968         (proc_get_LDT_entry): Likewise.
2969         (procfs_find_LDT_entry): Likewise.
2970         (proc_update_threads): Likewise.
2971         (proc_iterate_over_threads): Likewise.
2972         (do_attach): Likewise.
2973         (procfs_xfer_memory): Likewise.
2974         (invalidate_cache): Likewise.
2975         (procfs_target::resume): Likewise.
2976         (procfs_init_inferior): Likewise.
2977         (procfs_set_exec_trap): Likewise.
2978         (procfs_target::thread_alive): Likewise.
2979         (procfs_target::pid_to_exec_file): Likewise.
2980         (iterate_over_mappings): Likewise.
2981         (procfs_target::make_corefile_notes): Likewise.
2982         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
2983
2984         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
2985         (procfs_find_LDT_entry): Likewise.
2986         * sol-thread.c (ps_lgetLDT): Likewise.
2987
2988 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2989
2990         PR tdep/17903
2991         * procfs.c (procfs_target): Declare pid_to_exec_file.
2992         (procfs_target::pid_to_exec_file): New.
2993
2994 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2995
2996         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
2997         renaming.
2998         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
2999         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
3000
3001 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3002
3003         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
3004         (supply_fpregset, fill_fpregset): Move ...
3005         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
3006         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
3007         Remove references to ioctl-based procfs.
3008         Include <sys/reg.h>.
3009         Remove PR_MODEL_NATIVE guards.
3010         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
3011         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
3012
3013 2018-09-19  Xavier Roirand  <roirand@adacore.com>
3014
3015         PR gdb/20981:
3016         * solib-darwin.c (darwin_get_dyld_bfd): New function.
3017         (darwin_solib_get_all_image_info_addr_at_init): Update call.
3018         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
3019
3020 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
3021
3022         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
3023         (fbsd_print_sockaddr_in6): Likewise.
3024
3025 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
3026             Chris January  <chris.january@arm.com>
3027
3028         * eval.c (skip_undetermined_arglist): Skip argument list helper.
3029         (evaluate_subexp_standard): Return a dummy type when
3030         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
3031         OP_F77_UNDETERMINED_ARGLIST case.
3032         * expression.h (enum noside): Update comment.
3033
3034 2018-09-19  George Vasick <george.vasick@oracle.com>
3035
3036         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
3037
3038 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
3039             April Chin <april.chin@oracle.com>
3040             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3041
3042         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
3043         uint_t lwpid_t.
3044         (create_procinfo): Print pids in /proc without leading zeros.
3045
3046 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
3047
3048         * nios2-tdep.c (nios2_gcc_target_options): New.
3049         (nios2_gdb_arch_init): Install new hook.
3050
3051 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
3052
3053         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
3054         New file.
3055         * update-gnulib.sh: Apply patch.
3056         * configure: Re-generate.
3057
3058 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3059
3060         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
3061         description.  Make "info proc" command descriptions more
3062         consistent.
3063
3064 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3065
3066         * NEWS: Mention 'info proc files' command.
3067
3068 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3069
3070         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
3071         descriptors for IP_FILES and IP_ALL.
3072
3073 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3074
3075         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
3076         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
3077         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
3078         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
3079         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
3080         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
3081         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
3082         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
3083         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
3084         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
3085         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
3086         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
3087         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
3088         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
3089         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
3090         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
3091         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
3092         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
3093         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
3094         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
3095         (struct fbsd_sockaddr_un): New types.
3096         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
3097         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
3098         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
3099         (fbsd_core_info_proc_files): New functions.
3100         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
3101         IP_ALL.
3102         * fbsd-tdep.h (fbsd_info_proc_files_header)
3103         (fbsd_info_proc_files_entry): New.
3104
3105 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3106
3107         * defs.h (enum info_proc_what) [IP_FILES]: New value.
3108         * infcmd.c (info_proc_cmd_files): New function.
3109         (_initialize_infcmd): Register 'info proc files' command.
3110
3111 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3112
3113         * gnulib/aclocal-m4-deps.mk: Re-generate.
3114         * gnulib/aclocal.m4: Re-generate.
3115         * gnulib/config.in: Re-generate.
3116         * gnulib/configure: Re-generate.
3117         * gnulib/import/Makefile.am: Re-generate.
3118         * gnulib/import/Makefile.in: Re-generate.
3119         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3120         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3121         * gnulib/import/arpa_inet.in.h: New file.
3122         * gnulib/import/inet_ntop.c: New file.
3123         * gnulib/import/m4/arpa_inet_h.m4: New file.
3124         * gnulib/import/m4/inet_ntop.m4: New file.
3125         * gnulib/import/m4/netinet_in_h.m4: New file.
3126         * gnulib/import/m4/socklen.m4: New file.
3127         * gnulib/import/m4/sockpfaf.m4: New file.
3128         * gnulib/import/m4/stdalign.m4: New file.
3129         * gnulib/import/m4/sys_uio_h.m4: New file.
3130         * gnulib/import/netinet_in.in.h: New file.
3131         * gnulib/import/stdalign.in.h: New file.
3132         * gnulib/import/sys_socket.c: New file.
3133         * gnulib/import/sys_socket.in.h: New file.
3134         * gnulib/import/sys_uio.in.h: New file.
3135         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
3136         module.
3137
3138 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3139
3140         * gnulib/aclocal-m4-deps.mk: New file.
3141         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
3142         deterministically.
3143
3144 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3145
3146         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
3147         KVE_PATH.
3148
3149 2018-09-18  Tom Tromey  <tom@tromey.com>
3150
3151         * compile/compile-object-load.c (struct
3152         link_hash_table_cleanup_data): Add constructor and destructor.
3153         Use DISABLE_COPY_AND_ASSIGN.
3154         (~link_hash_table_cleanup_data): Rename from
3155         link_hash_table_free.  Now a destructor.
3156         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
3157
3158 2018-09-18  Tom Tromey  <tom@tromey.com>
3159
3160         * compile/compile-object-run.c (do_module_cleanup): Use delete.
3161         * compile/compile-object-load.c (struct munmap_list): Move to
3162         header file.
3163         (munmap_list::add): Rename from munmap_list_add; rewrite.
3164         (munmap_list::~munmap_list): Rename from munmap_list_free.
3165         (munmap_listp_free_cleanup): Remove.
3166         (compile_object_load): Update.
3167         * compile/compile-object-load.h (struct munmap_list): Move from
3168         compile-object-load.c.  Rewrite.
3169
3170 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
3171
3172         * aarch64-tdep.c (pass_in_v): Use register size.
3173         (aarch64_extract_return_value): Likewise.
3174         (aarch64_store_return_value): Likewise.
3175
3176 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3177
3178         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
3179         rlim_t.
3180
3181 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3182
3183         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
3184         Fix short help line.
3185
3186 2018-09-17  Tom Tromey  <tom@tromey.com>
3187
3188         PR python/20445:
3189         * configure: Rebuild.
3190         * configure.ac: Conditionally use -DNDEBUG for Python.
3191
3192 2018-09-17  Tom Tromey  <tom@tromey.com>
3193
3194         * configure: Rebuild.
3195         * configure.ac: Use gmp as a library dependency when checking for
3196         mpfr.
3197
3198 2018-09-17  Pedro Alves  <palves@redhat.com>
3199
3200         * python/py-inferior.c (find_inferior_object): Delete.
3201
3202 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
3203
3204         * compile/compile-cplus-types.c
3205         (compile_cplus_instance::enter_scope): Don't use new_scope after
3206         std::move.
3207
3208 2018-09-17  Tom Tromey  <tom@tromey.com>
3209
3210         * common/pathstuff.c (get_standard_cache_dir): Use
3211         ~/Library/Caches on macOS.
3212         * common/pathstuff.h (get_standard_cache_dir): Update comment.
3213
3214 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
3215
3216         PR python/23669
3217         * breakpoint.c (commands_cmd_element): New.
3218         (_initialize_breakpoint): Assign commands_cmd_element.
3219         * breakpoint.h (commands_cmd_element): New.
3220         * cli/cli-script.c (while_cmd_element, if_command,
3221         define_cmd_element): New.
3222         (command_name_equals): Remove.
3223         (process_next_line): Compare commands by pointer, not by name.
3224         (_initialize_cli_script): Assign the various cmd_list_element
3225         variables.
3226         * compile/compile.c (compile_cmd_element): New.
3227         (_initialize_compile): Assign compile_cmd_element.
3228         * compile/compile.h (compile_cmd_element): New.
3229         * guile/guile.c (guile_cmd_element): New.
3230         (install_gdb_commands): Assign guile_cmd_element.
3231         * guile/guile.h (guile_cmd_element): New.
3232         * python/python.c (python_cmd_element): New.
3233         (_initialize_python): Assign python_cmd_element.
3234         * python/python.h (python_cmd_element): New.
3235         * tracepoint.c (while_stepping_cmd_element): New.
3236         (_initialize_tracepoint): Assign while_stepping_cmd_element.
3237         * tracepoint.h (while_stepping_cmd_element): New.
3238
3239 2018-09-17  Tom Tromey  <tom@tromey.com>
3240
3241         * infrun.c (save_infcall_suspend_state): Return
3242         infcall_suspend_state_up.
3243         (save_infcall_control_state): Return infcall_control_state_up.
3244         * inferior.h (save_infcall_suspend_state)
3245         (save_infcall_control_state): Declare later.  Return unique
3246         pointers.
3247
3248 2018-09-17  Tom Tromey  <tom@tromey.com>
3249
3250         * infrun.c (struct stop_context): Declare constructor,
3251         destructor, "changed" method.
3252         (stop_context::stop_context): Rename from save_stop_context.
3253         (stop_context::~stop_context): Rename from
3254         release_stop_context_cleanup.
3255         (normal_stop): Update.
3256         (stop_context::changed): Rename from stop_context_changed.  Return
3257         bool.
3258
3259 2018-09-17  Tom Tromey  <tom@tromey.com>
3260
3261         * inferior.h (struct infcall_suspend_state_deleter): New.
3262         (infcall_suspend_state_up): New typedef.
3263         (struct infcall_control_state_deleter): New.
3264         (infcall_control_state_up): New typedef.
3265         (make_cleanup_restore_infcall_suspend_state)
3266         (make_cleanup_restore_infcall_control_state): Don't declare.
3267         * infcall.c (call_function_by_hand_dummy): Update.
3268         * infrun.c (do_restore_infcall_suspend_state_cleanup)
3269         (make_cleanup_restore_infcall_suspend_state): Remove.
3270         (do_restore_infcall_control_state_cleanup)
3271         (make_cleanup_restore_infcall_control_state): Remove.
3272
3273 2018-09-17  Tom Tromey  <tom@tromey.com>
3274
3275         * gdbthread.h (struct thread_control_state): Add initializer.
3276         (class thread_info) <control>: Remove initializer.
3277         * inferior.h (struct inferior_control_state): Add initializer.
3278         (class inferior) <control>: Remove initializer.
3279         (exit_inferior_1): Update.
3280         * infrun.c (struct infcall_control_state): Add constructors.
3281         (save_infcall_control_state): Use new.
3282         (restore_infcall_control_state, discard_infcall_control_state):
3283         Use delete.
3284
3285 2018-09-17  Tom Tromey  <tom@tromey.com>
3286
3287         * infrun.c (struct infcall_suspend_state) <registers>: Now a
3288         unique_ptr.
3289         <siginfo_data>: Now a unique_xmalloc_ptr.
3290         (save_infcall_suspend_state, restore_infcall_suspend_state)
3291         (discard_infcall_suspend_state)
3292         (get_infcall_suspend_state_regcache): Update.
3293
3294 2018-09-17  Tom Tromey  <tom@tromey.com>
3295
3296         * gdbthread.h (struct thread_suspend_state): Add initializers.
3297         (class thread_info) <suspend>: Remove initializer.
3298         * infrun.c (struct infcall_suspend_state): Add initializers.
3299         (save_infcall_suspend_state): Use new.
3300         (discard_infcall_suspend_state): Use delete.
3301
3302 2018-09-16  Tom Tromey  <tom@tromey.com>
3303
3304         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
3305         Remove.
3306         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
3307         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
3308         (py_varobj_iter_new): Likewise.
3309         (py_varobj_get_iterator): Use gdbpy_ref.
3310
3311 2018-09-16  Tom Tromey  <tom@tromey.com>
3312
3313         * python/py-threadevent.c (py_get_event_thread): Simplify.
3314         * python/py-inferior.c (infpy_thread_from_thread_handle):
3315         Return immediately after calling thread_to_thread_object.  Use
3316         Py_RETURN_NONE.
3317         (thread_to_thread_object): Set the exception on a NULL return.
3318
3319 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
3320
3321         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
3322
3323 2018-09-16  Tom Tromey  <tom@tromey.com>
3324
3325         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
3326         Remove.
3327
3328 2018-09-16  Tom Tromey  <tom@tromey.com>
3329
3330         * python/python-internal.h (thread_to_thread_object): Change
3331         return type.
3332         * python/py-inferior.c (thread_to_thread_object): Return a new
3333         reference.
3334         (infpy_thread_from_thread_handle): Update.
3335         * python/py-infthread.c (gdbpy_selected_thread): Update.
3336         * python/py-stopevent.c (create_stop_event_object): Update.
3337         * python/py-threadevent.c (py_get_event_thread): Return a new
3338         reference.
3339         (py_get_event_thread): Update.
3340         * python/py-event.h (py_get_event_thread): Change return type.
3341         * python/py-continueevent.c (create_continue_event_object):
3342         Update.
3343
3344 2018-09-16  Tom Tromey  <tom@tromey.com>
3345
3346         * python/py-progspace.c (pspy_get_objfiles): Update.
3347         * python/python-internal.h (objfile_to_objfile_object): Change
3348         return type.
3349         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3350         Update.
3351         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3352         Update.
3353         * python/python.c (gdbpy_get_current_objfile): Update.
3354         (gdbpy_objfiles): Update.
3355         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
3356         Update.
3357         (objfile_to_objfile_object): Return a new reference.
3358         * python/py-symtab.c (stpy_get_objfile): Update.
3359         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
3360         Update.
3361
3362 2018-09-16  Tom Tromey  <tom@tromey.com>
3363
3364         * python/py-inferior.c (infpy_get_progspace): Update.
3365         * python/python-internal.h (pspace_to_pspace_object): Change
3366         return type.
3367         * python/py-newobjfileevent.c
3368         (create_clear_objfiles_event_object): Update.
3369         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3370         Update.
3371         * python/python.c (gdbpy_get_current_progspace): Update.
3372         (gdbpy_progspaces): Update.
3373         * python/py-progspace.c (pspace_to_pspace_object): Return a new
3374         reference.
3375         * python/py-objfile.c (objfpy_get_progspace): Update.
3376         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
3377         Update.
3378
3379 2018-09-16  Tom Tromey  <tom@tromey.com>
3380
3381         * python/lib/gdb/__init__.py (current_progspace, objfiles)
3382         (solib_name, block_for_pc, find_pc_line): New functions.
3383         (execute_unwinders): Update.
3384         * python/py-block.c (gdbpy_block_for_pc): Remove.
3385         * python/py-inferior.c (infpy_get_progspace): New function.
3386         (inferior_object_getset) <progspace>: Add.
3387         * python/py-progspace.c (pspy_objfiles): Rewrite.
3388         (pspy_solib_name, pspy_block_for_pc)
3389         (pspy_find_pc_line, pspy_is_valid): New functions.
3390         (progspace_object_methods): Add entries for solib_name,
3391         block_for_pc, find_pc_line, is_valid.
3392         * python/python-internal.h (gdbpy_block_for_pc)
3393         (build_objfiles_list): Don't declare.
3394         * python/python.c: Don't include solib.h.
3395         (gdbpy_solib_name, gdbpy_find_pc_line)
3396         (gdbpy_get_current_progspace, build_objfiles_list)
3397         (gdbpy_objfiles): Remove.
3398         (GdbMethods) <current_progspace, objfiles, block_for_pc,
3399         solib_name, find_pc_line>: Remove entries.
3400
3401 2018-09-16  Tom Tromey  <tom@tromey.com>
3402
3403         * top.c (new_ui_command): Use GNU style for metasyntactic
3404         variables.
3405         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
3406         variables.
3407         * maint.c (maintenance_translate_address): Remove "<>" around
3408         text.
3409         * interps.c (interpreter_exec_cmd): Use GNU style for
3410         metasyntactic variables.
3411         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
3412         metasyntactic variables.
3413         * tracepoint.c (tfind_range_command): Use GNU style for
3414         metasyntactic variables.
3415         (tfind_outside_command): Likewise.
3416         (_initialize_tracepoint): Likewise.
3417         * remote.c (extended_remote_target::create_inferior): Use GNU
3418         style for metasyntactic variables.
3419         * sparc64-tdep.c (adi_examine_command): Use GNU style for
3420         metasyntactic variables.
3421         (adi_assign_command): Likewise.
3422
3423 2018-09-16  Tom Tromey  <tom@tromey.com>
3424
3425         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
3426         metasyntactic variables.  Print message if no disassembler options
3427         are available.
3428
3429 2018-09-15  Tom Tromey  <tom@tromey.com>
3430
3431         * infcmd.c (get_inferior_args): Return const char *.
3432         * inferior.h (get_inferior_args): Return type now const.
3433         * linux-tdep.c (linux_fill_prpsinfo): Update.
3434         * procfs.c (procfs_target::make_corefile_notes): Update.
3435
3436 2018-09-07  Tom Tromey  <tom@tromey.com>
3437
3438         * python/python.c (execute_gdb_command): Call bpstat_do_actions
3439         inside the TRY.
3440
3441 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
3442
3443         * nios2-tdep.c (nios2_type_align): New.
3444         (nios2_gdb_arch_init): Install type_align hook.
3445
3446 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
3447
3448         * eval.c (fake_method::fake_method): Call xzalloc directly for a
3449         type that is neither object file owned, nor gdbarch owned.
3450         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
3451         gdbarch is non-NULL.
3452         (alloc_type_instance): Allocate non-objfile owned types on the
3453         gdbarch obstack.
3454         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
3455         using TYPE_ALLOC to ensure memory is allocated on the correct
3456         obstack.
3457         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
3458         obstack, or the gdbarch obstack.
3459         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
3460
3461 2018-09-14  Tom Tromey  <tom@tromey.com>
3462
3463         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
3464         block.
3465
3466 2018-09-14  Tom Tromey  <tom@tromey.com>
3467
3468         * nat/fork-inferior.c (get_startup_shell): Remove "static".
3469
3470 2018-09-13  Tom Tromey  <tom@tromey.com>
3471
3472         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
3473         static.
3474
3475 2018-09-13  Tom Tromey  <tom@tromey.com>
3476
3477         * exec.c (try_open_exec_file): Use std::string.
3478
3479 2018-09-13  Tom Tromey  <tom@tromey.com>
3480
3481         * utils.h (gdb_bfd_errmsg): Return std::string.
3482         * exec.c (exec_file_attach): Update.
3483         * compile/compile-object-load.c (compile_object_load): Update.
3484         * utils.c (gdb_bfd_errmsg): Return std::string.
3485
3486 2018-09-13  Tom Tromey  <tom@tromey.com>
3487
3488         * procfs.c (struct procinfo_deleter): New.
3489         (procinfo_up): New typedef.
3490         (do_destroy_procinfo_cleanup): Remove.
3491         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
3492
3493 2018-09-13  Tom Tromey  <tom@tromey.com>
3494
3495         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
3496
3497 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3498 2018-09-13  Tom Tromey  <tom@tromey.com>
3499
3500         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
3501         (pspy_get_objfiles): New function.
3502         (progspace_object_methods): New.
3503         (pspace_object_type): Add tp_methods callback.
3504         * python/python-internal.h (build_objfiles_list): New
3505         declaration.
3506         * python/python.c (build_objfiles_list): New function.
3507         (gdbpy_objfiles): Implement using build_objfiles_list.
3508         * NEWS: Mention the Progspace.objfiles method.
3509
3510 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3511
3512         * python/py-inferior.c (infpy_get_progspace): New function.
3513         (inferior_object_getset): Add progspace property.
3514         * NEWS: Mention the new property.
3515
3516 2018-09-13  Tom Tromey  <tom@tromey.com>
3517
3518         PR rust/23650:
3519         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
3520
3521 2018-09-13  Tom Tromey  <tom@tromey.com>
3522
3523         PR rust/23626:
3524         * rust-lang.c (rust_enum_variant): Now static.
3525         (rust_empty_enum_p): New function.
3526         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
3527         Handle empty enum.
3528
3529 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3530
3531         * python/py-inferior.c (infpy_repr): New.
3532         (inferior_object_type): Register infpy_repr.
3533         * python/py-objfile.c (objfpy_repr): New.
3534         (objfile_object_type): Register objfpy_repr.
3535
3536 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3537
3538         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
3539
3540 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3541
3542         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
3543         typo.
3544
3545 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
3546
3547         * common/common-utils.c: Don't include '<sys/stat.h>'.
3548         (is_regular_file): Move to...
3549         * common/filestuff.c (is_regular_file): ... here.
3550         * common/common-utils.h (is_regular_file): Move to...
3551         * common/filestuff.h (is_regular_file): ... here.
3552
3553 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
3554
3555         * skip.c (debug_skip): New variable.
3556         (skiplist_entry::do_skip_file_p): Add debug output.
3557         (skiplist_entry::do_skip_gfile_p): Likewise.
3558         (skiplist_entry::skip_function_p): Likewise.
3559         (_initialize_step_skip): Create debug command.
3560         * NEWS: Mention set/show debug skip.
3561
3562 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3563
3564         * darwin-nat.c (should_disable_startup_with_shell):
3565         New function.
3566         (darwin_nat_target::create_inferior): Add call.
3567
3568 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3569
3570         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
3571         inf_port, msg_state>: Initialize.
3572         (struct darwin_thread_info) <signaled, single_step>: Change
3573         type and initialize.
3574         (struct darwin_thread_info) <event>: Initialize.
3575
3576 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3577
3578         PR gdb/23555
3579         PR gdb/23558
3580         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
3581         guesses.
3582
3583 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3584
3585         Revert:
3586         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3587
3588         PR gdb/23555
3589         PR gdb/23558
3590         * gnulib/aclocal.m4: Regenerate.
3591         * gnulib/config.in: Regenerate.
3592         * gnulib/configure: Regenerate.
3593         * gnulib/import/Makefile.am: Update.
3594         * gnulib/import/Makefile.in: Update.
3595         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3596         * gnulib/import/_Noreturn.h: ... this.
3597         * gnulib/import/alloca.in.h: Update.
3598         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3599         * gnulib/import/arg-nonnull.h: ... this.
3600         * gnulib/import/assure.h: Update.
3601         * gnulib/import/at-func.c: Update.
3602         * gnulib/import/basename-lgpl.c: Update.
3603         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3604         * gnulib/import/c++defs.h: ... this.
3605         * gnulib/import/canonicalize-lgpl.c: Update.
3606         * gnulib/import/cdefs.h: Update.
3607         * gnulib/import/chdir-long.c: Update.
3608         * gnulib/import/chdir-long.h: Update.
3609         * gnulib/import/cloexec.c: Update.
3610         * gnulib/import/cloexec.h: Update.
3611         * gnulib/import/close.c: Update.
3612         * gnulib/import/closedir.c: Update.
3613         * gnulib/import/config.charset: Update.
3614         * gnulib/import/dirent-private.h: Update.
3615         * gnulib/import/dirent.in.h: Update.
3616         * gnulib/import/dirfd.c: Update.
3617         * gnulib/import/dirname-lgpl.c: Update.
3618         * gnulib/import/dirname.h: Update.
3619         * gnulib/import/dosname.h: Update.
3620         * gnulib/import/dup-safer-flag.c: Update.
3621         * gnulib/import/dup-safer.c: Update.
3622         * gnulib/import/dup.c: Update.
3623         * gnulib/import/dup2.c: Update.
3624         * gnulib/import/errno.in.h: Update.
3625         * gnulib/import/error.c: Update.
3626         * gnulib/import/error.h: Update.
3627         * gnulib/import/exitfail.c: Update.
3628         * gnulib/import/exitfail.h: Update.
3629         * gnulib/import/extra/update-copyright: Update.
3630         * gnulib/import/fchdir.c: Update.
3631         * gnulib/import/fcntl.c: Update.
3632         * gnulib/import/fcntl.in.h: Update.
3633         * gnulib/import/fd-hook.c: Update.
3634         * gnulib/import/fd-hook.h: Update.
3635         * gnulib/import/fd-safer-flag.c: Update.
3636         * gnulib/import/fd-safer.c: Update.
3637         * gnulib/import/fdopendir.c: Update.
3638         * gnulib/import/filename.h: Update.
3639         * gnulib/import/filenamecat-lgpl.c: Update.
3640         * gnulib/import/filenamecat.h: Update.
3641         * gnulib/import/flexmember.h: Update.
3642         * gnulib/import/float+.h: Update.
3643         * gnulib/import/float.c: Update.
3644         * gnulib/import/float.in.h: Update.
3645         * gnulib/import/fnmatch.c: Update.
3646         * gnulib/import/fnmatch.in.h: Update.
3647         * gnulib/import/fnmatch_loop.c: Update.
3648         * gnulib/import/fpucw.h: Update.
3649         * gnulib/import/frexp.c: Update.
3650         * gnulib/import/frexpl.c: Update.
3651         * gnulib/import/fstat.c: Update.
3652         * gnulib/import/fstatat.c: Update.
3653         * gnulib/import/getcwd-lgpl.c: Update.
3654         * gnulib/import/getcwd.c: Update.
3655         * gnulib/import/getdtablesize.c: Update.
3656         * gnulib/import/getlogin_r.c: Update.
3657         * gnulib/import/getprogname.c: Update.
3658         * gnulib/import/getprogname.h: Update.
3659         * gnulib/import/gettext.h: Update.
3660         * gnulib/import/gettimeofday.c: Update.
3661         * gnulib/import/glob-libc.h: Update.
3662         * gnulib/import/glob.c: Update.
3663         * gnulib/import/glob.in.h: Update.
3664         * gnulib/import/glob_internal.h: Update.
3665         * gnulib/import/glob_pattern_p.c: Update.
3666         * gnulib/import/globfree.c: Update.
3667         * gnulib/import/hard-locale.c: Update.
3668         * gnulib/import/hard-locale.h: Update.
3669         * gnulib/import/intprops.h: Update.
3670         * gnulib/import/inttypes.in.h: Update.
3671         * gnulib/import/isnan.c: Update.
3672         * gnulib/import/isnand-nolibm.h: Update.
3673         * gnulib/import/isnand.c: Update.
3674         * gnulib/import/isnanl-nolibm.h: Update.
3675         * gnulib/import/isnanl.c: Update.
3676         * gnulib/import/itold.c: Update.
3677         * gnulib/import/libc-config.h: Update.
3678         * gnulib/import/limits.in.h: Update.
3679         * gnulib/import/localcharset.c: Update.
3680         * gnulib/import/localcharset.h: Update.
3681         * gnulib/import/localtime-buffer.c: Update.
3682         * gnulib/import/localtime-buffer.h: Update.
3683         * gnulib/import/lstat.c: Update.
3684         * gnulib/import/m4/00gnulib.m4: Update.
3685         * gnulib/import/m4/__inline.m4: Update.
3686         * gnulib/import/m4/absolute-header.m4: Update.
3687         * gnulib/import/m4/alloca.m4: Update.
3688         * gnulib/import/m4/builtin-expect.m4: Update.
3689         * gnulib/import/m4/canonicalize.m4: Update.
3690         * gnulib/import/m4/chdir-long.m4: Update.
3691         * gnulib/import/m4/close.m4: Update.
3692         * gnulib/import/m4/closedir.m4: Update.
3693         * gnulib/import/m4/configmake.m4: Update.
3694         * gnulib/import/m4/d-ino.m4: Update.
3695         * gnulib/import/m4/d-type.m4: Update.
3696         * gnulib/import/m4/dirent_h.m4: Update.
3697         * gnulib/import/m4/dirfd.m4: Update.
3698         * gnulib/import/m4/dirname.m4: Update.
3699         * gnulib/import/m4/double-slash-root.m4: Update.
3700         * gnulib/import/m4/dup.m4: Update.
3701         * gnulib/import/m4/dup2.m4: Update.
3702         * gnulib/import/m4/eealloc.m4: Update.
3703         * gnulib/import/m4/environ.m4: Update.
3704         * gnulib/import/m4/errno_h.m4: Update.
3705         * gnulib/import/m4/error.m4: Update.
3706         * gnulib/import/m4/exponentd.m4: Update.
3707         * gnulib/import/m4/exponentl.m4: Update.
3708         * gnulib/import/m4/extensions.m4: Update.
3709         * gnulib/import/m4/extern-inline.m4: Update.
3710         * gnulib/import/m4/fchdir.m4: Update.
3711         * gnulib/import/m4/fcntl-o.m4: Update.
3712         * gnulib/import/m4/fcntl.m4: Update.
3713         * gnulib/import/m4/fcntl_h.m4: Update.
3714         * gnulib/import/m4/fdopendir.m4: Update.
3715         * gnulib/import/m4/filenamecat.m4: Update.
3716         * gnulib/import/m4/flexmember.m4: Update.
3717         * gnulib/import/m4/float_h.m4: Update.
3718         * gnulib/import/m4/fnmatch.m4: Update.
3719         * gnulib/import/m4/fnmatch_h.m4: Update.
3720         * gnulib/import/m4/fpieee.m4: Update.
3721         * gnulib/import/m4/frexp.m4: Update.
3722         * gnulib/import/m4/frexpl.m4: Update.
3723         * gnulib/import/m4/fstat.m4: Update.
3724         * gnulib/import/m4/fstatat.m4: Update.
3725         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3726         * gnulib/import/m4/getcwd-path-max.m4: Update.
3727         * gnulib/import/m4/getcwd.m4: Update.
3728         * gnulib/import/m4/getdtablesize.m4: Update.
3729         * gnulib/import/m4/getlogin.m4: Update.
3730         * gnulib/import/m4/getlogin_r.m4: Update.
3731         * gnulib/import/m4/getpagesize.m4: Update.
3732         * gnulib/import/m4/getprogname.m4: Update.
3733         * gnulib/import/m4/gettimeofday.m4: Update.
3734         * gnulib/import/m4/glibc21.m4: Update.
3735         * gnulib/import/m4/glob.m4: Update.
3736         * gnulib/import/m4/glob_h.m4: Update.
3737         * gnulib/import/m4/gnulib-cache.m4: Update.
3738         * gnulib/import/m4/gnulib-common.m4: Update.
3739         * gnulib/import/m4/gnulib-comp.m4: Update.
3740         * gnulib/import/m4/gnulib-tool.m4: Update.
3741         * gnulib/import/m4/hard-locale.m4: Update.
3742         * gnulib/import/m4/include_next.m4: Update.
3743         * gnulib/import/m4/inttypes-pri.m4: Update.
3744         * gnulib/import/m4/inttypes.m4: Update.
3745         * gnulib/import/m4/isnand.m4: Update.
3746         * gnulib/import/m4/isnanl.m4: Update.
3747         * gnulib/import/m4/largefile.m4: Update.
3748         * gnulib/import/m4/limits-h.m4: Update.
3749         * gnulib/import/m4/localcharset.m4: Update.
3750         * gnulib/import/m4/locale-fr.m4: Update.
3751         * gnulib/import/m4/locale-ja.m4: Update.
3752         * gnulib/import/m4/locale-zh.m4: Update.
3753         * gnulib/import/m4/localtime-buffer.m4: Update.
3754         * gnulib/import/m4/longlong.m4: Update.
3755         * gnulib/import/m4/lstat.m4: Update.
3756         * gnulib/import/m4/malloc.m4: Update.
3757         * gnulib/import/m4/malloca.m4: Update.
3758         * gnulib/import/m4/math_h.m4: Update.
3759         * gnulib/import/m4/mbrtowc.m4: Update.
3760         * gnulib/import/m4/mbsinit.m4: Update.
3761         * gnulib/import/m4/mbsrtowcs.m4: Update.
3762         * gnulib/import/m4/mbstate_t.m4: Update.
3763         * gnulib/import/m4/memchr.m4: Update.
3764         * gnulib/import/m4/memmem.m4: Update.
3765         * gnulib/import/m4/mempcpy.m4: Update.
3766         * gnulib/import/m4/memrchr.m4: Update.
3767         * gnulib/import/m4/mkdir.m4: Update.
3768         * gnulib/import/m4/mkstemp.m4: Update.
3769         * gnulib/import/m4/mmap-anon.m4: Update.
3770         * gnulib/import/m4/mode_t.m4: Update.
3771         * gnulib/import/m4/msvc-inval.m4: Update.
3772         * gnulib/import/m4/msvc-nothrow.m4: Update.
3773         * gnulib/import/m4/multiarch.m4: Update.
3774         * gnulib/import/m4/nocrash.m4: Update.
3775         * gnulib/import/m4/off_t.m4: Update.
3776         * gnulib/import/m4/onceonly.m4: Update.
3777         * gnulib/import/m4/open-cloexec.m4: Update.
3778         * gnulib/import/m4/open.m4: Update.
3779         * gnulib/import/m4/openat.m4: Update.
3780         * gnulib/import/m4/opendir.m4: Update.
3781         * gnulib/import/m4/pathmax.m4: Update.
3782         * gnulib/import/m4/rawmemchr.m4: Update.
3783         * gnulib/import/m4/readdir.m4: Update.
3784         * gnulib/import/m4/readlink.m4: Update.
3785         * gnulib/import/m4/realloc.m4: Update.
3786         * gnulib/import/m4/rename.m4: Update.
3787         * gnulib/import/m4/rewinddir.m4: Update.
3788         * gnulib/import/m4/rmdir.m4: Update.
3789         * gnulib/import/m4/save-cwd.m4: Update.
3790         * gnulib/import/m4/secure_getenv.m4: Update.
3791         * gnulib/import/m4/setenv.m4: Update.
3792         * gnulib/import/m4/signal_h.m4: Update.
3793         * gnulib/import/m4/ssize_t.m4: Update.
3794         * gnulib/import/m4/stat-time.m4: Update.
3795         * gnulib/import/m4/stat.m4: Update.
3796         * gnulib/import/m4/std-gnu11.m4: Update.
3797         * gnulib/import/m4/stdbool.m4: Update.
3798         * gnulib/import/m4/stddef_h.m4: Update.
3799         * gnulib/import/m4/stdint.m4: Update.
3800         * gnulib/import/m4/stdio_h.m4: Update.
3801         * gnulib/import/m4/stdlib_h.m4: Update.
3802         * gnulib/import/m4/strchrnul.m4: Update.
3803         * gnulib/import/m4/strdup.m4: Update.
3804         * gnulib/import/m4/strerror.m4: Update.
3805         * gnulib/import/m4/string_h.m4: Update.
3806         * gnulib/import/m4/strstr.m4: Update.
3807         * gnulib/import/m4/strtok_r.m4: Update.
3808         * gnulib/import/m4/sys_socket_h.m4: Update.
3809         * gnulib/import/m4/sys_stat_h.m4: Update.
3810         * gnulib/import/m4/sys_time_h.m4: Update.
3811         * gnulib/import/m4/sys_types_h.m4: Update.
3812         * gnulib/import/m4/tempname.m4: Update.
3813         * gnulib/import/m4/time_h.m4: Update.
3814         * gnulib/import/m4/unistd-safer.m4: Update.
3815         * gnulib/import/m4/unistd_h.m4: Update.
3816         * gnulib/import/m4/warn-on-use.m4: Update.
3817         * gnulib/import/m4/wchar_h.m4: Update.
3818         * gnulib/import/m4/wchar_t.m4: Update.
3819         * gnulib/import/m4/wctype_h.m4: Update.
3820         * gnulib/import/m4/wint_t.m4: Update.
3821         * gnulib/import/malloc.c: Update.
3822         * gnulib/import/malloc/scratch_buffer.h: Update.
3823         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3824         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3825         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3826         * gnulib/import/malloca.c: Update.
3827         * gnulib/import/malloca.h: Update.
3828         * gnulib/import/malloca.valgrind: Update.
3829         * gnulib/import/math.in.h: Update.
3830         * gnulib/import/mbrtowc.c: Update.
3831         * gnulib/import/mbsinit.c: Update.
3832         * gnulib/import/mbsrtowcs-impl.h: Update.
3833         * gnulib/import/mbsrtowcs-state.c: Update.
3834         * gnulib/import/mbsrtowcs.c: Update.
3835         * gnulib/import/memchr.c: Update.
3836         * gnulib/import/memmem.c: Update.
3837         * gnulib/import/mempcpy.c: Update.
3838         * gnulib/import/memrchr.c: Update.
3839         * gnulib/import/mkdir.c: Update.
3840         * gnulib/import/mkstemp.c: Update.
3841         * gnulib/import/msvc-inval.c: Update.
3842         * gnulib/import/msvc-inval.h: Update.
3843         * gnulib/import/msvc-nothrow.c: Update.
3844         * gnulib/import/msvc-nothrow.h: Update.
3845         * gnulib/import/open.c: Update.
3846         * gnulib/import/openat-die.c: Update.
3847         * gnulib/import/openat-priv.h: Update.
3848         * gnulib/import/openat-proc.c: Update.
3849         * gnulib/import/openat.c: Update.
3850         * gnulib/import/openat.h: Update.
3851         * gnulib/import/opendir.c: Update.
3852         * gnulib/import/pathmax.h: Update.
3853         * gnulib/import/pipe-safer.c: Update.
3854         * gnulib/import/rawmemchr.c: Update.
3855         * gnulib/import/readdir.c: Update.
3856         * gnulib/import/readlink.c: Update.
3857         * gnulib/import/realloc.c: Update.
3858         * gnulib/import/ref-add.sin: Update.
3859         * gnulib/import/ref-del.sin: Update.
3860         * gnulib/import/rename.c: Update.
3861         * gnulib/import/rewinddir.c: Update.
3862         * gnulib/import/rmdir.c: Update.
3863         * gnulib/import/same-inode.h: Update.
3864         * gnulib/import/save-cwd.c: Update.
3865         * gnulib/import/save-cwd.h: Update.
3866         * gnulib/import/scratch_buffer.h: Update.
3867         * gnulib/import/secure_getenv.c: Update.
3868         * gnulib/import/setenv.c: Update.
3869         * gnulib/import/signal.in.h: Update.
3870         * gnulib/import/stat-time.c: Update.
3871         * gnulib/import/stat-time.h: Update.
3872         * gnulib/import/stat-w32.c: Update.
3873         * gnulib/import/stat-w32.h: Update.
3874         * gnulib/import/stat.c: Update.
3875         * gnulib/import/stdbool.in.h: Update.
3876         * gnulib/import/stddef.in.h: Update.
3877         * gnulib/import/stdint.in.h: Update.
3878         * gnulib/import/stdio.in.h: Update.
3879         * gnulib/import/stdlib.in.h: Update.
3880         * gnulib/import/str-two-way.h: Update.
3881         * gnulib/import/strchrnul.c: Update.
3882         * gnulib/import/strdup.c: Update.
3883         * gnulib/import/streq.h: Update.
3884         * gnulib/import/strerror-override.c: Update.
3885         * gnulib/import/strerror-override.h: Update.
3886         * gnulib/import/strerror.c: Update.
3887         * gnulib/import/string.in.h: Update.
3888         * gnulib/import/stripslash.c: Update.
3889         * gnulib/import/strnlen1.c: Update.
3890         * gnulib/import/strnlen1.h: Update.
3891         * gnulib/import/strstr.c: Update.
3892         * gnulib/import/strtok_r.c: Update.
3893         * gnulib/import/sys_stat.in.h: Update.
3894         * gnulib/import/sys_time.in.h: Update.
3895         * gnulib/import/sys_types.in.h: Update.
3896         * gnulib/import/tempname.c: Update.
3897         * gnulib/import/tempname.h: Update.
3898         * gnulib/import/time.in.h: Update.
3899         * gnulib/import/unistd--.h: Update.
3900         * gnulib/import/unistd-safer.h: Update.
3901         * gnulib/import/unistd.in.h: Update.
3902         * gnulib/import/unsetenv.c: Update.
3903         * gnulib/import/verify.h: Update.
3904         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3905         * gnulib/import/wchar.in.h: Update.
3906         * gnulib/import/wctype.in.h: Update.
3907         * gnulib/import/xalloc-oversized.h: Update.
3908         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3909         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3910
3911 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
3912
3913         * record-btrace.c (get_thread_current_frame): Remove
3914         old_inferior_ptid.
3915
3916 2018-09-10  Jerome Guitton  <guitton@adacore.com>
3917
3918         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
3919         with check_tag to 1 if and only if the type is tagged and the
3920         component being searched cannot been found in the current
3921         view. Otherwise, always call ada_to_fixed_type with
3922         check_tag to 0.
3923
3924 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3925
3926         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
3927         declaration.
3928         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
3929         * ada-varobj.c (ada_varobj_get_number_of_children,
3930         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
3931
3932 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3933
3934         * ada-valprint.c (ada_value_print): Use type instead of
3935         enclosing type.
3936
3937 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3938
3939         * ada-lang.c (ada_value_subscript): Handle case when parameter is
3940         an array of access to unconstrained array.
3941
3942 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3943
3944         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
3945         (ada_check_typedef): Use it.
3946
3947 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3948
3949         * ada-varobj.c (ada_varobj_describe_struct_child)
3950         (ada_varobj_describe_child): Handle union case like struct one.
3951
3952 2018-09-10  Tom Tromey  <tom@tromey.com>
3953
3954         PR python/18380:
3955         * python/python.c (_initialize_python): Make example in "python"
3956         help work in Python 3.
3957
3958 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
3959
3960         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
3961         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
3962         $(EXEEXT) to the script, as it is not a program.
3963
3964 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
3965
3966         * python/py-prettyprint.c (pretty_print_one_value): Return
3967         gdbpy_ref<>.
3968         (print_string_repr): Adjust.
3969         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
3970         * python/python-internal.h (apply_varobj_pretty_printer): Return
3971         gdbpy_ref<>.
3972         * varobj.c (varobj_value_get_print_value): Adjust.
3973
3974 2018-09-08  Tom Tromey  <tom@tromey.com>
3975
3976         PR python/16047:
3977         * python/py-prettyprint.c (pretty_print_one_value): Check for
3978         to_string method.
3979
3980 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3981
3982         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
3983         replace_operator_with_call.
3984
3985 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3986
3987         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
3988
3989 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3990
3991         * ada-typeprint.c (print_range): Print the bounds using TYPE
3992         rather than its TYPE_TARGET_TYPE.
3993
3994 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3995
3996         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
3997         call to ada_to_fixed_value_create.
3998
3999 2018-09-08  Jerome Guitton  <guitton@adacore.com>
4000
4001         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
4002
4003 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4004
4005         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
4006         by calls to error.
4007
4008 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4009
4010         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
4011         Move update of loop variable "fi".
4012
4013 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4014
4015         * ada-lang.c (value_assign_to_component): In the case of
4016         big-endian targets, extract the bits of the given VAL
4017         using an src_offset of zero if container is not a scalar.
4018
4019 2018-09-06  Simon Ser  <contact@emersion.fr>
4020
4021         PR gdb/23105
4022         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
4023         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
4024         * fbsd-tdep.c (fbsd_make_note_desc): New.
4025         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
4026         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
4027         * target.h (enum target_object) Add FreeBSD-specific
4028         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
4029
4030 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
4031
4032         * compile/compile-c.h (generate_c_for_variable_locations):
4033         Change reference to pointer.
4034         * compile/compile-c-support.c (compile_program) <compute>:
4035         Likewise.
4036         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
4037         (generate_c_for_for_one_variable): Likewise
4038         (generate_c_for_variable_locations): Likewise
4039         * compile/compile-c-types.c (compile_c_instance::convert_type):
4040         Likewise
4041         * compile/compile-cplus-symbols.c (convert_one_symbol):
4042         std::move the scope passed to enter_scope.
4043         * compile/compile-cplus-types.c
4044         (compile_cplus_instance::enter_scope): Make parameter
4045         rvalue-reference.
4046         (compile_cplus_instance::new_scope): Change reference to
4047         pointer.
4048         (compile_cplus_instance::convert_type): Likewise
4049         (compile_cplus_convert_typedef): std::move the scope passed to
4050         enter_scope.
4051         (compile_cplus_convert_struct_or_union): Likewise.
4052         (compile_cplus_convert_enum): Likewise.
4053         (compile_cplus_convert_namespace): Likewise.
4054         * compile/compile-cplus.h (compile_cplus_instance)
4055         <enter_scope>: Make parameter rvalue-reference.
4056         * compile/compile-internal.h (compile_instance)
4057         <get_cached_type>: Likewise
4058         * compile/compile-loc2c.c (push): Likewise
4059         (pushf): Likewise
4060         (unary): Likewise
4061         (binary): Likewise
4062         (print_label): Likewise
4063         (pushf_register_address): Likewise
4064         (pushf_register): Likewise
4065         (do_compile_dwarf_expr_to_c): Likewise
4066         (compile_dwarf_expr_to_c): Likewise
4067         (compile_dwarf_bounds_to_c): Likewise
4068         * compile/compile.c (compile_instance::get_cached_type):
4069         Likewise
4070         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
4071         (compile_dwarf_bounds_to_c): Likewise
4072         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
4073         (dwarf2_compile_property_to_c): Likewise
4074         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
4075         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
4076         Likewise
4077
4078 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
4079
4080         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
4081         * tui/tui-data.c (init_content_element): Don't initialize it.
4082
4083 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
4084
4085         * tui/tui-data.h (struct tui_win_info)
4086         <detail::opaque>: Remove.
4087         * tui/tui-data.c (init_win_info): Remove assignment.
4088
4089 2018-09-05  Tom Tromey  <tom@tromey.com>
4090
4091         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
4092         -Wformat-nonliteral.
4093         * target-float.c (host_float_ops<T>::to_string)
4094         (host_float_ops<T>::from_string): Use
4095         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
4096         * configure: Rebuild.
4097
4098 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
4099
4100         * printcmd.c (printf_c_string): Use
4101         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
4102         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
4103
4104 2018-09-05  Tom Tromey  <tom@tromey.com>
4105
4106         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
4107
4108 2018-09-05  Tom de Vries  <tdevries@suse.de>
4109
4110         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
4111         with resolve_abstract_p == true.
4112         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
4113         defaulting to false. Propagate resolve_abstract_p to
4114         dwarf2_fetch_die_loc_sect_off.
4115         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
4116         parameter, defaulting to false.
4117         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
4118         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
4119         parameter.
4120         * dwarf2read.h (struct die_info): Forward-declare.
4121         (die_info_ptr): New typedef.
4122         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
4123
4124 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
4125
4126         GDB 8.2 released.
4127
4128 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
4129             Pedro Alves  <palves@redhat.com>
4130
4131         * gnulib/Makefile.in (aclocal_m4_deps): Move to
4132         "aclocal-m4-deps.mk".  Include file here.
4133         $(srcdir)/aclocal.m4: Add "configure.ac".
4134         * gnulib/aclocal-m4-deps.mk: New file.
4135         * gnulib/update-gnulib.sh: Automatically update
4136         "aclocal-m4-deps.mk".
4137
4138 2018-09-04  Tom Tromey  <tom@tromey.com>
4139
4140         * configure: Rebuild.
4141         * configure.ac: Remove multi-ice code.
4142
4143 2018-09-04  Tom Tromey  <tom@tromey.com>
4144
4145         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
4146         (ada-exp.o): Update.
4147
4148 2018-09-04  Tom Tromey  <tom@tromey.com>
4149
4150         * Makefile.in (printcmd.o, target-float.o): Remove.
4151         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
4152
4153 2018-09-04  Tom Tromey  <tom@tromey.com>
4154
4155         * gnulib/Makefile.in: Remove obsolete comment.
4156         * Makefile.in: Remove obsolete comment.
4157
4158 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
4159
4160         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
4161         line with '+'.
4162
4163 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4164
4165         * riscv-tdep.c: Add 'prologue-value.h' include.
4166         (struct riscv_unwind_cache): New struct.
4167         (riscv_debug_unwinder): New global.
4168         (riscv_scan_prologue): Update arguments, capture register details
4169         from prologue scan.
4170         (riscv_skip_prologue): Reformat arguments line, move end of
4171         prologue calculation into riscv_scan_prologue.
4172         (riscv_frame_cache): Update return type, create
4173         riscv_unwind_cache, scan the prologue, and fill in remaining cache
4174         details.
4175         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
4176         (riscv_frame_prev_register): Use the trad_frame within the
4177         riscv_unwind_cache.
4178         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
4179         flag.
4180
4181 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4182
4183         * trad-frame.h (trad_frame_set_realreg): Declare.
4184         (trad_frame_set_addr): Declare.
4185         * trad-frame.c (trad_frame_set_realreg): Define new function.
4186         (trad_frame_set_addr): Define new function.
4187         (trad_frame_set_reg_realreg): Use new function.
4188         (trad_frame_set_reg_addr): Use new function.
4189
4190 2018-09-01  Keith Seitz  <keiths@redhat.com>
4191
4192         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
4193         pulongest instead of "%lld".
4194         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
4195         ATTRIBUTE_UNUSED.
4196
4197 2018-08-31  Tom Tromey  <tom@tromey.com>
4198
4199         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
4200         variant part type.
4201
4202 2018-08-31  Pedro Alves  <palves@redhat.com>
4203
4204         * gdbarch.h: Regenerate.
4205
4206 2018-08-31  Pedro Alves  <palves@redhat.com>
4207
4208         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
4209         * target.h (Hardware watchpoint interfaces): Describe
4210         continuable/steppable/non-steppable watchpoints.
4211         * gdbarch.h, gdbarch.c: Regenerate.
4212
4213 2018-08-31  Pedro Alves  <palves@redhat.com>
4214
4215         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
4216         Delete.
4217         * s390-linux-nat.c
4218         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
4219         * target.h (target_ops::have_continuable_watchpoint): Delete.
4220         (target_have_continuable_watchpoint): Delete.
4221         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
4222         * target-delegates.c: Regenerate.
4223
4224 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
4225
4226         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
4227         the files present in "gnulib/import/m4/".
4228
4229 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4230
4231         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
4232         c.sw, c.swsp, and c.sdsp.
4233
4234 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4235
4236         * riscv-tdep.c (struct riscv_inferior_data): Delete.
4237         (riscv_read_misa_reg): Don't cache value read into inferior data.
4238         (riscv_new_inferior_data): Delete.
4239         (riscv_inferior_data_cleanup): Delete.
4240         (riscv_inferior_data): Delete.
4241         (riscv_invalidate_inferior_data): Delete.
4242         (_initialize_riscv_tdep): Remove initialisation of inferior data.
4243
4244 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
4245
4246         * compile/compile-cplus-types.c
4247         (compile_cplus_instance::leave_scope): Take the address of scope
4248         object.
4249         (compile_cplus_instance::convert_qualified_base): Compare quals
4250         to 0.
4251
4252 2018-08-30  Keith Seitz  <keiths@redhat.com>
4253
4254         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
4255         Use "%s" and host_address_to_string instead of "%p" in printf.
4256
4257 2018-08-29  Keith Seitz  <keiths@redhat.com>
4258
4259         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
4260         and compile-cplus-types.c.
4261         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
4262         * c-lang.c (cplus_language_defn): Set C++ compile functions.
4263         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
4264         Declare.
4265         * compile/compile-c-support.c: Include compile-cplus.h.
4266         (load_libcompile): Templatize.
4267         (get_compile_context): "New" function.
4268         (c_get_compile_context): Use get_compile_context.
4269         (cplus_get_compile_context): New function.
4270         (cplus_push_user_expression, cplus_pop_user_expression)
4271         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
4272         (cplus_compute_program): Define new structs/functions.
4273         * compile/compile-cplus-symmbols.c: New file.
4274         * compile/compile-cplus-types.c: New file.
4275         * compile/compile-cplus.h: New file.
4276         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
4277         Declare.
4278         * compile/compile-object-load.c (get_out_value_type): Use
4279         strncmp_iw when comparing symbol names.
4280         (compile_object_load): Add mst_bss and mst_data.
4281         * compile/compile.c (_initialize_compile): Remove
4282         -Wno-implicit-function-declaration from `compile_args'.
4283         * compile/gcc-cp-plugin.h: New file.
4284         * NEWS: Mention C++ compile support and new debug options.
4285
4286 2018-08-29  Keith Seitz  <keiths@redhat.com>
4287
4288         * linespec.c (collect_info::add_symbol): Make virtual.
4289         (struct symbol_searcher_collect_info): New struct.
4290         (symbol_searcher::find_all_symbols): New method.
4291         * symtab.h (class symbol_searcher): New class.
4292
4293 2018-08-29  Keith Seitz  <keiths@redhat.com>
4294
4295         * linespec.c (struct linespec) <function_symbols, label_symbols>:
4296         Change to vector of block_symbol.  Update all users.
4297         (struct collect_info) <symbols>: Likewise.
4298         (collect_info::add_symbol): Take block_symbol as argument.
4299         Update all callers.
4300         (decode_compound_collector) <m_symbols>: Change type to vector
4301         of block_symbol.  Update all users.
4302         (decode_compound_collector::operator ()): Change parameter type
4303         to block_symbol.
4304         (find_method, find_function_symbols, find_linespec_symbols)
4305         (find_label_symbols_in_block, find_label_symbols): Change symbol
4306         vectors to block_symbol vectors.
4307         * symtab.h (symbol_found_callback_ftype): Change parameter type to
4308         block_symbol.
4309
4310 2018-08-29  Keith Seitz  <keiths@redhat.com>
4311
4312         * linespec.c (symbolp): Remove typedef and VEC definitions.
4313         (bound_minimal_symbol_d): Likewise.
4314
4315 2018-08-29  Keith Seitz  <keiths@redhat.com>
4316
4317         * linespec.c (decode_compound_collector::decode_compound_collector):
4318         Remove initialization for `m_symtabs'.
4319         (decode_compound_collector::release_symbols): Change return type
4320         to std::vector.  Update all callers.
4321         (class decode_compound_collector) <m_symbols>: Change type to
4322         std::vector.
4323         (lookup_prefix_sym): Change return type to std::vector.  Update all
4324         callers.
4325         (compare_symbols): Remove.
4326         (std_compare_symbols): Rename to `compare_symbols'.
4327         (find_method): Change `sym_classes' parameter to std::vector.
4328         Update all callers.  Use std::sort to sort sym_classes.
4329         (find_linespec_symbols): Remove cleanup.
4330
4331 2018-08-29  Keith Seitz  <keiths@redhat.com>
4332
4333         * linespec.c (struct linespec) <minimal_symbols>: Change type to
4334         std::vector.  Update all users.
4335         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
4336         (struct collect_info) <minimal_symbols>: Likewise.
4337         (compare_msymbols): Return bool.  Change parameters to const
4338         bound_minimal_symbol references.
4339         (find_method, find_function_symbols, find_linespec_symbols): Change
4340         `minsyms' parameter to std::vector.  Update all callers.
4341
4342 2018-08-29  Keith Seitz  <keiths@redhat.com>
4343
4344         * linespec.c (struct linespec) <label_symbols>: Change type to
4345         std::vector.  Update all users.
4346         (find_label_symbols_in_block): Change `result' parameter to
4347         std::vector.  Update all callers.
4348         (find_label_symbols): Return std::vector.  Update all callers.
4349
4350 2018-08-29  Keith Seitz  <keiths@redhat.com>
4351
4352         * linespec.c (struct linespec) <function_symbols>: Change type to
4353         std::vector.  Update all users.
4354         (struct collect_info) <function_symbols>: Likewise.
4355         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
4356         (std_compare_symbols): New function.
4357         (find_method, find_function_symbols, find_linespec_symbols)
4358         (find_label_symbols_in_block): Change `symbols' parameter to
4359         std::vector.  Update all callers.
4360         (find_label_symbols): Likewise for `function_symbols' and
4361         `label_funcs_ret'.
4362
4363 2018-08-29  Keith Seitz  <keiths@redhat.com>
4364
4365         * linespec.c (symtab_vector_up): Define.
4366         (struct linespec) <file_symtabs>: Change type to std::vector *.
4367         Update all uses.
4368         (struct collect_info) <file_symtabs>: Likewise.
4369         (collect_symtabs_from_filename): Return symtab_vector_up.
4370         Update all callers.
4371         (decode_objc): Remove cleanup.
4372         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
4373         (symtab_collector::release_symtabs): Return symtab_vector_up.
4374         Update all callers.
4375         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
4376         Update all users.
4377         (collect_symtabs_from_filename, symtabs_from_filename): Return
4378         symtab_vector_up.  Update all callers.
4379
4380 2018-08-29  Tom Tromey  <tom@tromey.com>
4381
4382         * csky-tdep.c (csky_analyze_prologue): Use
4383         core_addr_to_string_nz.
4384
4385 2018-08-29  Tom Tromey  <tom@tromey.com>
4386
4387         * windows-nat.c (struct xlate_exception) <them>: Change type to
4388         DWORD.
4389         (xlate): Fix formatting.  Remove last entry.
4390         (struct xlate_exception, xlate): Comment out.
4391         (windows_nat_target::resume): Use ranged for.
4392
4393 2018-08-29  Jim Wilson  <jimw@sifive.com>
4394
4395         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
4396         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
4397         of NT_PRFPREG.
4398         (riscv_linux_nat_target::store_registers): Likewise.
4399
4400 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
4401
4402         PR gdb/23555
4403         PR gdb/23558
4404         * gnulib/aclocal.m4: Regenerate.
4405         * gnulib/config.in: Regenerate.
4406         * gnulib/configure: Regenerate.
4407         * gnulib/import/Makefile.am: Update.
4408         * gnulib/import/Makefile.in: Update.
4409         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
4410         * gnulib/import/_Noreturn.h: ... this.
4411         * gnulib/import/alloca.in.h: Update.
4412         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
4413         * gnulib/import/arg-nonnull.h: ... this.
4414         * gnulib/import/assure.h: Update.
4415         * gnulib/import/at-func.c: Update.
4416         * gnulib/import/basename-lgpl.c: Update.
4417         * gnulib/import/extra/snippet/c++defs.h: Rename to...
4418         * gnulib/import/c++defs.h: ... this.
4419         * gnulib/import/canonicalize-lgpl.c: Update.
4420         * gnulib/import/cdefs.h: Update.
4421         * gnulib/import/chdir-long.c: Update.
4422         * gnulib/import/chdir-long.h: Update.
4423         * gnulib/import/cloexec.c: Update.
4424         * gnulib/import/cloexec.h: Update.
4425         * gnulib/import/close.c: Update.
4426         * gnulib/import/closedir.c: Update.
4427         * gnulib/import/config.charset: Update.
4428         * gnulib/import/dirent-private.h: Update.
4429         * gnulib/import/dirent.in.h: Update.
4430         * gnulib/import/dirfd.c: Update.
4431         * gnulib/import/dirname-lgpl.c: Update.
4432         * gnulib/import/dirname.h: Update.
4433         * gnulib/import/dosname.h: Update.
4434         * gnulib/import/dup-safer-flag.c: Update.
4435         * gnulib/import/dup-safer.c: Update.
4436         * gnulib/import/dup.c: Update.
4437         * gnulib/import/dup2.c: Update.
4438         * gnulib/import/errno.in.h: Update.
4439         * gnulib/import/error.c: Update.
4440         * gnulib/import/error.h: Update.
4441         * gnulib/import/exitfail.c: Update.
4442         * gnulib/import/exitfail.h: Update.
4443         * gnulib/import/extra/update-copyright: Update.
4444         * gnulib/import/fchdir.c: Update.
4445         * gnulib/import/fcntl.c: Update.
4446         * gnulib/import/fcntl.in.h: Update.
4447         * gnulib/import/fd-hook.c: Update.
4448         * gnulib/import/fd-hook.h: Update.
4449         * gnulib/import/fd-safer-flag.c: Update.
4450         * gnulib/import/fd-safer.c: Update.
4451         * gnulib/import/fdopendir.c: Update.
4452         * gnulib/import/filename.h: Update.
4453         * gnulib/import/filenamecat-lgpl.c: Update.
4454         * gnulib/import/filenamecat.h: Update.
4455         * gnulib/import/flexmember.h: Update.
4456         * gnulib/import/float+.h: Update.
4457         * gnulib/import/float.c: Update.
4458         * gnulib/import/float.in.h: Update.
4459         * gnulib/import/fnmatch.c: Update.
4460         * gnulib/import/fnmatch.in.h: Update.
4461         * gnulib/import/fnmatch_loop.c: Update.
4462         * gnulib/import/fpucw.h: Update.
4463         * gnulib/import/frexp.c: Update.
4464         * gnulib/import/frexpl.c: Update.
4465         * gnulib/import/fstat.c: Update.
4466         * gnulib/import/fstatat.c: Update.
4467         * gnulib/import/getcwd-lgpl.c: Update.
4468         * gnulib/import/getcwd.c: Update.
4469         * gnulib/import/getdtablesize.c: Update.
4470         * gnulib/import/getlogin_r.c: Update.
4471         * gnulib/import/getprogname.c: Update.
4472         * gnulib/import/getprogname.h: Update.
4473         * gnulib/import/gettext.h: Update.
4474         * gnulib/import/gettimeofday.c: Update.
4475         * gnulib/import/glob-libc.h: Update.
4476         * gnulib/import/glob.c: Update.
4477         * gnulib/import/glob.in.h: Update.
4478         * gnulib/import/glob_internal.h: Update.
4479         * gnulib/import/glob_pattern_p.c: Update.
4480         * gnulib/import/globfree.c: Update.
4481         * gnulib/import/hard-locale.c: Update.
4482         * gnulib/import/hard-locale.h: Update.
4483         * gnulib/import/intprops.h: Update.
4484         * gnulib/import/inttypes.in.h: Update.
4485         * gnulib/import/isnan.c: Update.
4486         * gnulib/import/isnand-nolibm.h: Update.
4487         * gnulib/import/isnand.c: Update.
4488         * gnulib/import/isnanl-nolibm.h: Update.
4489         * gnulib/import/isnanl.c: Update.
4490         * gnulib/import/itold.c: Update.
4491         * gnulib/import/libc-config.h: Update.
4492         * gnulib/import/limits.in.h: Update.
4493         * gnulib/import/localcharset.c: Update.
4494         * gnulib/import/localcharset.h: Update.
4495         * gnulib/import/localtime-buffer.c: Update.
4496         * gnulib/import/localtime-buffer.h: Update.
4497         * gnulib/import/lstat.c: Update.
4498         * gnulib/import/m4/00gnulib.m4: Update.
4499         * gnulib/import/m4/__inline.m4: Update.
4500         * gnulib/import/m4/absolute-header.m4: Update.
4501         * gnulib/import/m4/alloca.m4: Update.
4502         * gnulib/import/m4/builtin-expect.m4: Update.
4503         * gnulib/import/m4/canonicalize.m4: Update.
4504         * gnulib/import/m4/chdir-long.m4: Update.
4505         * gnulib/import/m4/close.m4: Update.
4506         * gnulib/import/m4/closedir.m4: Update.
4507         * gnulib/import/m4/configmake.m4: Update.
4508         * gnulib/import/m4/d-ino.m4: Update.
4509         * gnulib/import/m4/d-type.m4: Update.
4510         * gnulib/import/m4/dirent_h.m4: Update.
4511         * gnulib/import/m4/dirfd.m4: Update.
4512         * gnulib/import/m4/dirname.m4: Update.
4513         * gnulib/import/m4/double-slash-root.m4: Update.
4514         * gnulib/import/m4/dup.m4: Update.
4515         * gnulib/import/m4/dup2.m4: Update.
4516         * gnulib/import/m4/eealloc.m4: Update.
4517         * gnulib/import/m4/environ.m4: Update.
4518         * gnulib/import/m4/errno_h.m4: Update.
4519         * gnulib/import/m4/error.m4: Update.
4520         * gnulib/import/m4/exponentd.m4: Update.
4521         * gnulib/import/m4/exponentl.m4: Update.
4522         * gnulib/import/m4/extensions.m4: Update.
4523         * gnulib/import/m4/extern-inline.m4: Update.
4524         * gnulib/import/m4/fchdir.m4: Update.
4525         * gnulib/import/m4/fcntl-o.m4: Update.
4526         * gnulib/import/m4/fcntl.m4: Update.
4527         * gnulib/import/m4/fcntl_h.m4: Update.
4528         * gnulib/import/m4/fdopendir.m4: Update.
4529         * gnulib/import/m4/filenamecat.m4: Update.
4530         * gnulib/import/m4/flexmember.m4: Update.
4531         * gnulib/import/m4/float_h.m4: Update.
4532         * gnulib/import/m4/fnmatch.m4: Update.
4533         * gnulib/import/m4/fnmatch_h.m4: Update.
4534         * gnulib/import/m4/fpieee.m4: Update.
4535         * gnulib/import/m4/frexp.m4: Update.
4536         * gnulib/import/m4/frexpl.m4: Update.
4537         * gnulib/import/m4/fstat.m4: Update.
4538         * gnulib/import/m4/fstatat.m4: Update.
4539         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
4540         * gnulib/import/m4/getcwd-path-max.m4: Update.
4541         * gnulib/import/m4/getcwd.m4: Update.
4542         * gnulib/import/m4/getdtablesize.m4: Update.
4543         * gnulib/import/m4/getlogin.m4: Update.
4544         * gnulib/import/m4/getlogin_r.m4: Update.
4545         * gnulib/import/m4/getpagesize.m4: Update.
4546         * gnulib/import/m4/getprogname.m4: Update.
4547         * gnulib/import/m4/gettimeofday.m4: Update.
4548         * gnulib/import/m4/glibc21.m4: Update.
4549         * gnulib/import/m4/glob.m4: Update.
4550         * gnulib/import/m4/glob_h.m4: Update.
4551         * gnulib/import/m4/gnulib-cache.m4: Update.
4552         * gnulib/import/m4/gnulib-common.m4: Update.
4553         * gnulib/import/m4/gnulib-comp.m4: Update.
4554         * gnulib/import/m4/gnulib-tool.m4: Update.
4555         * gnulib/import/m4/hard-locale.m4: Update.
4556         * gnulib/import/m4/include_next.m4: Update.
4557         * gnulib/import/m4/inttypes-pri.m4: Update.
4558         * gnulib/import/m4/inttypes.m4: Update.
4559         * gnulib/import/m4/isnand.m4: Update.
4560         * gnulib/import/m4/isnanl.m4: Update.
4561         * gnulib/import/m4/largefile.m4: Update.
4562         * gnulib/import/m4/limits-h.m4: Update.
4563         * gnulib/import/m4/localcharset.m4: Update.
4564         * gnulib/import/m4/locale-fr.m4: Update.
4565         * gnulib/import/m4/locale-ja.m4: Update.
4566         * gnulib/import/m4/locale-zh.m4: Update.
4567         * gnulib/import/m4/localtime-buffer.m4: Update.
4568         * gnulib/import/m4/longlong.m4: Update.
4569         * gnulib/import/m4/lstat.m4: Update.
4570         * gnulib/import/m4/malloc.m4: Update.
4571         * gnulib/import/m4/malloca.m4: Update.
4572         * gnulib/import/m4/math_h.m4: Update.
4573         * gnulib/import/m4/mbrtowc.m4: Update.
4574         * gnulib/import/m4/mbsinit.m4: Update.
4575         * gnulib/import/m4/mbsrtowcs.m4: Update.
4576         * gnulib/import/m4/mbstate_t.m4: Update.
4577         * gnulib/import/m4/memchr.m4: Update.
4578         * gnulib/import/m4/memmem.m4: Update.
4579         * gnulib/import/m4/mempcpy.m4: Update.
4580         * gnulib/import/m4/memrchr.m4: Update.
4581         * gnulib/import/m4/mkdir.m4: Update.
4582         * gnulib/import/m4/mkstemp.m4: Update.
4583         * gnulib/import/m4/mmap-anon.m4: Update.
4584         * gnulib/import/m4/mode_t.m4: Update.
4585         * gnulib/import/m4/msvc-inval.m4: Update.
4586         * gnulib/import/m4/msvc-nothrow.m4: Update.
4587         * gnulib/import/m4/multiarch.m4: Update.
4588         * gnulib/import/m4/nocrash.m4: Update.
4589         * gnulib/import/m4/off_t.m4: Update.
4590         * gnulib/import/m4/onceonly.m4: Update.
4591         * gnulib/import/m4/open-cloexec.m4: Update.
4592         * gnulib/import/m4/open.m4: Update.
4593         * gnulib/import/m4/openat.m4: Update.
4594         * gnulib/import/m4/opendir.m4: Update.
4595         * gnulib/import/m4/pathmax.m4: Update.
4596         * gnulib/import/m4/rawmemchr.m4: Update.
4597         * gnulib/import/m4/readdir.m4: Update.
4598         * gnulib/import/m4/readlink.m4: Update.
4599         * gnulib/import/m4/realloc.m4: Update.
4600         * gnulib/import/m4/rename.m4: Update.
4601         * gnulib/import/m4/rewinddir.m4: Update.
4602         * gnulib/import/m4/rmdir.m4: Update.
4603         * gnulib/import/m4/save-cwd.m4: Update.
4604         * gnulib/import/m4/secure_getenv.m4: Update.
4605         * gnulib/import/m4/setenv.m4: Update.
4606         * gnulib/import/m4/signal_h.m4: Update.
4607         * gnulib/import/m4/ssize_t.m4: Update.
4608         * gnulib/import/m4/stat-time.m4: Update.
4609         * gnulib/import/m4/stat.m4: Update.
4610         * gnulib/import/m4/std-gnu11.m4: Update.
4611         * gnulib/import/m4/stdbool.m4: Update.
4612         * gnulib/import/m4/stddef_h.m4: Update.
4613         * gnulib/import/m4/stdint.m4: Update.
4614         * gnulib/import/m4/stdio_h.m4: Update.
4615         * gnulib/import/m4/stdlib_h.m4: Update.
4616         * gnulib/import/m4/strchrnul.m4: Update.
4617         * gnulib/import/m4/strdup.m4: Update.
4618         * gnulib/import/m4/strerror.m4: Update.
4619         * gnulib/import/m4/string_h.m4: Update.
4620         * gnulib/import/m4/strstr.m4: Update.
4621         * gnulib/import/m4/strtok_r.m4: Update.
4622         * gnulib/import/m4/sys_socket_h.m4: Update.
4623         * gnulib/import/m4/sys_stat_h.m4: Update.
4624         * gnulib/import/m4/sys_time_h.m4: Update.
4625         * gnulib/import/m4/sys_types_h.m4: Update.
4626         * gnulib/import/m4/tempname.m4: Update.
4627         * gnulib/import/m4/time_h.m4: Update.
4628         * gnulib/import/m4/unistd-safer.m4: Update.
4629         * gnulib/import/m4/unistd_h.m4: Update.
4630         * gnulib/import/m4/warn-on-use.m4: Update.
4631         * gnulib/import/m4/wchar_h.m4: Update.
4632         * gnulib/import/m4/wchar_t.m4: Update.
4633         * gnulib/import/m4/wctype_h.m4: Update.
4634         * gnulib/import/m4/wint_t.m4: Update.
4635         * gnulib/import/malloc.c: Update.
4636         * gnulib/import/malloc/scratch_buffer.h: Update.
4637         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
4638         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
4639         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
4640         * gnulib/import/malloca.c: Update.
4641         * gnulib/import/malloca.h: Update.
4642         * gnulib/import/malloca.valgrind: Update.
4643         * gnulib/import/math.in.h: Update.
4644         * gnulib/import/mbrtowc.c: Update.
4645         * gnulib/import/mbsinit.c: Update.
4646         * gnulib/import/mbsrtowcs-impl.h: Update.
4647         * gnulib/import/mbsrtowcs-state.c: Update.
4648         * gnulib/import/mbsrtowcs.c: Update.
4649         * gnulib/import/memchr.c: Update.
4650         * gnulib/import/memmem.c: Update.
4651         * gnulib/import/mempcpy.c: Update.
4652         * gnulib/import/memrchr.c: Update.
4653         * gnulib/import/mkdir.c: Update.
4654         * gnulib/import/mkstemp.c: Update.
4655         * gnulib/import/msvc-inval.c: Update.
4656         * gnulib/import/msvc-inval.h: Update.
4657         * gnulib/import/msvc-nothrow.c: Update.
4658         * gnulib/import/msvc-nothrow.h: Update.
4659         * gnulib/import/open.c: Update.
4660         * gnulib/import/openat-die.c: Update.
4661         * gnulib/import/openat-priv.h: Update.
4662         * gnulib/import/openat-proc.c: Update.
4663         * gnulib/import/openat.c: Update.
4664         * gnulib/import/openat.h: Update.
4665         * gnulib/import/opendir.c: Update.
4666         * gnulib/import/pathmax.h: Update.
4667         * gnulib/import/pipe-safer.c: Update.
4668         * gnulib/import/rawmemchr.c: Update.
4669         * gnulib/import/readdir.c: Update.
4670         * gnulib/import/readlink.c: Update.
4671         * gnulib/import/realloc.c: Update.
4672         * gnulib/import/ref-add.sin: Update.
4673         * gnulib/import/ref-del.sin: Update.
4674         * gnulib/import/rename.c: Update.
4675         * gnulib/import/rewinddir.c: Update.
4676         * gnulib/import/rmdir.c: Update.
4677         * gnulib/import/same-inode.h: Update.
4678         * gnulib/import/save-cwd.c: Update.
4679         * gnulib/import/save-cwd.h: Update.
4680         * gnulib/import/scratch_buffer.h: Update.
4681         * gnulib/import/secure_getenv.c: Update.
4682         * gnulib/import/setenv.c: Update.
4683         * gnulib/import/signal.in.h: Update.
4684         * gnulib/import/stat-time.c: Update.
4685         * gnulib/import/stat-time.h: Update.
4686         * gnulib/import/stat-w32.c: Update.
4687         * gnulib/import/stat-w32.h: Update.
4688         * gnulib/import/stat.c: Update.
4689         * gnulib/import/stdbool.in.h: Update.
4690         * gnulib/import/stddef.in.h: Update.
4691         * gnulib/import/stdint.in.h: Update.
4692         * gnulib/import/stdio.in.h: Update.
4693         * gnulib/import/stdlib.in.h: Update.
4694         * gnulib/import/str-two-way.h: Update.
4695         * gnulib/import/strchrnul.c: Update.
4696         * gnulib/import/strdup.c: Update.
4697         * gnulib/import/streq.h: Update.
4698         * gnulib/import/strerror-override.c: Update.
4699         * gnulib/import/strerror-override.h: Update.
4700         * gnulib/import/strerror.c: Update.
4701         * gnulib/import/string.in.h: Update.
4702         * gnulib/import/stripslash.c: Update.
4703         * gnulib/import/strnlen1.c: Update.
4704         * gnulib/import/strnlen1.h: Update.
4705         * gnulib/import/strstr.c: Update.
4706         * gnulib/import/strtok_r.c: Update.
4707         * gnulib/import/sys_stat.in.h: Update.
4708         * gnulib/import/sys_time.in.h: Update.
4709         * gnulib/import/sys_types.in.h: Update.
4710         * gnulib/import/tempname.c: Update.
4711         * gnulib/import/tempname.h: Update.
4712         * gnulib/import/time.in.h: Update.
4713         * gnulib/import/unistd--.h: Update.
4714         * gnulib/import/unistd-safer.h: Update.
4715         * gnulib/import/unistd.in.h: Update.
4716         * gnulib/import/unsetenv.c: Update.
4717         * gnulib/import/verify.h: Update.
4718         * gnulib/import/extra/snippet/warn-on-use.h: Update.
4719         * gnulib/import/wchar.in.h: Update.
4720         * gnulib/import/wctype.in.h: Update.
4721         * gnulib/import/xalloc-oversized.h: Update.
4722         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
4723         "53e2c179f26a890fa6685af4b6c1397ee370433b".
4724
4725 2018-08-16  Gary Benson <gbenson@redhat.com>
4726
4727         PR gdb/13000:
4728         * gdb/main.c (captured_main_1): Exit with nonzero status
4729         in batch mode if the last command to be executed failed.
4730         * NEWS: Mention the above.
4731
4732 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
4733
4734         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
4735         end of warning message.
4736
4737 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4738
4739         PR gdb/22943:
4740         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
4741         (aarch64_extract_return_value): Use
4742         aapcs_is_vfp_call_or_return_candidate.
4743         (aarch64_return_in_memory): Likewise.
4744         (aarch64_store_return_value): Likewise.
4745
4746 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4747
4748         * aarch64-tdep.c
4749         (aapcs_is_vfp_call_or_return_candidate): Make static
4750         (pass_in_v_or_stack): Remove function.
4751         (pass_in_v_vfp_candidate): New function.
4752         (aarch64_push_dummy_call): Check for float register candidates.
4753
4754 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4755
4756         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
4757         (aapcs_is_vfp_call_or_return_candidate_1): New function.
4758         (aapcs_is_vfp_call_or_return_candidate): Likewise.
4759
4760 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
4761
4762         PR build/23399
4763         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
4764         (struct ipa_sym_addresses): Rename to...
4765         (struct ipa_sym_addresses_common): ... this.
4766         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
4767
4768 2018-08-28  Tom Tromey  <tom@tromey.com>
4769
4770         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4771         (token_fifo): Now a std::vector.
4772         (yylex, c_parse): Update.
4773         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4774         (token_fifo): Now a std::vector.
4775         (yylex, d_parse): Update.
4776         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4777         (token_fifo): Now a std::vector.
4778         (yylex, go_parse): Update.
4779
4780 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
4781
4782         * parser-defs.h (struct type_stack) <elements>: Change type to
4783         std::vector<union type_stack_elt>.
4784         <depth, size>: Remove.
4785         * parse.c (parse_exp_in_context_1): Adjust.
4786         (type_stack_reserve): Remove.
4787         (check_type_stack_depth): Remove.
4788         (insert_into_type_stack): Adjust to std::vector.
4789         (insert_type): Likewise.
4790         (push_type): Likewise.
4791         (push_type_int): Likewise.
4792         (insert_type_address_space): Likewise.
4793         (pop_type): Likewise.
4794         (pop_type_int): Likewise.
4795         (pop_typelist): Likewise.
4796         (pop_type_stack): Likewise.
4797         (append_type_stack): Likewise.
4798         (push_type_stack): Likewise.
4799         (get_type_stack): Likewise.
4800         (type_stack_cleanup): Likewise.
4801         (push_typelist): Likewise.
4802         (follow_types): Likewise.
4803         (_initialize_parse): Likewise.
4804
4805 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
4806
4807         * NEWS: Mention csky target.
4808
4809 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
4810             Hafiz Abid Qadeer  <abidh@codesourcery.com>
4811             Don Breazeal  <donb@codesourcery.com>
4812
4813         * csky-linux-tdep.c: New file.
4814         * csky-tdep.c: Likewise.
4815         * csky-tdep.h: Likewise.
4816         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
4817         csky-tdep.o.
4818         (HFILES_NO_SRCDIR): Add csky-tdep.h.
4819         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
4820         * configure.tgt: Add csky support.
4821
4822 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
4823
4824         * python/py-framefilter.c (py_print_frame): Print frame architecture
4825         when printing on an MI output.
4826
4827 2018-08-27  Tom Tromey  <tom@tromey.com>
4828
4829         PR build/23087:
4830         * configure: Rebuild.
4831         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
4832
4833 2018-08-27  Tom Tromey  <tom@tromey.com>
4834
4835         * aarch64-linux-tdep.c
4836         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
4837         casts to int.
4838
4839 2018-08-27  Tom Tromey  <tom@tromey.com>
4840
4841         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
4842         unsigned.
4843         (ppc64_standard_linkage1, ppc64_standard_linkage2)
4844         (ppc64_standard_linkage3, ppc64_standard_linkage4)
4845         (ppc64_standard_linkage5, ppc64_standard_linkage6)
4846         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
4847         unsigned.
4848
4849 2018-08-27  Tom Tromey  <tom@tromey.com>
4850
4851         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
4852         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
4853
4854 2018-08-27  Tom Tromey  <tom@tromey.com>
4855
4856         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
4857         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
4858         ULONGEST_MAX.
4859         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
4860         ULONGEST_MAX.
4861         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
4862         ULONGEST_MAX.
4863         * sparc-linux-tdep.c (sparc32_linux_sigframe)
4864         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
4865         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
4866         ULONGEST_MAX.
4867         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
4868         (ppc64_linux_sigaction_tramp_frame)
4869         (ppc32_linux_sighandler_tramp_frame)
4870         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4871         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
4872         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
4873         * mn10300-linux-tdep.c (am33_linux_sigframe)
4874         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
4875         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
4876         * mips-linux-tdep.c (mips_linux_o32_sigframe)
4877         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
4878         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
4879         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
4880         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
4881         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
4882         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
4883         * microblaze-linux-tdep.c
4884         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4885         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
4886         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
4887         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
4888         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
4889         * common/common-types.h (ULONGEST_MAX): New define.
4890         (CORE_ADDR_MAX): Fix formatting.
4891         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
4892         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
4893         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
4894         (arm_linux_rt_sigreturn_tramp_frame)
4895         (arm_eabi_linux_sigreturn_tramp_frame)
4896         (arm_eabi_linux_rt_sigreturn_tramp_frame)
4897         (thumb2_eabi_linux_sigreturn_tramp_frame)
4898         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
4899         (arm_linux_restart_syscall_tramp_frame)
4900         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
4901         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
4902         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
4903         ULONGEST_MAX.
4904         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
4905
4906 2018-08-27  Tom Tromey  <tom@tromey.com>
4907
4908         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
4909         CORE_ADDR_MAX.
4910         * mips-tdep.c (mips_deal_with_atomic_sequence)
4911         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
4912         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
4913         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
4914         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
4915         CORE_ADDR_MAX.
4916         * aarch64-tdep.c (aarch64_software_single_step): Use
4917         CORE_ADDR_MAX.
4918
4919 2018-08-27  Tom Tromey  <tom@tromey.com>
4920
4921         * linespec.c (complete_linespec_component): Add cast to "char".
4922         * completer.c (completion_tracker::build_completion_result): Add
4923         cast to "char".
4924
4925 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4926
4927         * solist.h (struct solist, struct target_so_ops): Fix
4928         indentation.
4929
4930 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4931
4932         * ada-tasks.c (ada_task_info_s): Remove typedef.
4933         (DEF_VEC_O(ada_task_info_s)): Remove.
4934         (struct ada_tasks_inferior_data): Initialize fields.
4935         <task_list>: Make an std::vector.
4936         (get_ada_tasks_inferior_data): Allocate with new.
4937         (ada_get_task_number): Adjust.
4938         (get_task_number_from_id): Likewise.
4939         (valid_task_id): Likewise.
4940         (ada_get_task_info_from_ptid): Likewise.
4941         (iterate_over_live_ada_tasks): Likewise.
4942         (add_ada_task): Likewise.
4943         (read_known_tasks): Likewise.
4944         (ada_build_task_list): Likewise.
4945         (print_ada_task_info): Likewise.
4946         (info_task): Likewise.
4947         (task_command_1): Likewise.
4948
4949 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4950
4951         * ada-lang.c (add_angle_brackets): Return std::string.
4952
4953 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
4954
4955         * python/py-threadevent.c (py_get_event_thread): Initialize
4956         pythread.
4957
4958 2018-08-24  Pedro Alves  <palves@redhat.com>
4959
4960         * python/py-bpevent.c (create_breakpoint_event_object): Use
4961         copy-initialization.
4962         * python/py-continueevent.c (emit_continue_event): Use
4963         copy-initialization.
4964         * python/py-exitedevent.c (create_exited_event_object): Return a
4965         gdbpy_ref<>.
4966         (emit_exited_event): Use copy-initialization.
4967         * python/py-inferior.c (python_new_inferior)
4968         (python_inferior_deleted, add_thread_object): Use
4969         copy-initialization.
4970         * python/py-infevents.c (create_inferior_call_event_object)
4971         (create_register_changed_event_object)
4972         (create_memory_changed_event_object): Return a gdbpy_ref<>.
4973         (emit_inferior_call_event, emit_memory_changed_event)
4974         (emit_register_changed_event): Use copy-initialization.
4975         * python/py-newobjfileevent.c (create_new_objfile_event_object):
4976         Return a gdbpy_ref<>.
4977         (emit_new_objfile_event): Use copy-initialization.
4978         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
4979         (emit_clear_objfiles_event): Use copy-initialization.
4980         * python/py-signalevent.c (create_signal_event_object): Use
4981         copy-initialization.
4982         * python/py-threadevent.c (create_thread_event_object): Use
4983         copy-initialization.
4984
4985 2018-08-24  Pedro Alves  <palves@redhat.com>
4986             Simon Marchi  <simon.marchi@ericsson.com>
4987
4988         PR gdb/23379
4989         * python/py-continueevent.c: Include "gdbthread.h".
4990         (create_continue_event_object): Add intro comment.  Add 'ptid'
4991         parameter.  Use it to find thread to pass to
4992         create_thread_event_object.
4993         (emit_continue_event): Pass PTID down to
4994         create_continue_event_object.
4995         * python/py-event.h (py_get_event_thread): Declare.
4996         (create_thread_event_object): Remove default from 'thread'
4997         parameter.
4998         * python/py-stopevent.c (create_stop_event_object): Use
4999         py_get_event_thread.
5000         * python/py-threadevent.c (get_event_thread): Rename to ...
5001         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
5002         and use it to find the thread.
5003         (create_thread_event_object): Assert that THREAD isn't null.
5004         Don't find the event thread here.
5005
5006 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
5007
5008         * block.h (blockrange, blockranges): New struct declarations.
5009         (struct block): Add new field named `ranges'.
5010         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
5011         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
5012         macros for accessing ranges in struct block.
5013         (make_blockranges): New declaration.
5014         block.c (make_blockranges): New function.
5015         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
5016         for block.
5017         * symtab.h (find_pc_partial_function): Add new parameter `block'.
5018         * blockframe.c (cache_pc_function_block): New static global.
5019         (clear_pc_function_cache): Clear cache_pc_function_block.
5020         (find_pc_partial_function): Move comment to symtab.h.  Add
5021         support for non-contiguous blocks.
5022         * cli/cli-cmds.c (block.h): Include.
5023         (print_disassembly): Handle printing of non-contiguous blocks.
5024         (disassemble_current_function): Likewise.
5025         (disassemble_command): Likewise.
5026
5027         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
5028         BLOCK_START.
5029         * blockframe.c (get_pc_function_start): Likewise.
5030         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
5031         (gcc_symbol_address): Likewise.
5032         * compile/compile-object-run.c (compile_object_run): Likewise.
5033         * compile/compile.c (get_expr_block_and_pc): Likewise.
5034         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
5035         (func_addr_to_tail_call_list): Likewise.
5036         * findvar.c (default_read_var_value): Likewise.
5037         * inline-frame.c (inline_frame_this_id): Likewise.
5038         (skip-inline_frames): Likewise.
5039         * infcmd.c (until_next_command): Likewise.
5040         * linespec.c (convert_linespec_to_sals): Likewise.
5041         * parse.c (parse_exp_in_context_1): Likewise.
5042         * printcmd.c (build_address_symbolic): likewise.
5043         (info_address_command): Likewise.
5044         symtab.c (find_function_start_sal): Likewise.
5045         (skip_prologue_sal): Likewise.
5046         (find_function_alias_target): Likewise.
5047         (find_gnu_ifunc): Likewise.
5048         * stack.c (find_frame_funname): Likewise.
5049         * symtab.c (fixup_symbol_section): Likewise.
5050         (find_function_start_sal): Likewise.
5051         (skip_prologue_sal): Likewsie.
5052         (find_function_alias_target): Likewise.
5053         (find_gnu_ifunc): Likewise.
5054         * tracepoint.c (info_scope_command): Likewise.
5055         * value.c (value_fn_field): Likewise.
5056
5057         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
5058         in place of find_pc_partial_function.
5059         * blockframe.c (find_function_entry_range_from_pc): New function.
5060         * symtab.h (find_function_entry_range_from_pc): Declare and document.
5061         * objfiles.c (objfile_relocate1): Relocate start and end addresses
5062         for each range in a block.
5063
5064
5065 2018-08-23  Xavier Roirand  <roirand@adacore.com>
5066
5067         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
5068         incrementation.
5069
5070 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5071
5072         * solib-svr4.c (read_program_headers_from_bfd): Return
5073         gdb::optional<gdb::byte_vector>.
5074         (svr4_exec_displacement): Adjust.
5075
5076 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5077
5078         * solib-svr4.c (read_program_header): Return
5079         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
5080         (find_program_interpreter): Return
5081         gdb::optional<gdb::byte_vector>.
5082         (scan_dyntag_auxv): Adjust.
5083         (enable_break): Adjust.
5084         (svr4_exec_displacement): Adjust.
5085
5086 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5087
5088         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
5089         * inf-child.c (inf_child_target::terminal_save_inferior): New.
5090
5091 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5092
5093         * guile/scm-string.c (gdbscm_scm_from_printf): Use
5094         string_vprintf.
5095         * guile/scm-utils.c (gdbscm_printf): Likewise.
5096         * serial.c (serial_printf): Likewise.
5097         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
5098
5099 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
5100
5101         * stack.c (print_frame): Print frame architecture when printing on
5102         an MI output.
5103         * NEWS: Mention new "arch" attribute in frame output.
5104
5105 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
5106
5107         * arch/aarch64.h (aarch64_regnum): Update comment.
5108
5109 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
5110
5111         * NEWS: Add SVE to 8.2 section.
5112
5113 2018-08-21  Pedro Alves  <palves@redhat.com>
5114
5115         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
5116         out from gdbscm_parse_function_args.
5117         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
5118         gdbscm_parse_function_args_1.
5119
5120 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
5121
5122         PR gdb/17816
5123         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
5124         operator.
5125
5126 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
5127
5128         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
5129
5130 2018-08-19  Michael Spang  <spang@google.com>
5131
5132         PR gdb/11786
5133         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
5134         for PT_TLS segments.
5135
5136 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
5137
5138         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
5139         dwarf_variable_value.
5140         * dwarf2-frame.c (class dwarf_expr_executor):
5141         Add override for dwarf_variable_value.
5142         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
5143         (class symbol_needs_eval_context): Likewise.
5144         (indirect_synthetic_pointer): Add forward declaration.
5145         (sect_variable_value): New function.
5146         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
5147         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
5148         for DW_OP_GNU_variable_value.
5149
5150 2018-08-16  Tom Tromey  <tom@tromey.com>
5151
5152         * top.c (read_command_file): Update.
5153         (command_line_input): Remove "repeat" argument.
5154         * ada-lang.c (get_selections): Update.
5155         * linespec.c (decode_line_2): Update.
5156         * defs.h (command_line_input): Remove argument.
5157         * cli/cli-script.c (read_next_line): Update.
5158         * python/py-gdb-readline.c: Update.
5159
5160 2018-08-17  Tom Tromey  <tom@tromey.com>
5161
5162         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
5163         command_line_input.
5164
5165 2018-08-15  Tom Tromey  <tom@tromey.com>
5166
5167         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
5168
5169 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
5170
5171         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
5172         If used, use find_pc_partial_function to find address range
5173         to disassemble.
5174         * mi/mi-main.c (mi_cmd_list_features): Report
5175         "data-disassemble-a-option" feature.
5176         * NEWS: Mention new -data-disassemble option -a.
5177
5178 2018-08-13  Tom Tromey  <tom@tromey.com>
5179
5180         * common/common-defs.h (_FORTIFY_SOURCE): Define.
5181
5182 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5183
5184         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
5185         (aarch64_linux_collect_sve_regset): Likewise.
5186         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
5187         * regcache.h (regcache_map_entry_size): New function.
5188
5189 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5190
5191         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
5192         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
5193         (SVE_HEADER_VL_LENGTH): Likewise.
5194         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
5195         (SVE_HEADER_FLAGS_LENGTH): Likewise.
5196         (SVE_HEADER_RESERVED_LENGTH): Likewise.
5197         (SVE_HEADER_SIZE_OFFSET): Likewise.
5198         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
5199         (SVE_HEADER_VL_OFFSET): Likewise.
5200         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
5201         (SVE_HEADER_FLAGS_OFFSET): Likewise.
5202         (SVE_HEADER_RESERVED_OFFSET): Likewise.
5203         (SVE_HEADER_SIZE): Likewise.
5204         (aarch64_linux_core_read_vq): Add function.
5205         (aarch64_linux_core_read_description): Check for SVE section.
5206
5207 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5208
5209         * aarch64-fbsd-tdep.c
5210         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
5211         collect_size.
5212         * aarch64-linux-tdep.c
5213         (aarch64_linux_iterate_over_regset_sections): Likewise.
5214         * alpha-linux-tdep.c
5215         (alpha_linux_iterate_over_regset_sections):
5216         * alpha-nbsd-tdep.c
5217         (alphanbsd_iterate_over_regset_sections): Likewise.
5218         * amd64-fbsd-tdep.c
5219         (amd64fbsd_iterate_over_regset_sections): Likewise.
5220         * amd64-linux-tdep.c
5221         (amd64_linux_iterate_over_regset_sections): Likewise.
5222         * arm-bsd-tdep.c
5223         (armbsd_iterate_over_regset_sections): Likewise.
5224         * arm-fbsd-tdep.c
5225         (arm_fbsd_iterate_over_regset_sections): Likewise.
5226         * arm-linux-tdep.c
5227         (arm_linux_iterate_over_regset_sections): Likewise.
5228         * corelow.c (get_core_registers_cb): Likewise.
5229         (core_target::fetch_registers): Likewise.
5230         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
5231         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
5232         * gdbarch.h (void): Regenerate.
5233         * gdbarch.sh: Add supply_size and collect_size.
5234         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
5235         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
5236         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
5237         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
5238         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
5239         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
5240         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
5241         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
5242         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
5243         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
5244         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
5245         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
5246         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
5247         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
5248         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections):
5249         Likewise.
5250         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
5251         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
5252         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
5253         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
5254         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
5255         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
5256         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections):
5257         Likewise.
5258         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
5259         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
5260         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
5261         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
5262         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
5263         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
5264         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
5265         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
5266
5267 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
5268
5269         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
5270         with string_printf.
5271
5272 2018-08-10  Keith Seitz  <keiths@redhat.com>
5273
5274         * compile/compile-c-support.c (add_code_header, add_code_footer):
5275         Move into policy class.
5276         (c_push_user_expression, pop_user_expression_nop)
5277         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
5278         (compile_program): New host class.
5279         (c_compile_program): New typedef.
5280         (c_compute_porgram): Use c_compile_program.
5281
5282 2018-08-10  Keith Seitz  <keiths@redhat.com>
5283
5284         * compile/compile-internal.h (compile_instance::~compile_instance):
5285         Remove calls to htab_delete.
5286         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
5287         * compile.c (compile_instance::compile_instance): Initialize
5288         htab unique pointers.
5289         (compile_instance::get_cached_type, compile_instance::insert_type)
5290         (compile_instance::error_symbol_once): Update for unique_ptr.
5291
5292 2018-08-10  Keith Seitz  <keiths@redhat.com>
5293
5294         * compile/compile-c-symbols.c (struct symbol_error)
5295         (hash_symbol_error, eq_symbol_error, del_symbol_error)
5296         (compile_instance::insert_symbol_error)
5297         (compile_instance::error_symbol_once): Move to ...
5298         * compile/compile.c: ... here.
5299
5300 2018-08-10  Keith Seitz  <keiths@redhat.com>
5301
5302         * compile/compile-c-support.c (c_get_compile_context): Use `new'
5303         instead of `new_compile_instance'.
5304         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
5305         Update description.
5306         If the symbol error map is not initialized, create it.
5307         (generate_c_for_for_one_symbol): Do not check/initialize
5308         the symbol error map.
5309         * compile/compile-c-types.c (compile_c_instance): Make a class.
5310         Update all callers.
5311         (compile_instance::compile_instance): Initialize the type cache.
5312         (get_cached_type): New function.
5313         (insert_type): Update description.
5314         (compile_c_instance::m_default_cflags): Define.
5315         (convert_type): Update description.  Use get_cached_type.
5316         (delete_instance): Moved to destructor.
5317         (new_compile_instance): Moved to constructor.
5318         * compile/compile-c.h (compile_c_instance): Make class inheriting
5319         from compile_instance.
5320         <base>: Remove field.
5321         <type_map, symbol_err_map>: Move to base class.
5322         <c_plugin>: Rename to `m_plugin' and remove pointer type.
5323         * compile/compile-internal.h (compile_instance): Make class.
5324         <type_map_t, symbol_err_map_t>: Define.
5325         <fe>: Rename to `m_gcc_fe'.
5326         <scope, block, gcc_target_options>: Add `m_' prefix.
5327         <m_type_map, m_symbol_err_map>: New fields, moved from
5328         compile_c_instance.
5329         <destroy>: Remove.
5330         (convert_type, new_compile_instance): Remove.
5331         * compile/compile.c (cleanup_compile_instance): Remove.
5332         (compile_to_object): Use unique_ptr to eliminate cleanups.
5333         (compile_instance::set_print_callback, compile_instance::version)
5334         (compile_instance::set_verbose)
5335         (compile_instance::set_driver_filename)
5336         (compile_instance::set_triplet_regexp)
5337         (compile_instance::set_arguments)
5338         (compile_instance::set_source_file)
5339         (compile_instance::compile): Define.
5340
5341 2018-08-10  Keith Seitz  <keiths@redhat.com>
5342
5343         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
5344         * compile/compile-c-types.c: Define GCC_METHODN macros and include
5345         gcc-c-fe.def to define C plugin.
5346         (delete_instance): Delete `c_plugin'.
5347         (new_compile_instance): Initialize `c_plugin'.
5348         * compile/compile-c.h: Include gcc_c_plugin.h.
5349         (struct compile_c_instance) <c_plugin>: New member.
5350         * gcc-c-plugin.h: New file.
5351         Update all callers with API change.
5352
5353 2018-08-10  Keith Seitz  <keiths@redhat.com>
5354
5355         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
5356         (HFILES_NO_SRCDIR): ... to here.
5357         Add compile-internal.h and compile-c.h.
5358         * compile/compile-c-support.c: Include compile-c.h.
5359         * compile/compile-c-symbols.c: Include compile-c.h.
5360         (generate_c_for_variable_locations): Update comment.
5361         * compile/compile-c-types.c: Include compile-c.h.
5362         * compile/compile-c.h: New file -- moved C language declarations
5363         from other files here.
5364         * compile/compile-internal.h: Do not include hashtab.h or
5365         common/enum-flags.h.
5366         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
5367         (gcc_convert_symbol, gcc_symbol_address)
5368         (generate_c_for_variable_locations, c_get_mode_for_size)
5369         (c_get_range_decl_name): Definitions moved to compile-c.h.
5370         * compile/compile-loc2c.c: Include compile-c.h.
5371
5372 2018-08-10  Keith Seitz  <keiths@redhat.com>
5373
5374         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
5375         (c_symbol_substitution_name): ... this.
5376         Update all callers.
5377
5378 2018-08-10  Keith Seitz  <keiths@redhat.com>
5379
5380         * compile/compile-c-support.c (c_compute_program): Use
5381         unique_xmalloc_ptr to eliminate cleanup.
5382         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
5383         Return a unique_xmalloc_ptr and eliminate cleanup.
5384         * compile/compile-internal.h (generate_c_for_variable_locations):
5385         Return unique_xmalloc_ptr and update description.
5386
5387 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
5388
5389         * corelow.c (core_target::get_core_register_section): Rename
5390         min_size to section_min_size.
5391
5392 2018-08-09  Jim Wilson  <jimw@sifive.com>
5393
5394         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
5395         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
5396         * NEWS: Mention new GNU/Linux RISC-V target.
5397         * configure.host: Add riscv*-*-linux*.
5398         * configure.nat: Add riscv*.
5399         * configure.tgt: Add riscv*-*-linux*.
5400         * riscv-linux-nat.c: New file.
5401         * riscv-linux-tdep.c: New file.
5402
5403 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5404
5405         * infrun.c (resume): Make static, add forward declaration.
5406         (proceed): Update header comment.
5407         * infrun.h (resume): Delete declaration.
5408
5409 2018-08-09  Tom Tromey  <tom@tromey.com>
5410
5411         * riscv-tdep.h: Minor formatting fixes.
5412
5413 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
5414
5415         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
5416         * dwarf-index-cache.c (create_dir_and_check): Likewise.
5417         (test_mkdir_recursive): Likewise.
5418         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
5419
5420 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5421
5422         * valarith.c (value_subscripted_rvalue): If an array is not in
5423         memory, and we don't know the upper bound, then we can't know that
5424         the requested element exists or not.
5425
5426 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
5427
5428         * target.c (str_comma_list_concat_elem): Fix typo in comment.
5429         (target_options_to_string): Add comment.
5430
5431 2018-08-08  Tom Tromey  <tom@tromey.com>
5432
5433         * unittests/scoped_mmap-selftests.c: Check result of "write".
5434
5435 2018-08-08  Jim Wilson  <jimw@sifive.com>
5436
5437         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
5438         (decode_register_index_short): New.
5439         (decode_j_type_insn, decode_cj_type_insn): New.
5440         (decode_b_type_insn, decode_cb_type_insn): New.
5441         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
5442         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
5443         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
5444         is_c_sw_insn instead of is_sw_insn.
5445         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
5446         (riscv_software_single_step): New.
5447         * riscv-tdep.h (riscv_software_single_step): Declare.
5448
5449         * riscv-tdep.c (riscv_isa_xlen): Drop static.
5450         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
5451
5452 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
5453
5454         PR gdb/18050:
5455         * target.c (dispose_inferior): Don't dispose of inferiors that are
5456         already killed.
5457
5458 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
5459
5460         * remote.c (remote_target::download_tracepoint): Change char* to
5461         const char*.
5462
5463 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
5464
5465         * target.h (target_options_to_string): Return an std::string.
5466         * target.c (str_comma_list_concat_elem): Return void, use
5467         std::string.
5468         (do_option): Likewise.
5469         (target_options_to_string): Return an std::string.
5470         * linux-nat.c (linux_nat_target::wait): Adjust.
5471         * target-debug.h (target_debug_print_options): Adjust.
5472
5473 2018-08-07  Tom Tromey  <tom@tromey.com>
5474
5475         * Makefile.in (CPPFLAGS): New variable.
5476         (INTERNAL_CPPFLAGS): Use it.
5477
5478 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5479
5480         * NEWS: Mention the index cache.
5481
5482 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5483
5484         * common/pathstuff.h (get_standard_cache_dir): New.
5485         * common/pathstuff.c (get_standard_cache_dir): New.
5486         * build-id.h (build_id_to_string): New.
5487         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
5488         DEBUG_STR_SUFFIX): Move to here.
5489         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
5490         DEBUG_STR_SUFFIX): Move from there.
5491         (write_psymtabs_to_index): Make non-static, add basename
5492         parameter.  Write to temporary files, rename when done.
5493         (save_gdb_index_command): Adjust call to
5494         write_psymtabs_to_index.
5495         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
5496         field.
5497         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
5498         (get_gdb_index_contents_from_cache): New.
5499         (get_gdb_index_contents_from_cache_dwz): New.
5500         (dwarf2_initialize_objfile): Read index from cache.
5501         (dwarf2_build_psymtabs): Save to index.
5502         * dwarf-index-cache.h: New file.
5503         * dwarf-index-cache.c: New file.
5504         * dwarf-index-write.h: New file.
5505
5506 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5507
5508         * gnulib/aclocal.m4: Re-generate.
5509         * gnulib/config.in: Re-generate.
5510         * gnulib/configure: Re-generate.
5511         * gnulib/import/Makefile.am: Re-generate.
5512         * gnulib/import/Makefile.in: Re-generate.
5513         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
5514         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5515         * gnulib/import/m4/mkdir.m4: New file.
5516         * gnulib/import/mkdir.c: New file.
5517         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
5518         module.
5519
5520 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5521
5522         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
5523         * common/scoped_mmap.c: New file.
5524         * common/scoped_mmap.h (destroy): New method.
5525         (~scoped_mmap, reset): Use destroy.
5526         (scoped_mmap): New move constructor.
5527         (mmap_file): New declaration.
5528         * unittests/scoped_mmap-selftests.c (test_normal,
5529         test_invalid_filename, run_tests): New functions.
5530         (_initialize_scoped_mmap_selftests): Register selftest.
5531
5532 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5533
5534         * dwarf2read.c (read_gdb_index_from_section): Rename to...
5535         (read_gdb_index_from_buffer): ... this.  Remove section
5536         parameter, add buffer parameter.
5537         (get_gdb_index_contents_ftype,
5538         get_gdb_index_contents_dwz_ftype): New typedefs.
5539         (dwarf2_read_gdb_index): Add callback parameters to get the
5540         index contents.
5541         (get_gdb_index_contents_from_section): New.
5542         (dwarf2_initialize_objfile): Update call to
5543         dwarf2_read_gdb_index.
5544
5545 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5546
5547         * common/filestuff.h (gdb_fopen_cloexec): New overload.
5548         (gdb_open_cloexec): Likewise.
5549         * nat/linux-osdata.c (command_from_pid): Use string_printf.
5550         (commandline_from_pid): Likewise.
5551         (linux_xfer_osdata_threads): Likewise.
5552         (linux_xfer_osdata_fds): Likewise.
5553         * ada-lang.c (is_package_name): Likewise.
5554         * auxv.c (procfs_xfer_auxv): Likewise.
5555         * breakpoint.c (print_one_breakpoint_location): Use
5556         uiout::field_fmt.
5557         (print_one_catch_solib): Use string_printf.
5558         * coff-pe-read.c (add_pe_exported_sym): Likewise.
5559         (add_pe_forwarded_sym): Likewise.
5560         * dwarf2read.c (create_type_unit_group): Likewise.
5561         (build_error_marker_type): Likewise.
5562         * infcall.c (get_function_name): Likewise.
5563         * valprint.c (print_converted_chars_to_obstack): Likewise.
5564         * xtensa-tdep.c (xtensa_register_type): Likewise.
5565
5566 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
5567
5568         * remote.c (remote_target::download_tracepoint): Fix format
5569         string errors.
5570
5571 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5572
5573         * tracefile.c: Include common/byte-vector.h.
5574         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
5575         with trace_regblock_size if needed.  Update uses of buf.
5576
5577 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5578
5579         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
5580         std::vector<unsigned char>.
5581         * tracepoint.c (collection_list::collection_list): Remove
5582         m_regs_mask initializer from initializer list.  Resize
5583         m_regs_mask using the largest remote register number.
5584         (collection_list::add_remote_register): Remove size check on
5585         m_regs_mask.  Use at to access element.
5586         (collection_list::stringify): Change type of temp_buf to
5587         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
5588         stringify the register mask.  Use pack_hex_byte for the register
5589         mask.
5590
5591 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5592
5593         * tracepoint.h (class collection_list) <add_register>: Remove.
5594         <add_remote_register, add_ax_registers, add_local_register>:
5595         Declare.
5596         <add_memrange>: Add scope parameter.
5597         * tracepoint.c (encode_actions_1): Likewise.
5598         (collection_list::add_register): Rename to ...
5599         (collection_list::add_remote_register): ... this.  Update
5600         comment.
5601         (collection_list::add_ax_registers, add_local_register): New
5602         methods.
5603         (collection_list::add_memrange): Add scope parameter.  Call
5604         add_local_register instead of add_register.
5605         (finalize_tracepoint_aexpr): New function.
5606         (collection_list::collect_symbol): Update calls to add_memrange.
5607         Call add_local_register instead of add_register.  Call
5608         add_ax_registers.  Call finalize_tracepoint_aexpr.
5609         (encode_actions_1): Get remote regnos for $reg action.  Call
5610         add_remote_register, add_ax_registers, and add_local_register.
5611         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
5612         (validate_actionline): Call finalize_tracepoint_aexpr.
5613
5614 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5615
5616         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
5617         Replace array buf with gdb::char_vector buf, of size
5618         get_remote_packet_size ().  Replace references to buf and
5619         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
5620         and xsnprintf with snprintf.  Raise errors if the buffer is too
5621         small.
5622
5623 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5624
5625         * remote.c (remote_target::download_tracepoint): Fix the has_more
5626         predicate in the QTDP action list iteration.
5627
5628 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5629
5630         * remote.c (remote_target::download_tracepoint): Fix indentation
5631         in for block.
5632
5633 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5634
5635         * proc-api.c (_initialize_proc_api): Remove c, unused.
5636         * procfs.c (procfs_init_inferior): Remove signals, unused.
5637         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
5638         unused.
5639
5640 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
5641             Andrew Burgess  <andrew.burgess@embecosm.com>
5642
5643         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
5644         'W_STOPCODE (0)' as this could be ambiguous.
5645
5646 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
5647
5648         * ser-tcp.c (net_open): Fix thinko when deciding whether to
5649         disable TCP's Nagle algorithm (use "ai_protocol" instead of
5650         "ai_socktype").
5651
5652 2018-08-02  Tom Tromey  <tom@tromey.com>
5653
5654         PR symtab/16842.
5655         * dwarf2read.c (read_func_scope): Set symtab on template parameter
5656         symbols.
5657         (process_structure_scope): Likewise.
5658
5659 2018-08-02  Xavier Roirand  <roirand@adacore.com>
5660
5661         PR gdb/22629:
5662         * darwin-nat.c (darwin_kill_inferior): Fix handling of
5663         kill inferior.
5664
5665 2018-08-02  Tom Tromey  <tom@tromey.com>
5666
5667         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
5668         (darwin_suspend_inferior, darwin_resume_inferior)
5669         (darwin_decode_notify_message, darwin_resume_inferior_threads)
5670         (darwin_check_new_threads): Check result of get_darwin_inferior.
5671
5672 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
5673
5674         GDB 8.1.1 released.
5675
5676 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
5677
5678         * varobj.c (varobj_get_path_expr_parent): Report an error if
5679         parent is a dynamic varobj.
5680
5681 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5682
5683         * gnulib/aclocal.m4: Re-generate.
5684         * gnulib/config.in: Re-generate.
5685         * gnulib/configure: Re-generate.
5686         * gnulib/import/Makefile.in: Re-generate.
5687         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5688         * gnulib/import/m4/onceonly.m4: Re-generate.
5689
5690 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5691
5692         * target-descriptions.c (struct xml_test_tdesc): New.
5693         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
5694         (record_xml_tdesc): Update.
5695         (maintenance_check_xml_descriptions): Update.
5696         * target-descriptions.h (record_xml_tdesc): Update comment.
5697
5698 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
5699
5700         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
5701         checking array bounds are defined.
5702
5703 2018-07-30  Tom Tromey  <tom@tromey.com>
5704
5705         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
5706         irreflexivity violation.
5707
5708 2018-07-30  Tom Tromey  <tom@tromey.com>
5709
5710         * cli/cli-decode.c (lookup_cmd): Remove lint code.
5711         * value.c (unpack_long): Remove lint code.
5712         * valops.c (value_ind): Remove lint code.
5713         * valarith.c (value_x_binop, value_x_unop, value_equal)
5714         (value_pos): Remove lint code.
5715
5716 2018-07-28  Tom de Vries  <tdevries@suse.de>
5717
5718         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
5719         with undefined upper bound as <optimized out>.
5720
5721 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
5722
5723         * gcore.in: Rename variable "name" to "prefix".  Expand
5724         "usage" text.
5725
5726 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
5727
5728         * windows-nat.c (windows_nat_target::create_inferior): Update to
5729         call close() in global namespace.
5730
5731 2018-07-26  Tom Tromey  <tom@tromey.com>
5732
5733         * dwarf-index-write.c (add_address_entry): Don't add objfile
5734         offsets.
5735         * dbxread.c (find_stab_function): Rename from
5736         find_stab_function_addr.  Return a bound_minimal_symbol.
5737         (read_dbx_symtab): Use raw_text_low, raw_text_high.
5738         Don't add objfile offsets.
5739         (end_psymtab): Use raw_text_low, raw_text_high,
5740         MSYMBOL_VALUE_RAW_ADDRESS.
5741         (read_ofile_symtab): Update.
5742         (process_one_symbol): Update.
5743         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
5744         offsets.
5745         (dw2_relocate): Remove.
5746         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
5747         searching addrmap.
5748         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
5749         Update.
5750         (process_psymtab_comp_unit_reader, add_partial_symbol)
5751         (add_partial_subprogram, dwarf2_ranges_read): Update.
5752         (load_partial_dies): Update.
5753         (add_address_entry): Don't add objfile offsets.
5754         (dwarf2_build_include_psymtabs): Update.
5755         (create_addrmap_from_aranges): Don't add objfile offsets.
5756         (dw2_find_pc_sect_compunit_symtab): Update.
5757         * mdebugread.c (parse_symbol): Don't add objfile offsets.
5758         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
5759         Update.
5760         (parse_partial_symbols): Don't add objfile offsets.  Use
5761         raw_text_low, raw_text_high.  Update.
5762         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
5763         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
5764         or call 'relocate' quick function.  Clear psymbol_map.
5765         * psympriv.h (struct partial_symbol) <address>: Add section
5766         offset.
5767         <set_unrelocated_address>: Rename from set_address.
5768         <raw_text_low, raw_text_high>: New methods.
5769         <text_low, text_high>: Add objfile parameter.
5770         (add_psymbol_to_bcache): Add 'section' parameter.  Call
5771         set_unrelocated_address.
5772         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5773         (find_pc_psymbol): Update.
5774         (fixup_psymbol_section, relocate_psymtabs): Remove.
5775         (dump_psymtab, psym_functions): Update.
5776         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
5777         parameter.
5778         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
5779         (start_psymtab_common): Update.
5780         * symfile-debug.c (debug_qf_relocate): Remove.
5781         (debug_sym_quick_functions): Update.
5782         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
5783         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
5784         Update.
5785
5786 2018-07-26  Tom Tromey  <tromey@redhat.com>
5787
5788         * dbxread.c (end_psymtab): Use text_high_valid and
5789         text_low_valid.
5790         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
5791         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
5792         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5793         Update comment.
5794         <text_low_valid, text_high_valid>: New fields.
5795         <set_text_low, set_text_high>: Update.
5796         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
5797
5798 2018-07-26  Tom Tromey  <tom@tromey.com>
5799
5800         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
5801         Update.
5802         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
5803         textlow and texthigh fields.
5804         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
5805         Update.
5806         * mdebugread.c (parse_lines, parse_partial_symbols)
5807         (psymtab_to_symtab_1): Update.
5808         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5809         Rename fields.  Update comment.  Now private.
5810         <text_low, text_high, set_text_low, set_text_high>: New methods.
5811         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5812         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
5813         (start_psymtab_common, maintenance_info_psymtabs)
5814         (maintenance_check_psymtabs): Update.
5815         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
5816         texthigh fields.
5817         (scan_xcoff_symtab): Update.
5818
5819 2018-07-26  Tom Tromey  <tromey@redhat.com>
5820
5821         * psympriv.h (struct partial_symbol) <unrelocated_address,
5822         address, set_address>: New methods.
5823         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
5824         (fixup_psymbol_section, relocate_psymtabs): Update.
5825         (print_partial_symbols): Add 'objfile' parameter.  Update.
5826         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
5827         Update.
5828
5829 2018-07-26  Tom Tromey  <tom@tromey.com>
5830
5831         * dwarf-index-write.c (write_psymbols, debug_names::insert)
5832         (debug_names::write_psymbols): Update.
5833         * psympriv.h (struct partial_symbol): Derive from
5834         general_symbol_info.
5835         <obj_section>: New method.
5836         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
5837         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5838         (find_pc_sect_psymbol, fixup_psymbol_section)
5839         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
5840         (print_partial_symbols, recursively_search_psymtabs)
5841         (compare_psymbols, psymbol_hash, psymbol_compare)
5842         (add_psymbol_to_bcache, maintenance_check_psymtabs)
5843         (psymbol_name_matches, psym_fill_psymbol_map): Update.
5844
5845 2018-07-26  Tom Tromey  <tromey@redhat.com>
5846
5847         * dbxread.c (end_psymtab): Remove dead code.
5848
5849 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
5850
5851         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
5852         DWARF unwinders are disabled.
5853         * dwarf2-frame.c: Add dwarf2read.h include.
5854         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
5855         disabled.
5856         (dwarf2_frame_unwinders_enabled_p): Define.
5857         (show_dwarf_unwinders_enabled_p): New function.
5858         (_initialize_dwarf2_frame): Register switch to control DWARF
5859         unwinder use.
5860         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
5861         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
5862         (show_dwarf_cmdlist): Remove static keyword.
5863         * dwarf2read.h (set_dwarf_cmdlist): Declare.
5864         (show_dwarf_cmdlist): Declare.
5865         * NEWS: Document new feature.
5866
5867 2018-07-26  Tom de Vries  <tdevries@suse.de>
5868
5869         PR breakpoints/23366
5870         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
5871
5872 2018-07-26  Tom de Vries  <tdevries@suse.de>
5873
5874         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
5875         DW_AT_count can't be translated to a dynamic prop.
5876
5877 2018-07-25  Tom de Vries  <tdevries@suse.de>
5878
5879         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
5880         try/catch.
5881
5882 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
5883
5884         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
5885
5886 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
5887
5888         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
5889
5890 2018-07-24  Keith Seitz  <keiths@redhat.comt
5891
5892         PR symtab/23010
5893         * dwarf2read.c (dw2_add_symbol_to_list): New function.
5894         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
5895         instead of add_symbol_to_list.
5896         (read_file_scope): Call prepare_one_comp_unit before reading
5897         any other DIEs.
5898
5899 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
5900
5901         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
5902
5903 2018-07-24  Tom Tromey  <tom@tromey.com>
5904
5905         * utils.c (malloc, realloc, free): Don't declare.
5906         * configure, config.in: Rebuild.
5907         * configure.ac: Don't check for declarations of free, malloc, or
5908         realloc.
5909
5910 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5911
5912         * aarch64-linux-nat.c
5913         (aarch64_linux_nat_target::stopped_data_address): Remove unused
5914         variable.
5915         * arm-linux-nat.c (fetch_regs): Likewise.
5916         (store_regs): Likewise.
5917         (fetch_vfp_regs): Likewise.
5918         (store_vfp_regs): Likewise.
5919         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
5920         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
5921         (arm_linux_nat_target::insert_watchpoint): Likewise.
5922         (arm_linux_nat_target::remove_watchpoint): Likewise.
5923         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
5924         Likewise.
5925         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
5926         Likewise.
5927         * ppc-linux-nat.c (fetch_register): Likewise.
5928         (fetch_all_gp_regs): Likewise.
5929         (fetch_ppc_registers): Likewise.
5930         (store_all_gp_regs): Likewise.
5931         (store_ppc_registers): Likewise.
5932         (hwdebug_insert_point): Likewise.
5933         (can_use_watchpoint_cond_accel): Likewise.
5934         * remote-sim.c (gdb_os_write_stdout): Likewise.
5935
5936 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5937             Tom Tromey  <tom@tromey.com>
5938
5939         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
5940         test for it.
5941         * configure: Rebuild.
5942
5943 2018-07-22  Tom Tromey  <tom@tromey.com>
5944
5945         * regformats/regdat.sh: Define xmltarget_${name} inside
5946         #ifndef IN_PROCESS_AGENT.
5947
5948 2018-07-22  Tom Tromey  <tom@tromey.com>
5949
5950         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
5951
5952 2018-07-22  Tom Tromey  <tom@tromey.com>
5953
5954         * symfile.c (reread_symbols): Notify iter, not objfile.
5955
5956 2018-07-22  Tom Tromey  <tom@tromey.com>
5957
5958         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
5959         Use arch_ops.
5960         (ravenscar_thread_target::prepare_to_store): Likewise.
5961
5962 2018-07-22  Tom Tromey  <tom@tromey.com>
5963
5964         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
5965         unused variable.  Call value_fetch_lazy when needed.
5966         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
5967         Remove unused variable.  Call value_fetch_lazy when needed.
5968
5969 2018-07-22  Tom Tromey  <tom@tromey.com>
5970
5971         * m32c-tdep.c (mark_dma): Return void.
5972         (make_regs): Remove unused declarations.
5973
5974 2018-07-22  Tom Tromey  <tom@tromey.com>
5975
5976         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
5977         cmdscm_get_valid_command_smob_arg_unsafe for effect.
5978         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
5979         bkscm_get_valid_block_smob_arg_unsafe for effect.
5980
5981 2018-07-22  Tom Tromey  <tom@tromey.com>
5982
5983         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
5984         value_type.
5985
5986 2018-07-22  Tom Tromey  <tom@tromey.com>
5987
5988         * windows-nat.c (saved_context): Conditionally define.
5989         * remote.c (remote_target::remote_btrace_maybe_reopen):
5990         Conditionally declare "warned".
5991         * inflow.c (sigquit_ours): Conditionally define.
5992         (new_tty): Move "tty" declaration inside #if.
5993         * guile/guile.c (guile_datadir): Conditionally define.
5994         * charset.c (set_be_le_names): Move some declarations inside #if.
5995         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
5996         #if.
5997         (parse_xml_btrace_conf): Likewise.
5998
5999 2018-07-22  Tom Tromey  <tom@tromey.com>
6000
6001         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
6002
6003 2018-07-22  Tom Tromey  <tom@tromey.com>
6004
6005         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
6006         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
6007         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
6008         * buildsym-legacy.c (get_macro_table): Remove unused variable.
6009         * stack.c (frame_apply_level_command): Remove unused variable.
6010         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
6011         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
6012         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
6013         unused variable.
6014         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
6015         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
6016         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
6017         variable.
6018         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
6019         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
6020         variable.
6021         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
6022         Remove unused variable.
6023         * cli/cli-script.c (recurse_read_control_structure): Remove unused
6024         variable.
6025         * common/tdesc.c (print_xml_feature::visit): Remove unused
6026         variable.
6027         * compile/compile-object-load.c (store_regs): Remove unused
6028         variables.
6029         * complaints.c (clear_complaints): Remove unused variable.
6030         * corelow.c (core_target_open): Remove unused variable.
6031         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
6032         variable.
6033         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
6034         variable.
6035         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
6036         variable.
6037         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
6038         variable.
6039         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
6040         variable.
6041         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
6042         variable.
6043         * ia64-tdep.c (examine_prologue): Remove unused variable.
6044         * infcall.c (run_inferior_call): Remove unused variable.
6045         * inferior.c (exit_inferior): Remove unused variable.
6046         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
6047         * linespec.c (decode_line_2): Remove unused variable.
6048         * linux-nat.c (super_close): Remove.
6049         * linux-tdep.c (linux_info_proc): Remove unused variable.
6050         * mi/mi-main.c (mi_execute_command): Remove unused variable.
6051         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
6052         Remove unused variable.
6053         * parse.c (find_minsym_type_and_address): Remove unused variable.
6054         * printcmd.c (info_symbol_command, printf_floating): Remove unused
6055         variable.
6056         * python/py-breakpoint.c (bppy_set_commands): Remove unused
6057         variable.
6058         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
6059         variables.
6060         * record-btrace.c (record_btrace_target::store_registers): Remove
6061         unused variable.
6062         (cmd_show_record_btrace_cpu): Remove unused variable.
6063         * riscv-tdep.c (riscv_register_reggroup_p)
6064         (riscv_push_dummy_call, riscv_return_value): Remove unused
6065         variable.
6066         * rust-exp.y (literal): Remove unused variable.
6067         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
6068         unused variable.
6069         <STRUCTOP_ANONYMOUS>: Likewise.
6070         * s390-linux-tdep.c (s390_linux_init_abi_31)
6071         (s390_linux_init_abi_64): Remove unused variable.
6072         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
6073         (file_select_thread, net_windows_open, _initialize_ser_windows):
6074         Remove unused variables.
6075         * symtab.c (find_pc_sect_line): Remove unused variable.
6076         * target-memory.c (compute_garbled_blocks): Remove unused
6077         variable.
6078         (target_write_memory_blocks): Remove unused variable.
6079         * target.c (target_stack::unpush): Remove unused variables.
6080         * tracepoint.c (start_tracing, all_tracepoint_actions)
6081         (merge_uploaded_trace_state_variables)
6082         (print_one_static_tracepoint_marker): Remove unused variable.
6083         * unittests/basic_string_view/element_access/char/1.cc (test01):
6084         Remove unused variable.
6085         * windows-nat.c (windows_continue, windows_add_all_dlls)
6086         (do_initial_windows_stuff, windows_nat_target::create_inferior):
6087         Remove unused variables.
6088
6089 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
6090
6091         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
6092         attr_profile in HAVE_ELF.
6093         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
6094         HAVE_ELF.
6095
6096 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
6097
6098         * frame.c (frame_register_unwind): Change parameter name.
6099         (frame_unwind_register): Likewise.
6100         (frame_unwind_register_value): Likewise.
6101         (frame_unwind_register_signed): Likewise.
6102         (frame_unwind_register_unsigned): Likewise.
6103         * frame.h (frame_register_unwind): Likewise.
6104         (frame_unwind_register): Likewise.
6105         (frame_unwind_register_value): Likewise.
6106         (frame_unwind_register_signed): Likewise.
6107         (frame_unwind_register_unsigned): Likewise.
6108         (frame_unwind_arch): Likewise.
6109
6110 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
6111
6112         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
6113         ISA maintenance.
6114
6115 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
6116
6117         * mips-linux-nat.c (mips_linux_nat_target::read_description):
6118         Call `get_ptrace_pid' rather than extracting the ptrace PID by
6119         hand.
6120
6121 2018-07-20  Keith Seitz  <keiths@redhat.com>
6122
6123         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
6124         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
6125         m_compunit_symtab, m_language>: Add "m_" prefix.
6126         Update all uses.
6127         * buildsym.c: Update all uses.
6128
6129 2018-07-20  Tom Tromey  <tom@tromey.com>
6130
6131         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
6132         * buildsym.h (record_line_ftype): Remove typedef.
6133
6134 2018-07-20  Tom Tromey  <tom@tromey.com>
6135
6136         * buildsym-legacy.h (augment_type_symtab): Don't declare.
6137         (end_expandable_symtab): Likewise.
6138         (end_symtab_get_static_block): Likewise.
6139         (end_symtab_from_static_block): Likewise.
6140         * buildsym-legacy.c (augment_type_symtab): Remove.
6141         (end_expandable_symtab): Remove.
6142         (end_symtab_get_static_block): Remove.
6143         (end_symtab_from_static_block): Remove.
6144
6145 2018-07-20  Tom Tromey  <tom@tromey.com>
6146
6147         * dwarf2read.c: Include buildsym.h.
6148         (struct dwarf2_cu) <builder>: New method.
6149         (fixup_go_packaging): Update.
6150         (process_full_comp_unit, process_full_type_unit): Update.  Don't
6151         use scoped_free_pendings.
6152         (using_directives): Add "cu" parameter, remove "language".
6153         (read_import_statement, setup_type_unit_groups, )
6154         (read_func_scope, read_lexical_block_scope)
6155         (dwarf2_record_block_ranges, read_namespace): Update.
6156         (lnp_state_machine::lnp_state_machine): Add cu parameter.
6157         (lnp_state_machine::handle_end_sequence): Update.
6158         (class lnp_state_machine) <m_cu>: New member.
6159         <m_record_line_callback>: Remove.
6160         <m_currently_recording_lines>: New member.
6161         (lnp_state_machine::handle_set_file): Update.
6162         (noop_record_line): Remove.
6163         (dwarf_record_line_p): Add cu parameter.
6164         (dwarf_record_line_1, dwarf_finish_line): Likewise.
6165         (lnp_state_machine::record_line)
6166         (lnp_state_machine::lnp_state_machine)
6167         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
6168         (dwarf_decode_lines): Update.
6169         (dwarf2_start_subfile): Add cu parameter.
6170         (dwarf2_start_symtab, new_symbol): Update.
6171         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
6172         Remove dwarf2_per_objfile parameter.
6173         (dwarf_decode_macros): Update.
6174
6175 2018-07-20  Tom Tromey  <tom@tromey.com>
6176
6177         * stabsread.c (define_symbol): Update.
6178         * buildsym-legacy.h (get_buildsym_compunit): Declare.
6179         * dwarf2read.c (new_symbol): Update.
6180         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
6181         * cp-namespace.c: Include buildsym.h.
6182         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
6183         * buildsym-legacy.c (get_buildsym_compunit): New function.
6184
6185 2018-07-20  Tom Tromey  <tom@tromey.com>
6186
6187         * xcoffread.c: Include buildsym-legacy.h.
6188         * windows-nat.c: Include buildsym-legacy.h.
6189         * stabsread.c: Include buildsym-legacy.h.
6190         * mdebugread.c: Include buildsym-legacy.h.
6191         * buildsym-legacy.h: New file.
6192         * buildsym-legacy.c: New file, from buildsym.c.
6193         * go32-nat.c: Include buildsym-legacy.h.
6194         * dwarf2read.c: Include buildsym-legacy.h.
6195         * dbxread.c: Include buildsym-legacy.h.
6196         * cp-namespace.c: Include buildsym-legacy.h.
6197         * coffread.c: Include buildsym-legacy.h.
6198         * buildsym.h: Move some contents to buildsym-legacy.h.
6199         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
6200         buildsym-legacy.c.
6201         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
6202
6203 2018-07-20  Tom Tromey  <tom@tromey.com>
6204
6205         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
6206         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
6207         (buildsym_compunit::buildsym_compunit)
6208         (buildsym_compunit::~buildsym_compunit)
6209         (buildsym_compunit::get_macro_table): Define.
6210
6211 2018-07-20  Tom Tromey  <tom@tromey.com>
6212
6213         * buildsym.c (reset_symtab_globals): Remove.
6214         (buildsym_compunit::end_symtab_from_static_block): Update.
6215         (buildsym_compunit::augment_type_symtab): Update.
6216         (end_symtab_from_static_block): Call free_buildsym_compunit.
6217         (augment_type_symtab, end_symtab, end_expandable_symtab):
6218         Likewise.
6219
6220 2018-07-20  Tom Tromey  <tom@tromey.com>
6221
6222         * arch-utils.c: Do not include buildsym.h.
6223         * mipsread.c: Do not include buildsym.h.
6224         * machoread.c: Do not include buildsym.h.
6225         * elfread.c: Do not include buildsym.h.
6226
6227 2018-07-20  Tom Tromey  <tom@tromey.com>
6228
6229         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
6230         initialization.
6231         (buildsym_compunit): Add new constructor.
6232         (struct buildsym_compunit) <get_last_source_file, finish_block,
6233         record_block_range, start_subfile, patch_subfile_names,
6234         push_subfile, pop_subfile, record_line, get_compunit_symtab,
6235         set_last_source_start_addr, get_last_source_start_addr,
6236         get_local_using_directives, set_local_using_directives,
6237         get_global_using_directives, outermost_context_p,
6238         get_current_context_stack, get_context_stack_depth,
6239         get_current_subfile, get_local_symbols, get_file_symbols,
6240         get_global_symbols, record_debugformat, record_producer,
6241         push_context, pop_context, end_symtab_get_static_block,
6242         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
6243         New public methods.
6244         <record_pending_block, finish_block_internal, make_blockvector,
6245         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
6246         private methods.
6247         Update all users.
6248
6249 2018-05-22  Tom Tromey  <tom@tromey.com>
6250
6251         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
6252         parameter.
6253         (finish_block_internal): Update.
6254
6255 2018-07-20  Tom Tromey  <tom@tromey.com>
6256
6257         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
6258         parameter.
6259         (finish_block_internal): Update.
6260
6261 2018-07-20  Tom Tromey  <tom@tromey.com>
6262
6263         * buildsym.h (EXTERN): Don't define or undef.
6264         * buildsym.c (EXTERN): Don't define.
6265
6266 2018-07-20  Tom Tromey  <tom@tromey.com>
6267
6268         * buildsym.c: Remove TODO comment.
6269
6270 2018-07-20  Tom Tromey  <tom@tromey.com>
6271
6272         * coffread.c (coff_symtab_read): Update.
6273         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
6274         (xcoff_new_init): Update.
6275         * mipsread.c (mipscoff_new_init): Update.
6276         * mdebugread.c (mdebug_build_psymtabs): Update.
6277         * elfread.c (elf_new_init): Update.
6278         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
6279         Update.
6280         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
6281         (coffstab_build_psymtabs, elfstab_build_psymtabs)
6282         (stabsect_build_psymtabs): Update.
6283         * buildsym.h (buildsym_init): Don't declare.
6284         * buildsym.c: Update comment.
6285         (prepare_for_building): Remove.
6286         (start_symtab, restart_symtab): Update.
6287         (reset_symtab_globals): Update comment.
6288         (buildsym_init): Remove.
6289
6290 2018-07-20  Tom Tromey  <tom@tromey.com>
6291
6292         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
6293         * stabsread.c (patch_block_stabs, define_symbol, read_type)
6294         (read_enum_type, common_block_start, common_block_end)
6295         (cleanup_undefined_types_1, finish_global_stabs): Update.
6296         * mdebugread.c (psymtab_to_symtab_1): Update.
6297         * dwarf2read.c (fixup_go_packaging, read_func_scope)
6298         (read_lexical_block_scope, new_symbol): Update.
6299         * dbxread.c (process_one_symbol): Update.
6300         * coffread.c (coff_symtab_read, process_coff_symbol)
6301         (coff_read_enum_type): Update.
6302         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
6303         declare.
6304         (get_local_symbols, get_file_symbols, get_global_symbols): New
6305         functions.
6306         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
6307         m_global_symbols.
6308         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
6309         (~scoped_free_pendings): Update.
6310         (finish_block, prepare_for_building, reset_symtab_globals)
6311         (end_symtab_get_static_block, end_symtab_with_blockvector)
6312         (augment_type_symtab, push_context): Update.
6313         (get_local_symbols, get_file_symbols, get_global_symbols): New
6314         functions.
6315         (buildsym_init): Update.
6316
6317 2018-07-20  Tom Tromey  <tom@tromey.com>
6318
6319         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
6320         (process_full_type_unit): Likewise.
6321         (dwarf2_start_symtab): Set list_in_scope.
6322
6323 2018-07-20  Tom Tromey  <tom@tromey.com>
6324
6325         * dwarf2read.c (process_psymtab_comp_unit_reader)
6326         (build_type_psymtabs_reader): Do not set list_in_scope.
6327
6328 2018-07-20  Tom Tromey  <tom@tromey.com>
6329
6330         * buildsym.c (free_pendings): Remove.
6331         (add_symbol_to_list, scoped_free_pendings)
6332         (finish_block_internal, buildsym_init): Update.
6333
6334 2018-07-20  Tom Tromey  <tom@tromey.com>
6335
6336         * xcoffread.c (read_xcoff_symtab): Update.
6337         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
6338         Update.
6339         * dbxread.c (process_one_symbol): Update.
6340         * coffread.c (coff_symtab_read): Update.
6341         * buildsym.h (finish_block): Update.
6342         * buildsym.c (finish_block): Remove "listhead" argument.
6343         (end_symtab_get_static_block): Update.
6344
6345 2018-07-20  Tom Tromey  <tom@tromey.com>
6346
6347         * buildsym.h (class scoped_free_pendings): Remove constructor.
6348         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
6349         method.
6350         <m_pending_block_obstack, m_pending_blocks>: New members.
6351         (pending_block_obstack, pending_blocks): Remove.
6352         (scoped_free_pendings::scoped_free_pendings): Default.
6353         (~scoped_free_pendings): Update.
6354         (free_pending_blocks): Remove.
6355         (finish_block_internal, record_pending_block, make_blockvector)
6356         (end_symtab_get_static_block, augment_type_symtab, push_context)
6357         (buildsym_init): Update.
6358
6359 2018-07-20  Tom Tromey  <tom@tromey.com>
6360
6361         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
6362         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
6363         members.
6364         (pending_addrmap, pending_addrmap_obstack)
6365         (pending_addrmap_interesting): Remove.
6366         (scoped_free_pendings, record_block_range, make_blockvector)
6367         (prepare_for_building, reset_symtab_globals, buildsym_init):
6368         Update.
6369
6370 2018-07-20  Tom Tromey  <tom@tromey.com>
6371
6372         * xcoffread.c (process_linenos): Update.
6373         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
6374         * mdebugread.c (psymtab_to_symtab_1): Update.
6375         * dwarf2read.c (setup_type_unit_groups)
6376         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
6377         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
6378         * dbxread.c (process_one_symbol): Update.
6379         * coffread.c (coff_symtab_read, enter_linenos)
6380         (process_coff_symbol): Update.
6381         * buildsym.h (current_subfile): Don't declare.
6382         (get_current_subfile): Declare.
6383         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
6384         member.
6385         (start_subfile, free_buildsym_compunit, push_subfile)
6386         (prepare_for_building, start_symtab): Update.
6387         (get_current_subfile): New function.
6388
6389 2018-07-20  Tom Tromey  <tom@tromey.com>
6390
6391         * coffread.c (coff_symtab_read): Update.
6392         * xcoffread.c (read_xcoff_symtab): Update.
6393         * dwarf2read.c (new_symbol): Update.
6394         (read_func_scope, read_lexical_block_scope): Update.
6395         * dbxread.c (process_one_symbol): Update.
6396         * buildsym.h (context_stack, context_stack_depth): Don't declare.
6397         (outermost_context_p): Remove macro.
6398         (outermost_context_p, get_current_context_stack)
6399         (get_context_stack_depth): Declare.
6400         (pop_context): Return struct context_stack.
6401         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
6402         member.
6403         (context_stack_size): Remove.
6404         (INITIAL_CONTEXT_STACK_SIZE): Remove.
6405         (prepare_for_building, end_symtab_get_static_block)
6406         (augment_type_symtab, push_context): Update.
6407         (pop_context): Return struct context_stack.
6408         (outermost_context_p, get_current_context_stack)
6409         (get_context_stack_depth): New functions.
6410         (buildsym_init): Update.
6411
6412 2018-07-20  Tom Tromey  <tom@tromey.com>
6413
6414         * rust-exp.y: Now a pure parser.  Update all rules.
6415         (%union): Move earlier.
6416         (current_parser, work_obstack): Remove globals.
6417         (rust_parser, ~rust_parser): Update.
6418         (class rust_parser) <copy_name, concat3, crate_name, super_name,
6419         lex_character, lex_number, lex_string, lex_identifier,
6420         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
6421         convert_name, convert_params_to_expression,
6422         convert_ast_to_expression, ast_basic_type, ast_operation,
6423         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
6424         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
6425         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
6426         ast_array_type, ast_slice_type, ast_reference_type,
6427         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
6428         (rust_parse): Update.
6429         (rustyyerror, rustyylex): Add parser parameter.
6430         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
6431         (rust_lex_stringish_test, rust_lex_test_sequence)
6432         (rust_lex_test_trailing_dot, rust_lex_test_completion)
6433         (rust_lex_test_push_back, rust_lex_tests): Update.
6434
6435 2018-07-19  Pedro Alves  <palves@redhat.com>
6436
6437         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
6438         gdb::unique_xmalloc_ptr.
6439         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
6440         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
6441         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
6442         copy-initialization.
6443         * guile/scm-pretty-print.c (ppscm_print_children): Use
6444         gdb::unique_xmalloc_ptr instead of cleanups.
6445         (gdbscm_apply_val_pretty_printer): Remove cleanups.
6446         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
6447         gdb::unique_xmalloc_ptr.
6448         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6449         Adjust to use gdb::unique_xmalloc_ptr.
6450         * guile/scm-utils.c (extract_arg): Adjust.
6451         * guile/scm-value.c (gdbscm_value_field): Adjust to use
6452         gdb::unique_xmalloc_ptr instead of a cleanup.
6453
6454 2018-07-19  Tom Tromey  <tom@tromey.com>
6455
6456         * utils.c (do_value_free_to_mark)
6457         (make_cleanup_value_free_to_mark): Remove.
6458         * utils.h (make_cleanup_value_free_to_mark): Remove.
6459
6460 2018-07-19  Pedro Alves  <palves@redhat.com>
6461
6462         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
6463         forwarding reference.
6464
6465 2018-07-18  Pedro Alves  <palves@redhat.com>
6466
6467         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
6468         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
6469         cleanup.
6470
6471 2018-07-18  Pedro Alves  <palves@redhat.com>
6472
6473         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
6474         exceptions.
6475         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
6476         (gdbscm_wrap): New.
6477         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
6478         directly instead of a cleanup.
6479         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
6480         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
6481         (vlscm_binop_gdbthrow): New, factored out from ...
6482         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
6483         (vlscm_rich_compare): Use gdbscm_wrap.
6484         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
6485         instead of a cleanup.
6486         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
6487         cleanup.
6488         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6489         Use xfree directly instead of a cleanup.
6490         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
6491         Adjust to use gdbscm_wrap and scoped_value_mark.
6492         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
6493         (gdbscm_value_address, gdbscm_value_dereference)
6494         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
6495         scoped_value_mark.
6496         (gdbscm_value_dynamic_type): Use scoped_value_mark.
6497         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
6498         scoped_value_mark.
6499         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
6500         gdbscm_wrap and scoped_value_mark.
6501         (gdbscm_value_to_string): Use xfree directly instead of a
6502         cleanup.  Move 'buffer' unique_ptr to TRY scope.
6503         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
6504         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
6505         scoped_value_mark.
6506         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
6507         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
6508         scoped_value_mark.
6509         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
6510         gdbscm_wrap.
6511
6512 2018-07-18  Tom de Vries  <tdevries@suse.de>
6513
6514         * findvar.c (default_read_var_value): Also resolve dynamic type for
6515         LOC_OPTIMIZED_OUT vars.
6516
6517 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
6518
6519         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
6520         decoding.
6521
6522 2018-07-17  Tom Tromey  <tom@tromey.com>
6523
6524         * guile/scm-param.c (pascm_set_func, pascm_show_func)
6525         (compute_enum_list, pascm_set_param_value_x)
6526         (gdbscm_parameter_value): Update.
6527         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
6528         (gdbscm_scm_to_host_string): Update.
6529         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
6530         Update.
6531         * guile/scm-cmd.c (cmdscm_add_completion): Update.
6532         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
6533         * guile/scm-string.c (gdbscm_scm_to_string): Return
6534         unique_xmalloc_ptr.
6535         (gdbscm_scm_to_host_string): Likewise.
6536
6537 2018-07-17  Tom Tromey  <tom@tromey.com>
6538
6539         * guile/guile.c (gdbscm_eval_from_control_command): Update.
6540         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
6541         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
6542         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
6543         unique_xmalloc_ptr.
6544
6545 2018-07-17  Tom Tromey  <tom@tromey.com>
6546
6547         * guile/scm-param.c (pascm_signal_setshow_error): Update.
6548         * guile/guile-internal.h (gdbscm_exception_message_to_string):
6549         Update.
6550         * guile/scm-cmd.c (cmdscm_function): Update.
6551         * guile/scm-pretty-print.c
6552         (ppscm_print_exception_unless_memory_error): Update.
6553         * guile/scm-exception.c (gdbscm_exception_message_to_string):
6554         Return unique_xmalloc_ptr.
6555
6556 2018-07-17  Tom Tromey  <tom@tromey.com>
6557
6558         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
6559         Use string_printf.
6560
6561 2018-07-17  Jim Wilson  <jimw@sifive.com>
6562
6563         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
6564         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
6565         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
6566         unecessary braces after EF_RISCV_RVC test.  Delete call to
6567         set_gdbarch_decr_pc_after_break.
6568
6569         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
6570         RISCV_LAST_FP_REGNUM + 1.
6571         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
6572
6573 2018-07-17  Tom Tromey  <tom@tromey.com>
6574
6575         * configure.ac: Remove --disable-gdbcli.
6576         * configure: Rebuild.
6577         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
6578         (SUBDIR_CLI_CFLAGS): Remove.
6579         (SFILES): Use SUBDIR_CLI_SRCS.
6580         (COMMON_OBS): Use SUBDIR_CLI_OBS.
6581
6582 2018-07-17  Tom Tromey  <tom@tromey.com>
6583
6584         PR gdb/18624:
6585         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
6586
6587 2018-07-16  Jim Wilson  <jimw@sifive.com>
6588
6589         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
6590
6591 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6592
6593         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
6594         variable.
6595         (libunwind_frame_sniffer): Likewise.
6596         (libunwind_frame_prev_register): Likewise.
6597         (libunwind_sigtramp_frame_sniffer): Likewise.
6598         * ia64-tdep.c (ia64_access_reg): Likewise.
6599         (ia64_access_rse_reg): Likewise.
6600         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
6601         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
6602
6603 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6604
6605         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
6606
6607 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6608
6609         * remote-sim.c (gdbsim_target::close,
6610         gdbsim_target::mourn_inferior): Remove unused variables.
6611
6612 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
6613
6614         * ia64-tdep.c (ktab_buf): New global.
6615         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
6616         (get_kernel_table): Adjust.
6617
6618 2018-07-16  Tom Tromey  <tom@tromey.com>
6619
6620         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
6621         * dwarf2read.c (using_directives, new_symbol): Use
6622         outermost_context_p.
6623         * dbxread.c (process_one_symbol): Use outermost_context_p.
6624         * coffread.c (coff_symtab_read): Use outermost_context_p.
6625
6626 2018-07-16  Tom Tromey  <tom@tromey.com>
6627
6628         * dwarf2read.c (using_directives, read_func_scope)
6629         (read_lexical_block_scope): Update.
6630         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
6631         * buildsym.h (local_using_directives, global_using_directives):
6632         Don't declare.
6633         (get_local_using_directives, set_local_using_directives)
6634         (get_global_using_directives): Declare.
6635         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
6636         m_global_using_directives>: New members.
6637         (finish_block_internal, prepare_for_building)
6638         (reset_symtab_globals, end_symtab_get_static_block)
6639         (push_context): Update.
6640         (get_local_using_directives, set_local_using_directives)
6641         (get_global_using_directives): New functions.
6642         (buildsym_init): Update.
6643
6644 2018-07-16  Tom Tromey  <tom@tromey.com>
6645
6646         * xcoffread.c (xcoff_initial_scan): Don't call
6647         free_pending_blocks.
6648         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
6649         * buildsym.h (class scoped_free_pendings): Add constructor.
6650         (free_pending_blocks): Don't declare.
6651         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
6652         (free_pending_blocks): Now static.
6653
6654 2018-07-16  Tom Tromey  <tom@tromey.com>
6655
6656         * buildsym.h (push_subfile, pop_subfile): Update declarations.
6657         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
6658         member.
6659         (struct subfile_stack): Remove.
6660         (subfile_stack): Remove.
6661         (push_subfile, pop_subfile, buildsym_init): Update.
6662
6663 2018-07-16  Tom Tromey  <tom@tromey.com>
6664
6665         * buildsym.c (push_subfile): Use gdb_assert.
6666         (pop_subfile): Use gdb_assert.
6667
6668 2018-07-16  Tom Tromey  <tom@tromey.com>
6669
6670         * buildsym.h (merge_symbol_lists): Remove.
6671         * buildsym.c (merge_symbol_lists): Remove.
6672
6673 2018-07-16  Tom Tromey  <tom@tromey.com>
6674
6675         * stabsread.c (scan_file_globals): Update comment.
6676         * stabsread.h (scan_file_globals): Move from buildsym.h.
6677         * buildsym.h (scan_file_globals): Move to stabsread.h.
6678
6679 2018-07-16  Tom Tromey  <tom@tromey.com>
6680
6681         * xcoffread.c (xcoff_new_init): Update.
6682         * mipsread.c (mipscoff_new_init): Update.
6683         * mdebugread.c (mdebug_build_psymtabs): Update.
6684         * elfread.c (elf_new_init): Update.
6685         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
6686         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
6687         * buildsym.h (buildsym_new_init): Don't declare.
6688         * buildsym.c (buildsym_new_init): Remove.
6689
6690 2018-07-16  Tom Tromey  <tom@tromey.com>
6691
6692         * stabsread.h (within_function): Move from buildsym.h.
6693         * stabsread.c (start_stabs): Clear within_function.
6694         * coffread.c (coff_start_symtab): Clear within_function.
6695         * buildsym.h (within_function): Move to stabsread.h.
6696         * buildsym.c (prepare_for_building): Update.
6697
6698 2018-07-16  Tom Tromey  <tom@tromey.com>
6699
6700         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
6701         * dwarf2read.c (dwarf2_start_symtab): Don't set
6702         processing_gcc_compilation.
6703         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
6704
6705 2018-07-16  Tom Tromey  <tom@tromey.com>
6706
6707         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
6708         (next_symbol_text_func): Move from buildsym.h.
6709         * stabsread.c (hashname): Move from buildsym.c.
6710         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
6711         (next_symbol_text_func, hashname): Move to stabsread.h.
6712         * buildsym.c: Don't include bcache.h
6713         (hashname): Move to stasbread.c.
6714
6715 2018-07-16  Tom Tromey  <tom@tromey.com>
6716
6717         * buildsym.h (context_stack_size): Don't declare.
6718         * buildsym.c (context_stack_size): New global.
6719
6720 2018-07-16  Tom Tromey  <tom@tromey.com>
6721
6722         * dbxread.c (processing_acc_compilation): New global.
6723         * buildsym.h (processing_acc_compilation): Don't declare.
6724
6725 2018-07-16  Tom Tromey  <tom@tromey.com>
6726
6727         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
6728         * dbxread.c (read_ofile_symtab): Update.
6729         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
6730         * buildsym.h (last_source_start_addr): Remove.
6731         (set_last_source_start_addr, get_last_source_start_addr):
6732         Declare.
6733         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
6734         parameter.
6735         (struct buildsym_compunit) <m_last_source_start_addr>: New
6736         member.
6737         (prepare_for_building): Remove start_addr parameter.
6738         (start_symtab, restart_symtab, end_symtab_get_static_block)
6739         (end_symtab_with_blockvector): Update.
6740         (set_last_source_start_addr, get_last_source_start_addr): New
6741         functions.
6742
6743 2018-07-16  Tom Tromey  <tom@tromey.com>
6744
6745         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
6746         member.
6747         (have_line_numbers): Remove.
6748         (record_line, prepare_for_building, end_symtab_get_static_block)
6749         (augment_type_symtab): Update.
6750
6751 2018-07-16  Tom Tromey  <tom@tromey.com>
6752
6753         * buildsym.c (~buildsym_compunit): Free the macro table.
6754         (struct buildsym_compunit) <get_macro_table, release_macros>: New
6755         methods.
6756         <m_pending_macros>: New member.
6757         (pending_macros): Remove.
6758         (~scoped_free_pendings, get_macro_table, prepare_for_building)
6759         (reset_symtab_globals, end_symtab_get_static_block)
6760         (end_symtab_with_blockvector, augment_type_symtab)
6761         (buildsym_init): Update.
6762
6763 2018-07-16  Tom Tromey  <tom@tromey.com>
6764
6765         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
6766         parameter.
6767         (buildsym_compunit::set_last_source_file): New method.
6768         <m_last_source_file>: New member.
6769         (prepare_for_building): Remove "name" parameter.
6770         (start_symtab, restart_symtab, reset_symtab_globals): Update.
6771         (last_source_file): Remove.
6772         (set_last_source_file, get_last_source_file): Update.
6773
6774 2018-07-16  Tom Tromey  <tom@tromey.com>
6775
6776         * buildsym.c (prepare_for_building): Add assert.
6777
6778 2018-07-16  Tom Tromey  <tom@tromey.com>
6779
6780         * buildsym.c (~buildsym_compunit): Update.
6781         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
6782         (start_subfile, patch_subfile_names)
6783         (end_symtab_with_blockvector): Update.
6784
6785 2018-07-16  Tom Tromey  <tom@tromey.com>
6786
6787         * buildsym.c (struct buildsym_compunit): Add constructor,
6788         destructor, initializers.
6789         (start_buildsym_compunit): Remove.
6790         (free_buildsym_compunit): Use "delete".
6791         (start_symtab, restart_symtab): Use "new".
6792
6793 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
6794
6795         * symfile.c (set_objfile_default_section_offset): Remove struct
6796         keyword.
6797
6798 2018-07-14  Stafford Horne  <shorne@gmail.com>
6799
6800         * (Responsible Maintainers): Add myself as or1k maintainer.
6801
6802 2018-07-13  Tom Tromey  <tom@tromey.com>
6803
6804         * symfile.c (set_objfile_default_section_offset): Use extra braces
6805         around initializer.
6806
6807 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
6808
6809         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
6810         non-branching basr.
6811
6812 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6813
6814         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6815         unittests/cli-utils-selftests.c
6816         * unittests/cli-utils-selftests.c: New file.
6817
6818 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6819
6820         * NEWS: Mention new commands. Mention change to 'thread apply'.
6821
6822 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6823
6824         * thread.c (thr_try_catch_cmd): New function.
6825         (thread_apply_all_command): Handle qcs flags.
6826         (thread_apply_command): Handle qcs flags.
6827         (taas_command): New function.
6828         (tfaas_command): New function.
6829         (_initialize_thread): Update to setup the new commands 'taas
6830         and 'tfaas'. Change doc string for 'thread apply'.
6831
6832 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6833
6834         * stack.c: (trailing_outermost_frame): New function, mostly
6835         extracted from backtrace_command_1.
6836         (leading_innermost_frame): New function.
6837         (backtrace_command_1): Update to call trailing_outermost_frame.
6838         (frame_apply_command_count): New function.
6839         (frame_apply_level_command): New function.
6840         (frame_apply_all_command): New function.
6841         (frame_apply_command): New function.
6842         (faas_command): New function.
6843         (frame_cmd_list): New variable.
6844         (_initialize_stack): Update to setup the new commands 'frame apply'
6845         and 'faas'.
6846
6847 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6848
6849         * cli-utils.c (number_or_range_parser::get_number): Only handle
6850         numbers or convenience var as numbers.
6851         (parse_flags): New function.
6852         (parse_flags_qcs): New function.
6853         (number_or_range_parser::finished): Ensure parsing end is detected
6854         before end of string.
6855         * cli-utils.h (parse_flags): New function.
6856         (parse_flags_qcs): New function.
6857         (number_or_range_parser): Remove m_finished bool.
6858         (number_or_range_parser::skip_range): Set m_in_range to false.
6859
6860 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
6861
6862         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
6863         on Windows.
6864
6865 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6866             Jan Kratochvil  <jan.kratochvil@redhat.com>
6867             Paul Fertser  <fercerpav@gmail.com>
6868             Tsutomu Seki  <sekiriki@gmail.com>
6869             Pedro Alves  <palves@redhat.com>
6870
6871         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6872         'unittests/parse-connection-spec-selftests.c'.
6873         (COMMON_SFILES): Add 'common/netstuff.c'.
6874         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
6875         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
6876         * common/netstuff.c: New file.
6877         * common/netstuff.h: New file.
6878         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
6879         (wait_for_connect): Update comment.  New parameter
6880         'gdb::optional<int> sock' instead of 'struct serial *scb'.
6881         Use 'sock' directly instead of 'scb->fd'.
6882         (try_connect): New function, with code from 'net_open'.
6883         (net_open): Rewrite main loop to deal with multiple
6884         sockets/addresses.  Handle IPv6-style hostnames; implement
6885         support for IPv6 connections.
6886         * unittests/parse-connection-spec-selftests.c: New file.
6887
6888 2018-07-11  Pedro Alves  <palves@redhat.com>
6889
6890         PR gdb/23377
6891         * remote.c (remote_target::remote_detach_pid): Call
6892         set_current_process.
6893
6894 2018-07-11  Pedro Alves  <palves@redhat.com>
6895
6896         * h8300-tdep.c (h8300_gdbarch_init): Remove
6897         set_gdbarch_ecoff_reg_to_regnum calls.
6898
6899 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6900
6901         PR c++/23373
6902         * c-typeprint.c (c_type_print_base_struct_union): Don't print
6903         offsets/sizes for static members of a class/struct.
6904
6905 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
6906
6907         * target-descriptions.c (tdesc_register_bitsize): Rename.
6908         * target-descriptions.h (tdesc_register_bitsize): Likewise.
6909         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
6910         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
6911
6912 2018-07-10  Tom Tromey  <tom@tromey.com>
6913
6914         * breakpoint.c (moribund_locations): Now static and a
6915         std::vector.
6916         (breakpoint_init_inferior, moribund_breakpoint_here_p)
6917         (build_bpstat_chain, update_global_location_list)
6918         (breakpoint_retire_moribund): Update.
6919         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
6920         VEC.
6921
6922 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6923
6924         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
6925         (riscv_register_reggroup_p): Use new function, remove unneeded
6926         parenthesis.
6927         (riscv_push_dummy_call): Extend assert to compare against xlen or
6928         flen based on register type.
6929
6930 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6931
6932         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
6933
6934 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
6935
6936         * remote.c (show_hardware_watchpoint_limit): New function.
6937         (show_hardware_watchpoint_length_limit): New function.
6938         (show_hardware_breakpoint_limit): New function.
6939         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
6940         where appropriate, update help text.
6941
6942 2018-07-09  Tom Tromey  <tom@tromey.com>
6943
6944         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
6945         (CLIBS): Don't mention NAT_CLIBS.
6946
6947 2018-07-09  Tom Tromey  <tom@tromey.com>
6948
6949         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
6950         (LIBGDB_OBS, clean mostlyclean): Update.
6951         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
6952
6953 2018-07-09  Tom Tromey  <tom@tromey.com>
6954
6955         * Makefile.in (%.c: %.y): Use ECHO_YACC.
6956         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
6957         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
6958
6959 2018-07-09  Tom Tromey  <tom@tromey.com>
6960
6961         * Makefile.in (ALLDEPFILES): Remove exec.c.
6962         (COMMON_OBS): Remove exec.o.
6963         (COMMON_SFILES): Add exec.c.
6964
6965 2018-07-09  Tom Tromey  <tom@tromey.com>
6966
6967         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
6968
6969 2018-07-09  Tom Tromey  <tom@tromey.com>
6970
6971         * Makefile.in (clean mostlyclean): Remove stamp-version.
6972         (version.c): Depend on stamp-version.
6973         (stamp-version): New rule, from version.c rule.
6974
6975 2018-07-09  Tom Tromey  <tom@tromey.com>
6976
6977         * Makefile.in (init.c): Depend on stamp-init.
6978         (stamp-init): New rule, from init.c rule.
6979         (clean mostlyclean): Remove stamp-init.
6980
6981 2018-07-09  Tom Tromey  <tom@tromey.com>
6982
6983         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
6984         SUBDIR_GCC_COMPILE_SRCS.
6985
6986 2018-07-09  Tom Tromey  <tom@tromey.com>
6987
6988         * Makefile.in (init.c): Remove some unused sed rules.
6989
6990 2018-07-09  Tom Tromey  <tom@tromey.com>
6991
6992         * Makefile.in (TSOBS): Remove.
6993         (INIT_FILES): Update.
6994         (LIBGDB_OBS): Update.
6995         (COMMON_SFILES): Add inflow.c.
6996         (SFILES): Remove inflow.c.
6997
6998 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
6999
7000         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
7001
7002 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
7003
7004         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
7005         get_saveloc_name, is_signal_frame_name, step_name,
7006         init_remote_name, create_addr_space_name,
7007         destroy_addr_space_name, search_unwind_table_name,
7008         find_dyn_list_name): Constify.
7009
7010 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
7011
7012         * darwin-nat.c (darwin_pthread_kill): New function.
7013         (darwin_resume_thread): Use darwin_pthread_kill.
7014
7015 2018-07-05  Tom de Vries  <tdevries@suse.de>
7016
7017         * macroexp.c (macro_buffer) <operator=>: New member function.
7018
7019 2018-07-04  Tom Tromey  <tom@tromey.com>
7020
7021         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
7022
7023 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
7024
7025         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
7026         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
7027         * maint.c: Likewise.
7028         * top.c: Likewise.
7029
7030 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
7031
7032         * NEWS: Create a new section for the next release branch.
7033         Rename the section of the current branch, now that it has
7034         been cut.
7035
7036 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
7037
7038         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
7039         * version.in: Bump version to 8.2.50.DATE-git.
7040
7041 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
7042             Pedro Alves  <palves@redhat.com>
7043
7044         * linux-nat.c (linux_init_ptrace): Rename to ...
7045         (linux_init_ptrace_procfs): ... this.  Call
7046         linux_proc_init_warnings.
7047         (linux_nat_target::post_attach)
7048         (linux_nat_target::post_startup_inferior): Adjust.
7049         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
7050         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
7051
7052 2018-07-04  Tom de Vries  <tdevries@suse.de>
7053
7054         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
7055         check ...
7056         (read_comp_unit_head): ... here.
7057
7058 2018-07-03  Tom Tromey  <tom@tromey.com>
7059
7060         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
7061         (stop_tracing, tstatus_command)
7062         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
7063         (print_one_static_tracepoint_marker): Update.
7064         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
7065         std::vector.
7066         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
7067         VEC.
7068         (all_tracepoints, static_tracepoints_here): Return std::vector.
7069
7070 2018-07-03  Tom Tromey  <tom@tromey.com>
7071
7072         * common/ptid.c (ptid_equal): Remove.
7073         * common/ptid.h (ptid_equal): Don't declare.
7074         * ada-tasks.c: Update.
7075         * breakpoint.c: Update.
7076         * common/agent.c: Update.
7077         * corelow.c: Update.
7078         * darwin-nat-info.c: Update.
7079         * darwin-nat.c: Update.
7080         * dcache.c: Update.
7081         * dtrace-probe.c: Update.
7082         * dummy-frame.c: Update.
7083         * fbsd-nat.c: Update.
7084         * frame.c: Update.
7085         * gdbthread.h: Update.
7086         * gnu-nat.c: Update.
7087         * go32-nat.c: Update.
7088         * inf-loop.c: Update.
7089         * inf-ptrace.c: Update.
7090         * infcall.c: Update.
7091         * infcmd.c: Update.
7092         * inflow.c: Update.
7093         * infrun.c: Update.
7094         * linux-fork.c: Update.
7095         * linux-nat.c: Update.
7096         * linux-thread-db.c: Update.
7097         * mi/mi-cmd-var.c: Update.
7098         * mi/mi-interp.c: Update.
7099         * mi/mi-main.c: Update.
7100         * nto-procfs.c: Update.
7101         * ppc-linux-tdep.c: Update.
7102         * procfs.c: Update.
7103         * python/py-inferior.c: Update.
7104         * python/py-record-btrace.c: Update.
7105         * python/py-record.c: Update.
7106         * ravenscar-thread.c: Update.
7107         * regcache.c: Update.
7108         * remote-sim.c: Update.
7109         * remote.c: Update.
7110         * sol-thread.c: Update.
7111         * solib.c: Update.
7112         * target.c: Update.
7113         * tui/tui-stack.c: Update.
7114         * varobj.c: Update.
7115         * windows-nat.c: Update.
7116         * windows-tdep.c: Update.
7117
7118 2018-07-03  Tom Tromey  <tom@tromey.com>
7119
7120         * common/ptid.c (ptid_match): Remove.
7121         * common/ptid.h (ptid_match): Don't declare.
7122         * fbsd-nat.c: Update.
7123         * infcmd.c: Update.
7124         * infrun.c: Update.
7125         * linux-nat.c: Update.
7126         * record-btrace.c: Update.
7127         * regcache.c: Update.
7128         * remote.c: Update.
7129
7130 2018-07-03  Tom Tromey  <tom@tromey.com>
7131
7132         * common/ptid.c (ptid_tid_p): Remove.
7133         * common/ptid.h (ptid_tid_p): Don't declare.
7134         * sol-thread.c: Update.
7135
7136 2018-07-03  Tom Tromey  <tom@tromey.com>
7137
7138         * common/ptid.c (ptid_lwp_p): Remove.
7139         * common/ptid.h (ptid_lwp_p): Don't declare.
7140         * fbsd-nat.c: Update.
7141         * linux-nat.c: Update.
7142         * nat/linux-procfs.c: Update.
7143         * nat/x86-linux-dregs.c: Update.
7144         * sol-thread.c: Update.
7145
7146 2018-07-03  Tom Tromey  <tom@tromey.com>
7147
7148         * common/ptid.c (ptid_is_pid): Remove.
7149         * common/ptid.h (ptid_is_pid): Don't declare.
7150         * infrun.c: Update.
7151         * linux-nat.c: Update.
7152         * mi/mi-interp.c: Update.
7153         * remote.c: Update.
7154         * thread.c: Update.
7155
7156 2018-07-03  Tom Tromey  <tom@tromey.com>
7157
7158         * common/ptid.c (ptid_get_tid): Remove.
7159         * common/ptid.h (ptid_get_tid): Don't declare.
7160         * ada-tasks.c: Update.
7161         * aix-thread.c: Update.
7162         * bsd-uthread.c: Update.
7163         * darwin-nat.c: Update.
7164         * fbsd-nat.c: Update.
7165         * i386-darwin-nat.c: Update.
7166         * infrun.c: Update.
7167         * linux-tdep.c: Update.
7168         * nto-procfs.c: Update.
7169         * ppc-ravenscar-thread.c: Update.
7170         * python/py-infthread.c: Update.
7171         * ravenscar-thread.c: Update.
7172         * sol-thread.c: Update.
7173         * sparc-ravenscar-thread.c: Update.
7174         * windows-nat.c: Update.
7175
7176 2018-07-03  Tom Tromey  <tom@tromey.com>
7177
7178         * common/ptid.c (ptid_get_lwp): Remove.
7179         * common/ptid.h (ptid_get_lwp): Don't declare.
7180         * aarch64-linux-nat.c: Update.
7181         * ada-tasks.c: Update.
7182         * aix-thread.c: Update.
7183         * amd64-linux-nat.c: Update.
7184         * arm-linux-nat.c: Update.
7185         * corelow.c: Update.
7186         * fbsd-nat.c: Update.
7187         * fbsd-tdep.c: Update.
7188         * gnu-nat.c: Update.
7189         * i386-cygwin-tdep.c: Update.
7190         * i386-gnu-nat.c: Update.
7191         * i386-linux-nat.c: Update.
7192         * ia64-linux-nat.c: Update.
7193         * inf-ptrace.c: Update.
7194         * infrun.c: Update.
7195         * linux-fork.c: Update.
7196         * linux-nat.c: Update.
7197         * linux-tdep.c: Update.
7198         * linux-thread-db.c: Update.
7199         * mips-linux-nat.c: Update.
7200         * nat/aarch64-linux-hw-point.c: Update.
7201         * nat/aarch64-linux.c: Update.
7202         * nat/linux-btrace.c: Update.
7203         * nat/linux-osdata.c: Update.
7204         * nat/linux-procfs.c: Update.
7205         * nat/x86-linux-dregs.c: Update.
7206         * obsd-nat.c: Update.
7207         * ppc-fbsd-nat.c: Update.
7208         * ppc-linux-nat.c: Update.
7209         * procfs.c: Update.
7210         * python/py-infthread.c: Update.
7211         * ravenscar-thread.c: Update.
7212         * remote.c: Update.
7213         * s390-linux-nat.c: Update.
7214         * sol-thread.c: Update.
7215         * sol2-tdep.c: Update.
7216         * spu-linux-nat.c: Update.
7217         * x86-linux-nat.c: Update.
7218         * xtensa-linux-nat.c: Update.
7219
7220 2018-07-03  Tom Tromey  <tom@tromey.com>
7221
7222         * common/ptid.c (ptid_get_pid): Remove.
7223         * common/ptid.h (ptid_get_pid): Don't declare.
7224         * aarch64-linux-nat.c: Update.
7225         * ada-lang.c: Update.
7226         * aix-thread.c: Update.
7227         * alpha-bsd-nat.c: Update.
7228         * amd64-fbsd-nat.c: Update.
7229         * amd64-linux-nat.c: Update.
7230         * arm-linux-nat.c: Update.
7231         * arm-nbsd-nat.c: Update.
7232         * auxv.c: Update.
7233         * break-catch-syscall.c: Update.
7234         * breakpoint.c: Update.
7235         * bsd-uthread.c: Update.
7236         * corelow.c: Update.
7237         * ctf.c: Update.
7238         * darwin-nat.c: Update.
7239         * fbsd-nat.c: Update.
7240         * fbsd-tdep.c: Update.
7241         * gcore.c: Update.
7242         * gnu-nat.c: Update.
7243         * hppa-nbsd-nat.c: Update.
7244         * hppa-obsd-nat.c: Update.
7245         * i386-fbsd-nat.c: Update.
7246         * ia64-linux-nat.c: Update.
7247         * inf-ptrace.c: Update.
7248         * infcmd.c: Update.
7249         * inferior.c: Update.
7250         * inferior.h: Update.
7251         * inflow.c: Update.
7252         * infrun.c: Update.
7253         * linux-fork.c: Update.
7254         * linux-nat.c: Update.
7255         * linux-tdep.c: Update.
7256         * linux-thread-db.c: Update.
7257         * m68k-bsd-nat.c: Update.
7258         * mi/mi-interp.c: Update.
7259         * mi/mi-main.c: Update.
7260         * mips-linux-nat.c: Update.
7261         * mips-nbsd-nat.c: Update.
7262         * mips64-obsd-nat.c: Update.
7263         * nat/aarch64-linux-hw-point.c: Update.
7264         * nat/aarch64-linux.c: Update.
7265         * nat/linux-btrace.c: Update.
7266         * nat/linux-osdata.c: Update.
7267         * nat/linux-procfs.c: Update.
7268         * nat/x86-linux-dregs.c: Update.
7269         * nto-procfs.c: Update.
7270         * obsd-nat.c: Update.
7271         * ppc-linux-nat.c: Update.
7272         * ppc-nbsd-nat.c: Update.
7273         * ppc-obsd-nat.c: Update.
7274         * proc-service.c: Update.
7275         * procfs.c: Update.
7276         * python/py-inferior.c: Update.
7277         * python/py-infthread.c: Update.
7278         * ravenscar-thread.c: Update.
7279         * record.c: Update.
7280         * remote-sim.c: Update.
7281         * remote.c: Update.
7282         * rs6000-nat.c: Update.
7283         * s390-linux-nat.c: Update.
7284         * sh-nbsd-nat.c: Update.
7285         * sol-thread.c: Update.
7286         * sparc-nat.c: Update.
7287         * sparc64-tdep.c: Update.
7288         * spu-linux-nat.c: Update.
7289         * spu-tdep.c: Update.
7290         * target-debug.h: Update.
7291         * target.c: Update.
7292         * thread.c: Update.
7293         * tid-parse.c: Update.
7294         * tracefile-tfile.c: Update.
7295         * vax-bsd-nat.c: Update.
7296         * windows-nat.c: Update.
7297         * x86-linux-nat.c: Update.
7298         * x86-nat.c: Update.
7299
7300 2018-07-03  Tom Tromey  <tom@tromey.com>
7301
7302         * common/ptid.c (pid_to_ptid): Remove.
7303         * common/ptid.h (pid_to_ptid): Don't declare.
7304         * aix-thread.c: Update.
7305         * arm-linux-nat.c: Update.
7306         * common/ptid.c: Update.
7307         * common/ptid.h: Update.
7308         * corelow.c: Update.
7309         * ctf.c: Update.
7310         * darwin-nat.c: Update.
7311         * fbsd-nat.c: Update.
7312         * fork-child.c: Update.
7313         * gnu-nat.c: Update.
7314         * go32-nat.c: Update.
7315         * inf-ptrace.c: Update.
7316         * infcmd.c: Update.
7317         * inferior.c: Update.
7318         * infrun.c: Update.
7319         * linux-fork.c: Update.
7320         * linux-nat.c: Update.
7321         * nat/aarch64-linux-hw-point.c: Update.
7322         * nat/fork-inferior.c: Update.
7323         * nat/x86-linux-dregs.c: Update.
7324         * nto-procfs.c: Update.
7325         * obsd-nat.c: Update.
7326         * procfs.c: Update.
7327         * progspace.c: Update.
7328         * remote.c: Update.
7329         * rs6000-nat.c: Update.
7330         * s390-linux-nat.c: Update.
7331         * sol-thread.c: Update.
7332         * spu-linux-nat.c: Update.
7333         * target.c: Update.
7334         * top.c: Update.
7335         * tracefile-tfile.c: Update.
7336         * windows-nat.c: Update.
7337
7338 2018-07-03  Tom Tromey  <tom@tromey.com>
7339
7340         * common/ptid.h (ptid_build): Don't declare.
7341         * common/ptid.c (ptid_build): Remove.
7342         * aix-thread.c: Update.
7343         * bsd-kvm.c: Update.
7344         * bsd-uthread.c: Update.
7345         * common/agent.c: Update.
7346         * common/ptid.c: Update.
7347         * common/ptid.h: Update.
7348         * corelow.c: Update.
7349         * darwin-nat.c: Update.
7350         * fbsd-nat.c: Update.
7351         * gnu-nat.c: Update.
7352         * linux-fork.c: Update.
7353         * linux-nat.c: Update.
7354         * linux-thread-db.c: Update.
7355         * nat/linux-osdata.c: Update.
7356         * nat/linux-procfs.c: Update.
7357         * nto-procfs.c: Update.
7358         * obsd-nat.c: Update.
7359         * proc-service.c: Update.
7360         * procfs.c: Update.
7361         * ravenscar-thread.c: Update.
7362         * remote-sim.c: Update.
7363         * remote.c: Update.
7364         * sol-thread.c: Update.
7365         * target.c: Update.
7366         * windows-nat.c: Update.
7367
7368 2018-07-03  Tom Tromey  <tom@tromey.com>
7369
7370         * infrun.c (follow_exec): Use exit_inferior_silent.
7371         * inferior.c (exit_inferior_num_silent): Remove.
7372         * inferior.h (exit_inferior_num_silent): Don't declare.
7373
7374 2018-07-03  Tom Tromey  <tom@tromey.com>
7375
7376         PR cli/23340:
7377         * darwin-nat.c (darwin_attach_pid): Reset inferior and
7378         inferior_ptid on error.
7379
7380 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
7381             Simon Marchi  <simon.marchi@polymtl.ca>
7382
7383         PR tdep/8282
7384         * disasm.h (gdb_disassembler): Add
7385         `m_disassembler_options_holder'. member
7386         * disasm.c (get_all_disassembler_options): New function.
7387         (gdb_disassembler::gdb_disassembler): Use it.
7388         (gdb_buffered_insn_length_init_dis): Likewise.
7389         (gdb_buffered_insn_length): Adjust accordingly.
7390         (set_disassembler_options): Handle options with arguments.
7391         (show_disassembler_options_sfunc): Likewise.  Add a leading new
7392         line if showing options with descriptions.
7393         (disassembler_options_completer): Adapt to using the
7394         `disasm_options_and_args_t' structure.
7395         * mips-tdep.c (mips_disassembler_options): New variable.
7396         (mips_disassembler_options_o32): Likewise.
7397         (mips_disassembler_options_n32): Likewise.
7398         (mips_disassembler_options_n64): Likewise.
7399         (gdb_print_insn_mips): Don't set `disassembler_options'.
7400         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
7401         functions.
7402         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
7403         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
7404         `gdbarch_disassembler_options_implicit' and
7405         `gdbarch_valid_disassembler_options'.
7406         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
7407         `disasm_options_and_args_t' structure.
7408         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
7409         method.
7410         (valid_disassembler_options): Switch from `disasm_options_t' to
7411         the `disasm_options_and_args_t' structure.
7412         * NEWS: Document `set disassembler-options' support for the MIPS
7413         target.
7414         * gdbarch.h: Regenerate.
7415         * gdbarch.c: Regenerate.
7416
7417 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
7418
7419         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
7420
7421 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
7422
7423         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
7424         parameter in call to amd64_target_description.
7425         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
7426         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
7427         (amd64fbsd_init_abi): Likewise.
7428         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
7429         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
7430         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
7431         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
7432
7433 2018-06-29  Pedro Alves  <palves@redhat.com>
7434
7435         * gdb/amd64-tdep.h (amd64_create_target_description): Add
7436         "segments" parameter.
7437         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
7438         (_initialize_amd64_tdep): Update call to
7439         amd64_create_target_description.
7440         (amd64_target_description): Add "segments" parameter.  Adjust
7441         the implementation to use it.
7442         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
7443         call to amd64_create_target_description.
7444         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
7445         * gdb/arch/amd64.h (amd64_create_target_description): Add
7446         "segments" register.
7447         * gdb/arch/amd64.c (amd64_create_target_description): Add
7448         "segments" parameter.  Call create_feature_i386_64bit_segments
7449         only if SEGMENTS is true.
7450         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
7451         call to amd64_create_target_description.
7452
7453 2018-06-29  Pedro Alves  <palves@redhat.com>
7454
7455         * thread.c (thread_target_id_str): New, factored out from ...
7456         (print_thread_info_1): ... here.  Use it to compute the max
7457         "Target Id" column width.
7458
7459 2018-06-29  Pedro Alves  <palves@redhat.com>
7460
7461         * remote.c (remote_target::extra_thread_info): Delete
7462         'display_buf' and 'n' locals.  from the cache, regardless of
7463         packet mechanims is in use.  Use cache for qThreadExtra and qP
7464         methods too.
7465
7466 2018-06-29  Pedro Alves  <palves@redhat.com>
7467
7468         * blockframe.c (find_pc_sect_containing_function): New function.
7469         * breakpoint.c (print_breakpoint_location): Don't call
7470         find_pc_sect_function.
7471         * linespec.c (create_sals_line_offset): Record the location's
7472         symbol in the sal.
7473         * linespec.c (convert_address_location_to_sals): Fill in sal's
7474         symbol with find_pc_sect_containing_function.
7475         * symtab.c (find_function_start_sal): Rename to ...
7476         (find_function_start_sal_1): ... this.
7477         (find_function_start_sal): Reimplement as wrapper around
7478         find_function_start_sal_1, and use
7479         find_pc_sect_containing_function to fill in the sal's symbol.
7480         (find_function_start_sal(symbol*, bool)): Adjust.
7481         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
7482         comments.
7483         (find_pc_sect_containing_function): Declare.
7484
7485 2018-06-29  Pedro Alves  <palves@redhat.com>
7486
7487         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
7488         true if the the location has no symbol.
7489
7490 2018-06-28  Tom Tromey  <tom@tromey.com>
7491
7492         * NEWS: Mention --enable-codesign.
7493         * silent-rules.mk (ECHO_SIGN): New variable.
7494         * configure.ac: Add --enable-codesign.
7495         * configure: Rebuild.
7496         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
7497         (gdb$(EXEEXT)): Optionally invoke codesign.
7498
7499 2018-06-28  Pedro Alves  <palves@redhat.com>
7500
7501         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
7502         comments.
7503         (switch_to_thread_no_regs): Adjust comment.
7504         * infcmd.c (stop_pc): Delete.
7505         (post_create_inferior, info_program_command): Replace references
7506         to stop_pc with references to thread_info->suspend.stop_pc.
7507         * inferior.h (stop_pc): Delete declaration.
7508         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
7509         (handle_inferior_event_1, handle_signal_stop)
7510         (process_event_stop_test, keep_going_stepped_thread)
7511         (handle_step_into_function, handle_step_into_function_backward)
7512         (print_stop_location): Replace references to stop_pc with
7513         references to thread_info->suspend.stop_pc.
7514         (struct infcall_suspend_state) <stop_pc>: Delete field.
7515         (save_infcall_suspend_state, restore_infcall_suspend_state):
7516         Remove references to inf_stat->stop_pc.
7517         * linux-fork.c (fork_load_infrun_state): Likewise.
7518         * record-btrace.c (record_btrace_set_replay): Likewise.
7519         * record-full.c (record_full_goto_entry): Likewise.
7520         * remote.c (print_one_stopped_thread): Likewise.
7521         * target.c (target_resume): Extend comment.
7522         * thread.c (set_executing_thread): New.
7523         (set_executing): Use it.
7524         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
7525         Remove references to stop_pc.
7526
7527 2018-06-28  Pedro Alves  <palves@redhat.com>
7528
7529         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
7530         Moving fetching stop_pc until after ecs->event_thread is refreshed.
7531
7532 2018-06-28  Tom Tromey  <tom@tromey.com>
7533
7534         * coffread.c (coff_symfile_finish): Update.
7535         * xcoffread.c (xcoff_symfile_finish): Update.
7536         * elfread.c (elf_symfile_finish): Update.
7537         * symfile.h (dwarf2_free_objfile): Don't declare.
7538         * dwarf2read.c (_initialize_dwarf2_read): Use
7539         register_objfile_data_with_cleanup.
7540         (dwarf2_free_objfile): Now static.  Change signature.
7541
7542 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7543
7544         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
7545         option "-o" to add-symbol-file-load to add an offset to each
7546         section's load address.
7547         * symfile.c (set_objfile_default_section_offset): New function.
7548
7549 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7550
7551         * symfile.c (add_symbol_file_command): Make sure that sections
7552         with the same name are sorted in the same order.
7553
7554 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7555
7556         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
7557         require the second argument.  If omitted, load sections at the
7558         addresses specified in the file.
7559
7560 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7561
7562         * symfile.c (symbol_file_command, symbol_file_add_main_1)
7563         (_initialize_symfile): Add option "-o" to symbol-file to add an
7564         offset to each section of the symbol file.
7565
7566 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7567
7568         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
7569
7570 2018-06-27  Tom Tromey  <tom@tromey.com>
7571
7572         * stack.c (_initialize_stack): Update "func" help text.
7573
7574 2018-06-27  Tom Tromey  <tom@tromey.com>
7575
7576         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
7577         std::vector.
7578         (unwind_infopy_str, pyuw_create_unwind_info)
7579         (unwind_infopy_add_saved_register, pyuw_sniffer)
7580         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
7581         Update.
7582         (struct saved_reg): Add constructor.
7583         <value>: Now a gdbpy_ref<>.
7584
7585 2018-06-27  Tom Tromey  <tom@tromey.com>
7586
7587         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
7588
7589 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7590
7591         * gdb-gdb.py.in: Format using autopep8.
7592
7593 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7594
7595         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
7596         (type_lookup_function): Recognize CORE_ADDR values.
7597
7598 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7599
7600         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
7601         print tag_name.
7602
7603 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7604
7605         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
7606         <__lt__>: Add.
7607
7608 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7609
7610         * gdb-gdb.py: Move to...
7611         * gdb-gdb.py.in: ... here.
7612         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
7613         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
7614         dependencies.
7615         (distclean): Remove gdb-gdb.py when cleaning.
7616         (gdb-gdb.py, gdb-gdb.gdb): New rules.
7617         * configure: Re-generate.
7618
7619 2018-06-27  Pedro Alves  <palves@redhat.com>
7620
7621         * proc-service.c (get_ps_regcache): New.
7622         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
7623         (ps_lsetfpregs): Use it.
7624
7625 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
7626
7627         PR gdb/21695
7628         * dwarf2read.c (lnp_state_machine::check_line_address): Update
7629         declaration.
7630         (dwarf_decode_lines_1): Adjust.
7631
7632 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7633
7634         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
7635         override.
7636         <info_proc>: Likewise.
7637
7638 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
7639
7640         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
7641         to windows_fetch_one_register, and only handle the case of
7642         fetching one register.  Move the code that reloads the context
7643         and iterates over all registers if R is negative to...
7644         (windows_nat_target::fetch_registers): ... here.
7645         (do_windows_store_inferior_registers): Rename to
7646         windows_store_one_register, and only handle the case of storing
7647         one register.  Move the code that handles the case where r is
7648         negative to...
7649         (windows_nat_target::store_registers) ... here.
7650
7651 2018-06-26  Tom Tromey  <tom@tromey.com>
7652
7653         PR rust/22574:
7654         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
7655         * rust-lang.c (rust_print_struct_def): Add podata parameter.
7656         Update.
7657         (rust_internal_print_type): Add podata parameter.
7658         (rust_print_type): Update.
7659
7660 2018-06-26  Tom Tromey  <tom@tromey.com>
7661
7662         * typeprint.h (struct print_offset_data) <update, finish,
7663         maybe_print_hole>: New methods.
7664         <indentation>: New constant.
7665         * typeprint.c (print_offset_data::indentation): Define.
7666         (print_offset_data::maybe_print_hole, print_offset_data::update)
7667         (print_offset_data::finish): Move from c-typeprint.c and rename.
7668         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
7669         (print_spaces_filtered_with_print_options): Update.
7670         (c_print_type_union_field_offset, maybe_print_hole)
7671         (c_print_type_struct_field_offset): Move to typeprint.c and
7672         rename.
7673         (c_type_print_base_struct_union): Update.
7674
7675 2018-06-25  Pedro Alves  <palves@redhat.com>
7676
7677         * gdbthread.h (thread_info_ref, delete_thread)
7678         (delete_thread_silent, first_thread_of_inferior)
7679         (any_thread_of_inferior, switch_to_thread)
7680         (enable_thread_stack_temporaries)
7681         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7682         (get_last_thread_stack_temporary)
7683         (value_in_thread_stack_temporaries, can_access_registers_thread):
7684         Spell out "struct thread_info" instead of just "thread_info".
7685         * inferior.h (notice_new_inferior): Likewise.
7686
7687 2018-06-25  Pedro Alves  <palves@redhat.com>
7688
7689         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7690         pass thread_info pointer to delete_thread.
7691         (windows_nat_target::detach): Pass inferior pointer to
7692         detach_inferior.
7693         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
7694         delete_thread.
7695         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
7696         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
7697         and pass a thread_info pointer to delete_thread.
7698         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
7699         pass thread_info pointer to delete_thread.
7700         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
7701         delete_thread_silent call.
7702         * procfs.c (procfs_target::detach): Pass inferior pointer to
7703         detach_inferior.
7704         (procfs_target::wait): Pass thread_info pointer to delete_thread.
7705         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
7706         delete_thread_silent call.
7707         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7708         pass thread_info pointer to delete_thread.
7709         (windows_nat_target::detach): Pass inferior pointer to
7710         delete_inferior.
7711
7712 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7713
7714         * regcache.c (readable_regcache::read_part): Fix asserts.
7715         (reg_buffer::raw_collect_part): New function.
7716         (regcache::write_part): Fix asserts.
7717         (reg_buffer::raw_supply_part): New function.
7718         (regcache::transfer_regset_register): New helper function.
7719         (regcache::transfer_regset): Call new functions.
7720         (regcache_supply_regset): Use gdb_byte*.
7721         (regcache::supply_regset): Likewise.
7722         (regcache_collect_regset): Likewise.
7723         (regcache::collect_regset): Likewise.
7724         * regcache.h (reg_buffer::raw_collect_part): New declaration.
7725         (reg_buffer::raw_supply_part): Likewise.
7726         (regcache::transfer_regset_register): Likewise.
7727         (regcache::transfer_regset): Use gdb_byte*.
7728
7729 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7730
7731         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
7732
7733 2018-06-21  Pedro Alves  <palves@redhat.com>
7734
7735         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
7736         instead of a ptid_t.  All callers adjusted.
7737         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
7738         adjusted.
7739         (print_ada_task_info, display_current_task_id, task_command_1):
7740         Adjust.
7741         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
7742         inferior_thread.
7743         (breakpoint_kind): Adjust.
7744         (remove_breakpoints_pid): Rename to ...
7745         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
7746         pointer.  All callers adjusted.
7747         (bpstat_clear_actions): Use inferior_thread.
7748         (get_bpstat_thread): New.
7749         (bpstat_do_actions): Use it.
7750         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
7751         to take a thread_info pointer.  All callers adjusted.
7752         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
7753         (breakpoint_re_set_thread): Use inferior_thread.
7754         * breakpoint.h (struct inferior): Forward declare.
7755         (bpstat_stop_status): Update.
7756         (remove_breakpoints_pid): Delete.
7757         (remove_breakpoints_inf): New.
7758         * bsd-uthread.c (bsd_uthread_target::wait)
7759         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
7760         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
7761         (maint_btrace_packet_history_cmd)
7762         (maint_btrace_clear_packet_history_cmd): Adjust.
7763         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
7764         inferior_thread.
7765         * cli/cli-interp.c: Include "inferior.h".
7766         * common/refcounted-object.h (struct
7767         refcounted_object_ref_policy): New.
7768         * compile/compile-object-load.c: Include gdbthread.h.
7769         (store_regs): Use inferior_thread.
7770         * corelow.c (core_target::close): Use current_inferior.
7771         (core_target_open): Adjust to use first_thread_of_inferior and use
7772         the current inferior.
7773         * ctf.c (ctf_target::close): Adjust to use current_inferior.
7774         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
7775         <thread>: ... this new field.  All references adjusted.
7776         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
7777         Take a thread_info pointer instead of a ptid_t.
7778         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
7779         (dummy_frame_discard, register_dummy_frame_dtor): Take a
7780         thread_info pointer instead of a ptid_t.
7781         * elfread.c: Include "inferior.h".
7782         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
7783         Use inferior_thread.
7784         * eval.c (evaluate_subexp): Likewise.
7785         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
7786         inferior_thread.
7787         * gdb_proc_service.h (struct thread_info): Forward declare.
7788         (struct ps_prochandle) <ptid>: Delete, replaced by ...
7789         <thread>: ... this new field.  All references adjusted.
7790         * gdbarch.h, gdbarch.c: Regenerate.
7791         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
7792         'thread' parameter.  All implementations and callers adjusted.
7793         * gdbthread.h (thread_info) <set_running>: New method.
7794         (delete_thread, delete_thread_silent): Take a thread_info pointer
7795         instead of a ptid.
7796         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
7797         (first_thread_of_process): Delete, replaced by ...
7798         (first_thread_of_inferior): ... this new function.  All callers
7799         adjusted.
7800         (any_live_thread_of_process): Delete, replaced by ...
7801         (any_live_thread_of_inferior): ... this new function.  All callers
7802         adjusted.
7803         (switch_to_thread, switch_to_no_thread): Declare.
7804         (is_executing): Delete.
7805         (enable_thread_stack_temporaries): Update comment.
7806         <enable_thread_stack_temporaries>: Take a thread_info pointer
7807         instead of a ptid_t.  Incref the thread.
7808         <~enable_thread_stack_temporaries>: Decref the thread.
7809         <m_ptid>: Delete
7810         <m_thr>: New.
7811         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7812         (get_last_thread_stack_temporary)
7813         (value_in_thread_stack_temporaries, can_access_registers_thread):
7814         Take a thread_info pointer instead of a ptid_t.  All callers
7815         adjusted.
7816         * infcall.c (get_call_return_value): Use inferior_thread.
7817         (run_inferior_call): Work with thread pointers instead of ptid_t.
7818         (call_function_by_hand_dummy): Work with thread pointers instead
7819         of ptid_t.  Use thread_info_ref.
7820         * infcmd.c (proceed_thread_callback): Access thread's state
7821         directly.
7822         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
7823         access thread's state directly.
7824         (continue_command): Use inferior_thread.
7825         (info_program_command): Use find_thread_ptid and access thread
7826         state directly.
7827         (proceed_after_attach_callback): Use thread state directly.
7828         (notice_new_inferior): Take a thread_info pointer instead of a
7829         ptid_t.  All callers adjusted.
7830         (exit_inferior): Take an inferior pointer instead of a pid.  All
7831         callers adjusted.
7832         (exit_inferior_silent): New.
7833         (detach_inferior): Delete.
7834         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
7835         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
7836         (detach_inferior_command, kill_inferior_command): Use
7837         find_inferior_id instead of valid_gdb_inferior_id and
7838         gdb_inferior_id_to_pid.
7839         (inferior_command): Use inferior and thread pointers.
7840         * inferior.h (struct thread_info): Forward declare.
7841         (notice_new_inferior): Take a thread_info pointer instead of a
7842         ptid_t.  All callers adjusted.
7843         (detach_inferior): Delete declaration.
7844         (exit_inferior, exit_inferior_silent): Take an inferior pointer
7845         instead of a pid.  All callers adjusted.
7846         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
7847         (valid_gdb_inferior_id): Delete.
7848         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
7849         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
7850         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
7851         ...
7852         <inf>: ... this new field.
7853         <step_ptid>: Delete, replaced by ...
7854         <step_thread>: ... this new field.
7855         (get_displaced_stepping_state): Take an inferior pointer instead
7856         of a pid.  All callers adjusted.
7857         (displaced_step_in_progress_any_inferior): Adjust.
7858         (displaced_step_in_progress_thread): Take a thread pointer instead
7859         of a ptid_t.  All callers adjusted.
7860         (displaced_step_in_progress, add_displaced_stepping_state): Take
7861         an inferior pointer instead of a pid.  All callers adjusted.
7862         (get_displaced_step_closure_by_addr): Adjust.
7863         (remove_displaced_stepping_state): Take an inferior pointer
7864         instead of a pid.  All callers adjusted.
7865         (displaced_step_prepare_throw, displaced_step_prepare)
7866         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
7867         All callers adjusted.
7868         (start_step_over): Adjust.
7869         (infrun_thread_ptid_changed): Remove bit updating ptids in the
7870         displaced step queue.
7871         (do_target_resume): Adjust.
7872         (fetch_inferior_event): Use inferior_thread.
7873         (context_switch, get_inferior_stop_soon): Take an
7874         execution_control_state pointer instead of a ptid_t.  All callers
7875         adjusted.
7876         (switch_to_thread_cleanup): Delete.
7877         (stop_all_threads): Use scoped_restore_current_thread.
7878         * inline-frame.c: Include "gdbthread.h".
7879         (inline_state) <inline_state>: Take a thread pointer instead of a
7880         ptid_t.  All callers adjusted.
7881         <ptid>: Delete, replaced by ...
7882         <thread>: ... this new field.
7883         (find_inline_frame_state): Take a thread pointer instead of a
7884         ptid_t.  All callers adjusted.
7885         (skip_inline_frames, step_into_inline_frame)
7886         (inline_skipped_frames, inline_skipped_symbol): Take a thread
7887         pointer instead of a ptid_t.  All callers adjusted.
7888         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
7889         (inline_skipped_frames, inline_skipped_symbol): Likewise.
7890         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
7891         pointers directly.
7892         * linux-nat.c (get_detach_signal): Likewise.
7893         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
7894         (thread_db_notice_clone): Adjust.
7895         (thread_db_find_new_threads_silently)
7896         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
7897         a thread pointer instead of a ptid_t.  All callers adjusted.
7898         * mi/mi-cmd-var.c: Include "inferior.h".
7899         (mi_cmd_var_update_iter): Update to use thread pointers.
7900         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
7901         inferior directly.
7902         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
7903         out to ...
7904         (mi_output_running): ... this new function.
7905         (mi_on_resume_1): Adjust to use it.
7906         (mi_user_selected_context_changed): Adjust to use inferior_thread.
7907         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
7908         directly.
7909         (interrupt_thread_callback): : Adjust to use thread and inferior
7910         pointers.
7911         * proc-service.c: Include "gdbthread.h".
7912         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
7913         * progspace-and-thread.c: Include "inferior.h".
7914         * progspace.c: Include "inferior.h".
7915         * python/py-exitedevent.c (create_exited_event_object): Adjust to
7916         hold a reference to an inferior_object.
7917         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
7918         inferior_thread.
7919         * python/py-inferior.c (struct inferior_object): Give the type a
7920         tag name instead of a typedef.
7921         (python_on_normal_stop): No need to check if the current thread is
7922         listed.
7923         (inferior_to_inferior_object): Change return type to
7924         inferior_object.  All callers adjusted.
7925         (find_thread_object): Delete, bits factored out to ...
7926         (thread_to_thread_object): ... this new function.
7927         * python/py-infthread.c (create_thread_object): Use
7928         inferior_to_inferior_object.
7929         (thpy_is_stopped): Use thread pointer directly.
7930         (gdbpy_selected_thread): Use inferior_thread.
7931         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
7932         field, replaced with ...
7933         <thread>: ... this new field.  All users adjusted.
7934         (btpy_insn_or_gap_new): Drop const.
7935         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
7936         callers adjusted.
7937         * python/py-record.c: Include "gdbthread.h".
7938         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7939         a ptid_t.  All callers adjusted.
7940         (gdbpy_current_recording): Use inferior_thread.
7941         * python/py-record.h (recpy_record_object) <ptid>: Delete
7942         field, replaced with ...
7943         <thread>: ... this new field.  All users adjusted.
7944         (recpy_element_object) <ptid>: Delete
7945         field, replaced with ...
7946         <thread>: ... this new field.  All users adjusted.
7947         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7948         a ptid_t.  All callers adjusted.
7949         * python/py-threadevent.c: Include "gdbthread.h".
7950         (get_event_thread): Use thread_to_thread_object.
7951         * python/python-internal.h (struct inferior_object): Forward
7952         declare.
7953         (find_thread_object, find_inferior_object): Delete declarations.
7954         (thread_to_thread_object, inferior_to_inferior_object): New
7955         declarations.
7956         * record-btrace.c: Include "inferior.h".
7957         (require_btrace_thread): Use inferior_thread.
7958         (record_btrace_frame_sniffer)
7959         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
7960         (get_thread_current_frame): Use scoped_restore_current_thread and
7961         switch_to_thread.
7962         (get_thread_current_frame): Use thread pointer directly.
7963         (record_btrace_replay_at_breakpoint): Use thread's inferior
7964         pointer directly.
7965         * record-full.c: Include "inferior.h".
7966         * regcache.c: Include "gdbthread.h".
7967         (get_thread_arch_regcache): Use the inferior's address space
7968         directly.
7969         (get_thread_regcache, registers_changed_thread): New.
7970         * regcache.h (get_thread_regcache(thread_info *thread)): New
7971         overload.
7972         (registers_changed_thread): New.
7973         (remote_target) <remote_detach_1>: Swap order of parameters.
7974         (remote_add_thread): <remote_add_thread>: Return the new thread.
7975         (get_remote_thread_info(ptid_t)): New overload.
7976         (remote_target::remote_notice_new_inferior): Use thread pointers
7977         directly.
7978         (remote_target::process_initial_stop_replies): Use
7979         thread_info::set_running.
7980         (remote_target::remote_detach_1, remote_target::detach)
7981         (extended_remote_target::detach): Adjust.
7982         * stack.c (frame_show_address): Use inferior_thread.
7983         * target-debug.h (target_debug_print_thread_info_pp): New.
7984         * target-delegates.c: Regenerate.
7985         * target.c (default_thread_address_space): Delete.
7986         (memory_xfer_partial_1): Use current_inferior.
7987         (target_detach): Use current_inferior.
7988         (target_thread_address_space): Delete.
7989         (generic_mourn_inferior): Use current_inferior.
7990         * target.h (struct target_ops) <thread_address_space>: Delete.
7991         (target_thread_address_space): Delete.
7992         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
7993         pointers directly.
7994         (delete_thread_1, delete_thread, delete_thread_silent): Take a
7995         thread pointer instead of a ptid_t.  Adjust all callers.
7996         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
7997         (first_thread_of_process): Delete, replaced by ...
7998         (first_thread_of_inferior): ... this new function.  All callers
7999         adjusted.
8000         (any_thread_of_process): Rename to ...
8001         (any_thread_of_inferior): ... this, and take an inferior pointer.
8002         (any_live_thread_of_process): Rename to ...
8003         (any_live_thread_of_inferior): ... this, and take an inferior
8004         pointer.
8005         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
8006         (value_in_thread_stack_temporaries)
8007         (get_last_thread_stack_temporary): Take a thread pointer instead
8008         of a ptid_t.  Adjust all callers.
8009         (thread_info::set_running): New.
8010         (validate_registers_access): Use inferior_thread.
8011         (can_access_registers_ptid): Rename to ...
8012         (can_access_registers_thread): ... this, and take a thread
8013         pointer.
8014         (print_thread_info_1): Adjust to compare thread pointers instead
8015         of ptids.
8016         (switch_to_no_thread, switch_to_thread): Make extern.
8017         (scoped_restore_current_thread::~scoped_restore_current_thread):
8018         Use m_thread pointer directly.
8019         (scoped_restore_current_thread::scoped_restore_current_thread):
8020         Use inferior_thread.
8021         (thread_command): Use thread pointer directly.
8022         (thread_num_make_value_helper): Use inferior_thread.
8023         * top.c (execute_command): Use inferior_thread.
8024         * tui/tui-interp.c: Include "inferior.h".
8025         * varobj.c (varobj_create): Use inferior_thread.
8026         (value_of_root_1): Use find_thread_global_id instead of
8027         global_thread_id_to_ptid.
8028
8029 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
8030
8031         * regcache.c (readable_regcache::read_part): Avoid memcpy when
8032         possible.
8033         (regcache::write_part): Likewise.
8034         (readable_regcache::cooked_read_part): Update comment.
8035         (readable_regcache::cooked_write_part): Likewise.
8036         * regcache.h: (readable_regcache::read_part): Likewise.
8037         (regcache::write_part): Likewise.
8038
8039 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
8040             Dirk Schubert  <dirk.schubert@arm.com>
8041
8042         * aarch64-linux-nat.c (post_attach): New.
8043         (aarch64_linux_nat_target::post_attach): Override post_attach to
8044         record the number of hardware debug registers.
8045
8046 2018-06-20  Tom Tromey  <tom@tromey.com>
8047
8048         * python/py-param.c (add_setshow_generic): Make parameters const.
8049         (parmpy_init): Update.
8050
8051 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
8052
8053         * regcache.h (regcache_cooked_read_ftype): Rename to...
8054         (register_read_ftype): ...this, change type to function_view.
8055         (class reg_buffer) <save>: Remove src parameter.
8056         (readonly_detached_regcache) <readonly_detached_regcache>: Make
8057         parameter non-const in first overload.  Remove src parameter in
8058         second overload.
8059         * regcache.c (do_cooked_read): Remove.
8060         (readonly_detached_regcache::readonly_detached_regcache): Make
8061         parameter non-const, adjust call to other constructor.
8062         (reg_buffer::save): Remove src parameter.
8063         * frame.c (do_frame_register_read): Remove.
8064         (frame_save_as_regcache): Use lambda function.
8065         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
8066         parameter to ppu2spu_data *.
8067         (ppu2spu_sniffer): Use lambda function.
8068
8069 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
8070
8071         * record-full.c (record_full_target::insert_breakpoint): Remove
8072         "struct" keyword, add const.
8073
8074 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
8075
8076         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
8077         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
8078         * configure.ac: Remove AC_PREREQ, add missing quoting.
8079         * gnulib/configure.ac: Modernize usage of
8080         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
8081         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
8082         (AUTOMAKE_VERSION): Bump to 1.15.1.
8083         * configure: Re-generate.
8084         * config.in: Re-generate.
8085         * aclocal.m4: Re-generate.
8086         * gnulib/aclocal.m4: Re-generate.
8087         * gnulib/config.in: Re-generate.
8088         * gnulib/configure: Re-generate.
8089         * gnulib/import/Makefile.in: Re-generate.
8090
8091 2018-06-19  Pedro Alves  <palves@redhat.com>
8092
8093         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
8094         (lookup_minimal_symbol_by_pc_section): ... here with
8095         gdb_assert_not_reached added.
8096
8097 2018-06-19  Pedro Alves  <palves@redhat.com>
8098
8099         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
8100         parameter with a block parameter.  Compare location's block symbol
8101         with the frame's block instead of addresses.
8102         (skip_inline_frames): Pass the current block instead of the
8103         frame's address.  Break out as soon as we determine the frame
8104         should not be skipped.
8105
8106 2018-06-18  Tom Tromey  <tom@tromey.com>
8107
8108         * solib-aix.c (solib_aix_get_section_offsets): Return
8109         unique_xmalloc_ptr.
8110         (solib_aix_solib_create_inferior_hook): Update.
8111
8112 2018-06-18  Tom Tromey  <tom@tromey.com>
8113
8114         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
8115
8116 2018-06-18  Tom Tromey  <tom@tromey.com>
8117
8118         * solib-frv.c (frv_relocate_main_executable): Use
8119         unique_xmalloc_ptr.
8120         * solib-dsbt.c (dsbt_relocate_main_executable): Use
8121         unique_xmalloc_ptr.
8122
8123 2018-06-18  Tom Tromey  <tom@tromey.com>
8124
8125         * objfiles.h (inhibit_section_map_updates): Update.
8126         (resume_section_map_updates, resume_section_map_updates_cleanup):
8127         Remove.
8128         * solib-svr4.c (svr4_handle_solib_event): Update.
8129         * objfiles.c (inhibit_section_map_updates): Return
8130         scoped_restore_tmpl<int>.
8131         (resume_section_map_updates, resume_section_map_updates_cleanup):
8132         Remove.
8133
8134 2018-06-18  Tom Tromey  <tom@tromey.com>
8135
8136         * valprint.h (read_string): Update.
8137         * valprint.c (read_string): Change type of "buffer".
8138         (val_print_string): Update.
8139         * python/py-value.c (valpy_string): Update.
8140         * language.h (struct language_defn) <la_get_string>: Change
8141         type of "buffer".
8142         (default_get_string, c_get_string): Update.
8143         * language.c (default_get_string): Change type of "buffer".
8144         * guile/scm-value.c (gdbscm_value_to_string): Update.
8145         * c-lang.c (c_get_string): Change type of "buffer".
8146
8147 2018-06-18  Tom Tromey  <tom@tromey.com>
8148
8149         * ser-mingw.c (struct pipe_state_destroyer): New.
8150         (pipe_state_up): New typedef.
8151         (cleanup_pipe_state): Remove.
8152         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
8153
8154 2018-06-18  Tom Tromey  <tom@tromey.com>
8155
8156         * rust-lang.h (rust_yyerror): Don't declare.
8157         * rust-lang.c (rust_language_defn): Update.
8158         * rust-exp.y (yyerror): Now static.
8159         * parse.c (parse_exp_in_context_1): Update.
8160         * p-lang.h (p_yyerror): Don't declare.
8161         * p-lang.c (p_language_defn): Update.
8162         * p-exp.y (yyerror): Now static.
8163         * opencl-lang.c (opencl_language_defn): Update.
8164         * objc-lang.c (objc_language_defn): Update.
8165         * m2-lang.h (m2_yyerror): Don't declare.
8166         * m2-lang.c (m2_language_defn): Update.
8167         * m2-exp.y (yyerror): Now static.
8168         * language.h (struct language_defn) <la_error>: Remove.
8169         * language.c (unk_lang_error): Remove.
8170         (unknown_language_defn, auto_language_defn): Remove.
8171         * go-lang.h (go_yyerror): Don't declare.
8172         * go-lang.c (go_language_defn): Update.
8173         * go-exp.y (yyerror): Now static.
8174         * f-lang.h (f_yyerror): Don't declare.
8175         * f-lang.c (f_language_defn): Update.
8176         * f-exp.y (yyerror): Now static.
8177         * d-lang.h (d_yyerror): Don't declare.
8178         * d-lang.c (d_language_defn): Update.
8179         * d-exp.y (yyerror): Now static.
8180         * c-lang.h (c_yyerror): Don't declare.
8181         * c-lang.c (c_language_defn, cplus_language_defn)
8182         (asm_language_defn, minimal_language_defn): Update.
8183         * c-exp.y (yyerror): Now static.
8184         * ada-lang.h (ada_yyerror): Don't declare.
8185         * ada-lang.c (ada_language_defn): Update.
8186         * ada-exp.y (yyerror): Now static.
8187
8188 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
8189
8190         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
8191         (store_sveregs_to_thread): Likewise.
8192         (aarch64_linux_fetch_inferior_registers): Check for SVE.
8193         (aarch64_linux_store_inferior_registers): Likewise.
8194         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
8195         function.
8196         (aarch64_sve_regs_copy_to_regcache): Likewise.
8197         (aarch64_sve_regs_copy_from_regcache): Likewise.
8198         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
8199         declaration.
8200         (aarch64_sve_regs_copy_to_regcache): Likewise.
8201         (aarch64_sve_regs_copy_from_regcache): Likewise.
8202         (sve_context): Structure from Linux headers.
8203         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
8204         (SVE_SIG_ZREG_SIZE): Likewise.
8205         (SVE_SIG_PREG_SIZE): Likewise.
8206         (SVE_SIG_FFR_SIZE): Likewise.
8207         (SVE_SIG_REGS_OFFSET): Likewise.
8208         (SVE_SIG_ZREGS_OFFSET): Likewise.
8209         (SVE_SIG_ZREG_OFFSET): Likewise.
8210         (SVE_SIG_ZREGS_SIZE): Likewise.
8211         (SVE_SIG_PREGS_OFFSET): Likewise.
8212         (SVE_SIG_PREG_OFFSET): Likewise.
8213         (SVE_SIG_PREGS_SIZE): Likewise.
8214         (SVE_SIG_FFR_OFFSET): Likewise.
8215         (SVE_SIG_REGS_SIZE): Likewise.
8216         (SVE_SIG_CONTEXT_SIZE): Likewise.
8217         (SVE_PT_REGS_MASK): Likewise.
8218         (SVE_PT_REGS_FPSIMD): Likewise.
8219         (SVE_PT_REGS_SVE): Likewise.
8220         (SVE_PT_VL_INHERIT): Likewise.
8221         (SVE_PT_VL_ONEXEC): Likewise.
8222         (SVE_PT_REGS_OFFSET): Likewise.
8223         (SVE_PT_FPSIMD_OFFSET): Likewise.
8224         (SVE_PT_FPSIMD_SIZE): Likewise.
8225         (SVE_PT_SVE_ZREG_SIZE): Likewise.
8226         (SVE_PT_SVE_PREG_SIZE): Likewise.
8227         (SVE_PT_SVE_FFR_SIZE): Likewise.
8228         (SVE_PT_SVE_FPSR_SIZE): Likewise.
8229         (SVE_PT_SVE_FPCR_SIZE): Likewise.
8230         (__SVE_SIG_TO_PT): Likewise.
8231         (SVE_PT_SVE_OFFSET): Likewise.
8232         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
8233         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
8234         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
8235         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
8236         (SVE_PT_SVE_PREG_OFFSET): Likewise.
8237         (SVE_PT_SVE_PREGS_SIZE): Likewise.
8238         (SVE_PT_SVE_FFR_OFFSET): Likewise.
8239         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
8240         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
8241         (SVE_PT_SVE_SIZE): Likewise.
8242         (SVE_PT_SIZE): Likewise.
8243         (HAS_SVE_STATE): New define.
8244
8245 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
8246
8247         * nat/aarch64-sve-linux-sigcontext.h: New file.
8248         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
8249         new files.
8250         (SVE_VQ_MIN): Likewise.
8251         (SVE_VQ_MAX): Likewise.
8252         (SVE_VL_MIN): Likewise.
8253         (SVE_VL_MAX): Likewise.
8254         (SVE_NUM_ZREGS): Likewise.
8255         (SVE_NUM_PREGS): Likewise.
8256         (sve_vl_valid): Likewise.
8257         (struct user_sve_header): Likewise.
8258
8259 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
8260             Richard Bunt <Richard.Bunt@arm.com>
8261
8262         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
8263         was requested by GDB.
8264
8265 2018-06-15  Tom de Vries  <tdevries@suse.de>
8266
8267         * MAINTAINERS (Write After Approval): Add Tom de Vries.
8268
8269 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
8270
8271         * gnulib/update-gnulib.sh: Print expected versions of
8272         autoconf/aclocal.
8273
8274 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
8275
8276         * arch-utils.c (default_type_align): Use type_length_units.
8277         * gdbtypes.c (type_align): Use type_length_units.
8278
8279 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8280
8281         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
8282         of 'define' command.
8283
8284 2018-06-14  Tom de Vries  <tdevries@suse.de>
8285
8286         PR cli/22573
8287         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
8288         get_no_prettyformat_print_options.
8289
8290 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
8291
8292         * sparc-nat.h: Include target.h.
8293         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
8294         <fetch_registers>: Remove this argument in function call.
8295         <store_registers>: Remove this argument in function call, remove
8296         extra semicolon.
8297         <low_forget_process>: Call sparc64_forget_process instead of
8298         sparc_forget_process.
8299
8300 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
8301
8302         * procfs.c (_initialize_procfs): Use add_inf_child_target.
8303         (procfs_target::make_corefile_notes): Adjust to new
8304         target_read_alloc return type.
8305
8306 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8307             Stephen Roberts  <stephen.roberts@arm.com>
8308
8309         PR gdb/22882
8310         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
8311         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
8312         Move should_notify_stop local into more inner scope.
8313
8314 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8315             Stephen Roberts  <stephen.roberts@arm.com>
8316
8317         PR gdb/22882
8318         * infrun.c (resume_1): Add call to mark_async_event_handler.
8319
8320 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8321
8322         * infrun.c (do_target_wait): Change old version of $pc printed.
8323
8324 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
8325
8326         * dwarf2read.c (read_index_from_section): Rename to...
8327         (read_gdb_index_from_section): ... this, update all callers.
8328         (dwarf2_read_index): Rename to...
8329         (dwarf2_read_gdb_index): ... this, update all callers.
8330
8331 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
8332
8333         * hppa-linux-nat.c
8334         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
8335         hppa_linux_nat_target::fetch_registers.
8336
8337 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8338
8339         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
8340         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
8341         (AARCH64_DWARF_SVE_FFR): Likewise.
8342         (AARCH64_DWARF_SVE_P0): Likewise.
8343         (AARCH64_DWARF_SVE_Z0): Likewise.
8344
8345 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8346
8347         * common/common-regcache.h (raw_compare): New function.
8348         * regcache.c (regcache::raw_compare): Likewise.
8349         * regcache.h (regcache::raw_compare): New declaration.
8350
8351 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8352
8353         * common/common-regcache.h (reg_buffer_common): New structure.
8354         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
8355         (reg_buffer::raw_supply): Likewise.
8356         (reg_buffer::raw_supply_integer): Likewise.
8357         (reg_buffer::raw_supply_zeroed): Likewise.
8358         (reg_buffer::raw_collect): Likewise.
8359         (reg_buffer::raw_collect_integer): Likewise.
8360         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
8361         (reg_buffer::raw_supply): Likewise.
8362         (reg_buffer::raw_supply_integer): Likewise.
8363         (reg_buffer::raw_supply_zeroed): Likewise.
8364         (reg_buffer::raw_collect): Likewise.
8365         (reg_buffer::raw_collect_integer): Likewise.
8366
8367 2018-06-10  Tom Tromey  <tom@tromey.com>
8368
8369         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
8370         (class remote_state) <stop_reply_queue>: Now std::vector.
8371         (remote_state::~remote_state)
8372         (remote_target::stop_reply_queue_length): Update.
8373         (struct queue_iter_param, remove_child_of_pending_fork)
8374         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
8375         (check_pending_event_prevents_wildcard_vcont_callback)
8376         (remove_stop_reply_for_inferior)
8377         (remove_stop_reply_of_remote_state)
8378         (remote_notif_remove_once_on_match)
8379         (stop_reply_match_ptid_and_ws)
8380         (remote_kill_child_of_pending_fork): Remove.
8381         (remote_target::remove_new_fork_children)
8382         (remote_target::check_pending_events_prevent_wildcard_vcont)
8383         (remote_target::discard_pending_stop_replies)
8384         (remote_target::discard_pending_stop_replies_in_queue)
8385         (remote_target::remote_notif_remove_queued_reply)
8386         (remote_target::queued_stop_reply)
8387         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
8388         (remote_target::wait, remote_target::kill_new_fork_children)
8389         (remote_target::async): Update.
8390
8391 2018-06-10  Tom Tromey  <tom@tromey.com>
8392
8393         * record-full.c (record_full_arch_list_cleanups): Remove.
8394         (record_full_message): Use try/catch.
8395         (record_full_wait_cleanups): Remove.
8396         (record_full_wait_1): Use try/catch.
8397         (record_full_restore): Likewise.
8398
8399 2018-06-10  Tom Tromey  <tom@tromey.com>
8400
8401         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
8402         declare VEC.  Add constructor.
8403         <in_target_beneath>: Now bool.
8404         (record_full_breakpoints): Now a std::vector, static.
8405         (record_full_sync_record_breakpoints)
8406         (record_full_init_record_breakpoints)
8407         (record_full_target::insert_breakpoint)
8408         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
8409
8410 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
8411
8412         * dwarf2read.c (process_cu_includes): Remove struct keyword.
8413         * serial.c (serial_interface_lookup): Remove struct keyword.
8414
8415 2018-06-10  Tom Tromey  <tom@tromey.com>
8416
8417         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
8418         method.
8419         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
8420         a method.
8421         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
8422         method.
8423         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
8424         "beneath" as a method.
8425         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
8426         Use "beneath" as a method.
8427
8428 2018-06-10  Tom Tromey  <tom@tromey.com>
8429
8430         * tracefile.c (struct trace_file_writer_deleter): New.
8431         <operator()>: Rename from trace_file_writer_xfree.
8432         (trace_file_writer_up): New typedef.
8433         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
8434
8435 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8436
8437         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
8438         <m_registers, m_register_status>: Change type to
8439         std::unique_ptr.
8440         * regcache.c (reg_buffer::reg_buffer): Use new instead of
8441         XCNEWVEC.
8442
8443 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8444
8445         * common/common-regcache.h (enum register_status): Add
8446         underlying type "signed char".
8447         * regcache.h (reg_buffer) <m_register_status>: Change type to
8448         register_status *.
8449         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
8450         register_status instead of signed char.
8451         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
8452         (reg_buffer::get_register_status): Remove cast.
8453         (readable_regcache::raw_read): Remove cast.
8454         (readable_regcache::cooked_read): Remove cast.
8455
8456 2018-06-09  Tom Tromey  <tom@tromey.com>
8457
8458         * source.c (reverse_search_command, forward_search_command): Use
8459         scoped_fd.
8460
8461 2018-06-09  Tom Tromey  <tom@tromey.com>
8462
8463         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
8464         (serial_ops_list): Now static, std::vector.
8465         (serial_interface_lookup, serial_add_interface): Update.
8466
8467 2018-06-09  Tom Tromey  <tom@tromey.com>
8468
8469         * dwarf2read.c (process_cu_includes): Update.
8470         (process_full_comp_unit): Update.
8471         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
8472         std::vector.
8473
8474 2018-06-08  Paul Koning  <paul_koning@dell.com>
8475
8476         PR gdb/23252
8477
8478         * python/python.c (do_start_initialization):
8479         Avoid call to internal Python API.
8480         (init__gdb_module): New function.
8481
8482 2018-06-08  Gary Benson <gbenson@redhat.com>
8483
8484         * linux-thread-db.c (valprint.h): New include.
8485         (struct check_thread_db_info): New structure.
8486         (check_thread_db_on_load, tdb_testinfo): New static globals.
8487         (check_thread_db, check_thread_db_callback): New functions.
8488         (try_thread_db_load_1): Run integrity checks if requested.
8489         (maintenance_check_libthread_db): New function.
8490         (_initialize_thread_db): Register "maint check libthread-db"
8491         and "maint set/show check-libthread-db".
8492         * NEWS: Mention the above new commands.
8493
8494 2018-06-08  Tom Tromey  <tom@tromey.com>
8495
8496         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
8497         now a method.
8498
8499 2018-06-08  Tom Tromey  <tom@tromey.com>
8500
8501         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
8502
8503 2018-06-08  Tom Tromey  <tom@tromey.com>
8504
8505         * common/btrace-common.h (struct btrace_data): Add constructor,
8506         destructor, move assignment operator.
8507         <empty, clear, fini>: New methods.
8508         <format>: Initialize.
8509         (btrace_data_init, btrace_data_fini, btrace_data_clear)
8510         (btrace_data_empty): Don't declare.
8511         * common/btrace-common.c (btrace_data_init): Remove.
8512         (btrace_data::fini): Rename from btrace_data_fini.
8513         (btrace_data::empty): Rename from btrace_data_empty.
8514         (btrace_data::clear): Rename from btrace_data_clear.  Return
8515         bool.
8516         * btrace.h (make_cleanup_btrace_data): Don't declare.
8517         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
8518         (parse_xml_btrace): Update.
8519         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
8520         (maint_btrace_clear_packet_history_cmd): Update.
8521
8522 2018-06-07  Pedro Alves  <palves@redhat.com>
8523
8524         * target.h (target_ops) <beneath>: Now a method.  All references
8525         updated.
8526         (class target_stack): New.
8527         * target.c (g_target_stack): New.
8528         (g_current_top_target): Delete.
8529         (current_top_target): Get the top target out of g_target_stack.
8530         (target_stack::push, target_stack::unpush): New.
8531         (push_target, unpush_target): Reimplement.
8532         (target_is_pushed): Reimplement in terms of g_target_stack.
8533         (target_ops::beneath, target_stack::find_beneath): New.
8534
8535 2018-06-07  Pedro Alves  <palves@redhat.com>
8536
8537         * target.h (find_target_beneath): Delete declaration.
8538         * target.c (find_target_beneath): Delete definition.
8539         * aix-thread.c: All callers of find_target_beneath adjusted to
8540         call target_ops::beneath instead.
8541         * bsd-uthread.c: Likewise.
8542         * linux-thread-db.c: Likewise.
8543         * ravenscar-thread.c: Likewise.
8544         * sol-thread.c: Likewise.
8545         * spu-multiarch.c: Likewise.
8546
8547 2018-06-07  Pedro Alves  <palves@redhat.com>
8548
8549         * target.h (target_ops) <beneath>: Now a method.  All references
8550         updated.
8551         (target_ops) <m_beneath>: New.
8552         * target.c (target_ops::beneath): New.
8553         * corelow.c: Adjust all references to target_ops::beneath.
8554         * linux-thread-db.c: Likewise.
8555         * make-target-delegates: Likewise.
8556         * record-btrace.c: Likewise.
8557         * record-full.c: Likewise.
8558         * remote.c: Likewise.
8559         * target.c: Likewise.
8560         * target-delegates.c: Regenerate.
8561
8562 2018-06-07  Pedro Alves  <palves@redhat.com>
8563
8564         * target.h (target_stack): Delete.
8565         (current_top_target): Declare function.
8566         * target.c (target_stack): Delete.
8567         (g_current_top_target): New.
8568         (current_top_target): New function.
8569         * auxv.c: Use current_top_target instead of target_stack
8570         throughout.
8571         * avr-tdep.c: Likewise.
8572         * breakpoint.c: Likewise.
8573         * corefile.c: Likewise.
8574         * elfread.c: Likewise.
8575         * eval.c: Likewise.
8576         * exceptions.c: Likewise.
8577         * frame.c: Likewise.
8578         * gdbarch-selftests.c: Likewise.
8579         * gnu-v3-abi.c: Likewise.
8580         * ia64-tdep.c: Likewise.
8581         * ia64-vms-tdep.c: Likewise.
8582         * infcall.c: Likewise.
8583         * infcmd.c: Likewise.
8584         * infrun.c: Likewise.
8585         * linespec.c: Likewise.
8586         * linux-tdep.c: Likewise.
8587         * minsyms.c: Likewise.
8588         * ppc-linux-nat.c: Likewise.
8589         * ppc-linux-tdep.c: Likewise.
8590         * procfs.c: Likewise.
8591         * regcache.c: Likewise.
8592         * remote.c: Likewise.
8593         * rs6000-tdep.c: Likewise.
8594         * s390-linux-nat.c: Likewise.
8595         * s390-tdep.c: Likewise.
8596         * solib-aix.c: Likewise.
8597         * solib-darwin.c: Likewise.
8598         * solib-dsbt.c: Likewise.
8599         * solib-spu.c: Likewise.
8600         * solib-svr4.c: Likewise.
8601         * solib-target.c: Likewise.
8602         * sparc-tdep.c: Likewise.
8603         * sparc64-tdep.c: Likewise.
8604         * spu-tdep.c: Likewise.
8605         * symfile.c: Likewise.
8606         * symtab.c: Likewise.
8607         * target-descriptions.c: Likewise.
8608         * target-memory.c: Likewise.
8609         * target.c: Likewise.
8610         * target.h: Likewise.
8611         * tracefile-tfile.c: Likewise.
8612         * tracepoint.c: Likewise.
8613         * valops.c: Likewise.
8614         * valprint.c: Likewise.
8615         * value.c: Likewise.
8616         * windows-tdep.c: Likewise.
8617         * mi/mi-main.c: Likewise.
8618
8619 2018-06-07  Tom Tromey  <tom@tromey.com>
8620
8621         * valprint.h (build_address_symbolic): Declare.
8622         * printcmd.c (print_address_symbolic): Update.
8623         (build_address_symbolic): Change "name" and "filename" to
8624         std::string.
8625         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
8626         Update.
8627         * defs.h (build_address_symbolic): Remove declaration.
8628
8629 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
8630
8631         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
8632         (aarch64_vnv_type): Add function.
8633         (aarch64_pseudo_register_name): Add V regs for SVE.
8634         (aarch64_pseudo_register_type): Likewise.
8635         (aarch64_pseudo_register_reggroup_p): Likewise.
8636         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
8637         (aarch64_pseudo_read_value): Add V regs for SVE.
8638         (aarch64_pseudo_write_2): Use V0 offset for SVE
8639         (aarch64_pseudo_write): Add V regs for SVE.
8640         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
8641
8642 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
8643
8644         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
8645         (sve_vl_from_vq): Likewise.
8646
8647 2018-06-05  Tom Tromey  <tom@tromey.com>
8648
8649         * cli/cli-cmds.c (show_version): Update.
8650         * top.c (print_gdb_version): Add "interactive" parameter.
8651         Update.
8652         * main.c (captured_main_1): Update.
8653         * top.h (print_gdb_version): Add "interactive" parameter and a
8654         comment.
8655
8656 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
8657
8658         * common/enum-flags.h: Add trailing semicolon to example in
8659         comment.
8660
8661 2018-06-05  Tom Tromey  <tom@tromey.com>
8662
8663         PR cli/12326:
8664         * NEWS: Add entry about pager.
8665         * utils.c (pagination_disabled_for_command): New global.
8666         (prompt_for_continue): Allow "c" response to prompt.
8667         (reinitialize_more_filter): Clear
8668         pagination_disabled_for_command.
8669         (fputs_maybe_filtered): Check pagination_disabled_for_command.
8670
8671 2018-06-04  Tom Tromey  <tom@tromey.com>
8672
8673         * ada-lang.h (ada_lookup_symbol_list): Update.
8674         * ada-lang.c (resolve_subexp): Update.
8675         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
8676         parameter.
8677         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
8678         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
8679         results parameter to std::vector.
8680         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
8681         Update.
8682         * ada-exp.y (block_lookup): Update.
8683         (select_possible_type_sym): Change type of syms.  Remove nsyms
8684         parameter.
8685         (write_var_or_type, write_name_assoc): Update.
8686
8687 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
8688
8689         * windows-nat.c (windows_nat_target::xfer_partial): Return
8690         TARGET_XFER_E_IO if we need to delegate to the target beneath
8691         but BENEATH is NULL.
8692
8693 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
8694
8695         * Makefile.in (config.status): Add configure.nat as a
8696         dependency.
8697
8698 2018-06-04  Tom Tromey  <tom@tromey.com>
8699
8700         * cp-name-parser.y (cpname_state): Add method declarations.
8701         (HANDLE_QUAL): Update.
8702         (cpname_state::d_grab, cpname_state::fill_comp)
8703         (cpname_state::make_operator, cpname_state::make_dtor)
8704         (cpname_state::make_builtin_type, cpname_state::make_name)
8705         (cpname_state::d_qualify, cpname_state::d_int_type)
8706         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
8707         (%union): Move earlier.
8708
8709 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8710
8711         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
8712
8713 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8714
8715         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
8716         (aarch64_pseudo_write_1): Likewise.
8717         (aarch64_pseudo_read_value): Use helper.
8718         (aarch64_pseudo_write): Likewise.
8719
8720 2018-06-04  Pedro Alves  <palves@redhat.com>
8721
8722         * darwin-nat.c (darwin_ops): Delete.
8723         (darwin_attach_pid): Use get_native_target.
8724
8725 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8726
8727         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
8728         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
8729
8730 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8731
8732         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
8733         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
8734         (aarch64_gdbarch_init): Check for SVE.
8735         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
8736
8737 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8738
8739         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
8740         * aarch64-tdep.h (aarch64_read_description): Likewise.
8741         * arch/aarch64.c (aarch64_create_target_description): Likewise.
8742         * arch/aarch64.h (aarch64_create_target_description): Likewise.
8743         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
8744         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
8745         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
8746
8747 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
8748
8749         * value.c (value_fetch_lazy_bitfield): New.
8750         (value_fetch_lazy_memory): New.
8751         (value_fetch_lazy_register): New.
8752         (value_fetch_lazy): Factor out to smaller functions.
8753
8754 2018-06-01  Tom Tromey  <tom@tromey.com>
8755
8756         * cp-name-parser.y (backslashable, represented): Now const.
8757
8758 2018-06-01  Tom Tromey  <tom@tromey.com>
8759
8760         * cp-name-parser.y: Include parser-defs.h.
8761         (parser_fprintf): Remove declaration.
8762
8763 2018-06-01  Tom Tromey  <tom@tromey.com>
8764
8765         * cp-name-parser.y: Use %pure-parser, %lex-param, and
8766         %parse-param.
8767         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
8768         (global_result): Remove globals.
8769         (struct cpname_state): New.
8770         (yyparse): Don't declare.
8771         (yylex, yyerror): Move declarations after %union.
8772         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
8773         (make_name): Add state parameter.
8774         Update all callers.
8775         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
8776         parameter.
8777         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
8778         Update.
8779         (yylex): Add lvalp, state parameters.
8780         (yyerror): Add state parameter.
8781         (cp_demangled_name_to_comp): Update.
8782
8783 2018-06-01  Tom Tromey  <tom@tromey.com>
8784
8785         * cp-name-parser.y (parser_fprintf): Declare.
8786         (GDB_YY_REMAP_PREFIX): Define.
8787         Include yy-remap.h.  Don't redefine yy* identifiers.
8788
8789 2018-06-01  Tom Tromey  <tom@tromey.com>
8790
8791         * python/py-type.c (typy_legacy_template_argument): Update.
8792         * cp-support.h (cp_demangled_name_to_comp): Update.
8793         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
8794         parameter to be a "std::string *".
8795         (main): Update.
8796
8797 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
8798
8799         * ada-lex.l: Include "diagnostics.h" instead of
8800         "common/diagnostics.h".
8801         * unittests/environ-selftests.c: Likewise.
8802         * common/diagnostics.h: Moved to ../include.
8803
8804 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
8805
8806         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
8807         to language_mode_manual while calling breakpoint_re_set_one.
8808
8809 2018-06-01  Tom Tromey  <tom@tromey.com>
8810
8811         * valops.c (value_cast_structs, destructor_name_p): Update.
8812         * symtab.c (gdb_mangle_name): Update.
8813         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
8814         Update.
8815         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
8816         (pascal_object_print_value_fields, pascal_object_print_value):
8817         Update.
8818         * p-typeprint.c (pascal_type_print_derivation_info): Update.
8819         * linespec.c (find_methods): Update.
8820         * gdbtypes.h (type_name_no_tag): Remove.
8821         (type_name_or_error): Rename from type_name_no_tag_or_error.
8822         * gdbtypes.c (type_name_no_tag): Remove.
8823         (type_name_or_error): Rename from type_name_no_tag_or_error.
8824         (lookup_struct_elt_type, check_typedef): Update.
8825         * expprint.c (print_subexp_standard): Update.
8826         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
8827         * d-namespace.c (d_lookup_nested_symbol): Update.
8828         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
8829         (cp_print_class_member): Update.
8830         * cp-namespace.c (cp_lookup_nested_symbol): Update.
8831         * completer.c (add_struct_fields): Update.
8832         * c-typeprint.c (cp_type_print_derivation_info)
8833         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
8834         Update.
8835         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
8836         (ada_prefer_type, ada_is_exception_sym): Update.
8837
8838 2018-06-01  Tom Tromey  <tom@tromey.com>
8839
8840         * valops.c (enum_constant_from_type, value_namespace_elt)
8841         (value_maybe_namespace_elt): Update.
8842         * valarith.c (find_size_for_pointer_math): Update.
8843         * target-descriptions.c (make_gdb_type): Update.
8844         * symmisc.c (print_symbol): Update.
8845         * stabsread.c (define_symbol, read_type)
8846         (complain_about_struct_wipeout, add_undefined_type)
8847         (cleanup_undefined_types_1): Update.
8848         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
8849         (rust_range_type_p, val_print_struct, rust_print_struct_def)
8850         (rust_internal_print_type, rust_composite_type)
8851         (rust_evaluate_funcall, rust_evaluate_subexp)
8852         (rust_inclusive_range_type_p): Update.
8853         * python/py-type.c (typy_get_tag): Update.
8854         * p-typeprint.c (pascal_type_print_base): Update.
8855         * mdebugread.c (parse_symbol, parse_type): Update.
8856         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
8857         Update.
8858         * guile/scm-type.c (gdbscm_type_tag): Update.
8859         * go-lang.c (sixg_string_p): Update.
8860         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
8861         Update.
8862         * gdbtypes.h (struct main_type) <tag_name>: Remove.
8863         (TYPE_TAG_NAME): Remove.
8864         * gdbtypes.c (type_name_no_tag): Simplify.
8865         (check_typedef, check_types_equal, recursive_dump_type)
8866         (copy_type_recursive, arch_composite_type): Update.
8867         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
8868         in summary mode when needed.
8869         * eval.c (evaluate_funcall): Update.
8870         * dwarf2read.c (fixup_go_packaging, read_structure_type)
8871         (process_structure_scope, read_enumeration_type)
8872         (read_namespace_type, read_module_type, determine_prefix): Update.
8873         * cp-support.c (inspect_type): Update.
8874         * coffread.c (process_coff_symbol, decode_base_type): Update.
8875         * c-varobj.c (c_is_path_expr_parent): Update.
8876         * c-typeprint.c (c_type_print_base_struct_union): Update.
8877         (c_type_print_base_1): Update.  Print struct/class/union/enum in
8878         summary when using C language.
8879         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
8880         (gen_maybe_namespace_elt): Update.
8881         * ada-lang.c (ada_type_name): Simplify.
8882         (empty_record, ada_template_to_fixed_record_type_1)
8883         (template_to_static_fixed_type)
8884         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
8885
8886 2018-06-01  Tom Tromey  <tom@tromey.com>
8887
8888         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
8889         c_print_type.
8890         * c-typeprint.c (c_print_type_1): Add "language" parameter.
8891         (c_print_type): Update.
8892         (c_print_type): New overload.
8893         (c_type_print_varspec_prefix, c_type_print_args)
8894         (c_type_print_varspec_suffix, c_print_type_no_offsets)
8895         (c_type_print_base_struct_union, c_type_print_base_1)
8896         (cp_type_print_method_args): Add "language" parameter.
8897         (c_type_print_base): Update.
8898         * c-lang.h (c_print_type): Add new overload.
8899
8900 2018-06-01  Tom Tromey  <tom@tromey.com>
8901
8902         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
8903         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
8904
8905 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
8906
8907         * aarch64-tdep.c (aarch64_sve_register_names): New const
8908         var.
8909         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
8910         (AARCH64_SVE_Z_REGS_NUM): New define.
8911         (AARCH64_SVE_P_REGS_NUM): Likewise.
8912         (AARCH64_SVE_NUM_REGS): Likewise.
8913
8914 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
8915
8916         * nat/linux-ptrace.h [__alpha__]
8917         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
8918         definitions.
8919
8920 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
8921
8922         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
8923         the endianness selected.
8924         * NEWS: Document `set endian auto' mode operation update.
8925
8926 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8927
8928         * Makefile.in: Add new header.
8929         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
8930         (sve_vl_from_vg): Likewise.
8931         (sve_vq_from_vl): Likewise.
8932         (sve_vl_from_vq): Likewise.
8933         (sve_vq_from_vg): Likewise.
8934         (sve_vg_from_vq): Likewise.
8935         * configure.nat: Add new c file.
8936         * nat/aarch64-sve-linux-ptrace.c: New file.
8937         * nat/aarch64-sve-linux-ptrace.h: New file.
8938
8939 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8940
8941         * aarch64-linux-nat.c (aarch64_linux_read_description):
8942         Add parmeter zero.
8943         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
8944         Likewise.
8945         * aarch64-tdep.c (tdesc_aarch64_list): Add.
8946         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
8947         (aarch64_gdbarch_init): Add parmeter zero.
8948         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
8949         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
8950         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
8951         parmeter.
8952         * doc/gdb.texinfo: Describe SVE feature
8953         * features/aarch64-sve.c: New file.
8954
8955 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
8956
8957         PR gdb/23210
8958         * gdbarch.sh (significant_addr_bit): Default to zero when
8959         not set by target architecture.
8960         * gdbarch.c: Re-generated.
8961         * utils.c (address_significant): Update.
8962
8963 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
8964
8965         * stack.c (func_command): Remove trailing newline in call to error.
8966
8967 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8968
8969         * regcache.h (regcache_raw_collect): Remove, update callers to
8970         use regcache::raw_collect.
8971         * regcache.c (regcache_raw_collect): Remove.
8972
8973 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8974
8975         * regcache.h (regcache_raw_supply): Remove, update callers to
8976         use detached_regcache::raw_supply.
8977         * regcache.c (regcache_raw_supply): Remove.
8978
8979 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8980
8981         * regcache.h (regcache_cooked_write_part): Remove, update
8982         callers to use regcache::cooked_write_part.
8983         * regcache.c (regcache_cooked_write_part): Remove.
8984
8985 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8986
8987         * regcache.h (regcache_cooked_read_part): Remove, update callers
8988         to use readable_regcache::cooked_read_part.
8989         * regcache.c (regcache_cooked_read_part): Remove.
8990
8991 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8992
8993         * regcache.h (regcache_cooked_read_value): Remove, update
8994         callers to use readable_regcache::cooked_read_value.
8995         * regcache.c (regcache_cooked_read_value): Remove.
8996
8997 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8998
8999         * regcache.h (regcache_cooked_write): Remove, update callers to
9000         use regcache::cooked_write.
9001         * regcache.c (regcache_cooked_write): Remove.
9002
9003 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9004
9005         * regcache.h (regcache_invalidate): Remove, update callers to
9006         use detached_regcache::invalidate instead.
9007         * regcache.c (regcache_invalidate): Remove.
9008
9009 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9010
9011         * regcache.h (regcache_raw_write_part): Remove, update callers
9012         to use regcache::raw_write_part instead.
9013         * regcache.c (regcache_raw_write_part): Remove.
9014
9015 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9016
9017         * regcache.h (regcache_raw_read_part): Remove, update callers to
9018         use readable_regcache::raw_read_part instead.
9019         * regcache.c (regcache_raw_read_part): Remove.
9020
9021 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9022
9023         * regcache.h (regcache_cooked_read): Remove, update callers to
9024         use readable_regcache::cooked_read instead.
9025         * regcache.c (regcache_cooked_read): Remove.
9026
9027 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9028
9029         * regcache.h (regcache_raw_write): Remove, update callers to use
9030         regcache::raw_write instead.
9031         * regcache.c (regcache_raw_write): Remove.
9032
9033 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9034
9035         * regcache.h (regcache_raw_read): Remove, update callers to use
9036         readable_regcache::raw_read instead.
9037         * regcache.c (regcache_raw_read): Remove.
9038
9039 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9040
9041         * regcache.h (regcache_raw_update): Remove, update callers to
9042         use readable_regcache::raw_update instead.
9043         * regcache.c (regcache_raw_update): Remove.
9044
9045 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9046
9047         * regcache.h (regcache_register_status): Remove, update callers
9048         to use reg_buffer::get_register_status directly instead.
9049         * regcache.c (regcache_register_status): Remove.
9050
9051 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9052
9053         * regcache.h (regcache_get_ptid): Remove, update all callers to
9054         call regcache::ptid instead.
9055         * regcache.c (regcache_get_ptid): Remove.
9056
9057 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9058
9059         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
9060
9061 2018-05-30  Pedro Alves  <palves@redhat.com>
9062
9063         * common/common-exceptions.h (exception_rethrow): Use
9064         ATTRIBUTE_NORETURN.
9065
9066 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
9067
9068         * breakpoint.c (print_solib_event, check_status_catch_solib):
9069         Remove struct keyword in range-based for loops.
9070         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
9071         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
9072         Likewise.
9073         * linespec.c (find_superclass_methods, search_minsyms_for_name):
9074         Likewise.
9075         * symfile.c (addr_info_make_relative): Likewise.
9076         * thread.c (value_in_thread_stack_temporaries): Likewise.
9077
9078 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
9079
9080         PR gdb/16841
9081         * valops.c (value_struct_elt_for_reference): Call check_typedef on
9082         aggregate type to get its real type before accessing it.
9083
9084 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
9085
9086         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
9087         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
9088         * coff-pe-read.c (add_pe_forwarded_sym): Replace
9089         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
9090         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
9091         * jit.c (jit_breakpoint_re_set_internal): Likewise.
9092         * printcmd.c (info_address_command): Likewise.
9093
9094 2018-05-29  Tom Tromey  <tom@tromey.com>
9095
9096         * windows-nat.c (handle_exception): Update fall-through comment.
9097
9098 2018-05-29  Tom Tromey  <tom@tromey.com>
9099
9100         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
9101         (struct program_space) <added_solibs>: Now a std::vector.
9102         * breakpoint.c (print_solib_event): Update.
9103         (check_status_catch_solib): Update.
9104         * progspace.c (clear_program_space_solib_cache): Update.
9105         * solib.c (update_solib_list): Update.
9106
9107 2018-05-29  Tom Tromey  <tom@tromey.com>
9108
9109         * python/py-type.c (typy_richcompare): Update.
9110         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
9111         * gdbtypes.h (types_deeply_equal): Return bool.
9112         (types_equal): Likewise.
9113         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
9114         declare VEC.
9115         (check_types_equal): Change worklist to std::vector.  Return
9116         bool.
9117         (struct type_equality_entry): Add constructor.
9118         (compare_maybe_null_strings): Return bool.
9119         (check_types_worklist): Return bool.  Change worklist to
9120         std::vector.
9121         (types_deeply_equal): Use std::vector.
9122         (types_equal): Return bool.
9123         (compare_maybe_null_strings): Simplify.
9124
9125 2018-05-29  Tom Tromey  <tom@tromey.com>
9126
9127         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
9128
9129 2018-05-29  Tom Tromey  <tom@tromey.com>
9130
9131         * objc-lang.h: Don't include cp-support.h.
9132         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
9133         declare VEC.
9134
9135 2018-05-27  Tom Tromey  <tom@tromey.com>
9136
9137         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
9138
9139 2018-05-25  Tom Tromey  <tom@tromey.com>
9140
9141         * value.c (value::location): Initialize.
9142
9143 2018-05-25  Tom Tromey  <tom@tromey.com>
9144
9145         * dbxread.c (init_bincl_list): Remove.
9146         (bincl_list): Now a std::vector.
9147         (bincls_allocated, next_bincl): Remove.
9148         (free_bincl_list, do_free_bincl_list_cleanup)
9149         (make_cleanup_free_bincl_list): Remove.
9150         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
9151         unique_xmalloc_ptr.
9152         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
9153         (struct header_file_location): Add constructor.
9154         (add_bincl_to_list): Remove.
9155
9156 2018-05-25  Tom Tromey  <tom@tromey.com>
9157
9158         * tui/tui.c (tui_enable): Update.
9159         * mi/mi-interp.c (mi_interp::init): Update.
9160         * interps.h (class interp) <name>: New method.
9161         <m_name>: Rename from name.
9162         (~scoped_restore_interp): Update.
9163         * interps.c (interp::interp): Update.
9164         (interp_add, interp_set, interp_lookup_existing)
9165         (current_interp_named_p): Update.
9166
9167 2018-05-25  Tom Tromey  <tom@tromey.com>
9168
9169         * interps.c (interp_name): Remove.
9170         * mi/mi-interp.c (mi_interp::init): Update.
9171         * interps.h (interp_name): Remove.
9172         (~scoped_restore_interp): Update.
9173         * tui/tui.c (tui_enable): Update.
9174
9175 2018-05-25  Tom Tromey  <tom@tromey.com>
9176
9177         * utils.c (fputs_maybe_filtered): Update.
9178         * linespec.c (decode_line_full): Update.
9179         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
9180         (mi_print_breakpoint_for_event, mi_solib_loaded)
9181         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
9182         (mi_user_selected_context_changed): Update.
9183         * mi/mi-main.c (mi_execute_command): Update.
9184         * cli/cli-script.c (execute_control_command): Update.
9185         * python/python.c (execute_gdb_command): Update.
9186         * solib.c (info_sharedlibrary_command): Update.
9187         * interps.c (interp_ui_out): Remove.
9188         * interps.h (interp_ui_out): Remove.
9189
9190 2018-05-25  Tom Tromey  <tom@tromey.com>
9191
9192         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
9193         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
9194         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
9195
9196 2018-05-25  Tom Tromey  <tom@tromey.com>
9197
9198         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
9199         * interps.c (interp_exec): Use scoped_restore.
9200
9201 2018-05-25  Tom Tromey  <tom@tromey.com>
9202
9203         * remote.c (remote_target::remote_file_get): Use
9204         gdb::byte_vector.
9205         (remote_target::remote_file_put): Likewise.
9206
9207 2018-05-25  Tom Tromey  <tom@tromey.com>
9208
9209         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
9210         a std::string.
9211         (get_pe_section_index, add_pe_exported_sym): Update.
9212         (read_pe_exported_syms): Use gdb::def_vector.
9213
9214 2018-05-25  Tom Tromey  <tom@tromey.com>
9215
9216         * frame.c (remove_prev_frame): Remove.
9217         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
9218
9219 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
9220
9221         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
9222         Remove prototypes.
9223         * mips-linux-nat.c (supply_fpregset): Always call
9224         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
9225         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
9226         `mips_fill_fpregset'.
9227         * mips-linux-tdep.c (mips_supply_fpregset)
9228         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
9229         (mips_fill_fpregset_wrapper): Remove functions.
9230         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
9231         (mips_linux_fpregset): Remove variable.
9232         (mips_linux_iterate_over_regset_sections): Use
9233         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
9234         (mips_linux_o32_sigframe_init): Remove comment.
9235
9236 2018-05-25  Pedro Alves  <palves@redhat.com>
9237
9238         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
9239         (struct readahead_cache, struct packet_reg, struct
9240         remote_arch_state, class remote_state): Move higher up in the
9241         file.
9242         (remote_target::m_remote_state): Now an object instead of a pointer.
9243         (remote_target::get_remote_state): Adjust.
9244
9245 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
9246
9247         * stack.c (select_and_print_frame): Delete.
9248         (struct function_bounds): Move struct within function.
9249         (func_command): Most content moved into new function
9250         find_frame_for_function, use new function, print result, add
9251         function comment.
9252         (find_frame_for_function): New function, now returns a result.
9253
9254 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9255
9256         * stack.c (iterate_over_block_arg_vars): Fix comment.
9257         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
9258
9259 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
9260
9261         PR gdb/23203
9262         * frame.c
9263         (scoped_restore_selected_frame::scoped_restore_selected_frame):
9264         Define.
9265         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
9266         Define.
9267         * frame.h (class scoped_restore_selected_frame): New class.
9268         * stack.c (print_frame_local_vars): Remove catching and rethrowing
9269         of any exception, use scoped_restore_selected_frame to restore the
9270         frame instead.
9271
9272 2018-05-24  Pedro Alves  <palves@redhat.com>
9273
9274         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
9275         override.
9276
9277 2018-05-23  Tom Tromey  <tom@tromey.com>
9278
9279         * complaints.c (struct complaints): Remove.
9280         (symfile_complaint_book): Remove.
9281         (series): New global.
9282         (complaint_internal): Update.
9283         (clear_complaints): Update.
9284
9285 2018-05-23  Tom Tromey  <tom@tromey.com>
9286
9287         * complaints.c (counters): New global.
9288         (struct complain): Remove.
9289         (struct complaints) <root>: Remove.
9290         (complaint_sentinel): Remove.
9291         (symfile_complaint_book): Update.
9292         (find_complaint) Remove.
9293         (complaint_internal, clear_complaints): Update.
9294
9295 2018-05-23  Tom Tromey  <tom@tromey.com>
9296
9297         * complaints.c (struct complain) <file, line>: Remove.
9298         (find_complaint): Remove file, line parameters.
9299         (complaint_internal): Update.
9300
9301 2018-05-23  Tom Tromey  <tom@tromey.com>
9302
9303         * complaints.c (vcomplaint): Remove.
9304         (complaint_internal) Merge in contents of vcomplaint.
9305
9306 2018-05-23  Tom Tromey  <tom@tromey.com>
9307
9308         * complaints.c (struct complaints) <explanation>: Remove.
9309         (symfile_explanations): Remove.
9310         (symfile_complaint_book): Update.
9311         (vcomplaint): Update.
9312         (struct explanation): Remove.
9313
9314 2018-05-23  Tom Tromey  <tom@tromey.com>
9315
9316         * complaints.c (symfile_complaints): Remove.
9317         (complaint_internal): Remove "complaints" parameter.
9318         (clear_complaints, vcomplaint): Remove "c" parameter.
9319         (get_complaints): Remove.
9320         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
9321         (dwarf2_debug_line_missing_file_complaint)
9322         (dwarf2_debug_line_missing_end_sequence_complaint)
9323         (dwarf2_complex_location_expr_complaint)
9324         (dwarf2_const_value_length_mismatch_complaint)
9325         (dwarf2_section_buffer_overflow_complaint)
9326         (dwarf2_macro_malformed_definition_complaint)
9327         (dwarf2_invalid_attrib_class_complaint)
9328         (create_addrmap_from_index, dw2_symtab_iter_next)
9329         (dw2_expand_marked_cus)
9330         (dw2_debug_names_iterator::find_vec_in_debug_names)
9331         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
9332         (create_debug_type_hash_table, init_cutu_and_read_dies)
9333         (partial_die_parent_scope, add_partial_enumeration)
9334         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
9335         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
9336         (read_import_statement, read_file_scope, create_dwo_cu_reader)
9337         (create_cus_hash_table, create_dwp_hash_table)
9338         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
9339         (dwarf2_rnglists_process, dwarf2_ranges_process)
9340         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
9341         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
9342         (handle_struct_member_die, process_structure_scope)
9343         (read_array_type, read_common_block, read_module_type)
9344         (read_tag_pointer_type, read_typedef, read_base_type)
9345         (read_subrange_type, load_partial_dies, partial_die_info::read)
9346         (partial_die_info::read, partial_die_info::read)
9347         (partial_die_info::read, read_checked_initial_length_and_offset)
9348         (dwarf2_string_attr, read_formatted_entries)
9349         (dwarf_decode_line_header)
9350         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
9351         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
9352         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
9353         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
9354         (get_signatured_type, get_DW_AT_signature_type)
9355         (decode_locdesc, file_file_name, consume_improper_spaces)
9356         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
9357         (dwarf_decode_macro_bytes, dwarf_decode_macros)
9358         (dwarf2_symbol_mark_computed, set_die_type)
9359         (read_attribute_value): Update.
9360         * stap-probe.c (handle_stap_probe, get_stap_base_address):
9361         Update.
9362         * dbxread.c (unknown_symtype_complaint)
9363         (lbrac_mismatch_complaint, repeated_header_complaint)
9364         (set_namestring, function_outside_compilation_unit_complaint)
9365         (read_dbx_symtab, process_one_symbol): Update.
9366         * gdbtypes.c (stub_noname_complaint): Update.
9367         * windows-nat.c (handle_unload_dll): Update.
9368         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
9369         (decode_base_type): Update.
9370         * xcoffread.c (bf_notfound_complaint, ef_complaint)
9371         (eb_complaint, record_include_begin, record_include_end)
9372         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
9373         (process_xcoff_symbol, read_symbol)
9374         (function_outside_compilation_unit_complaint)
9375         (scan_xcoff_symtab): Update.
9376         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
9377         * buildsym.c (finish_block_internal, make_blockvector)
9378         (end_symtab_get_static_block, augment_type_symtab): Update.
9379         * dtrace-probe.c (dtrace_process_dof)
9380         (dtrace_static_probe_ops::get_probes): Update.
9381         * complaints.h (struct complaint): Don't declare.
9382         (symfile_complaints): Remove.
9383         (complaint_internal): Remove "complaints" parameter.
9384         (complaint): Likewise.
9385         (clear_complaints): Likewise.
9386         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9387         (reread_symbols): Update.
9388         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
9389         (dwarf2_frame_cache, decode_frame_entry): Update.
9390         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
9391         * objc-lang.c (lookup_objc_class, lookup_child_selector)
9392         (info_selectors_command): Update.
9393         * macrotab.c (macro_include, check_for_redefinition)
9394         (macro_undef): Update.
9395         * objfiles.c (filter_overlapping_sections): Update.
9396         * stabsread.c (invalid_cpp_abbrev_complaint)
9397         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
9398         (define_symbol, error_type, read_type, rs6000_builtin_type)
9399         (stabs_method_name_from_physname, read_member_functions)
9400         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
9401         (attach_fields_to_type, complain_about_struct_wipeout)
9402         (read_range_type, read_args, common_block_start)
9403         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
9404         Update.
9405         * mdebugread.c (index_complaint, unknown_ext_complaint)
9406         (basic_type_complaint, bad_tag_guess_complaint)
9407         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
9408         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
9409         (parse_procedure, parse_lines)
9410         (function_outside_compilation_unit_complaint)
9411         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
9412         (bad_tag_guess_complaint, reg_value_complaint): Update.
9413         * cp-support.c (demangled_name_complaint): Update.
9414         * macroscope.c (sal_macro_scope): Update.
9415         * dwarf-index-write.c (class debug_names): Update.
9416
9417 2018-05-23  Tom Tromey  <tom@tromey.com>
9418
9419         * complaints.c (clear_complaints): Remove "noisy" parameter.
9420         * complaints.h (clear_complaints): Update.
9421         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9422         (reread_symbols): Update.
9423
9424 2018-05-23  Tom Tromey  <tom@tromey.com>
9425
9426         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
9427         SUBSEQUENT_MESSAGE.
9428         (vcomplaint, clear_complaints): Update.
9429         (symfile_explanations): Remove some messages.
9430
9431 2018-05-23  Tom Tromey  <tom@tromey.com>
9432
9433         * complaints.c (internal_complaint): Remove.
9434         * complaints.h (internal_complaint): Remove.
9435
9436 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9437
9438         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
9439
9440 2018-05-22  Pedro Alves  <palves@redhat.com>
9441
9442         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
9443         (remote_fileio_badfd, remote_fileio_return_errno)
9444         (remote_fileio_return_success, remote_fileio_func_open)
9445         (remote_fileio_func_open, remote_fileio_func_close)
9446         (remote_fileio_func_read, remote_fileio_func_write)
9447         (remote_fileio_func_lseek, remote_fileio_func_rename)
9448         (remote_fileio_func_unlink, remote_fileio_func_stat)
9449         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
9450         (remote_fileio_func_isatty, remote_fileio_func_system): Add
9451         remote_target parameter.
9452         (remote_fio_func_map) <func>: Add remote_target parameter.
9453         (do_remote_fileio_request, remote_fileio_request):
9454         * remote-fileio.h (remote_fileio_request):
9455         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
9456         remote_target parameter.
9457         (remote_notif_process, handle_notification): Adjust to pass down
9458         the remote.
9459         (remote_notif_state_allocate): Add remote_target parameter.  Save
9460         it.
9461         * remote-notif.h (struct remote_target): Forward declare.
9462         (struct notif_client) <parse, ack, can_get_pending_events>: Add
9463         remote_target parameter.
9464         (struct remote_notif_state) <remote>: New field.
9465         (remote_notif_ack, remote_notif_parse): Add remote_target
9466         parameter.
9467         (remote_notif_state_allocate, remote_notif_state_allocate): Add
9468         remote_target parameter.
9469         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
9470         (threads_listing_context, rmt_thread_action, protocol_feature)
9471         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
9472         (packet_result, struct threads_listing_context, remote_state):
9473         Move definitions and declarations higher up.
9474         (remote_target) <~remote_target>: Declare.
9475         (remote_download_command_source, remote_file_put, remote_file_get)
9476         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
9477         (remote_hostio_pread_vFile, remote_hostio_send_command)
9478         (remote_hostio_set_filesystem, remote_hostio_open)
9479         (remote_hostio_close, remote_hostio_unlink, remote_state)
9480         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
9481         (get_memory_write_packet_size, get_memory_read_packet_size)
9482         (append_pending_thread_resumptions, remote_detach_1)
9483         (append_resumption, remote_resume_with_vcont)
9484         (add_current_inferior_and_thread, wait_ns, wait_as)
9485         (process_stop_reply, remote_notice_new_inferior)
9486         (process_initial_stop_replies, remote_add_thread)
9487         (btrace_sync_conf, remote_btrace_maybe_reopen)
9488         (remove_new_fork_children, kill_new_fork_children)
9489         (discard_pending_stop_replies, stop_reply_queue_length)
9490         (check_pending_events_prevent_wildcard_vcont)
9491         (discard_pending_stop_replies_in_queue, stop_reply)
9492         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
9493         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
9494         (remote_interrupt_as, remote_interrupt_ns)
9495         (remote_get_noisy_reply, remote_query_attached)
9496         (remote_add_inferior, remote_current_thread, get_current_thread)
9497         (set_thread, set_general_thread, set_continue_thread)
9498         (set_general_process, write_ptid)
9499         (remote_unpack_thread_info_response, remote_get_threadinfo)
9500         (parse_threadlist_response, remote_get_threadlist)
9501         (remote_threadlist_iterator, remote_get_threads_with_ql)
9502         (remote_get_threads_with_qxfer)
9503         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
9504         (get_offsets, remote_check_symbols, remote_supported_packet)
9505         (remote_query_supported, remote_packet_size)
9506         (remote_serial_quit_handler, remote_detach_pid)
9507         (remote_vcont_probe, remote_resume_with_hc)
9508         (send_interrupt_sequence, interrupt_query)
9509         (remote_notif_get_pending_events, fetch_register_using_p)
9510         (send_g_packet, process_g_packet, fetch_registers_using_g)
9511         (store_register_using_P, store_registers_using_G)
9512         (set_remote_traceframe, check_binary_download)
9513         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
9514         (remote_xfer_live_readonly_partial, remote_read_bytes)
9515         (remote_send_printf, remote_flash_write, readchar)
9516         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
9517         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
9518         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
9519         (extended_remote_disable_randomization, extended_remote_run)
9520         (send_environment_packet, extended_remote_environment_support)
9521         (extended_remote_set_inferior_cwd, remote_write_qxfer)
9522         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
9523         (packet_command): Now methods of ...
9524         (remote_target): ... this class.
9525         (m_remote_state) <remote_target>: New field.
9526         (struct remote_state) <stop_reply_queue,
9527         remote_async_inferior_event_token, wait_forever_enabled_p>: New
9528         fields.
9529         (remote_state::remote_state): Allocate stop_reply_queue.
9530         (remote_state): Delete global.
9531         (get_remote_state_raw): Delete.
9532         (remote_target::get_remote_state): Allocate m_remote_state on
9533         demand.
9534         (get_current_remote_target): New.
9535         (remote_ops, extended_remote_ops): Delete.
9536         (wait_forever_enabled_p, remote_async_inferior_event_token):
9537         Delete, moved to struct remote_state.
9538         (remote_target::close): Delete self.  Destruction bits split to
9539         ...
9540         (remote_target::~remote_target): ... this.
9541         (show_memory_packet_size): Adjust to use
9542         get_current_remote_target.
9543         (struct protocol_feature) <func>: Add remote_target parameter.
9544         All callers adjusted.
9545         (curr_quit_handler_target): New.
9546         (remote_serial_quit_handler): Reimplement.
9547         (remote_target::open_1): Adjust to use get_current_remote_target.
9548         Heap-allocate remote_target/extended_remote_target instances.
9549         (vcont_builder::vcont_builder): Add remote_target parameter, and
9550         save it in m_remote.  All callers adjusted.
9551         (vcont_builder::m_remote): New field.
9552         (vcont_builder::restart, vcont_builder::flush)
9553         (vcont_builder::push_action): Use it.
9554         (remote_target::commit_resume): Use it.
9555         (struct queue_iter_param) <remote>: New field.
9556         (remote_target::remove_new_fork_children): Fill in 'remote' field.
9557         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
9558         (check_pending_event_prevents_wildcard_vcont_callback)
9559         (remote_target::check_pending_events_prevent_wildcard_vcont)
9560         (remote_target::discard_pending_stop_replies)
9561         (remote_target::discard_pending_stop_replies_in_queue)
9562         (remote_target::remote_notif_remove_queued_reply): Fill in
9563         'remote' field.
9564         (remote_notif_get_pending_events): New.
9565         (remote_target::readchar, remote_target::remote_serial_write):
9566         Save/restore curr_quit_handler_target.
9567         (putpkt): New.
9568         (kill_new_fork_children): Fill in 'remote' field.
9569         (packet_command): Use get_current_remote_target, defer to
9570         remote_target method of same name.
9571         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
9572         parameter, and save it in m_remote.  All callers adjusted.
9573         (scoped_remote_fd::release): Use m_remote.
9574         (scoped_remote_fd::m_remote): New field.
9575         (remote_file_put, remote_file_get, remote_file_delete): Use
9576         get_current_remote_target, defer to remote_target method of same
9577         name.
9578         (remote_btrace_reset): Add remote_state paremeter.  Update all
9579         callers.
9580         (remote_async_inferior_event_handler). Pass down 'data'.
9581         (remote_new_objfile): Use get_current_remote_target.
9582         (remote_target::vcont_r_supported): New.
9583         (set_range_stepping): Use get_current_remote_target and
9584         remote_target::vcont_r_supported.
9585         (_initialize_remote): Don't allocate 'remote_state' and
9586         'stop_reply_queue' globals.
9587         * remote.h (struct remote_target): Forward declare.
9588         (getpkt, putpkt, remote_notif_get_pending_events): Add
9589         'remote_target' parameter.
9590
9591 2018-05-22  Pedro Alves  <palves@redhat.com>
9592
9593         * remote.c (vcont_builder): Now a class.  Make all data members
9594         private.
9595         (vcont_builder) <vcont_builder, restart, flush, push_action>:
9596         Declare methods.
9597         (vcont_builder_restart): Rename to ...
9598         (vcont_builder::restart): ... this.
9599         (vcont_builder_flush): Rename to ...
9600         (vcont_builder::flush): ... this.
9601         (vcont_builder_push_action): Rename to ...
9602         (vcont_builder::push_action): ... this.
9603         (remote_target::commit_resume): Adjust.
9604
9605 2018-05-22  Pedro Alves  <palves@redhat.com>
9606
9607         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
9608         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
9609         (get_fixed_memory_packet_size): New.
9610         (get_memory_packet_size): Use it.
9611         (set_memory_packet_size): Don't override the config size with
9612         DEFAULT_MAX_MEMORY_PACKET_SIZE.
9613         (show_memory_packet_size): Use get_fixed_memory_packet_size.
9614         Don't refer to get_memory_packet_size if not connected to a remote
9615         target.  Show "(default)" if configured size is 0.
9616
9617 2018-05-22  Pedro Alves  <palves@redhat.com>
9618
9619         * remote.c (remote_target::mourn_inferior): Move
9620         discard_pending_stop_replies call here from ...
9621         (_initialize_remote): ... here.
9622
9623 2018-05-22  Pedro Alves  <palves@redhat.com>
9624
9625         * remote.c (compare_section_command): Remove set_general_process
9626         call.
9627
9628 2018-05-22  Pedro Alves  <palves@redhat.com>
9629
9630         * remote.c (struct packet_reg, struct remote_arch_state):
9631         Move higher up in the file.
9632         (remote_state) <m_arch_states>: Store remote_arch_state values
9633         instead of remote_arch_state pointers.
9634         (remote_state::get_remote_arch_state): Adjust.
9635
9636 2018-05-22  Pedro Alves  <palves@redhat.com>
9637
9638         * remote.c: Include <unordered_map>.
9639         (remote_state): Now a class.
9640         (remote_state) <get_remote_arch_state>: Declare method.
9641         <get_remote_arch_state>: New field.
9642         (remote_arch_state) <remote_arch_state>: Declare ctor.
9643         <regs>: Now a unique_ptr.
9644         (remote_gdbarch_data_handle): Delete.
9645         (get_remote_arch_state): Delete.
9646         (remote_state::get_remote_arch_state): New.
9647         (get_remote_state): Adjust to call remote_state's
9648         get_remote_arch_state method.
9649         (init_remote_state): Delete, bits factored out to ...
9650         (remote_arch_state::remote_arch_state): ... this new method.
9651         (get_remote_packet_size, get_memory_packet_size)
9652         (process_g_packet, remote_target::fetch_registers)
9653         (remote_target::prepare_to_store, store_registers_using_G)
9654         (remote_target::store_registers, remote_target::get_trace_status):
9655         Adjust to call remote_state's method.
9656         (_initialize_remote): Remove reference to
9657         remote_gdbarch_data_handle.
9658
9659 2018-05-22  Pedro Alves  <palves@redhat.com>
9660
9661         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
9662         pread>: New method declarations.
9663         (remote_target::open_1): Adjust.
9664         (readahead_cache_invalidate): Rename to ...
9665         (readahead_cache::invalidate): ... this, and adjust to be a class
9666         method.
9667         (readahead_cache_invalidate_fd): Rename to ...
9668         (readahead_cache::invalidate_fd): ... this, and adjust to be a
9669         class method.
9670         (remote_hostio_pwrite): Adjust.
9671         (remote_hostio_pread_from_cache): Rename to ...
9672         (readahead_cache::pread): ... this, and adjust to be a class
9673         method.
9674         (remote_hostio_close): Adjust.
9675
9676 2018-05-22  Pedro Alves  <palves@redhat.com>
9677
9678         * remote.c (remote_hostio_close_cleanup): Delete.
9679         (class scoped_remote_fd): New.
9680         (remote_file_put, remote_file_get): Use it.
9681
9682 2018-05-22  Pedro Alves  <palves@redhat.com>
9683
9684         (struct vCont_action_support): Use bool and initialize all fields.
9685         (struct readahead_cache): Initialize all fields.
9686         (remote_state): Use bool and initialize all fields.
9687         (remote_state::remote_state, remote_state::~remote_state): New.
9688         (new_remote_state): Delete.
9689         (_initialize_remote): Use new to allocate remote_state.
9690
9691 2018-05-22  Pedro Alves  <palves@redhat.com>
9692             張俊芝  <zjz@zjz.name>
9693
9694         PR gdb/22973
9695         * c-exp.y: Include "c-support.h".
9696         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
9697         of tolower.  Use c_ident_is_alpha to scan names.
9698         * c-lang.c: Include "c-support.h".
9699         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
9700         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
9701         * c-support.h: New file, with bits factored out from ...
9702         * cp-name-parser.y: ... this file.
9703         Include "c-support.h".
9704         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
9705         c-support.h and renamed.
9706         (symbol_end, yylex): Adjust.
9707
9708 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9709
9710         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
9711         parameter type to CORE_ADDR.
9712         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
9713         parameter type in declaration to CORE_ADDR.
9714         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
9715         target_auxv_search to get AT_HWCAP and use the result to get the
9716         target description.
9717         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
9718         to CORE_ADDR. Remove the cast of the return value to unsigned
9719         long. Fix error predicate of target_auxv_search.
9720         (ppc_linux_nat_target::read_description): Change the type of the
9721         hwcap variable to CORE_ADDR.
9722
9723 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9724
9725         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
9726         if the size of fpscr is larger than 32 bits.
9727
9728 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9729
9730         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
9731         (ppc32_linux_vsxregmap): New global.
9732         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
9733         regcache_supply_regset, and regcache_collect_regset.
9734         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
9735         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
9736         (fetch_vsx_register, store_vsx_register): Remove.
9737         (fetch_vsx_registers): Add regno parameter. Get regset using
9738         ppc_linux_vsxregset. Use regset to supply registers.
9739         (store_vsx_registers): Add regno parameter. Get regset using
9740         ppc_linux_vsxregset. Use regset to collect registers.
9741         (fetch_register): Call fetch_vsx_registers instead of
9742         fetch_vsx_register.
9743         (store_register): Call store_vsx_registers instead of
9744         store_vsx_register.
9745         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
9746         new regno parameter.
9747         (store_ppc_registers): Call store_vsx_registers with -1 for the
9748         new regno parameter.
9749         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
9750         (ppc_collect_vsxregset): Remove.
9751
9752 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9753
9754         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
9755         offset fields.
9756         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
9757         for vector register offset fields.
9758         (ppc64_fbsd_reg_offsets): Likewise.
9759         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9760         to vector register offset fields.
9761         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9762         to vector register offset fields.
9763         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
9764         vector register offset fields.
9765         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
9766         initializers for vector register offset fields.
9767         (rs6000_aix64_reg_offsets): Likewise.
9768         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
9769         (ppc_supply_vrregset): Remove.
9770         (ppc_collect_vrregset): Remove.
9771         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
9772         (ppc_linux_vrregset) : New function.
9773         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
9774         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
9775         (ppc32_linux_vrregset): Remove.
9776         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
9777         and use result instead of ppc32_linux_vrregset.
9778         (ppc32_linux_reg_offsets): Remove initializers for vector register
9779         offset fields.
9780         (ppc64_linux_reg_offsets): Likewise.
9781         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
9782         * ppc-linux-nat.c: Include regset.h.
9783         (gdb_vrregset_t): Adjust comment to account for little-endian
9784         mode.
9785         (supply_vrregset, fill_vrregset): Remove.
9786         (fetch_altivec_register, store_altivec_register): Remove.
9787         (fetch_altivec_registers): Add regno parameter. Get regset using
9788         ppc_linux_vrregset. Use regset to supply registers.
9789         (store_altivec_registers): Add regno parameter. Get regset using
9790         ppc_linux_vrregset. Use regset to collect registers.
9791         (fetch_register): Call fetch_altivec_registers instead of
9792         fetch_altivec_register.
9793         (store_register): Call store_altivec_registers instead of
9794         store_altivec_register.
9795         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
9796         the new regno parameter.
9797         (store_ppc_registers): Call store_altivec_registers with -1 for
9798         the new regno parameter.
9799
9800 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9801
9802         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
9803         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
9804         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
9805         (gdb_vrregset_t): Change array type size to
9806         PPC_LINUX_SIZEOF_VRREGSET.
9807         (gdb_vsxregset_t): Change array type size to
9808         PPC_LINUX_SIZEOF_VSXREGSET.
9809         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
9810         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
9811         PPC_LINUX_SIZEOF_VSXREGSET.
9812
9813 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9814
9815         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
9816         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
9817         nat/ppc-linux.c.
9818         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
9819         ppc_linux_target_wordsize with tid.
9820         (ppc_linux_nat_target::read_description): Call ppc_linux_target
9821         wordsize with tid.
9822         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
9823         (ppc64_64bit_inferior_p): Add static and inline specifiers.
9824         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
9825         tid parameter. Remove static specifier.
9826         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
9827         (ppc_linux_target_wordsize): New declaration.
9828
9829 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9830
9831         * arch/ppc-linux-common.c: New file.
9832         * arch/ppc-linux-common.h: New file.
9833         * arch/ppc-linux-tdesc.h: New file.
9834         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
9835         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
9836         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
9837         arch/ppc-linux-tdesc.h.
9838         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
9839         arch/ppc-linux-tdesc.h.
9840         (ppc_linux_nat_target::read_description): Remove target
9841         description matching code. Fill a ppc_linux_features struct and
9842         call ppc_linux_match_description with it. Move comment about ISA
9843         2.05 to ppc-linux-common.c.
9844         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
9845         arch/ppc-linux-tdesc.h.
9846         (ppc_linux_core_read_description): Remove target description
9847         matching code. Fill a ppc_linux_features struct and call
9848         ppc_linux_match_description with it.
9849         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
9850         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
9851         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
9852         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
9853         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
9854         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
9855         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
9856         (tdesc_powerpc_e500l): Remove.
9857
9858 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
9859
9860         * ada-lang.c (catch_assert_command): Pass empty string instead
9861         of NULL for excep_string argument.
9862
9863 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9864
9865         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
9866         the width of the requested register exceeds the width of the
9867         `ptrace' data type.
9868
9869 2018-05-21  Tom Tromey  <tom@tromey.com>
9870
9871         * printcmd.c (output_command): Remove.
9872         (output_command_const): Rename to output_command.
9873         * valprint.h (output_command): Rename from output_command_const.
9874         * tracepoint.c (trace_dump_actions): Call output_command.
9875
9876 2018-05-21  Tom Tromey  <tom@tromey.com>
9877
9878         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
9879         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
9880         * ada-lang.h (create_ada_exception_catchpoint): Update.
9881         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
9882         std::string.
9883         (create_excep_cond_exprs, ~ada_catchpoint)
9884         (should_stop_exception, print_one_exception)
9885         (print_mention_exception, print_recreate_exception): Update.
9886         (ada_get_next_arg): Remove.
9887         (catch_ada_exception_command_split): Use std::string.  Change type
9888         of "excep_string", "cond_string".
9889         (catch_ada_exception_command): Update.
9890         (create_ada_exception_catchpoint): Change type of excep_string.
9891         (ada_exception_sal): Remove excep_string parameter.
9892         (~ada_catchpoint): Remove.
9893
9894 2018-05-21  Tom Tromey  <tom@tromey.com>
9895
9896         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
9897         cleanup.
9898
9899 2018-05-21  Tom Tromey  <tom@tromey.com>
9900
9901         * ada-lang.c (ada_exception_message_1, ada_exception_message):
9902         Return unique_xmalloc_ptr.
9903         (print_it_exception): Update.
9904
9905 2018-05-21  Tom Tromey  <tom@tromey.com>
9906
9907         * tracepoint.c (trace_dump_actions): Use std::string.
9908
9909 2018-05-21  Tom Tromey  <tom@tromey.com>
9910
9911         * symfile.c (reread_symbols): Use std::string for original_name.
9912
9913 2018-05-21  Tom Tromey  <tom@tromey.com>
9914
9915         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
9916         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
9917         constructor.
9918
9919 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
9920
9921         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
9922         instance to...
9923         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
9924         * objfiles.c (get_objfile_bfd_data): Allocate
9925         objfile_per_bfd_storage with obstack_new when allocating on
9926         obstack.
9927
9928 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9929
9930         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
9931         OBSTACK_ZALLOC.
9932         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
9933         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
9934         * mdebugread.c (mdebug_build_psymtabs): Likewise.
9935         (add_pending): Likewise.
9936         (parse_symbol): Likewise.
9937         (parse_partial_symbols): Likewise.
9938         (psymtab_to_symtab_1): Likewise.
9939         (new_psymtab): Likewise.
9940         (elfmdebug_build_psymtabs): Likewise.
9941         * minsyms.c (terminate_minimal_symbol_table): Likewise.
9942         * objfiles.c (get_objfile_bfd_data): Likewise.
9943         (objfile_register_static_link): Likewise.
9944         * psymtab.c (allocate_psymtab): Likewise.
9945         * stabsread.c (read_member_functions): Likewise.
9946         * xcoffread.c (xcoff_end_psymtab): Likewise.
9947
9948 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9949
9950         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
9951         compiler supports std::is_trivially_constructible.
9952         * common/poison.h: Include obstack.h.
9953         (IsMallocable): Define to is_trivially_constructible if the
9954         compiler supports it, define to true_type otherwise.
9955         (xobnew): New.
9956         (XOBNEW): Redefine.
9957         (xobnewvec): New.
9958         (XOBNEWVEC): Redefine.
9959         * gdb_obstack.h (obstack_zalloc): New.
9960         (OBSTACK_ZALLOC): Redefine.
9961         (obstack_calloc): New.
9962         (OBSTACK_CALLOC): Redefine.
9963         (obstack_new): New.
9964         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
9965         (gdbarch_obstack): New declaration in gdbarch.h, definition in
9966         gdbarch.c.
9967         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
9968         obstack_calloc/obstack_zalloc.
9969         (gdbarch_obstack_zalloc): Remove.
9970         * target-descriptions.c (tdesc_data_init): Use obstack_new.
9971
9972 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9973
9974         * stack.c (backtrace_command_1): Remove useless variable int i.
9975
9976 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9977
9978         * stack.c (print_frame_info): Fix comment.
9979
9980 2018-05-18  Tom Tromey  <tom@tromey.com>
9981
9982         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
9983         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
9984         (~dwarf2_per_objfile): Update
9985         (dwarf2_get_dwz_file): Use new.
9986         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
9987         unique_ptr.
9988
9989 2018-05-18  Tom Tromey  <tom@tromey.com>
9990
9991         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
9992         unique_ptr.
9993         * dwarf2read.c (struct dwp_file): Add constructor and
9994         initializers.
9995         (open_and_init_dwp_file): Return a unique_ptr.
9996         (dwarf2_per_objfile, create_dwp_hash_table)
9997         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
9998         (lookup_dwo_unit_in_dwp): Update.
9999         (open_and_init_dwp_file, get_dwp_file): Update.
10000
10001 2018-05-18  Tom Tromey  <tom@tromey.com>
10002
10003         * dwarf2read.c (dwarf2_per_objfile): Update.
10004         (struct mapped_index): Add initializers.
10005         (dwarf2_read_index): Use new.
10006         (dw2_symtab_iter_init): Update.
10007         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
10008         unique_ptr.
10009
10010 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
10011
10012         * dwarf2read.c (mapped_index) <total_size>: Remove.
10013
10014 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
10015
10016         * unittests/format_pieces-selftests.c (test_format_specifier):
10017         Add ARI comments.
10018
10019 2018-05-18  Tom Tromey  <tom@tromey.com>
10020
10021         * c-typeprint.c (maybe_print_hole): New function.
10022         (c_print_type_struct_field_offset): Update.
10023         (c_type_print_base_struct_union): Call maybe_print_hole.
10024
10025 2018-05-17  Keith Seitz  <keiths@redhat.com>
10026
10027         * breakpoint.c (build_bpstat_chain): New function, moved from
10028         bpstat_stop_status.
10029         (bpstat_stop_status): Add optional parameter, `stop_chain'.
10030         If no stop chain is passed, call build_bpstat_chain to build it.
10031         * breakpoint.h (build_bpstat_chain): Declare.
10032         (bpstat_stop_status): Move documentation here from breakpoint.c.
10033         * infrun.c (handle_signal_stop): Before eliding inlined frames,
10034         build the stop chain and pass it to skip_inline_frames.
10035         Pass this stop chain to bpstat_stop_status.
10036         * inline-frame.c: Include breakpoint.h.
10037         (stopped_by_user_bp_inline_frame): New function.
10038         (skip_inline_frames): Add parameter `stop_chain'.
10039         Move documention to inline-frame.h.
10040         If non-NULL, use stopped_by_user_bp_inline_frame to determine
10041         whether the frame should be elided.
10042         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
10043         Add moved documentation and update for new parameter.
10044
10045 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
10046
10047         PR cli/14975
10048         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10049         unittests/format_pieces-selftests.c.
10050         * common/format.h (format_piece) <operator==>: New.
10051         (format_pieces) <operator[]>: Remove.
10052         * common/format.c (format_pieces::format_pieces): Handle \e.
10053         * unittests/format_pieces-selftests.c: New.
10054
10055 2018-05-17  Tom Tromey  <tom@tromey.com>
10056
10057         PR symtab/23010:
10058         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
10059         (dw2_instantiate_symtab): Add skip_partial parameter.
10060         (dw2_find_last_source_symtab, dw2_map_expand_apply)
10061         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
10062         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
10063         (dw2_expand_symtabs_matching_one)
10064         (dw2_find_pc_sect_compunit_symtab)
10065         (dw2_debug_names_lookup_symbol)
10066         (dw2_debug_names_expand_symtabs_for_function): Update.
10067         (init_cutu_and_read_dies): Add skip_partial parameter.
10068         (process_psymtab_comp_unit, build_type_psymtabs_1)
10069         (process_skeletonless_type_unit, load_partial_comp_unit)
10070         (psymtab_to_symtab_1): Update.
10071         (load_full_comp_unit): Add skip_partial parameter.
10072         (process_imported_unit_die, dwarf2_read_addr_index)
10073         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
10074         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
10075         (read_signatured_type): Update.
10076
10077 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
10078
10079         * value.c (release_value): Remove unused variable.
10080         (record_latest_value): Likewise.
10081         (access_value_history): Likewise.
10082         (preserve_values): Likewise.
10083
10084 2018-05-17  Tom Tromey  <tom@tromey.com>
10085
10086         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
10087         Initialize.
10088
10089 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
10090
10091         PR gdb/22286
10092         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
10093         Also handle registers whose width is not a multiple of
10094         PTRACE_TYPE_RET.
10095         (linux_nat_trad_target::store_register): Likewise.
10096
10097 2018-05-16  Tom Tromey  <tom@tromey.com>
10098
10099         * gdbcore.h (core_bfd): Redefine.
10100         * corelow.c (core_target::close): Update.
10101         (core_target_open): Update.
10102         * progspace.h (struct program_space) <cbfd>: Now a
10103         gdb_bfd_ref_ptr.
10104
10105 2018-05-16  Tom Tromey  <tom@tromey.com>
10106
10107         PR cli/19551:
10108         * symfile-add-flags.h (enum symfile_add_flags)
10109         <SYMFILE_NOT_FILENAME>: New constant.
10110         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
10111         objfile name from BFD.
10112         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
10113         * minidebug.c (find_separate_debug_file_in_section): Put
10114         ".gnu_debugdata" into BFD's file name.
10115
10116 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
10117
10118         * regcache.c (regcache_read_ftype, regcache_write_ftype):
10119         Remove.
10120
10121 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
10122
10123         PR binutils/21446
10124         * aarch64-tdep.c (aarch64_analyze_prologue,
10125         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
10126         Indicate not interested in errors.
10127
10128 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
10129
10130         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
10131         Supply the MIPS_ZERO_REGNUM register.
10132
10133 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
10134
10135         * mips-tdep.c (mask_address_var): Make variable static.
10136
10137 2018-05-14  Tom Tromey  <tom@tromey.com>
10138
10139         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
10140
10141 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
10142
10143         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
10144         FXSAVE_ADDR for the mxcsr register.
10145
10146 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
10147
10148         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
10149
10150 2018-05-11  Pedro Alves  <palves@redhat.com>
10151
10152         * corelow.c (core_target) <core_target>: No longer inline.
10153         Initialize m_core_gdbarch, m_core_vec and build the section table
10154         here.
10155         <~core_target>: New.
10156         <core_gdbarch, get_core_register_section>: New methods.
10157         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
10158         factored out from ...
10159         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
10160         (core_ops): Delete.
10161         (sniff_core_bfd): Add gdbarch parameter.
10162         (core_close): Delete, merged into ...
10163         (core_target::close): ... here.  Delete self.
10164         (core_close_cleanup): Delete.
10165         (core_target_open): Allocate a core_target on the heap.  Use a
10166         unique_ptr instead of a cleanup.  Bits moved into the core_target
10167         ctor.  Adjust to use core_target methods instead of globals.
10168         (get_core_register_section): Rename to ...
10169         (core_target::get_core_register_section): ... this and adjust.
10170         (struct get_core_registers_cb_data): New.
10171         (get_core_registers_cb): Use it.  Use bool.
10172         (core_target::fetch_registers, core_target::files_info)
10173         (core_target::xfer_partial, core_target::read_description)
10174         (core_target::pid_to, core_target::thread_name): Adjust to
10175         reference class fields instead of globals.
10176         * target.h (struct target_ops_deleter, target_ops_up): New.
10177
10178 2018-05-11  Pedro Alves  <palves@redhat.com>
10179
10180         * corefile.c (core_file_command): Move to corelow.c.
10181         * corelow.c (the_core_target): Delete.
10182         (core_file_command): Moved from corefile.c.  Check exec_bfd
10183         instead of the_core_target.  Use target_detach instead of calling
10184         into the_core_target directly.
10185         (maybe_say_no_core_file_now): New.
10186         (core_target::detach): Use it.
10187         (_initialize_corelow): Remove references to the_core_target.
10188         * gdbcore.h (the_core_target): Delete.
10189
10190 2018-05-11  Tom Tromey  <tromey@redhat.com>
10191             Pedro Alves  <palves@redhat.com>
10192
10193         * corefile.c (core_bfd): Remove.
10194         * gdbcore.h (core_bfd): Now a macro.
10195         * progspace.h (struct program_space) <cbfd>: New field.
10196
10197 2018-05-11  Tom Tromey  <tom@tromey.com>
10198
10199         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
10200         gdb::def_vector.
10201
10202 2018-05-10  Tom Tromey  <tom@tromey.com>
10203
10204         * configure: Rebuild.
10205         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
10206
10207 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
10208
10209         PR server/23158:
10210         * regformats/regdat.sh: Adjust script, following the addition
10211         of the new expedite_regs parameter to init_target_desc.
10212
10213 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
10214     
10215         PR gdb/23127
10216         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
10217         set_gdbarch_significant_addr_bit.
10218         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
10219         set_gdbarch_significant_addr_bit.
10220         * utils.c (address_significant): Update to sign extend addr.
10221
10222 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
10223
10224         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
10225         (xtensa_linux_init_abi): Limit tdep->num_regs by
10226         tdep->num_nopriv_regs.
10227         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
10228         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
10229         not initialized.
10230
10231 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
10232
10233         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
10234
10235 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
10236
10237         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
10238         (I387_MXCSR_INIT_VAL): New constant.
10239         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
10240         buffer if it was supplied by the inferior.
10241         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
10242         (i387_xsave_get_clear_bv): New function.
10243         (i387_supply_xsave): Only read x87 control registers from the
10244         xsave buffer if the feature is enabled, and the state will have
10245         been written, otherwise, provide a suitable default.
10246         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
10247         including x87 control registers.  Update control registers if they
10248         have changed from the default value, and mark features as enabled
10249         as required.
10250         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
10251
10252 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
10253
10254         * spu-tdep.c (info_spu_event_command): Fix output formatting.
10255
10256 2018-05-07  Tom Tromey  <tom@tromey.com>
10257
10258         * configure: Rebuild.
10259         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
10260
10261 2018-05-07  Tom Tromey  <tom@tromey.com>
10262
10263         PR tdep/20362:
10264         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
10265         bit.  Use correct value for VDIV.
10266
10267 2018-05-04  Tom Tromey  <tom@tromey.com>
10268
10269         * configure: Rebuild.
10270         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
10271
10272 2018-05-04  Tom Tromey  <tom@tromey.com>
10273
10274         * linux-record.c (record_linux_system_call) <case
10275         RECORD_SYS_RECVFROM>: Add "break".
10276
10277 2018-05-04  Tom Tromey  <tom@tromey.com>
10278
10279         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
10280         Add missing "break".
10281         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
10282         Add missing "break".
10283
10284 2018-05-04  Tom Tromey  <tom@tromey.com>
10285
10286         * rs6000-tdep.c (ppc_process_record_op4)
10287         (ppc_process_record_op63): Add fall-through comment.
10288
10289 2018-05-04  Tom Tromey  <tom@tromey.com>
10290
10291         * i386-tdep.c (i386_process_record): Add fall-through comment.
10292
10293 2018-05-04  Tom Tromey  <tom@tromey.com>
10294
10295         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
10296         comment.
10297
10298 2018-05-04  Tom Tromey  <tom@tromey.com>
10299
10300         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
10301         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
10302         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
10303         comment.
10304         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
10305         comment.
10306         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
10307         comment.
10308
10309 2018-05-04  Tom Tromey  <tom@tromey.com>
10310
10311         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
10312
10313 2018-05-04  Tom Tromey  <tom@tromey.com>
10314
10315         * s390-tdep.c (s390_process_record): Fix fall-through comments.
10316         * xcoffread.c (scan_xcoff_symtab): Move comment later.
10317         * symfile.c (section_is_mapped): Fix fall-through comment.
10318         * stabsread.c (define_symbol, read_member_functions): Fix
10319         fall-through comment.
10320         * s390-linux-tdep.c (s390_process_record): Fix fall-through
10321         comment.
10322         * remote.c (remote_wait_as): Fix fall-through comment.
10323         * p-exp.y (yylex): Fix fall-through comment.
10324         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
10325         comment.
10326         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
10327         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
10328         * jv-exp.y (yylex): Fix fall-through comment.
10329         * go-exp.y (lex_one_token): Fix fall-through comment.
10330         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
10331         fall-through comment.
10332         * f-exp.y (yylex): Fix fall-through comment.
10333         * dwarf2read.c (process_die): Fix fall-through comments.
10334         * dbxread.c (process_one_symbol): Fix fall-through comment.
10335         * d-exp.y (lex_one_token): Fix fall-through comment.
10336         * cp-name-parser.y (yylex): Fix fall-through comment.
10337         * coffread.c (coff_symtab_read): Fix fall-through comment.
10338         * c-exp.y (lex_one_token): Fix fall-through comment.
10339         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
10340         comment.
10341         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
10342         comment.
10343
10344 2018-05-04  Tom Tromey  <tom@tromey.com>
10345
10346         PR python/22730:
10347         * NEWS: Mention gdb.execute change.
10348         * gdbcmd.h (execute_control_command): Don't declare.
10349         * python/python.c (execute_gdb_command): Use read_command_lines_1,
10350         execute_control_commands, execute_control_commands_to_string.
10351         * cli/cli-script.h (execute_control_commands)
10352         (execute_control_commands_to_string): Declare.
10353         (execute_control_command): Add from_tty parameter.
10354         * cli/cli-script.c (execute_control_commands)
10355         (execute_control_commands_to_string): New functions.
10356         (execute_user_command): Use execute_control_commands.
10357         (execute_control_command_1): Add "from_tty" parameter.  Update.
10358         (execute_control_command): Likewise.
10359
10360 2018-05-04  Tom Tromey  <tom@tromey.com>
10361
10362         PR python/22731:
10363         * NEWS: Mention that breakpoint commands are writable.
10364         * python/py-breakpoint.c (bppy_set_commands): New function.
10365         (breakpoint_object_getset) <"commands">: Use it.
10366
10367 2018-05-04  Tom Tromey  <tom@tromey.com>
10368
10369         * tracepoint.c (actions_command): Update.
10370         * mi/mi-cmd-break.c (mi_command_line_array)
10371         (mi_command_line_array_cnt, mi_command_line_array_ptr)
10372         (mi_read_next_line): Remove.
10373         (mi_cmd_break_commands): Update.
10374         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
10375         function_view.
10376         * cli/cli-script.c (get_command_line): Update.
10377         (process_next_line): Use function_view.  Constify.
10378         (recurse_read_control_structure, read_command_lines)
10379         (read_command_lines_1): Change argument types to function_view.
10380         (do_define_command, document_command): Update.
10381         * breakpoint.h (check_tracepoint_command): Don't declare.
10382         * breakpoint.c (check_tracepoint_command): Remove.
10383         (commands_command_1, create_tracepoint_from_upload): Update.
10384
10385 2018-05-04  Tom Tromey  <tom@tromey.com>
10386
10387         PR gdb/11750:
10388         * cli/cli-script.h (enum command_control_type) <define_control>:
10389         New constant.
10390         * cli/cli-script.c (multi_line_command_p): Handle define_control.
10391         (build_command_line, execute_control_command_1)
10392         (process_next_line): Likewise.
10393         (do_define_command): New function, extracted from define_command.
10394         (define_command): Use it.
10395
10396 2018-05-04  Tom Tromey  <tom@tromey.com>
10397
10398         * tracepoint.c (actions_command): Update.
10399         * cli/cli-script.h (read_command_lines): Update.
10400         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
10401         (MAX_TMPBUF): Remove define.
10402         (define_command): Use string_printf.
10403         (document_command): Likewise.
10404         * breakpoint.c (commands_command_1): Update.
10405
10406 2018-05-04  Tom Tromey  <tom@tromey.com>
10407
10408         * top.c (execute_command): Update.
10409         * cli/cli-script.h (print_command_lines): Now varargs.
10410         * cli/cli-script.c (print_command_lines): Now varargs.
10411         (execute_control_command_1) <case while_control, case if_control>:
10412         Update.
10413
10414 2018-05-04  Tom Tromey  <tom@tromey.com>
10415
10416         * tracepoint.c (all_tracepoint_actions): Rename from
10417         all_tracepoint_actions_and_cleanup.  Change return type.
10418         (actions_command, encode_actions_1, encode_actions)
10419         (trace_dump_actions, tdump_command): Update.
10420         * remote.c (remote_download_command_source): Update.
10421         * python/python.c (gdbpy_eval_from_control_command)
10422         (python_command, python_interactive_command): Update.
10423         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
10424         * guile/guile.c (guile_command)
10425         (gdbscm_eval_from_control_command, guile_command): Update.
10426         * compile/compile.c (compile_code_command)
10427         (compile_print_command, compile_to_object): Update.
10428         * cli/cli-script.h (struct command_lines_deleter): New.
10429         (counted_command_line): New typedef.
10430         (struct command_line): Add constructor, destructor.
10431         <body_list>: Remove.
10432         <body_list_0, body_list_1>: New members.
10433         (command_line_up): Remove typedef.
10434         (read_command_lines, read_command_lines_1, get_command_line):
10435         Update.
10436         (copy_command_lines): Don't declare.
10437         * cli/cli-script.c (build_command_line): Use "new".
10438         (get_command_line): Return counted_command_line.
10439         (print_command_lines, execute_user_command)
10440         (execute_control_command_1, while_command, if_command): Update.
10441         (realloc_body_list): Remove.
10442         (process_next_line, recurse_read_control_structure): Update.
10443         (read_command_lines, read_command_lines_1): Return counted_command_line.
10444         (free_command_lines): Use "delete".
10445         (copy_command_lines): Remove.
10446         (define_command, document_command, show_user_1): Update.
10447         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
10448         a counted_command_line.
10449         * breakpoint.h (counted_command_line): Remove typedef.
10450         (breakpoint_set_commands): Update.
10451         * breakpoint.c (check_no_tracepoint_commands)
10452         (validate_commands_for_breakpoint): Update.
10453         (breakpoint_set_commands): Change commands to be a
10454         counted_command_line.
10455         (commands_command_1, update_dprintf_command_list)
10456         (create_tracepoint_from_upload): Update.
10457
10458 2018-05-04  Tom Tromey  <tom@tromey.com>
10459
10460         * cli/cli-decode.h (cmd_list_element): New constructor.
10461         (~cmd_list_element): New destructor.
10462         (struct cmd_list_element): Add initializers.
10463         * cli/cli-decode.c (do_add_cmd): Use "new".
10464         (delete_cmd): Use "delete".
10465
10466 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
10467             Pedro Alves <palves@redhat.com>
10468
10469         PR breakpoints/19806 and support for PR external/20207.
10470         * NEWS: Mention Aarch64 watchpoint improvements.
10471         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
10472         watchpoints and PR external/20207 watchpoints.
10473         * nat/aarch64-linux-hw-point.c
10474         (kernel_supports_any_contiguous_range): New.
10475         (aarch64_watchpoint_offset): New.
10476         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
10477         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
10478         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
10479         (aarch64_align_watchpoint): New parameters aligned_offset_p and
10480         next_addr_orig_p.  Support PR external/20207 watchpoints.
10481         (aarch64_downgrade_regs): New.
10482         (aarch64_dr_state_insert_one_point): New parameters offset and
10483         addr_orig.
10484         (aarch64_dr_state_remove_one_point): Likewise.
10485         (aarch64_handle_breakpoint): Update caller.
10486         (aarch64_handle_aligned_watchpoint): Likewise.
10487         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
10488         aligned_offset.
10489         (aarch64_linux_set_debug_regs): Remove const from state.  Call
10490         aarch64_downgrade_regs.
10491         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
10492         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
10493         (DR_CONTROL_MASK): ... this.
10494         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
10495         (unsigned int aarch64_watchpoint_offset): New prototype.
10496         (aarch64_linux_set_debug_regs): Remove const from state.
10497         * utils.c (align_up, align_down): Move to ...
10498         * common/common-utils.c (align_up, align_down): ... here.
10499         * utils.h (align_up, align_down): Move to ...
10500         * common/common-utils.h (align_up, align_down): ... here.
10501
10502 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
10503
10504         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
10505         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
10506         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
10507         Re-implement to match the ABI as summarized in GCC's
10508         gcc/config/sparc/sparc.c.  All callers updated.
10509         (sparc32_store_arguments): Remove assertion.
10510
10511 2018-05-04  Tom Tromey  <tom@tromey.com>
10512
10513         * printcmd.c: Don't include tui.h.
10514         (decode_format): Use skip_spaces.
10515
10516 2018-05-04  Tom Tromey  <tom@tromey.com>
10517
10518         PR gdb/22619:
10519         * printcmd.c (last_count): New global.
10520         (x_command): Use saved count when repeating.
10521
10522 2018-05-04  Tom Tromey  <tom@tromey.com>
10523
10524         * nto-procfs.c (do_closedir_cleanup): Remove.
10525         (procfs_pidlist): Use gdb_dir_up.
10526         * procfs.c (do_closedir_cleanup): Remove.
10527         (proc_update_threads): Use gdb_dir_up.
10528         * common/filestuff.h (struct gdb_dir_deleter): New.
10529         (gdb_dir_up): New typedef.
10530
10531 2018-05-04  Tom Tromey  <tom@tromey.com>
10532
10533         * ada-lang.c (print_mention_exception): Use std::string.
10534
10535 2018-05-04  Tom Tromey  <tom@tromey.com>
10536
10537         * ada-lang.c (create_excep_cond_exprs): Update.
10538         (ada_exception_catchpoint_cond_string): Use std::string.
10539
10540 2018-05-04  Tom Tromey  <tom@tromey.com>
10541
10542         * ada-lang.c (xget_renaming_scope): Return std::string.
10543         (old_renaming_is_invisible): Update.
10544
10545 2018-05-04  Tom Tromey  <tom@tromey.com>
10546
10547         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
10548         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
10549
10550 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
10551
10552         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
10553
10554 2018-05-04  Tom Tromey  <tom@tromey.com>
10555
10556         * remote.c (remote_query_supported_append): Change type.
10557         (remote_check_symbols): Update.
10558
10559 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
10560
10561         PR gdb/11420
10562         * configure.ac: Prepend libpython.
10563         * python/python-config.py: Likewise.
10564         * configure: Regenerate.
10565
10566 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
10567
10568         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
10569
10570 2018-05-03  Pedro Alves  <palves@redhat.com>
10571
10572         * s390-linux-nat.c
10573         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
10574         override.  Write 'true' instead of '1'.
10575         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
10576         declaration.
10577
10578 2018-05-02  Pedro Alves  <palves@redhat.com>
10579
10580         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
10581         add_inf_child_target.
10582         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
10583         add_inf_child_target.
10584         * aix-thread.c (aix_thread_target_info): New.
10585         (aix_thread_target) <shortname, longname, doc>: Delete.
10586         <info>: New.
10587         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
10588         add_inf_child_target.
10589         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
10590         add_inf_child_target.
10591         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
10592         add_inf_child_target.
10593         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
10594         add_inf_child_target.
10595         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
10596         add_inf_child_target.
10597         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
10598         add_inf_child_target.
10599         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
10600         add_inf_child_target.
10601         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
10602         add_inf_child_target.
10603         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
10604         add_inf_child_target.
10605         * bfd-target.c (target_bfd_target_info): New.
10606         (target_bfd) <shortname, longname, doc>: Delete.
10607         <info>: New.
10608         * bsd-kvm.c (bsd_kvm_target_info): New.
10609         (bsd_kvm_target) <shortname, longname, doc>: Delete.
10610         <info>: New.
10611         (bsd_kvm_target::open): Rename to ...
10612         (bsd_kvm_target_open): ... this.  Adjust.
10613         * bsd-uthread.c (bsd_uthread_target_info): New.
10614         (bsd_uthread_target) <shortname, longname, doc>: Delete.
10615         <info>: New.
10616         * corefile.c (core_file_command): Adjust.
10617         * corelow.c (core_target_info): New.
10618         (core_target) <shortname, longname, doc>: Delete.
10619         <info>: New.
10620         (core_target::open): Rename to ...
10621         (core_target_open): ... this.  Adjust.
10622         * ctf.c (ctf_target_info): New.
10623         (ctf_target) <shortname, longname, doc>: Delete.
10624         <info>: New.
10625         (ctf_target::open): Rename to ...
10626         (ctf_target_open): ... this.
10627         (_initialize_ctf): Adjust.
10628         * exec.c (exec_target_info): New.
10629         (exec_target) <shortname, longname, doc>: Delete.
10630         <info>: New.
10631         (exec_target::open): Rename to ...
10632         (exec_target_open): ... this.
10633         * gdbcore.h (core_target_open): Declare.
10634         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
10635         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
10636         add_inf_child_target.
10637         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
10638         add_inf_child_target.
10639         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
10640         add_inf_child_target.
10641         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
10642         add_inf_child_target.
10643         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
10644         add_inf_child_target.
10645         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
10646         add_inf_child_target.
10647         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
10648         add_inf_child_target.
10649         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
10650         add_inf_child_target.
10651         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
10652         add_inf_child_target.
10653         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
10654         add_inf_child_target.
10655         * inf-child.c (inf_child_target_info): New.
10656         (inf_child_target::info): New.
10657         (inf_child_open_target): Remove 'target' parameter.  Use
10658         get_native_target instead.
10659         (inf_child_target::open): Delete.
10660         (add_inf_child_target): New.
10661         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
10662         Delete.
10663         <info>: New.
10664         (add_inf_child_target): Declare.
10665         (inf_child_open_target): Declare.
10666         * linux-thread-db.c (thread_db_target_info): New.
10667         (thread_db_target) <shortname, longname, doc>: Delete.
10668         <info>: New.
10669         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
10670         add_inf_child_target.
10671         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
10672         add_inf_child_target.
10673         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
10674         add_inf_child_target.
10675         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
10676         add_inf_child_target.
10677         * make-target-delegates (print_class): Adjust.
10678         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
10679         add_inf_child_target.
10680         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
10681         add_inf_child_target.
10682         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
10683         add_inf_child_target.
10684         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
10685         add_inf_child_target.
10686         * nto-procfs.c (nto_native_target_info): New.
10687         (nto_procfs_target_native) <shortname, longname, doc>:
10688         Delete.
10689         <info>: New.
10690         (nto_procfs_target_info): New.
10691         (nto_procfs_target_procfs) <shortname, longname, doc>:
10692         Delete.
10693         <info>: New.
10694         (init_procfs_targets): Adjust.
10695         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
10696         add_inf_child_target.
10697         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
10698         add_inf_child_target.
10699         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
10700         add_inf_child_target.
10701         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
10702         add_inf_child_target.
10703         * ravenscar-thread.c (ravenscar_target_info): New.
10704         (ravenscar_thread_target) <shortname, longname, doc>:
10705         Delete.
10706         <info>: New.
10707         * record-btrace.c (record_btrace_target_info):
10708         (record_btrace_target) <shortname, longname, doc>: Delete.
10709         <info>: New.
10710         (record_btrace_target::open): Rename to ...
10711         (record_btrace_target_open): ... this.  Adjust.
10712         * record-full.c (record_longname, record_doc): New.
10713         (record_full_base_target) <shortname, longname, doc>: Delete.
10714         <info>: New.
10715         (record_full_target_info): New.
10716         (record_full_target): <shortname>: Delete.
10717         <info>: New.
10718         (record_full_core_open_1, record_full_open_1): Update comments.
10719         (record_full_base_target::open): Rename to ...
10720         (record_full_open): ... this.
10721         (cmd_record_full_restore): Update.
10722         (_initialize_record_full): Update.
10723         * remote-sim.c (remote_sim_target_info): New.
10724         (gdbsim_target) <shortname, longname, doc>: Delete.
10725         <info>: New.
10726         (gdbsim_target::open): Rename to ...
10727         (gdbsim_target_open): ... this.
10728         (_initialize_remote_sim): Adjust.
10729         * remote.c (remote_doc): New.
10730         (remote_target_info): New.
10731         (remote_target) <shortname, longname, doc>: Delete.
10732         <info>: New.
10733         (extended_remote_target_info): New.
10734         (extended_remote_target) <shortname, longname, doc>: Delete.
10735         <info>: New.
10736         (remote_target::open_1): Make static.  Adjust.
10737         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
10738         * s390-linux-nat.c (_initialize_s390_nat): Use
10739         add_inf_child_target.
10740         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
10741         add_inf_child_target.
10742         * sol-thread.c (thread_db_target_info): New.
10743         (sol_thread_target) <shortname, longname, doc>: Delete.
10744         <info>: New.
10745         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
10746         add_inf_child_target.
10747         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
10748         add_inf_child_target.
10749         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
10750         add_inf_child_target.
10751         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
10752         add_inf_child_target.
10753         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
10754         add_inf_child_target.
10755         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
10756         add_inf_child_target.
10757         * spu-linux-nat.c (_initialize_spu_nat): Use
10758         add_inf_child_target.
10759         * spu-multiarch.c (spu_multiarch_target_info): New.
10760         (spu_multiarch_target) <shortname, longname, doc>: Delete.
10761         <info>: New.
10762         * target-delegates.c: Regenerate.
10763         * target.c: Include <unordered_map>.
10764         (target_ops_p): Delete.
10765         (DEF_VEC_P(target_ops_p)): Delete.
10766         (target_factories): New.
10767         (test_target_info): New.
10768         (test_target_ops::info): New.
10769         (open_target): Adjust to use target_factories.
10770         (add_target_with_completer): Rename to ...
10771         (add_target): ... this.  Change prototype.  Register target_info
10772         and open callback in target_factories.  Register target_info in
10773         command context instead of target_ops.
10774         (add_target): Delete old implementation.
10775         (add_deprecated_target_alias): Change prototype.  Adjust.
10776         (the_native_target): New.
10777         (set_native_target, get_native_target): New.
10778         (find_default_run_target): Use the_native_target.
10779         (find_attach_target, find_run_target): Simplify.
10780         (target_ops::open): Delete.
10781         (dummy_target_info): New.
10782         (dummy_target::shortname, dummy_target::longname)
10783         (dummy_target::doc): Delete.
10784         (dummy_target::info): New.
10785         (debug_target::shortname, debug_target::longname)
10786         (debug_target::doc): Delete.
10787         (debug_target::info): New.
10788         * target.h (struct target_info): New.
10789         (target_ops::~target_ops): Add comment.
10790         (target_ops::info): New.
10791         (target_ops::shortname, target_ops::longname, target_ops::doc): No
10792         longer virtual.  Implement in terms of target_info.
10793         (set_native_target, get_native_target): Declare.
10794         (target_open_ftype): New.
10795         (add_target, add_target_with_completer)
10796         (add_deprecated_target_alias): Change prototype.
10797         (test_target) <shortname, longname, doc>: Delete.
10798         <info>: New.
10799         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
10800         add_inf_child_target.
10801         * tracefile-tfile.c (tfile_target_info): New.
10802         (tfile_target) <shortname, longname, doc>: Delete.
10803         <info>: New.
10804         (tfile_target::open): Rename to ...
10805         (tfile_target_open): ... this.
10806         (_initialize_tracefile_tfile): Adjust.
10807         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
10808         add_inf_child_target.
10809         * windows-nat.c (_initialize_windows_nat): Use
10810         add_inf_child_target.
10811         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
10812         add_inf_child_target.
10813
10814 2018-05-02  Pedro Alves  <palves@redhat.com>
10815
10816         * linux-nat.h (linux_nat_target) <low_new_thread,
10817         low_delete_thread, low_new_fork, low_forget_process,
10818         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
10819         New virtual methods.
10820         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10821         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
10822         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
10823         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10824         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
10825         Delete.
10826         * linux-fork.c (delete_fork): Adjust to call low method.
10827         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
10828         (linux_nat_new_fork, linux_nat_forget_process_hook)
10829         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
10830         (linux_nat_status_is_event):
10831         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
10832         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
10833         to call low method.
10834         (sigtrap_is_event): Rename to ...
10835         (linux_nat_target::low_status_is_event): ... this.
10836         (linux_nat_set_status_is_event): Delete.
10837         (save_stop_reason, linux_nat_wait_1)
10838         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
10839         low methods.
10840         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10841         (linux_nat_set_new_fork, linux_nat_set_forget_process)
10842         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10843         (linux_nat_set_prepare_to_resume): Delete.
10844         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
10845         low virtual methods.
10846         * amd64-linux-nat.c: Likewise.
10847         * arm-linux-nat.c: Likewise.
10848         * i386-linux-nat.c: Likewise.
10849         * ia64-linux-nat.c: Likewise.
10850         * mips-linux-nat.c: Likewise.
10851         * ppc-linux-nat.c: Likewise.
10852         * s390-linux-nat.c: Likewise.
10853         * sparc64-linux-nat.c: Likewise.
10854         * x86-linux-nat.c: Likewise.
10855         * x86-linux-nat.h: Include "nat/x86-linux.h".
10856         (x86_linux_nat_target) <low_new_fork, low_forget_process,
10857         low_prepare_to_resume, low_new_thread, low_delete_thread>:
10858         Override methods.
10859
10860 2018-05-02  Pedro Alves  <palves@redhat.com>
10861
10862         * target.h (target_ops)
10863         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
10864         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
10865         stopped_by_watchpoint, have_continuable_watchpoint,
10866         stopped_data_address, watchpoint_addr_within_range,
10867         can_accel_watchpoint_condition, can_run, thread_alive,
10868         has_all_memory, has_memory, has_stack, has_registers,
10869         has_execution, can_async_p, is_async_p, supports_non_stop,
10870         always_non_stop_p, can_execute_reverse, supports_multi_process,
10871         supports_enable_disable_tracepoint,
10872         supports_disable_randomization, supports_string_tracing,
10873         supports_evaluation_of_breakpoint_conditions,
10874         can_run_breakpoint_commands, filesystem_is_local,
10875         can_download_tracepoint, get_trace_state_variable_value,
10876         set_trace_notes, get_tib_address, use_agent, can_use_agent,
10877         record_is_replaying, record_will_replay,
10878         augmented_libraries_svr4_read>: Adjust to return bool.
10879         * aarch64-linux-nat.c: All implementations adjusted.
10880         * aix-thread.c: All implementations adjusted.
10881         * arm-linux-nat.c: All implementations adjusted.
10882         * breakpoint.c: All implementations adjusted.
10883         * bsd-kvm.c: All implementations adjusted.
10884         * bsd-uthread.c: All implementations adjusted.
10885         * corelow.c: All implementations adjusted.
10886         * ctf.c: All implementations adjusted.
10887         * darwin-nat.c: All implementations adjusted.
10888         * darwin-nat.h: All implementations adjusted.
10889         * exec.c: All implementations adjusted.
10890         * fbsd-nat.c: All implementations adjusted.
10891         * fbsd-nat.h: All implementations adjusted.
10892         * gnu-nat.c: All implementations adjusted.
10893         * gnu-nat.h: All implementations adjusted.
10894         * go32-nat.c: All implementations adjusted.
10895         * ia64-linux-nat.c: All implementations adjusted.
10896         * inf-child.c: All implementations adjusted.
10897         * inf-child.h: All implementations adjusted.
10898         * inf-ptrace.c: All implementations adjusted.
10899         * inf-ptrace.h: All implementations adjusted.
10900         * linux-nat.c: All implementations adjusted.
10901         * linux-nat.h: All implementations adjusted.
10902         * mips-linux-nat.c: All implementations adjusted.
10903         * nto-procfs.c: All implementations adjusted.
10904         * ppc-linux-nat.c: All implementations adjusted.
10905         * procfs.c: All implementations adjusted.
10906         * ravenscar-thread.c: All implementations adjusted.
10907         * record-btrace.c: All implementations adjusted.
10908         * record-full.c: All implementations adjusted.
10909         * remote-sim.c: All implementations adjusted.
10910         * remote.c: All implementations adjusted.
10911         * s390-linux-nat.c: All implementations adjusted.
10912         * sol-thread.c: All implementations adjusted.
10913         * spu-multiarch.c: All implementations adjusted.
10914         * target-delegates.c: All implementations adjusted.
10915         * target.c: All implementations adjusted.
10916         * target.h: All implementations adjusted.
10917         * tracefile-tfile.c: All implementations adjusted.
10918         * tracefile.c: All implementations adjusted.
10919         * tracefile.h: All implementations adjusted.
10920         * windows-nat.c: All implementations adjusted.
10921         * x86-linux-nat.h: All implementations adjusted.
10922         * x86-nat.h: All implementations adjusted.
10923
10924 2018-05-02  Pedro Alves  <palves@redhat.com>
10925
10926         * make-target-delegates (scan_target_h): Don't trim lines here.
10927         Replace sequences of tabs and/or whitespace with a single
10928         whitespace.
10929         (top level, parsing methods): Trim each line before processing it
10930         here.
10931
10932 2018-05-02  Pedro Alves  <palves@redhat.com>
10933             John Baldwin  <jhb@freebsd.org>
10934
10935         * target.h (enum strata) <debug_stratum>: New.
10936         (struct target_ops) <all delegation methods>: Replace by C++
10937         virtual methods, and drop "to_" prefix.  All references updated
10938         throughout.
10939         <to_shortname, to_longname, to_doc, to_data,
10940         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
10941         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
10942         virtual methods.  All references updated throughout.
10943         <can_attach, supports_terminal_ours, can_create_inferior,
10944         get_thread_control_capabilities, attach_no_wait>: New
10945         virtual methods.
10946         <insert_breakpoint, remove_breakpoint>: Now
10947         TARGET_DEFAULT_NORETURN methods.
10948         <info_proc>: Now returns bool.
10949         <to_magic>: Delete.
10950         (OPS_MAGIC): Delete.
10951         (current_target): Delete.  All references replaced by references
10952         to ...
10953         (target_stack): ... this.  New.
10954         (target_shortname, target_longname): Adjust.
10955         (target_can_run): Now a function declaration.
10956         (default_child_has_all_memory, default_child_has_memory)
10957         (default_child_has_stack, default_child_has_registers)
10958         (default_child_has_execution): Remove target_ops parameter.
10959         (complete_target_initialization): Delete.
10960         (memory_breakpoint_target): New template class.
10961         (test_target_ops): Refactor as a C++ class with virtual methods.
10962         * make-target-delegates (NAME_PART): Tighten.
10963         (POINTER_PART, CP_SYMBOL): New.
10964         (SIMPLE_RETURN_PART): Reimplement.
10965         (VEC_RETURN_PART): Expect less.
10966         (RETURN_PART, VIRTUAL_PART): New.
10967         (METHOD): Adjust to C++ virtual methods.
10968         (scan_target_h): Remove reference to C99.
10969         (dname): Output "target_ops::" prefix.
10970         (write_function_header): Adjust to output a C++ class method.
10971         (write_declaration): New.
10972         (write_delegator): Adjust to output a C++ class method.
10973         (tdname): Output "dummy_target::" prefix.
10974         (write_tdefault, write_debugmethod): Adjust to output a C++ class
10975         method.
10976         (tdefault_names, debug_names): Delete.
10977         (return_types, tdefaults, styles, argtypes_array): New.
10978         (top level): All methods are delegators.
10979         (print_class): New.
10980         (top level): Print dummy_target and debug_target classes.
10981         * target-delegates.c: Regenerate.
10982         * target-debug.h (target_debug_print_enum_info_proc_what)
10983         (target_debug_print_thread_control_capabilities)
10984         (target_debug_print_thread_info_p): New.
10985         * target.c (dummy_target): Delete.
10986         (the_dummy_target, the_debug_target): New.
10987         (target_stack): Now extern.
10988         (set_targetdebug): Push/unpush debug target.
10989         (default_child_has_all_memory, default_child_has_memory)
10990         (default_child_has_stack, default_child_has_registers)
10991         (default_child_has_execution): Remove target_ops parameter.
10992         (complete_target_initialization): Delete.
10993         (add_target_with_completer): No longer call
10994         complete_target_initialization.
10995         (target_supports_terminal_ours): Use regular delegation.
10996         (update_current_target): Delete.
10997         (push_target): No longer check magic number.  Don't call
10998         update_current_target.
10999         (unpush_target): Don't call update_current_target.
11000         (target_is_pushed): No longer check magic number.
11001         (target_require_runnable): Skip for all stratums over
11002         process_stratum.
11003         (target_ops::info_proc): New.
11004         (target_info_proc): Use find_target_at and
11005         find_default_run_target.
11006         (target_supports_disable_randomization): Use regular delegation.
11007         (target_get_osdata): Use find_target_at.
11008         (target_ops::open, target_ops::close, target_ops::can_attach)
11009         (target_ops::attach, target_ops::can_create_inferior)
11010         (target_ops::create_inferior, target_ops::can_run)
11011         (target_can_run): New.
11012         (default_fileio_target): Use regular delegation.
11013         (target_ops::fileio_open, target_ops::fileio_pwrite)
11014         (target_ops::fileio_pread, target_ops::fileio_fstat)
11015         (target_ops::fileio_close, target_ops::fileio_unlink)
11016         (target_ops::fileio_readlink): New.
11017         (target_fileio_open_1, target_fileio_unlink)
11018         (target_fileio_readlink): Always call the target method.  Handle
11019         FILEIO_ENOSYS.
11020         (return_zero, return_zero_has_execution): Delete.
11021         (init_dummy_target): Delete.
11022         (dummy_target::dummy_target, dummy_target::shortname)
11023         (dummy_target::longname, dummy_target::doc)
11024         (debug_target::debug_target, debug_target::shortname)
11025         (debug_target::longname, debug_target::doc): New.
11026         (target_supports_delete_record): Use regular delegation.
11027         (setup_target_debug): Delete.
11028         (maintenance_print_target_stack): Skip debug_stratum.
11029         (initialize_targets): Instantiate the_dummy_target and
11030         the_debug_target.
11031         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
11032         use target_stack.
11033         (target_auxv_search, fprint_target_auxv): Adjust.
11034         (info_auxv_command): Adjust to use target_stack.
11035         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
11036         * exceptions.c (print_flush): Handle a NULL target_stack.
11037         * regcache.c (target_ops_no_register): Refactor as class with
11038         virtual methods.
11039
11040         * exec.c (exec_target): New class.
11041         (exec_ops): Now an exec_target.
11042         (exec_open, exec_close_1, exec_get_section_table)
11043         (exec_xfer_partial, exec_files_info, exec_has_memory)
11044         (exec_make_note_section): Refactor as exec_target methods.
11045         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
11046         Delete.
11047         (exec_target::find_memory_regions): New.
11048         (_initialize_exec): Don't call init_exec_ops.
11049         * gdbcore.h (exec_file_clear): Delete.
11050
11051         * corefile.c (core_target): Delete.
11052         (core_file_command): Adjust.
11053         * corelow.c (core_target): New class.
11054         (the_core_target): New.
11055         (core_close): Remove target_ops parameter.
11056         (core_close_cleanup): Adjust.
11057         (core_target::close): New.
11058         (core_open, core_detach, get_core_registers, core_files_info)
11059         (core_xfer_partial, core_thread_alive, core_read_description)
11060         (core_pid_to_str, core_thread_name, core_has_memory)
11061         (core_has_stack, core_has_registers, core_info_proc): Rework as
11062         core_target methods.
11063         (ignore, core_remove_breakpoint, init_core_ops): Delete.
11064         (_initialize_corelow): Initialize the_core_target.
11065         * gdbcore.h (core_target): Delete.
11066         (the_core_target): New.
11067
11068         * ctf.c: (ctf_target): New class.
11069         (ctf_ops): Now a ctf_target.
11070         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
11071         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
11072         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
11073         methods.
11074         (init_ctf_ops): Delete.
11075         (_initialize_ctf): Don't call it.
11076         * tracefile-tfile.c (tfile_target): New class.
11077         (tfile_ops): Now a tfile_target.
11078         (tfile_open, tfile_close, tfile_files_info)
11079         (tfile_get_tracepoint_status, tfile_trace_find)
11080         (tfile_fetch_registers, tfile_xfer_partial)
11081         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
11082         Refactor as tfile_target methods.
11083         (tfile_xfer_partial_features): Remove target_ops parameter.
11084         (init_tfile_ops): Delete.
11085         (_initialize_tracefile_tfile): Don't call it.
11086         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
11087         (tracefile_has_stack, tracefile_has_registers)
11088         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
11089         tracefile_target methods.
11090         (init_tracefile_ops): Delete.
11091         (tracefile_target::tracefile_target): New.
11092         * tracefile.h: Include "target.h".
11093         (tracefile_target): New class.
11094         (init_tracefile_ops): Delete.
11095
11096         * spu-multiarch.c (spu_multiarch_target): New class.
11097         (spu_ops): Now a spu_multiarch_target.
11098         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
11099         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
11100         (spu_search_memory, spu_mourn_inferior): Refactor as
11101         spu_multiarch_target methods.
11102         (init_spu_ops): Delete.
11103         (_initialize_spu_multiarch): Remove references to init_spu_ops,
11104         complete_target_initialization.
11105
11106         * ravenscar-thread.c (ravenscar_thread_target): New class.
11107         (ravenscar_ops): Now a ravenscar_thread_target.
11108         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
11109         (ravenscar_thread_alive, ravenscar_pid_to_str)
11110         (ravenscar_fetch_registers, ravenscar_store_registers)
11111         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
11112         (ravenscar_stopped_by_hw_breakpoint)
11113         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
11114         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
11115         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
11116         methods.
11117         (init_ravenscar_thread_ops): Delete.
11118         (_initialize_ravenscar): Remove references to
11119         init_ravenscar_thread_ops and complete_target_initialization.
11120
11121         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
11122         (bsd_uthread_target): New class.
11123         (bsd_uthread_ops): Now a bsd_uthread_target.
11124         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
11125         (bsd_uthread_close, bsd_uthread_mourn_inferior)
11126         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
11127         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
11128         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
11129         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
11130         (bsd_uthread_target): Delete function.
11131         (_initialize_bsd_uthread): Remove reference to
11132         complete_target_initialization.
11133
11134         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
11135         (target_bfd): ... this new class.
11136         (target_bfd_xfer_partial, target_bfd_get_section_table)
11137         (target_bfd_close): Refactor as target_bfd methods.
11138         (target_bfd::~target_bfd): New.
11139         (target_bfd_reopen): Adjust.
11140         (target_bfd::close): New.
11141
11142         * record-btrace.c (record_btrace_target): New class.
11143         (record_btrace_ops): Now a record_btrace_target.
11144         (record_btrace_open, record_btrace_stop_recording)
11145         (record_btrace_disconnect, record_btrace_close)
11146         (record_btrace_async, record_btrace_info)
11147         (record_btrace_insn_history, record_btrace_insn_history_range)
11148         (record_btrace_insn_history_from, record_btrace_call_history)
11149         (record_btrace_call_history_range)
11150         (record_btrace_call_history_from, record_btrace_record_method)
11151         (record_btrace_is_replaying, record_btrace_will_replay)
11152         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
11153         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
11154         (record_btrace_store_registers, record_btrace_prepare_to_store)
11155         (record_btrace_to_get_unwinder)
11156         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
11157         (record_btrace_commit_resume, record_btrace_wait)
11158         (record_btrace_stop, record_btrace_can_execute_reverse)
11159         (record_btrace_stopped_by_sw_breakpoint)
11160         (record_btrace_supports_stopped_by_sw_breakpoint)
11161         (record_btrace_stopped_by_hw_breakpoint)
11162         (record_btrace_supports_stopped_by_hw_breakpoint)
11163         (record_btrace_update_thread_list, record_btrace_thread_alive)
11164         (record_btrace_goto_begin, record_btrace_goto_end)
11165         (record_btrace_goto, record_btrace_stop_replaying_all)
11166         (record_btrace_execution_direction)
11167         (record_btrace_prepare_to_generate_core)
11168         (record_btrace_done_generating_core): Refactor as
11169         record_btrace_target methods.
11170         (init_record_btrace_ops): Delete.
11171         (_initialize_record_btrace): Remove reference to
11172         init_record_btrace_ops.
11173         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
11174         the execution_direction global.
11175         (record_full_base_target, record_full_target)
11176         (record_full_core_target): New classes.
11177         (record_full_ops): Now a record_full_target.
11178         (record_full_core_ops): Now a record_full_core_target.
11179         (record_full_target::detach, record_full_target::disconnect)
11180         (record_full_core_target::disconnect)
11181         (record_full_target::mourn_inferior, record_full_target::kill):
11182         New.
11183         (record_full_open, record_full_close, record_full_async): Refactor
11184         as methods of the record_full_base_target class.
11185         (record_full_resume, record_full_commit_resume): Refactor
11186         as methods of the record_full_target class.
11187         (record_full_wait, record_full_stopped_by_watchpoint)
11188         (record_full_stopped_data_address)
11189         (record_full_stopped_by_sw_breakpoint)
11190         (record_full_supports_stopped_by_sw_breakpoint)
11191         (record_full_stopped_by_hw_breakpoint)
11192         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
11193         methods of the record_full_base_target class.
11194         (record_full_store_registers, record_full_xfer_partial)
11195         (record_full_insert_breakpoint, record_full_remove_breakpoint):
11196         Refactor as methods of the record_full_target class.
11197         (record_full_can_execute_reverse, record_full_get_bookmark)
11198         (record_full_goto_bookmark, record_full_execution_direction)
11199         (record_full_record_method, record_full_info, record_full_delete)
11200         (record_full_is_replaying, record_full_will_replay)
11201         (record_full_goto_begin, record_full_goto_end, record_full_goto)
11202         (record_full_stop_replaying): Refactor as methods of the
11203         record_full_base_target class.
11204         (record_full_core_resume, record_full_core_kill)
11205         (record_full_core_fetch_registers)
11206         (record_full_core_prepare_to_store)
11207         (record_full_core_store_registers, record_full_core_xfer_partial)
11208         (record_full_core_insert_breakpoint)
11209         (record_full_core_remove_breakpoint)
11210         (record_full_core_has_execution): Refactor
11211         as methods of the record_full_core_target class.
11212         (record_full_base_target::supports_delete_record): New.
11213         (init_record_full_ops): Delete.
11214         (init_record_full_core_ops): Delete.
11215         (record_full_save): Refactor as method of the
11216         record_full_base_target class.
11217         (_initialize_record_full): Remove references to
11218         init_record_full_ops and init_record_full_core_ops.
11219
11220         * remote.c (remote_target, extended_remote_target): New classes.
11221         (remote_ops): Now a remote_target.
11222         (extended_remote_ops): Now an extended_remote_target.
11223         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
11224         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
11225         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
11226         (remote_pass_signals, remote_set_syscall_catchpoint)
11227         (remote_program_signals, )
11228         (remote_thread_always_alive): Remove target_ops parameter.
11229         (remote_thread_alive, remote_thread_name)
11230         (remote_update_thread_list, remote_threads_extra_info)
11231         (remote_static_tracepoint_marker_at)
11232         (remote_static_tracepoint_markers_by_strid)
11233         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
11234         (remote_open): Refactor as methods of remote_target.
11235         (extended_remote_open, extended_remote_detach)
11236         (extended_remote_attach, extended_remote_post_attach):
11237         (extended_remote_supports_disable_randomization)
11238         (extended_remote_create_inferior): : Refactor as method of
11239         extended_remote_target.
11240         (remote_set_permissions, remote_open_1, remote_detach)
11241         (remote_follow_fork, remote_follow_exec, remote_disconnect)
11242         (remote_resume, remote_commit_resume, remote_stop)
11243         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
11244         (remote_terminal_ours, remote_wait, remote_fetch_registers)
11245         (remote_prepare_to_store, remote_store_registers)
11246         (remote_flash_erase, remote_flash_done, remote_files_info)
11247         (remote_kill, remote_mourn, remote_insert_breakpoint)
11248         (remote_remove_breakpoint, remote_insert_watchpoint)
11249         (remote_watchpoint_addr_within_range)
11250         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
11251         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
11252         (remote_supports_stopped_by_sw_breakpoint)
11253         (remote_stopped_by_hw_breakpoint)
11254         (remote_supports_stopped_by_hw_breakpoint)
11255         (remote_stopped_by_watchpoint, remote_stopped_data_address)
11256         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
11257         (remote_verify_memory): Refactor as methods of remote_target.
11258         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
11259         parameter.
11260         (remote_xfer_partial, remote_get_memory_xfer_limit)
11261         (remote_search_memory, remote_rcmd, remote_memory_map)
11262         (remote_pid_to_str, remote_get_thread_local_address)
11263         (remote_get_tib_address, remote_read_description): Refactor as
11264         methods of remote_target.
11265         (remote_target::fileio_open, remote_target::fileio_pwrite)
11266         (remote_target::fileio_pread, remote_target::fileio_close): New.
11267         (remote_hostio_readlink, remote_hostio_fstat)
11268         (remote_filesystem_is_local, remote_can_execute_reverse)
11269         (remote_supports_non_stop, remote_supports_disable_randomization)
11270         (remote_supports_multi_process, remote_supports_cond_breakpoints)
11271         (remote_supports_enable_disable_tracepoint)
11272         (remote_supports_string_tracing)
11273         (remote_can_run_breakpoint_commands, remote_trace_init)
11274         (remote_download_tracepoint, remote_can_download_tracepoint)
11275         (remote_download_trace_state_variable, remote_enable_tracepoint)
11276         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
11277         (remote_trace_start, remote_get_trace_status)
11278         (remote_get_tracepoint_status, remote_trace_stop)
11279         (remote_trace_find, remote_get_trace_state_variable_value)
11280         (remote_save_trace_data, remote_get_raw_trace_data)
11281         (remote_set_disconnected_tracing, remote_core_of_thread)
11282         (remote_set_circular_trace_buffer, remote_traceframe_info)
11283         (remote_get_min_fast_tracepoint_insn_len)
11284         (remote_set_trace_buffer_size, remote_set_trace_notes)
11285         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
11286         (remote_disable_btrace, remote_teardown_btrace)
11287         (remote_read_btrace, remote_btrace_conf)
11288         (remote_augmented_libraries_svr4_read, remote_load)
11289         (remote_pid_to_exec_file, remote_can_do_single_step)
11290         (remote_execution_direction, remote_thread_handle_to_thread_info):
11291         Refactor as methods of remote_target.
11292         (init_remote_ops, init_extended_remote_ops): Delete.
11293         (remote_can_async_p, remote_is_async_p, remote_async)
11294         (remote_thread_events, remote_upload_tracepoints)
11295         (remote_upload_trace_state_variables): Refactor as methods of
11296         remote_target.
11297         (_initialize_remote): Remove references to init_remote_ops and
11298         init_extended_remote_ops.
11299
11300         * remote-sim.c (gdbsim_target): New class.
11301         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
11302         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
11303         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
11304         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
11305         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
11306         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
11307         Refactor as methods of gdbsim_target.
11308         (gdbsim_ops): Now a gdbsim_target.
11309         (init_gdbsim_ops): Delete.
11310         (gdbsim_cntrl_c): Adjust.
11311         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
11312
11313         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
11314         (the_amd64_linux_nat_target): New.
11315         (amd64_linux_fetch_inferior_registers)
11316         (amd64_linux_store_inferior_registers): Refactor as methods of
11317         amd64_linux_nat_target.
11318         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
11319         * i386-linux-nat.c: Don't include "linux-nat.h".
11320         (i386_linux_nat_target): New class.
11321         (the_i386_linux_nat_target): New.
11322         (i386_linux_fetch_inferior_registers)
11323         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
11324         as methods of i386_linux_nat_target.
11325         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
11326         * inf-child.c (inf_child_ops): Delete.
11327         (inf_child_fetch_inferior_registers)
11328         (inf_child_store_inferior_registers): Delete.
11329         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
11330         methods of inf_child_target.
11331         (inf_child_target::supports_terminal_ours)
11332         (inf_child_target::terminal_init)
11333         (inf_child_target::terminal_inferior)
11334         (inf_child_target::terminal_ours_for_output)
11335         (inf_child_target::terminal_ours, inf_child_target::interrupt)
11336         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
11337         New.
11338         (inf_child_open, inf_child_disconnect, inf_child_close)
11339         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
11340         (inf_child_post_startup_inferior, inf_child_can_run)
11341         (inf_child_pid_to_exec_file): Refactor as methods of
11342         inf_child_target.
11343         (inf_child_follow_fork): Delete.
11344         (inf_child_target::can_create_inferior)
11345         (inf_child_target::can_attach): New.
11346         (inf_child_target::has_all_memory, inf_child_target::has_memory)
11347         (inf_child_target::has_stack, inf_child_target::has_registers)
11348         (inf_child_target::has_execution): New.
11349         (inf_child_fileio_open, inf_child_fileio_pwrite)
11350         (inf_child_fileio_pread, inf_child_fileio_fstat)
11351         (inf_child_fileio_close, inf_child_fileio_unlink)
11352         (inf_child_fileio_readlink, inf_child_use_agent)
11353         (inf_child_can_use_agent): Refactor as methods of
11354         inf_child_target.
11355         (return_zero, inf_child_target): Delete.
11356         (inf_child_target::inf_child_target): New.
11357         * inf-child.h: Include "target.h".
11358         (inf_child_target): Delete function prototype.
11359         (inf_child_target): New class.
11360         (inf_child_open_target, inf_child_mourn_inferior)
11361         (inf_child_maybe_unpush_target): Delete.
11362         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
11363         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
11364         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
11365         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
11366         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
11367         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
11368         (inf_ptrace_wait, inf_ptrace_xfer_partial)
11369         (inf_ptrace_thread_alive, inf_ptrace_files_info)
11370         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
11371         methods of inf_ptrace_target.
11372         (inf_ptrace_target): Delete function.
11373         * inf-ptrace.h: Include "inf-child.h".
11374         (inf_ptrace_target): Delete function declaration.
11375         (inf_ptrace_target): New class.
11376         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
11377         * linux-nat.c (linux_target): New.
11378         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
11379         (linux_nat_target::~linux_nat_target): New.
11380         (linux_child_post_attach, linux_child_post_startup_inferior)
11381         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
11382         (linux_child_remove_fork_catchpoint)
11383         (linux_child_insert_vfork_catchpoint)
11384         (linux_child_remove_vfork_catchpoint)
11385         (linux_child_insert_exec_catchpoint)
11386         (linux_child_remove_exec_catchpoint)
11387         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
11388         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
11389         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
11390         (linux_nat_stopped_data_address)
11391         (linux_nat_stopped_by_sw_breakpoint)
11392         (linux_nat_supports_stopped_by_sw_breakpoint)
11393         (linux_nat_stopped_by_hw_breakpoint)
11394         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
11395         (linux_nat_kill, linux_nat_mourn_inferior)
11396         (linux_nat_xfer_partial, linux_nat_thread_alive)
11397         (linux_nat_update_thread_list, linux_nat_pid_to_str)
11398         (linux_nat_thread_name, linux_child_pid_to_exec_file)
11399         (linux_child_static_tracepoint_markers_by_strid)
11400         (linux_nat_is_async_p, linux_nat_can_async_p)
11401         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
11402         (linux_nat_supports_multi_process)
11403         (linux_nat_supports_disable_randomization, linux_nat_async)
11404         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
11405         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
11406         (linux_nat_fileio_open, linux_nat_fileio_readlink)
11407         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
11408         methods of linux_nat_target.
11409         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
11410         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
11411         parameter.
11412         (check_stopped_by_watchpoint): Adjust.
11413         (linux_xfer_partial): Delete.
11414         (linux_target_install_ops, linux_target, linux_nat_add_target):
11415         Delete.
11416         (linux_nat_target::linux_nat_target): New.
11417         * linux-nat.h: Include "inf-ptrace.h".
11418         (linux_nat_target): New.
11419         (linux_target, linux_target_install_ops, linux_nat_add_target):
11420         Delete function declarations.
11421         (linux_target): Declare global.
11422         * linux-thread-db.c (thread_db_target): New.
11423         (thread_db_target::thread_db_target): New.
11424         (thread_db_ops): Delete.
11425         (the_thread_db_target): New.
11426         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
11427         (thread_db_update_thread_list, thread_db_pid_to_str)
11428         (thread_db_extra_thread_info)
11429         (thread_db_thread_handle_to_thread_info)
11430         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
11431         (thread_db_resume): Refactor as methods of thread_db_target.
11432         (init_thread_db_ops): Delete.
11433         (_initialize_thread_db): Remove reference to init_thread_db_ops.
11434         * x86-linux-nat.c: Don't include "linux-nat.h".
11435         (super_post_startup_inferior): Delete.
11436         (x86_linux_nat_target::~x86_linux_nat_target): New.
11437         (x86_linux_child_post_startup_inferior)
11438         (x86_linux_read_description, x86_linux_enable_btrace)
11439         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
11440         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
11441         methods of x86_linux_nat_target.
11442         (x86_linux_create_target): Delete.  Bits folded ...
11443         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
11444         pointer.
11445         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
11446         (x86_linux_nat_target): New class.
11447         (x86_linux_create_target): Delete.
11448         (x86_linux_add_target): Now takes a linux_nat_target pointer.
11449         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
11450         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
11451         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
11452         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
11453         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
11454         make extern.
11455         (x86_use_watchpoints): Delete.
11456         * x86-nat.h: Include "breakpoint.h" and "target.h".
11457         (x86_use_watchpoints): Delete.
11458         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
11459         (x86_stopped_by_watchpoint, x86_stopped_data_address)
11460         (x86_insert_watchpoint, x86_remove_watchpoint)
11461         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
11462         (x86_stopped_by_hw_breakpoint): New declarations.
11463         (x86_nat_target): New template class.
11464
11465         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
11466         (the_ppc_linux_nat_target): New.
11467         (ppc_linux_fetch_inferior_registers)
11468         (ppc_linux_can_use_hw_breakpoint)
11469         (ppc_linux_region_ok_for_hw_watchpoint)
11470         (ppc_linux_ranged_break_num_registers)
11471         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
11472         (ppc_linux_insert_mask_watchpoint)
11473         (ppc_linux_remove_mask_watchpoint)
11474         (ppc_linux_can_accel_watchpoint_condition)
11475         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
11476         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
11477         (ppc_linux_watchpoint_addr_within_range)
11478         (ppc_linux_masked_watch_num_registers)
11479         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
11480         (ppc_linux_read_description): Refactor as methods of
11481         ppc_linux_nat_target.
11482         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
11483
11484         * procfs.c (procfs_xfer_partial): Delete forward declaration.
11485         (procfs_target): New class.
11486         (the_procfs_target): New.
11487         (procfs_target): Delete function.
11488         (procfs_auxv_parse, procfs_attach, procfs_detach)
11489         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
11490         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
11491         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
11492         (procfs_create_inferior, procfs_update_thread_list)
11493         (procfs_thread_alive, procfs_pid_to_str)
11494         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
11495         (procfs_stopped_data_address, procfs_insert_watchpoint)
11496         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
11497         (proc_find_memory_regions, procfs_info_proc)
11498         (procfs_make_note_section): Refactor as methods of procfs_target.
11499         (_initialize_procfs): Adjust.
11500         * sol-thread.c (sol_thread_target): New class.
11501         (sol_thread_ops): Now a sol_thread_target.
11502         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
11503         (sol_thread_fetch_registers, sol_thread_store_registers)
11504         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
11505         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
11506         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
11507         (init_sol_thread_ops): Delete.
11508         (_initialize_sol_thread): Adjust.  Remove references to
11509         init_sol_thread_ops and complete_target_initialization.
11510
11511         * windows-nat.c (windows_nat_target): New class.
11512         (windows_fetch_inferior_registers)
11513         (windows_store_inferior_registers, windows_resume, windows_wait)
11514         (windows_attach, windows_detach, windows_pid_to_exec_file)
11515         (windows_files_info, windows_create_inferior)
11516         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
11517         (windows_close, windows_pid_to_str, windows_xfer_partial)
11518         (windows_get_tib_address, windows_get_ada_task_ptid)
11519         (windows_thread_name, windows_thread_alive): Refactor as
11520         windows_nat_target methods.
11521         (do_initial_windows_stuff): Adjust.
11522         (windows_target): Delete function.
11523         (_initialize_windows_nat): Adjust.
11524
11525         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
11526         (darwin_mourn_inferior, darwin_kill_inferior)
11527         (darwin_create_inferior, darwin_attach, darwin_detach)
11528         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
11529         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
11530         (darwin_supports_multi_process): Refactor as darwin_nat_target
11531         methods.
11532         (darwin_resume_to, darwin_files_info): Delete.
11533         (_initialize_darwin_inferior): Rename to ...
11534         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
11535         * darwin-nat.h: Include "inf-child.h".
11536         (darwin_nat_target): New class.
11537         (darwin_complete_target): Delete.
11538         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
11539         (darwin_target): New.
11540         (i386_darwin_fetch_inferior_registers)
11541         (i386_darwin_store_inferior_registers): Refactor as methods of
11542         darwin_nat_target.
11543         (darwin_complete_target): Delete, with ...
11544         (_initialize_i386_darwin_nat): ... bits factored out here.
11545
11546         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
11547         (the_alpha_linux_nat_target): New.
11548         (alpha_linux_register_u_offset): Refactor as
11549         alpha_linux_nat_target method.
11550         (_initialize_alpha_linux_nat): Adjust.
11551         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
11552         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11553         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
11554         methods of linux_nat_trad_target.
11555         (linux_trad_target): Delete.
11556         * linux-nat-trad.h (linux_trad_target): Delete function.
11557         (linux_nat_trad_target): New class.
11558         * mips-linux-nat.c (mips_linux_nat_target): New class.
11559         (super_fetch_registers, super_store_registers, super_close):
11560         Delete.
11561         (the_mips_linux_nat_target): New.
11562         (mips64_linux_regsets_fetch_registers)
11563         (mips64_linux_regsets_store_registers)
11564         (mips64_linux_fetch_registers, mips64_linux_store_registers)
11565         (mips_linux_register_u_offset, mips_linux_read_description)
11566         (mips_linux_can_use_hw_breakpoint)
11567         (mips_linux_stopped_by_watchpoint)
11568         (mips_linux_stopped_data_address)
11569         (mips_linux_region_ok_for_hw_watchpoint)
11570         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
11571         (mips_linux_close): Refactor as methods of mips_linux_nat.
11572         (_initialize_mips_linux_nat): Adjust to C++ification.
11573
11574         * aix-thread.c (aix_thread_target): New class.
11575         (aix_thread_ops): Now an aix_thread_target.
11576         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
11577         (aix_thread_fetch_registers, aix_thread_store_registers)
11578         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
11579         (aix_thread_thread_alive, aix_thread_pid_to_str)
11580         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
11581         Refactor as methods of aix_thread_target.
11582         (init_aix_thread_ops): Delete.
11583         (_initialize_aix_thread): Remove references to init_aix_thread_ops
11584         and complete_target_initialization.
11585         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
11586         (rs6000_nat_target): New class.
11587         (the_rs6000_nat_target): New.
11588         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
11589         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
11590         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
11591         (super_create_inferior): Delete.
11592         (_initialize_rs6000_nat): Adjust to C++ification.
11593
11594         * arm-linux-nat.c (arm_linux_nat_target): New class.
11595         (the_arm_linux_nat_target): New.
11596         (arm_linux_fetch_inferior_registers)
11597         (arm_linux_store_inferior_registers, arm_linux_read_description)
11598         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
11599         (arm_linux_remove_hw_breakpoint)
11600         (arm_linux_region_ok_for_hw_watchpoint)
11601         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
11602         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
11603         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
11604         arm_linux_nat_target.
11605         (_initialize_arm_linux_nat): Adjust to C++ification.
11606
11607         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
11608         (the_aarch64_linux_nat_target): New.
11609         (aarch64_linux_fetch_inferior_registers)
11610         (aarch64_linux_store_inferior_registers)
11611         (aarch64_linux_child_post_startup_inferior)
11612         (aarch64_linux_read_description)
11613         (aarch64_linux_can_use_hw_breakpoint)
11614         (aarch64_linux_insert_hw_breakpoint)
11615         (aarch64_linux_remove_hw_breakpoint)
11616         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
11617         (aarch64_linux_region_ok_for_hw_watchpoint)
11618         (aarch64_linux_stopped_data_address)
11619         (aarch64_linux_stopped_by_watchpoint)
11620         (aarch64_linux_watchpoint_addr_within_range)
11621         (aarch64_linux_can_do_single_step): Refactor as methods of
11622         aarch64_linux_nat_target.
11623         (super_post_startup_inferior): Delete.
11624         (_initialize_aarch64_linux_nat): Adjust to C++ification.
11625
11626         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
11627         (the_hppa_linux_nat_target): New.
11628         (hppa_linux_fetch_inferior_registers)
11629         (hppa_linux_store_inferior_registers): Refactor as methods of
11630         hppa_linux_nat_target.
11631         (_initialize_hppa_linux_nat): Adjust to C++ification.
11632
11633         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
11634         (the_ia64_linux_nat_target): New.
11635         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
11636         (ia64_linux_stopped_data_address)
11637         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
11638         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
11639         ia64_linux_nat_target methods.
11640         (super_xfer_partial): Delete.
11641         (_initialize_ia64_linux_nat): Adjust to C++ification.
11642
11643         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
11644         (the_m32r_linux_nat_target): New.
11645         (m32r_linux_fetch_inferior_registers)
11646         (m32r_linux_store_inferior_registers): Refactor as
11647         m32r_linux_nat_target methods.
11648         (_initialize_m32r_linux_nat): Adjust to C++ification.
11649
11650         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
11651         (the_m68k_linux_nat_target): New.
11652         (m68k_linux_fetch_inferior_registers)
11653         (m68k_linux_store_inferior_registers): Refactor as
11654         m68k_linux_nat_target methods.
11655         (_initialize_m68k_linux_nat): Adjust to C++ification.
11656
11657         * s390-linux-nat.c (s390_linux_nat_target): New class.
11658         (the_s390_linux_nat_target): New.
11659         (s390_linux_fetch_inferior_registers)
11660         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
11661         (s390_insert_watchpoint, s390_remove_watchpoint)
11662         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
11663         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
11664         (s390_auxv_parse, s390_read_description): Refactor as methods of
11665         s390_linux_nat_target.
11666         (_initialize_s390_nat): Adjust to C++ification.
11667
11668         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
11669         (the_sparc_linux_nat_target): New.
11670         (_initialize_sparc_linux_nat): Adjust to C++ification.
11671         * sparc-nat.c (sparc_fetch_inferior_registers)
11672         (sparc_store_inferior_registers): Remove target_ops parameter.
11673         * sparc-nat.h (sparc_fetch_inferior_registers)
11674         (sparc_store_inferior_registers): Remove target_ops parameter.
11675         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
11676         (the_sparc64_linux_nat_target): New.
11677         (_initialize_sparc64_linux_nat): Adjust to C++ification.
11678
11679         * spu-linux-nat.c (spu_linux_nat_target): New class.
11680         (the_spu_linux_nat_target): New.
11681         (spu_child_post_startup_inferior, spu_child_post_attach)
11682         (spu_child_wait, spu_fetch_inferior_registers)
11683         (spu_store_inferior_registers, spu_xfer_partial)
11684         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
11685         methods.
11686         (_initialize_spu_nat): Adjust to C++ification.
11687
11688         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
11689         (the_tilegx_linux_nat_target): New.
11690         (fetch_inferior_registers, store_inferior_registers):
11691         Refactor as methods.
11692         (_initialize_tile_linux_nat): Adjust to C++ification.
11693
11694         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
11695         (the_xtensa_linux_nat_target): New.
11696         (xtensa_linux_fetch_inferior_registers)
11697         (xtensa_linux_store_inferior_registers): Refactor as
11698         xtensa_linux_nat_target methods.
11699         (_initialize_xtensa_linux_nat): Adjust to C++ification.
11700
11701         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
11702         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
11703         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
11704         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
11705         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
11706         (fbsd_stopped_by_sw_breakpoint)
11707         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
11708         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
11709         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
11710         (fbsd_post_startup_inferior, fbsd_post_attach)
11711         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
11712         (fbsd_set_syscall_catchpoint)
11713         (super_xfer_partial, super_resume, super_wait)
11714         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
11715         (fbsd_handle_debug_trap): Remove target_ops parameter.
11716         (fbsd_nat_add_target): Delete.
11717         * fbsd-nat.h: Include "inf-ptrace.h".
11718         (fbsd_nat_add_target): Delete.
11719         (USE_SIGTRAP_SIGINFO): Define.
11720         (fbsd_nat_target): New class.
11721
11722         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
11723         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
11724         (amd64bsd_target): Delete.
11725         * amd64-bsd-nat.h: New file.
11726         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
11727         "x86-bsd-nat.h".
11728         (amd64_fbsd_nat_target): New class.
11729         (the_amd64_fbsd_nat_target): New.
11730         (amd64fbsd_read_description): Refactor as method of
11731         amd64_fbsd_nat_target.
11732         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11733         (_initialize_amd64fbsd_nat): Adjust to C++ification.
11734         * amd64-nat.h (amd64bsd_target): Delete function declaration.
11735         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
11736         (i386bsd_store_inferior_registers): Remove target_ops parameter.
11737         (i386bsd_target): Delete.
11738         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
11739         (i386bsd_fetch_inferior_registers)
11740         (i386bsd_store_inferior_registers): Declare.
11741         (i386_bsd_nat_target): New class.
11742         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
11743         (the_i386_fbsd_nat_target): New.
11744         (i386fbsd_resume, i386fbsd_read_description): Refactor as
11745         i386_fbsd_nat_target methods.
11746         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11747         (_initialize_i386fbsd_nat): Adjust to C++ification.
11748         * x86-bsd-nat.c (super_mourn_inferior): Delete.
11749         (x86bsd_mourn_inferior, x86bsd_target): Delete.
11750         (_initialize_x86_bsd_nat): Adjust to C++ification.
11751         * x86-bsd-nat.h: Include "x86-nat.h".
11752         (x86bsd_target): Delete declaration.
11753         (x86bsd_nat_target): New class.
11754
11755         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
11756         (the_aarch64_fbsd_nat_target): New.
11757         (aarch64_fbsd_fetch_inferior_registers)
11758         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
11759         aarch64_fbsd_nat_target.
11760         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
11761         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
11762         (the_alpha_bsd_nat_target): New.
11763         (alphabsd_fetch_inferior_registers)
11764         (alphabsd_store_inferior_registers): Refactor as
11765         alpha_bsd_nat_target methods.
11766         (_initialize_alphabsd_nat): Refactor as methods of
11767         alpha_bsd_nat_target.
11768         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
11769         (the_amd64_nbsd_nat_target): New.
11770         (_initialize_amd64nbsd_nat): Adjust to C++ification.
11771         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
11772         (the_amd64_obsd_nat_target): New.
11773         (_initialize_amd64obsd_nat): Adjust to C++ification.
11774         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
11775         (the_arm_fbsd_nat_target): New.
11776         (arm_fbsd_fetch_inferior_registers)
11777         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
11778         (_initialize_arm_fbsd_nat): Refactor as methods of
11779         arm_fbsd_nat_target.
11780         (_initialize_arm_fbsd_nat): Adjust to C++ification.
11781         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
11782         (the_arm_netbsd_nat_target): New.
11783         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
11784         arm_netbsd_nat_target.
11785         (_initialize_arm_netbsd_nat): Adjust to C++ification.
11786         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
11787         (the_hppa_nbsd_nat_target): New.
11788         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
11789         hppa_nbsd_nat_target methods.
11790         (_initialize_hppanbsd_nat): Adjust to C++ification.
11791         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
11792         (the_hppa_obsd_nat_target): New.
11793         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
11794         methods of hppa_obsd_nat_target.
11795         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
11796         add_target.
11797         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
11798         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
11799         add_target.
11800         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
11801         (_initialize_i386obsd_nat): Use add_target.
11802         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
11803         (the_m68k_bsd_nat_target): New.
11804         (m68kbsd_fetch_inferior_registers)
11805         (m68kbsd_store_inferior_registers): Refactor as methods of
11806         m68k_bsd_nat_target.
11807         (_initialize_m68kbsd_nat): Adjust to C++ification.
11808         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
11809         (the_mips_fbsd_nat_target): New.
11810         (mips_fbsd_fetch_inferior_registers)
11811         (mips_fbsd_store_inferior_registers): Refactor as methods of
11812         mips_fbsd_nat_target.
11813         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
11814         add_target.
11815         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
11816         (the_mips_nbsd_nat_target): New.
11817         (mipsnbsd_fetch_inferior_registers)
11818         (mipsnbsd_store_inferior_registers): Refactor as methods of
11819         mips_nbsd_nat_target.
11820         (_initialize_mipsnbsd_nat): Adjust to C++ification.
11821         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
11822         (the_mips64_obsd_nat_target): New.
11823         (mips64obsd_fetch_inferior_registers)
11824         (mips64obsd_store_inferior_registers): Refactor as methods of
11825         mips64_obsd_nat_target.
11826         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
11827         add_target.
11828         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
11829         nbsd_nat_target.
11830         * nbsd-nat.h: Include "inf-ptrace.h".
11831         (nbsd_nat_target): New class.
11832         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
11833         (obsd_wait): Refactor as methods of obsd_nat_target.
11834         (obsd_add_target): Delete.
11835         * obsd-nat.h: Include "inf-ptrace.h".
11836         (obsd_nat_target): New class.
11837         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
11838         (the_ppc_fbsd_nat_target): New.
11839         (ppcfbsd_fetch_inferior_registers)
11840         (ppcfbsd_store_inferior_registers): Refactor as methods of
11841         ppc_fbsd_nat_target.
11842         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
11843         add_target.
11844         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
11845         (the_ppc_nbsd_nat_target): New.
11846         (ppcnbsd_fetch_inferior_registers)
11847         (ppcnbsd_store_inferior_registers): Refactor as methods of
11848         ppc_nbsd_nat_target.
11849         (_initialize_ppcnbsd_nat): Adjust to C++ification.
11850         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
11851         (the_ppc_obsd_nat_target): New.
11852         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
11853         methods of ppc_obsd_nat_target.
11854         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
11855         add_target.
11856         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
11857         (the_sh_nbsd_nat_target): New.
11858         (shnbsd_fetch_inferior_registers)
11859         (shnbsd_store_inferior_registers): Refactor as methods of
11860         sh_nbsd_nat_target.
11861         (_initialize_shnbsd_nat): Adjust to C++ification.
11862         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
11863         (inf_ptrace_xfer_partial): Delete.
11864         (sparc_xfer_partial, sparc_target): Delete.
11865         * sparc-nat.h (sparc_fetch_inferior_registers)
11866         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
11867         (sparc_target): Delete function declaration.
11868         (sparc_target): New template class.
11869         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
11870         (_initialize_sparcnbsd_nat): Adjust to C++ification.
11871         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
11872         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
11873         add_target.
11874         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
11875         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
11876         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
11877         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
11878         add_target.
11879         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
11880         (the_vax_bsd_nat_target): New.
11881         (vaxbsd_fetch_inferior_registers)
11882         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
11883         methods.
11884         (_initialize_vaxbsd_nat): Adjust to C++ification.
11885
11886         * bsd-kvm.c (bsd_kvm_target): New class.
11887         (bsd_kvm_ops): Now a bsd_kvm_target.
11888         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
11889         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
11890         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
11891         bsd_kvm_target.
11892         (bsd_kvm_return_one): Delete.
11893         (bsd_kvm_add_target): Adjust to C++ification.
11894
11895         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
11896         (nto_procfs_target_procfs): New classes.
11897         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
11898         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
11899         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
11900         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
11901         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
11902         (procfs_remove_hw_breakpoint, procfs_resume)
11903         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
11904         (procfs_kill_inferior, procfs_store_registers)
11905         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
11906         as methods of nto_procfs_target.
11907         (nto_procfs_ops): Now an nto_procfs_target_procfs.
11908         (nto_native_ops): Delete.
11909         (procfs_open, procfs_native_open): Delete.
11910         (nto_native_ops): Now an nto_procfs_target_native.
11911         (init_procfs_targets): Adjust to C++ification.
11912         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
11913         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
11914         Refactor as methods of nto_procfs_target.
11915
11916         * go32-nat.c (go32_nat_target): New class.
11917         (the_go32_nat_target): New.
11918         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
11919         (go32_store_registers, go32_xfer_partial, go32_files_info)
11920         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
11921         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
11922         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
11923         (go32_pid_to_str): Refactor as methods of go32_nat_target.
11924         (go32_target): Delete.
11925         (_initialize_go32_nat): Adjust to C++ification.
11926
11927         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
11928         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
11929         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
11930         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
11931         gnu_nat_target.
11932         (gnu_target): Delete.
11933         * gnu-nat.h (gnu_target): Delete.
11934         (gnu_nat_target): New class.
11935         * i386-gnu-nat.c (gnu_base_target): New.
11936         (i386_gnu_nat_target): New class.
11937         (the_i386_gnu_nat_target): New.
11938         (_initialize_i386gnu_nat): Adjust to C++ification.
11939
11940 2018-05-02  Pedro Alves  <palves@redhat.com>
11941
11942         * bfd-target.c (target_bfd_xclose): Rename to ...
11943         (target_bfd_close): ... this.
11944         (target_bfd_reopen): Adjust.
11945         * target.c (target_close): Remove references to to_xclose.
11946         * target.h (target_ops::to_xclose): Delete.
11947         (target_ops::to_close): Update comments.
11948
11949 2018-05-02  Pedro Alves  <palves@redhat.com>
11950
11951         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
11952         "linux-nat.h".
11953         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
11954         * inf-ptrace.c (inf_ptrace_register_u_offset)
11955         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11956         (inf_ptrace_store_register, inf_ptrace_store_registers)
11957         (inf_ptrace_trad_target): Move to ...
11958         * linux-nat-trad.c: ... this new file.
11959         * linux-nat-trad.h: New file.
11960         * linux-nat.c (linux_target_install_ops): Make extern.
11961         (linux_trad_target): Delete.
11962         * linux-nat.h (linux_trad_target): Delete declaration.
11963         (linux_target_install_ops): Declare.
11964         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
11965         "linux-nat.h".
11966
11967 2018-05-02  Pedro Alves  <palves@redhat.com>
11968
11969         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11970         procfs_target/add_target here.
11971         * procfs.c (procfs_target): Make static.
11972         (_initialize_procfs): Call add_target here.
11973         * procfs.h (struct target_ops): Remove forward declaration.
11974         (procfs_target): Remove declaration.
11975         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
11976
11977 2018-05-02  Pedro Alves  <palves@redhat.com>
11978
11979         * procfs.c (procfs_stopped_by_watchpoint)
11980         (procfs_insert_watchpoint, procfs_remove_watchpoint)
11981         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
11982         Forward declare.
11983         (procfs_use_watchpoints): Delete, move contents...
11984         (procfs_target): ... here.
11985         * procfs.h (procfs_use_watchpoints): Delete declaration.
11986         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11987         procfs_use_watchpoints.
11988         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
11989         procfs_use_watchpoints.
11990
11991 2018-05-02  Tom Tromey  <tom@tromey.com>
11992
11993         PR python/20084:
11994         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
11995         and var_zuinteger_unlimited.
11996         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
11997         and PARAM_ZUINTEGER_UNLIMITED.
11998         (set_parameter_value): Handle var_zuinteger and
11999         var_zuinteger_unlimited.
12000         (add_setshow_generic): Likewise.
12001         (parmpy_init): Likewise.
12002
12003 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
12004
12005         PR rust/23124
12006         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
12007         pointer is not null before dereferencing it.
12008
12009 2018-04-30  Tom Tromey  <tom@tromey.com>
12010
12011         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
12012         is_mi_like_p.
12013
12014 2018-04-30  Tom Tromey  <tom@tromey.com>
12015
12016         * breakpoint.c (mention): Remove use of is_mi_like_p.
12017         (print_mention_ranged_breakpoint): Likewise.
12018         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
12019         of is_mi_like_p.
12020
12021 2018-04-30  Tom Tromey  <tom@tromey.com>
12022
12023         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
12024
12025 2018-04-30  Tom Tromey  <tom@tromey.com>
12026
12027         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
12028         (info_spu_event_command): Remove some uses of is_mi_like_p.
12029
12030 2018-04-30  Tom Tromey  <tom@tromey.com>
12031
12032         * python/py-framefilter.c (py_print_single_arg)
12033         (enumerate_locals, py_print_args, py_print_frame): Remove some
12034         uses of is_mi_like_p.
12035
12036 2018-04-30  Tom Tromey  <tom@tromey.com>
12037
12038         * ui-out.c: Update.
12039         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
12040         * ui-out.h (ui_out::is_mi_like_p): Now const.
12041         (ui_out::do_is_mi_like_p): Now const.
12042         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
12043
12044 2018-04-30  Tom Tromey  <tom@tromey.com>
12045
12046         * varobj.c (varobj_set_visualizer): Use new_reference.
12047         * python/python.c (gdbpy_decode_line): Use new_reference.
12048         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
12049         new_reference.
12050
12051 2018-04-30  Tom Tromey  <tom@tromey.com>
12052
12053         * varobj.c (install_new_value): Use new_reference.
12054         * value.h (value_incref): Return void.  Swap intro comment with
12055         value_decref.
12056         * value.c (set_value_parent): Use new_reference.
12057         (value_incref): Return void.  Update intro comment.
12058         (release_value): Use new_reference.
12059         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
12060
12061 2018-04-30  Tom Tromey  <tom@tromey.com>
12062
12063         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
12064         * gdb_bfd.h (new_bfd_ref): Remove.
12065         (gdb_bfd_open): Update comment.
12066         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
12067         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
12068         (gdb_bfd_fdopenr): Use new_reference.
12069         * exec.c (exec_file_attach): Use new_reference.
12070
12071 2018-04-30  Tom Tromey  <tom@tromey.com>
12072
12073         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
12074         method.
12075
12076 2018-04-30  Tom Tromey  <tom@tromey.com>
12077
12078         * jit.c (jit_read_code_entry): Use type_align.
12079         * i386-tdep.c (i386_gdbarch_init): Don't call
12080         set_gdbarch_long_long_align_bit.
12081         * gdbarch.sh: Remove long_long_align_bit.
12082         * gdbarch.c, gdbarch.h: Rebuild.
12083         * arc-tdep.c (arc_type_align): New function.
12084         (arc_gdbarch_init): Use arc_type_align.  Don't call
12085         set_gdbarch_long_long_align_bit.
12086
12087 2018-04-30  Tom Tromey  <tom@tromey.com>
12088
12089         * rust-lang.c (rust_type_alignment): Remove.
12090         (rust_composite_type): Use type_align.
12091
12092 2018-04-30  Tom Tromey  <tom@tromey.com>
12093
12094         * NEWS: Mention Type.align.
12095         * python/py-type.c (typy_get_alignof): New function.
12096         (type_object_getset): Add "alignof".
12097
12098 2018-04-30  Tom Tromey  <tom@tromey.com>
12099
12100         PR exp/17095:
12101         * NEWS: Update.
12102         * std-operator.def (UNOP_ALIGNOF): New operator.
12103         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
12104         New.
12105         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
12106         * c-lang.c (c_op_print_tab): Add alignof.
12107         * c-exp.y (ALIGNOF): New token.
12108         (exp): Add "ALIGNOF" production.
12109         (ident_tokens): Add _Alignof and alignof.
12110
12111 2018-04-30  Tom Tromey  <tom@tromey.com>
12112
12113         * i386-tdep.c (i386_type_align): New function.
12114         (i386_gdbarch_init): Update.
12115         * gdbarch.sh (type_align): New method.
12116         * gdbarch.c, gdbarch.h: Rebuild.
12117         * arch-utils.h (default_type_align): Declare.
12118         * arch-utils.c (default_type_align): New function.
12119         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
12120         (struct type) <align_log2>: New field.
12121         <instance_flags>: Now a bitfield.
12122         (TYPE_RAW_ALIGN): New macro.
12123         (type_align, type_raw_align, set_type_align): Declare.
12124         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
12125         functions.
12126         * dwarf2read.c (quirk_rust_enum): Set type alignment.
12127         (get_alignment, maybe_set_alignment): New functions.
12128         (read_structure_type, read_enumeration_type, read_array_type)
12129         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
12130         (read_subrange_type, read_base_type): Set type alignment.
12131
12132 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
12133
12134         * dwarf2read.c (read_index_from_section): Use bool.
12135
12136 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
12137
12138         PR gdb/22950
12139         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
12140         with #ifdef.
12141
12142 2018-04-29  John Reiser  <jreiser@BitWagon.com>
12143
12144         PR build/22873
12145         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
12146         last step, and do it atomically.
12147
12148 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
12149
12150         * compile/compile-c-types.c (convert_int, convert_float):
12151         Update for C FE v1.
12152
12153 2018-04-27  Tom Tromey  <tom@tromey.com>
12154
12155         PR rust/22545:
12156         * rust-lang.c (rust_inclusive_range_type_p): New function.
12157         (rust_range): Handle inclusive ranges.
12158         (rust_compute_range): Likewise.
12159         * rust-exp.y (struct rust_op) <inclusive>: New field.
12160         (DOTDOTEQ): New constant.
12161         (range_expr): Add "..=" productions.
12162         (operator_tokens): Add "..=" token.
12163         (ast_range): Add "inclusive" parameter.
12164         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
12165         ranges.
12166         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
12167         bounds values.
12168         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
12169         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
12170         Update comments.
12171         * expprint.c (print_subexp_standard): Handle new bounds values.
12172         (dump_subexp_body_standard): Likewise.
12173
12174 2018-04-27  Tom Tromey  <tom@tromey.com>
12175
12176         * configure: Rebuild.
12177         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
12178         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
12179         "OVERRIDE".
12180         (class symbol_needs_eval_context): Likewise.
12181         * dwarf2read.c (mock_mapped_index::symbol_name_count)
12182         (mock_mapped_index::symbol_name_at): Use "override".  Remove
12183         "virtual".
12184         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
12185         "override".
12186         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
12187         * aarch64-tdep.c (instruction_reader::read): Use "override".
12188         (instruction_reader_test::read): Likewise.
12189         * arm-tdep.c (instruction_reader::read): Use "override".
12190         (instruction_reader_thumb::read): Likewise.
12191
12192 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
12193
12194         PR remote/9665
12195         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
12196         instead of remote_send.
12197         (remote_send): Remove.
12198
12199 2018-04-26  Pedro Alves  <palves@redhat.com>
12200
12201         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
12202         find_function_start_sal instead of find_pc_line.
12203
12204 2018-04-26  Pedro Alves  <palves@redhat.com>
12205
12206         * breakpoint.c (set_breakpoint_location_function): Handle
12207         mst_data_gnu_ifunc.
12208         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
12209         * elfread.c (elf_symtab_read): Give data symbols with
12210         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
12211         (elf_rel_plt_read): Update comment.
12212         * linespec.c (convert_linespec_to_sals): Handle
12213         mst_data_gnu_ifunc.
12214         (minsym_found): Handle mst_data_gnu_ifunc.
12215         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
12216         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
12217         * parse.c (find_minsym_type_and_address): Handle
12218         mst_data_gnu_ifunc.
12219         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
12220         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
12221         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
12222         comment.
12223         <mst_data_gnu_ifunc>: New enumerator.
12224
12225 2018-04-26  Pedro Alves  <palves@redhat.com>
12226
12227         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
12228         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
12229         'want_trampoline' parameter by a lookup_msym_prefer parameter.
12230         Handle it.
12231         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
12232         (lookup_minimal_symbol_by_pc): Adjust.
12233         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
12234         (lookup_solib_trampoline_symbol_by_pc): Adjust.
12235         * minsyms.h (lookup_msym_prefer): New enum.
12236         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
12237         parameter by a lookup_msym_prefer parameter.
12238
12239 2018-04-26  Pedro Alves  <palves@redhat.com>
12240
12241         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
12242         ends in "@plt" instead of looking at the symbol's section.
12243
12244 2018-04-26  Pedro Alves  <palves@redhat.com>
12245
12246         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
12247         all references.
12248         (find_pc_partial_function_gnu_ifunc): Rename to ...
12249         (find_pc_partial_function): ... this, and remove references to
12250         'is_gnu_ifunc_p'.
12251         (find_pc_partial_function): Delete old implementation.
12252         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
12253
12254 2018-04-26  Pedro Alves  <palves@redhat.com>
12255
12256         * linespec.c (struct bound_minimal_symbol_search_key): New.
12257         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
12258         skip first line if we found a GNU ifunc minimal symbol by name.
12259         (compare_msymbols): Change parameters to work with a destructured
12260         lhs minsym.
12261         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
12262         functions.
12263
12264 2018-04-26  Pedro Alves  <palves@redhat.com>
12265
12266         * breakpoint.c (set_breakpoint_location_function): Don't resolve
12267         ifunc targets here.  Instead, if we have an ifunc minsym, use its
12268         address/name.
12269         (add_location_to_breakpoint): Store the minsym and the objfile in
12270         the breakpoint location.
12271         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
12272         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
12273         Record the minsym in the sal.
12274         * symtab.h (symtab_and_line) <msymbol>: New field.
12275
12276 2018-04-26  Pedro Alves  <palves@redhat.com>
12277
12278         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
12279         unless we actually resolved the ifunc.
12280
12281 2018-04-26  Pedro Alves  <palves@redhat.com>
12282
12283         * c-exp.y (variable production): Prefer ifunc minsyms over
12284         regular function symbols.
12285         * symtab.c (find_gnu_ifunc): New function.
12286         * minsyms.h (lookup_msym_prefer): New enum.
12287         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
12288         parameter by a lookup_msym_prefer parameter.
12289         * symtab.h (find_gnu_ifunc): New declaration.
12290
12291 2018-04-26  Pedro Alves  <palves@redhat.com>
12292
12293         * blockframe.c (find_gnu_ifunc_target_type): New function.
12294         (find_function_type): New.
12295         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
12296         return a value with a memory address.
12297         (eval_call): For calls to GNU ifunc functions, try to find the
12298         type of the target function from the type that the resolver
12299         returns.
12300         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
12301         symbols.
12302         * infcall.c (find_function_return_type): Delete.
12303         (find_function_addr): Add 'function_type' parameter.  For calls to
12304         GNU ifunc functions, try to find the type of the target function
12305         from the type that the resolver returns, and return it via
12306         FUNCTION_TYPE.
12307         (call_function_by_hand_dummy): Adjust to use the function type
12308         returned by find_function_addr.
12309         (find_function_addr): Add 'function_type' parameter and move
12310         description here.
12311         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
12312         declarations.
12313
12314 2018-04-26  Pedro Alves  <palves@redhat.com>
12315
12316         * c-exp.y (variable production): Skip finding an alias for ifunc
12317         symbols.
12318
12319 2018-04-26  Pedro Alves  <palves@redhat.com>
12320
12321         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
12322
12323 2018-04-25  Pedro Alves  <palves@redhat.com>
12324
12325         * infcmd.c (kill_command): Print the pid as string, not the whole
12326         thread's ptid.  Add comment.  s/has been killed/killed/ in output
12327         message.
12328         * remote.c (remote_detach_1): Print the pid as string, not the
12329         whole thread's ptid.
12330
12331 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
12332             Sergio Durigan Junior  <sergiodj@redhat.com>
12333             Pedro Alves  <palves@redhat.com>
12334
12335         * infcmd.c (kill_command): Print message when inferior has
12336         been killed.
12337         * inferior.c (print_inferior_events): Remove 'static'.  Set as
12338         '1'.
12339         (add_inferior): Improve message printed when
12340         'print_inferior_events' is on.
12341         (exit_inferior): Remove message printed when
12342         'print_inferior_events' is on.
12343         (detach_inferior): Improve message printed when
12344         'print_inferior_events' is on.
12345         (initialize_inferiors): Use 'add_inferior_silent' to set
12346         'current_inferior_'.
12347         * inferior.h (print_inferior_events): Declare here as
12348         'extern'.
12349         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
12350         '[Detaching...]' messages when 'print_inferior_events' is on.
12351         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
12352         as prefix/suffix for messages.  Remove periods.  Fix erroneous
12353         'Detaching after fork from child...', replace it by '... from
12354         parent...'.
12355         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
12356         prefix/suffix when printing 'Detaching...' messages.  Print
12357         them when 'print_inferior_events' is on.
12358         * remote.c (remote_detach_1): Print message when detaching
12359         from inferior and '!is_fork_parent'.
12360
12361 2018-04-24  Tom Tromey  <tom@tromey.com>
12362
12363         * cli-out.h: Reindent.
12364
12365 2018-04-24  Tom Tromey  <tom@tromey.com>
12366
12367         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
12368         (cli_ui_out::do_field_string): Use fputs_filtered.
12369         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
12370
12371 2018-04-23  Tom Tromey  <tom@tromey.com>
12372
12373         * guile/scm-frame.c (gdbscm_frame_read_var): Use
12374         gdb::unique_xmalloc_ptr.
12375
12376 2018-04-23  Tom Tromey  <tom@tromey.com>
12377
12378         * configure: Rebuild.
12379
12380 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
12381
12382         PR gdb/23095
12383         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
12384         prepare_for_testing.  Set normal_bp to r_debug_state if target
12385         is bsd.
12386
12387 2018-04-21  Pedro Alves  <palves@redhat.com>
12388             Rajendra SY  <rajendra.sy@gmail.com>
12389
12390         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
12391         * remote.c (extended_remote_attach): In all-stop mode, mark the
12392         thread as executing.
12393
12394 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
12395
12396         * thread.c (thread_apply_all_command): Fix comment.
12397         (thread_command): Fix comment.
12398
12399 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
12400
12401         * common/tdesc.h (tdesc_create_feature): Remove xml filename
12402         parameter.
12403         * features/aarch64-core.c (create_feature_aarch64_core):
12404         Regenerate.
12405         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
12406         Likewise.
12407         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
12408         Likewise.
12409         * features/i386/32bit-avx512.c
12410         (create_feature_i386_32bit_avx512): Likewise.
12411         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
12412         Likewise.
12413         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
12414         Likewise.
12415         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
12416         Likewise.
12417         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
12418         Likewise.
12419         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
12420         Likewise.
12421         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
12422         Likewise.
12423         * features/i386/64bit-avx512.c
12424         (create_feature_i386_64bit_avx512): Likewise.
12425         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
12426         Likewise.
12427         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
12428         Likewise.
12429         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
12430         Likewise.
12431         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
12432         Likewise.
12433         * features/i386/64bit-segments.c
12434         (create_feature_i386_64bit_segments): Likewise.
12435         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
12436         Likewise.
12437         * features/i386/x32-core.c
12438         (create_feature_i386_x32_core): Likewise.
12439         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
12440         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
12441         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
12442         * target-descriptions.c: In generated code, don't pass xml
12443         filename.
12444
12445 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12446
12447         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
12448         (print_xml_feature::visit_post): Likewise.
12449         (print_xml_feature::visit): Likewise.
12450         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
12451         (print_xml_feature): Add new class.
12452         * regformats/regdat.sh: Null xmltarget on feature targets.
12453         * target-descriptions.c (struct target_desc): Add xmltarget.
12454         (maintenance_check_tdesc_xml_convert): Add unittest function.
12455         (tdesc_get_features_xml): Add function to get xml.
12456         (maintenance_check_xml_descriptions): Test xml generation.
12457         * xml-tdesc.c (string_read_description_xml): Add function.
12458         * xml-tdesc.h (string_read_description_xml): Add declaration.
12459
12460 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12461
12462         * features/Makefile: Add feature marker to targets with new style
12463         target descriptions.
12464         * regformats/aarch64.dat: Regenerate.
12465         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
12466         * regformats/i386/amd64-avx-linux.dat: Likewise.
12467         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
12468         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
12469         * regformats/i386/amd64-linux.dat: Likewise.
12470         * regformats/i386/amd64-mpx-linux.dat: Likewise.
12471         * regformats/i386/amd64.dat: Likewise.
12472         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
12473         * regformats/i386/i386-avx-linux.dat: Likewise.
12474         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
12475         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
12476         * regformats/i386/i386-linux.dat: Likewise.
12477         * regformats/i386/i386-mmx-linux.dat: Likewise.
12478         * regformats/i386/i386-mpx-linux.dat: Likewise.
12479         * regformats/i386/i386.dat: Likewise.
12480         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
12481         * regformats/i386/x32-avx-linux.dat: Likewise.
12482         * regformats/i386/x32-linux.dat: Likewise.
12483         * regformats/tic6x-c62x-linux.dat: Likewise.
12484         * regformats/tic6x-c64x-linux.dat: Likewise.
12485         * regformats/tic6x-c64xp-linux.dat: Likewise.
12486         * regformats/regdat.sh: Parse feature marker.
12487
12488 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12489
12490         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
12491         (tdesc_osabi_name): Likewise.
12492         * target-descriptions.c (tdesc_architecture_name): Add new
12493         function.
12494         (tdesc_osabi_name): Likewise.
12495
12496 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12497
12498         * common/tdesc.c (tdesc_predefined_type): Move to here.
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         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
12512         (struct tdesc_type_vector): Likewise.
12513         (struct tdesc_type_field): Likewise.
12514         (struct tdesc_type_with_fields): Likewise.
12515         (tdesc_create_enum): Add declaration.
12516         (tdesc_add_typed_bitfield): Likewise.
12517         (tdesc_add_enum_value): Likewise.
12518         * target-descriptions.c (tdesc_type_field): Move from here.
12519         (tdesc_type_builtin): Likewise.
12520         (tdesc_type_vector): Likewise.
12521         (tdesc_type_with_fields): Likewise.
12522         (tdesc_predefined_types): Likewise.
12523         (tdesc_named_type): Likewise.
12524         (tdesc_create_vector): Likewise.
12525         (tdesc_create_struct): Likewise.
12526         (tdesc_set_struct_size): Likewise.
12527         (tdesc_create_union): Likewise.
12528         (tdesc_create_flags): Likewise.
12529         (tdesc_create_enum): Likewise.
12530         (tdesc_add_field): Likewise.
12531         (tdesc_add_typed_bitfield): Likewise.
12532         (tdesc_add_bitfield): Likewise.
12533         (tdesc_add_flag): Likewise.
12534         (tdesc_add_enum_value): Likewise.
12535         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
12536         (tdesc_add_typed_bitfield): Likewise.
12537         (tdesc_add_enum_value): Likewise.
12538
12539 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12540
12541         * common/tdesc.c (tdesc_feature::accept): Move to here.
12542         (tdesc_feature::operator==): Likewise.
12543         (tdesc_create_reg): Likewise.
12544         * common/tdesc.h (tdesc_type_kind): Likewise.
12545         (struct tdesc_type): Likewise.
12546         (struct tdesc_feature): Likewise.
12547         * regformats/regdat.sh: Create a feature.
12548         * target-descriptions.c (tdesc_type_kind): Move from here.
12549         (tdesc_type): Likewise.
12550         (tdesc_type_up): Likewise.
12551         (tdesc_feature): Likewise.
12552         (tdesc_create_reg): Likewise.
12553
12554 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12555
12556         * Makefile.in: Add arch/tdesc.c
12557         * common/tdesc.c: New file.
12558         * common/tdesc.h (tdesc_element_visitor): Move to here.
12559         (tdesc_element): Likewise.
12560         (tdesc_reg): Likewise.
12561         (tdesc_reg_up): Likewise.
12562         * regformats/regdef.h (reg): Add offset to constructors.
12563         * target-descriptions.c (tdesc_element_visitor): Move from here.
12564         (tdesc_element): Likewise.
12565         (tdesc_reg): Likewise.
12566         (tdesc_reg_up): Likewise.
12567
12568 2018-04-17  Tom Tromey  <tom@tromey.com>
12569
12570         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
12571         discriminant field.
12572
12573 2018-04-17  Tom Tromey  <tom@tromey.com>
12574
12575         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
12576
12577 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12578
12579         * symtab.c (print_symbol_info): Skip printing filename and line
12580         number when `last' is NULL.
12581         (symtab_symbol_info): Use empty string instead of NULL for first
12582         invocation of print_symbol_info.
12583         (rbreak_command): Pass NULL to `last' parameter of
12584         print_symbol_info.
12585
12586 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
12587
12588         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
12589         instead of nullptr.
12590
12591 2018-04-16  Pedro Alves  <palves@redhat.com>
12592
12593         * MAINTAINERS (sh): Remove.
12594         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
12595         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
12596         (ALLDEPFILES): Remove sh64-tdep.c.
12597         * NEWS: Mentions that support for SH-5/SH64 is removed.
12598         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
12599         (sh*-*-openbsd*): Ditto.
12600         (sh64-*-elf*): Remove.
12601         (sh*): Remove.
12602         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
12603         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
12604         * sh-tdep.c: No longer include "sh64-tdep.h".
12605         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
12606         * sh64-tdep.c, sh64-tdep.h: Remove files.
12607
12608 2018-04-16  Pedro Alves  <palves@redhat.com>
12609
12610         * MAINTAINERS: Remove m88k.
12611         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
12612         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
12613         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
12614         * NEWS: Mention that support for m88k was removed.
12615         * configure.host (m88*-*-*): Remove support.
12616         * configure.nat (m88k-*-*): Remove support.
12617         * configure.tgt (m88*-*-openbsd*): Remove.
12618         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
12619
12620 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
12621
12622         * configure.tgt (x86_tobjs): New variable.
12623         (amd64_tobjs, i386_tobjs): Use it.
12624
12625 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12626
12627         * symtab.c (print_symbol_info): Precede the symbol definition by
12628         the line number when available.
12629         * NEWS: Advertise this enhancement.
12630
12631 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12632
12633         * NEWS (New options): announce set/show record btrace cpu.
12634         * btrace.c: Include record-btrace.h.
12635         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
12636         the vendor is unknown.
12637         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
12638         Maybe overwrite the btrace configuration's cpu.
12639         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
12640         (btrace_fetch): Add cpu parameter.  Update callers.
12641         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
12642         Maybe overwrite the btrace configuration's cpu.  Skip enabling
12643         errata workarounds if the vendor is unknown.
12644         * python/py-record-btrace.c: Include record-btrace.h.
12645         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
12646         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
12647         * record-btrace.c (record_btrace_cpu_state_kind): New.
12648         (record_btrace_cpu): New.
12649         (set_record_btrace_cpu_cmdlist): New.
12650         (record_btrace_get_cpu): New.
12651         (require_btrace_thread, record_btrace_info)
12652         (record_btrace_resume_thread): Call record_btrace_get_cpu.
12653         (cmd_set_record_btrace_cpu_none): New.
12654         (cmd_set_record_btrace_cpu_auto): New.
12655         (cmd_set_record_btrace_cpu): New.
12656         (cmd_show_record_btrace_cpu): New.
12657         (_initialize_record_btrace): Initialize set/show record btrace cpu
12658         commands.
12659         * record-btrace.h (record_btrace_get_cpu): New.
12660
12661 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12662
12663         * record.c (set_record_command): Fix typo in message.
12664
12665 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12666
12667         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
12668
12669 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12670
12671         * infrun.c (process_event_stop_test): Call
12672         gdbarch_in_indirect_branch_thunk.
12673         * gdbarch.sh (in_indirect_branch_thunk): New.
12674         * gdbarch.c: Regenerated.
12675         * gdbarch.h: Regenerated.
12676         * x86-tdep.h: New.
12677         * x86-tdep.c: New.
12678         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
12679         (HFILES_NO_SRCDIR): Add x86-tdep.h.
12680         (ALLDEPFILES): Add x86-tdep.c.
12681         * arch-utils.h (default_in_indirect_branch_thunk): New.
12682         * arch-utils.c (default_in_indirect_branch_thunk): New.
12683         * i386-tdep: Include x86-tdep.h.
12684         (i386_in_indirect_branch_thunk): New.
12685         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
12686         function.
12687         * amd64-tdep: Include x86-tdep.h.
12688         (amd64_in_indirect_branch_thunk): New.
12689         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
12690
12691 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
12692
12693         PR gdb/23053
12694         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
12695         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
12696         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
12697         regression.
12698
12699 2018-04-12  Tom Tromey  <tom@tromey.com>
12700
12701         * rust-lang.c (rust_print_struct_def): Remove univariant code.
12702         (rust_evaluate_subexp): Likewise.
12703
12704 2018-04-12  Pedro Alves  <palves@redhat.com>
12705
12706         * procfs.c (procfs_detach): Make forward declaration's prototype
12707         match definition's protototype.
12708         (proc_get_LDT_entry): Remove stale do_cleanups call.
12709
12710 2018-04-12  Pedro Alves  <palves@redhat.com>
12711
12712         * target.h (target_ops::to_has_exited): Delete.
12713         (target_has_exited): Delete.
12714         * target-delegates.c: Regenerate.
12715
12716 2018-04-11  Pedro Alves  <palves@redhat.com>
12717
12718         * target.c (fileio_fh_t::t): Add comment.
12719         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12720         (target_fileio_close): Handle a NULL target.
12721         (invalidate_fileio_fh): New.
12722         (target_close): Call it.
12723         * remote.c (remote_hostio_send_command): No longer check whether
12724         remote_desc is open.
12725
12726 2018-04-11  Pedro Alves  <palves@redhat.com>
12727
12728         * target.c (fileio_fh_t): Make it a named struct instead of a
12729         typedef.
12730         (fileio_fh_t::is_closed): New method.
12731         (DEF_VEC_O (fileio_fh_t)): Remove.
12732         (fileio_fhandles): Now a std::vector.
12733         (is_closed_fileio_fh): Delete.
12734         (acquire_fileio_fd): Adjust.  Rename parameters.
12735         (release_fileio_fd): Adjust.
12736         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
12737         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12738         (target_fileio_close): Adjust.
12739
12740 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
12741
12742         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
12743         index.
12744
12745 2018-04-10  Pedro Alves  <palves@redhat.com>
12746
12747         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
12748         (scoped_finish_thread_state): New class.
12749         * infcmd.c (run_command_1): Use it instead of finish_thread_state
12750         cleanup.
12751         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
12752         (fetch_inferior_event, normal_stop): Likewise.
12753         * thread.c (finish_thread_state_cleanup): Delete.
12754
12755 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12756             Pedro Alves  <palves@redhat.com>
12757
12758         * value.c: Include "selftest.h" and "common/array-view.h".
12759         (struct range) <operator ==>: New.
12760         (test_ranges_contain): New.
12761         (check_ranges_vector): New.
12762         (test_insert_into_bit_range_vector): New.
12763         (_initialize_values): Register selftests.
12764         * common/array-view.h (operator==, operator!=): New.
12765
12766 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12767
12768         * common/gdb_vecs.h (unordered_remove): Add overload that takes
12769         an iterator.
12770         * inline-frame.c: Include <algorithm>.
12771         (struct inline_state): Add constructor.
12772         (inline_state_s): Remove.
12773         (DEF_VEC_O(inline_state_s)): Remove.
12774         (inline_states): Change type to std::vector.
12775         (find_inline_frame_state): Adjust to std::vector.
12776         (allocate_inline_frame_state): Remove.
12777         (clear_inline_frame_state): Adjust to std::vector.
12778         (skip_inline_frames): Adjust to std::vector.
12779
12780 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12781
12782         * tracepoint.h (struct trace_state_variable): Add constructor.
12783         <name>: Change type to std::string.
12784         * tracepoint.c (tsv_s): Remove.
12785         (DEF_VEC_O(tsv_s)): Remove.
12786         (tvariables): Change to std::vector.
12787         (create_trace_state_variable): Adjust to std::vector.
12788         (find_trace_state_variable): Likewise.
12789         (find_trace_state_variable_by_number): Likewise.
12790         (delete_trace_state_variable): Likewise.
12791         (trace_variable_command): Adjust to std::string.
12792         (delete_trace_variable_command): Likewise.
12793         (tvariables_info_1): Adjust to std::vector.
12794         (save_trace_state_variables): Likewise.
12795         (start_tracing): Likewise.
12796         (merge_uploaded_trace_state_variables): Adjust to std::vector
12797         and std::string.
12798         * target.h (struct target_ops)
12799         <to_download_trace_state_variable>: Pass reference to
12800         trace_state_variable.
12801         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
12802         * target-delegates.c: Re-generate.
12803         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
12804         (mi_tsv_deleted): Likewise.
12805         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
12806         * remote.c (remote_download_trace_state_variable): Change
12807         pointer to reference and adjust.
12808         * make-target-delegates (parse_argtypes): Handle references.
12809         (write_function_header): Likewise.
12810         (munge_type): Likewise.
12811
12812 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12813
12814         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12815         string_view-selftests.c.
12816         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
12817         testsuite.
12818         * unittests/basic_string_view/cons/char/1.cc: Likewise.
12819         * unittests/basic_string_view/cons/char/2.cc: Likewise.
12820         * unittests/basic_string_view/cons/char/3.cc: Likewise.
12821         * unittests/basic_string_view/element_access/char/1.cc:
12822         Likewise.
12823         * unittests/basic_string_view/element_access/char/empty.cc:
12824         Likewise.
12825         * unittests/basic_string_view/element_access/char/front_back.cc:
12826         Likewise.
12827         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
12828         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
12829         Likewise.
12830         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
12831         Likewise.
12832         * unittests/basic_string_view/modifiers/swap/char/1.cc:
12833         Likewise.
12834         * unittests/basic_string_view/operations/compare/char/1.cc:
12835         Likewise.
12836         * unittests/basic_string_view/operations/compare/char/13650.cc:
12837         Likewise.
12838         * unittests/basic_string_view/operations/copy/char/1.cc:
12839         Likewise.
12840         * unittests/basic_string_view/operations/data/char/1.cc:
12841         Likewise.
12842         * unittests/basic_string_view/operations/find/char/1.cc:
12843         Likewise.
12844         * unittests/basic_string_view/operations/find/char/2.cc:
12845         Likewise.
12846         * unittests/basic_string_view/operations/find/char/3.cc:
12847         Likewise.
12848         * unittests/basic_string_view/operations/find/char/4.cc:
12849         Likewise.
12850         * unittests/basic_string_view/operations/rfind/char/1.cc:
12851         Likewise.
12852         * unittests/basic_string_view/operations/rfind/char/2.cc:
12853         Likewise.
12854         * unittests/basic_string_view/operations/rfind/char/3.cc:
12855         Likewise.
12856         * unittests/basic_string_view/operations/substr/char/1.cc:
12857         Likewise.
12858         * unittests/basic_string_view/operators/char/2.cc: Likewise.
12859         * unittests/string_view-selftests.c: New file.
12860
12861 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12862
12863         * unittests/basic_string_view/capacity/1.cc: New file.
12864         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
12865         * unittests/basic_string_view/cons/char/1.cc: New file.
12866         * unittests/basic_string_view/cons/char/2.cc: New file.
12867         * unittests/basic_string_view/cons/char/3.cc: New file.
12868         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
12869         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
12870         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
12871         * unittests/basic_string_view/element_access/char/1.cc: New file.
12872         * unittests/basic_string_view/element_access/char/2.cc: New file.
12873         * unittests/basic_string_view/element_access/char/empty.cc: New file.
12874         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
12875         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
12876         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
12877         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
12878         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
12879         * unittests/basic_string_view/include.cc: New file.
12880         * unittests/basic_string_view/inserters/char/1.cc: New file.
12881         * unittests/basic_string_view/inserters/char/2.cc: New file.
12882         * unittests/basic_string_view/inserters/char/3.cc: New file.
12883         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
12884         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
12885         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
12886         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
12887         * unittests/basic_string_view/literals/types.cc: New file.
12888         * unittests/basic_string_view/literals/values.cc: New file.
12889         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
12890         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
12891         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
12892         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
12893         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
12894         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
12895         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
12896         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
12897         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
12898         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
12899         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
12900         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
12901         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
12902         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
12903         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
12904         * unittests/basic_string_view/operations/data/char/1.cc: New file.
12905         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
12906         * unittests/basic_string_view/operations/find/char/1.cc: New file.
12907         * unittests/basic_string_view/operations/find/char/2.cc: New file.
12908         * unittests/basic_string_view/operations/find/char/3.cc: New file.
12909         * unittests/basic_string_view/operations/find/char/4.cc: New file.
12910         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
12911         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
12912         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
12913         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
12914         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
12915         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
12916         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
12917         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
12918         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
12919         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
12920         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
12921         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
12922         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
12923         * unittests/basic_string_view/operators/char/2.cc: New file.
12924         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
12925         * unittests/basic_string_view/range_access/char/1.cc: New file.
12926         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
12927         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
12928         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
12929         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
12930         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
12931         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
12932         * unittests/basic_string_view/requirements/typedefs.cc: New file.
12933         * unittests/basic_string_view/typedefs.cc: New file.
12934         * unittests/basic_string_view/types/1.cc: New file.
12935
12936 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12937
12938         * common/gdb_string_view.h: Remove libstdc++ implementation
12939         details, adjust to gdb reality.
12940         * common/gdb_string_view.tcc: Likewise.
12941         * cli/cli-script.c (struct string_view): Remove.
12942         (user_args) <m_args>: Change element type to gdb::string_view.
12943         (user_args::insert_args): Adjust.
12944
12945 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12946
12947         * common/gdb_string_view.h: New file.
12948         * common/gdb_string_view.tcc: New file.
12949
12950 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12951
12952         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
12953         * configure: Re-generate.
12954
12955 2018-04-09  Pedro Alves  <palves@redhat.com>
12956
12957         * gdbarch.sh: Include "observable.h" instead of "observer.h".
12958         (set_target_gdbarch): Call
12959         gdb::observers::architecture_changed.notify instead of
12960         observer_notify_architecture_changed.
12961
12962 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12963
12964         * tracepoint.c (struct current_traceframe_cleanup): Remove.
12965         (do_restore_current_traceframe_cleanup): Remove.
12966         (restore_current_traceframe_cleanup_dtor): Remove.
12967         (make_cleanup_restore_current_traceframe): Remove.
12968         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
12969         New.
12970         * tracepoint.h (struct scoped_restore_current_traceframe): New.
12971         * infrun.c (fetch_inferior_event): Use
12972         scoped_restore_current_traceframe.
12973
12974 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12975
12976         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
12977         Remove.
12978         <n_allocated_type_units>: Remove.
12979         <all_type_units>: Change to std::vector.
12980         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12981         to std::vector change.
12982         (dwarf2_per_objfile::get_cutu): Likewise.
12983         (dwarf2_per_objfile::get_tu): Likewise.
12984         (create_signatured_type_table_from_index): Likewise.
12985         (create_signatured_type_table_from_debug_names): Likewise.
12986         (dw2_symtab_iter_next): Likewise.
12987         (dw2_print_stats): Likewise.
12988         (dw2_expand_all_symtabs): Likewise.
12989         (dw2_expand_marked_cus): Likewise.
12990         (dw2_debug_names_iterator::next): Likewise.
12991         (dwarf2_initialize_objfile): Likewise.
12992         (add_signatured_type_cu_to_table): Likewise.
12993         (create_all_type_units): Likewise.
12994         (add_type_unit): Likewise.
12995         (struct tu_abbrev_offset): Add constructor.
12996         (build_type_psymtabs_1): Adjust to std::vector change.
12997         (print_tu_stats): Likewise.
12998         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12999         (write_debug_names): Likewise.
13000
13001 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13002
13003         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
13004         Make an std::vector.
13005         <n_comp_units>: Remove.
13006         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
13007         to std::vector change.
13008         (dwarf2_per_objfile::get_cutu): Likewise.
13009         (dwarf2_per_objfile::get_cu): Likewise.
13010         (create_cus_from_index): Likewise.
13011         (create_addrmap_from_index): Likewise.
13012         (create_addrmap_from_aranges): Likewise.
13013         (dwarf2_read_index): Likewise.
13014         (dw2_find_last_source_symtab): Likewise.
13015         (dw2_map_symtabs_matching_filename): Likewise.
13016         (dw2_symtab_iter_next): Likewise.
13017         (dw2_print_stats): Likewise.
13018         (dw2_expand_all_symtabs): Likewise.
13019         (dw2_expand_symtabs_with_fullname): Likewise.
13020         (dw2_expand_marked_cus): Likewise.
13021         (dw2_map_symbol_filenames): Likewise.
13022         (create_cus_from_debug_names): Likewise.
13023         (dwarf2_read_debug_names): Likewise.
13024         (dw2_debug_names_iterator::next): Likewise.
13025         (dwarf2_initialize_objfile): Likewise.
13026         (set_partial_user): Likewise.
13027         (dwarf2_build_psymtabs_hard): Likewise.
13028         (read_comp_units_from_section): Remove arguments, adjust to
13029         std::vector change.
13030         (create_all_comp_units): Adjust to std::vector and
13031         read_comp_units_from_section changes.
13032         (dwarf2_find_containing_comp_unit): Adjust to std::vector
13033         change.
13034         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
13035         (psyms_seen_size): Likewise.
13036         (write_gdbindex): Likewise.
13037         (write_debug_names): Likewise.
13038
13039 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13040
13041         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
13042         with dwarf2_per_objfile.
13043         (create_cus_from_index): Likewise.
13044         (create_signatured_type_table_from_index): Likewise.
13045         (dwarf2_read_index): Likewise.
13046         (dwarf2_initialize_objfile): Likewise.
13047         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
13048         per_cu rather than get_dwarf2_per_objfile.
13049
13050 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13051
13052         * dwarf2read.h (struct signatured_type): Forward declare.
13053         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
13054         New methods.
13055         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
13056         (dw2_get_cutu): ...this.
13057         (dwarf2_per_objfile::get_cu): Rename from...
13058         (dw2_get_cu): ...this.
13059         (dwarf2_per_objfile::get_tu): New.
13060         (create_addrmap_from_index): Adjust.
13061         (create_addrmap_from_aranges): Adjust.
13062         (dw2_find_last_source_symtab): Adjust.
13063         (dw2_map_symtabs_matching_filename): Adjust.
13064         (dw2_symtab_iter_next): Adjust.
13065         (dw2_print_stats): Adjust.
13066         (dw2_expand_all_symtabs): Adjust.
13067         (dw2_expand_symtabs_with_fullname): Adjust.
13068         (dw2_expand_marked_cus): Adjust.
13069         (dw_expand_symtabs_matching_file_matcher): Adjust.
13070         (dw2_map_symbol_filenames): Adjust.
13071         (dw2_debug_names_iterator::next): Adjust.
13072         (dwarf2_initialize_objfile): Adjust.
13073         (set_partial_user): Adjust.
13074         (dwarf2_build_psymtabs_hard): Adjust.
13075
13076 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13077
13078         * dwarf2read.c (create_signatured_type_table_from_debug_names):
13079         Remove unused variables.
13080         (dw2_map_symtabs_matching_filename): Likewise.
13081         (dwarf2_record_block_ranges): Likewise.
13082         (dwarf2_read_addr_index): Likewise.
13083         (follow_die_offset): Likewise.
13084
13085 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13086
13087         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
13088         to symbol_file_add_main.
13089
13090 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13091
13092         PR mi/22299
13093         * mi/mi-console.c (do_fputc_async_safe): New.
13094         (mi_console_file::write_async_safe): New.
13095         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
13096         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
13097         New.
13098         * ui-file.c (ui_file::putstrn): Adjust call to
13099         fputstrn_unfiltered.
13100         * utils.c (printchar): Replace do_fputs and do_fprintf
13101         parameters by do_fputc.
13102         (fputstr_filtered): Adjust call to printchar.
13103         (fputstr_unfiltered): Likewise.
13104         (fputstrn_filtered): Likewise.
13105         (fputstrn_unfiltered): Add do_fputc parameter, pass to
13106         printchar.
13107         * utils.h (do_fputc_ftype): New typedef.
13108         (fputstrn_unfiltered): Add do_fputc parameter.
13109
13110 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13111
13112         * regformats/i386/i386-avx.dat: Remove.
13113
13114 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13115
13116         PR gdb/22979
13117         * amd64-tdep.c (amd64_none_init_abi): New function.
13118         (amd64_x32_none_init_abi): New function.
13119         (_initialize_amd64_tdep): Register handlers for x86-64 and
13120         x64_32 with GDB_OSABI_NONE.
13121         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
13122         GDB_OSABI_NONE osabi.
13123
13124 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13125
13126         PR gdb/22980
13127         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
13128         GDB_OSABI_NONE.
13129         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
13130         * osabi.c (gdb_osabi_names): Add "unknown" entry.
13131
13132 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13133
13134         * common/byte-vector.h (char_vector): New type.
13135         * target.h (target_read_alloc): Return
13136         gdb::optional<byte_vector>.
13137         (target_read_stralloc): Return gdb::optional<char_vector>.
13138         (target_get_osdata): Return gdb::optional<char_vector>.
13139         * target.c (target_read_alloc_1): Templatize.  Replacement
13140         manual memory management with vector.
13141         (target_read_alloc): Change return type, adjust.
13142         (target_read_stralloc): Change return type, adjust.
13143         (target_get_osdata): Change return type, adjust.
13144         * auxv.c (struct auxv_info) <length>: Remove.
13145         <data>: Change type to gdb::optional<byte_vector>.
13146         (auxv_inferior_data_cleanup): Free auxv_info with delete.
13147         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
13148         (target_auxv_search): Adjust.
13149         (fprint_target_auxv): Adjust.
13150         * avr-tdep.c (avr_io_reg_read_command): Adjust.
13151         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
13152         (linux_make_corefile_notes): Adjust.
13153         * osdata.c (get_osdata): Adjust.
13154         * remote.c (remote_get_threads_with_qxfer): Adjust.
13155         (remote_memory_map): Adjust.
13156         (remote_traceframe_info): Adjust.
13157         (btrace_read_config): Adjust.
13158         (remote_read_btrace): Adjust.
13159         (remote_pid_to_exec_file): Adjust.
13160         * solib-aix.c (solib_aix_get_library_list): Adjust.
13161         * solib-dsbt.c (decode_loadmap): Don't free buf.
13162         (dsbt_get_initial_loadmaps): Adjust.
13163         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
13164         * solib-target.c (solib_target_current_sos): Adjust.
13165         * tracepoint.c (sdata_make_value): Adjust.
13166         * xml-support.c (xinclude_start_include): Adjust.
13167         (xml_fetch_content_from_file): Adjust.
13168         * xml-support.h (xml_fetch_another): Change return type.
13169         (xml_fetch_content_from_file): Change return type.
13170         * xml-syscall.c (xml_init_syscalls_info): Adjust.
13171         * xml-tdesc.c (file_read_description_xml): Adjust.
13172         (fetch_available_features_from_target): Change return type.
13173         (target_fetch_description_xml): Adjust.
13174         (target_read_description_xml): Adjust.
13175
13176 2018-04-06  Tom Tromey  <tom@tromey.com>
13177
13178         * value.c (~value): Update.
13179         (struct value) <contents>: Now unique_xmalloc_ptr.
13180         (value_contents_bits_eq, allocate_value_contents)
13181         (value_contents_raw, value_contents_all_raw)
13182         (value_contents_for_printing, value_contents_for_printing_const)
13183         (set_value_enclosing_type): Update.
13184
13185 2018-04-06  Tom Tromey  <tom@tromey.com>
13186
13187         * value.c (range_s): Remove typedef, VEC.
13188         (struct range): Add operator<.
13189         (range_lessthan): Remove.
13190         (ranges_contain): Change type.
13191         (~value): Update.
13192         (struct value) <unavailable, optimized_out>: Now std::vector.
13193         (value_entirely_available)
13194         (value_entirely_covered_by_range_vector)
13195         (value_entirely_unavailable, value_entirely_optimized_out):
13196         Update.
13197         (insert_into_bit_range_vector): Change argument type.
13198         (find_first_range_overlap): Likewise.
13199         (struct ranges_and_idx, value_contents_bits_eq)
13200         (require_not_optimized_out, require_available): Update.
13201         (ranges_copy_adjusted): Change argument types.
13202         (value_optimized_out, value_copy, value_fetch_lazy): Update.
13203
13204 2018-04-06  Tom Tromey  <tom@tromey.com>
13205
13206         * value.c (~value): Update.
13207         (struct value) <parent>: Now a value_ref_ptr.
13208         (value_parent, set_value_parent, value_address, value_copy):
13209         Update.
13210
13211 2018-04-06  Tom Tromey  <tom@tromey.com>
13212
13213         * value.c (struct value): Add constructor, destructor, and member
13214         initializers.
13215         (allocate_value_lazy, value_decref): Update.
13216
13217 2018-04-06  Tom Tromey  <tom@tromey.com>
13218
13219         * value.c (struct value) <released, next>: Remove.
13220         (all_values): Now a std::vector.
13221         (allocate_value_lazy): Update.
13222         (value_next): Remove.
13223         (value_mark, value_free_to_mark, release_value)
13224         (value_release_to_mark): Update.
13225
13226 2018-04-06  Tom Tromey  <tom@tromey.com>
13227
13228         * value.h (fetch_subexp_value, value_release_to_mark): Update.
13229         (free_value_chain): Remove.
13230         * value.c (free_value_chain): Remove.
13231         (value_release_to_mark): Return a std::vector.
13232         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
13233         std::vector.
13234         (check_condition): Update.
13235         * eval.c (fetch_subexp_value): Change "val_chain" to a
13236         std::vector.
13237         * breakpoint.c (update_watchpoint): Update.
13238         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
13239
13240 2018-04-06  Tom Tromey  <tom@tromey.com>
13241
13242         * value.h (free_all_values): Remove.
13243         * value.c (free_all_values): Remove.
13244
13245 2018-04-06  Tom Tromey  <tom@tromey.com>
13246
13247         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
13248         (value_history_chain, value_history_count): Remove.
13249         (value_history): New global.
13250         (record_latest_value, access_value_history, show_values)
13251         (preserve_values): Update.
13252
13253 2018-04-06  Tom Tromey  <tom@tromey.com>
13254
13255         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
13256         * varobj.c (varobj_set_display_format, varobj_set_value)
13257         (install_default_visualizer, construct_visualizer)
13258         (install_new_value, ~varobj, varobj_get_value_type)
13259         (my_value_of_variable, varobj_editable_p): Update.
13260         * c-varobj.c (c_describe_child, c_value_of_variable)
13261         (cplus_number_of_children, cplus_describe_child): Update.
13262         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
13263         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
13264         (ada_value_of_variable, ada_value_is_changeable_p): Update.
13265
13266 2018-04-06  Tom Tromey  <tom@tromey.com>
13267
13268         * printcmd.c (last_examine_address): Change type to
13269         value_ref_ptr.
13270         (do_examine, x_command): Update.
13271
13272 2018-04-06  Tom Tromey  <tom@tromey.com>
13273
13274         * value.c (release_value): Update.
13275         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
13276         (struct bpstats) <val>: Now a value_ref_ptr.
13277         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
13278         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
13279         (~watchpoint, print_it_watchpoint, watch_command_1)
13280         (invalidate_bp_value_on_memory_change): Update.
13281
13282 2018-04-06  Tom Tromey  <tom@tromey.com>
13283
13284         * varobj.c (varobj_clear_saved_item)
13285         (update_dynamic_varobj_children, install_new_value, ~varobj):
13286         Update.
13287         * value.h (value_incref): Move declaration earlier.
13288         (value_decref): Rename from value_free.
13289         (struct value_ref_policy): New.
13290         (value_ref_ptr): New typedef.
13291         (struct value_deleter): Remove.
13292         (gdb_value_up): Remove typedef.
13293         (release_value): Change return type.
13294         (release_value_or_incref): Remove.
13295         * value.c (set_value_parent): Update.
13296         (value_incref): Change return type.
13297         (value_decref): Rename from value_free.
13298         (value_free_to_mark, free_all_values, free_value_chain): Update.
13299         (release_value): Return value_ref_ptr.
13300         (release_value_or_incref): Remove.
13301         (record_latest_value, set_internalvar, clear_internalvar):
13302         Update.
13303         * stack.c (info_frame_command): Don't call value_free.
13304         * python/py-value.c (valpy_dealloc, valpy_new)
13305         (value_to_value_object): Update.
13306         * printcmd.c (do_examine): Update.
13307         * opencl-lang.c (lval_func_free_closure): Update.
13308         * mi/mi-main.c (register_changed_p): Don't call value_free.
13309         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
13310         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
13311         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
13312         value_free.
13313         * guile/scm-value.c (vlscm_free_value_smob)
13314         (vlscm_scm_from_value): Update.
13315         * frame.c (frame_register_unwind, frame_unwind_register_signed)
13316         (frame_unwind_register_unsigned, get_frame_register_bytes)
13317         (put_frame_register_bytes): Don't call value_free.
13318         * findvar.c (address_from_register): Don't call value_free.
13319         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
13320         * dwarf2loc.c (entry_data_value_free_closure)
13321         (value_of_dwarf_reg_entry, free_pieced_value_closure)
13322         (dwarf2_evaluate_loc_desc_full): Update.
13323         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
13324         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
13325         (~watchpoint, watch_command_1)
13326         (invalidate_bp_value_on_memory_change): Update.
13327         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
13328
13329 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
13330
13331         PR gdb/23022
13332         * warning.m4: Add -Wno-error=deprecated-register.
13333         * configure: Re-generate.
13334
13335 2018-04-05  Tom Tromey  <tom@tromey.com>
13336
13337         * linespec.h: Remove include of "vec.h".
13338
13339 2018-04-05  Tom Tromey  <tom@tromey.com>
13340
13341         * linespec.c (typep): Remove typedef.
13342         (find_methods, find_superclass_methods): Take a std::vector.
13343         (find_method): Use std::vector.
13344
13345 2018-04-05  Tom Tromey  <tom@tromey.com>
13346
13347         * utils.c (compare_strings): Remove.
13348         * utils.h (compare_strings): Remove.
13349         * objc-lang.h (find_imps): Update.
13350         * objc-lang.c (find_methods): Take a std::vector.
13351         (uniquify_strings, find_imps): Likewise.
13352         * linespec.c (find_methods): Take a std::vector.
13353         (decode_objc): Use std::vector.
13354         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
13355         a std::vector.
13356         (find_method, find_function_symbols): Use std::vector.
13357
13358 2018-04-05  Tom Tromey  <tom@tromey.com>
13359
13360         * completer.c (completion_tracker::completion_tracker): Remove
13361         cast.
13362         (completion_tracker::discard_completions): Likewise.
13363         * breakpoint.c (ambiguous_names_p): Remove cast.
13364         * ada-lang.c (_initialize_ada_language): Remove cast.
13365         * utils.h (streq): Update.
13366         (streq_hash): Add new declaration.
13367         * utils.c (streq): Return bool.
13368         (streq_hash): New function.
13369
13370 2018-04-05  Tom Tromey  <tom@tromey.com>
13371
13372         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
13373         Remove a string copy.
13374
13375 2018-04-05  Tom Tromey  <tom@tromey.com>
13376
13377         * linespec.c (filter_results): Use std::vector.
13378         (decode_line_2, decode_line_full): Update.
13379
13380 2018-04-05  Tom Tromey  <tom@tromey.com>
13381
13382         * linespec.c (canonical_to_fullform): Return std::string.
13383         (filter_results): Update.
13384         (struct decode_line_2_item): Add constructor.
13385         <fullform, displayform>: Now std::string.
13386         (decode_line_2_compare_items): Now a std::sort comparator.
13387         (decode_line_2): Update.
13388
13389 2018-04-05  Tom Tromey  <tom@tromey.com>
13390
13391         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
13392         (unexpected_linespec_error): Update.
13393         (linespec_parse_basic, parse_linespec): Update.
13394
13395 2018-04-05  Tom Tromey  <tom@tromey.com>
13396
13397         * linespec.c (linespec_parse_basic): Reindent.
13398
13399 2018-04-05  Tom Tromey  <tom@tromey.com>
13400
13401         * minsyms.h (iterate_over_minimal_symbols): Update.
13402         * minsyms.c (iterate_over_minimal_symbols): Take a
13403         gdb::function_view.
13404         * linespec.c (struct collect_minsyms): Remove.
13405         (compare_msyms): Now a std::sort comparator.
13406         (add_minsym): Add parameters.
13407         (search_minsyms_for_name): Update.  Use std::vector.
13408
13409 2018-04-03  Tom Tromey  <tom@tromey.com>
13410
13411         * mipsread.c (read_alphacoff_dynamic_symtab): Use
13412         gdb::byte_vector.
13413
13414 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13415
13416         * MAINTAINERS (Write After Approval): Add Weimin Pan.
13417
13418 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13419
13420         PR gdb/16959
13421         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
13422         printing static type.
13423
13424 2018-04-01  Tom Tromey  <tom@tromey.com>
13425
13426         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
13427         (rs6000_xfer_shared_libraries): Update.
13428
13429 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
13430
13431         * common/gdb_vecs.h (char_ptr): Remove.
13432         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
13433
13434 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13435
13436         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
13437         with std::vector.
13438         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
13439
13440 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13441
13442         * tracepoint.h (struct uploaded_tp): Initialize fields.
13443         <actions, step_actions, cmd_strings>: Change type to
13444         std::vector<char *>.
13445         * tracepoint.c (get_uploaded_tp): Allocate with new.
13446         (free_uploaded_tps): Free with delete.
13447         (parse_tracepoint_definition): Adjust to std::vector change.
13448         * breakpoint.c (read_uploaded_action): Likewise.
13449         (create_tracepoint_from_upload): Likewise.
13450         * ctf.c (ctf_write_uploaded_tp): Likewise.
13451         (SET_ARRAY_FIELD): Likewise.
13452         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
13453
13454 2018-03-30  Tom Tromey  <tom@tromey.com>
13455
13456         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
13457         std::unique_ptr.
13458         (svr4_keep_data_in_core): Update.
13459         (svr4_read_so_list): Update.
13460
13461 2018-03-30  Tom Tromey  <tom@tromey.com>
13462
13463         * windows-nat.c (handle_output_debug_string, handle_exception):
13464         Update.
13465         * target.h (target_read_string): Update.
13466         * target.c (target_read_string): Change "string" to
13467         unique_xmalloc_ptr.
13468         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
13469         Update.
13470         * solib-frv.c (frv_current_sos): Update.
13471         * solib-dsbt.c (dsbt_current_sos): Update.
13472         * solib-darwin.c (darwin_current_sos): Update.
13473         * linux-thread-db.c (inferior_has_bug): Update.
13474         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
13475         Update.  Remove alloca.
13476         * ada-lang.c (ada_main_name): Update.
13477
13478 2018-03-30  Tom Tromey  <tom@tromey.com>
13479
13480         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
13481         (struct dwo_file_deleter): New.
13482         (dwo_file_up): New typedef.
13483         (open_and_init_dwo_file): Use dwo_file_up.
13484         (free_dwo_file_cleanup): Remove.
13485
13486 2018-03-30  Tom Tromey  <tom@tromey.com>
13487
13488         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
13489         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
13490
13491 2018-03-30  Tom Tromey  <tom@tromey.com>
13492
13493         * dwarf2read.c (class free_cached_comp_units): New class.
13494         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
13495         (free_cached_comp_units): Remove function.
13496
13497 2018-03-30  Tom Tromey  <tom@tromey.com>
13498
13499         * utils.h (make_cleanup_unpush_target): Remove.
13500         * inf-ptrace.c (struct target_unpusher): New.
13501         (target_unpush_up) New typedef.
13502         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
13503         target_unpush_up.
13504         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
13505
13506 2018-03-27  Tom Tromey  <tom@tromey.com>
13507
13508         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
13509
13510 2018-03-27  Pedro Alves  <palves@redhat.com>
13511             Tom Tromey  <tom@tromey.com>
13512
13513         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
13514         destructor.  Now a class.
13515         (gdb_readline_wrapper_cleanup): Remove function.
13516         (gdb_readline_wrapper): Remove cleanups.
13517
13518 2018-03-27  Tom Tromey  <tom@tromey.com>
13519
13520         * typeprint.h (struct type_print_options) <local_typedefs,
13521         global_typedefs>: Remove "struct" keyword.
13522         (class typedef_hash_table): New class.
13523         (recursively_update_typedef_hash, add_template_parameters)
13524         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
13525         (find_typedef_in_hash): Don't declare.
13526         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
13527         (typedef_hash_table::recursively_update): Rename from
13528         recursively_update_typedef_hash.  Now a member.
13529         (typedef_hash_table::add_template_parameters): Rename from
13530         add_template_parameters.  Now a member.
13531         (typedef_hash_table::typedef_hash_table): Now a constructor;
13532         rename from create_typedef_hash.
13533         (typedef_hash_table::~typedef_hash_table): Now a destructor;
13534         rename from free_typedef_hash.
13535         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
13536         (do_free_global_table): Remove.
13537         (typedef_hash_table::typedef_hash_table): New constructor; renamed
13538         from copy_type_recursive.
13539         (create_global_typedef_table): Remove.
13540         (typedef_hash_table::find_global_typedef): Now a member of
13541         typedef_hash_table.
13542         (typedef_hash_table::find_typedef): Rename from
13543         find_typedef_in_hash; now a member.
13544         (whatis_exp): Update.
13545         * extension.h (struct ext_lang_type_printers): Add constructor and
13546         destructor.
13547         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
13548         declare.
13549         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
13550         Now a constructor; rename from start_ext_lang_type_printers.
13551         (ext_lang_type_printers): Now a destructor; rename from
13552         free_ext_lang_type_printers.
13553         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
13554         Update.
13555         (c_type_print_base_struct_union): Update.  Remove cleanups.
13556
13557 2018-03-27  Tom Tromey  <tom@tromey.com>
13558
13559         * dwarf-index-write.c: Include <cmath>.
13560
13561 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13562
13563         * NEWS: Add entry describing new "set|show varsize-limit" command.
13564         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
13565         command.
13566         * printcmd.c (_initialize_printcmd): Add "set var" alias of
13567         "set variable".
13568
13569 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
13570
13571         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
13572         dwarf-index-write.c
13573         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
13574         * dwarf-index-common.c: New file.
13575         * dwarf-index-common.h: New file.
13576         * dwarf-index-write.c: New file.
13577         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
13578         (struct dwarf2_section_info): Move from here.
13579         (dwarf2_section_info_def): Likewise.
13580         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
13581         (offset_type): Likewise.
13582         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
13583         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
13584         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
13585         (byte_swap): Likewise.
13586         (MAYBE_SWAP): Likewise.
13587         (dwarf2_per_cu_ptr): Likewise.
13588         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
13589         (struct tu_stats): Likewise.
13590         (struct dwarf2_per_objfile): Likewise.
13591         (struct dwarf2_per_cu_data): Likewise.
13592         (struct signatured_type): Likewise.
13593         (sig_type_ptr): Likewise.
13594         (DEF_VEC_P (sig_type_ptr)): Likewise.
13595         (INDEX4_SUFFIX): Likewise.
13596         (INDEX5_SUFFIX): Likewise.
13597         (DEBUG_STR_SUFFIX): Likewise.
13598         (dwarf2_read_section): Make non-static.
13599         (mapped_index_string_hash): Move from here.
13600         (dwarf5_djb_hash): Likewise.
13601         (file_write): Likewise.
13602         (class data_buf): Likewise.
13603         (struct symtab_index_entry): Likewise.
13604         (struct mapped_symtab): Likewise.
13605         (find_slot): Likewise.
13606         (hash_expand): Likewise.
13607         (add_index_entry): Likewise.
13608         (uniquify_cu_indices): Likewise.
13609         (class c_str_view): Likewise.
13610         (class c_str_view_hasher): Likewise.
13611         (class vector_hasher): Likewise.
13612         (write_hash_table): Likewise.
13613         (psym_index_map): Likewise.
13614         (struct addrmap_index_data): Likewise.
13615         (add_address_entry): Likewise.
13616         (add_address_entry_worker): Likewise.
13617         (write_address_map): Likewise.
13618         (symbol_kind): Likewise.
13619         (write_psymbols): Likewise.
13620         (struct signatured_type_index_data): Likewise.
13621         (write_one_signatured_type): Likewise.
13622         (recursively_count_psymbols): Likewise.
13623         (recursively_write_psymbols): Likewise.
13624         (class debug_names): Likewise.
13625         (check_dwarf64_offsets): Likewise.
13626         (psyms_seen_size): Likewise.
13627         (write_gdbindex): Likewise.
13628         (write_debug_names): Likewise.
13629         (assert_file_size): Likewise.
13630         (write_psymtabs_to_index): Likewise.
13631         (save_gdb_index_command): Likewise.
13632         (_initialize_dwarf2_read): Don't register the "save gdb-index"
13633         command.
13634         * dwarf2read.h: New file.
13635
13636 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13637
13638         PR gdb/22670
13639         * dwarf2read.c (dwarf2_physname): Do not return the demangled
13640         symbol name if the CU's language stores symbol names in linkage
13641         format.
13642         * language.h (struct language_defn)
13643         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
13644         all instances of this struct.
13645
13646 2018-03-26  Tom Tromey  <tom@tromey.com>
13647
13648         * stack.c (backtrace_command_1): Remove verbose code.
13649
13650 2018-03-26  Tom Tromey  <tom@tromey.com>
13651
13652         * python/py-framefilter.c (py_print_type): Don't catch
13653         exceptions.  Return void.
13654         (py_print_value): Likewise.
13655         (py_print_single_arg): Likewise.
13656         (enumerate_args): Don't catch exceptions.
13657         (py_print_args): Likewise.
13658         (py_print_frame): Likewise.
13659         (gdbpy_apply_frame_filter): Catch exceptions here.
13660
13661 2018-03-26  Tom Tromey  <tom@tromey.com>
13662
13663         * stack.c (_initialize_stack): Remove trailing newlines from help
13664         text.  Add "Usage" line to "backtrace" help.
13665
13666 2018-03-26  Tom Tromey  <tom@tromey.com>
13667
13668         PR python/16486:
13669         * python/py-framefilter.c (py_print_args): Call wrap_hint.
13670
13671 2018-03-26  Tom Tromey  <tom@tromey.com>
13672
13673         * python/py-framefilter.c (py_print_single_arg): Return
13674         EXT_LANG_BT_ERROR from catch.
13675
13676 2018-03-26  Tom Tromey  <tom@tromey.com>
13677
13678         PR backtrace/15584:
13679         * stack.c (backtrace_command_1): Move some code into no-filters
13680         "if".
13681
13682 2018-03-26  Tom Tromey  <tom@tromey.com>
13683
13684         * python/py-framefilter.c (throw_quit_or_print_exception): New
13685         function.
13686         (gdbpy_apply_frame_filter): Use it.
13687
13688 2018-03-26  Tom Tromey  <tom@tromey.com>
13689
13690         PR cli/17716:
13691         * python/py-framefilter.c (py_print_type, py_print_value)
13692         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
13693         RETURN_MASK_ERROR.
13694
13695 2018-03-26  Tom Tromey  <tom@tromey.com>
13696
13697         * python/py-framefilter.c (enumerate_args): Use
13698         gdb::unique_xmalloc_ptr.
13699
13700 2018-03-26  Tom Tromey  <tom@tromey.com>
13701
13702         * python/py-framefilter.c (py_print_frame): Return
13703         EXT_LANG_BT_OK.
13704         (gdbpy_apply_frame_filter): Update comment.
13705         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
13706         Remove.
13707         <EXT_LANG_BT_NO_FILTERS>: Change value.
13708
13709 2018-03-26  Tom Tromey  <tom@tromey.com>
13710
13711         PR backtrace/15582:
13712         * stack.c (backtrace_command): Parse "hide" argument.
13713         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
13714         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
13715         constant.
13716
13717 2018-03-26  Tom Tromey  <tom@tromey.com>
13718
13719         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
13720         add "flags".
13721         (backtrace_command): Remove "fulltrace", add "flags".
13722
13723 2018-03-26  Tom Tromey  <tom@tromey.com>
13724
13725         * stack.c (backtrace_command): Rewrite command line parsing.
13726
13727 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13728
13729         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
13730
13731 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13732
13733         * filename-seen-cache.h: Add include guard.
13734
13735 2018-03-26  Keith Seitz  <keiths@redhat.com>
13736
13737         * symfile.c (place_section): Remove "struct" from section_addr_info
13738         in comment.
13739         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
13740         "struct" keyword from section_addr_info.
13741
13742 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
13743
13744         * regformats/regdef.h (reg): Add constructors.
13745
13746 2018-03-25  Pedro Alves  <palves@redhat.com>
13747
13748         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
13749         if then/else bodies in var_func_name extraction.
13750
13751 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
13752
13753         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
13754         lookup_minimal_symbol() to find symbol entry.
13755         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
13756
13757 2018-03-23  Keith Seitz  <keiths@redhat.com>
13758
13759         PR c++/22968
13760         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
13761         nested type definitions for C++, too.
13762
13763 2018-03-23  Tom Tromey  <tom@tromey.com>
13764
13765         * machoread.c (struct oso_el): Add a constructor.  Don't define as
13766         a typedef.
13767         (macho_register_oso): Remove.
13768         (macho_symtab_read): Take a std::vector.
13769         (oso_el_compare_name): Now a std::sort comparator.
13770         (macho_symfile_read_all_oso): Take a std::vector.
13771         (macho_symfile_read): Use std::vector.  Remove cleanups.
13772
13773 2018-03-22  Tom Tromey  <tom@tromey.com>
13774
13775         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
13776         (record_full_goto_bookmark): Use std::string.
13777
13778 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13779
13780         PR tdep/18295
13781         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
13782         a single mask.
13783
13784 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13785
13786         * rs6000-tdep.c (store_insn_p): New function.
13787         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
13788         and cr_reg to their unshifted values. Use store_insn_p to
13789         match LR saves using either R1 or fdata->alloca_reg. Use
13790         store_insn_p to match CR saves. Set alloca_reg_offset
13791         when alloca_reg and framep are set. Remove lr_reg shift
13792         when assigning to fdata->lr_register.
13793
13794 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13795
13796         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
13797         command line args instead of emitting a warning.
13798
13799 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13800
13801         * tracepoint.h (struct static_tracepoint_marker): Initialize
13802         fields, define default constructor, move constructor and move
13803         assignment, disable the rest.
13804         <str_id, extra>: Make std::string.
13805         (release_static_tracepoint_marker): Remove.
13806         (free_current_marker): Remove.
13807         * tracepoint.c (free_current_marker): Remove.
13808         (parse_static_tracepoint_marker_definition): Adjust to
13809         std::string, use new hex2str overload.
13810         (release_static_tracepoint_marker): Remove.
13811         (print_one_static_tracepoint_marker): Get marker by reference
13812         and adjust to std::string.
13813         (info_static_tracepoint_markers_command): Adjust to std::vector
13814         changes
13815         * target.h (static_tracepoint_marker_p): Remove typedef.
13816         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
13817         (struct target_ops) <to_static_tracepoint_marker_at>: Return
13818         bool.
13819         <to_static_tracepoint_markers_by_strid>: Return std::vector.
13820         * target-debug.h
13821         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
13822         (target_debug_print_std_vector_static_tracepoint_marker): New.
13823         (target_debug_print_struct_static_tracepoint_marker_p): Rename
13824         to...
13825         (target_debug_print_static_tracepoint_marker_p): ... this.
13826         * target-delegates.c: Re-generate.
13827         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
13828         Make std::string.
13829         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
13830         (decode_static_tracepoint_spec): Adjust to std::vector.
13831         (tracepoint_print_one_detail): Adjust to std::string.
13832         (strace_marker_decode_location): Adjust to std::string.
13833         (update_static_tracepoint): Adjust to std::string, remove call
13834         to release_static_tracepoint_marker.
13835         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
13836         Adjust to std::vector.
13837         * remote.c (remote_static_tracepoint_marker_at): Return bool.
13838         (remote_static_tracepoint_markers_by_strid): Adjust to
13839         std::vector.
13840         * common/rsp-low.h (hex2str): New overload with explicit count
13841         of bytes.
13842         * common/rsp-low.c (hex2str): New overload with explicit count
13843         of bytes.
13844         * unittests/rsp-low-selftests.c (test_hex2str): New function.
13845         (_initialize_rsp_low_selftests): Add test_hex2str test.
13846         * unittests/tracepoint-selftests.c
13847         (test_parse_static_tracepoint_marker_definition): Adjust to
13848         std::string.
13849
13850 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13851
13852         * tracepoint.c (parse_static_tracepoint_marker_definition):
13853         Consider case where the definition is followed by more
13854         definitions.
13855         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13856         tracepoint-selftests.c.
13857         * unittests/tracepoint-selftests.c: New.
13858
13859 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13860
13861         * MAINTAINERS (Write After Approval): Add Pedro Franco de
13862         Carvalho.
13863
13864 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13865
13866         * symtab.c (find_pc_sect_line): fixed indentation.
13867
13868 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13869
13870         * symtab.c (find_pc_sect_line): now uses binary search.
13871
13872 2018-03-19  Tom Tromey  <tom@tromey.com>
13873
13874         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
13875         "IDENT" production.
13876
13877 2018-03-19  Pedro Alves  <palves@redhat.com>
13878             Tom Tromey  <tom@tromey.com>
13879
13880         * unittests/observable-selftests.c: New file.
13881         * common/observable.h: New file.
13882         * observable.h: New file.
13883         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
13884         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
13885         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
13886         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
13887         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
13888         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
13889         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
13890         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
13891         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
13892         python/py-breakpoint.c, python/py-finishbreakpoint.c,
13893         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
13894         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
13895         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
13896         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
13897         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
13898         tui/tui-interp.c, valops.c: Update all users.
13899         * tui/tui-hooks.c (tui_bp_created_observer)
13900         (tui_bp_deleted_observer, tui_bp_modified_observer)
13901         (tui_inferior_exit_observer, tui_before_prompt_observer)
13902         (tui_normal_stop_observer, tui_register_changed_observer):
13903         Remove.
13904         (tui_observers_token): New global.
13905         (attach_or_detach, tui_attach_detach_observers): New functions.
13906         (tui_install_hooks, tui_remove_hooks): Use
13907         tui_attach_detach_observers.
13908         * record-btrace.c (record_btrace_thread_observer): Remove.
13909         (record_btrace_thread_observer_token): New global.
13910         * observer.sh: Remove.
13911         * observer.c: Rename to observable.c.
13912         * observable.c (namespace gdb_observers): Define new objects.
13913         (observer_debug): Move into gdb_observers namespace.
13914         (struct observer, struct observer_list, xalloc_observer_list_node)
13915         (xfree_observer_list_node, generic_observer_attach)
13916         (generic_observer_detach, generic_observer_notify): Remove.
13917         (_initialize_observer): Update.
13918         Don't include observer.inc.
13919         * Makefile.in (generated_files): Remove observer.h, observer.inc.
13920         (clean mostlyclean): Likewise.
13921         (observer.h, observer.inc): Remove targets.
13922         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
13923         (COMMON_SFILES): Use observable.c, not observer.c.
13924         * .gitignore: Remove observer.h.
13925
13926 2018-03-18  Tom Tromey  <tom@tromey.com>
13927
13928         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
13929         gdb::def_vector.
13930         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
13931
13932 2018-03-17  Tom Tromey  <tom@tromey.com>
13933
13934         * auto-load.c (auto_load_objfile_script_1): Use std::string.
13935
13936 2018-03-17  Tom Tromey  <tom@tromey.com>
13937
13938         * target.c (class scoped_target_fd): New.
13939         (target_fileio_close_cleanup): Remove.
13940         (target_fileio_read_alloc_1): Use scoped_target_fd.
13941
13942 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
13943
13944         * silent-rules.mk: New.
13945         * Makefile.in: Include silent-rules.mk
13946         (srcdir, VPATH, top_srcdir): Move up.
13947         (COMPILE): Add ECHO_CXX.
13948         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
13949         (init.c): Add ECHO_INIT_C.
13950         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
13951         (version.c): Add ECHO_GEN.
13952         (printcmd.o): Add ECHO_CXX.
13953         (target-float.o): Add ECHO_CXX.
13954         (ada-exp.o): Add ECHO_CXX.
13955         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
13956         (insight$(EXEEXT)): Add ECHO_CXXLD.
13957         * gnulib/configure.ac: Add AM_SILENT_RULES.
13958         * gnulib/aclocal.m4: Re-generate.
13959         * gnulib/configure: Re-generate.
13960         * gnulib/import/Makefile.in: Re-generate.
13961
13962 2018-03-16  Tom Tromey  <tom@tromey.com>
13963
13964         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
13965         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
13966         * utils.c (do_free_section_addr_info)
13967         (make_cleanup_free_section_addr_info): Remove.
13968         * symfile.h (struct other_sections): Add constructor.
13969         (struct section_addr_info): Remove.
13970         (section_addr_info): New typedef.
13971         (struct sym_fns) <sym_offsets>: Change type of parameter.
13972         (build_section_addr_info_from_objfile)
13973         (relative_addr_info_to_section_offsets, addr_info_make_relative)
13974         (default_symfile_offsets, symbol_file_add)
13975         (symbol_file_add_from_bfd)
13976         (build_section_addr_info_from_section_table): Update.
13977         (alloc_section_addr_info, free_section_addr_info): Don't declare.
13978         * symfile.c (alloc_section_addr_info): Remove.
13979         (build_section_addr_info_from_section_table): Change return type.
13980         Update.
13981         (build_section_addr_info_from_bfd)
13982         (build_section_addr_info_from_objfile): Likewise.
13983         (free_section_addr_info): Remove.
13984         (relative_addr_info_to_section_offsets): Change type of "addrs".
13985         (addrs_section_compar): Now a std::sort comparator.
13986         (addrs_section_sort): Change return type.
13987         (addr_info_make_relative): Change type of "addrs".  Update.
13988         (default_symfile_offsets, syms_from_objfile_1)
13989         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
13990         (symbol_file_add_separate): Update.
13991         (symbol_file_add): Change type of "addrs".  Update.
13992         (add_symbol_file_command): Update.  Remove cleanups.
13993         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
13994         cleanups.
13995         * symfile-debug.c (debug_sym_offsets): Change type of "info".
13996         * solib.c (solib_read_symbols): Update.
13997         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
13998         * machoread.c (macho_symfile_offsets): Update.
13999         * jit.c (jit_bfd_try_read_symtab): Update.
14000
14001 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
14002
14003         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14004         unittests/utils-selftests.c.
14005         * unittests/utils-selftests.c: New file.
14006
14007 2018-03-14  Tom Tromey  <tom@tromey.com>
14008
14009         PR cli/14977:
14010         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
14011         for NULL.
14012
14013 2018-03-14  Tom Tromey  <tom@tromey.com>
14014
14015         PR cli/19918:
14016         * printcmd.c (printf_pointer): Allow "-" in format.
14017
14018 2018-03-14  Tom Tromey  <tom@tromey.com>
14019
14020         * printcmd.c (_initialize_printcmd): Add usage to printf.
14021
14022 2018-03-14  Yao Qi  <qiyao@sourceware.org>
14023
14024         * MAINTAINERS: Update my email address.
14025
14026 2018-03-13  Tom Tromey  <tom@tromey.com>
14027
14028         * machoread.c (macho_check_dsym): Change filenamep to a
14029         std::string*.
14030         (macho_symfile_read): Update.
14031         * symfile.c (load_command): Use std::string.
14032
14033 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
14034
14035         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
14036         to error message string.
14037         (riscv_register_name): Use xsnprintf instead of sprintf.
14038         (riscv_insn::fetch_instruction): Use gdb_assert instead of
14039         internal_error.
14040         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
14041         error.
14042         (riscv_push_dummy_call): Likewise.
14043
14044 2018-03-12  Tom Tromey  <tom@tromey.com>
14045
14046         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
14047         Use gdb::byte_vector.
14048         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
14049
14050 2018-03-12  Yao Qi  <yao.qi@linaro.org>
14051
14052         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
14053         parameter type to readable_regcache.
14054         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
14055         the declaration.
14056
14057 2018-03-11  Tom Tromey  <tom@tromey.com>
14058
14059         * dwarf2read.c (struct nextfield): Add initializers.
14060         (struct nextfnfield): Remove.
14061         (struct fnfieldlist): Add initializers.  Remove "length" and
14062         "head", use std::vector.
14063         (struct decl_field_list): Remove.
14064         (struct field_info): Add initializers.
14065         <fields, baseclasses>: Now std::vector.
14066         <nbaseclasses, nfnfields, typedef_field_list_count,
14067         nested_types_list_count>: Remove.
14068         (dwarf2_add_field, dwarf2_add_type_defn)
14069         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
14070         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
14071         (process_structure_scope): Update.
14072
14073 2018-03-11  Tom Tromey  <tom@tromey.com>
14074
14075         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
14076         for use by std::sort.
14077         (build_type_psymtabs_1): Use std::vector.
14078
14079 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
14080
14081         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
14082         and LIBMPFR in the printed configuration.
14083
14084 2018-03-08  Tom Tromey  <tom@tromey.com>
14085
14086         * source.c (get_filename_and_charpos): Use scoped_fd.
14087         * nto-procfs.c (procfs_open_1): Use scoped_fd.
14088         (procfs_pidlist): Likewise.
14089         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
14090         (iterate_over_mappings): Likewise.
14091
14092 2018-03-08  Tom Tromey  <tom@tromey.com>
14093
14094         * infcall.c (struct call_return_meta_info)
14095         <stack_temporaries_enabled>: Remove.
14096         (get_call_return_value, call_function_by_hand_dummy): Update.
14097         * thread.c (disable_thread_stack_temporaries): Remove.
14098         (enable_thread_stack_temporaries): Remove.
14099         (thread_stack_temporaries_enabled_p): Return bool.
14100         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
14101         (get_last_thread_stack_temporary): Update.
14102         * eval.c (evaluate_subexp): Update.
14103         * gdbthread.h (class enable_thread_stack_temporaries): Now a
14104         class, not a function.
14105         (value_ptr, value_vec): Remove typedefs.
14106         (class thread_info) <stack_temporaries_enabled>: Now bool.
14107         <stack_temporaries>: Now a std::vector.
14108         (thread_stack_temporaries_enabled_p)
14109         (value_in_thread_stack_temporaries): Return bool.
14110
14111 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
14112
14113         * remote.c (putpkt_binary): Fix omitted bytes reporting.
14114         (getpkt_or_notif_sane_1): Likewise.
14115
14116 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14117
14118         * build-id.c (build_id_to_debug_bfd): Use std::string.
14119
14120 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14121
14122         * build-id.c (find_separate_debug_file_by_buildid): Return
14123         std::string.
14124         * build-id.h (find_separate_debug_file_by_buildid): Return
14125         std::string.
14126         * coffread.c (coff_symfile_read): Adjust to std::string.
14127         * elfread.c (elf_symfile_read): Adjust to std::string.
14128         * symfile.c (separate_debug_file_exists): Change parameter to
14129         std::string.
14130         (find_separate_debug_file): Return std::string.
14131         (find_separate_debug_file_by_debuglink): Return std::string.
14132         * symfile.h (find_separate_debug_file_by_debuglink): Return
14133         std::string.
14134
14135 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14136
14137         * common/xml-utils.c (xml_escape_text): Move code to...
14138         (xml_escape_text_append): ... this new function.
14139         * common/xml-utils.h (xml_escape_text_append): New declaration.
14140         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
14141         New function.
14142         (_initialize_xml_utils): register test_xml_escape_text_append as
14143         a selftest.
14144
14145 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
14146
14147         * defs.h: Remove MAX_REGISTER_SIZE.
14148         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
14149         asserts.
14150         * python/py-unwind.c (pyuw_sniffer): Likewise.
14151
14152 2018-03-07  Tom Tromey  <tom@tromey.com>
14153
14154         * linux-tdep.c (linux_info_proc): Update.
14155         * target.h (struct target_ops) <to_fileio_readlink>: Return
14156         optional<string>.
14157         (target_fileio_readlink): Return optional<string>.
14158         * remote.c (remote_hostio_readlink): Return optional<string>.
14159         * inf-child.c (inf_child_fileio_readlink): Return
14160         optional<string>.
14161         * target.c (target_fileio_readlink): Return optional<string>.
14162
14163 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
14164
14165         * regcache.c (cooked_read_test): Add riscv to the list of
14166         architectures that have a save_reggroup.
14167
14168 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14169
14170         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
14171         value is not a dynamic class object.
14172
14173 2018-03-06  Tom Tromey  <tom@tromey.com>
14174
14175         * rust-exp.y: Formatting fixes.
14176
14177 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14178
14179         * riscv-tdep.c (riscv_register_name): Remove target description
14180         support.
14181         (riscv_gdbarch_init): Remove target description check.
14182
14183 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14184
14185         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
14186         comment.
14187         * riscv-tdep.h: Likewise.
14188
14189 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14190
14191         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
14192         (riscv_pseudo_register_write): Delete.
14193         (riscv_gdbarch_init): Remove all use of pseudo registers.
14194
14195 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14196
14197         * record-btrace.c (btrace_print_lines): Replace cleanup
14198         parameter with RAII equivalents.
14199         (btrace_insn_history): Replace cleanup with RAII equivalents.
14200         * ui-out.h (make_cleanup_ui_out_list_begin_end,
14201         make_cleanup_ui_out_tuple_begin_end): Remove.
14202         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
14203         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
14204         make_cleanup_ui_out_list_begin_end): Remove.
14205
14206 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14207
14208         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
14209         parameter types to std::vector.  Use bool.
14210         (record_btrace_wait): Replace VEC(tp_t) with
14211         std::vector<thread_info *>.
14212         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
14213
14214 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14215
14216         * record-btrace.c (record_btrace_disable_callback): Remove.
14217         (struct scoped_btrace_disable): New.
14218         (record_btrace_open): Use scoped_btrace_disable.
14219
14220 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14221
14222         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
14223         reading values from registers.
14224
14225 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14226
14227         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
14228         where appropriate.
14229
14230 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14231
14232         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
14233         change parameter type.  Use GDB's print functions, and use
14234         core_addr_to_string where appropriate.
14235         (riscv_push_dummy_call): Use core_addr_to_string where
14236         appropriate, update call to riscv_print_arg_location, and reindent
14237         a few lines.
14238         (riscv_return_value): Update call to riscv_print_arg_location.
14239
14240 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14241             Tim Newsome <tim@sifive.com>
14242             Albert Ou <a0u@eecs.berkeley.edu>
14243             Darius Rad <darius@bluespec.com>
14244
14245         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
14246         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
14247         (ALLDEPFILES): Add riscv-tdep.c
14248         * configure.tgt: Add riscv support.
14249         * riscv-tdep.c: New file.
14250         * riscv-tdep.h: New file.
14251         * NEWS: Mention new target.
14252         * MAINTAINERS: Add entry for riscv.
14253
14254 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14255
14256         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
14257         fields within aggregates.
14258
14259 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
14260
14261         * record-btrace.c (btrace_print_lines): Change type of flags to
14262         gdb_disassembly_flags.
14263
14264 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14265
14266         * fbsd-nat.c: Include "inf-ptrace.h".
14267         (USE_SIGTRAP_SIGINFO): Conditionally define.
14268         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
14269         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
14270         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
14271         function.
14272         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
14273         Likewise.
14274         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
14275         Likewise.
14276         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
14277         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
14278         "supports_stopped_by_hw_breakpoint" target methods.
14279
14280 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14281
14282         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
14283         * fbsd-nat.c (debug_fbsd_nat): New variable.
14284         (show_fbsd_nat_debug): New function.
14285         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
14286         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
14287
14288 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14289
14290         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
14291         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
14292         prototype.
14293         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
14294         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
14295         method.
14296
14297 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14298
14299         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
14300         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
14301
14302 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14303
14304         * charset.c (struct charset_vector): New.
14305         (charsets): Change type to charset_vector.
14306         (find_charset_names): Adjust.
14307         (add_one): Adjust.
14308         (_initialize_charset): Adjust.
14309
14310 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14311
14312         * progspace.h (struct program_space) <deleted_solibs>: Change
14313         type to std::vector<std::string>.
14314         * progspace.c (clear_program_space_solib_cache): Adjust.
14315         * breakpoint.c (print_solib_event): Adjust.
14316         (check_status_catch_solib): Adjust.
14317         * solib.c (update_solib_list): Adjust.
14318         * ui-out.h (class ui_out) <field_string>: New overload.
14319         * ui-out.c (ui_out::field_string): New overload.
14320
14321 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14322
14323         * progspace.h (struct program_space): Add constructor and
14324         destructor, initialize fields.
14325         (add_program_space): Remove.
14326         * progspace.c (add_program_space): Rename to...
14327         (program_space::program_space): ... this.
14328         (release_program_space): Rename to...
14329         (program_space::~program_space): ... this.
14330         (delete_program_space): Use delete to delete program_space.
14331         (initialize_progspace): Use new to allocate program_space.
14332         * inferior.c (add_inferior_with_spaces): Likewise.
14333         (clone_inferior_command): Likewise.
14334         * infrun.c (follow_fork_inferior): Likewise.
14335         (handle_vfork_child_exec_or_exit): Likewise.
14336
14337 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14338
14339         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
14340         (delim_string_to_char_ptr_vec): Return std::vector of
14341         gdb::unique_xmalloc_ptr.
14342         (dirnames_to_char_ptr_vec_append): Take std::vector of
14343         gdb::unique_xmalloc_ptr.
14344         (dirnames_to_char_ptr_vec): Return std::vector of
14345         gdb::unique_xmalloc_ptr.
14346         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
14347         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
14348         (delim_string_to_char_ptr_vec): Return an std::vector of
14349         gdb::unique_xmalloc_ptr, adjust the code.
14350         (dirnames_to_char_ptr_vec_append): Take an std::vector of
14351         gdb::unique_xmalloc_ptr, adjust the code.
14352         (dirnames_to_char_ptr_vec): Return an std::vector of
14353         gdb::unique_xmalloc_ptr, adjust the code.
14354         * auto-load.c (auto_load_safe_path_vec): Change type to
14355         std::vector of gdb::unique_xmalloc_ptr.
14356         (auto_load_expand_dir_vars): Return an std::vector of
14357         gdb::unique_xmalloc_ptr, adjust the code.
14358         (auto_load_safe_path_vec_update): Adjust.
14359         (filename_is_in_auto_load_safe_path_vec): Adjust.
14360         (auto_load_objfile_script_1): Adjust.
14361         * build-id.c (build_id_to_debug_bfd): Adjust.
14362         * linux-thread-db.c (thread_db_load_search): Adjust.
14363         * source.c (add_path): Adjust.
14364         (openp): Adjust.
14365         * symfile.c (find_separate_debug_file): Adjust.
14366         * utils.c (do_free_char_ptr_vec): Remove.
14367         (make_cleanup_free_char_ptr_vec): Remove.
14368
14369 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
14370
14371         PR gdb/22907
14372         * common/pathstuff.c: Conditionally include "<windows.h>".
14373
14374 2018-03-01  Georg Sauthoff  <mail@georg.so>
14375
14376         PR gdb/22888
14377         * gcore.in: Quote variables and switch interpreter to bash.
14378
14379 2018-03-01  Tom Tromey  <tom@tromey.com>
14380
14381         * dwarf2read.c (alloc_discriminant_info): Fix default_index
14382         assertion.  Add assertion for discriminant_index.
14383         (quirk_rust_enum): Use correct base type name in univariant case.
14384
14385 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
14386
14387         * record.c (get_call_history_modifiers): Return a
14388         record_print_flags.
14389         (cmd_record_call_history): Adjust.
14390         * record-btrace.c (record_btrace_call_history): Adjust.
14391         (record_btrace_call_history_range): Adjust.
14392         (record_btrace_call_history_from): Adjust.
14393         * target-debug.h (target_debug_print_record_print_flags): New.
14394         * target-delegates.c: Re-generate.
14395         * target.c (target_call_history): Change flags type.
14396         (target_call_history_from): Likewise.
14397         (target_call_history_range): Likewise.
14398         * target.h (struct target_ops) <target_call_history>: Likewise.
14399         (target_call_history_from): Likewise.
14400         (target_call_history_range): Likewise.
14401
14402 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14403             Simon Marchi  <simon.marchi@polymtl.ca>
14404
14405         * common/common-utils.c: Include "sys/stat.h".
14406         (is_regular_file): Move here from "source.c"; change return
14407         type to "bool".
14408         * common/common-utils.h (is_regular_file): New prototype.
14409         * common/pathstuff.c (contains_dir_separator): New function.
14410         * common/pathstuff.h (contains_dir_separator): New prototype.
14411         * source.c: Don't include "sys/stat.h".
14412         (is_regular_file): Move to "common/common-utils.c".
14413
14414 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14415
14416         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
14417         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
14418         * auto-load.c: Include "common/pathstuff.h".
14419         * common/common-def.h (current_directory): Move here.
14420         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
14421         function.
14422         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
14423         prototype.
14424         * common/pathstuff.c: New file.
14425         * common/pathstuff.h: New file.
14426         * compile/compile.c: Include "common/pathstuff.h".
14427         * defs.h (current_directory): Move to "common/common-defs.h".
14428         * dwarf2read.c: Include "common/pathstuff.h".
14429         * exec.c: Likewise.
14430         * guile/scm-safe-call.c: Likewise.
14431         * linux-thread-db.c: Likewise.
14432         * main.c: Likewise.
14433         * nto-tdep.c: Likewise.
14434         * objfiles.c: Likewise.
14435         * source.c: Likewise.
14436         * symtab.c: Likewise.
14437         * utils.c: Include "common/pathstuff.h".
14438         (gdb_realpath): Move to "common/pathstuff.c".
14439         (gdb_realpath_keepfile): Likewise.
14440         (gdb_abspath): Likewise.
14441         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
14442         (gdb_realpath_keepfile): Likewise.
14443         (gdb_abspath): Likewise.
14444
14445 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
14446
14447         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
14448         wildcard process pid for super_resume for kernels with a
14449         specific bug.
14450
14451 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
14452
14453         * compile/compile.c (get_args): Add additional comments
14454         explaining function.
14455
14456 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
14457             Tom Tromey  <tom@tromey.com>
14458
14459         * target.h (memory_write_request_s): Remove typedef.  Don't define
14460         VEC.
14461         (target_write_memory_blocks): Change argument to std::vector.
14462         (struct memory_write_request): Add constructor.
14463         * target-memory.c (compare_block_starting_address): Return bool.
14464         Change argument types.
14465         (claim_memory): Change arguments to use std::vector.
14466         (split_regular_and_flash_blocks, blocks_to_erase)
14467         (compute_garbled_blocks): Likewise.
14468         (cleanup_request_data, cleanup_write_requests_vector): Remove.
14469         (target_write_memory_blocks): Change argument to std::vector.
14470         * symfile.c (struct load_section_data): Add constructor and
14471         destructor.  Use std::vector for "requests".
14472         (struct load_progress_data): Add initializers.
14473         (load_section_callback): Update.  Use "new".
14474         (clear_memory_write_data): Remove.
14475         (generic_load): Update.
14476
14477 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
14478
14479         * arch/aarch64.h: Use common/tdesc.h.
14480
14481 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14482
14483         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
14484         architecture with a 64-bit ABI.
14485
14486 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14487
14488         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
14489         ahead of target description loading.
14490
14491 2018-02-26  Tom Tromey  <tom@tromey.com>
14492
14493         * stack.c (backtrace_command_1): Update.
14494         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
14495         of "flags".
14496         * python/py-framefilter.c (py_print_frame)
14497         (gdbpy_apply_frame_filter): Change type of "flags".
14498         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
14499         of "flags".
14500         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
14501         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
14502         * extension.h (enum frame_filter_flag): Rename from
14503         frame_filter_flags.
14504         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
14505         (apply_ext_lang_frame_filter): Change type of "flags".
14506         * extension.c (apply_ext_lang_frame_filter): Change type of
14507         "flags".
14508         * extension-priv.h (struct extension_language_ops)
14509         <apply_frame_filter>: Change type of "flags".
14510
14511 2018-02-26  Tom Tromey  <tom@tromey.com>
14512
14513         PR python/16497:
14514         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
14515         off-by-one in py_end computation.
14516         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
14517         PRINT_MORE_FRAMES.
14518         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
14519         constant.
14520
14521 2018-02-26  Tom Tromey  <tom@tromey.com>
14522
14523         * dwarf2read.c (struct variant_field): New.
14524         (struct nextfield) <variant>: New field.
14525         (dwarf2_add_field): Handle DW_TAG_variant_part.
14526         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
14527         discriminated union.
14528         (read_structure_type): Handle DW_TAG_variant_part.
14529         (handle_struct_member_die): New function, extracted from
14530         process_structure_scope.  Handle DW_TAG_variant.
14531         (process_structure_scope): Handle discriminated unions.  Call
14532         handle_struct_member_die.
14533
14534 2018-02-26  Tom Tromey  <tom@tromey.com>
14535
14536         * rust-lang.h (rust_last_path_segment): Declare.
14537         * rust-lang.c (rust_last_path_segment): Now public.  Change
14538         contract.
14539         (struct disr_info): Remove.
14540         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
14541         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
14542         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
14543         (rust_enum_p, rust_enum_variant): New function.
14544         (rust_underscore_fields): Remove "offset" parameter.
14545         (rust_print_enum): New function.
14546         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
14547         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
14548         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
14549         enums.
14550         (rust_internal_print_type): New function, from rust_print_type.
14551         Remove enum code.
14552         (rust_print_type): Call rust_internal_print_type.
14553         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
14554         Update enum handling.
14555         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
14556         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
14557         (rust_union_quirks): New functions.
14558         (process_full_comp_unit, process_full_type_unit): Call
14559         rust_union_quirks.
14560         (process_structure_scope): Update rust_unions if necessary.
14561
14562 2018-02-26  Tom Tromey  <tom@tromey.com>
14563
14564         * value.h (value_union_variant): Declare.
14565         * valops.c (value_union_variant): New function.
14566         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
14567         (struct discriminant_info): New.
14568         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
14569         enumerator.
14570         (struct main_type) <flag_discriminated_union>: New field.
14571
14572 2018-02-26  Tom Tromey  <tom@tromey.com>
14573
14574         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14575         unittests/unpack-selftests.c.
14576         * unittests/unpack-selftests.c: New file.
14577         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
14578
14579 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14580
14581         * dwarf2read.c (struct partial_die_info) <read>: New method.
14582         (read_partial_die): Remove the declaration.
14583         (load_partial_dies): Update.
14584         (partial_die_info::partial_die_info):
14585         (read_partial_die): Change it to partial_die_info::read.
14586
14587 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14588
14589         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
14590         (fixup_partial_die): Remove declaration.
14591         (scan_partial_symbols): Update.
14592         (partial_die_parent_scope): Likewise.
14593         (partial_die_full_name): Likewise.
14594         (fixup_partial_die): Change it to partial_die_info::fixup.
14595
14596 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14597
14598         * dwarf2read.c (read_partial_die): Update the declaration.
14599         (load_partial_dies): Caller update.
14600         (read_partial_die): Remove one argument abbrev_len.
14601
14602 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14603
14604         * dwarf2read.c (struct partial_die_info): Add ctor, delete
14605         assignment operator.
14606         (load_partial_dies): Use ctor and copy ctor.
14607         (read_partial_die): Update.
14608         (dwarf2_cu::find_partial_die): Use ctor.
14609
14610 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14611
14612         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
14613         (find_partial_die_in_comp_unit): Change it to
14614         dwarf2_cu::find_partial_die.
14615         (find_partial_die): Update.
14616
14617 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14618
14619         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
14620         is NULL.
14621
14622 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14623
14624         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
14625
14626 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
14627
14628         * arch/amd64.h: Use common/tdesc.h.
14629         * arch/i386.c: Likewise.
14630         * arch/i386.h: Likewise.
14631         * arch/tic6x.c: Likewise.
14632         * arch/tdesc.h: Move file from here...
14633         * common/tdesc.h: ...to here.
14634         * features/aarch64-core.c: Regenerate.
14635         * features/aarch64-fpu.c: Regenerate.
14636         * features/i386/32bit-avx.c: Regenerate.
14637         * features/i386/32bit-avx512.c: Regenerate.
14638         * features/i386/32bit-core.c: Regenerate.
14639         * features/i386/32bit-linux.c: Regenerate.
14640         * features/i386/32bit-mpx.c: Regenerate.
14641         * features/i386/32bit-pkeys.c: Regenerate.
14642         * features/i386/32bit-sse.c: Regenerate.
14643         * features/i386/64bit-avx.c: Regenerate.
14644         * features/i386/64bit-avx512.c: Regenerate.
14645         * features/i386/64bit-core.c: Regenerate.
14646         * features/i386/64bit-linux.c: Regenerate.
14647         * features/i386/64bit-mpx.c: Regenerate.
14648         * features/i386/64bit-pkeys.c: Regenerate.
14649         * features/i386/64bit-segments.c: Regenerate.
14650         * features/i386/64bit-sse.c: Regenerate.
14651         * features/i386/x32-core.c: Regenerate.
14652         * features/tic6x-c6xp.c: Regenerate.
14653         * features/tic6x-core.c: Regenerate.
14654         * features/tic6x-gp.c: Regenerate.
14655         * target-descriptions.c: Use common/tdesc.h.
14656         * target-descriptions.h: Likewise.
14657
14658 2018-02-24  Tom Tromey  <tom@tromey.com>
14659
14660         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
14661         (try_thread_db_load_from_dir, thread_db_load_search): Use
14662         std::string.
14663         (info_auto_load_libthread_db_compare): Return bool.  Change
14664         argument types.
14665         (info_auto_load_libthread_db): Use std::vector, std::string.
14666         Remove cleanups.
14667
14668 2018-02-24  Tom Tromey  <tom@tromey.com>
14669
14670         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
14671         std::string.
14672         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
14673         std::string*.
14674         * gdbarch.c: Rebuild.
14675         * gdbarch.h: Rebuild.
14676         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
14677         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
14678         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
14679         std::string*.
14680
14681 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
14682
14683         * gdbtypes.h (sect_offset): Change type to uint64_t.
14684         (sect_offset_str): New function.
14685         * dwarf2read.c (create_addrmap_from_aranges): Use
14686         sect_offset_str.
14687         (error_check_comp_unit_head): Likewise.
14688         (create_debug_type_hash_table): Likewise.
14689         (read_cutu_die_from_dwo): Likewise.
14690         (init_cutu_and_read_dies): Likewise.
14691         (init_cutu_and_read_dies_no_follow): Likewise.
14692         (process_psymtab_comp_unit_reader): Likewise.
14693         (partial_die_parent_scope): Likewise.
14694         (peek_die_abbrev): Likewise.
14695         (process_queue): Likewise.
14696         (dwarf2_physname): Likewise.
14697         (read_namespace_alias): Likewise.
14698         (read_import_statement): Likewise.
14699         (create_dwo_cu_reader): Likewise.
14700         (create_cus_hash_table): Likewise.
14701         (lookup_dwo_cutu): Likewise.
14702         (inherit_abstract_dies): Likewise.
14703         (read_func_scope): Likewise.
14704         (read_call_site_scope): Likewise.
14705         (dwarf2_add_member_fn): Likewise.
14706         (read_common_block): Likewise.
14707         (read_module_type): Likewise.
14708         (read_typedef): Likewise.
14709         (read_subrange_type): Likewise.
14710         (load_partial_dies): Likewise.
14711         (read_partial_die): Likewise.
14712         (find_partial_die): Likewise.
14713         (read_str_index): Likewise.
14714         (dwarf2_string_attr): Likewise.
14715         (build_error_marker_type): Likewise.
14716         (lookup_die_type): Likewise.
14717         (dump_die_shallow): Likewise.
14718         (follow_die_ref): Likewise.
14719         (dwarf2_fetch_die_loc_sect_off): Likewise.
14720         (dwarf2_fetch_constant_bytes): Likewise.
14721         (follow_die_sig): Likewise.
14722         (get_signatured_type): Likewise.
14723         (get_DW_AT_signature_type): Likewise.
14724         (dwarf2_find_containing_comp_unit): Likewise.
14725         (set_die_type): Likewise.
14726
14727 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
14728
14729         * arch/aarch64.c: Include "common-defs.h".
14730         * arch/amd64.c: Likewise.
14731         * arch/i386.c: Likewise.
14732
14733 2018-02-21  Tom Tromey  <tom@tromey.com>
14734
14735         * value.h: (extract_field_op): Update.
14736         * eval.c (extract_field_op): Return a const char *.
14737         * expression.h (parse_expression_for_completion): Update.
14738         * completer.c (complete_expression): Update.
14739         (add_struct_fields): Make fieldname const.
14740         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
14741         (mark_completion_tag, parse_exp_in_context_1): Update.
14742         (parse_expression_for_completion): Change "name" to
14743         unique_xmalloc_ptr*.
14744
14745 2018-02-21  Tom Tromey  <tom@tromey.com>
14746
14747         * infcall.c (call_function_by_hand_dummy): Use std::vector.
14748
14749 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14750
14751         * avr-tdep.c (avr_read_pc): Change parameter type to
14752         readable_regcache.
14753         * gdbarch.sh (read_pc): Likewise.
14754         * gdbarch.c: Re-generated.
14755         * gdbarch.h: Re-generated.
14756         * hppa-tdep.c (hppa_read_pc): Change parameter type to
14757         readable_regcache.
14758         * ia64-tdep.c (ia64_read_pc): Likewise.
14759         * mips-tdep.c (mips_read_pc): Likewise.
14760         * spu-tdep.c (spu_read_pc): Likewise.
14761
14762 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14763
14764         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
14765         * regcache-dump.c: New file.
14766         * regcache.c: Move register_dump to regcache-dump.c.
14767         (maintenance_print_registers): Likewise.
14768         (maintenance_print_raw_registers): Likewise.
14769         (maintenance_print_cooked_registers): Likewise.
14770         (maintenance_print_register_groups): Likewise.
14771         (maintenance_print_remote_registers): Likewise.
14772         (_initialize_regcache): Likewise.
14773         * regcache.h (register_dump): Moved from regcache.c.
14774
14775 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14776
14777         * regcache.c (regcache::regcache): Update.
14778         (regcache::invalidate): Move it to detached_regcache::invalidate.
14779         (get_thread_arch_aspace_regcache): Update.
14780         (regcache::raw_update): Update.
14781         (regcache::cooked_read): Remove some code.
14782         (regcache::cooked_read_value): Likewise.
14783         (regcache::raw_write): Remove assert on m_readonly_p.
14784         (regcache::raw_supply_integer): Move it to
14785         detached_regcache::raw_supply_integer.
14786         (regcache::raw_supply_zeroed): Likewise.
14787         * regcache.h (detached_regcache) <raw_supply_integer>: New
14788         declaration.
14789         <raw_supply_zeroed, invalidate>: Likewise.
14790         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
14791         <invalidate>: Likewise.
14792         <m_readonly_p>: Removed.
14793
14794 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14795
14796         * infcmd.c (get_return_value): Let stop_regs point to
14797         get_current_regcache.
14798         * regcache.c (regcache::regcache): Remove.
14799         (register_dump_reg_buffer): New class.
14800         (regcache_print): Adjust.
14801         * regcache.h (regcache): Remove constructors.
14802
14803 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14804
14805         * regcache.c (class register_dump): New class.
14806         (register_dump_regcache, register_dump_none): New class.
14807         (register_dump_remote, register_dump_groups): New class.
14808         (regcache_print): Update.
14809         * regcache.h (regcache_dump_what): Move it to regcache.c.
14810         (regcache) <dump>: Remove.
14811
14812 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14813
14814         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
14815          reg_buffer_rw *.
14816         (jit_unwind_reg_set_impl): Call raw_supply.
14817         (jit_frame_sniffer): Use reg_buffer_rw.
14818         * record-full.c (record_full_core_regbuf): Change its type.
14819         (record_full_core_open_1): Use reg_buffer_rw.
14820         (record_full_close): Likewise.
14821         (record_full_core_fetch_registers): Use regcache->raw_supply.
14822         (record_full_core_store_registers): Likewise.
14823         * regcache.c (regcache::get_register_status): Move it to
14824         reg_buffer.
14825         (regcache_raw_set_cached_value): Remove.
14826         (regcache::raw_set_cached_value): Remove.
14827         (regcache::raw_write): Call raw_supply.
14828         (regcache::raw_supply): Move it to reg_buffer_rw.
14829         * regcache.h (regcache_raw_set_cached_value): Remove.
14830         (reg_buffer_rw): New class.
14831
14832 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14833
14834         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
14835         readonly_detached_regcache.
14836         (dummy_frame_prev_register): Use regcache->cooked_read.
14837         * frame.c (frame_save_as_regcache): Change return type.
14838         (frame_pop): Update.
14839         * frame.h (frame_save_as_regcache): Update declaration.
14840         * inferior.h (get_infcall_suspend_state_regcache): Update
14841         declaration.
14842         * infrun.c (infcall_suspend_state) <registers>: use
14843         readonly_detached_regcache.
14844         (save_infcall_suspend_state): Don't use regcache_dup.
14845         (get_infcall_suspend_state_regcache): Change return type.
14846         * linux-fork.c (struct fork_info) <savedregs>: Change to
14847         readonly_detached_regcache.
14848         <pc>: New field.
14849         (fork_save_infrun_state): Don't use regcache_dup.
14850         (info_checkpoints_command): Adjust.
14851         * mi/mi-main.c (register_changed_p): Update declaration.
14852         (mi_cmd_data_list_changed_registers): Use
14853         readonly_detached_regcache.
14854         (register_changed_p): Change parameter type to
14855         readonly_detached_regcache.
14856         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
14857         readonly_detached_regcache.
14858         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
14859         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
14860         New.
14861         (regcache::save): Move it to reg_buffer.
14862         (regcache::restore): Change parameter type.
14863         (regcache_dup): Remove.
14864         * regcache.h (reg_buffer) <save>: New method.
14865         (readonly_detached_regcache): New class.
14866         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
14867         readonly_detached_regcache.
14868         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
14869
14870 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14871
14872         * frame.c (frame_save_as_regcache): Use regcache method save.
14873         (frame_pop): Use regcache method restore.
14874         * infrun.c (restore_infcall_suspend_state): Likewise.
14875         * linux-fork.c (fork_load_infrun_state): Likewise.
14876         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
14877         save.
14878         * regcache.c (regcache_save): Remove.
14879         (regcache::restore): More asserts.
14880         (regcache_cpy): Remove.
14881         * regcache.h (regcache_save): Remove the declaration.
14882         (regcache::restore): Move from private to public.
14883         Remove the friend declaration of regcache_cpy.
14884         (regcache_cpy): Remove declaration.
14885
14886 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14887
14888         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
14889         parameter type to 'readable_regcache *'.
14890         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14891         * arm-tdep.c (arm_neon_quad_read): Likewise.
14892         (arm_pseudo_read): Likewise.
14893         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14894         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14895         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14896         * gdbarch.c: Re-generated.
14897         * gdbarch.h: Re-generated.
14898         * gdbarch.sh (pseudo_register_read): Change parameter type to
14899         'readable_regcache *'.
14900         (pseudo_register_read_value): Likewise.
14901         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
14902         (h8300_pseudo_register_read): Likewise.
14903         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
14904         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14905         (i386_pseudo_register_read_into_value): Likewise.
14906         (i386_pseudo_register_read_value): Likewise.
14907         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
14908         declaration.
14909         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
14910         * m32c-tdep.c (m32c_raw_read): Likewise.
14911         (m32c_read_flg): Likewise.
14912         (m32c_banked_register): Likewise.
14913         (m32c_banked_read): Likewise.
14914         (m32c_sb_read): Likewise.
14915         (m32c_part_read): Likewise.
14916         (m32c_cat_read): Likewise.
14917         (m32c_r3r2r1r0_read): Likewise.
14918         (m32c_pseudo_register_read): Likewise.
14919         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14920         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14921         (mep_pseudo_cr64_read): Likewise.
14922         (mep_pseudo_register_read): Likewise.
14923         * mips-tdep.c (mips_pseudo_register_read): Likewise.
14924         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14925         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14926         * regcache.c (regcache::raw_read): Move it to readable_regcache.
14927         (regcache::cooked_read): Likewise.
14928         (regcache::cooked_read_value): Likewise.
14929         (regcache_cooked_read_signed):
14930         (regcache::cooked_read): Likewise.
14931         * regcache.h (readable_regcache): New class.
14932         (regcache): Inherit readable_regcache.  Move some methods to
14933         readable_regcache.
14934         * rl78-tdep.c (rl78_pseudo_register_read): Change
14935         parameter type to 'readable_regcache *'.
14936         * rs6000-tdep.c (do_regcache_raw_read): Remove.
14937         (e500_pseudo_register_read): Change parameter type to
14938         'readable_regcache *'.
14939         (dfp_pseudo_register_read): Likewise.
14940         (vsx_pseudo_register_read): Likewise.
14941         (efpr_pseudo_register_read): Likewise.
14942         * s390-tdep.c (s390_pseudo_register_read): Likewise.
14943         * sh-tdep.c (sh_pseudo_register_read): Likewise.
14944         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
14945         (sh64_pseudo_register_read): Likewise.
14946         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
14947         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14948         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
14949         (spu_pseudo_register_read): Likewise.
14950         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14951         (xtensa_pseudo_register_read): Likewise.
14952
14953 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14954
14955         * regcache.c (regcache::regcache): Call reg_buffer ctor.
14956         (regcache::arch): Move it to reg_buffer::arch.
14957         (regcache::register_buffer): Likewise.
14958         (regcache::assert_regnum): Likewise.
14959         (regcache::num_raw_registers): Likewise.
14960         * regcache.h (reg_buffer): New class.
14961         (regcache): Inherit reg_buffer.
14962
14963 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
14964
14965         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
14966         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
14967
14968 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
14969
14970         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
14971
14972 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
14973
14974         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
14975         (SFILES): Remove common/*.c files.
14976         (COMMON_OBS): Remove some *.o files built from common/*.c files.
14977         * common/common.host: Add common reference.
14978         * configure.ac: Likewise.
14979         * configure: Regenerate.
14980
14981 2018-02-16  Yao Qi  <yao.qi@linaro.org>
14982
14983         * block.c (block_namespace_info): Inherit allocate_on_obstack.
14984         (block_initialize_namespace): Use new.
14985         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
14986         (dwarf2_free_objfile): Use delete.
14987         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
14988         (copy_type_recursive): Use new.
14989         * gdb_obstack.h (allocate_on_obstack): New.
14990
14991 2018-02-15  Yao Qi  <yao.qi@linaro.org>
14992
14993         PR gdb/22849
14994         * inferior.c (exit_inferior_1): Reset inf->control.
14995
14996 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
14997
14998         * ada-lang.c (ada_to_fixed_value_create): Delete advance
14999         declaration.
15000
15001 2018-02-14  Pedro Alves  <palves@redhat.com>
15002
15003         * frame-unwind.c (frame_unwind_try_unwinder): Always call
15004         frame_cleanup_after_sniffer on exception.
15005
15006 2018-02-14  Tom Tromey  <tom@tromey.com>
15007
15008         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
15009         const.
15010         (solib_bfd_open): Make pathname const.
15011         * solib.c (solib_bfd_open): Make pathname const.
15012         * solib-spu.c (spu_bfd_fopen): Make name const.
15013         (spu_bfd_open): Make pathname const.
15014         * solib-darwin.c (darwin_bfd_open): Make pathname const.
15015         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
15016
15017 2018-02-14  Tom Tromey  <tom@tromey.com>
15018
15019         * symfile.c (symfile_bfd_open): Update.
15020         * source.h (openp, source_full_path_of, find_and_open_source):
15021         Change argument type to unique_xmalloc_ptr.
15022         * source.c (openp): Take a unique_xmalloc_ptr.
15023         (source_full_path_of, find_and_open_source): Likewise.
15024         (open_source_file, symtab_to_fullname): Update.
15025         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
15026         unique_xmalloc_ptr.
15027         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
15028         (exec_file_find): Update.
15029         * psymtab.c (psymtab_to_fullname): Update.
15030         * nto-tdep.h (nto_find_and_open_solib): Update.
15031         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
15032         unique_xmalloc_ptr.
15033         * exec.c (exec_file_attach): Update.
15034         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
15035         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
15036
15037 2018-02-14  Tom Tromey  <tom@tromey.com>
15038
15039         * solib.c: Include source.h.
15040         * nto-tdep.c: Include source.h.
15041         * mi/mi-cmd-env.c: Include source.h.
15042         * infcmd.c: Include source.h.
15043         * exec.c: Include source.h.
15044         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
15045         (add_path, directory_switch, source_path, init_source_path): Move
15046         declarations...
15047         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
15048         (add_path, directory_switch, source_path, init_source_path):
15049         ...here.
15050
15051 2018-02-14  Tom Tromey  <tom@tromey.com>
15052
15053         * solist.h (exec_file_find, solib_find): Return
15054         unique_xmalloc_ptr.
15055         (solib_bfd_fopen): Take a const char *.
15056         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
15057         (exec_file_find, solib_find): Likewise.
15058         (solib_bfd_fopen): Do not take ownership of "pathname".
15059         (solib_bfd_open): Use unique_xmalloc_ptr.
15060         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
15061         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
15062         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
15063         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
15064
15065 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
15066
15067         * ada-lang.c (name_match_type_from_name): Remove reference to
15068         ada_name_for_lookup in function's documentation.
15069         * ada-lang.h (ada_name_for_lookup): Delete declaration.
15070
15071 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
15072
15073         * defs.h (enum openp_flags): New enum.
15074         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
15075         Move to enum openp_flags.
15076         (openp_flags): New enum flags.
15077         (openp): Change parameter type to openp_flags.
15078         * source.c (openp): Change parameter type to openp_flags.
15079         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
15080         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
15081
15082 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
15083
15084         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
15085         per-command.
15086
15087 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
15088
15089         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
15090         into...
15091         (class dwarf2_queue_guard): ...the destructor of this new class.
15092         (dw2_do_instantiate_symtab): Create instance of the new class
15093         dwarf2_queue_guard, remove cleanup.
15094
15095 2018-02-09  Tom Tromey  <tom@tromey.com>
15096
15097         * source.c (find_source_lines): Don't reference past the end of
15098         the vector.
15099
15100 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15101
15102         * remote.c (remote_btrace_maybe_reopen): Change error message.
15103         * btrace.c (btrace_enable): Likewise.
15104         (parse_xml_btrace): Likewise.
15105         (parse_xml_btrace_conf): Likewise.
15106
15107 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15108
15109         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
15110         (linux_enable_pt, linux_enable_bts): Call
15111         diagnose_perf_event_open_fail.
15112
15113 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15114
15115         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
15116         Remove parameter and change return type.  Update callers.  Move it.
15117         (linux_enable_bts, linux_enable_pt): Improve error message.
15118         (linux_enable_pt): Remove zero buffer size check.
15119         (linux_enable_btrace): Improve error messages.  Remove NULL return
15120         check.
15121
15122 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15123
15124         * btrace.c (btrace_enable): Remove target_supports_btrace call.
15125         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
15126         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
15127         (linux_supports_pt, linux_supports_btrace): Remove.
15128         (linux_enable_bts): Call cpu_supports_bts.
15129         * nat/linux-btrace.h (linux_supports_btrace): Remove.
15130         * remote.c (remote_supports_btrace): Remove.
15131         (init_remote_ops): Remove remote_supports_btrace.
15132         * target-delegates.c: Regenerated.
15133         * target.c (target_supports_btrace): Remove.
15134         * target.h (target_ops) <to_supports_btrace>: Remove
15135         (target_supports_btrace): Remove.
15136         * x86-linux-nat.c (x86_linux_create_target): Remove
15137         linux_supports_btrace.
15138
15139 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15140
15141         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
15142         btrace failed.
15143         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
15144         exception and use message in own exception.
15145
15146 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15147
15148         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
15149         (perf_event_pt_event_type): Use gdb_file_up.
15150         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
15151         scoped_fd, and scoped_mmap.
15152
15153 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15154
15155         * common/scoped_mmap.h: New.
15156         * unittests/scoped_mmap-selftest.c: New.
15157         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
15158         unittests/scoped_mmap-selftest.c.
15159
15160 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15161
15162         * common/scoped_fd.h: New.
15163         * unittests/scoped_fd-selftest.c: New.
15164         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
15165         unittests/scoped_fd-selftest.c.
15166
15167 2018-02-09  Tom Tromey  <tom@tromey.com>
15168
15169         * auto-load.c (auto_load_section_scripts): Use
15170         gdb::unique_xmalloc_ptr.
15171
15172 2018-02-09  Tom Tromey  <tom@tromey.com>
15173
15174         * auto-load.c (execute_script_contents): Use std::string.
15175
15176 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
15177
15178         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
15179         Python function, rather than a new command.
15180
15181 2018-02-08  Tom Tromey  <tom@tromey.com>
15182
15183         * solib.c (solib_find_1): Use std::string.
15184         (solib_bfd_fopen): Use unique_xmalloc_ptr.
15185
15186 2018-02-08  Tom Tromey  <tom@tromey.com>
15187
15188         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
15189
15190 2018-02-08  Tom Tromey  <tom@tromey.com>
15191
15192         * source.c (find_source_lines): Use gdb::def_vector.
15193
15194 2018-02-08  Tom Tromey  <tom@tromey.com>
15195
15196         * macrocmd.c (struct temporary_macro_definition): New.
15197         (macro_define_command): Use temporary_macro_definition.  Remove
15198         cleanups.
15199         (free_macro_definition_ptr): Remove.
15200
15201 2018-02-08  Tom Tromey  <tom@tromey.com>
15202
15203         * macroexp.c (maybe_expand): Use std::string.
15204
15205 2018-02-08  Tom Tromey  <tom@tromey.com>
15206
15207         * macroexp.c (struct macro_buffer): Add initializers for some
15208         members.
15209         (init_buffer, init_shared_buffer, free_buffer)
15210         (free_buffer_return_text): Remove.
15211         (macro_buffer): New constructors.
15212         (~macro_buffer): New destructor.
15213         (macro_buffer::set_shared): New method.
15214         (macro_buffer::resize_buffer, macro_buffer::appendc)
15215         (macro_buffer::appendmem): Now methods, not free functions.
15216         (set_token, append_tokens_without_splicing, stringify)
15217         (macro_stringify): Update.
15218         (gather_arguments): Change return type.  Remove argc_p argument,
15219         add args_ptr argument.  Use std::vector.
15220         (substitute_args): Remove argc argument.  Accept std::vector.
15221         (expand): Update.  Use std::vector.
15222         (scan, macro_expand, macro_expand_next): Update.
15223
15224 2018-02-08  Tom Tromey  <tom@tromey.com>
15225
15226         * symtab.c (default_collect_symbol_completion_matches_break_on):
15227         Use unique_xmalloc_ptr.
15228         * macroscope.h: (sal_macro_scope, user_macro_scope)
15229         (default_macro_scope): Return unique_xmalloc_ptr.
15230         * macroscope.c (sal_macro_scope, user_macro_scope)
15231         (default_macro_scope): Return unique_xmalloc_ptr.
15232         * macroexp.h (macro_expand, macro_expand_once): Return
15233         unique_xmalloc_ptr.
15234         * macroexp.c (macro_expand, macro_expand_once): Return
15235         unique_xmalloc_ptr.
15236         * macrocmd.c (macro_expand_command, macro_expand_once_command)
15237         (info_macro_command, info_macros_command): Use
15238         unique_xmalloc_ptr.
15239         * compile/compile-c-support.c (write_macro_definitions): Use
15240         unique_xmalloc_ptr.
15241         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
15242
15243 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
15244
15245         * value.c (value_static_field): Assign field type instead of
15246         containing type when returning an optimized out value.
15247
15248 2018-02-06  Yao Qi  <yao.qi@linaro.org>
15249
15250         * ft32-tdep.c (ft32_read_pc): Remove.
15251         (ft32_write_pc): Remove.
15252         (ft32_gdbarch_init): Update.
15253         * m32r-tdep.c (m32r_read_pc): Remove.
15254         (m32r_gdbarch_init): Update.
15255         * mep-tdep.c (mep_read_pc): Remove.
15256         (mep_gdbarch_init): Update.
15257         * microblaze-tdep.c (microblaze_write_pc): Remove.
15258         (microblaze_gdbarch_init): Update.
15259         * mn10300-tdep.c (mn10300_read_pc): Remove.
15260         (mn10300_write_pc): Remove.
15261         (mn10300_gdbarch_init): Update.
15262         * moxie-tdep.c (moxie_read_pc): Remove.
15263         (moxie_write_pc): Remove.
15264         (moxie_gdbarch_init): Update.
15265
15266 2018-02-06  Yao Qi  <yao.qi@linaro.org>
15267
15268         * expprint.c (print_subexp_standard): Handle
15269         OP_F77_UNDETERMINED_ARGLIST.
15270         (dump_subexp_body_standard): Likewise.
15271
15272 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
15273
15274         * target-descriptions.c (tdesc_element_visitor) Add empty
15275         implementations.
15276         (tdesc_type): Move make_gdb_type from here.
15277         (tdesc_type_builtin): Likewise.
15278         (tdesc_type_vector): Likewise.
15279         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
15280         (make_gdb_type_struct): Move from tdesc_type_with_fields.
15281         (make_gdb_type_union): Likewise.
15282         (make_gdb_type_flags): Likewise.
15283         (make_gdb_type_enum): Likewise.
15284         (make_gdb_type): New function.
15285         (tdesc_register_type): Use static make_gdb_type.
15286
15287 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
15288
15289         * infcmd.c (default_print_one_register_info): Align natural-format
15290         column values consistently one under another.
15291         (pad_to_column): New function.
15292
15293 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
15294
15295         * dwarf2read.c (dwarf2_physname): Move commment.
15296
15297 2018-02-01  Leszek Swirski  <leszeks@google.com>
15298
15299         * varobj.c (varobj_formatted_print_options): Allow recursive
15300         pretty printing if pretty printing is enabled.
15301
15302 2018-02-01  Leszek Swirski  <leszeks@google.com>
15303
15304         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
15305         names after a structop as a filename.
15306
15307 2018-02-01  Yao Qi  <yao.qi@linaro.org>
15308
15309         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
15310         (arm_record_coproc_data_proc): Likewise.
15311
15312 2018-02-01  Yao Qi  <yao.qi@linaro.org>
15313
15314         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
15315
15316 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
15317
15318         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
15319         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
15320
15321 2018-01-31  Pedro Alves  <palves@redhat.com>
15322
15323         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
15324         * inflow.c (child_terminal_save_inferior): Wrap reference to
15325         tcgetpgrp in HAVE_TERMIOS_H.
15326         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
15327         _WIN32.
15328         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
15329         always iterate over all inferiors.
15330         (gdbsim_cntrl_c): Adjust.
15331         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
15332
15333 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15334
15335         * gdbtypes.c (lookup_array_range_type): Make sure the array's
15336         index type is objfile-owned if the element type is as well.
15337
15338 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15339
15340         GDB 8.1 released.
15341
15342 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15343
15344         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
15345         "features/s390x-linux64.c".
15346         (_initialize_s390_linux_tdep): Remove initialization of tdescs
15347         s390_linux32 and s390x_linux64.
15348         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
15349         default tdesc.
15350         * s390-tdep.c: Include "features/s390-linux32.c" and
15351         "features/s390x-linux64.c".
15352         (s390_tdesc_valid): Add check for tdesc_has_registers.
15353         (s390_gdbarch_init): Make sure there is always a valid tdesc.
15354         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
15355         tdesc_s390x_linux64.
15356         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
15357         tdesc_s390x_linux64 to...
15358         * s390-tdep.h: ...here.
15359
15360 2018-01-30  Pedro Alves  <palves@redhat.com>
15361
15362         PR gdb/13211
15363         * config.in, configure: Regenerate.
15364         * configure.ac: Check for getpgid.
15365         * go32-nat.c (go32_pass_ctrlc): New.
15366         (go32_target): Install it.
15367         * inf-child.c (inf_child_target): Install
15368         child_terminal_save_inferior, child_pass_ctrlc and
15369         child_interrupt.
15370         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
15371         (inf_ptrace_target): No longer install it.
15372         * infcmd.c (interrupt_target_1): Adjust.
15373         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
15374         (child_interrupt): Declare.
15375         (inferior::terminal_state): New.
15376         * inflow.c (struct terminal_info): Update comments.
15377         (inferior_process_group): Delete.
15378         (terminal_is_ours): Delete.
15379         (gdb_tty_state): New.
15380         (child_terminal_init): Adjust.
15381         (is_gdb_terminal, sharing_input_terminal_1)
15382         (sharing_input_terminal): New functions.
15383         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
15384         Set the process's actual process group in the foreground if
15385         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
15386         mark terminal as the inferior's if not sharing GDB's terminal.
15387         Don't check attach_flag.
15388         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
15389         pass down a target_terminal_state.
15390         (child_terminal_save_inferior): New, factored out from ...
15391         (child_terminal_ours_1): ... this.  Handle
15392         target_terminal_state::is_ours_for_output.
15393         (child_interrupt, child_pass_ctrlc): New.
15394         (inflow_inferior_exit): Clear the inferior's terminal_state.
15395         (copy_terminal_info): Copy the inferior's terminal state.
15396         (_initialize_inflow): Remove reference to terminal_is_ours.
15397         * inflow.h (inferior_process_group): Delete.
15398         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
15399         * procfs.c (procfs_target): Don't install procfs_interrupt.
15400         (procfs_interrupt): Delete.
15401         * remote.c (remote_serial_quit_handler): Adjust.
15402         (remote_interrupt): Remove ptid parameter.  Adjust.
15403         * target-delegates.c: Regenerate.
15404         * target.c: Include "terminal.h".
15405         (target_terminal::terminal_state): Rename to ...
15406         (target_terminal::m_terminal_state): ... this.
15407         (target_terminal::init): Adjust.
15408         (target_terminal::inferior): Adjust to per-inferior
15409         terminal_state.
15410         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
15411         (target_terminal::ours, target_terminal::ours_for_output): Use
15412         target_terminal_is_ours_kind.
15413         (target_interrupt): Remove ptid parameter.  Adjust.
15414         (default_target_pass_ctrlc): Adjust.
15415         * target.h (target_ops::to_terminal_save_inferior): New field.
15416         (target_ops::to_interrupt): Remove ptid_t parameter.
15417         (target_interrupt): Remove ptid_t parameter.  Update comment.
15418         (target_pass_ctrlc): Update comment.
15419         * target/target.h (target_terminal_state): New scoped enum,
15420         factored out of ...
15421         (target_terminal::terminal_state): ... here.
15422         (target_terminal::inferior): Update comments.
15423         (target_terminal::restore_inferior): New.
15424         (target_terminal::is_inferior, target_terminal::is_ours)
15425         (target_terminal::is_ours_for_output): Adjust.
15426         (target_terminal::scoped_restore_terminal_state): Adjust to
15427         rename, and call restore_inferior() instead of inferior().
15428         (target_terminal::scoped_restore_terminal_state::m_state): Change
15429         type.
15430         (target_terminal::terminal_state): Rename to ...
15431         (target_terminal::m_terminal_state): ... this and change type.
15432
15433 2018-01-30  Pedro Alves  <palves@redhat.com>
15434
15435         * linux-nat.c (wait_for_signal): New function.
15436         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
15437         directly.
15438         (async_terminal_is_ours)
15439         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
15440         (linux_nat_add_target): Don't override
15441         to_terminal_inferior/to_terminal_ours.
15442
15443 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
15444
15445         * remote.c (remote_follow_fork): Don't call "detach_inferior".
15446
15447 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
15448
15449         * dwarf2read.c (free_dwo_files): Add forward-declaration.
15450         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
15451         dwarf2_per_objfile_free here.
15452         (dwarf2_per_objfile_free): Remove.
15453         (_initialize_dwarf2_read): Don't register
15454         dwarf2_per_objfile_free as a registry cleanup.
15455
15456 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
15457
15458         Avoid compilation errors in MinGW native builds
15459
15460         The error is triggered by including python-internal.h, and the
15461         error message is:
15462
15463              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
15464                       from build-gnulib/import/math.h:27,
15465                       from d:/usr/Python26/include/pyport.h:235,
15466                       from d:/usr/Python26/include/Python.h:58,
15467                       from python/python-internal.h:94,
15468                       from python/py-arch.c:24:
15469              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
15470         using ::hypot;
15471                 ^~~~~
15472
15473         This happens because Python headers define 'hypot' to expand t
15474         '_hypot' in the Windows builds.
15475         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
15476         'hypoth'.  This avoids a compilation error.
15477
15478 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15479
15480         * MAINTAINERS (Write After Approval): Fix ordering.
15481
15482 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15483
15484         * MAINTAINERS (Write After Approval): Add Alan Hayward.
15485
15486 2018-01-26  Alan Modra  <amodra@gmail.com>
15487
15488         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
15489         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
15490         Remove nop.  Make const.  Comment.
15491         (powerpc32_plt_stub_so_2): New.
15492         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
15493         Correct count.  Update uses.
15494         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
15495         Move common code reading PLT entry word.  Correct
15496         powerpc32_plt_stub PLT address calculation.
15497         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
15498         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
15499         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
15500         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
15501         (ppc64_standard_linkage8): Likewise.
15502         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
15503         Correct insns description.
15504         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
15505
15506 2018-01-24  Pedro Alves  <palves@redhat.com>
15507
15508         GCC PR libstdc++/83906
15509         * gdbtypes.c (operator==(const dynamic_prop &,
15510         const dynamic_prop &)): New.
15511         (operator==(const range_bounds &, const range_bounds &)): New.
15512         (check_types_equal): Use them instead of memcmp.
15513         * gdbtypes.h (operator==(const dynamic_prop &,
15514         const dynamic_prop &)): Declare.
15515         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
15516         (operator==(const range_bounds &, const range_bounds &)): Declare.
15517         (operator!=(const range_bounds &, const range_bounds &)): Declare.
15518
15519 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15520
15521         * s390-linux-tdep.c (s390_record_address_mask)
15522         (s390_record_calc_disp_common, s390_record_calc_disp)
15523         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15524         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15525         (s390_process_record): Move to s390-tdep.c.
15526         (s390_linux_init_abi_any): Adjust.
15527         * s390-tdep.c (s390_record_address_mask)
15528         (s390_record_calc_disp_common, s390_record_calc_disp)
15529         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15530         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15531         (s390_process_record): Moved from s390-linux-tdep.c
15532         (s390_gdbarch_init): Adjust.
15533
15534 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15535
15536         * s390-linux-nat.c (s390-tdep.h): New include.
15537         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
15538         (HFILES_NO_SRCDIR): Add s390-tdep.h.
15539         (ALLDEPFILES): Add s390-tdep.c.
15540         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
15541         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
15542         * s390-tdep.h: ...this.  New file.
15543         * s390-linux-tdep.c (s390-tdep.h): New include.
15544         (_initialize_s390_tdep): Rename to...
15545         (_initialize_s390_linux_tdep): ...this and adjust.
15546         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
15547         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
15548         s390-tdep.h.
15549         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
15550         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
15551         (s390_is_partial_instruction, s390_software_single_step)
15552         (is_non_branch_ril, s390_displaced_step_copy_insn)
15553         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
15554         (s390_prologue_data, s390_addr, s390_store, s390_load)
15555         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
15556         (s390_register_call_saved, s390_guess_tracepoint_registers)
15557         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
15558         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
15559         (s390_pseudo_register_name, s390_pseudo_register_type)
15560         (s390_pseudo_register_read, s390_pseudo_register_write)
15561         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
15562         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
15563         (s390_addr_bits_remove, s390_address_class_type_flags)
15564         (s390_address_class_type_flags_to_name)
15565         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
15566         (s390_function_arg_float, s390_function_arg_vector)
15567         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
15568         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
15569         (s390_frame_align, s390_register_return_value, s390_return_value)
15570         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
15571         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
15572         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
15573         (s390_trad_frame_prev_register, s390_unwind_cache)
15574         (s390_prologue_frame_unwind_cache)
15575         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
15576         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
15577         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
15578         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
15579         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
15580         (s390_frame_base_address, s390_local_base_address)
15581         (s390_frame_base, s390_gcc_target_options)
15582         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
15583         (s390_validate_reg_range, s390_tdesc_valid)
15584         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
15585         * s390-tdep.c: ...this.  New file.
15586
15587 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15588
15589         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
15590         (s390_process_record, s390_gdbarch_tdep_alloc)
15591         (s390_linux_init_abi_any): Use/set new hook.
15592
15593 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15594
15595         * s390-linux-tdep.c (osabi.h): New include.
15596         (s390_linux_init_abi_31, s390_linux_init_abi_64)
15597         (s390_linux_init_abi_any): New functions.
15598         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
15599
15600 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15601
15602         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
15603         tdesc_has_registers check
15604
15605 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15606
15607         * s390-linux-tdep.c (s390_tdesc_valid): New function.
15608         (s390_validate_reg_range): New macro.
15609         (s390_gdbarch_init): Adjust.
15610
15611 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15612
15613         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
15614         (s390_gdbarch_tdep_alloc): Adjust.
15615         (s390_gdbarch_init): Adjust.
15616
15617 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15618
15619         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
15620         <have_tdb>: Change type to bool.
15621         (s390_gdbarch_tdep_alloc): Adjust.
15622         (s390_gdbarch_init): Adjust.
15623
15624 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15625
15626         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
15627         (gdbarch_tdep) <have_upper, have_vx>: New fields.
15628         (s390_gdbarch_tdep_alloc): New function.
15629         (s390_gdbarch_init): Allocate tdep at start and use its fields
15630         instead of separate variables.
15631
15632 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15633
15634         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
15635         when looking for cached gdbarch and add comment for remaining.
15636
15637 2018-01-22  Pedro Alves  <palves@redhat.com>
15638             Sergio Durigan Junior  <sergiodj@redhat.com>
15639
15640         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
15641         case.
15642
15643 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
15644
15645         * MAINTAINERS: Update my company e-mail address.
15646
15647 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15648
15649         * regcache.c (cooked_write_test): New function.
15650         (_initialize_regcache): Register the test.
15651
15652 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15653
15654         * ia64-tdep.c (ia64_pseudo_register_read): Call
15655         regcache->cooked_read instead of regcache_cooked_read_unsigned.
15656         * m32c-tdep.c (m32c_cat_read): Likewise.
15657         (m32c_r3r2r1r0_read): Likewise.
15658         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
15659         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
15660
15661 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15662
15663         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
15664         method raw_read instead of regcache_raw_read.
15665         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
15666         * arm-tdep.c (arm_neon_quad_read): Likewise.
15667         * avr-tdep.c (avr_pseudo_register_read): Likewise.
15668         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
15669         * frv-tdep.c (frv_pseudo_register_read): Likewise.
15670         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
15671         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
15672         (i386_pseudo_register_read_into_value): Likewise.
15673         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
15674         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
15675         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
15676         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
15677         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
15678         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
15679         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
15680         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
15681         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
15682
15683 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15684
15685         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
15686         * configure.tgt: Remove target mt.
15687         * mt-tdep.c: Remove.
15688         * regcache.c (cooked_read_test): Remove the check for mt.
15689
15690 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15691
15692         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
15693         instead of gdbarch_pseudo_register_read_value.
15694
15695 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15696
15697         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
15698         language is Ada.
15699
15700 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15701
15702         * linespec.c (create_sals_line_offset): Remove code that preserved
15703         the symtab_and_line's line number.
15704
15705 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15706
15707         * varobj.c (varobj_create): Don't set valid_block when creating a
15708         floating varobj.
15709
15710 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15711
15712         * varobj.c (varobj_create): Remove out of date comment.
15713
15714 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15715
15716         PR mi/20395
15717         * ada-exp.y (write_var_from_sym): Pass extra parameter when
15718         updating innermost block.
15719         * parse.c (innermost_block_tracker::update): Take extra type
15720         parameter, and check types match before updating innermost block.
15721         (write_dollar_variable): Update innermost block for registers.
15722         * parser-defs.h (enum innermost_block_tracker_type): New enum.
15723         (innermost_block_tracker::innermost_block_tracker): Initialise
15724         m_types member.
15725         (innermost_block_tracker::reset): Take type parameter.
15726         (innermost_block_tracker::update): Take type parameter, and pass
15727         type through as needed.
15728         (innermost_block_tracker::m_types): New member.
15729         * varobj.c (varobj_create): Pass type when reseting innermost
15730         block.
15731
15732 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15733
15734         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
15735         * ada-lang.c (resolve_subexp): Likewise.
15736         * breakpoint.c (set_breakpoint_condition) Likewise.
15737         (watch_command_1) Likewise.
15738         * c-exp.y (variable): Likewise.
15739         * d-exp.y (PrimaryExpression): Likewise.
15740         * f-exp.y (variable): Likewise.
15741         * go-exp.y (variable): Likewise.
15742         * m2-exp.y (variable): Likewise.
15743         * objfiles.c (objfile::~objfile): Likewise.
15744         * p-exp.y (variable): Likewise.
15745         * parse.c (innermost_block): Change type.
15746         * parser-defs.h (class innermost_block_tracker): New.
15747         (innermost_block): Change to innermost_block_tracker.
15748         * printcmd.c (display_command): Switch to innermost_block API.
15749         (do_one_display): Likewise.
15750         * rust-exp.y (do_one_display): Likewise.
15751         * symfile.c (clear_symtab_users): Likewise.
15752         * varobj.c (varobj_create): Switch to innermost_block API, replace
15753         use of innermost_block with block stored on varobj object.
15754
15755 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15756
15757         * expression.h (innermost_block): Remove declaration.
15758         * varobj.c: Add 'parser-defs.h' include.
15759
15760 2018-01-19  Tom Tromey  <tom@tromey.com>
15761
15762         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
15763         symbols in the static and global blocks.
15764
15765 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
15766
15767         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
15768         gdb_ptrace.h, and move including gdb_wait.h ...
15769         * nat/linux-ptrace.h: ... to here.
15770
15771 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15772
15773         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
15774         inf_ptrace_detach_success.
15775         (inf_ptrace_detach_success): Add inferior parameter, use it
15776         instead of inferior_ptid, pass it to detach_inferior.
15777         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
15778         parameter.
15779         * inferior.c (detach_inferior): Add overload that takes an
15780         inferior object.
15781         * inferior.h (detach_inferior): Likewise.
15782         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
15783         use inferior_ptid, adjust call to inf_ptrace_detach_success.
15784         * linux-thread-db.c (thread_db_detach): Use inf parameter.
15785
15786 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15787
15788         * target.h (struct target_ops) <to_detach>: Add inferior
15789         parameter.
15790         (target_detach): Likewise.
15791         * target.c (dispose_inferior): Pass inferior down.
15792         (target_detach): Pass inferior down.  Assert that it is equal to
15793         the current inferior.
15794         * aix-thread.c (aix_thread_detach): Pass inferior down.
15795         * corefile.c (core_file_command): Pass current_inferior() down.
15796         * corelow.c (core_detach): Add inferior parameter.
15797         * darwin-nat.c (darwin_detach): Likewise.
15798         * gnu-nat.c (gnu_detach): Likewise.
15799         * inf-ptrace.c (inf_ptrace_detach): Likewise.
15800         * infcmd.c (detach_command): Pass current_inferior() down to
15801         target_detach.
15802         * infrun.c (follow_fork_inferior): Pass parent_inf to
15803         target_detach.
15804         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
15805         target_detach.
15806         * linux-nat.c (linux_nat_detach): Add inferior parameter.
15807         * linux-thread-db.c (thread_db_detach): Likewise.
15808         * nto-procfs.c (procfs_detach): Likewise.
15809         * procfs.c (procfs_detach): Likewise.
15810         * record.c (record_detach): Likewise.
15811         * record.h (struct inferior): Forward-declare.
15812         (record_detach): Add inferior parameter.
15813         * remote-sim.c (gdbsim_detach): Likewise.
15814         * remote.c (remote_detach_1): Likewise.
15815         (remote_detach): Likewise.
15816         (extended_remote_detach): Likewise.
15817         * sol-thread.c (sol_thread_detach): Likewise.
15818         * target-debug.h (target_debug_print_inferior_p): New macro.
15819         * target-delegates.c: Re-generate.
15820         * top.c (kill_or_detach): Pass inferior down to target_detach.
15821         * windows-nat.c (windows_detach): Add inferior parameter.
15822
15823 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15824
15825         * target.h (struct target_ops) <to_detach>: Remove args
15826         parameter.
15827         (target_detach): Likewise.
15828         * target.c (dispose_inferior): Adjust.
15829         (target_detach): Remove args parameter, adjust.
15830         * aix-thread.c (aix_thread_detach): Adjust.
15831         * corefile.c (core_file_command): Adjust.
15832         * corelow.c (core_detach): Adjust.
15833         * darwin-nat.c (darwin_detach): Adjust.
15834         * gnu-nat.c (gnu_detach): Adjust.
15835         * inf-ptrace.c (inf_ptrace_detach): Adjust.
15836         * infcmd.c (detach_command): Adjust
15837         * infrun.c (follow_fork_inferior): Adjust.
15838         (handle_vfork_child_exec_or_exit): Adjust.
15839         * linux-fork.c (linux_fork_detach): Remove args parameter.
15840         * linux-fork.h (linux_fork_detach): Likewise.
15841         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
15842         * linux-thread-db.c (thread_db_detach): Likewise.
15843         * nto-procfs.c (procfs_detach): Likewise.
15844         * procfs.c (procfs_detach): Likewise.
15845         (do_detach): Remove signo parameter.
15846         * record.c (record_detach): Remove args parameter.
15847         * record.h (record_detach): Likewise.
15848         * remote-sim.c (gdbsim_detach): Likewise.
15849         * remote.c (remote_detach_1): Likewise.
15850         (remote_detach): Likewise.
15851         (extended_remote_detach): Likewise.
15852         * sol-thread.c (sol_thread_detach): Likewise.
15853         * target-delegates.c: Re-generate.
15854         * top.c (struct qt_args) <args>: Remove field.
15855         (kill_or_detach): Don't pass args.
15856         (quit_force): Don't set args.
15857         * windows-nat.c (windows_detach): Remove args parameter.
15858
15859 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15860
15861         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
15862         (arm_linux_init_abi): Install it.
15863
15864 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15865
15866         * osabi.c (gdb_osabi_names): Extend the regexp for
15867         arm-linux-gnueabihf.
15868
15869 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15870
15871         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
15872         m_abbrevs.
15873         (abbrev_table::add_abbrev): Update.
15874         (abbrev_table::lookup_abbrev): Update.
15875
15876 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15877
15878         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
15879
15880 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
15881
15882         * compile/compile.c (compile_to_object): Convert "triplet_rx"
15883         to "std::string".
15884
15885 2018-01-17  Tom Tromey  <tom@tromey.com>
15886
15887         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
15888
15889 2018-01-17  Tom Tromey  <tom@tromey.com>
15890
15891         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
15892         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
15893         (create_array_type_with_stride): Update.
15894         * dwarf2read.c (set_die_type): Update.
15895
15896 2018-01-17  Tom Tromey  <tom@tromey.com>
15897
15898         * dwarf2read.c (delayed_method_info): Remove typedef.
15899         (dwarf2_cu::method_info): Now a std::vector.
15900         (add_to_method_list): Update.
15901         (free_delayed_list): Remove.
15902         (compute_delayed_physnames): Update.
15903         (process_full_comp_unit, process_full_type_unit): Clear the method
15904         list.  Remove cleanups.
15905         (psymtab_include_file_name): Add name_holder parameter.  Use
15906         unique_xmalloc_ptr.
15907         (dwarf_decode_lines): Update.
15908
15909 2018-01-17  Tom Tromey  <tom@tromey.com>
15910             Simon Marchi  <simon.marchi@ericsson.com>
15911
15912         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
15913         (dwarf2_per_objfile::free_cached_comp_units)
15914         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15915         (init_cutu_and_read_dies_no_follow): Update.
15916         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
15917         (dwarf2_cu::~dwarf2_cu): New.
15918         (free_heap_comp_unit, free_stack_comp_unit): Remove.
15919         (age_cached_comp_units, free_one_cached_comp_unit): Update.
15920
15921 2018-01-17  Tom Tromey  <tom@tromey.com>
15922             Simon Marchi  <simon.marchi@ericsson.com>
15923
15924         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
15925         (struct die_reader_specs) <abbrev_table>: New member.
15926         (struct abbrev_table): Add constructor.
15927         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
15928         <abbrev_obstack>: Now an auto_obstack.
15929         (abbrev_table_up): New typedef.
15930         (init_cu_die_reader): Add abbrev_table parameter.
15931         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
15932         Add result_dwo_abbrev_table.
15933         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15934         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
15935         Update.
15936         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
15937         parameter.
15938         (skip_children): Update.
15939         (abbrev_table::alloc_abbrev): Rename from
15940         abbrev_table_alloc_abbrev.
15941         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
15942         (abbrev_table::lookup_abbrev): Rename from
15943         abbrev_table_lookup_abbrev.
15944         (abbrev_table_read_table): Return abbrev_table_up.
15945         (abbrev_table_free, abbrev_table_free_cleanup)
15946         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
15947         (load_partial_dies): Update.
15948
15949 2018-01-17  Tom Tromey  <tom@tromey.com>
15950
15951         * dwarf2read.c (dwarf2_compute_name): Update comment.
15952         (read_func_scope, read_variable): Update.
15953         (new_symbol): Remove.
15954         (new_symbol_full): Rename to new_symbol.
15955
15956 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
15957
15958         PR gdb/16577
15959         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
15960         a warning instead of throwing an error, set section size to 0 and return
15961         NULL.
15962         * gdb_bfd.h (gdb_bfd_map_section): Update description.
15963
15964 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15965
15966         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
15967         std::string.
15968         (linux_ptrace_attach_fail_reason_string): Likewise.
15969         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
15970         Likewise.
15971         (linux_ptrace_attach_fail_reason_string): Likewise.
15972         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
15973
15974 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15975
15976         * linux-nat.c (linux_nat_attach): Remove xstrdup.
15977
15978 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
15979
15980         PR gdb/21559
15981         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
15982         checking for fs_base/gs_base fields in struct user_regs_struct.
15983         * configure: Regenerate.
15984
15985 2018-01-17  Yao Qi  <yao.qi@linaro.org>
15986
15987         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
15988         function.
15989         (aarch64_linux_init_abi): Install it to gdbarch hook
15990         gcc_target_options.
15991
15992 2018-01-15  Pedro Alves  <palves@redhat.com>
15993
15994         * common/signals-state-save-restore.c
15995         (save_original_signals_state): Fix typos.
15996
15997 2017-01-12  Tom Tromey  <tom@tromey.com>
15998             Sergio Durigan Junior  <sergiodj@redhat.com>
15999
16000         * Makefile.in (install-only): Install gdb-add-index.
16001
16002 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
16003
16004         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
16005
16006 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
16007
16008         * infrun.c (keep_going_pass_signal): Clear step-over info when
16009         insert_breakpoints fails.
16010
16011 2018-01-11  Pedro Alves  <palves@redhat.com>
16012
16013         PR gdb/22583
16014         * infrun.c (resume): Rename to ...
16015         (resume_1): ... this.
16016         (resume): Reimplement as wrapper around resume_1.
16017
16018 2018-01-11  Pedro Alves  <palves@redhat.com>
16019
16020         PR remote/22597
16021         * remote.c (remote_parse_stop_reply): Default to the last-set
16022         general thread instead of to 'magic_null_ptid'.
16023
16024 2018-01-10  Pedro Alves  <palves@redhat.com>
16025
16026         * language.h (language_get_symbol_name_matcher): Rename ...
16027         (get_symbol_name_matcher): ... this.
16028         * language.c (language_get_symbol_name_matcher): Ditto.
16029         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
16030         callers adjusted.
16031
16032 2018-01-10  Pedro Alves  <palves@redhat.com>
16033
16034         PR gdb/22670
16035         * dwarf2read.c
16036         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
16037         Adjust to use language_get_symbol_name_matcher instead of
16038         language_defn::la_get_symbol_name_matcher.
16039         * language.c (language_get_symbol_name_matcher): If in Ada mode
16040         and the lookup name is a verbatim match, return Ada's matcher.
16041         * language.h (language_get_symbol_name_matcher): Adjust comment.
16042         (ada_lookup_name_info::verbatim_p):: New method.
16043
16044 2018-01-10  Pedro Alves  <palves@redhat.com>
16045
16046         PR gdb/22670
16047         * ada-lang.c (ada_collect_symbol_completion_matches): If the
16048         minsym's language is language_auto or language_cplus, pass down
16049         language_ada instead.
16050         * symtab.c (compare_symbol_name): Don't frob symbol language here.
16051
16052 2018-01-10  Pedro Alves  <palves@redhat.com>
16053
16054         PR gdb/22670
16055         * minsyms.c (linkage_name_str): New function.
16056         (iterate_over_minimal_symbols): Use it.
16057
16058 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16059
16060         * NEWS: Document that 'info proc' now works on FreeBSD.
16061
16062 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16063
16064         * configure.ac: Check for kinfo_getfile in libutil.
16065         * configure: Regenerate.
16066         * config.in: Regenerate.
16067         * fbsd-nat.c: Include "fbsd-tdep.h".
16068         (fbsd_fetch_cmdline): New.
16069         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
16070         rather than calling error.
16071         (fbsd_info_proc): New.
16072         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
16073         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
16074         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
16075
16076 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16077
16078         * fbsd-nat.c (struct free_deleter): Remove.
16079         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
16080
16081 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16082
16083         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
16084         NULL for an empty pathname.
16085
16086 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16087
16088         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
16089         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
16090         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
16091         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
16092         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
16093         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
16094         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
16095         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
16096         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
16097         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
16098         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
16099         (fbsd_core_fetch_timeval, fbsd_print_sigset)
16100         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
16101         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
16102         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
16103
16104 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
16105
16106         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
16107         (gnu_xfer_auxv): New function.
16108         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
16109         TARGET_OBJECT_AUXV.
16110
16111 2018-01-08  Yao Qi  <yao.qi@linaro.org>
16112             Simon Marchi  <simon.marchi@ericsson.com>
16113
16114         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
16115         common/selftest.c.
16116         (COMMON_OBS): Remove selftest.o.
16117         * configure.ac: Append selftest-arch.c and common/selftest.c to
16118         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
16119         * configure: Re-generated.
16120         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
16121         GDB_SELF_TEST.
16122         (maintenance_info_selftests): Likewise.
16123
16124 2018-01-08  Xavier Roirand  <roirand@adacore.com>
16125
16126         * ada-valprint.c (val_print_packed_array_elements): Use
16127         proper number of elements when printing an array indexed
16128         by an enumeration type.
16129
16130 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16131
16132         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
16133         (dw2_get_file_names_reader): Adjust.
16134         (lookup_dwo_signatured_type): Adjust.
16135         (lookup_dwp_signatured_type): Adjust.
16136         (lookup_signatured_type): Adjust.
16137         (create_type_unit_group): Adjust.
16138         (get_type_unit_group): Adjust.
16139         (process_psymtab_comp_unit_reader): Adjust.
16140         (build_type_psymtabs_reader): Adjust.
16141         (scan_partial_symbols): Adjust.
16142         (add_partial_symbol): Adjust.
16143         (add_partial_subprogram): Adjust.
16144         (peek_die_abbrev): Adjust.
16145         (fixup_go_packaging): Adjust.
16146         (process_imported_unit_die): Adjust.
16147         (dwarf2_compute_name): Adjust.
16148         (dwarf2_physname): Adjust.
16149         (read_import_statement): Adjust.
16150         (handle_DW_AT_stmt_list): Adjust.
16151         (read_file_scope): Adjust.
16152         (read_func_scope): Adjust.
16153         (read_lexical_block_scope): Adjust.
16154         (read_call_site_scope): Adjust.
16155         (read_variable): Adjust.
16156         (dwarf2_rnglists_process): Adjust.
16157         (dwarf2_ranges_process): Adjust.
16158         (dwarf2_ranges_read): Adjust.
16159         (dwarf2_get_pc_bounds): Adjust.
16160         (dwarf2_record_block_ranges): Adjust.
16161         (dwarf2_add_field): Adjust.
16162         (dwarf2_add_member_fn): Adjust.
16163         (read_structure_type): Adjust.
16164         (process_structure_scope): Adjust.
16165         (read_enumeration_type): Adjust.
16166         (read_array_type): Adjust.
16167         (mark_common_block_symbol_computed): Adjust.
16168         (read_common_block): Adjust.
16169         (read_namespace_type): Adjust.
16170         (read_namespace): Adjust.
16171         (read_module_type): Adjust.
16172         (read_tag_pointer_type): Adjust.
16173         (read_tag_ptr_to_member_type): Adjust.
16174         (read_tag_string_type): Adjust.
16175         (read_subroutine_type): Adjust.
16176         (read_typedef): Adjust.
16177         (read_base_type): Adjust.
16178         (attr_to_dynamic_prop): Adjust.
16179         (read_subrange_type): Adjust.
16180         (read_unspecified_type): Adjust.
16181         (dwarf2_read_abbrevs): Adjust.
16182         (load_partial_dies): Adjust.
16183         (read_partial_die): Adjust.
16184         (find_partial_die): Adjust.
16185         (guess_partial_die_structure_name): Adjust.
16186         (fixup_partial_die): Adjust.
16187         (read_attribute_value): Adjust.
16188         (read_addr_index): Adjust.
16189         (read_addr_index_from_leb128): Adjust.
16190         (read_str_index): Adjust.
16191         (dwarf2_string_attr): Adjust.
16192         (get_debug_line_section): Adjust.
16193         (dwarf_decode_line_header): Adjust.
16194         (lnp_state_machine::check_line_address): Adjust.
16195         (dwarf_decode_lines_1): Adjust.
16196         (dwarf_decode_lines): Adjust.
16197         (dwarf2_start_symtab): Adjust.
16198         (var_decode_location): Adjust.
16199         (new_symbol_full): Adjust.
16200         (dwarf2_const_value_data): Adjust.
16201         (dwarf2_const_value_attr): Adjust.
16202         (dwarf2_const_value): Adjust.
16203         (die_type): Adjust.
16204         (die_containing_type): Adjust.
16205         (build_error_marker_type): Adjust.
16206         (lookup_die_type): Adjust.
16207         (guess_full_die_structure_name): Adjust.
16208         (anonymous_struct_prefix): Adjust.
16209         (determine_prefix): Adjust.
16210         (dwarf2_name): Adjust.
16211         (follow_die_ref_or_sig): Adjust.
16212         (follow_die_offset): Adjust.
16213         (follow_die_ref): Adjust.
16214         (follow_die_sig_1): Adjust.
16215         (follow_die_sig): Adjust.
16216         (get_signatured_type): Adjust.
16217         (get_DW_AT_signature_type): Adjust.
16218         (decode_locdesc): Adjust.
16219         (dwarf_decode_macros): Adjust.
16220         (cu_debug_loc_section): Adjust.
16221         (fill_in_loclist_baton): Adjust.
16222         (dwarf2_symbol_mark_computed): Adjust.
16223         (init_one_comp_unit): Don't assign
16224         dwarf2_cu::dwarf2_per_objfile.
16225         (set_die_type): Adjust.
16226
16227 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16228
16229         * dwarf2read.c (struct mapped_debug_names): Add constructor.
16230         <dwarf2_per_objfile>: New field.
16231         (dwarf2_per_objfile): Remove global.
16232         (get_dwarf2_per_objfile): New function.
16233         (set_dwarf2_per_objfile): New function.
16234         (dwarf2_build_psymtabs_hard): Change objfile parameter to
16235         dwarf2_per_objfile.
16236         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16237         (read_abbrev_offset): Likewise.
16238         (read_indirect_string): Likewise.
16239         (read_indirect_line_string): Likewise.
16240         (read_indirect_string_at_offset): Likewise.
16241         (read_indirect_string_from_dwz): Likewise.
16242         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16243         dwarf2_per_objfile.
16244         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16245         (create_all_comp_units): Change objfile parameter to
16246         dwarf2_per_objfile.
16247         (create_all_type_units): Likewise.
16248         (process_queue): Add dwarf2_per_objfile parameter.
16249         (read_and_check_comp_unit_head): Likewise.
16250         (lookup_dwo_unit_in_dwp): Likewise.
16251         (get_dwp_file): Likewise.
16252         (process_cu_includes): Likewise.
16253         (struct free_dwo_file_cleanup_data): New struct.
16254         (dwarf2_has_info): Use get_dwarf2_per_objfile and
16255         set_dwarf2_per_objfile.
16256         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
16257         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
16258         context, adjust calls.
16259         (dw2_instantiate_symtab): Likewise.
16260         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
16261         (dw2_get_cu): Likewise.
16262         (create_cu_from_index_list): Change objfile parameter to
16263         dwarf2_per_objfile.
16264         (create_cus_from_index_list): Get dwarf2_per_objfile from
16265         context, adjust calls.
16266         (create_cus_from_index): Likewise.
16267         (create_signatured_type_table_from_index): Change objfile
16268         parameter to dwarf2_per_objfile.
16269         (create_signatured_type_table_from_debug_names): Change objfile
16270         parameter to dwarf2_per_objfile.
16271         (create_addrmap_from_index): Likewise.
16272         (create_addrmap_from_aranges): Likewise.
16273         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
16274         (dw2_setup): Remove.
16275         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
16276         context.
16277         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
16278         get_dwarf2_per_objfile.
16279         (dw2_forget_cached_source_info): Likewise.
16280         (dw2_map_symtabs_matching_filename): Likewise.
16281         (struct dw2_symtab_iterator) <index>: Remove.
16282         <dwarf2_per_objfile>: New field.
16283         (dw2_symtab_iter_init): Replace index parameter with
16284         dwarf2_per_objfile.
16285         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
16286         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
16287         (dw2_print_stats): Likewise.
16288         (dw2_dump): Likewise.
16289         (dw2_expand_symtabs_for_function): Likewise.
16290         (dw2_expand_all_symtabs): Likewise.
16291         (dw2_expand_symtabs_with_fullname): Likewise.
16292         (dw2_expand_marked_cus): Replace index and objfile parameters
16293         with dwarf2_per_objfile.
16294         (dw_expand_symtabs_matching_file_matcher): Add
16295         dwarf2_per_objfile parameter and adjust calls.
16296         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
16297         adjust calls.
16298         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
16299         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
16300         adjust calls.
16301         (create_cus_from_debug_names_list): Replace objfile parameter
16302         with dwarf2_per_objfile and adjust calls.
16303         (create_cus_from_debug_names): Likewise.
16304         (dwarf2_read_debug_names): Likewise.
16305         (mapped_debug_names::namei_to_name): Adjust call.
16306         (dw2_debug_names_iterator::next): Likewise.
16307         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
16308         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
16309         (dw2_debug_names_dump): Likewise.
16310         (dw2_debug_names_expand_symtabs_for_function): Likewise.
16311         (dw2_debug_names_expand_symtabs_matching): Likewise.
16312         (dwarf2_initialize_objfile): Likewise.
16313         (dwarf2_build_psymtabs): Likewise.
16314         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
16315         this_cu.
16316         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
16317         (read_and_check_comp_unit_head): Likewise.
16318         (read_abbrev_offset): Likewise.
16319         (create_debug_type_hash_table): Likewise.
16320         (create_debug_types_hash_table): Likewise.
16321         (create_all_type_units): Replace objfile parameter with
16322         dwarf2_per_objfile.
16323         (add_type_unit): Add dwarf2_per_objfile parameter.
16324         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
16325         with dwarf2_per_objfile.
16326         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
16327         (lookup_dwp_signatured_type): Likewise.
16328         (lookup_signatured_type): Likewise.
16329         (read_cutu_die_from_dwo): Likewise.
16330         (init_tu_and_read_dwo_dies): Likewise.
16331         (init_cutu_and_read_dies): Likewise.
16332         (init_cutu_and_read_dies_no_follow): Likewise.
16333         (allocate_type_unit_groups_table): Add objfile parameter.
16334         (create_type_unit_group): Use dwarf2_per_objfile from cu.
16335         (get_type_unit_group): Likewise.
16336         (process_psymtab_comp_unit): Update call.
16337         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
16338         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
16339         (print_tu_stats): Likewise.
16340         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
16341         in void* parameter.
16342         (build_type_psymtabs): Change objfile parameter to
16343         dwarf2_per_objfile.
16344         (process_skeletonless_type_unit): Use dwarf2_per_objfile
16345         passed in void* parameter.
16346         (process_skeletonless_type_units): Change objfile parameter to
16347         dwarf2_per_objfile.
16348         (set_partial_user): Likewise.
16349         (dwarf2_build_psymtabs_hard): Likewise.
16350         (read_comp_units_from_section): Likewise.
16351         (create_all_comp_units): Likewise.
16352         (scan_partial_symbols): Update calls.
16353         (add_partial_symbol): Likewise.
16354         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
16355         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
16356         (process_queue): Add dwarf2_per_objfile parameter.
16357         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
16358         (compute_compunit_symtab_includes): Likewise.
16359         (process_cu_includes): Add dwarf2_per_objfile parameter.
16360         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
16361         (process_full_type_unit): Likewise.
16362         (process_imported_unit_die): Update call.
16363         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
16364         (read_file_scope): Likewise.
16365         (allocate_dwo_file_hash_table): Add objfile parameter.
16366         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
16367         (create_cus_hash_table): Likewise.
16368         (create_dwp_hash_table): Likewise.
16369         (create_dwo_unit_in_dwp_v1): Likewise.
16370         (create_dwp_v2_section): Likewise.
16371         (create_dwo_unit_in_dwp_v2): Likewise.
16372         (lookup_dwo_unit_in_dwp): Likewise.
16373         (try_open_dwop_file): Likewise.
16374         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
16375         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
16376         cleanup to include a reference to dwarf2_per_objfile.
16377         (open_dwp_file): Add dwarf2_per_objfile parameter.
16378         (open_and_init_dwp_file): Likewise.
16379         (get_dwp_file): Likewise.
16380         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
16381         (queue_and_load_all_dwo_tus): Update call.
16382         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
16383         data.
16384         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
16385         (dwarf2_ranges_process): Likewise.
16386         (dwarf2_get_pc_bounds): Likewise.
16387         (mark_common_block_symbol_computed): Likewise.
16388         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16389         (dwarf2_read_abbrevs): Update call.
16390         (read_partial_die): Use dwarf2_per_objfile from cu.
16391         (find_partial_die): Likewise.
16392         (fixup_partial_die): Likewise.
16393         (read_attribute_value): Likewise.
16394         (read_indirect_string_at_offset_from): Add objfile parameter.
16395         (read_indirect_string_at_offset): Add dwarf2_per_objfile
16396         parameter.
16397         (read_indirect_string_from_dwz): Add objfile parameter.
16398         (read_indirect_string): Add objfile parameter.
16399         (read_addr_index_1): Add dwarf2_per_objfile parameter.
16400         (read_addr_index): Use dwarf2_per_objfile from cu.
16401         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
16402         call dw2_setup.
16403         (read_str_index): Use dwarf2_per_objfile from cu.
16404         (get_debug_line_section): Likewise.
16405         (read_formatted_entries): Add dwarf2_per_objfile parameter.
16406         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
16407         (new_symbol_full): Use dwarf2_per_objfile from cu.
16408         (build_error_marker_type): Likewise.
16409         (lookup_die_type): Likewise.
16410         (determine_prefix): Likewise.
16411         (follow_die_offset): Likewise.
16412         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
16413         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
16414         (dwarf2_fetch_die_type_sect_off): Likewise.
16415         (dwarf2_get_die_type): Likewise.
16416         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
16417         (get_signatured_type): Likewise.
16418         (get_DW_AT_signature_type): Likewise.
16419         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
16420         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
16421         (cu_debug_loc_section): Likewise.
16422         (fill_in_loclist_baton): Likewise.
16423         (dwarf2_symbol_mark_computed): Likewise.
16424         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16425         dwarf2_per_objfile.
16426         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
16427         parameter.
16428         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16429         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
16430         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
16431         (set_die_type): Use dwarf2_free_objfile from cu.
16432         (get_die_type_at_offset): Likewise.
16433         (dwarf2_per_objfile_free): Don't assign global variable.
16434         (debug_names) <constructor>: Add dwarf2_per_objfile
16435         parameter, update m_debugstrlookup construction.
16436         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
16437         parameter.
16438         <m_dwarf2_per_objfile>: New field.
16439         <lookup>: Use m_dwarf2_per_objfile.
16440         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
16441         (psyms_seen_size): Likewise.
16442         (write_gdbindex): Replace objfile parameter with
16443         dwarf2_per_objfile.
16444         (write_debug_names): Likewise.
16445         (write_psymtabs_to_index): Likewise.
16446         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
16447         calls.
16448
16449 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16450
16451         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
16452         <dwarf2_per_objfile>: New field.
16453         (struct dwarf2_per_cu_data) <objfile>: Remove.
16454         <dwarf2_per_objfile>: New field.
16455         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
16456         of objfile.
16457         (create_signatured_type_table_from_index): Likewise.
16458         (create_debug_type_hash_table): Likewise.
16459         (fill_in_sig_entry_from_dwo_entry): Likewise.
16460         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
16461         (create_type_unit_group): Assign dwarf2_per_objfile instead of
16462         objfile.
16463         (create_partial_symtab): Access objfile through
16464         dwarf2_per_objfile.
16465         (process_psymtab_comp_unit_reader): Likewise.
16466         (read_comp_units_from_section): Likewise.
16467         (scan_partial_symbols): Likewise.
16468         (add_partial_symbol): Likewise.
16469         (add_partial_subprogram): Likewise.
16470         (peek_die_abbrev): Likewise.
16471         (fixup_go_packaging): Likewise.
16472         (process_full_comp_unit): Likewise.
16473         (process_full_type_unit): Likewise.
16474         (process_imported_unit_die): Likewise.
16475         (dwarf2_compute_name): Likewise.
16476         (dwarf2_physname): Likewise.
16477         (read_import_statement): Likewise.
16478         (create_cus_hash_table): Assign dwarf2_physname instead of
16479         objfile.
16480         (read_func_scope): Access objfile through dwarf2_per_objfile.
16481         (read_lexical_block_scope): Likewise.
16482         (read_call_site_scope): Likewise.
16483         (read_variable): Likewise.
16484         (dwarf2_rnglists_process): Likewise.
16485         (dwarf2_ranges_process): Likewise.
16486         (dwarf2_ranges_read): Likewise.
16487         (dwarf2_record_block_ranges): Likewise.
16488         (dwarf2_add_field): Likewise.
16489         (dwarf2_add_member_fn): Likewise.
16490         (read_structure_type): Likewise.
16491         (process_structure_scope): Likewise.
16492         (read_enumeration_type): Likewise.
16493         (read_array_type): Likewise.
16494         (read_common_block): Likewise.
16495         (read_namespace_type): Likewise.
16496         (read_namespace): Likewise.
16497         (read_module_type): Likewise.
16498         (read_tag_pointer_type): Likewise.
16499         (read_tag_ptr_to_member_type): Likewise.
16500         (read_tag_string_type): Likewise.
16501         (read_subroutine_type): Likewise.
16502         (read_typedef): Likewise.
16503         (read_base_type): Likewise.
16504         (attr_to_dynamic_prop): Likewise.
16505         (read_subrange_type): Likewise.
16506         (read_unspecified_type): Likewise.
16507         (load_partial_dies): Likewise.
16508         (read_partial_die): Likewise.
16509         (find_partial_die): Likewise.
16510         (guess_partial_die_structure_name): Likewise.
16511         (fixup_partial_die): Likewise.
16512         (read_attribute_value): Likewise.
16513         (read_addr_index_from_leb128): Likewise.
16514         (dwarf2_read_addr_index): Likewise.
16515         (dwarf2_string_attr): Likewise.
16516         (lnp_state_machine::check_line_address): Likewise.
16517         (dwarf_decode_lines_1): Likewise.
16518         (dwarf_decode_lines): Likewise.
16519         (dwarf2_start_symtab): Likewise.
16520         (var_decode_location): Likewise.
16521         (new_symbol_full): Likewise.
16522         (dwarf2_const_value_data): Likewise.
16523         (dwarf2_const_value_attr): Likewise.
16524         (dwarf2_const_value): Likewise.
16525         (die_type): Likewise.
16526         (die_containing_type): Likewise.
16527         (lookup_die_type): Likewise.
16528         (guess_full_die_structure_name): Likewise.
16529         (anonymous_struct_prefix): Likewise.
16530         (dwarf2_name): Likewise.
16531         (follow_die_ref_or_sig): Likewise.
16532         (follow_die_offset): Likewise.
16533         (follow_die_ref): Likewise.
16534         (dwarf2_fetch_die_loc_sect_off): Likewise.
16535         (dwarf2_fetch_constant_bytes): Likewise.
16536         (dwarf2_fetch_die_type_sect_off): Likewise.
16537         (dwarf2_get_die_type): Likewise.
16538         (follow_die_sig): Likewise.
16539         (decode_locdesc): Likewise.
16540         (dwarf2_per_cu_objfile): Likewise.
16541         (dwarf2_per_cu_text_offset): Likewise.
16542         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
16543         objfile.
16544         (set_die_type): Access objfile through
16545         dwarf2_per_objfile.
16546
16547 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16548
16549         * valprint.c (converted_character_d): Remove typedef.
16550         (DEF_VEC_O (converted_character_d)): Remove.
16551         (count_next_character): Use std::vector.
16552         (print_converted_chars_to_obstack): Likewise.
16553         (generic_printstr): Likewise.
16554
16555 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16556
16557         * xml-support.h (struct gdb_xml_value): Add constructor.
16558         <value>: Change type to unique_xmalloc_ptr.
16559         (gdb_xml_value_s): Remove typedef.
16560         (DEF_VEC_O (gdb_xml_value_s)): Remove.
16561         (gdb_xml_element_start_handler): Change parameter type to
16562         std::vector.
16563         (xml_find_attribute): Likewise.
16564         * xml-support.c (xml_find_attribute): Change parameter type to
16565         std::vector and adjust.
16566         (gdb_xml_values_cleanup): Remove.
16567         (gdb_xml_parser::start_element): Adjust to std::vector.
16568         (xinclude_start_include): Change paraeter type to std::vector
16569         and adjust.
16570         * btrace.c (check_xml_btrace_version): Likewise.
16571         (parse_xml_btrace_block): Likewise.
16572         (parse_xml_btrace_pt_config_cpu): Likewise.
16573         (parse_xml_btrace_pt): Likewise.
16574         (parse_xml_btrace_conf_bts): Likewise.
16575         (parse_xml_btrace_conf_pt): Likewise.
16576         * memory-map.c (memory_map_start_memory): Likewise.
16577         (memory_map_start_property): Likewise.
16578         * osdata.c (osdata_start_osdata): Likewise.
16579         (osdata_start_item): Likewise.
16580         (osdata_start_column): Likewise.
16581         * remote.c (start_thread): Likewise.
16582         * solib-aix.c (library_list_start_library): Likewise.
16583         (library_list_start_list): Likewise.
16584         * solib-svr4.c (library_list_start_library): Likewise.
16585         (svr4_library_list_start_list): Likewise.
16586         * solib-target.c (library_list_start_segment): Likewise.
16587         (library_list_start_section): Likewise.
16588         (library_list_start_library): Likewise.
16589         (library_list_start_list): Likewise.
16590         * tracepoint.c (traceframe_info_start_memory): Likewise.
16591         (traceframe_info_start_tvar): Likewise.
16592         * xml-syscall.c (syscall_start_syscall): Likewise.
16593         * xml-tdesc.c (tdesc_start_target): Likewise.
16594         (tdesc_start_feature): Likewise.
16595         (tdesc_start_reg): Likewise.
16596         (tdesc_start_union): Likewise.
16597         (tdesc_start_struct): Likewise.
16598         (tdesc_start_flags): Likewise.
16599         (tdesc_start_enum): Likewise.
16600         (tdesc_start_field): Likewise.
16601         (tdesc_start_enum_value): Likewise.
16602         (tdesc_start_vector): Likewise.
16603
16604 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16605
16606         * extension.h (struct xmethod_worker) <clone>: Remove.
16607         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
16608         Remove.
16609         (python_xmethod_worker::clone): Remove.
16610         * valops.c (find_overload_match): Use std::move instead of
16611         clone.
16612
16613 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16614
16615         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
16616         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
16617         <free_xmethod_worker_data>: Remove.
16618         <get_matching_xmethod_workers>: Chance VEC to std::vector.
16619         <get_xmethod_arg_types>: Remove.
16620         <get_xmethod_result_type>: Remove.
16621         <invoke_xmethod>: Remove.
16622         * extension.c (new_xmethod_worker): Remove.
16623         (clone_xmethod_worker): Remove.
16624         (get_matching_xmethod_workers): Return void, pass std::vector by
16625         pointer.
16626         (get_xmethod_arg_types): Rename to...
16627         (xmethod_worker::get_arg_types): ... this, and adjust.
16628         (get_xmethod_result_type): Rename to...
16629         (xmethod_worker::get_result_type): ... this, and adjust.
16630         (invoke_xmethod): Remove.
16631         (free_xmethod_worker): Remove.
16632         (free_xmethod_worker_vec): Remove.
16633         * extension.h (enum ext_lang_rc): Move here from
16634         extension-priv.h.
16635         (struct xmethod_worker): Add constructor and destructor.
16636         <data>: Remove.
16637         <value>: Remove.
16638         <invoke, clone, do_get_result_type, do_get_arg_types>: New
16639         virtual pure methods.
16640         <get_arg_types, get_result_type>: New methods.
16641         (xmethod_worker_ptr): Remove typedef.
16642         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
16643         (xmethod_worker_vec): Remove typedef.
16644         (xmethod_worker_up): New typedef.
16645         (invoke_xmethod): Remove.
16646         (clone_xmethod_worker): Remove.
16647         (free_xmethod_worker): Remove.
16648         (free_xmethod_worker_vec): Remove.
16649         (get_xmethod_arg_types): Remove.
16650         (get_xmethod_result_type): Remove.
16651         * valops.c (find_method_list): Use std::vector, don't use
16652         intermediate vector.
16653         (value_find_oload_method_list): Use std::vector.
16654         (find_overload_match): Use std::vector.
16655         (find_oload_champ): Use std::vector.
16656         * value.c (value_free): Use operator delete.
16657         (value_of_xmethod): Rename to...
16658         (value_from_xmethod): ... this.  Don't assign
16659         xmethod_worker::value, take rvalue-reference.
16660         (result_type_of_xmethod): Adjust.
16661         (call_xmethod): Adjust.
16662         * value.h: Include extension.h.
16663         (struct xmethod_worker): Don't forward-declare.
16664         (value_of_xmethod): Rename to...
16665         (value_from_xmethod): ... this, take rvalue-reference.
16666         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
16667         (struct python_xmethod_worker): ... this, add constructor and
16668         destructor.
16669         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
16670         (gdbpy_free_xmethod_worker_data): Rename to...
16671         (python_xmethod_worker::~python_xmethod_worker): ... this and
16672         adjust.
16673         (gdbpy_clone_xmethod_worker_data): Rename to...
16674         (python_xmethod_worker::clone): ... this and adjust.
16675         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
16676         temporary vector.
16677         (gdbpy_get_xmethod_arg_types): Rename to...
16678         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
16679         (gdbpy_get_xmethod_result_type): Rename to...
16680         (python_xmethod_worker::do_get_result_type): ... this and
16681         adjust.
16682         (gdbpy_invoke_xmethod): Rename to...
16683         (python_xmethod_worker::invoke): ... this and adjust.
16684         (new_python_xmethod_worker): Rename to...
16685         (python_xmethod_worker::python_xmethod_worker): ... this and
16686         adjust.
16687         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
16688         Remove.
16689         (gdbpy_free_xmethod_worker_data): Remove.
16690         (gdbpy_get_matching_xmethod_workers): Use std::vector.
16691         (gdbpy_get_xmethod_arg_types): Remove.
16692         (gdbpy_get_xmethod_result_type): Remove.
16693         (gdbpy_invoke_xmethod): Remove.
16694         * python/python.c (python_extension_ops): Remove obsolete
16695         callbacks.
16696
16697 2018-01-05  Pedro Alves  <palves@redhat.com>
16698
16699         PR gdb/18653
16700         * common/signals-state-save-restore.c
16701         (save_original_signals_state): New parameter 'quiet'.  Warn if we
16702         find a custom handler preinstalled, instead of internal erroring.
16703         But only warn if !quiet.
16704         * common/signals-state-save-restore.h
16705         (save_original_signals_state): New parameter 'quiet'.
16706         * main.c (captured_main_1): Move save_original_signals_state call
16707         after option handling, and pass QUIET.
16708
16709 2018-01-05  Pedro Alves  <palves@redhat.com>
16710
16711         * spu-tdep.c (spu_catch_start): Pass
16712         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
16713
16714 2018-01-05  Pedro Alves  <palves@redhat.com>
16715
16716         PR gdb/22670
16717         * ada-lang.c (literal_symbol_name_matcher): New function.
16718         (ada_get_symbol_name_matcher): Use it for
16719         symbol_name_match_type::SEARCH_NAME.
16720         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
16721         it down instead of assuming symbol_name_match_type::FULL.
16722         * block.h (block_lookup_symbol): New parameter 'match_type'.
16723         * c-valprint.c (print_unpacked_pointer): Use
16724         lookup_symbol_search_name instead of lookup_symbol.
16725         * compile/compile-object-load.c (get_out_value_type): Pass down
16726         symbol_name_match_type::SEARCH_NAME.
16727         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
16728         symbol_name_match_type::FULL.
16729         * cp-support.c (cp_get_symbol_name_matcher): Handle
16730         symbol_name_match_type::SEARCH_NAME.
16731         * infrun.c (insert_exception_resume_breakpoint): Use
16732         lookup_symbol_search_name.
16733         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
16734         * psymtab.c (maintenance_check_psymtabs): Use
16735         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
16736         * stack.c (print_frame_args): Use lookup_symbol_search_name and
16737         SYMBOL_SEARCH_NAME.
16738         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
16739         if symbol_name_match_type::SEARCH_NAME.
16740         (lookup_symbol_in_language): Pass down
16741         symbol_name_match_type::FULL.
16742         (lookup_symbol_search_name): New.
16743         (lookup_language_this): Pass down
16744         symbol_name_match_type::SEARCH_NAME.
16745         (lookup_symbol_aux, lookup_local_symbol): New parameter
16746         'match_type'.  Pass it down.
16747         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
16748         (lookup_symbol_search_name): New declaration.
16749         (lookup_symbol_in_block): New 'match_type' parameter.
16750
16751 2018-01-05  Pedro Alves  <palves@redhat.com>
16752
16753         PR gdb/22670
16754         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
16755         ada_lookup_symbol.
16756         (ada_lookup_symbol): Reimplement in terms of
16757         ada_lookup_symbol_list, bits factored out from
16758         ada_lookup_encoded_symbol.
16759
16760 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16761
16762         * ada-exp.y (write_object_renaming): When subscripting an array
16763         using a symbol as the index, pass the block in call to
16764         ada_lookup_encoded_symbol when looking that symbol up.
16765
16766 2018-01-05  Jerome Guitton  <guitton@adacore.com>
16767
16768         * ada-lang.c (ada_array_length): Use ada_index_type instead of
16769         TYPE_INDEX_TYPE.
16770
16771 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16772
16773         * ada-lang.c (ada_to_fixed_value_create): Add handling of
16774         the case where VALUE_LVAL (val0) is not lval_memory.
16775
16776 2018-01-05  Xavier Roirand  <roirand@adacore.com>
16777
16778         * ada-valprint.c (print_optional_low_bound): Handle
16779         character-indexed array printing like boolean-indexed array
16780         printing.
16781
16782 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16783
16784         * NEWS: Create a new section for the next release branch.
16785         Rename the section of the current branch, now that it has
16786         been cut.
16787
16788 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16789
16790         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
16791         * version.in: Bump version to 8.1.50.DATE-git.
16792
16793 2018-01-03  Xavier Roirand  <roirand@adacore.com>
16794
16795         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
16796         Add field.
16797         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
16798         Add field.
16799         (default_exception_support_info) <catch_handlers_sym>: Add field.
16800         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
16801         (ada_exception_name_addr_1): Add "catch handlers" handling.
16802         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
16803         Update all callers.
16804         (create_excep_cond_exprs) <ex>: Add parameter.
16805         (re_set_exception): Update create_excep_cond_exprs call.
16806         (print_it_exception, print_one_exception, print_mention_exception)
16807         (print_recreate_exception): Add "catch handler" handling.
16808         (allocate_location_catch_handlers, re_set_catch_handlers)
16809         (check_status_catch_handlers, print_it_catch_handlers)
16810         (print_one_catch_handlers, print_mention_catch_handlers)
16811         (print_recreate_catch_handlers): New function.
16812         (catch_handlers_breakpoint_ops): New variable.
16813         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
16814         Add parameter.  Add "catch handler" handling.
16815         (ada_exception_sym_name, ada_exception_breakpoint_ops):
16816         Add "catch handler" handling.
16817         (ada_exception_catchpoint_cond_string): Add "catch handler"
16818         handling.
16819         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
16820         call.
16821         (catch_ada_handlers_command): New function.
16822         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
16823         operations structure.
16824         (_initialize_ada_language): Add "catch handlers" command entry.
16825         * NEWS: Document "catch handlers" feature.
16826
16827 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16828
16829         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
16830         account when creating the array type of the slice.
16831         (ada_value_slice): Likewise.
16832
16833 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16834
16835         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
16836         New enum value.
16837         (create_array_type_with_stride): Add byte_stride_prop parameter.
16838         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
16839         New parameter.  Update all callers in this file.
16840         (array_type_has_dynamic_stride): New function.
16841         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
16842         of arrays with dynamic byte strides.
16843         * dwarf2read.c (read_array_type): Add support for dynamic
16844         DW_AT_byte_stride attributes.
16845
16846 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16847
16848         * dwarf2read.c (read_unspecified_type): Treat
16849         DW_TAG_enumeration_type DIEs from Ada units as stubs.
16850
16851 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16852
16853         Update copyright year range in all GDB files.
16854
16855 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
16856
16857         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
16858         and gdb/testsuite/gdb.base/step-line.c.
16859
16860 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16861
16862         * copyright.py (main): Dump the contents of
16863         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
16864         even if BY_HAND is empty.
16865
16866 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16867
16868         * top.c (print_gdb_version): Update Copyright year in version
16869         message.
16870
16871 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16872
16873         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
16874
16875 For older changes see ChangeLog-2017.
16876 \f
16877 Local Variables:
16878 mode: change-log
16879 left-margin: 8
16880 fill-column: 74
16881 version-control: never
16882 coding: utf-8
16883 End: