when printing the GDB config, explicitly say if configured without python
[external/binutils.git] / gdb / ChangeLog
1 2018-12-21  Дилян Палаузов  <dilyan.palauzov@aegee.org>
2
3         * top.c (print_gdb_configuration): Print "--without-python"
4         if GDB was configured without Python.
5
6 2018-12-21  Andrew Burgess  <andrew.burgess@embecosm.com>
7
8         * riscv-tdep.c (riscv_scan_prologue): Use plongest to format
9         a signed offset as a string.
10
11 2018-12-21  Dave Murphy  <davem@devkitpro.org>
12
13         * dtrace-probe.c (dtrace_static_probe_ops): Explicit zero
14         initialise.
15         * probe.c (any_static_probe_ops): Ditto.
16         * record-btrace.c (record_btrace_thread_observer_token): Ditto.
17         * stap-probe.c (stap_static_probe_ops): Ditto.
18         * tui/tui-hooks.c (tui_observers_token): Ditto.
19         * unittests/observable-selftests.c (token1, token2, token3): Ditto.
20
21 2018-12-19  Andrew Burgess  <andrew.burgess@embecosm.com>
22
23         * gdb/dummy-frame.c (default_dummy_id): Defined new function.
24         * gdb/dummy-frame.h (default_dummy_id): Declare new function.
25         * gdb/frame-unwind.c (default_unwind_pc): Define new function.
26         (default_unwind_sp): Define new function.
27         * gdb/frame-unwind.h (default_unwind_pc): Declare new function.
28         (default_unwind_sp): Declare new function.
29         * gdb/frame.c (frame_unwind_pc): Assume gdbarch_unwind_pc is
30         available.
31         (get_frame_sp): Assume that gdbarch_unwind_sp is available.
32         * gdb/gdbarch.c: Regenerate.
33         * gdb/gdbarch.h: Regenerate.
34         * gdb/gdbarch.sh: Update definition of dummy_id, unwind_pc, and
35         unwind_sp.  Add additional header files to be included in
36         generated file.
37
38 2018-12-19  Dimitar Dimitrov  <dimitar@dinux.eu>
39
40         * nat/linux-ptrace.c (linux_ptrace_test_ret_to_nx): Remove
41         sp clobbers.
42
43 2018-12-17  Andrew Burgess  <andrew.burgess@embecosm.com>
44
45         * dwarf2read.c (struct dwarf2_cu): Convert the fields 'mark',
46         'has_loclist', 'checked_producer', 'producer_is_gxx_lt_4_6',
47         'producer_is_gcc_lt_4_3', 'producer_is_icc_lt_14',
48         'processing_has_namespace_info' from unsigned int to bool.  Update
49         comments.
50         (producer_is_icc_lt_14): Update return type.
51         (producer_is_gcc_lt_4_3): Likewise.
52         (producer_is_gxx_lt_4_6): Likewise.
53         (process_die): Write true instead of 1 into predicate fields.
54         (dwarf2_start_symtab): Likewise.
55         (var_decode_location): Likewise.
56         (dwarf2_mark_helper): Likewise.
57         (dwarf2_mark): Likewise.
58         (dwarf2_clear_marks): Write false instead of 0 into predicate
59         field.
60         (dwarf2_cu::dwarf2_cu): Initialise predicate fields to false, not
61         0.
62
63 2018-12-17  Szabolcs Nagy  <szabolcs.nagy@arm.com>
64
65         * nat/aarch64-sve-linux-ptrace.h: Include signal.h instead of
66         asm/sigcontext.h.
67
68 2018-12-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
69
70         * nat/linux-ptrace.c (kill_child): Fix ARI warning by removing
71         warning trailing new line.
72
73 2018-12-16  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
74
75         * nat/linux-ptrace.c (kill_child): New function.
76         (linux_ptrace_test_ret_to_nx): Use kill_child instead of local code.
77         Add a call to kill_child in case of early return after fork.
78         (linux_check_ptrace_features): Use kill_child instead of local code.
79         (linux_test_for_tracefork): Likewise.
80
81 2018-12-14  Tom Tromey  <tom@tromey.com>
82
83         * Makefile.in: Remove "alloca" comment.
84         (INFOFILES): Remove.
85         (local-maintainer-clean): Don't use INFOFILES.
86
87 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
88
89         * syscalls/update-freebsd.sh: New file.
90         * syscalls/freebsd.xml: Regenerate.
91
92 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
93
94         * NEWS: Add entry documenting system call aliases.
95         * break-catch-syscall.c (catch_syscall_split_args): Pass 'result'
96         to get_syscalls_by_name.
97         * gdbarch.sh (UNKNOWN_SYSCALL): Remove.
98         * gdbarch.h: Regenerate.
99         * syscalls/gdb-syscalls.dtd (syscall): Add alias attribute.
100         * xml-syscall.c [!HAVE_LIBEXPAT] (get_syscalls_by_name): Rename
101         from get_syscall_by_name.  Now accepts a pointer to a vector of
102         integers and returns a bool.
103         [HAVE_LIBEXPAT] (struct syscall_desc): Add alias member.
104         (syscall_create_syscall_desc): Add alias parameter and pass it to
105         syscall_desc constructor.
106         (syscall_start_syscall): Handle alias attribute.
107         (syscall_attr): Add alias attribute.
108         (xml_get_syscalls_by_name): Rename from xml_get_syscall_number.
109         Now accepts a pointer to a vector of integers and returns a
110         bool.  Add syscalls whose alias or name matches the requested
111         name.
112         (get_syscalls_by_name): Rename from get_syscall_by_name.  Now
113         accepts a pointer to a vector of integers and returns a bool.
114         * xml-syscall.h (get_syscalls_by_name): Likewise.
115
116 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
117
118         * break-catch-syscall.c (catch_syscall_split_args): Pass 'result'
119         to get_syscalls_by_group.
120         * xml-syscall.c [!HAVE_LIBEXPAT] (get_syscalls_by_group): Return
121         false.
122         [HAVE_LIBEXPAT] (xml_list_syscalls_by_group): Append syscall
123         numbers to an existing vector of integers and return a bool.
124         (get_syscalls_by_group): Accept pointer to vector of integers
125         and change return type to bool.
126         * xml-syscall.h (get_syscalls_by_group): Likewise.
127
128 2018-12-13  Jim Wilson  <jimw@sifive.com>
129
130         * riscv-tdep.c (riscv_print_one_register_info): For MSTATUS, add
131         comment for SD field, and correct xlen calculation.  For MISA, add
132         comment for MXL field, add call to register_size, and correct base
133         calculation.
134
135 2018-12-13  Stafford Horne  <shorne@gmail.com>
136
137         * NEWS(New targets): Add or1k*-*-linux*.
138
139 2018-12-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
140
141         * nat/linux-osdata.c (linux_xfer_osdata_info_os_types): Forward
142         declare on one line to fix ARI warning.
143
144 2018-12-12  Andrew Burgess  <andrew.burgess@embecosm.com>
145
146         * infrun.c (infcall_suspend_state::infcall_suspend_state): New.
147         (infcall_suspend_state::registers): New.
148         (infcall_suspend_state::restore): New.
149         (infcall_suspend_state::thread_suspend): Rename to...
150         (infcall_suspend_state::m_thread_suspend): ...this.
151         (infcall_suspend_state::registers): Rename to...
152         (infcall_suspend_state::m_registers): ...this.
153         (infcall_suspend_state::siginfo_gdbarch): Rename to...
154         (infcall_suspend_state::m_siginfo_gdbarch): ...this.
155         (infcall_suspend_state::siginfo_data): Rename to...
156         (infcall_suspend_state::m_siginfo_data): ...this.
157         (save_infcall_suspend_state): Rewrite to use infcall_suspend_state
158         constructor.
159         (restore_infcall_suspend_state): Rewrite to use
160         infcall_suspend_state::restore method.
161         (get_infcall_suspend_state_regcache): Use
162         infcall_suspend_state::registers method.
163
164 2018-12-12  Andrew Burgess  <andrew.burgess@embecosm.com>
165
166         * riscv-tdep.c (riscv_call_arg_scalar_float): Unnamed (variadic)
167         arguments are passed in integer registers.
168         (riscv_call_arg_complex_float): Likewise.
169
170 2018-12-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
171
172         * nat/linux-osdata.c (common_getter): New function.
173         (struct osdata_type): Change getter to take_snapshot.
174         Add LONGEST len_avail and struct buffer buffer.
175         Change all elements in the initializer.
176         Add an element for the list of types.
177         (linux_xfer_osdata_info_os_types): New function.
178         (linux_common_xfer_osdata): Use common_getter for the list of types.
179         Replace getter call by common_getter.
180         (linux_xfer_osdata_cpus): Remove args READBUF, OFFSET, LEN.
181         Add arg BUFFER.  Only keep the code that adds data in BUFFER.
182         (linux_xfer_osdata_fds): Likewise.
183         (linux_xfer_osdata_modules): Likewise.
184         (linux_xfer_osdata_msg): Likewise.
185         (linux_xfer_osdata_processes): Likewise.
186         (linux_xfer_osdata_processgroups): Likewise.
187         (linux_xfer_osdata_sem): Likewise.
188         (linux_xfer_osdata_shm): Likewise.
189         (linux_xfer_osdata_isockets): Likewise.
190         (linux_xfer_osdata_threads): Likewise.
191
192 2018-12-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
193
194         * nat/linux-osdata.c: Removed various trailing spaces.
195
196 2018-12-10  Andrew Burgess  <andrew.burgess@embecosm.com>
197
198         * riscv-tdep.c (riscv_register_name): Fix ARI warning by removing
199         leading whitespace before #include line.
200
201 2018-12-08  Simon Marchi  <simon.marchi@ericsson.com>
202             Дилян Палаузов  <dilyan.palauzov@aegee.org>
203
204         PR gdb/23950
205         * configure.ac: Search for tgetent in libtinfow.
206         * configure: Re-generate.
207
208 2018-12-08  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
209
210         * linux-thread-db.c (struct thread_db_info): Add td_ta_delete_p.
211         (thread_db_err_str): Forward declare.
212         (delete_thread_db_info): Call td_ta_delete_p if available.
213         (try_thread_db_load_1): Acquire td_ta_delete address.
214         * nat/gdb_thread_db.h (td_ta_delete_ftype): Declare.
215
216 2018-12-08  Pedro Alves  <palves@redhat.com>
217
218         * source.c (forward_search_command): Rename to ...
219         (search_command_helper): ... this.  Add 'forward' parameter.
220         Tweak to use a gdb::def_vector<char> instead of a xrealloc'ed
221         buffer.  Handle backward searches too.
222         (forward_search_command, reverse_search_command): Reimplement by
223         calling search_command_helper.
224
225 2018-12-07  Andrew Burgess  <andrew.burgess@embecosm.com>
226
227         * .dir-locals.el: Copy most of the settings from c-mode over to
228         c++-mode.
229
230 2018-12-08  Stafford Horne  <shorne@gmail.com>
231
232         * Makefile.in (ALL_TARGET_OBS): Add or1k-linux-tdep.o.
233         * configure.tgt: Add or1k*-*-linux*.
234         * or1k-linux-tdep.c: New file.
235         * or1k-tdep.c (or1k_gdbarch_init): Call gdbarch_init_osabi.
236
237 2018-12-07  Pedro Alves  <palves@redhat.com>
238
239         * dwarf2read.c (get_gdb_index_contents_from_section): Use
240         gdb::make_array_view.
241
242 2018-12-05  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
243
244         * language.c (_initialize_language): Fix leak by assigning
245         a static string to language.  Same for range and case_sensitive,
246         even if no leak is detected for these variables.
247
248 2018-12-05  John Baldwin  <jhb@FreeBSD.org>
249
250         * configure: Re-generate.
251         * configure.ac: Use separate sed expressions to escape variables
252         in auto-load directories.
253
254 2018-12-05  Andrew Burgess  <andrew.burgess@embecosm.com>
255
256         * riscv-tdep.c (riscv_features_from_gdbarch_info): New function.
257         (riscv_find_default_target_description): Use new function to
258         extract feature from gdbarch_info.
259         (riscv_gdbarch_init): Add error checks for xlen and flen between
260         target description and bfd headers.  Be smarter about when we
261         think the hardware floating point abi should be used.
262
263 2018-12-05  Alan Hayward  <alan.hayward@arm.com>
264
265         * nat/aarch64-linux-hw-point.c
266         (aarch64_linux_any_set_debug_regs_state): New function.
267         * nat/aarch64-linux-hw-point.h
268         (aarch64_linux_any_set_debug_regs_state): New declaration.
269         * nat/aarch64-linux.c (aarch64_linux_new_thread): Check if any
270         BPs or WPs are set.
271
272 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
273
274         * common/filestuff.c [HAVE_KINFO_GETFILE]: Include headers.
275         (fdwalk) [HAVE_KINFO_GETFILE]: Use kinfo_getfile.
276
277 2018-11-30  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
278             Simon Marchi  <simon.marchi@ericsson.com>
279
280         * linespec.c (symtab_vector_up): Remove.
281         (symtabs_from_filename): Change return type to std::vector.
282         (collect_symtabs_from_filename): Likewise.
283         (create_sals_line_offset): Assign return value of
284         collect_symtabs_from_filename to *ls->file_symtabs.
285         (convert_explicit_location_to_linespec): Remove call to release.
286         (parse_linespec): Likewise.
287         (symtab_collector) <symtab_collector>: Remove initialization of
288         m_symtabs.
289         <release_symtabs>: Change return type to std::vector<symtab *>.
290         <operator ()>: Adjust.
291
292 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
293
294         * fbsd-nat.c [__FreeBSD_version >= 700009] (USE_SIGINFO): Macro
295         defined.
296         (union sigval32, struct siginfo32, fbsd_siginfo_size)
297         (fbsd_convert_siginfo): Make conditional on USE_SIGINFO instead
298         of KERN_PROC_AUXV and PT_LWPINFO.
299         (fbsd_nat_target::xfer_partial): Define method unconditionally.
300         Make TARGET_OBJECT_SIGNAL_INFO conditional on USE_SIGINFO.
301         Make TARGET_OBJECT_AUXV conditional on KERN_PROC_AUXV.
302         Make TARGET_OBJECT_FREEBSD_VMMAP and
303         TARGET_OBJECT_FREEBSD_PS_STRINGS conditional on KERN_PROC_VMMAP
304         and KERN_PROC_PS_STRINGS.
305         * fbsd-nat.h: Include <sys/proc.h>.
306         (fbsd_nat_target::xfer_partial): Declare method unconditionally.
307
308 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
309
310         * riscv-linux-nat.c: Add 'inferior.h' and 'target-descriptions.h'
311         header files.
312         (riscv_linux_nat_target::read_description): New method.
313
314 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
315
316         * arch/riscv.h (riscv_gdbarch_features::hash): New method.
317         * arch/riscv.c (struct riscv_gdbarch_features_hasher): New.
318         (riscv_tdesc_cache): New global.
319         (riscv_create_target_description): Look in the cache before
320         creating a new target description.
321
322 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
323
324         * arch/riscv.h (riscv_gdb_features::operator==): New.
325         (riscv_gdb_features::operator!=): New.
326         * riscv-tdep.c (riscv_gdbarch_init): Make use of the inequality
327         operator.
328
329 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
330
331         * arch/riscv.h (riscv_create_target_description): Make return type
332         const.
333         * arch/riscv.c (riscv_create_target_description): Likewise.
334         * riscv-tdep.c (riscv_find_default_target_description): Likewise.
335
336 2018-11-30  Jan Kratochvil  <jan.kratochvil@redhat.com>
337             Keith Seitz  <keiths@redhat.com>
338             Tom Tromey  <tom@tromey.com>
339             Sergio Durigan Junior  <sergiodj@redhat.com>
340
341         https://bugzilla.redhat.com/show_bug.cgi?id=1613614
342         * dwarf2read.c (dwarf2_find_containing_comp_unit): Add
343         'mid_cu->length' to '*cu_off' when checking if 'sect_off' is
344         inside the CU.
345
346 2018-11-30  Pedro Alves  <palves@redhat.com>
347
348         * aix-thread.c (aix_thread_target) <aix_thread_target>: Delete.
349         <stratum>: New override.
350         * bfd-target.c (aix_thread_target) <aix_thread_target>: Delete.
351         <stratum>: New override.
352         * bsd-uthread.c (bsd_uthread_target) <bsd_uthread_target>: Delete.
353         <stratum>: New override.
354         * exec.c (exec_target) <exec_target>: Delete.
355         <stratum>: New override.
356         * gdbarch-selftests.c (register_to_value_test): Adjust to use the
357         stratum method instead of the to_stratum field.
358         * linux-thread-db.c (thread_db_target) <thread_db_target>: Delete.
359         <stratum>: New override.
360         (thread_db_target::thread_db_target): Delete.
361         * make-target-delegates (print_class): Don't print a ctor
362         declaration.  Print a stratum method override declaration.
363         * process-stratum-target.h (process_stratum_target)
364         <process_stratum_target>: Delete.
365         <stratum>: New override.
366         * ravenscar-thread.c (ravenscar_thread_target)
367         <ravenscar_thread_target>: Delete.
368         <stratum>: New override.
369         * record-btrace.c (record_btrace_target)
370         <record_btrace_target>: Delete.
371         <stratum>: New override.
372         * record-full.c (record_full_base_target)
373         <record_full_base_target>: Delete.
374         <stratum>: New override.
375         * record.c (record_disconnect, record_detach)
376         (record_mourn_inferior, record_kill): Adjust to use the stratum
377         method instead of the to_stratum field.
378         * regcache.c (cooked_read_test, cooked_write_test): Likewise.
379         * sol-thread.c (sol_thread_target)
380         <sol_thread_target>: Delete.
381         <stratum>: New override.
382         * spu-multiarch.c (spu_multiarch_target)
383         <spu_multiarch_target>: Delete.
384         <stratum>: New override.
385         * target-delegates.c: Regenerate.
386         * target.c (target_stack::push, target_stack::unpush)
387         (pop_all_targets_above, pop_all_targets_at_and_above)
388         (info_target_command, target_require_runnable)
389         (target_stack::find_beneath): Adjust to use the stratum method
390         instead of the to_stratum field.
391         (dummy_target::dummy_target): Delete.
392         (dummy_target::stratum): New.
393         (debug_target::debug_target): Delete.
394         (debug_target::stratum): New.
395         (maintenance_print_target_stack): Adjust to use the stratum method
396         instead of the to_stratum field.
397         * target.h (struct target_ops) <stratum>: New method.
398         <to_stratum>: Delete.
399         <is_pushed>: Adjust to use the stratum method
400         instead of the to_stratum field.
401
402 2018-11-30  Pedro Alves  <palves@redhat.com>
403
404         * corelow.c (core_target) <has_all_memory, has_execution>: New
405         overrides.
406         * inf-child.c (inf_child_target::has_all_memory)
407         (inf_child_target::has_memory, inf_child_target::has_stack)
408         (inf_child_target::has_registers)
409         (inf_child_target::has_execution): Delete.
410         * inf-child.h (inf_child_target) <has_all_memory, has_memory,
411         has_stack, has_registers, has_execution>: Delete.
412         * process-stratum-target.c
413         (process_stratum_target::has_all_memory)
414         (process_stratum_target::has_memory)
415         (process_stratum_target::has_stack)
416         (process_stratum_target::has_registers)
417         (process_stratum_target::has_execution): New.
418         * process-stratum-target.h (process_stratum_target)
419         <has_all_memory, has_memory, has_stack, has_registers,
420         has_execution>: New method overrides.
421         * ravenscar-thread.c (ravenscar_thread_target) <has_all_memory,
422         has_memory, has_stack, has_registers, has_execution>: Delete.
423         * remote-sim.c (gdbsim_target) <has_stack, has_registers,
424         has_execution>: Delete.
425         * remote.c (remote_target) <has_all_memory, has_memory, has_stack,
426         has_registers, has_execution>: Delete.
427         * target.c (default_child_has_all_memory)
428         (default_child_has_memory, default_child_has_stack)
429         (default_child_has_registers, default_child_has_execution):
430         Delete.
431         * target.h (default_child_has_all_memory)
432         (default_child_has_memory, default_child_has_stack)
433         (default_child_has_registers, default_child_has_execution):
434         Delete.
435         * tracefile.h (tracefile_target) <has_execution>: New override.
436
437 2018-11-30  Pedro Alves  <palves@redhat.com>
438
439         * Makefile.in (COMMON_SFILES): Add process-stratum-target.c.
440         * bsd-kvm.c: Include "process-stratum-target.h".
441         (bsd_kvm_target): Now inherits from process_stratum_target.
442         (bsd_kvm_target::bsd_kvm_target): Default it.
443         * corelow.c: Include "process-stratum-target.h".
444         (core_target): Now inherits from process_stratum_target.
445         (core_target::core_target): Don't set to_stratum here.
446         * inf-child.c (inf_child_target::inf_child_target): Delete.
447         * inf-child.h: Include "process-stratum-target.h".
448         (inf_child_target): Inherit from process_stratum_target.
449         (inf_child_target) <inf_child_target>: Default it.
450         <can_async_p, supports_non_stop, supports_disable_randomization>:
451         Delete overrides.
452         * process-stratum-target.c: New file.
453         * process-stratum-target.h: New file.
454         * remote-sim.c: Include "process-stratum-target.h".
455         (gdbsim_target): Inherit from process_stratum_target.
456         <gdbsim_target>: Default it.
457         * remote.c: Include "process-stratum-target.h".
458         (remote_target): Inherit from process_stratum_target.
459         <remote_target>: Default it.
460         * target.c (default_thread_address_space)
461         (default_thread_architecture): Delete.
462         * target.h (target_ops) <thread_architecture>: Now returns NULL by
463         default.
464         <thread_address_space>: Ditto.
465         * test-target.h: Include "process-stratum-target.h" instead of
466         "target.h".
467         (test_target_ops): Inherit from process_stratum_target.
468         <test_target_ops>: Default it.
469         * tracefile.c (tracefile_target::tracefile_target): Delete.
470         * tracefile.h: Include "process-stratum-target.h".
471         (tracefile_target): Inherit from process_stratum_target.
472         <tracefile_target>: Default it.
473         * target-delegates.c: Regenerate.
474
475 2018-11-30  Pedro Alves  <palves@redhat.com>
476
477         * Makefile.in (COMMON_SFILES): Add test-target.c.
478         * gdbarch-selftests.c: Include "test-target.h".
479         * regcache.c: Include "test-target.h".
480         * target.c (test_target_info, test_target_ops::info): Move to ...
481         * test-target.c: ... this new file.
482         * target.h (test_target_ops): Move to ...
483         * test-target.h: ... this new file.
484
485 2018-11-29  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
486
487         * source.c (forward_search_command): Fix leak by using
488         xrealloc even for the first allocation in the loop, as buf
489         is static.
490
491 2018-11-29  Rajendra SY  <rajendra.sy@gmail.com>
492
493         PR gdb/23093
494         * gdb/fbsd-tdep.c (fbsd_gdb_signal_from_target)
495         (fbsd_gdb_signal_to_target): New.
496         (fbsd_init_abi): Install gdbarch "signal_from_target" and
497         "signal_to_target" methods.
498
499 2018-11-29  Tom Tromey  <tom@tromey.com>
500
501         * valarith.c (value_x_unop): Don't set argvec[3].
502
503 2018-11-26  Simon Marchi  <simon.marchi@ericsson.com>
504
505         PR gdb/23917
506         * sparc-linux-nat.c (sparc_linux_nat_target): Remove extraneous
507         semicolon.
508
509 2018-11-26  Pedro Alves  <palves@redhat.com>
510
511         * procfs.c (procfs_notice_thread): Replace uses of
512         in_thread_list/is_exited with find_thread_ptid/THREAD_EXITED.
513         * sol-thread.c (sol_thread_target::wait)
514         (sol_update_thread_list_callback): Likewise.
515
516 2018-11-25  Tom Tromey  <tom@tromey.com>
517
518         * ui-out.c (ui_out::field_fmt): Remove comment.
519         * tui/tui-out.c (tui_ui_out::do_field_fmt): Remove comment.
520         * mi/mi-out.c (mi_ui_out::do_field_fmt): Remove comment.
521
522 2018-11-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
523
524         * source.c (open_source_file): Leak fixed in '8e6a5953e1d Fix 4K
525         leak in open_source_file' has been partially undone by '2179fbc36d23
526         Return scoped_fd from open_source_file'. Re-add the transfer of
527         current s->fullname to the unique_xmalloc_ptr fullname given
528         to find_and_open_source.
529
530 2018-11-23  Pedro Alves  <palves@redhat.com>
531
532         * gdbthread.h (enum thread_state): Move comments here.
533         (is_running, is_stopped, is_exited): Remove declarations.
534
535 2018-11-22  Pedro Alves  <palves@redhat.com>
536
537         * Makefile.in (COMMON_SFILES): Add thread-iter.c.
538         * breakpoint.c (breakpoints_should_be_inserted_now): Replace
539         ALL_NON_EXITED_THREADS with all_non_exited_threads.
540         (print_one_breakpoint_location): Replace ALL_INFERIORS with
541         all_inferiors.
542         * bsd-kvm.c: Include inferior.h.
543         * btrace.c (btrace_free_objfile): Replace ALL_NON_EXITED_THREADS
544         with all_non_exited_threads.
545         * common/filtered-iterator.h: New.
546         * common/safe-iterator.h: New.
547         * corelow.c (core_target_open): Don't call init_thread_list here.
548         * darwin-nat.c (thread_info_from_private_thread_info): Replace
549         ALL_THREADS with all_threads.
550         * fbsd-nat.c (fbsd_nat_target::resume): Replace
551         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
552         * fbsd-tdep.c (fbsd_make_corefile_notes): Replace
553         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
554         * fork-child.c (postfork_hook): Don't call init_thread_list here.
555         * gdbarch-selftests.c (register_to_value_test): Adjust.
556         * gdbthread.h: Don't include "inferior.h" here.
557         (struct inferior): Forward declare.
558         (enum step_over_calls_kind): Moved here from inferior.h.
559         (thread_info::deletable): Definition moved to thread.c.
560         (find_thread_ptid (inferior *, ptid_t)): Declare.
561         (ALL_THREADS, ALL_THREADS_BY_INFERIOR, ALL_THREADS_SAFE): Delete.
562         Include "thread-iter.h".
563         (all_threads, all_non_exited_threads, all_threads_safe): New.
564         (any_thread_p): Declare.
565         (thread_list): Delete.
566         * infcmd.c (signal_command): Replace ALL_NON_EXITED_THREADS with
567         all_non_exited_threads.
568         (proceed_after_attach_callback): Delete.
569         (proceed_after_attach): Take an inferior pointer instead of an
570         integer PID.  Adjust to use range-for.
571         (attach_post_wait): Pass down inferior pointer instead of pid.
572         Use range-for instead of ALL_NON_EXITED_THREADS.
573         (detach_command): Remove init_thread_list call.
574         * inferior-iter.h: New.
575         * inferior.c (struct delete_thread_of_inferior_arg): Delete.
576         (delete_thread_of_inferior): Delete.
577         (delete_inferior, exit_inferior_1): Use range-for with
578         inf->threads_safe() instead of iterate_over_threads.
579         (inferior_appeared): Call init_thread_list here.
580         (discard_all_inferiors): Use all_non_exited_inferiors.
581         (find_inferior_id, find_inferior_pid): Use all_inferiors.
582         (iterate_over_inferiors): Use all_inferiors_safe.
583         (have_inferiors, number_of_live_inferiors): Use
584         all_non_exited_inferiors.
585         (number_of_inferiors): Use all_inferiors and std::distance.
586         (print_inferior): Use all_inferiors.
587         * inferior.h: Include gdbthread.h.
588         (enum step_over_calls_kind): Moved to gdbthread.h.
589         (struct inferior) <thread_list>: New field.
590         <threads, non_exited_threads, threads_safe>: New methods.
591         (ALL_INFERIORS): Delete.
592         Include "inferior-iter.h".
593         (ALL_NON_EXITED_INFERIORS): Delete.
594         (all_inferiors_safe, all_inferiors, all_non_exited_inferiors): New
595         functions.
596         * inflow.c (child_interrupt, child_pass_ctrlc): Replace
597         ALL_NON_EXITED_THREADS with all_non_exited_threads.
598         * infrun.c (follow_exec): Use all_threads_safe.
599         (clear_proceed_status, proceed): Use all_non_exited_threads.
600         (init_wait_for_inferior): Don't clear inline frame state here.
601         (infrun_thread_stop_requested, for_each_just_stopped_thread): Use
602         all_threads instead of ALL_NON_EXITED_THREADS.
603         (random_pending_event_thread): Use all_non_exited_threads instead
604         of ALL_NON_EXITED_THREADS.  Use a lambda for repeated code.
605         (clean_up_just_stopped_threads_fsms): Use all_non_exited_threads
606         instead of ALL_NON_EXITED_THREADS.
607         (handle_no_resumed): Use all_non_exited_threads instead of
608         ALL_NON_EXITED_THREADS.  Use all_inferiors instead of
609         ALL_INFERIORS.
610         (restart_threads, switch_back_to_stepped_thread): Use
611         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
612         * linux-nat.c (check_zombie_leaders): Replace ALL_INFERIORS with
613         all_inferiors.
614         (kill_unfollowed_fork_children): Use inf->non_exited_threads
615         instead of ALL_NON_EXITED_THREADS.
616         * linux-tdep.c (linux_make_corefile_notes): Use
617         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
618         * linux-thread-db.c (thread_db_target::update_thread_list):
619         Replace ALL_INFERIORS with all_inferiors.
620         (thread_db_target::thread_handle_to_thread_info): Use
621         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
622         * mi/mi-interp.c (multiple_inferiors_p): New.
623         (mi_on_resume_1): Simplify using all_non_exited_threads and
624         multiple_inferiors_p.
625         * mi/mi-main.c (mi_cmd_thread_list_ids): Use all_non_exited_threads
626         instead of ALL_NON_EXITED_THREADS.
627         * nto-procfs.c (nto_procfs_target::open): Don't call
628         init_thread_list here.
629         * record-btrace.c (record_btrace_target_open)
630         (record_btrace_target::stop_recording)
631         (record_btrace_target::close)
632         (record_btrace_target::record_is_replaying)
633         (record_btrace_target::resume, record_btrace_target::wait)
634         (record_btrace_target::record_stop_replaying): Use
635         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
636         * record-full.c (record_full_wait_1): Use all_non_exited_threads
637         instead of ALL_NON_EXITED_THREADS.
638         * regcache.c (cooked_read_test): Remove reference to global
639         thread_list.
640         * remote-sim.c (gdbsim_target::create_inferior): Don't call
641         init_thread_list here.
642         * remote.c (remote_target::update_thread_list): Use
643         all_threads_safe instead of ALL_NON_EXITED_THREADS.
644         (remote_target::process_initial_stop_replies): Replace
645         ALL_INFERIORS with all_non_exited_inferiors and use
646         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
647         (remote_target::open_1): Don't call init_thread_list here.
648         (remote_target::append_pending_thread_resumptions)
649         (remote_target::remote_resume_with_hc): Use all_non_exited_threads
650         instead of ALL_NON_EXITED_THREADS.
651         (remote_target::commit_resume)
652         (remote_target::remove_new_fork_children): Replace ALL_INFERIORS
653         with all_non_exited_inferiors and use all_non_exited_threads
654         instead of ALL_NON_EXITED_THREADS.
655         (remote_target::kill_new_fork_children): Use
656         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.  Remove
657         init_thread_list and init_wait_for_inferior calls.
658         (remote_target::remote_btrace_maybe_reopen)
659         (remote_target::thread_handle_to_thread_info): Use
660         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
661         * target.c (target_terminal::restore_inferior)
662         (target_terminal_is_ours_kind): Replace ALL_INFERIORS with
663         all_non_exited_inferiors.
664         * thread-iter.c: New file.
665         * thread-iter.h: New file.
666         * thread.c: Include "inline-frame.h".
667         (thread_list): Delete.
668         (clear_thread_inferior_resources): Call clear_inline_frame_state.
669         (init_thread_list): Use all_threads_safe instead of
670         ALL_THREADS_SAFE.  Adjust to per-inferior thread lists.
671         (new_thread): Adjust to per-inferior thread lists.
672         (add_thread_silent): Pass inferior to find_thread_ptid.
673         (thread_info::deletable): New, moved from the header.
674         (delete_thread_1): Adjust to per-inferior thread lists.
675         (find_thread_global_id): Use inf->threads().
676         (find_thread_ptid): Use find_inferior_ptid and pass inferior to
677         find_thread_ptid.
678         (find_thread_ptid(inferior*, ptid_t)): New overload.
679         (iterate_over_threads): Use all_threads_safe.
680         (any_thread_p): New.
681         (thread_count): Use all_threads and std::distance.
682         (live_threads_count): Use all_non_exited_threads and
683         std::distance.
684         (valid_global_thread_id): Use all_threads.
685         (in_thread_list): Use find_thread_ptid.
686         (first_thread_of_inferior): Adjust to per-inferior thread lists.
687         (any_thread_of_inferior, any_live_thread_of_inferior): Use
688         inf->non_exited_threads().
689         (prune_threads, delete_exited_threads): Use all_threads_safe.
690         (thread_change_ptid): Pass inferior pointer to find_thread_ptid.
691         (set_resumed, set_running): Use all_non_exited_threads.
692         (is_thread_state, is_stopped, is_exited, is_running)
693         (is_executing): Delete.
694         (set_executing, set_stop_requested, finish_thread_state): Use
695         all_non_exited_threads.
696         (print_thread_info_1): Use all_inferiors and all_threads.
697         (thread_apply_all_command): Use all_non_exited_threads.
698         (thread_find_command): Use all_threads.
699         (update_threads_executing): Use all_non_exited_threads.
700         * tid-parse.c (parse_thread_id): Use inf->threads.
701         * x86-bsd-nat.c (x86bsd_dr_set): Use inf->non_exited_threads ().
702
703 2018-11-22  Pedro Alves  <palves@redhat.com>
704
705         * infrun.c (follow_exec) <set follow-exec new>: Add thread and
706         switch to it before calling into try_open_exec_file.
707
708 2018-11-22  Pedro Alves  <palves@redhat.com>
709
710         * cli/cli-interp.c (cli_on_user_selected_context_changed): Use
711         inferior_thread instead of find_thread_ptid, and only when
712         inferior_ptid is not null_ptid.
713         * inferior.c (add_inferior): Don't include target_pid_to_str
714         output when the inferior is not started.
715         * python/py-inferior.c (python_on_normal_stop): Don't use
716         find_thread_ptid.
717         (tui_on_user_selected_context_changed): Use inferior_thread
718         instead of find_thread_ptid, and only when inferior_ptid is not
719         null_ptid.
720
721 2018-11-21  Benno Fünfstück  <benno.fuenfstueck@gmail.com>
722
723         PR python/23714
724         * gdb/python/python.c (execute_gdb_command): Call
725         prevent_dont_repeat earlier to avoid affecting dont_repeat.
726
727 2018-11-21  Andrew Burgess  <andrew.burgess@embecosm.com>
728
729         * Makefile.in (ALL_TARGET_OBS): Add arch/riscv.o.
730         (HFILES_NO_SRCDIR): Add arch/riscv.h.
731         * arch/riscv.c: New file.
732         * arch/riscv.h: New file.
733         * configure.tgt: Add cpu_obs list of riscv, move riscv-tdep.o into
734         this list, and add arch/riscv.o.
735         * features/Makefile: Add riscv features.
736         * features/riscv/32bit-cpu.c: New file.
737         * features/riscv/32bit-cpu.xml: New file.
738         * features/riscv/32bit-csr.c: New file.
739         * features/riscv/32bit-csr.xml: New file.
740         * features/riscv/32bit-fpu.c: New file.
741         * features/riscv/32bit-fpu.xml: New file.
742         * features/riscv/64bit-cpu.c: New file.
743         * features/riscv/64bit-cpu.xml: New file.
744         * features/riscv/64bit-csr.c: New file.
745         * features/riscv/64bit-csr.xml: New file.
746         * features/riscv/64bit-fpu.c: New file.
747         * features/riscv/64bit-fpu.xml: New file.
748         * features/riscv/rebuild-csr-xml.sh: New file.
749         * riscv-tdep.c: Add 'arch/riscv.h' include.
750         (riscv_gdb_reg_names): Delete.
751         (csr_reggroup): New global.
752         (struct riscv_register_alias): Delete.
753         (struct riscv_register_feature): New structure.
754         (riscv_register_aliases): Delete.
755         (riscv_xreg_feature): New global.
756         (riscv_freg_feature): New global.
757         (riscv_virtual_feature): New global.
758         (riscv_csr_feature): New global.
759         (riscv_create_csr_aliases): New function.
760         (riscv_read_misa_reg): Delete.
761         (riscv_has_feature): Delete.
762         (riscv_isa_xlen): Simplify, just return cached xlen.
763         (riscv_isa_flen): Simplify, just return cached flen.
764         (riscv_has_fp_abi): Update for changes in struct gdbarch_tdep.
765         (riscv_register_name): Update to make use of tdesc_register_name.
766         Look up xreg and freg names in the new globals riscv_xreg_feature
767         and riscv_freg_feature.  Don't supply csr aliases here.
768         (riscv_fpreg_q_type): Delete.
769         (riscv_register_type): Use tdesc_register_type in almost all
770         cases, override the returned type in a few specific cases only.
771         (riscv_print_one_register_info): Handle errors reading registers.
772         (riscv_register_reggroup_p): Use tdesc_register_in_reggroup_p for
773         registers that are otherwise unknown to GDB.  Also check the
774         csr_reggroup.
775         (riscv_print_registers_info): Remove assert about upper register
776         number, and use gdbarch_register_reggroup_p instead of
777         short-cutting.
778         (riscv_find_default_target_description): New function.
779         (riscv_check_tdesc_feature): New function.
780         (riscv_add_reggroups): New function.
781         (riscv_setup_register_aliases): New function.
782         (riscv_init_reggroups): New function.
783         (_initialize_riscv_tdep): Add calls to setup CSR aliases, and
784         setup register groups.  Register new riscv debug variable.
785         * riscv-tdep.h: Add 'arch/riscv.h' include.
786         (struct gdbarch_tdep): Remove abi union, and add
787         riscv_gdbarch_features field.  Remove cached quad floating point
788         type, and provide initialisation for double type field.
789         * target-descriptions.c (maint_print_c_tdesc_cmd): Add riscv to
790         the list of targets using the feature based target descriptions.
791         * NEWS: Mention target description support.
792
793 2018-11-21  Pedro Alves  <palves@redhat.com>
794
795         * valops.c (find_method_list, value_find_oload_method_list)
796         (find_overload_match, find_oload_champ): Rename parameters and
797         locals.
798
799 2018-11-21  Pedro Alves  <palves@redhat.com>
800
801         * valops.c (find_method_list): Replace pointer and length
802         parameters with an gdb::array_view.  Adjust.
803         (value_find_oload_method_list): Likewise.
804         (find_overload_match): Use gdb::array_view for methods list.
805         Adjust to find_oload_champ interface change.
806         (find_oload_champ): 'xm_worker_vec' parameter now a pointer/array.
807         'num_fns' parameter now a size_t.  Eliminate 'fn_count' local.
808
809 2018-11-21  Pedro Alves  <palves@redhat.com>
810
811         * gdbtypes.c (compare_badness): Change type of parameters to const
812         reference.  Adjust to badness_vector being a std::vector now.
813         (rank_function): Adjust to badness_vector being a std::vector now.
814         * gdbtypes.h (badness_vector): Now a typedef to std::vector.
815         (LENGTH_MATCH): Delete.
816         (compare_badness): Change type of parameters to const reference.
817         (rank_function): Return a badness_vector by value now.
818         (find_overload_match): Adjust to badness_vector being a
819         std::vector now.  Remove cleanups.
820         (find_oload_champ_namespace): 'oload_champ_bv' parameter now a
821         badness_vector pointer.
822         (find_oload_champ_namespace_loop): 'oload_champ_bv' parameter now
823         a badness_vector pointer.  Adjust to badness_vector being a
824         std::vector now.  Remove cleanups.
825         (find_oload_champ): 'oload_champ_bv' parameter now
826         a badness_vector pointer.  Adjust to badness_vector being a
827         std::vector now.  Remove cleanups.
828
829 2018-11-21  Pedro Alves  <palves@redhat.com>
830
831         * cp-support.c (sym_return_val_size, sym_return_val_index)
832         (sym_return_val): Delete.
833         (overload_list_add_symbol): Add std::vector parameter.  Adjust to
834         add to the vector.
835         (make_symbol_overload_list): Adjust to return a std::vector
836         instead of maintaining a global open coded vector.
837         (make_symbol_overload_list_block): Add std::vector parameter.
838         (make_symbol_overload_list_block): Rename to ...
839         (add_symbol_overload_list_block): ... this and add std::vector
840         parameter.
841         (make_symbol_overload_list_namespace): Rename to ...
842         (add_symbol_overload_list_namespace): ... this and add std::vector
843         parameter.
844         (make_symbol_overload_list_adl_namespace): Rename to ...
845         (add_symbol_overload_list_adl_namespace): ... this and add
846         std::vector parameter.
847         (make_symbol_overload_list_adl): Delete.
848         (add_symbol_overload_list_adl): New.
849         (make_symbol_overload_list_using): Rename to ...
850         (add_symbol_overload_list_using): ... this and add std::vector
851         parameter.
852         (make_symbol_overload_list_qualified): Rename to ...
853         (add_symbol_overload_list_qualified): ... this and add std::vector
854         parameter.
855         * cp-support.h: Include "common/array-view.h" and <vector>.
856         (make_symbol_overload_list): Change return type to std::vector.
857         (make_symbol_overload_list_adl): Delete declaration.
858         (add_symbol_overload_list_adl): New declaration.
859         * valops.c (find_overload_match): Local 'oload_syms' now a
860         std::vector.
861         (find_oload_champ_namespace): 'oload_syms' parameter now a
862         std::vector pointer.
863         (find_oload_champ_namespace_loop): 'oload_syms' parameter now a
864         std::vector pointer.  Adjust to new make_symbol_overload_list
865         interface.
866
867 2018-11-21  Pedro Alves  <palves@redhat.com>
868
869         * common/array-view.h (array_view::splice(size_type, size_t)): New.
870         (array_view::splice(size_type)): New.
871         * eval.c (eval_call, evaluate_funcall): Adjust to use array_view.
872         * extension.c (xmethod_worker::get_arg_types): Adjust to return an
873         std::vector.
874         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
875         * extension.h: Include "common/array-view.h".
876         (xmethod_worker::invoke): Adjust to use gdb::array_view.
877         (xmethod_worker::get_arg_types): Adjust to return an std::vector.
878         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
879         (xmethod_worker::do_get_arg_types): Adjust to use std::vector.
880         (xmethod_worker::do_get_result_type): Adjust to use
881         gdb::array_view.
882         * gdbtypes.c (rank_function): Adjust to use gdb::array_view.
883         * gdbtypes.h: Include "common/array-view.h".
884         (rank_function): Adjust to use gdb::array_view.
885         * python/py-xmethods.c (python_xmethod_worker::invoke)
886         (python_xmethod_worker::do_get_arg_types)
887         (python_xmethod_worker::do_get_result_type)
888         (python_xmethod_worker::invoke): Adjust to new interfaces.
889         * valarith.c (value_user_defined_cpp_op, value_user_defined_op)
890         (value_x_binop, value_x_unop): Adjust to use gdb::array_view.
891         * valops.c (find_overload_match, find_oload_champ_namespace)
892         (find_oload_champ_namespace_loop, find_oload_champ): Adjust to use
893         gdb:array_view and the new xmethod_worker interfaces.
894         * value.c (result_type_of_xmethod, call_xmethod): Adjust to use
895         gdb::array_view.
896         * value.h (find_overload_match, result_type_of_xmethod)
897         (call_xmethod): Adjust to use gdb::array_view.
898         * unittests/array-view-selftests.c: Add slicing tests.
899
900 2018-11-21  Pedro Alves  <palves@redhat.com>
901
902         * ada-lang.c (ada_evaluate_subexp): Adjust to pass an array_view.
903         * common/array-view.h (make_array_view): New.
904         * compile/compile-object-run.c (compile_object_run): Adjust to
905         pass an array_view.
906         * elfread.c (elf_gnu_ifunc_resolve_addr): Adjust.
907         * eval.c (eval_call): Adjust to pass an array_view.
908         (evaluate_subexp_standard): Adjust to pass an array_view.
909         * gcore.c (call_target_sbrk): Adjust to pass an array_view.
910         * guile/scm-value.c (gdbscm_value_call): Likewise.
911         * infcall.c (push_dummy_code): Replace pointer + size parameters
912         with an array_view parameter.
913         (call_function_by_hand, call_function_by_hand_dummy): Likewise and
914         adjust.
915         * infcall.h: Include "common/array-view.h".
916         (call_function_by_hand, call_function_by_hand_dummy): Replace
917         pointer + size parameters with an array_view parameter.
918         * linux-fork.c (inferior_call_waitpid): Adjust to use array_view.
919         * linux-tdep.c (linux_infcall_mmap): Likewise.
920         * objc-lang.c (lookup_objc_class, lookup_child_selector)
921         (value_nsstring, print_object_command): Likewise.
922         * python/py-value.c (valpy_call): Likewise.
923         * rust-lang.c (rust_evaluate_funcall): Likewise.
924         * spu-tdep.c (flush_ea_cache): Likewise.
925         * valarith.c (value_x_binop, value_x_unop): Likewise.
926         * valops.c (value_allocate_space_in_inferior): Likewise.
927         * unittests/array-view-selftests.c (run_tests): Add
928         gdb::make_array_view test.
929
930 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
931
932         * cli-out.c (cli_ui_out::do_field_int): Use string_printf rather
933         than a fixed size buffer.
934
935 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
936
937         * breakpoint.c (print_one_breakpoint_location): Reduce whitespace,
938         and remove insertion of extra spaces in GDB's output.
939         * cli-out.c (cli_ui_out::do_field_fmt): Update header comment.
940         Layout field into a temporary buffer, and then output it as a
941         string field.
942
943 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
944
945         * NEWS: Document the language choice done by
946         'info [types|functions|variables]|rbreak'.
947
948 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
949
950         * symtab.c (treg_matches_sym_type_name): Use
951         scoped_switch_to_sym_language_if_auto instead of local logic.
952         (print_symbol_info): Use scoped_switch_to_sym_language_if_auto
953         to switch to SYM language when language mode is auto.
954
955 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
956
957         * language.h (scoped_switch_to_sym_language_if_auto): New class.
958
959 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
960
961         * symtab.c (search_symbols): Properly check absence of type regexp
962         before entering the loop scanning the minimal symbols.
963
964 2018-11-20  John Darrington  <john@darrington.wattle.id.au>
965
966         * s12z-tdep.c (s12z_extract_return_value): New function.
967         (inv_reg_perm) New array.
968         (s12z_return_value): Populate readbuf if non-null.
969
970 2018-11-20  Eli Zaretskii  <eliz@gnu.org>
971
972         * common/filestuff.c (gdb_fopen_cloexec): Disable use of "e" mode
973         with 'fopen' also if O_CLOEXEC is equal to O_NOINHERIT, to cater
974         to MinGW fixed by Gnulib.
975         (O_NOINHERIT): Define if not defined.
976
977 2018-11-19  John Darrington  <john@darrington.wattle.id.au>
978
979         * s12z-tdep.c (s12z_frame_cache): Add an assertion.
980
981 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
982
983         * infrun.c (displaced_step_inferior_state) <next>: Remove.
984
985 2018-11-19  Tom Tromey  <tom@tromey.com>
986
987         * source.c (get_filename_and_charpos): Return void.
988
989 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
990
991         * skip.c (_initialize_step_skip): Fix "info skip" help.
992
993 2018-11-16  Tom Tromey  <tom@tromey.com>
994
995         PR rust/23625:
996         * rust-lang.c (rust_internal_print_type): Handle TYPE_CODE_PTR.
997
998 2018-11-19  Simon Marchi  <simon.marchi@ericsson.com>
999
1000         * infrun.c (displaced_step_inferior_states): Change type to
1001         std::forward_list.
1002         (get_displaced_stepping_state): Adjust.
1003         (displaced_step_in_progress_any_inferior): Adjust.
1004         (add_displaced_stepping_state): Adjust.
1005         (remove_displaced_stepping_state): Adjust.
1006
1007 2018-11-18  Tom Tromey  <tom@tromey.com>
1008
1009         PR build/23814:
1010         * target-delegates.c: Rebuild.
1011         * ia64-linux-nat.c (class ia64_linux_nat_target)
1012         <have_steppable_watchpoint>: Use override.  Return true, not 1.
1013         (ia64_linux_nat_target::can_use_hw_breakpoint): Rename.  Remove
1014         "self" argument.
1015         (ia64_linux_nat_target::low_new_thread): Rename.
1016         (class ia64_linux_nat_target) <read_description>: Don't declare.
1017         * target.h (struct target_ops) <have_steppable_watchpoint>: Return
1018         bool.
1019
1020 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1021
1022         PR gdb/22736:
1023         * aarch64-tdep.c (aarch64_push_dummy_call): Remove
1024         lang_struct_return code.
1025
1026 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1027
1028         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
1029         return_method.
1030         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
1031         * amd64-tdep.c (amd64_push_arguments): Likewise.
1032         (amd64_push_dummy_call): Likewise.
1033         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
1034         * arc-tdep.c (arc_push_dummy_call): Likewise.
1035         * arm-tdep.c (arm_push_dummy_call): Likewise.
1036         * avr-tdep.c (avr_push_dummy_call): Likewise.
1037         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
1038         * cris-tdep.c (cris_push_dummy_call): Likewise.
1039         * csky-tdep.c (csky_push_dummy_call): Likewise.
1040         * frv-tdep.c (frv_push_dummy_call): Likewise.
1041         * gdbarch.c: Regenerate.
1042         * gdbarch.h: Regenerate.
1043         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
1044         return_method.
1045         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
1046         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
1047         (hppa64_push_dummy_call): Likewise.
1048         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
1049         * i386-tdep.c (i386_push_dummy_call): Likewise.
1050         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
1051         * infcall.c (call_function_by_hand_dummy): Likewise.
1052         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
1053         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
1054         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
1055         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
1056         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
1057         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
1058         * mep-tdep.c (mep_push_dummy_call): Likewise.
1059         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
1060         (mips_n32n64_push_dummy_call): Likewise.
1061         (mips_o32_push_dummy_call): Likewise.
1062         (mips_o64_push_dummy_call): Likewise.
1063         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
1064         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
1065         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
1066         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
1067         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
1068         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
1069         (ppc64_sysv_abi_push_dummy_call): Likewise.
1070         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
1071         (ppc64_sysv_abi_push_dummy_call): Likewise.
1072         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
1073         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
1074         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
1075         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
1076         * rx-tdep.c (rx_push_dummy_call): Likewise.
1077         * s390-tdep.c (s390_push_dummy_call): Likewise.
1078         * score-tdep.c (score_push_dummy_call): Likewise.
1079         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
1080         (sh_push_dummy_call_nofpu): Likewise.
1081         * sparc-tdep.c (sparc32_store_arguments): Likewise.
1082         (sparc32_push_dummy_call): Likewise.
1083         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
1084         (sparc64_push_dummy_call): Likewise.
1085         * spu-tdep.c (spu_push_dummy_call): Likewise.
1086         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
1087         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
1088         * v850-tdep.c (v850_push_dummy_call): Likewise.
1089         * vax-tdep.c (vax_push_dummy_call): Likewise.
1090         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
1091         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
1092
1093 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1094
1095         * gdbarch.sh (enum function_call_return_method): Add enum.
1096         * gdbarch.h: Regenerate.
1097         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
1098
1099 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
1100
1101         * unittests/copy_bitwise-selftests.c: New file.
1102         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
1103         (selftests::copy_bitwise_tests): Delete, moving this code to
1104         unittests/copy_bitwise-selftests.c instead.
1105         (_initialize_utils): Do not register copy_bitwise tests.
1106         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1107         unittests/copy_bitwise-selftests.c.
1108
1109 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
1110
1111         * ada-lang.c (move_bits): Delete. Update all callers to use
1112         copy_bitwise instead.
1113         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
1114         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
1115         Move from here to utils.c.
1116         (_initialize_dwarf2loc): Remove call to register copy_bitwise
1117         selftests.
1118         * utils.h (copy_bitwise): Add declaration.
1119         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
1120         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
1121         Moved here from dwarf2loc.c.
1122         (_initialize_utils): Register copy_bitwise selftests.
1123
1124 2018-11-14  Jim Wilson  <jimw@sifive.com>
1125
1126         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
1127         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
1128         then increment next_regnum if odd.
1129         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
1130         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
1131         function type.  Pass new arg to riscv_arg_location based on function
1132         type.
1133         (riscv_return_value): Pass new arg to riscv_arg_location.
1134
1135         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
1136         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
1137         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
1138
1139         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
1140         setting len.  New local align, set to max of arg align and xlen,
1141         and pass to first riscv_assign_stack_location call.
1142
1143 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
1144
1145         * skip.c (complete_skip_number): New function.
1146         (_initialize_step_skip): Add completers to some skip commands.
1147
1148 2018-11-09  Tom Tromey  <tom@tromey.com>
1149
1150         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
1151         (struct remote_g_packet_data): Derive from allocate_on_obstack.
1152         <guesses>: Now a std::vector.
1153         (remote_g_packet_data_init, register_remote_g_packet_guess):
1154         Update.
1155         (remote_read_description_p): Update.  Return bool.
1156         (remote_target::read_description): Update.
1157         (struct remote_g_packet_guess): Add constructor.
1158
1159 2018-11-09  Tom Tromey  <tom@tromey.com>
1160
1161         * common/scoped_fd.h (class scoped_fd): Add move constructor and
1162         move assignment operator.
1163         * psymtab.c (psymtab_to_fullname): Update.
1164         * source.h (open_source_file): Return scoped_fd.
1165         (find_and_open_source): Likewise.
1166         * source.c (open_source_file): Return scoped_fd.
1167         (get_filename_and_charpos): Update.
1168         (print_source_lines_base): Update.  Use scoped_fd::to_file.
1169         (forward_search_command): Likewise.
1170         (reverse_search_command): Likewise.
1171         (find_and_open_source): Return scoped_fd.
1172         * tui/tui-source.c (tui_set_source_content): Update.  Use
1173         gdb_file_up.
1174
1175 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
1176
1177         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
1178         overflow.
1179
1180 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1181
1182         * configure: Regenerate.
1183
1184 2018-11-09  Tom de Vries  <tdevries@suse.de>
1185
1186         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
1187         unconditionally, to set the language of the symbol.  Manage freeing
1188         returned pointer using gdb::unique_xmalloc_ptr.
1189
1190 2018-11-08  Tom Tromey  <tom@tromey.com>
1191
1192         * record.c (require_record_target): Upper-case "<TAB>".
1193
1194 2018-11-08  Tom Tromey  <tom@tromey.com>
1195
1196         * python/lib/gdb/command/pretty_printers.py
1197         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
1198
1199 2018-11-08  Tom Tromey  <tom@tromey.com>
1200
1201         PR gdb/23555:
1202         PR gdb/23838:
1203         * target.h (target_supports_terminal_ours): Return bool.
1204         * target.c (target_supports_terminal_ours): Handle case where
1205         current_top_target returns nullptr.  Return bool.
1206
1207 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
1208
1209         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
1210         return the correct count for potential HFAs.
1211
1212 2018-11-08  Jan Beulich  <jbeulich@suse.com>
1213
1214         * i387-tdep.c (i387_supply_xsave): Split handling of
1215         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
1216         (i387_collect_xsave): Likewise.
1217
1218 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
1219
1220         * riscv-tdep.c (riscv_insn::decode): Update header comment.
1221         (riscv_frame_this_id): Catch errors thrown while building the
1222         frame cache, leave the frame id as the default, which is the outer
1223         frame id.
1224
1225 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
1226
1227         * ada-lang.c (read_atcb): Only set task_info->called_task if
1228         task_info->state == Entry_Caller_Sleep.
1229         (print_ada_task_info): Do not check task_info->state before
1230         checking task_info->called_task.
1231         (info_task): Likewise.
1232
1233 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
1234
1235         * ada-tasks.c (read_atcb): Clear task_info before computing
1236         the value of each of its fields.
1237
1238 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
1239
1240         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
1241         NULL before dereferencing it.
1242
1243 2018-11-06  Tom de Vries  <tdevries@suse.de>
1244
1245         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
1246         program headers.
1247
1248 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
1249
1250         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
1251         so that it applies to uclinux as well.
1252
1253 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
1254
1255         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
1256         when on AAPCS.
1257
1258 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
1259
1260         * riscv-fbsd-nat.c (getregs_supplies): Return true for
1261         RISCV_CSR_SSTATUS_REGNUM.
1262
1263 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1264
1265         * source.c (open_source_file): Fix leak by transferring the
1266         current s->fullname to the unique_xmalloc_ptr fullname given
1267         to find_and_open_source.
1268
1269 2018-11-04  Tom Tromey  <tom@tromey.com>
1270
1271         * varobj.c (install_default_visualizer): Update.
1272         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
1273         Return gdbpy_ref.
1274         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
1275         (find_pretty_printer_from_progspace)
1276         (find_pretty_printer_from_gdb, find_pretty_printer)
1277         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
1278         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
1279         Update.
1280
1281 2018-11-04  Tom Tromey  <tom@tromey.com>
1282
1283         * python/python.c (gdbpy_parameter_value): Update.
1284         * python/python-internal.h (python_string_to_unicode)
1285         (python_string_to_target_python_string)
1286         (host_string_to_python_string): Return gdbpy_ref.
1287         * python/py-utils.c (python_string_to_unicode)
1288         (unicode_to_encoded_python_string)
1289         (unicode_to_target_python_string)
1290         (python_string_to_target_string)
1291         (python_string_to_target_python_string): Return gdbpy_ref.
1292         (python_string_to_host_string): Update.
1293         (host_string_to_python_string): Return gdbpy_ref.
1294         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
1295         (stpy_fullname): Update.
1296         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
1297         Update.
1298         * python/py-prettyprint.c (print_string_repr): Update.
1299         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
1300         (objfpy_get_build_id): Update.
1301         * python/py-breakpoint.c (bppy_get_location)
1302         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
1303         Update.
1304
1305 2018-11-04  Tom Tromey  <tom@tromey.com>
1306
1307         * python/python-internal.h (gdb_py_object_from_longest)
1308         (gdb_py_object_from_ulongest): Return gdbpy_ref.
1309         * python/py-value.c (valpy_int): Update.
1310         * python/py-utils.c (gdb_py_object_from_longest): Return
1311         gdbpy_ref.
1312         (gdb_py_object_from_ulongest): Likewise.
1313         * python/py-type.c (typy_get_alignof): Update.
1314         * python/py-linetable.c (ltpy_get_all_source_lines)
1315         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
1316         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
1317
1318 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1319
1320         * ada-lang.c (_initialize_ada_language): Fix typo.
1321
1322 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1323
1324         * language.c (type): Remove.
1325         (_initialize_language): Remove assignment to type.
1326
1327 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
1328
1329         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
1330         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
1331         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
1332         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
1333         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
1334         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
1335         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
1336         and aarch64-ravenscar-thread.o.
1337         * NEWS: Add entry documenting Ravenscar tasking support
1338         on AArch64 ELF.
1339
1340 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
1341
1342         * symtab.c (info_functions_command): Initialize quiet flag.
1343         * stack.c (info_args_command): Likewise.
1344
1345 2018-11-01  Jim Wilson  <jimw@sifive.com>
1346
1347         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
1348         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
1349         debugging messages.
1350
1351 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1352
1353         * ada-lang.c (ada_watch_location_expression): New function.
1354         (ada_language_defn): Set la_watch_location_expression to
1355         ada_watch_location_expression.
1356
1357 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1358
1359         * print-utils.c (int_string): Remove unnecessary trailing spaces.
1360
1361 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1362
1363         * rs6000-tdep.c (skip_prologue): Fix potential negative left
1364         shifting.
1365
1366 2018-11-01  Jerome Guitton  <guitton@adacore.com>
1367             Joel Brobecker  <brobecker@adacore.com>
1368
1369         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
1370         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
1371         * arm-pikeos-tdep.c: New file.
1372         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
1373         embedded system.
1374         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
1375
1376 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
1377
1378         * common/pathstuff.c (get_standard_temp_dir): New.
1379         * common/pathstuff.h (get_standard_temp_dir): New.
1380         * config.in: Re-generate.
1381         * configure: Re-generate.
1382         * configure.ac: Don't check for mkdtemp.
1383         * gnulib/aclocal-m4-deps.mk: Re-generate.
1384         * gnulib/aclocal.m4: Re-generate.
1385         * gnulib/config.in: Re-generate.
1386         * gnulib/configure: Re-generate.
1387         * gnulib/import/Makefile.am: Re-generate.
1388         * gnulib/import/Makefile.in: Re-generate.
1389         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1390         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1391         * gnulib/import/m4/mkdtemp.m4: New file.
1392         * gnulib/import/mkdtemp.c: New file.
1393         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
1394         Add mkdtemp module.
1395         * unittests/mkdir-recursive-selftests.c (test): Use
1396         get_standard_temp_dir.
1397         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
1398         ifdef.
1399         * compile/compile.c (get_compile_file_tempdir): Likewise.
1400
1401 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1402
1403         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
1404         (SIG_FRAME_LR_OFFSET64): New define.
1405         (SIG_FRAME_FP_OFFSET64): New define.
1406         (aix_sighandle_frame_cache): New Function.
1407         (aix_sighandle_frame_this_id): New Function.
1408         (aix_sighandle_frame_prev_register): New Function.
1409         (aix_sighandle_frame_sniffer): New Function.
1410         (aix_sighandle_frame_unwind): New global variable.
1411         (rs6000_aix_init_osabi): Install new frame unwinder.
1412
1413 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
1414
1415         PR gdb/23835
1416         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
1417         already defined.
1418
1419 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1420
1421         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
1422
1423 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
1424
1425         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
1426         (producer_is_icc): New function.
1427         (check_producer): Set producer_is_icc field on dwarf2_cu.
1428         (dwarf2_init_integer_type): New function.
1429         (read_base_type): Call dwarf2_init_integer_type instead of
1430         init_integer_type in all cases.
1431         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
1432         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
1433         LEN is greater than 0.
1434
1435 2018-10-30  Tom Tromey  <tom@tromey.com>
1436
1437         * main.c (captured_main_1): Check return value of bfd_init.
1438
1439 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1440
1441         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
1442         Adjust comments.
1443
1444 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1445
1446         * procfs.c: Include common/pathstuff.h.
1447
1448 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1449
1450         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1451         Add missing braces.  No functional change.
1452
1453 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1454
1455         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
1456         to report a bad option and fix indentation.
1457         * demangle.c (demangle_command): Use report_unrecognized_option_error
1458         to report a bad option and correctly report the bad option.
1459
1460 2018-10-27  Tom Tromey  <tom@tromey.com>
1461
1462         PR cli/23364:
1463         * darwin-nat.c (copied_shell): New global.
1464         (may_have_sip): Rename from should_disable_startup_with_shell.
1465         (copy_shell_to_cache, maybe_cache_shell): New functions.
1466         (darwin_nat_target::create_inferior): Update.  Use
1467         copied_shell.
1468
1469 2018-10-27  Tom Tromey  <tom@tromey.com>
1470
1471         * unittests/scoped_fd-selftests.c (test_to_file): New function.
1472         (run_tests): Call test_to_file.
1473         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
1474         temporary files.
1475         * common/scoped_fd.h (scoped_fd::to_file): New method.
1476
1477 2018-10-27  Tom Tromey  <tom@tromey.com>
1478
1479         * unittests/scoped_mmap-selftests.c (test_normal): Use
1480         gdb_mkostemp_cloexec.
1481         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
1482         Use gdb_mkostemp_cloexec.
1483         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
1484         gnulib/config.in, gnulib/configure,
1485         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
1486         gnulib/import/m4/gnulib-cache.m4,
1487         gnulib/import/m4/gnulib-comp.m4: Update.
1488         * gnulib/import/m4/mkostemp.m4: New file.
1489         * gnulib/import/m4/mkstemp.m4: Remove.
1490         * gnulib/import/mkostemp.c: New file.
1491         * gnulib/import/mkstemp.m4: Remove.
1492         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
1493         mkstemp, add mkostemp.  Apply new patch.
1494         * gnulib/import/stdlib.in.h: Apply patch.
1495         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
1496         New file.
1497         * dwarf-index-write.c (write_psymtabs_to_index): Use
1498         gdb_mkostemp_cloexec.
1499         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
1500
1501 2018-10-27  Tom Tromey  <tom@tromey.com>
1502
1503         * unittests/mkdir-recursive-selftests.c: New file.
1504         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1505         unittests/mkdir-recursive-selftests.c.
1506         * dwarf-index-cache.c (mkdir_recursive): Move to
1507         common/filestuff.c.
1508         (index_cache::store): Check return value of mkdir_recursive.
1509         (create_dir_and_check, test_mkdir_recursive): Move to new file.
1510         (_initialize_index_cache): Don't register test.
1511         * common/filestuff.h (mkdir_recursive): Declare.
1512         * common/filestuff.c (mkdir_recursive): Move from
1513         dwarf-index-cache.c.  Return bool.
1514
1515 2018-10-27  Tom Tromey  <tom@tromey.com>
1516
1517         * dwarf-index-write.c (write_psymtabs_to_index): Move
1518         make_temp_filename to common/pathstuff.c.
1519         * common/pathstuff.h (make_temp_filename): Declare.
1520         * common/pathstuff.c (make_temp_filename): New function, moved
1521         from dwarf-index-write.c.
1522
1523 2018-10-27  Tom Tromey  <tom@tromey.com>
1524
1525         * procfs.c (procfs_target::create_inferior): Use get_shell.
1526         * cli/cli-cmds.c (shell_escape): Use get_shell.
1527         * windows-nat.c (windows_nat_target::create_inferior): Use
1528         get_shell.
1529         * common/pathstuff.c (get_shell): New function.
1530         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
1531         (fork_inferior): Use get_shell.
1532         * common/pathstuff.h (get_shell): Declare.
1533
1534 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1535
1536         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
1537
1538 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1539
1540         * stack.c (print_variable_and_value_data): Add preg and treg.
1541         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
1542         and update callers.
1543         (print_frame_arg_vars): Likewise.
1544         (prepare_reg): New function.
1545         (info_locals_command): Extract info print args and use them.
1546         (info_args_command): Likewise.
1547         (_initialize_stack): Modify on-line help.
1548         * symtab.c (treg_matches_sym_type_name): New function.
1549         (search_symbols): New arg t_regexp.
1550         (symtab_symbol_info): New args quiet, regexp, t_regexp.
1551         (info_variables_command): Extract info print args and use them.
1552         (info_functions_command): Likewise.
1553         (info_types_command): Update call to symtab_symbol_info.
1554         (_initialize_symtab): Modify on-line help.
1555         * symtab.h (treg_matches_sym_type_name): New function.
1556         (search_symbols): New t_regexp arg.
1557
1558 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1559
1560         * cli-utils.c (extract_arg_maybe_quoted): New function.
1561         (extract_info_print_args): New function.
1562         (info_print_args_help): New function.
1563         (report_unrecognized_option_error): New function.
1564         * cli-utils.h (extract_arg_maybe_quoted): New function.
1565         (extract_info_print_args): New function.
1566         (info_print_args_help): New function.
1567         (report_unrecognized_option_error): New function.
1568
1569 2018-10-26  Tom Tromey  <tom@tromey.com>
1570
1571         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
1572         (compute_compunit_symtab_includes): Update.
1573         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
1574         (compunit_symtab_ptr): Likewise.
1575
1576 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1577
1578         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
1579         default_print_auxv_entry for specific tag values.
1580
1581 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1582
1583         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
1584
1585 2018-10-26  Jim Wilson  <jimw@sifive.com>
1586
1587         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
1588         (riscv_linux_sigframe_init): Declare.
1589         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
1590         (riscv_linux_sigframe): New.
1591         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
1592         (riscv_linux_sigframe_init): Define.
1593         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
1594
1595         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
1596         (riscv_isa_flen): Likewise.  Drop static.
1597         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
1598         (riscv_isa_flen): Likewise.  Declare.
1599
1600 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1601             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1602
1603         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
1604         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
1605         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
1606         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
1607         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
1608         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
1609         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
1610         Define.
1611         (struct ppc_linux_features) <htm>: New field.
1612         (ppc_linux_no_features): Add initializer for htm field.
1613         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1614         new tdescs.
1615         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
1616         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
1617         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
1618         Define if not already defined.
1619         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
1620         and rs6000/powerpc-isa207-htm-vsx64l.
1621         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
1622         rs6000/powerpc-isa207-htm-vsx64l.xml.
1623         * features/rs6000/power-htm-spr.xml: New file.
1624         * features/rs6000/power-htm-core.xml: New file.
1625         * features/rs6000/power64-htm-core.xml: New file.
1626         * features/rs6000/power-htm-fpu.xml: New file.
1627         * features/rs6000/power-htm-altivec.xml: New file.
1628         * features/rs6000/power-htm-vsx.xml: New file.
1629         * features/rs6000/power-htm-ppr.xml: New file.
1630         * features/rs6000/power-htm-dscr.xml: New file.
1631         * features/rs6000/power-htm-tar.xml: New file.
1632         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
1633         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
1634         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
1635         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
1636         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
1637         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
1638         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1639         fetch_regset with HTM regsets.
1640         (store_register, store_ppc_registers): Call store_regset with HTM
1641         regsets.
1642         (ppc_linux_nat_target::read_description): Set htm field in the
1643         features struct if needed.
1644         * ppc-linux-tdep.c: Include
1645         features/rs6000/powerpc-isa207-htm-vsx32l.c and
1646         features/rs6000/powerpc-isa207-htm-vsx64l.c.
1647         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
1648         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
1649         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
1650         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
1651         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
1652         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
1653         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
1654         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
1655         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
1656         (ppc32_linux_ctarregset): New globals.
1657         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
1658         (ppc_linux_collect_core_cpgrregset): New function.
1659         (ppc_linux_iterate_over_regset_sections): Call back with the htm
1660         regsets.
1661         (ppc_linux_core_read_description): Check if the tm spr section is
1662         present and set htm in the features struct.
1663         (_initialize_ppc_linux_tdep): Call
1664         initialize_tdesc_powerpc_isa207_htm_vsx32l and
1665         initialize_tdesc_powerpc_isa207_htm_vsx64l.
1666         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
1667         Declare.
1668         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
1669         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
1670         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
1671         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
1672         New fields.
1673         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
1674         Likewise.
1675         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
1676         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
1677         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
1678         New enum fields.
1679         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
1680         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
1681         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
1682         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
1683         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
1684         <PPC_CTAR_REGNUM>: Likewise.
1685         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
1686         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
1687         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
1688         (IS_CEFP_PSEUDOREG): Define.
1689         (rs6000_register_name): Hide the upper halves of checkpointed VSX
1690         registers.  Return names for the checkpointed DFP, VSX, and EFP
1691         pseudo registers.
1692         (rs6000_pseudo_register_type): Remove initial assert and raise an
1693         internal error in the else clause instead.  Return types for the
1694         checkpointed DFP, VSX, and EFP pseudo registers.
1695         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
1696         checkpointed DFP pseudo registers.
1697         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
1698         checkpointed VSX pseudo registers.
1699         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
1700         from efpr_pseudo_register_read and
1701         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
1702         registers.
1703         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
1704         Handle checkpointed DFP, VSX, and EFP registers.
1705         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
1706         (efp_ax_pseudo_register_collect): New functions.
1707         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
1708         register logic to new functions.  Handle checkpointed DFP, VSX,
1709         and EFP pseudo registers.
1710         (rs6000_gdbarch_init): Look for and validate the htm features.
1711         Include checkpointed DFP, VSX and EFP pseudo-registers.
1712         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
1713         HTM registers.
1714
1715 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1716
1717         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
1718         without altivec or fpu.
1719
1720 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1721             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1722
1723         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
1724         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
1725         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
1726         Define if not already defined.
1727         * features/rs6000/power-ebb.xml: New file.
1728         * features/rs6000/power-linux-pmu.xml: New file.
1729         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
1730         features.
1731         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
1732         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
1733         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
1734         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
1735         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
1736         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1737         fetch_regset with ebb and pmu regsets.
1738         (store_register, store_ppc_registers): Call store_regset with ebb
1739         and pmu regsets.
1740         (ppc_linux_nat_target::read_description): Set isa207 field in the
1741         features struct if ebb and pmu are avaiable.
1742         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
1743         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
1744         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
1745         and pmu regsets.
1746         (ppc_linux_core_read_description): Check if the pmu section is
1747         present and set isa207 in the features struct.
1748         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
1749         (ppc32_linux_pmuregset): Declare.
1750         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
1751         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
1752         <ppc_sier_regnum>: New field.
1753         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
1754         New enum values.
1755         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
1756         values.
1757         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
1758         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
1759         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
1760         ebb and pmu features.
1761
1762 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1763             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1764
1765         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
1766         (tdesc_powerpc_isa207_vsx64l): Declare.
1767         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
1768         (struct ppc_linux_features) <isa207>: New field.
1769         (ppc_linux_no_features): Add initializer for isa207 field.
1770         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1771         new tdescs.
1772         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
1773         (NT_PPC_TAR): Define if not already defined.
1774         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
1775         rs6000/powerpc-isa207-vsx64l.
1776         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
1777         rs6000/powerpc-isa207-vsx64l.xml.
1778         * features/rs6000/power-tar.xml: New file.
1779         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
1780         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
1781         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
1782         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
1783         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
1784         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
1785         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1786         fetch_regset with the TAR regset.
1787         (store_register, store_ppc_registers): Call store_regset with the
1788         TAR regset.
1789         (ppc_linux_nat_target::read_description): Set isa207 field in the
1790         features struct if needed.
1791         * ppc-linux-tdep.c: Include
1792         features/rs6000/powerpc-isa207-vsx32l.c and
1793         features/rs6000/powerpc-isa207-vsx64l.c.
1794         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
1795         (ppc_linux_iterate_over_regset_sections): Call back with the tar
1796         regset.
1797         (ppc_linux_core_read_description): Check if the tar section is
1798         present and set isa207 in the features struct.
1799         (_initialize_ppc_linux_tdep): Call
1800         initialize_tdesc_powerpc_isa207_vsx32l and
1801         initialize_tdesc_powerpc_isa207_vsx64l.
1802         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
1803         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
1804         (enum) <PPC_TAR_REGNUM>: New enum value.
1805         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
1806         feature.
1807         (ppc_process_record_op31): Record changes to TAR.
1808
1809 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1810             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1811
1812         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
1813         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
1814         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
1815         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
1816         (struct ppc_linux_features) <ppr_dscr>: New field.
1817         (ppc_linux_no_features): Add initializer for ppr_dscr field.
1818         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1819         new tdescs.
1820         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
1821         Define if not already defined.
1822         * features/Makefile (WHICH): Add
1823         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
1824         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
1825         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
1826         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
1827         * features/rs6000/power-dscr.xml: New file.
1828         * features/rs6000/power-ppr.xml: New file.
1829         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
1830         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
1831         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
1832         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
1833         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
1834         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
1835         * ppc-linux-nat.c: Include <sys/uio.h>.
1836         (fetch_regset, store_regset, check_regset): New functions.
1837         (fetch_register, fetch_ppc_registers): Call fetch_regset with
1838         DSCR and PPR regsets.
1839         (store_register, store_ppc_registers): Call store_regset with
1840         DSCR and PPR regsets.
1841         (ppc_linux_get_hwcap2): New function.
1842         (ppc_linux_nat_target::read_description): Call
1843         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
1844         features struct if needed.
1845         * ppc-linux-tdep.c: Include
1846         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
1847         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
1848         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
1849         (ppc32_linux_dscrregset): New globals.
1850         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
1851         and dscr regsets.
1852         (ppc_linux_core_read_description): Check if the ppr and dscr
1853         sections are present and set ppr_dscr in the features struct.
1854         (_initialize_ppc_linux_tdep): Call
1855         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
1856         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
1857         * ppc-linux-tdep.h (ppc32_linux_pprregset)
1858         (ppc32_linux_dscrregset): Declare.
1859         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
1860         <ppc_dscr_regnum>: New field.
1861         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
1862         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
1863         and dscr features.
1864         (ppc_process_record_op31): Record changes to PPR and DSCR.
1865
1866 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1867
1868         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
1869         second initializer line for the have_* variables.  Initialize
1870         have_fpu to 0 instead of 1.
1871
1872 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1873
1874         * arch/ppc-linux-common.c (ppc_linux_match_description):
1875         Parenthesize tdesc assignements and indent them properly.
1876
1877 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1878
1879         * ppc-linux-nat.c (fetch_register): Change if statement to else
1880         if.
1881         (store_register): Likewise.
1882
1883 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1884
1885         * rs6000-tdep.c: Remove reggroups.h include.
1886         (rs6000_pseudo_register_reggroup_p): Remove.
1887         (rs6000_gdbarch_init): Remove call to
1888         set_tdesc_pseudo_register_reggroup_p.
1889
1890 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1891
1892         * reggroups.c (default_register_reggroup_p): Return true for
1893         decfloat registers and float_reggroup.
1894
1895 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1896
1897         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
1898         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
1899         ppc_linux_collect_vrregset by regcache_collect_regset.
1900
1901 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1902
1903         * linux-tdep.c (linux_collect_regset_section_cb): Use
1904         std::vector<gdb_byte> instead of char * and malloc for buf.
1905         Remove xfree.
1906
1907 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1908
1909         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
1910         symtab_start instead of always using language_unknown.
1911
1912 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1913
1914         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
1915         READ_P parameter, catch and ignore register access errors from
1916         either the old or new MISA location.
1917         (riscv_has_feature): Update call to riscv_read_misa_reg.
1918
1919 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1920
1921         * python/py-function.c (convert_values_to_python): Return
1922         gdbpy_ref<>.  Add header comment.
1923         (fnpy_call): Adjust.
1924
1925 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1926
1927         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
1928         (cmdpy_completer_handle_brkchars): Adjust.
1929         (cmdpy_completer): Adjust.
1930
1931 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1932
1933         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1934         Pass correct regnum to raw_supply_zeroed.
1935
1936 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1937
1938         * regcache.c (cooked_read_test): Add CSKY to the list of
1939         architectures with a save_reggroup
1940
1941 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
1942
1943         PR gdb/23368
1944         * infrun.c (follow_exec): In the follow_exec_mode_new case,
1945         transfer terminal state from old new new inferior.
1946         * terminal.h (swap_terminal_info): New function.
1947         * inflow.c (swap_terminal_info): New function.
1948
1949 2018-10-23  Tom Tromey  <tom@tromey.com>
1950
1951         * record-btrace.c (get_thread_current_frame_id): Rename from
1952         get_thread_current_frame.  Return a frame_id.
1953         (record_btrace_start_replaying): Update.
1954
1955 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1956
1957         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
1958         for CSRs.
1959
1960 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
1961
1962         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
1963         have_nonsteppable_watchpoint attribute to 1.
1964
1965 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1966
1967         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
1968         register names.
1969         (struct register_alias): Rename to...
1970         (struct riscv_register_alias): ...this, and update comment.
1971         (riscv_register_aliases): Update type, and alias names.  Remove
1972         CSR names from this list.
1973         (riscv_register_name): Use riscv_gdb_reg_names for int and float
1974         register names.  Add an extra assertion.
1975         (riscv_is_regnum_a_named_csr): New function.
1976         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
1977
1978 2018-10-23  John Darrington  <john@darrington.wattle.id.au>
1979
1980         * configure.tgt: Add configuration for s12z.
1981         * s12z-tdep.c:  New file.
1982         * NEWS: Mention new target.
1983
1984 2018-10-22  Jim Wilson  <jimw@sifive.com>
1985
1986         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
1987         FP reg smaller than FP reg size, and fill with -1 instead of 0.
1988
1989         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
1990         (riscv_register_type): Use them.
1991         (riscv_print_one_register_info): Handle union of floats same as float.
1992         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
1993         riscv_fpreg_q_type fields.
1994
1995 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
1996
1997         * gdbarch.sh (gdbarch_num_cooked_regs): New.
1998         * gdbarch.h: Re-generate.
1999         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
2000         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
2001         * eval.c (evaluate_subexp_standard): Likewise.
2002         * findvar.c (value_of_register): Likewise.
2003         (value_of_register_lazy): Likewise.
2004         (address_from_register): Likewise.
2005         * frame.c (get_frame_register_bytes): Likewise.
2006         * gdbarch-selftests.c (register_to_value_test): Likewise.
2007         * h8300-tdep.c (h8300_register_type): Likewise.
2008         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
2009         (i386_svr4_reg_to_regnum): Likewise.
2010         * infcmd.c (default_print_registers_info): Likewise.
2011         (registers_info): Likewise.
2012         (print_vector_info): Likewise.
2013         (default_print_float_info): Likewise.
2014         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
2015         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
2016         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
2017         (mi_cmd_data_list_changed_registers): Likewise.
2018         (mi_cmd_data_list_register_values): Likewise.
2019         (mi_cmd_data_write_register_values): Likewise.
2020         (mi_cmd_trace_frame_collected): Likewise.
2021         * mips-tdep.c (print_gp_register_row): Likewise.
2022         (mips_print_registers_info): Likewise.
2023         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
2024         * regcache.c (init_regcache_descr): Likewise.
2025         (register_size): Likewise.
2026         (register_dump::dump): Likewise.
2027         (cooked_read_test): Likewise.
2028         (cooked_write_test): Likewise.
2029         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
2030         (rs6000_gdbarch_init): Likewise.
2031         * stabsread.c (stab_reg_to_regnum): Likewise.
2032         * stack.c (info_frame_command): Likewise.
2033         * target-descriptions.c (tdesc_register_name): Likewise.
2034         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
2035         * tui/tui-regs.c (tui_show_register_group): Likewise.
2036         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
2037         (user_reg_map_regnum_to_name): Likewise.
2038         (value_of_user_reg): Likewise.
2039         (maintenance_print_user_registers): Likewise.
2040         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
2041         (xtensa_register_name): Likewise.
2042         (xtensa_register_type): Likewise.
2043         (xtensa_reg_to_regnum): Likewise.
2044         (xtensa_pseudo_register_read): Likewise.
2045         (xtensa_pseudo_register_write): Likewise.
2046
2047 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
2048
2049         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
2050         correctly-sized buffer with raw_read.
2051         (amd64_pseudo_register_write): Use correctly-sized buffer for
2052         raw_read/raw_write.
2053
2054 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2055
2056         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
2057         in add_prefix_cmd of set print type.
2058
2059 2018-10-19  Tom Tromey  <tom@tromey.com>
2060
2061         PR tui/18388:
2062         * NEWS: Mention tabset deprecation.
2063         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
2064         (update_tab_width): New function.
2065         (tui_set_tab_width, tui_show_tab_width): New functions.
2066         (tui_set_tab_width_command): Use update_tab_width.
2067         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
2068         Add new "set tui tab-width" command.
2069         * tui/tui-source.c (tui_set_source_content): Update.
2070         * tui/tui-disasm.c (tui_set_disassem_content): Update.
2071         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
2072         Don't declare.
2073         (tui_tab_width): Declare.
2074         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
2075         (tui_set_default_tab_len): Remove.
2076
2077 2018-10-19  Tom Tromey  <tom@tromey.com>
2078
2079         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
2080         (key_is_backspace, tui_getc): Don't declare.
2081         * tui/tui-io.c (key_is_start_sequence): Now static.
2082         (key_is_end_sequence, key_is_backspace): Remove.
2083         (tui_getc): Now static.
2084
2085 2018-10-19  Tom Tromey  <tom@tromey.com>
2086
2087         * symfile.c (reread_symbols): Clear "static_links".
2088
2089 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
2090
2091         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
2092         define.
2093         (aarch64_linux_sigframe_init): Extra boundary checks.
2094
2095 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
2096
2097         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
2098         the possibly non-existent tdesc type 'vec128', but the type of raw
2099         register v16 instead.
2100
2101 2018-10-19  Gary Benson <gbenson@redhat.com>
2102
2103         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
2104
2105 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
2106
2107         PR cli/23785
2108         * cli/cli-dump.c (restore_binary_file): Check if "file" is
2109         NULL.
2110
2111 2018-10-17  Paul Koning  <paul_koning@dell.com>
2112
2113         * charset.c (convert_between_encodings): Fix unsigned overflow.
2114
2115 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
2116
2117         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
2118         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
2119         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
2120         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
2121         New functions.
2122         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
2123         and fbsd_info_proc_mappings_header.
2124         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
2125         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
2126         New.
2127
2128 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
2129
2130         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
2131         Solaris Maintainer.
2132
2133 2018-10-15  Tom Tromey  <tom@tromey.com>
2134
2135         * tui/tui.c (strcat_to_buf): Remove casts.
2136         * tui/tui-winsource.c (tui_show_source_line)
2137         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
2138         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
2139         * tui/tui-windata.c (tui_first_data_item_displayed)
2140         (tui_delete_data_content_windows, tui_erase_data_content)
2141         (tui_display_all_data, tui_display_data_from)
2142         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
2143         * tui/tui-win.c (tui_set_win_height)
2144         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
2145         casts.
2146         * tui/tui-win.c (tui_resize_all): Remove casts.
2147         (tui_scroll_backward_command, tui_set_focus)
2148         (tui_set_tab_width_command): Likewise.
2149         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
2150         * tui/tui-regs.c (tui_show_register_group): Remove cast.
2151         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
2152         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
2153         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
2154         Remove casts.
2155
2156 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
2157
2158         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
2159         AArch64/ARM maintainer.
2160
2161 2018-10-11  Gary Benson <gbenson@redhat.com>
2162
2163         * interps.h (interp::m_name): Make private and mutable.
2164         * interps.c (interp::~interp): Free m_name.
2165
2166 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2167             Simon Marchi <simark@simark.ca>
2168
2169         * README (`configure' options): Add documentation for new
2170         "--enable-unit-tests" option.
2171         * acinclude.m4: Include "selftest.m4".
2172         * configure: Regenerate.
2173         * configure.ac: Use "GDB_AC_SELFTEST".
2174         * maint.c (maintenance_selftest): Update message informing
2175         that selftests have been disabled.
2176         (maintenance_info_selftests): Likewise.
2177         * selftest.m4: New file.
2178
2179 2018-10-10  Gary Benson <gbenson@redhat.com>
2180
2181         * remote.c (remote_target::remote_send_printf): Add
2182         missing va_end found by Coverity.
2183
2184 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
2185
2186         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
2187
2188 2018-10-09  Tom Tromey  <tom@tromey.com>
2189
2190         * configure: Rebuild.
2191         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
2192         * NEWS: Update --enable-ubsan documentation.
2193
2194 2018-10-09  Gary Benson <gbenson@redhat.com>
2195
2196         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
2197         found by Coverity.
2198
2199 2018-10-08  Tom Tromey  <tom@tromey.com>
2200
2201         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
2202         variable.
2203         (riscv_fbsd_init_abi): Likewise.
2204
2205 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
2206         * valops.c (value_struct_elt_for_reference): Rename local variable
2207         to work around the shadowing a previous local warning.
2208
2209 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2210
2211         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
2212         * NEWS: Mention new FreeBSD/riscv native configuration.
2213         * configure.host: Add riscv*-*-freebsd*.
2214         * configure.nat: Likewise.
2215         * riscv-fbsd-nat.c: New file.
2216
2217 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2218
2219         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
2220         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
2221         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
2222         * NEWS: Mention new FreeBSD/riscv target.
2223         * configure.tgt: Add riscv*-*-freebsd*.
2224         * riscv-fbsd-tdep.c: New file.
2225         * riscv-fbsd-tdep.h: New file.
2226
2227 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2228
2229         * regcache.h (struct regcache_map_entry): Note that this type can
2230         be used with traditional frame caches.
2231         * trad-frame.c (trad_frame_set_reg_regmap): New.
2232         * trad-frame.h (trad_frame_set_reg_regmap): New.
2233
2234 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
2235
2236         PR c++/16841
2237         * valops.c (get_virtual_base_offset): New function.
2238         (value_struct_elt_for_reference): Use it to get virtual base offset
2239         and add it in calculating class member address.
2240
2241 2018-10-08  John Darrington  <john@darrington.wattle.id.au>
2242
2243         * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
2244         (check_producer): Check if the producer is codewarrior.
2245         (producer_is_codewarrior): New function.
2246         (lnp_state_machine::record_line): Ignore is_stmt flag for records
2247         produced by codewarrior.
2248         (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
2249
2250 2018-10-06  Tom Tromey  <tom@tromey.com>
2251
2252         PR python/19399:
2253         * python/py-inferior.c: Add "architecture" entry.
2254         (infpy_architecture): New function.
2255
2256 2018-10-06  Tom Tromey  <tom@tromey.com>
2257
2258         PR python/21765:
2259         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
2260         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
2261         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
2262         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
2263
2264 2018-10-06  Tom Tromey  <tom@tromey.com>
2265
2266         PR build/17077:
2267         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
2268         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
2269         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
2270         #include.
2271
2272 2018-10-06  Tom Tromey  <tom@tromey.com>
2273
2274         * python/py-breakpoint.c (bppy_get_location): Handle a
2275         bp_breakpoint without a location.
2276
2277 2018-10-06  Tom Tromey  <tom@tromey.com>
2278
2279         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
2280         (_RegEx): Reformat help text.
2281         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
2282         (AnyCallerIs, AnyCallerMatches): Reformat help text.
2283         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
2284         text.
2285         * python/lib/gdb/command/xmethods.py (InfoXMethod)
2286         (EnableXMethod, DisableXMethod): Remove help indentation.
2287         Capitalize meta-syntactic variables.
2288         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
2289         (EnableUnwinder, DisableUnwinder): Remove help indentation.
2290         Capitalize meta-syntactic variables.
2291         * python/lib/gdb/command/explore.py (ExploreCommand)
2292         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
2293         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
2294         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
2295         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
2296         Remove help indentation.
2297         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
2298         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
2299         (DisableFrameFilter, SetFrameFilterPriority)
2300         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
2301
2302 2018-10-06  Tom Tromey  <tom@tromey.com>
2303
2304         PR tui/28819:
2305         * tui/tui-io.c (gdb_wgetch): New function.
2306         (tui_mld_getc, tui_getc): Use it.
2307
2308 2018-10-05  Tom Tromey  <tom@tromey.com>
2309
2310         * sol-thread.c (sol_thread_target::wait): Rename inner
2311         "save_ptid".
2312
2313 2018-10-04  Tom Tromey  <tom@tromey.com>
2314
2315         * configure: Rebuild.
2316         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
2317
2318 2018-10-04  Tom Tromey  <tom@tromey.com>
2319
2320         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
2321         declaration of "block".
2322
2323 2018-10-04  Tom Tromey  <tom@tromey.com>
2324
2325         * common/filestuff.c (fdwalk): Remove inner declaration of
2326         "result".
2327
2328 2018-10-04  Tom Tromey  <tom@tromey.com>
2329
2330         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
2331         "structs_addr" and hoist declaration.
2332
2333 2018-10-04  Tom Tromey  <tom@tromey.com>
2334
2335         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
2336         variable "size".
2337
2338 2018-10-04  Tom Tromey  <tom@tromey.com>
2339
2340         * mdebugread.c (parse_partial_symbols): Use std::string.
2341
2342 2018-10-04  Tom Tromey  <tom@tromey.com>
2343
2344         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
2345         * p-valprint.c (pascal_val_print): Split inner "i" variable.
2346         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
2347         header.
2348         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
2349         more inner scope.
2350         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
2351         * varobj.c (varobj_update): Rename inner "newobj",
2352         "type_changed".
2353         * valprint.c (generic_emit_char): Rename inner "buf".
2354         * valops.c (find_overload_match): Rename inner "temp".
2355         (value_struct_elt_for_reference): Declare "v" in more inner
2356         scope.
2357         * v850-tdep.c (v850_push_dummy_call): Rename "len".
2358         * unittests/array-view-selftests.c (run_tests): Rename inner
2359         "vec".
2360         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
2361         header.
2362         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
2363         "tsv" in more inner scope.
2364         (print_one_static_tracepoint_marker): Rename inner
2365         "tuple_emitter".
2366         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
2367         (tic6x_push_dummy_call): Don't redeclare "addr".
2368         * target-float.c: Declare "dto" lower.
2369         * symtab.c (lookup_local_symbol): Rename inner "sym".
2370         (find_pc_sect_line): Rename inner "pc".
2371         * stack.c (print_frame): Don't redeclare "gdbarch".
2372         (return_command): Rename inner "gdbarch".
2373         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
2374         "sp".
2375         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
2376         header.
2377         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
2378         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
2379         scope.
2380         * remote.c (remote_target::update_thread_list): Don't redeclare
2381         "tp".
2382         (remote_target::process_initial_stop_replies): Rename inner
2383         "thread".
2384         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
2385         (remote_target::wait_as): Don't redeclare "stop_reply".
2386         (remote_target::get_thread_local_address): Rename inner
2387         "result".
2388         (remote_target::get_tib_address): Likewise.
2389
2390         * regcache.c (cooked_read_test): Rename "regnum".
2391         * record-btrace.c (cmd_record_btrace_start): Rename inner
2392         "exception".
2393         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
2394         loop header.
2395         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
2396         header.
2397         (ppu2spu_sniffer): Rename inner "buf".
2398         * parse.c (operator_check_standard): Rename inner "type",
2399         "objfile".
2400         * p-valprint.c (pascal_val_print): Introduce new scope for
2401         "low_bound", "high_bound".
2402         * p-exp.y (yylex): Declare "i" in loop header.
2403         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
2404         Lower declaration of "s".
2405         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
2406         header.
2407         (nios2_push_dummy_call): Rename "len".
2408         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
2409         "buf".
2410         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
2411         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
2412         (linux_xfer_osdata_modules): Likewise.
2413         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
2414         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
2415         (mips_o64_push_dummy_call): Likewise.
2416         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
2417         "op".
2418         * mi/mi-main.c (list_available_thread_groups): Rename inner
2419         "tuple_emitter".
2420         (mi_cmd_data_read_memory): Rename inner "opts".
2421         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
2422         "tuple_emitter".
2423         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
2424         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
2425         more inner scope.
2426         (parse_partial_symbols): Rename inner "pst", "p", "name"
2427         * main.c (captured_main_1): Rename inner "i"s.
2428         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
2429         "oso2".
2430         * linux-tdep.c (linux_info_proc): Rename inner "filename".
2431         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
2432         * infrun.c (handle_no_resumed): Don't redeclare "thread".
2433         (handle_signal_stop): Rename inner "gdbarch".
2434         (handle_command): Declare "signum" in loop header.
2435         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
2436         "status".
2437         (examine_prologue): Rename inner "sol" and "sof".
2438         (ia64_extract_return_value): Rename inner "val".  Declare another
2439         "val" in a more inner scope.
2440         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
2441         inner scope.
2442         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
2443         "except".
2444         * findvar.c (default_read_var_value): Don't redeclare "addr".
2445         * f-exp.y (yylex): Declare "i" in loop header.
2446         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
2447         Rename inner "type", "expect_type".
2448         (evaluate_subexp_for_sizeof): Rename inner "pc".
2449         * elfread.c (elf_symfile_read): Rename inner "abfd".
2450         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
2451         "bytes_read".
2452         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
2453         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
2454         (dwarf_decode_line_header): Rename inner "lh".
2455         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
2456         "offset".  Declare "i" in loop header.
2457         (disassemble_dwarf_expression): Rename inner "addr_size".
2458         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
2459         inner "result".
2460         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
2461         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
2462         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
2463         "inner_list_emitter".
2464         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
2465         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
2466         declaration in a block.
2467         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
2468         * cp-valprint.c (cp_print_value_fields): Don't redeclare
2469         "obstack_final_size".
2470         * cp-support.c (inspect_type): Declare "i" in loop header.
2471         * compile/compile.c (compile_instance::insert_symbol_error):
2472         Rename inner "e".
2473         * common/agent.c (agent_run_command): Remove inner "ret"
2474         declaration.
2475         * coffread.c (coff_symfile_read): Rename inner "name".
2476         (coff_symfile_read): Rename inner "abfd".
2477         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
2478         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
2479         "high".
2480         * c-exp.y (lex_one_token): Move "len" declaration lower.
2481         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
2482         "gdbarch".
2483         (create_exception_master_breakpoint): Likewise.  Don't redeclare
2484         "b".
2485         (watch_command_1): Declare "mark" later.
2486         (clear_command): Don't shadow "a" or "b".
2487         (delete_command): Rename inner "b".
2488         (delete_trace_command): Likewise.
2489         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
2490         "op".
2491         (arm_gdbarch_init): Remove inner "e_flags".
2492         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
2493         "offset" in inner blocks.
2494
2495 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
2496
2497         * dwarf-index-write.c (file_write): Don't write if the vector is
2498         empty.
2499
2500 2018-10-05  Tom de Vries  <tdevries@suse.de>
2501
2502         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
2503         PyArg_ParseTuple call.
2504
2505 2018-10-05  Tom de Vries  <tdevries@suse.de>
2506
2507         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
2508         PyArg_ParseTuple call.
2509
2510 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
2511
2512         * psymtab.c (recursively_search_psymtabs): Reformat parameters
2513         to avoid exceeding 80 characters per line limit.
2514
2515 2018-10-04  Tom Tromey  <tom@tromey.com>
2516
2517         * symfile.c (syms_from_objfile_1, finish_new_objfile)
2518         (reread_symbols): Update.
2519         * complaints.h (clear_complaints): Remove argument.
2520         * complaints.c (enum complaint_series): Remove.
2521         (series): Remove global.
2522         (complaint_internal): Update.
2523         (clear_complaints): Remove argument.
2524
2525 2018-10-04  Tom Tromey  <tom@tromey.com>
2526
2527         * symfile.c (symbol_file_add_with_addrs): Do not print "no
2528         debugging symbols" message if there is a separate debug objfile.
2529
2530 2018-10-04  Tom Tromey  <tom@tromey.com>
2531
2532         PR cli/19551:
2533         * symfile.c (symbol_file_add_with_addrs): Update output.
2534         * psymtab.c (require_partial_symbols): Update output.
2535
2536 2018-10-04  Tom Tromey  <tom@tromey.com>
2537
2538         PR cli/22234:
2539         * complaints.c: Emit \n.
2540
2541 2018-10-04  Tom Tromey  <tom@tromey.com>
2542
2543         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
2544         (separate_debug_file_exists, find_separate_debug_file)
2545         (add_symbol_file_command, reread_symbols, allocate_symtab)
2546         (allocate_compunit_symtab): Use filtered printing, not
2547         unfiltered.
2548         * psymtab.c (require_partial_symbols, dump_psymtab)
2549         (allocate_psymtab): Use filtered printing, not unfiltered.
2550
2551 2018-10-04  Tom Tromey  <tom@tromey.com>
2552
2553         * complaints.c (complaint_internal): Correctly check complaint
2554         count.
2555
2556 2018-10-04  Tom Tromey  <tom@tromey.com>
2557
2558         * complaints.h (struct complaints): Remove declaration.
2559         * complaints.c (clear_complaints): Remove an unused variable.
2560
2561 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2562
2563         * MAINTAINERS (Write After Approval): Add self.
2564
2565 2018-10-03  Tom Tromey  <tom@tromey.com>
2566
2567         * guile/scm-value.c (gdbscm_value_to_string): Initialize
2568         "buffer_contents".
2569         * coffread.c (coff_symtab_read): Initialize "newobj".
2570
2571 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
2572
2573         * dwarf2read.c (read_func_scope): Remove struct keyword in
2574         range-based for.
2575
2576 2018-10-03  Tom Tromey  <tom@tromey.com>
2577
2578         * README: Mention --enable-ubsan.
2579         * NEWS: Mention --enable-ubsan.
2580         * acinclude.m4: Include sanitize.m4.
2581         * configure: Rebuild.
2582         * configure.ac: Call AM_GDB_UBSAN.
2583         * sanitize.m4: New file.
2584
2585 2018-10-03  Tom Tromey  <tom@tromey.com>
2586
2587         * expression.h (enum exp_opcode): Use uint8_t as base type.
2588         * expprint.c (op_name): Handle invalid opcodes.
2589
2590 2018-10-03  Tom Tromey  <tom@tromey.com>
2591
2592         * parse.c (prefixify_expression): Add assert.
2593         (parse_exp_in_context_1): Throw exception if the expression is
2594         empty.
2595
2596 2018-10-03  Tom Tromey  <tom@tromey.com>
2597
2598         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
2599
2600 2018-10-03  Tom Tromey  <tom@tromey.com>
2601
2602         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
2603
2604 2018-10-03  Tom Tromey  <tom@tromey.com>
2605
2606         * dwarf2read.c (read_subrange_type): Make "negative_mask"
2607         unsigned.
2608
2609 2018-10-03  Tom Tromey  <tom@tromey.com>
2610
2611         * findvar.c (extract_integer): Do work in an unsigned type.
2612
2613 2018-10-03  Tom Tromey  <tom@tromey.com>
2614
2615         * common/enum-flags.h (enum_flags::operator~): Add static assert.
2616         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
2617         base type.
2618         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
2619         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
2620         type.
2621         * c-lang.h (enum c_string_type_values): Use unsigned as base
2622         type.
2623         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
2624
2625 2018-10-03  Tom Tromey  <tom@tromey.com>
2626
2627         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
2628         <~dwarf2_frame_state_reg_info>: Update.
2629         <dwarf2_frame_state_reg_info>: Update.
2630         <alloc_regs>: Add assertion.  Update.
2631         <reg>: Now a std::vector.
2632         <num_regs>: Remove.
2633         <swap>: Update.
2634         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
2635         (execute_cfa_program_test, dwarf2_frame_cache): Update.
2636
2637 2018-10-03  Tom Tromey  <tom@tromey.com>
2638
2639         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
2640
2641 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2642
2643         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
2644
2645 2018-10-02  Tom Tromey  <tom@tromey.com>
2646
2647         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
2648
2649 2018-10-02  John Darrington  <john@darrington.wattle.id.au>
2650
2651         * NEWS: Mention changed commands.
2652         * ser-uds.c: New file.
2653         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
2654         * configure: Regenerate.
2655         * Makefile.in: Add new file.
2656         * serial.c (serial_open): Check if filename is a socket
2657         and lookup the appropriate interface accordingly.
2658
2659 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2660
2661         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
2662         define.
2663         (AARCH64_EXTRA_MAGIC): Likewise.
2664         (AARCH64_FPSIMD_MAGIC): Likewise.
2665         (AARCH64_SVE_MAGIC): Likewise.
2666         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
2667         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
2668         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
2669         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
2670         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
2671         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
2672         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
2673         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
2674         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
2675         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
2676         (read_aarch64_ctx): Add function.
2677         (aarch64_linux_sigframe_init): Detect FP registers.
2678
2679 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2680
2681         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
2682         (AARCH64_D0_REGNUM): Likewise.
2683         (AARCH64_S0_REGNUM): Likewise.
2684         (AARCH64_H0_REGNUM): Likewise.
2685         (AARCH64_B0_REGNUM): Likewise.
2686         (AARCH64_SVE_V0_REGNUM): Likewise.
2687         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
2688         (AARCH64_D0_REGNUM): Likewise.
2689         (AARCH64_S0_REGNUM): Likewise.
2690         (AARCH64_H0_REGNUM): Likewise.
2691         (AARCH64_B0_REGNUM): Likewise.
2692         (AARCH64_SVE_V0_REGNUM): Likewise.
2693
2694 2018-10-01  Gary Benson <gbenson@redhat.com>
2695
2696         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
2697         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
2698         prfpregset_t instead of gdb_prfpregset_t.
2699         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
2700         * configure, config.in: Rebuild.
2701
2702 2018-10-01  Gary Benson <gbenson@redhat.com>
2703
2704         * common/gdb_proc_service.h: New file, factored out from...
2705         * gdb_proc_service.h: Moved common code to the above file.
2706         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
2707
2708 2018-10-01  Gary Benson <gbenson@redhat.com>
2709
2710         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
2711         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
2712
2713 2018-10-01  Gary Benson <gbenson@redhat.com>
2714
2715         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
2716         (AC_CHECK_HEADERS): Check for linux/elf.h.
2717         * configure, config.in: Rebuild.
2718         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
2719         doesn't define elf_fpregset_t.
2720
2721 2018-10-01  Gary Benson <gbenson@redhat.com>
2722
2723         * gdb_proc_service.h: Whitespace change.
2724
2725 2018-10-01  Tom Tromey  <tom@tromey.com>
2726
2727         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
2728         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
2729         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
2730
2731 2018-10-01  Tom Tromey  <tom@tromey.com>
2732
2733         * README: Minor change.
2734
2735 2018-09-30  Pedro Alves  <palves@redhat.com>
2736
2737         * darwin-nat-info.c (darwin_debug_regions_recurse)
2738         (info_mach_exceptions_command): Remove unused local variables.
2739         * darwin-nat.c (darwin_decode_notify_message)
2740         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
2741         (darwin_stop_inferior, darwin_setup_exceptions)
2742         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
2743         (darwin_nat_target::attach, darwin_nat_target::detach)
2744         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
2745         local variables.
2746         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
2747         variables.
2748
2749 2018-09-29  Tom Tromey  <tom@tromey.com>
2750
2751         * README: Remove some leftover text.
2752
2753 2018-09-29  Tom Tromey  <tom@tromey.com>
2754
2755         * PROBLEMS: Rewrite.
2756         * README: Update.
2757
2758 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
2759
2760         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
2761         case with explicit breakpoint kind.
2762         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
2763         'additional_info' and related logic.
2764         (riscv_debug_breakpoints): New variable.
2765         (riscv_breakpoint_kind_from_pc): Use the length of the existing
2766         instruction to determine the breakpoint kind.
2767         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
2768         flag.  Update description of 'set/show riscv
2769         use-compressed-breakpoints' flag.
2770
2771 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
2772
2773         (NEWS): Mention changes to frame related commands.
2774         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
2775         (add_prefix_cmd_suppress_notification): New function.
2776         (add_com_suppress_notification): Call
2777         add_cmd_suppress_notification.
2778         * command.h (add_cmd_suppress_notification): Declare.
2779         (add_prefix_cmd_suppress_notification): Declare.
2780         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
2781         (parse_frame_specification): Moved from stack.c, with
2782         simplification to handle a single argument.
2783         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
2784         switch to the selected frame.  Add a header comment.
2785         * stack.c: Remove 'safe-ctype.h' include.
2786         (find_frame_for_function): Add declaration.
2787         (find_frame_for_address): New function.
2788         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
2789         (frame_selection_by_function_completer): New function.
2790         (info_frame_command): Rename to...
2791         (info_frame_command_core): ...this, and update parameter types.
2792         (select_frame_command): Rename to...
2793         (select_frame_command_core): ...this, and update parameter types.
2794         (frame_command): Rename to...
2795         (frame_command_core): ...this, and update parameter types.
2796         (class frame_command_helper): New class to wrap implementations of
2797         frame related sub-commands.
2798         (frame_apply_cmd_list): New static global.
2799         (frame_cmd_list): Make static.
2800         (select_frame_cmd_list): New global for sub-commands.
2801         (info_frame_cmd_list): New global for sub-commands.
2802         (_initialize_stack): Register sub-commands for 'frame',
2803         'select-frame', and 'info frame'.  Update 'frame apply' commands
2804         to use frame_apply_cmd_list.  Move function local static
2805         frame_apply_list to file static frame_apply_cmd_list for
2806         consistency.
2807         * stack.h (select_frame_command): Delete declarationn.
2808         (select_frame_for_mi): Declare new function.
2809
2810 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2811
2812         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
2813         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
2814         and NOP.
2815
2816 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
2817
2818         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
2819
2820 2018-09-26  Tom Tromey  <tom@tromey.com>
2821
2822         * valops.c (auto_abandon): Remove dead code.
2823
2824 2018-09-26  Tom Tromey  <tom@tromey.com>
2825
2826         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
2827
2828 2018-09-24  Tom Tromey  <tom@tromey.com>
2829
2830         * common/pathstuff.c (get_standard_cache_dir): Make
2831         "xdg_cache_home" and "home" const.
2832         * top.c (init_history): Make "tmpenv" const.
2833         * main.c (get_init_files): Make "homedir" const.
2834
2835 2018-09-23  Tom Tromey  <tom@tromey.com>
2836
2837         PR python/18852:
2838         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
2839
2840 2018-09-23  Tom Tromey  <tom@tromey.com>
2841
2842         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
2843         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
2844         * python/python-internal.h (gdbpy_handle_exception): Declare.
2845         * python/py-utils.c (gdbpy_handle_exception): New function.
2846
2847 2018-09-23  Tom Tromey  <tom@tromey.com>
2848
2849         PR python/17284:
2850         * python/py-type.c (typy_template_argument): Check for negative
2851         argument number.
2852
2853 2018-09-23  Tom Tromey  <tom@tromey.com>
2854
2855         PR python/14062:
2856         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
2857
2858 2018-09-23  Tom Tromey  <tom@tromey.com>
2859
2860         PR python/18170:
2861         * python/py-value.c (valpy_int): Allow conversion from pointer
2862         type.
2863
2864 2018-09-23  Tom Tromey  <tom@tromey.com>
2865
2866         PR python/20126:
2867         * python/py-value.c (valpy_int): Respect type sign.
2868
2869 2018-09-23  Tom Tromey  <tom@tromey.com>
2870
2871         PR python/18352;
2872         * python/py-value.c (valpy_float): Allow conversions from int or
2873         char.
2874         (valpy_int, valpy_long): Allow conversions from float.
2875
2876 2018-09-23  Tom Tromey  <tom@tromey.com>
2877
2878         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
2879         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
2880
2881 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2882
2883         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
2884         __sighndlr.
2885         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
2886
2887 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
2888
2889         * windows-nat.c (windows_nat_target::wait): Remove a spurious
2890         target_terminal::ours().
2891
2892 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
2893
2894         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
2895         of vl to ULONGEST.
2896
2897 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
2898
2899         * breakpoint.c (update_inserted_breakpoint_locations): Remove
2900         redundant condition.
2901
2902 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2903
2904         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
2905
2906         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
2907         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
2908         * sol-thread.c (ps_pdmodel): Don't guard definition.
2909
2910         * procfs.c: Fix formatting.
2911
2912         * procfs.c (sysset_t_alloc): Remove.
2913         (create_procinfo): Use XNEW instead of sysset_t_alloc.
2914         (procfs_debug_inferior): Likewise.
2915         (procfs_set_exec_trap): Likewise.
2916         (proc_set_traced_sysentry): Don't allocate argp dynamically.
2917         (proc_set_traced_sysexit): Likewise.
2918
2919         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
2920         (dead_procinfo): Likewise.
2921         (proc_warn): Likewise.
2922         (proc_error): Likewise.
2923         (proc_get_LDT_entry): Likewise.
2924         (do_attach): Likewise.
2925         (procfs_target::pid_to_str): Likewise.
2926         (iterate_over_mappings): Likewise.
2927
2928         * procfs.c (create_procinfo): Fix ARI warning.
2929         (proc_get_status): Likewise.
2930         (proc_stop_process): Likewise.
2931         (proc_run_process): Likewise.
2932         (proc_kill): Likewise.
2933         (proc_get_LDT_entry): Likewise.
2934         (procfs_find_LDT_entry): Likewise.
2935         (proc_update_threads): Likewise.
2936         (proc_iterate_over_threads): Likewise.
2937         (do_attach): Likewise.
2938         (procfs_xfer_memory): Likewise.
2939         (invalidate_cache): Likewise.
2940         (procfs_target::resume): Likewise.
2941         (procfs_init_inferior): Likewise.
2942         (procfs_set_exec_trap): Likewise.
2943         (procfs_target::thread_alive): Likewise.
2944         (procfs_target::pid_to_exec_file): Likewise.
2945         (iterate_over_mappings): Likewise.
2946         (procfs_target::make_corefile_notes): Likewise.
2947         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
2948
2949         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
2950         (procfs_find_LDT_entry): Likewise.
2951         * sol-thread.c (ps_lgetLDT): Likewise.
2952
2953 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2954
2955         PR tdep/17903
2956         * procfs.c (procfs_target): Declare pid_to_exec_file.
2957         (procfs_target::pid_to_exec_file): New.
2958
2959 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2960
2961         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
2962         renaming.
2963         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
2964         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
2965
2966 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2967
2968         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
2969         (supply_fpregset, fill_fpregset): Move ...
2970         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
2971         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
2972         Remove references to ioctl-based procfs.
2973         Include <sys/reg.h>.
2974         Remove PR_MODEL_NATIVE guards.
2975         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
2976         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
2977
2978 2018-09-19  Xavier Roirand  <roirand@adacore.com>
2979
2980         PR gdb/20981:
2981         * solib-darwin.c (darwin_get_dyld_bfd): New function.
2982         (darwin_solib_get_all_image_info_addr_at_init): Update call.
2983         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
2984
2985 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
2986
2987         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
2988         (fbsd_print_sockaddr_in6): Likewise.
2989
2990 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
2991             Chris January  <chris.january@arm.com>
2992
2993         * eval.c (skip_undetermined_arglist): Skip argument list helper.
2994         (evaluate_subexp_standard): Return a dummy type when
2995         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
2996         OP_F77_UNDETERMINED_ARGLIST case.
2997         * expression.h (enum noside): Update comment.
2998
2999 2018-09-19  George Vasick <george.vasick@oracle.com>
3000
3001         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
3002
3003 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
3004             April Chin <april.chin@oracle.com>
3005             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3006
3007         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
3008         uint_t lwpid_t.
3009         (create_procinfo): Print pids in /proc without leading zeros.
3010
3011 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
3012
3013         * nios2-tdep.c (nios2_gcc_target_options): New.
3014         (nios2_gdb_arch_init): Install new hook.
3015
3016 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
3017
3018         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
3019         New file.
3020         * update-gnulib.sh: Apply patch.
3021         * configure: Re-generate.
3022
3023 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3024
3025         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
3026         description.  Make "info proc" command descriptions more
3027         consistent.
3028
3029 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3030
3031         * NEWS: Mention 'info proc files' command.
3032
3033 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3034
3035         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
3036         descriptors for IP_FILES and IP_ALL.
3037
3038 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3039
3040         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
3041         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
3042         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
3043         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
3044         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
3045         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
3046         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
3047         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
3048         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
3049         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
3050         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
3051         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
3052         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
3053         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
3054         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
3055         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
3056         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
3057         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
3058         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
3059         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
3060         (struct fbsd_sockaddr_un): New types.
3061         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
3062         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
3063         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
3064         (fbsd_core_info_proc_files): New functions.
3065         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
3066         IP_ALL.
3067         * fbsd-tdep.h (fbsd_info_proc_files_header)
3068         (fbsd_info_proc_files_entry): New.
3069
3070 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3071
3072         * defs.h (enum info_proc_what) [IP_FILES]: New value.
3073         * infcmd.c (info_proc_cmd_files): New function.
3074         (_initialize_infcmd): Register 'info proc files' command.
3075
3076 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3077
3078         * gnulib/aclocal-m4-deps.mk: Re-generate.
3079         * gnulib/aclocal.m4: Re-generate.
3080         * gnulib/config.in: Re-generate.
3081         * gnulib/configure: Re-generate.
3082         * gnulib/import/Makefile.am: Re-generate.
3083         * gnulib/import/Makefile.in: Re-generate.
3084         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3085         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3086         * gnulib/import/arpa_inet.in.h: New file.
3087         * gnulib/import/inet_ntop.c: New file.
3088         * gnulib/import/m4/arpa_inet_h.m4: New file.
3089         * gnulib/import/m4/inet_ntop.m4: New file.
3090         * gnulib/import/m4/netinet_in_h.m4: New file.
3091         * gnulib/import/m4/socklen.m4: New file.
3092         * gnulib/import/m4/sockpfaf.m4: New file.
3093         * gnulib/import/m4/stdalign.m4: New file.
3094         * gnulib/import/m4/sys_uio_h.m4: New file.
3095         * gnulib/import/netinet_in.in.h: New file.
3096         * gnulib/import/stdalign.in.h: New file.
3097         * gnulib/import/sys_socket.c: New file.
3098         * gnulib/import/sys_socket.in.h: New file.
3099         * gnulib/import/sys_uio.in.h: New file.
3100         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
3101         module.
3102
3103 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3104
3105         * gnulib/aclocal-m4-deps.mk: New file.
3106         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
3107         deterministically.
3108
3109 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3110
3111         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
3112         KVE_PATH.
3113
3114 2018-09-18  Tom Tromey  <tom@tromey.com>
3115
3116         * compile/compile-object-load.c (struct
3117         link_hash_table_cleanup_data): Add constructor and destructor.
3118         Use DISABLE_COPY_AND_ASSIGN.
3119         (~link_hash_table_cleanup_data): Rename from
3120         link_hash_table_free.  Now a destructor.
3121         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
3122
3123 2018-09-18  Tom Tromey  <tom@tromey.com>
3124
3125         * compile/compile-object-run.c (do_module_cleanup): Use delete.
3126         * compile/compile-object-load.c (struct munmap_list): Move to
3127         header file.
3128         (munmap_list::add): Rename from munmap_list_add; rewrite.
3129         (munmap_list::~munmap_list): Rename from munmap_list_free.
3130         (munmap_listp_free_cleanup): Remove.
3131         (compile_object_load): Update.
3132         * compile/compile-object-load.h (struct munmap_list): Move from
3133         compile-object-load.c.  Rewrite.
3134
3135 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
3136
3137         * aarch64-tdep.c (pass_in_v): Use register size.
3138         (aarch64_extract_return_value): Likewise.
3139         (aarch64_store_return_value): Likewise.
3140
3141 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3142
3143         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
3144         rlim_t.
3145
3146 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3147
3148         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
3149         Fix short help line.
3150
3151 2018-09-17  Tom Tromey  <tom@tromey.com>
3152
3153         PR python/20445:
3154         * configure: Rebuild.
3155         * configure.ac: Conditionally use -DNDEBUG for Python.
3156
3157 2018-09-17  Tom Tromey  <tom@tromey.com>
3158
3159         * configure: Rebuild.
3160         * configure.ac: Use gmp as a library dependency when checking for
3161         mpfr.
3162
3163 2018-09-17  Pedro Alves  <palves@redhat.com>
3164
3165         * python/py-inferior.c (find_inferior_object): Delete.
3166
3167 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
3168
3169         * compile/compile-cplus-types.c
3170         (compile_cplus_instance::enter_scope): Don't use new_scope after
3171         std::move.
3172
3173 2018-09-17  Tom Tromey  <tom@tromey.com>
3174
3175         * common/pathstuff.c (get_standard_cache_dir): Use
3176         ~/Library/Caches on macOS.
3177         * common/pathstuff.h (get_standard_cache_dir): Update comment.
3178
3179 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
3180
3181         PR python/23669
3182         * breakpoint.c (commands_cmd_element): New.
3183         (_initialize_breakpoint): Assign commands_cmd_element.
3184         * breakpoint.h (commands_cmd_element): New.
3185         * cli/cli-script.c (while_cmd_element, if_command,
3186         define_cmd_element): New.
3187         (command_name_equals): Remove.
3188         (process_next_line): Compare commands by pointer, not by name.
3189         (_initialize_cli_script): Assign the various cmd_list_element
3190         variables.
3191         * compile/compile.c (compile_cmd_element): New.
3192         (_initialize_compile): Assign compile_cmd_element.
3193         * compile/compile.h (compile_cmd_element): New.
3194         * guile/guile.c (guile_cmd_element): New.
3195         (install_gdb_commands): Assign guile_cmd_element.
3196         * guile/guile.h (guile_cmd_element): New.
3197         * python/python.c (python_cmd_element): New.
3198         (_initialize_python): Assign python_cmd_element.
3199         * python/python.h (python_cmd_element): New.
3200         * tracepoint.c (while_stepping_cmd_element): New.
3201         (_initialize_tracepoint): Assign while_stepping_cmd_element.
3202         * tracepoint.h (while_stepping_cmd_element): New.
3203
3204 2018-09-17  Tom Tromey  <tom@tromey.com>
3205
3206         * infrun.c (save_infcall_suspend_state): Return
3207         infcall_suspend_state_up.
3208         (save_infcall_control_state): Return infcall_control_state_up.
3209         * inferior.h (save_infcall_suspend_state)
3210         (save_infcall_control_state): Declare later.  Return unique
3211         pointers.
3212
3213 2018-09-17  Tom Tromey  <tom@tromey.com>
3214
3215         * infrun.c (struct stop_context): Declare constructor,
3216         destructor, "changed" method.
3217         (stop_context::stop_context): Rename from save_stop_context.
3218         (stop_context::~stop_context): Rename from
3219         release_stop_context_cleanup.
3220         (normal_stop): Update.
3221         (stop_context::changed): Rename from stop_context_changed.  Return
3222         bool.
3223
3224 2018-09-17  Tom Tromey  <tom@tromey.com>
3225
3226         * inferior.h (struct infcall_suspend_state_deleter): New.
3227         (infcall_suspend_state_up): New typedef.
3228         (struct infcall_control_state_deleter): New.
3229         (infcall_control_state_up): New typedef.
3230         (make_cleanup_restore_infcall_suspend_state)
3231         (make_cleanup_restore_infcall_control_state): Don't declare.
3232         * infcall.c (call_function_by_hand_dummy): Update.
3233         * infrun.c (do_restore_infcall_suspend_state_cleanup)
3234         (make_cleanup_restore_infcall_suspend_state): Remove.
3235         (do_restore_infcall_control_state_cleanup)
3236         (make_cleanup_restore_infcall_control_state): Remove.
3237
3238 2018-09-17  Tom Tromey  <tom@tromey.com>
3239
3240         * gdbthread.h (struct thread_control_state): Add initializer.
3241         (class thread_info) <control>: Remove initializer.
3242         * inferior.h (struct inferior_control_state): Add initializer.
3243         (class inferior) <control>: Remove initializer.
3244         (exit_inferior_1): Update.
3245         * infrun.c (struct infcall_control_state): Add constructors.
3246         (save_infcall_control_state): Use new.
3247         (restore_infcall_control_state, discard_infcall_control_state):
3248         Use delete.
3249
3250 2018-09-17  Tom Tromey  <tom@tromey.com>
3251
3252         * infrun.c (struct infcall_suspend_state) <registers>: Now a
3253         unique_ptr.
3254         <siginfo_data>: Now a unique_xmalloc_ptr.
3255         (save_infcall_suspend_state, restore_infcall_suspend_state)
3256         (discard_infcall_suspend_state)
3257         (get_infcall_suspend_state_regcache): Update.
3258
3259 2018-09-17  Tom Tromey  <tom@tromey.com>
3260
3261         * gdbthread.h (struct thread_suspend_state): Add initializers.
3262         (class thread_info) <suspend>: Remove initializer.
3263         * infrun.c (struct infcall_suspend_state): Add initializers.
3264         (save_infcall_suspend_state): Use new.
3265         (discard_infcall_suspend_state): Use delete.
3266
3267 2018-09-16  Tom Tromey  <tom@tromey.com>
3268
3269         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
3270         Remove.
3271         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
3272         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
3273         (py_varobj_iter_new): Likewise.
3274         (py_varobj_get_iterator): Use gdbpy_ref.
3275
3276 2018-09-16  Tom Tromey  <tom@tromey.com>
3277
3278         * python/py-threadevent.c (py_get_event_thread): Simplify.
3279         * python/py-inferior.c (infpy_thread_from_thread_handle):
3280         Return immediately after calling thread_to_thread_object.  Use
3281         Py_RETURN_NONE.
3282         (thread_to_thread_object): Set the exception on a NULL return.
3283
3284 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
3285
3286         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
3287
3288 2018-09-16  Tom Tromey  <tom@tromey.com>
3289
3290         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
3291         Remove.
3292
3293 2018-09-16  Tom Tromey  <tom@tromey.com>
3294
3295         * python/python-internal.h (thread_to_thread_object): Change
3296         return type.
3297         * python/py-inferior.c (thread_to_thread_object): Return a new
3298         reference.
3299         (infpy_thread_from_thread_handle): Update.
3300         * python/py-infthread.c (gdbpy_selected_thread): Update.
3301         * python/py-stopevent.c (create_stop_event_object): Update.
3302         * python/py-threadevent.c (py_get_event_thread): Return a new
3303         reference.
3304         (py_get_event_thread): Update.
3305         * python/py-event.h (py_get_event_thread): Change return type.
3306         * python/py-continueevent.c (create_continue_event_object):
3307         Update.
3308
3309 2018-09-16  Tom Tromey  <tom@tromey.com>
3310
3311         * python/py-progspace.c (pspy_get_objfiles): Update.
3312         * python/python-internal.h (objfile_to_objfile_object): Change
3313         return type.
3314         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3315         Update.
3316         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3317         Update.
3318         * python/python.c (gdbpy_get_current_objfile): Update.
3319         (gdbpy_objfiles): Update.
3320         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
3321         Update.
3322         (objfile_to_objfile_object): Return a new reference.
3323         * python/py-symtab.c (stpy_get_objfile): Update.
3324         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
3325         Update.
3326
3327 2018-09-16  Tom Tromey  <tom@tromey.com>
3328
3329         * python/py-inferior.c (infpy_get_progspace): Update.
3330         * python/python-internal.h (pspace_to_pspace_object): Change
3331         return type.
3332         * python/py-newobjfileevent.c
3333         (create_clear_objfiles_event_object): Update.
3334         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3335         Update.
3336         * python/python.c (gdbpy_get_current_progspace): Update.
3337         (gdbpy_progspaces): Update.
3338         * python/py-progspace.c (pspace_to_pspace_object): Return a new
3339         reference.
3340         * python/py-objfile.c (objfpy_get_progspace): Update.
3341         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
3342         Update.
3343
3344 2018-09-16  Tom Tromey  <tom@tromey.com>
3345
3346         * python/lib/gdb/__init__.py (current_progspace, objfiles)
3347         (solib_name, block_for_pc, find_pc_line): New functions.
3348         (execute_unwinders): Update.
3349         * python/py-block.c (gdbpy_block_for_pc): Remove.
3350         * python/py-inferior.c (infpy_get_progspace): New function.
3351         (inferior_object_getset) <progspace>: Add.
3352         * python/py-progspace.c (pspy_objfiles): Rewrite.
3353         (pspy_solib_name, pspy_block_for_pc)
3354         (pspy_find_pc_line, pspy_is_valid): New functions.
3355         (progspace_object_methods): Add entries for solib_name,
3356         block_for_pc, find_pc_line, is_valid.
3357         * python/python-internal.h (gdbpy_block_for_pc)
3358         (build_objfiles_list): Don't declare.
3359         * python/python.c: Don't include solib.h.
3360         (gdbpy_solib_name, gdbpy_find_pc_line)
3361         (gdbpy_get_current_progspace, build_objfiles_list)
3362         (gdbpy_objfiles): Remove.
3363         (GdbMethods) <current_progspace, objfiles, block_for_pc,
3364         solib_name, find_pc_line>: Remove entries.
3365
3366 2018-09-16  Tom Tromey  <tom@tromey.com>
3367
3368         * top.c (new_ui_command): Use GNU style for metasyntactic
3369         variables.
3370         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
3371         variables.
3372         * maint.c (maintenance_translate_address): Remove "<>" around
3373         text.
3374         * interps.c (interpreter_exec_cmd): Use GNU style for
3375         metasyntactic variables.
3376         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
3377         metasyntactic variables.
3378         * tracepoint.c (tfind_range_command): Use GNU style for
3379         metasyntactic variables.
3380         (tfind_outside_command): Likewise.
3381         (_initialize_tracepoint): Likewise.
3382         * remote.c (extended_remote_target::create_inferior): Use GNU
3383         style for metasyntactic variables.
3384         * sparc64-tdep.c (adi_examine_command): Use GNU style for
3385         metasyntactic variables.
3386         (adi_assign_command): Likewise.
3387
3388 2018-09-16  Tom Tromey  <tom@tromey.com>
3389
3390         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
3391         metasyntactic variables.  Print message if no disassembler options
3392         are available.
3393
3394 2018-09-15  Tom Tromey  <tom@tromey.com>
3395
3396         * infcmd.c (get_inferior_args): Return const char *.
3397         * inferior.h (get_inferior_args): Return type now const.
3398         * linux-tdep.c (linux_fill_prpsinfo): Update.
3399         * procfs.c (procfs_target::make_corefile_notes): Update.
3400
3401 2018-09-07  Tom Tromey  <tom@tromey.com>
3402
3403         * python/python.c (execute_gdb_command): Call bpstat_do_actions
3404         inside the TRY.
3405
3406 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
3407
3408         * nios2-tdep.c (nios2_type_align): New.
3409         (nios2_gdb_arch_init): Install type_align hook.
3410
3411 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
3412
3413         * eval.c (fake_method::fake_method): Call xzalloc directly for a
3414         type that is neither object file owned, nor gdbarch owned.
3415         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
3416         gdbarch is non-NULL.
3417         (alloc_type_instance): Allocate non-objfile owned types on the
3418         gdbarch obstack.
3419         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
3420         using TYPE_ALLOC to ensure memory is allocated on the correct
3421         obstack.
3422         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
3423         obstack, or the gdbarch obstack.
3424         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
3425
3426 2018-09-14  Tom Tromey  <tom@tromey.com>
3427
3428         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
3429         block.
3430
3431 2018-09-14  Tom Tromey  <tom@tromey.com>
3432
3433         * nat/fork-inferior.c (get_startup_shell): Remove "static".
3434
3435 2018-09-13  Tom Tromey  <tom@tromey.com>
3436
3437         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
3438         static.
3439
3440 2018-09-13  Tom Tromey  <tom@tromey.com>
3441
3442         * exec.c (try_open_exec_file): Use std::string.
3443
3444 2018-09-13  Tom Tromey  <tom@tromey.com>
3445
3446         * utils.h (gdb_bfd_errmsg): Return std::string.
3447         * exec.c (exec_file_attach): Update.
3448         * compile/compile-object-load.c (compile_object_load): Update.
3449         * utils.c (gdb_bfd_errmsg): Return std::string.
3450
3451 2018-09-13  Tom Tromey  <tom@tromey.com>
3452
3453         * procfs.c (struct procinfo_deleter): New.
3454         (procinfo_up): New typedef.
3455         (do_destroy_procinfo_cleanup): Remove.
3456         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
3457
3458 2018-09-13  Tom Tromey  <tom@tromey.com>
3459
3460         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
3461
3462 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3463 2018-09-13  Tom Tromey  <tom@tromey.com>
3464
3465         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
3466         (pspy_get_objfiles): New function.
3467         (progspace_object_methods): New.
3468         (pspace_object_type): Add tp_methods callback.
3469         * python/python-internal.h (build_objfiles_list): New
3470         declaration.
3471         * python/python.c (build_objfiles_list): New function.
3472         (gdbpy_objfiles): Implement using build_objfiles_list.
3473         * NEWS: Mention the Progspace.objfiles method.
3474
3475 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3476
3477         * python/py-inferior.c (infpy_get_progspace): New function.
3478         (inferior_object_getset): Add progspace property.
3479         * NEWS: Mention the new property.
3480
3481 2018-09-13  Tom Tromey  <tom@tromey.com>
3482
3483         PR rust/23650:
3484         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
3485
3486 2018-09-13  Tom Tromey  <tom@tromey.com>
3487
3488         PR rust/23626:
3489         * rust-lang.c (rust_enum_variant): Now static.
3490         (rust_empty_enum_p): New function.
3491         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
3492         Handle empty enum.
3493
3494 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3495
3496         * python/py-inferior.c (infpy_repr): New.
3497         (inferior_object_type): Register infpy_repr.
3498         * python/py-objfile.c (objfpy_repr): New.
3499         (objfile_object_type): Register objfpy_repr.
3500
3501 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3502
3503         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
3504
3505 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3506
3507         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
3508         typo.
3509
3510 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
3511
3512         * common/common-utils.c: Don't include '<sys/stat.h>'.
3513         (is_regular_file): Move to...
3514         * common/filestuff.c (is_regular_file): ... here.
3515         * common/common-utils.h (is_regular_file): Move to...
3516         * common/filestuff.h (is_regular_file): ... here.
3517
3518 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
3519
3520         * skip.c (debug_skip): New variable.
3521         (skiplist_entry::do_skip_file_p): Add debug output.
3522         (skiplist_entry::do_skip_gfile_p): Likewise.
3523         (skiplist_entry::skip_function_p): Likewise.
3524         (_initialize_step_skip): Create debug command.
3525         * NEWS: Mention set/show debug skip.
3526
3527 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3528
3529         * darwin-nat.c (should_disable_startup_with_shell):
3530         New function.
3531         (darwin_nat_target::create_inferior): Add call.
3532
3533 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3534
3535         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
3536         inf_port, msg_state>: Initialize.
3537         (struct darwin_thread_info) <signaled, single_step>: Change
3538         type and initialize.
3539         (struct darwin_thread_info) <event>: Initialize.
3540
3541 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3542
3543         PR gdb/23555
3544         PR gdb/23558
3545         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
3546         guesses.
3547
3548 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3549
3550         Revert:
3551         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3552
3553         PR gdb/23555
3554         PR gdb/23558
3555         * gnulib/aclocal.m4: Regenerate.
3556         * gnulib/config.in: Regenerate.
3557         * gnulib/configure: Regenerate.
3558         * gnulib/import/Makefile.am: Update.
3559         * gnulib/import/Makefile.in: Update.
3560         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3561         * gnulib/import/_Noreturn.h: ... this.
3562         * gnulib/import/alloca.in.h: Update.
3563         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3564         * gnulib/import/arg-nonnull.h: ... this.
3565         * gnulib/import/assure.h: Update.
3566         * gnulib/import/at-func.c: Update.
3567         * gnulib/import/basename-lgpl.c: Update.
3568         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3569         * gnulib/import/c++defs.h: ... this.
3570         * gnulib/import/canonicalize-lgpl.c: Update.
3571         * gnulib/import/cdefs.h: Update.
3572         * gnulib/import/chdir-long.c: Update.
3573         * gnulib/import/chdir-long.h: Update.
3574         * gnulib/import/cloexec.c: Update.
3575         * gnulib/import/cloexec.h: Update.
3576         * gnulib/import/close.c: Update.
3577         * gnulib/import/closedir.c: Update.
3578         * gnulib/import/config.charset: Update.
3579         * gnulib/import/dirent-private.h: Update.
3580         * gnulib/import/dirent.in.h: Update.
3581         * gnulib/import/dirfd.c: Update.
3582         * gnulib/import/dirname-lgpl.c: Update.
3583         * gnulib/import/dirname.h: Update.
3584         * gnulib/import/dosname.h: Update.
3585         * gnulib/import/dup-safer-flag.c: Update.
3586         * gnulib/import/dup-safer.c: Update.
3587         * gnulib/import/dup.c: Update.
3588         * gnulib/import/dup2.c: Update.
3589         * gnulib/import/errno.in.h: Update.
3590         * gnulib/import/error.c: Update.
3591         * gnulib/import/error.h: Update.
3592         * gnulib/import/exitfail.c: Update.
3593         * gnulib/import/exitfail.h: Update.
3594         * gnulib/import/extra/update-copyright: Update.
3595         * gnulib/import/fchdir.c: Update.
3596         * gnulib/import/fcntl.c: Update.
3597         * gnulib/import/fcntl.in.h: Update.
3598         * gnulib/import/fd-hook.c: Update.
3599         * gnulib/import/fd-hook.h: Update.
3600         * gnulib/import/fd-safer-flag.c: Update.
3601         * gnulib/import/fd-safer.c: Update.
3602         * gnulib/import/fdopendir.c: Update.
3603         * gnulib/import/filename.h: Update.
3604         * gnulib/import/filenamecat-lgpl.c: Update.
3605         * gnulib/import/filenamecat.h: Update.
3606         * gnulib/import/flexmember.h: Update.
3607         * gnulib/import/float+.h: Update.
3608         * gnulib/import/float.c: Update.
3609         * gnulib/import/float.in.h: Update.
3610         * gnulib/import/fnmatch.c: Update.
3611         * gnulib/import/fnmatch.in.h: Update.
3612         * gnulib/import/fnmatch_loop.c: Update.
3613         * gnulib/import/fpucw.h: Update.
3614         * gnulib/import/frexp.c: Update.
3615         * gnulib/import/frexpl.c: Update.
3616         * gnulib/import/fstat.c: Update.
3617         * gnulib/import/fstatat.c: Update.
3618         * gnulib/import/getcwd-lgpl.c: Update.
3619         * gnulib/import/getcwd.c: Update.
3620         * gnulib/import/getdtablesize.c: Update.
3621         * gnulib/import/getlogin_r.c: Update.
3622         * gnulib/import/getprogname.c: Update.
3623         * gnulib/import/getprogname.h: Update.
3624         * gnulib/import/gettext.h: Update.
3625         * gnulib/import/gettimeofday.c: Update.
3626         * gnulib/import/glob-libc.h: Update.
3627         * gnulib/import/glob.c: Update.
3628         * gnulib/import/glob.in.h: Update.
3629         * gnulib/import/glob_internal.h: Update.
3630         * gnulib/import/glob_pattern_p.c: Update.
3631         * gnulib/import/globfree.c: Update.
3632         * gnulib/import/hard-locale.c: Update.
3633         * gnulib/import/hard-locale.h: Update.
3634         * gnulib/import/intprops.h: Update.
3635         * gnulib/import/inttypes.in.h: Update.
3636         * gnulib/import/isnan.c: Update.
3637         * gnulib/import/isnand-nolibm.h: Update.
3638         * gnulib/import/isnand.c: Update.
3639         * gnulib/import/isnanl-nolibm.h: Update.
3640         * gnulib/import/isnanl.c: Update.
3641         * gnulib/import/itold.c: Update.
3642         * gnulib/import/libc-config.h: Update.
3643         * gnulib/import/limits.in.h: Update.
3644         * gnulib/import/localcharset.c: Update.
3645         * gnulib/import/localcharset.h: Update.
3646         * gnulib/import/localtime-buffer.c: Update.
3647         * gnulib/import/localtime-buffer.h: Update.
3648         * gnulib/import/lstat.c: Update.
3649         * gnulib/import/m4/00gnulib.m4: Update.
3650         * gnulib/import/m4/__inline.m4: Update.
3651         * gnulib/import/m4/absolute-header.m4: Update.
3652         * gnulib/import/m4/alloca.m4: Update.
3653         * gnulib/import/m4/builtin-expect.m4: Update.
3654         * gnulib/import/m4/canonicalize.m4: Update.
3655         * gnulib/import/m4/chdir-long.m4: Update.
3656         * gnulib/import/m4/close.m4: Update.
3657         * gnulib/import/m4/closedir.m4: Update.
3658         * gnulib/import/m4/configmake.m4: Update.
3659         * gnulib/import/m4/d-ino.m4: Update.
3660         * gnulib/import/m4/d-type.m4: Update.
3661         * gnulib/import/m4/dirent_h.m4: Update.
3662         * gnulib/import/m4/dirfd.m4: Update.
3663         * gnulib/import/m4/dirname.m4: Update.
3664         * gnulib/import/m4/double-slash-root.m4: Update.
3665         * gnulib/import/m4/dup.m4: Update.
3666         * gnulib/import/m4/dup2.m4: Update.
3667         * gnulib/import/m4/eealloc.m4: Update.
3668         * gnulib/import/m4/environ.m4: Update.
3669         * gnulib/import/m4/errno_h.m4: Update.
3670         * gnulib/import/m4/error.m4: Update.
3671         * gnulib/import/m4/exponentd.m4: Update.
3672         * gnulib/import/m4/exponentl.m4: Update.
3673         * gnulib/import/m4/extensions.m4: Update.
3674         * gnulib/import/m4/extern-inline.m4: Update.
3675         * gnulib/import/m4/fchdir.m4: Update.
3676         * gnulib/import/m4/fcntl-o.m4: Update.
3677         * gnulib/import/m4/fcntl.m4: Update.
3678         * gnulib/import/m4/fcntl_h.m4: Update.
3679         * gnulib/import/m4/fdopendir.m4: Update.
3680         * gnulib/import/m4/filenamecat.m4: Update.
3681         * gnulib/import/m4/flexmember.m4: Update.
3682         * gnulib/import/m4/float_h.m4: Update.
3683         * gnulib/import/m4/fnmatch.m4: Update.
3684         * gnulib/import/m4/fnmatch_h.m4: Update.
3685         * gnulib/import/m4/fpieee.m4: Update.
3686         * gnulib/import/m4/frexp.m4: Update.
3687         * gnulib/import/m4/frexpl.m4: Update.
3688         * gnulib/import/m4/fstat.m4: Update.
3689         * gnulib/import/m4/fstatat.m4: Update.
3690         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3691         * gnulib/import/m4/getcwd-path-max.m4: Update.
3692         * gnulib/import/m4/getcwd.m4: Update.
3693         * gnulib/import/m4/getdtablesize.m4: Update.
3694         * gnulib/import/m4/getlogin.m4: Update.
3695         * gnulib/import/m4/getlogin_r.m4: Update.
3696         * gnulib/import/m4/getpagesize.m4: Update.
3697         * gnulib/import/m4/getprogname.m4: Update.
3698         * gnulib/import/m4/gettimeofday.m4: Update.
3699         * gnulib/import/m4/glibc21.m4: Update.
3700         * gnulib/import/m4/glob.m4: Update.
3701         * gnulib/import/m4/glob_h.m4: Update.
3702         * gnulib/import/m4/gnulib-cache.m4: Update.
3703         * gnulib/import/m4/gnulib-common.m4: Update.
3704         * gnulib/import/m4/gnulib-comp.m4: Update.
3705         * gnulib/import/m4/gnulib-tool.m4: Update.
3706         * gnulib/import/m4/hard-locale.m4: Update.
3707         * gnulib/import/m4/include_next.m4: Update.
3708         * gnulib/import/m4/inttypes-pri.m4: Update.
3709         * gnulib/import/m4/inttypes.m4: Update.
3710         * gnulib/import/m4/isnand.m4: Update.
3711         * gnulib/import/m4/isnanl.m4: Update.
3712         * gnulib/import/m4/largefile.m4: Update.
3713         * gnulib/import/m4/limits-h.m4: Update.
3714         * gnulib/import/m4/localcharset.m4: Update.
3715         * gnulib/import/m4/locale-fr.m4: Update.
3716         * gnulib/import/m4/locale-ja.m4: Update.
3717         * gnulib/import/m4/locale-zh.m4: Update.
3718         * gnulib/import/m4/localtime-buffer.m4: Update.
3719         * gnulib/import/m4/longlong.m4: Update.
3720         * gnulib/import/m4/lstat.m4: Update.
3721         * gnulib/import/m4/malloc.m4: Update.
3722         * gnulib/import/m4/malloca.m4: Update.
3723         * gnulib/import/m4/math_h.m4: Update.
3724         * gnulib/import/m4/mbrtowc.m4: Update.
3725         * gnulib/import/m4/mbsinit.m4: Update.
3726         * gnulib/import/m4/mbsrtowcs.m4: Update.
3727         * gnulib/import/m4/mbstate_t.m4: Update.
3728         * gnulib/import/m4/memchr.m4: Update.
3729         * gnulib/import/m4/memmem.m4: Update.
3730         * gnulib/import/m4/mempcpy.m4: Update.
3731         * gnulib/import/m4/memrchr.m4: Update.
3732         * gnulib/import/m4/mkdir.m4: Update.
3733         * gnulib/import/m4/mkstemp.m4: Update.
3734         * gnulib/import/m4/mmap-anon.m4: Update.
3735         * gnulib/import/m4/mode_t.m4: Update.
3736         * gnulib/import/m4/msvc-inval.m4: Update.
3737         * gnulib/import/m4/msvc-nothrow.m4: Update.
3738         * gnulib/import/m4/multiarch.m4: Update.
3739         * gnulib/import/m4/nocrash.m4: Update.
3740         * gnulib/import/m4/off_t.m4: Update.
3741         * gnulib/import/m4/onceonly.m4: Update.
3742         * gnulib/import/m4/open-cloexec.m4: Update.
3743         * gnulib/import/m4/open.m4: Update.
3744         * gnulib/import/m4/openat.m4: Update.
3745         * gnulib/import/m4/opendir.m4: Update.
3746         * gnulib/import/m4/pathmax.m4: Update.
3747         * gnulib/import/m4/rawmemchr.m4: Update.
3748         * gnulib/import/m4/readdir.m4: Update.
3749         * gnulib/import/m4/readlink.m4: Update.
3750         * gnulib/import/m4/realloc.m4: Update.
3751         * gnulib/import/m4/rename.m4: Update.
3752         * gnulib/import/m4/rewinddir.m4: Update.
3753         * gnulib/import/m4/rmdir.m4: Update.
3754         * gnulib/import/m4/save-cwd.m4: Update.
3755         * gnulib/import/m4/secure_getenv.m4: Update.
3756         * gnulib/import/m4/setenv.m4: Update.
3757         * gnulib/import/m4/signal_h.m4: Update.
3758         * gnulib/import/m4/ssize_t.m4: Update.
3759         * gnulib/import/m4/stat-time.m4: Update.
3760         * gnulib/import/m4/stat.m4: Update.
3761         * gnulib/import/m4/std-gnu11.m4: Update.
3762         * gnulib/import/m4/stdbool.m4: Update.
3763         * gnulib/import/m4/stddef_h.m4: Update.
3764         * gnulib/import/m4/stdint.m4: Update.
3765         * gnulib/import/m4/stdio_h.m4: Update.
3766         * gnulib/import/m4/stdlib_h.m4: Update.
3767         * gnulib/import/m4/strchrnul.m4: Update.
3768         * gnulib/import/m4/strdup.m4: Update.
3769         * gnulib/import/m4/strerror.m4: Update.
3770         * gnulib/import/m4/string_h.m4: Update.
3771         * gnulib/import/m4/strstr.m4: Update.
3772         * gnulib/import/m4/strtok_r.m4: Update.
3773         * gnulib/import/m4/sys_socket_h.m4: Update.
3774         * gnulib/import/m4/sys_stat_h.m4: Update.
3775         * gnulib/import/m4/sys_time_h.m4: Update.
3776         * gnulib/import/m4/sys_types_h.m4: Update.
3777         * gnulib/import/m4/tempname.m4: Update.
3778         * gnulib/import/m4/time_h.m4: Update.
3779         * gnulib/import/m4/unistd-safer.m4: Update.
3780         * gnulib/import/m4/unistd_h.m4: Update.
3781         * gnulib/import/m4/warn-on-use.m4: Update.
3782         * gnulib/import/m4/wchar_h.m4: Update.
3783         * gnulib/import/m4/wchar_t.m4: Update.
3784         * gnulib/import/m4/wctype_h.m4: Update.
3785         * gnulib/import/m4/wint_t.m4: Update.
3786         * gnulib/import/malloc.c: Update.
3787         * gnulib/import/malloc/scratch_buffer.h: Update.
3788         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3789         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3790         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3791         * gnulib/import/malloca.c: Update.
3792         * gnulib/import/malloca.h: Update.
3793         * gnulib/import/malloca.valgrind: Update.
3794         * gnulib/import/math.in.h: Update.
3795         * gnulib/import/mbrtowc.c: Update.
3796         * gnulib/import/mbsinit.c: Update.
3797         * gnulib/import/mbsrtowcs-impl.h: Update.
3798         * gnulib/import/mbsrtowcs-state.c: Update.
3799         * gnulib/import/mbsrtowcs.c: Update.
3800         * gnulib/import/memchr.c: Update.
3801         * gnulib/import/memmem.c: Update.
3802         * gnulib/import/mempcpy.c: Update.
3803         * gnulib/import/memrchr.c: Update.
3804         * gnulib/import/mkdir.c: Update.
3805         * gnulib/import/mkstemp.c: Update.
3806         * gnulib/import/msvc-inval.c: Update.
3807         * gnulib/import/msvc-inval.h: Update.
3808         * gnulib/import/msvc-nothrow.c: Update.
3809         * gnulib/import/msvc-nothrow.h: Update.
3810         * gnulib/import/open.c: Update.
3811         * gnulib/import/openat-die.c: Update.
3812         * gnulib/import/openat-priv.h: Update.
3813         * gnulib/import/openat-proc.c: Update.
3814         * gnulib/import/openat.c: Update.
3815         * gnulib/import/openat.h: Update.
3816         * gnulib/import/opendir.c: Update.
3817         * gnulib/import/pathmax.h: Update.
3818         * gnulib/import/pipe-safer.c: Update.
3819         * gnulib/import/rawmemchr.c: Update.
3820         * gnulib/import/readdir.c: Update.
3821         * gnulib/import/readlink.c: Update.
3822         * gnulib/import/realloc.c: Update.
3823         * gnulib/import/ref-add.sin: Update.
3824         * gnulib/import/ref-del.sin: Update.
3825         * gnulib/import/rename.c: Update.
3826         * gnulib/import/rewinddir.c: Update.
3827         * gnulib/import/rmdir.c: Update.
3828         * gnulib/import/same-inode.h: Update.
3829         * gnulib/import/save-cwd.c: Update.
3830         * gnulib/import/save-cwd.h: Update.
3831         * gnulib/import/scratch_buffer.h: Update.
3832         * gnulib/import/secure_getenv.c: Update.
3833         * gnulib/import/setenv.c: Update.
3834         * gnulib/import/signal.in.h: Update.
3835         * gnulib/import/stat-time.c: Update.
3836         * gnulib/import/stat-time.h: Update.
3837         * gnulib/import/stat-w32.c: Update.
3838         * gnulib/import/stat-w32.h: Update.
3839         * gnulib/import/stat.c: Update.
3840         * gnulib/import/stdbool.in.h: Update.
3841         * gnulib/import/stddef.in.h: Update.
3842         * gnulib/import/stdint.in.h: Update.
3843         * gnulib/import/stdio.in.h: Update.
3844         * gnulib/import/stdlib.in.h: Update.
3845         * gnulib/import/str-two-way.h: Update.
3846         * gnulib/import/strchrnul.c: Update.
3847         * gnulib/import/strdup.c: Update.
3848         * gnulib/import/streq.h: Update.
3849         * gnulib/import/strerror-override.c: Update.
3850         * gnulib/import/strerror-override.h: Update.
3851         * gnulib/import/strerror.c: Update.
3852         * gnulib/import/string.in.h: Update.
3853         * gnulib/import/stripslash.c: Update.
3854         * gnulib/import/strnlen1.c: Update.
3855         * gnulib/import/strnlen1.h: Update.
3856         * gnulib/import/strstr.c: Update.
3857         * gnulib/import/strtok_r.c: Update.
3858         * gnulib/import/sys_stat.in.h: Update.
3859         * gnulib/import/sys_time.in.h: Update.
3860         * gnulib/import/sys_types.in.h: Update.
3861         * gnulib/import/tempname.c: Update.
3862         * gnulib/import/tempname.h: Update.
3863         * gnulib/import/time.in.h: Update.
3864         * gnulib/import/unistd--.h: Update.
3865         * gnulib/import/unistd-safer.h: Update.
3866         * gnulib/import/unistd.in.h: Update.
3867         * gnulib/import/unsetenv.c: Update.
3868         * gnulib/import/verify.h: Update.
3869         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3870         * gnulib/import/wchar.in.h: Update.
3871         * gnulib/import/wctype.in.h: Update.
3872         * gnulib/import/xalloc-oversized.h: Update.
3873         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3874         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3875
3876 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
3877
3878         * record-btrace.c (get_thread_current_frame): Remove
3879         old_inferior_ptid.
3880
3881 2018-09-10  Jerome Guitton  <guitton@adacore.com>
3882
3883         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
3884         with check_tag to 1 if and only if the type is tagged and the
3885         component being searched cannot been found in the current
3886         view. Otherwise, always call ada_to_fixed_type with
3887         check_tag to 0.
3888
3889 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3890
3891         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
3892         declaration.
3893         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
3894         * ada-varobj.c (ada_varobj_get_number_of_children,
3895         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
3896
3897 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3898
3899         * ada-valprint.c (ada_value_print): Use type instead of
3900         enclosing type.
3901
3902 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3903
3904         * ada-lang.c (ada_value_subscript): Handle case when parameter is
3905         an array of access to unconstrained array.
3906
3907 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3908
3909         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
3910         (ada_check_typedef): Use it.
3911
3912 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3913
3914         * ada-varobj.c (ada_varobj_describe_struct_child)
3915         (ada_varobj_describe_child): Handle union case like struct one.
3916
3917 2018-09-10  Tom Tromey  <tom@tromey.com>
3918
3919         PR python/18380:
3920         * python/python.c (_initialize_python): Make example in "python"
3921         help work in Python 3.
3922
3923 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
3924
3925         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
3926         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
3927         $(EXEEXT) to the script, as it is not a program.
3928
3929 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
3930
3931         * python/py-prettyprint.c (pretty_print_one_value): Return
3932         gdbpy_ref<>.
3933         (print_string_repr): Adjust.
3934         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
3935         * python/python-internal.h (apply_varobj_pretty_printer): Return
3936         gdbpy_ref<>.
3937         * varobj.c (varobj_value_get_print_value): Adjust.
3938
3939 2018-09-08  Tom Tromey  <tom@tromey.com>
3940
3941         PR python/16047:
3942         * python/py-prettyprint.c (pretty_print_one_value): Check for
3943         to_string method.
3944
3945 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3946
3947         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
3948         replace_operator_with_call.
3949
3950 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3951
3952         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
3953
3954 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3955
3956         * ada-typeprint.c (print_range): Print the bounds using TYPE
3957         rather than its TYPE_TARGET_TYPE.
3958
3959 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3960
3961         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
3962         call to ada_to_fixed_value_create.
3963
3964 2018-09-08  Jerome Guitton  <guitton@adacore.com>
3965
3966         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
3967
3968 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3969
3970         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
3971         by calls to error.
3972
3973 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3974
3975         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
3976         Move update of loop variable "fi".
3977
3978 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3979
3980         * ada-lang.c (value_assign_to_component): In the case of
3981         big-endian targets, extract the bits of the given VAL
3982         using an src_offset of zero if container is not a scalar.
3983
3984 2018-09-06  Simon Ser  <contact@emersion.fr>
3985
3986         PR gdb/23105
3987         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
3988         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3989         * fbsd-tdep.c (fbsd_make_note_desc): New.
3990         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
3991         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
3992         * target.h (enum target_object) Add FreeBSD-specific
3993         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3994
3995 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3996
3997         * compile/compile-c.h (generate_c_for_variable_locations):
3998         Change reference to pointer.
3999         * compile/compile-c-support.c (compile_program) <compute>:
4000         Likewise.
4001         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
4002         (generate_c_for_for_one_variable): Likewise
4003         (generate_c_for_variable_locations): Likewise
4004         * compile/compile-c-types.c (compile_c_instance::convert_type):
4005         Likewise
4006         * compile/compile-cplus-symbols.c (convert_one_symbol):
4007         std::move the scope passed to enter_scope.
4008         * compile/compile-cplus-types.c
4009         (compile_cplus_instance::enter_scope): Make parameter
4010         rvalue-reference.
4011         (compile_cplus_instance::new_scope): Change reference to
4012         pointer.
4013         (compile_cplus_instance::convert_type): Likewise
4014         (compile_cplus_convert_typedef): std::move the scope passed to
4015         enter_scope.
4016         (compile_cplus_convert_struct_or_union): Likewise.
4017         (compile_cplus_convert_enum): Likewise.
4018         (compile_cplus_convert_namespace): Likewise.
4019         * compile/compile-cplus.h (compile_cplus_instance)
4020         <enter_scope>: Make parameter rvalue-reference.
4021         * compile/compile-internal.h (compile_instance)
4022         <get_cached_type>: Likewise
4023         * compile/compile-loc2c.c (push): Likewise
4024         (pushf): Likewise
4025         (unary): Likewise
4026         (binary): Likewise
4027         (print_label): Likewise
4028         (pushf_register_address): Likewise
4029         (pushf_register): Likewise
4030         (do_compile_dwarf_expr_to_c): Likewise
4031         (compile_dwarf_expr_to_c): Likewise
4032         (compile_dwarf_bounds_to_c): Likewise
4033         * compile/compile.c (compile_instance::get_cached_type):
4034         Likewise
4035         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
4036         (compile_dwarf_bounds_to_c): Likewise
4037         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
4038         (dwarf2_compile_property_to_c): Likewise
4039         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
4040         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
4041         Likewise
4042
4043 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
4044
4045         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
4046         * tui/tui-data.c (init_content_element): Don't initialize it.
4047
4048 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
4049
4050         * tui/tui-data.h (struct tui_win_info)
4051         <detail::opaque>: Remove.
4052         * tui/tui-data.c (init_win_info): Remove assignment.
4053
4054 2018-09-05  Tom Tromey  <tom@tromey.com>
4055
4056         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
4057         -Wformat-nonliteral.
4058         * target-float.c (host_float_ops<T>::to_string)
4059         (host_float_ops<T>::from_string): Use
4060         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
4061         * configure: Rebuild.
4062
4063 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
4064
4065         * printcmd.c (printf_c_string): Use
4066         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
4067         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
4068
4069 2018-09-05  Tom Tromey  <tom@tromey.com>
4070
4071         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
4072
4073 2018-09-05  Tom de Vries  <tdevries@suse.de>
4074
4075         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
4076         with resolve_abstract_p == true.
4077         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
4078         defaulting to false. Propagate resolve_abstract_p to
4079         dwarf2_fetch_die_loc_sect_off.
4080         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
4081         parameter, defaulting to false.
4082         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
4083         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
4084         parameter.
4085         * dwarf2read.h (struct die_info): Forward-declare.
4086         (die_info_ptr): New typedef.
4087         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
4088
4089 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
4090
4091         GDB 8.2 released.
4092
4093 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
4094             Pedro Alves  <palves@redhat.com>
4095
4096         * gnulib/Makefile.in (aclocal_m4_deps): Move to
4097         "aclocal-m4-deps.mk".  Include file here.
4098         $(srcdir)/aclocal.m4: Add "configure.ac".
4099         * gnulib/aclocal-m4-deps.mk: New file.
4100         * gnulib/update-gnulib.sh: Automatically update
4101         "aclocal-m4-deps.mk".
4102
4103 2018-09-04  Tom Tromey  <tom@tromey.com>
4104
4105         * configure: Rebuild.
4106         * configure.ac: Remove multi-ice code.
4107
4108 2018-09-04  Tom Tromey  <tom@tromey.com>
4109
4110         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
4111         (ada-exp.o): Update.
4112
4113 2018-09-04  Tom Tromey  <tom@tromey.com>
4114
4115         * Makefile.in (printcmd.o, target-float.o): Remove.
4116         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
4117
4118 2018-09-04  Tom Tromey  <tom@tromey.com>
4119
4120         * gnulib/Makefile.in: Remove obsolete comment.
4121         * Makefile.in: Remove obsolete comment.
4122
4123 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
4124
4125         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
4126         line with '+'.
4127
4128 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4129
4130         * riscv-tdep.c: Add 'prologue-value.h' include.
4131         (struct riscv_unwind_cache): New struct.
4132         (riscv_debug_unwinder): New global.
4133         (riscv_scan_prologue): Update arguments, capture register details
4134         from prologue scan.
4135         (riscv_skip_prologue): Reformat arguments line, move end of
4136         prologue calculation into riscv_scan_prologue.
4137         (riscv_frame_cache): Update return type, create
4138         riscv_unwind_cache, scan the prologue, and fill in remaining cache
4139         details.
4140         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
4141         (riscv_frame_prev_register): Use the trad_frame within the
4142         riscv_unwind_cache.
4143         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
4144         flag.
4145
4146 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4147
4148         * trad-frame.h (trad_frame_set_realreg): Declare.
4149         (trad_frame_set_addr): Declare.
4150         * trad-frame.c (trad_frame_set_realreg): Define new function.
4151         (trad_frame_set_addr): Define new function.
4152         (trad_frame_set_reg_realreg): Use new function.
4153         (trad_frame_set_reg_addr): Use new function.
4154
4155 2018-09-01  Keith Seitz  <keiths@redhat.com>
4156
4157         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
4158         pulongest instead of "%lld".
4159         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
4160         ATTRIBUTE_UNUSED.
4161
4162 2018-08-31  Tom Tromey  <tom@tromey.com>
4163
4164         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
4165         variant part type.
4166
4167 2018-08-31  Pedro Alves  <palves@redhat.com>
4168
4169         * gdbarch.h: Regenerate.
4170
4171 2018-08-31  Pedro Alves  <palves@redhat.com>
4172
4173         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
4174         * target.h (Hardware watchpoint interfaces): Describe
4175         continuable/steppable/non-steppable watchpoints.
4176         * gdbarch.h, gdbarch.c: Regenerate.
4177
4178 2018-08-31  Pedro Alves  <palves@redhat.com>
4179
4180         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
4181         Delete.
4182         * s390-linux-nat.c
4183         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
4184         * target.h (target_ops::have_continuable_watchpoint): Delete.
4185         (target_have_continuable_watchpoint): Delete.
4186         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
4187         * target-delegates.c: Regenerate.
4188
4189 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
4190
4191         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
4192         the files present in "gnulib/import/m4/".
4193
4194 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4195
4196         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
4197         c.sw, c.swsp, and c.sdsp.
4198
4199 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4200
4201         * riscv-tdep.c (struct riscv_inferior_data): Delete.
4202         (riscv_read_misa_reg): Don't cache value read into inferior data.
4203         (riscv_new_inferior_data): Delete.
4204         (riscv_inferior_data_cleanup): Delete.
4205         (riscv_inferior_data): Delete.
4206         (riscv_invalidate_inferior_data): Delete.
4207         (_initialize_riscv_tdep): Remove initialisation of inferior data.
4208
4209 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
4210
4211         * compile/compile-cplus-types.c
4212         (compile_cplus_instance::leave_scope): Take the address of scope
4213         object.
4214         (compile_cplus_instance::convert_qualified_base): Compare quals
4215         to 0.
4216
4217 2018-08-30  Keith Seitz  <keiths@redhat.com>
4218
4219         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
4220         Use "%s" and host_address_to_string instead of "%p" in printf.
4221
4222 2018-08-29  Keith Seitz  <keiths@redhat.com>
4223
4224         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
4225         and compile-cplus-types.c.
4226         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
4227         * c-lang.c (cplus_language_defn): Set C++ compile functions.
4228         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
4229         Declare.
4230         * compile/compile-c-support.c: Include compile-cplus.h.
4231         (load_libcompile): Templatize.
4232         (get_compile_context): "New" function.
4233         (c_get_compile_context): Use get_compile_context.
4234         (cplus_get_compile_context): New function.
4235         (cplus_push_user_expression, cplus_pop_user_expression)
4236         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
4237         (cplus_compute_program): Define new structs/functions.
4238         * compile/compile-cplus-symmbols.c: New file.
4239         * compile/compile-cplus-types.c: New file.
4240         * compile/compile-cplus.h: New file.
4241         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
4242         Declare.
4243         * compile/compile-object-load.c (get_out_value_type): Use
4244         strncmp_iw when comparing symbol names.
4245         (compile_object_load): Add mst_bss and mst_data.
4246         * compile/compile.c (_initialize_compile): Remove
4247         -Wno-implicit-function-declaration from `compile_args'.
4248         * compile/gcc-cp-plugin.h: New file.
4249         * NEWS: Mention C++ compile support and new debug options.
4250
4251 2018-08-29  Keith Seitz  <keiths@redhat.com>
4252
4253         * linespec.c (collect_info::add_symbol): Make virtual.
4254         (struct symbol_searcher_collect_info): New struct.
4255         (symbol_searcher::find_all_symbols): New method.
4256         * symtab.h (class symbol_searcher): New class.
4257
4258 2018-08-29  Keith Seitz  <keiths@redhat.com>
4259
4260         * linespec.c (struct linespec) <function_symbols, label_symbols>:
4261         Change to vector of block_symbol.  Update all users.
4262         (struct collect_info) <symbols>: Likewise.
4263         (collect_info::add_symbol): Take block_symbol as argument.
4264         Update all callers.
4265         (decode_compound_collector) <m_symbols>: Change type to vector
4266         of block_symbol.  Update all users.
4267         (decode_compound_collector::operator ()): Change parameter type
4268         to block_symbol.
4269         (find_method, find_function_symbols, find_linespec_symbols)
4270         (find_label_symbols_in_block, find_label_symbols): Change symbol
4271         vectors to block_symbol vectors.
4272         * symtab.h (symbol_found_callback_ftype): Change parameter type to
4273         block_symbol.
4274
4275 2018-08-29  Keith Seitz  <keiths@redhat.com>
4276
4277         * linespec.c (symbolp): Remove typedef and VEC definitions.
4278         (bound_minimal_symbol_d): Likewise.
4279
4280 2018-08-29  Keith Seitz  <keiths@redhat.com>
4281
4282         * linespec.c (decode_compound_collector::decode_compound_collector):
4283         Remove initialization for `m_symtabs'.
4284         (decode_compound_collector::release_symbols): Change return type
4285         to std::vector.  Update all callers.
4286         (class decode_compound_collector) <m_symbols>: Change type to
4287         std::vector.
4288         (lookup_prefix_sym): Change return type to std::vector.  Update all
4289         callers.
4290         (compare_symbols): Remove.
4291         (std_compare_symbols): Rename to `compare_symbols'.
4292         (find_method): Change `sym_classes' parameter to std::vector.
4293         Update all callers.  Use std::sort to sort sym_classes.
4294         (find_linespec_symbols): Remove cleanup.
4295
4296 2018-08-29  Keith Seitz  <keiths@redhat.com>
4297
4298         * linespec.c (struct linespec) <minimal_symbols>: Change type to
4299         std::vector.  Update all users.
4300         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
4301         (struct collect_info) <minimal_symbols>: Likewise.
4302         (compare_msymbols): Return bool.  Change parameters to const
4303         bound_minimal_symbol references.
4304         (find_method, find_function_symbols, find_linespec_symbols): Change
4305         `minsyms' parameter to std::vector.  Update all callers.
4306
4307 2018-08-29  Keith Seitz  <keiths@redhat.com>
4308
4309         * linespec.c (struct linespec) <label_symbols>: Change type to
4310         std::vector.  Update all users.
4311         (find_label_symbols_in_block): Change `result' parameter to
4312         std::vector.  Update all callers.
4313         (find_label_symbols): Return std::vector.  Update all callers.
4314
4315 2018-08-29  Keith Seitz  <keiths@redhat.com>
4316
4317         * linespec.c (struct linespec) <function_symbols>: Change type to
4318         std::vector.  Update all users.
4319         (struct collect_info) <function_symbols>: Likewise.
4320         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
4321         (std_compare_symbols): New function.
4322         (find_method, find_function_symbols, find_linespec_symbols)
4323         (find_label_symbols_in_block): Change `symbols' parameter to
4324         std::vector.  Update all callers.
4325         (find_label_symbols): Likewise for `function_symbols' and
4326         `label_funcs_ret'.
4327
4328 2018-08-29  Keith Seitz  <keiths@redhat.com>
4329
4330         * linespec.c (symtab_vector_up): Define.
4331         (struct linespec) <file_symtabs>: Change type to std::vector *.
4332         Update all uses.
4333         (struct collect_info) <file_symtabs>: Likewise.
4334         (collect_symtabs_from_filename): Return symtab_vector_up.
4335         Update all callers.
4336         (decode_objc): Remove cleanup.
4337         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
4338         (symtab_collector::release_symtabs): Return symtab_vector_up.
4339         Update all callers.
4340         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
4341         Update all users.
4342         (collect_symtabs_from_filename, symtabs_from_filename): Return
4343         symtab_vector_up.  Update all callers.
4344
4345 2018-08-29  Tom Tromey  <tom@tromey.com>
4346
4347         * csky-tdep.c (csky_analyze_prologue): Use
4348         core_addr_to_string_nz.
4349
4350 2018-08-29  Tom Tromey  <tom@tromey.com>
4351
4352         * windows-nat.c (struct xlate_exception) <them>: Change type to
4353         DWORD.
4354         (xlate): Fix formatting.  Remove last entry.
4355         (struct xlate_exception, xlate): Comment out.
4356         (windows_nat_target::resume): Use ranged for.
4357
4358 2018-08-29  Jim Wilson  <jimw@sifive.com>
4359
4360         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
4361         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
4362         of NT_PRFPREG.
4363         (riscv_linux_nat_target::store_registers): Likewise.
4364
4365 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
4366
4367         PR gdb/23555
4368         PR gdb/23558
4369         * gnulib/aclocal.m4: Regenerate.
4370         * gnulib/config.in: Regenerate.
4371         * gnulib/configure: Regenerate.
4372         * gnulib/import/Makefile.am: Update.
4373         * gnulib/import/Makefile.in: Update.
4374         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
4375         * gnulib/import/_Noreturn.h: ... this.
4376         * gnulib/import/alloca.in.h: Update.
4377         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
4378         * gnulib/import/arg-nonnull.h: ... this.
4379         * gnulib/import/assure.h: Update.
4380         * gnulib/import/at-func.c: Update.
4381         * gnulib/import/basename-lgpl.c: Update.
4382         * gnulib/import/extra/snippet/c++defs.h: Rename to...
4383         * gnulib/import/c++defs.h: ... this.
4384         * gnulib/import/canonicalize-lgpl.c: Update.
4385         * gnulib/import/cdefs.h: Update.
4386         * gnulib/import/chdir-long.c: Update.
4387         * gnulib/import/chdir-long.h: Update.
4388         * gnulib/import/cloexec.c: Update.
4389         * gnulib/import/cloexec.h: Update.
4390         * gnulib/import/close.c: Update.
4391         * gnulib/import/closedir.c: Update.
4392         * gnulib/import/config.charset: Update.
4393         * gnulib/import/dirent-private.h: Update.
4394         * gnulib/import/dirent.in.h: Update.
4395         * gnulib/import/dirfd.c: Update.
4396         * gnulib/import/dirname-lgpl.c: Update.
4397         * gnulib/import/dirname.h: Update.
4398         * gnulib/import/dosname.h: Update.
4399         * gnulib/import/dup-safer-flag.c: Update.
4400         * gnulib/import/dup-safer.c: Update.
4401         * gnulib/import/dup.c: Update.
4402         * gnulib/import/dup2.c: Update.
4403         * gnulib/import/errno.in.h: Update.
4404         * gnulib/import/error.c: Update.
4405         * gnulib/import/error.h: Update.
4406         * gnulib/import/exitfail.c: Update.
4407         * gnulib/import/exitfail.h: Update.
4408         * gnulib/import/extra/update-copyright: Update.
4409         * gnulib/import/fchdir.c: Update.
4410         * gnulib/import/fcntl.c: Update.
4411         * gnulib/import/fcntl.in.h: Update.
4412         * gnulib/import/fd-hook.c: Update.
4413         * gnulib/import/fd-hook.h: Update.
4414         * gnulib/import/fd-safer-flag.c: Update.
4415         * gnulib/import/fd-safer.c: Update.
4416         * gnulib/import/fdopendir.c: Update.
4417         * gnulib/import/filename.h: Update.
4418         * gnulib/import/filenamecat-lgpl.c: Update.
4419         * gnulib/import/filenamecat.h: Update.
4420         * gnulib/import/flexmember.h: Update.
4421         * gnulib/import/float+.h: Update.
4422         * gnulib/import/float.c: Update.
4423         * gnulib/import/float.in.h: Update.
4424         * gnulib/import/fnmatch.c: Update.
4425         * gnulib/import/fnmatch.in.h: Update.
4426         * gnulib/import/fnmatch_loop.c: Update.
4427         * gnulib/import/fpucw.h: Update.
4428         * gnulib/import/frexp.c: Update.
4429         * gnulib/import/frexpl.c: Update.
4430         * gnulib/import/fstat.c: Update.
4431         * gnulib/import/fstatat.c: Update.
4432         * gnulib/import/getcwd-lgpl.c: Update.
4433         * gnulib/import/getcwd.c: Update.
4434         * gnulib/import/getdtablesize.c: Update.
4435         * gnulib/import/getlogin_r.c: Update.
4436         * gnulib/import/getprogname.c: Update.
4437         * gnulib/import/getprogname.h: Update.
4438         * gnulib/import/gettext.h: Update.
4439         * gnulib/import/gettimeofday.c: Update.
4440         * gnulib/import/glob-libc.h: Update.
4441         * gnulib/import/glob.c: Update.
4442         * gnulib/import/glob.in.h: Update.
4443         * gnulib/import/glob_internal.h: Update.
4444         * gnulib/import/glob_pattern_p.c: Update.
4445         * gnulib/import/globfree.c: Update.
4446         * gnulib/import/hard-locale.c: Update.
4447         * gnulib/import/hard-locale.h: Update.
4448         * gnulib/import/intprops.h: Update.
4449         * gnulib/import/inttypes.in.h: Update.
4450         * gnulib/import/isnan.c: Update.
4451         * gnulib/import/isnand-nolibm.h: Update.
4452         * gnulib/import/isnand.c: Update.
4453         * gnulib/import/isnanl-nolibm.h: Update.
4454         * gnulib/import/isnanl.c: Update.
4455         * gnulib/import/itold.c: Update.
4456         * gnulib/import/libc-config.h: Update.
4457         * gnulib/import/limits.in.h: Update.
4458         * gnulib/import/localcharset.c: Update.
4459         * gnulib/import/localcharset.h: Update.
4460         * gnulib/import/localtime-buffer.c: Update.
4461         * gnulib/import/localtime-buffer.h: Update.
4462         * gnulib/import/lstat.c: Update.
4463         * gnulib/import/m4/00gnulib.m4: Update.
4464         * gnulib/import/m4/__inline.m4: Update.
4465         * gnulib/import/m4/absolute-header.m4: Update.
4466         * gnulib/import/m4/alloca.m4: Update.
4467         * gnulib/import/m4/builtin-expect.m4: Update.
4468         * gnulib/import/m4/canonicalize.m4: Update.
4469         * gnulib/import/m4/chdir-long.m4: Update.
4470         * gnulib/import/m4/close.m4: Update.
4471         * gnulib/import/m4/closedir.m4: Update.
4472         * gnulib/import/m4/configmake.m4: Update.
4473         * gnulib/import/m4/d-ino.m4: Update.
4474         * gnulib/import/m4/d-type.m4: Update.
4475         * gnulib/import/m4/dirent_h.m4: Update.
4476         * gnulib/import/m4/dirfd.m4: Update.
4477         * gnulib/import/m4/dirname.m4: Update.
4478         * gnulib/import/m4/double-slash-root.m4: Update.
4479         * gnulib/import/m4/dup.m4: Update.
4480         * gnulib/import/m4/dup2.m4: Update.
4481         * gnulib/import/m4/eealloc.m4: Update.
4482         * gnulib/import/m4/environ.m4: Update.
4483         * gnulib/import/m4/errno_h.m4: Update.
4484         * gnulib/import/m4/error.m4: Update.
4485         * gnulib/import/m4/exponentd.m4: Update.
4486         * gnulib/import/m4/exponentl.m4: Update.
4487         * gnulib/import/m4/extensions.m4: Update.
4488         * gnulib/import/m4/extern-inline.m4: Update.
4489         * gnulib/import/m4/fchdir.m4: Update.
4490         * gnulib/import/m4/fcntl-o.m4: Update.
4491         * gnulib/import/m4/fcntl.m4: Update.
4492         * gnulib/import/m4/fcntl_h.m4: Update.
4493         * gnulib/import/m4/fdopendir.m4: Update.
4494         * gnulib/import/m4/filenamecat.m4: Update.
4495         * gnulib/import/m4/flexmember.m4: Update.
4496         * gnulib/import/m4/float_h.m4: Update.
4497         * gnulib/import/m4/fnmatch.m4: Update.
4498         * gnulib/import/m4/fnmatch_h.m4: Update.
4499         * gnulib/import/m4/fpieee.m4: Update.
4500         * gnulib/import/m4/frexp.m4: Update.
4501         * gnulib/import/m4/frexpl.m4: Update.
4502         * gnulib/import/m4/fstat.m4: Update.
4503         * gnulib/import/m4/fstatat.m4: Update.
4504         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
4505         * gnulib/import/m4/getcwd-path-max.m4: Update.
4506         * gnulib/import/m4/getcwd.m4: Update.
4507         * gnulib/import/m4/getdtablesize.m4: Update.
4508         * gnulib/import/m4/getlogin.m4: Update.
4509         * gnulib/import/m4/getlogin_r.m4: Update.
4510         * gnulib/import/m4/getpagesize.m4: Update.
4511         * gnulib/import/m4/getprogname.m4: Update.
4512         * gnulib/import/m4/gettimeofday.m4: Update.
4513         * gnulib/import/m4/glibc21.m4: Update.
4514         * gnulib/import/m4/glob.m4: Update.
4515         * gnulib/import/m4/glob_h.m4: Update.
4516         * gnulib/import/m4/gnulib-cache.m4: Update.
4517         * gnulib/import/m4/gnulib-common.m4: Update.
4518         * gnulib/import/m4/gnulib-comp.m4: Update.
4519         * gnulib/import/m4/gnulib-tool.m4: Update.
4520         * gnulib/import/m4/hard-locale.m4: Update.
4521         * gnulib/import/m4/include_next.m4: Update.
4522         * gnulib/import/m4/inttypes-pri.m4: Update.
4523         * gnulib/import/m4/inttypes.m4: Update.
4524         * gnulib/import/m4/isnand.m4: Update.
4525         * gnulib/import/m4/isnanl.m4: Update.
4526         * gnulib/import/m4/largefile.m4: Update.
4527         * gnulib/import/m4/limits-h.m4: Update.
4528         * gnulib/import/m4/localcharset.m4: Update.
4529         * gnulib/import/m4/locale-fr.m4: Update.
4530         * gnulib/import/m4/locale-ja.m4: Update.
4531         * gnulib/import/m4/locale-zh.m4: Update.
4532         * gnulib/import/m4/localtime-buffer.m4: Update.
4533         * gnulib/import/m4/longlong.m4: Update.
4534         * gnulib/import/m4/lstat.m4: Update.
4535         * gnulib/import/m4/malloc.m4: Update.
4536         * gnulib/import/m4/malloca.m4: Update.
4537         * gnulib/import/m4/math_h.m4: Update.
4538         * gnulib/import/m4/mbrtowc.m4: Update.
4539         * gnulib/import/m4/mbsinit.m4: Update.
4540         * gnulib/import/m4/mbsrtowcs.m4: Update.
4541         * gnulib/import/m4/mbstate_t.m4: Update.
4542         * gnulib/import/m4/memchr.m4: Update.
4543         * gnulib/import/m4/memmem.m4: Update.
4544         * gnulib/import/m4/mempcpy.m4: Update.
4545         * gnulib/import/m4/memrchr.m4: Update.
4546         * gnulib/import/m4/mkdir.m4: Update.
4547         * gnulib/import/m4/mkstemp.m4: Update.
4548         * gnulib/import/m4/mmap-anon.m4: Update.
4549         * gnulib/import/m4/mode_t.m4: Update.
4550         * gnulib/import/m4/msvc-inval.m4: Update.
4551         * gnulib/import/m4/msvc-nothrow.m4: Update.
4552         * gnulib/import/m4/multiarch.m4: Update.
4553         * gnulib/import/m4/nocrash.m4: Update.
4554         * gnulib/import/m4/off_t.m4: Update.
4555         * gnulib/import/m4/onceonly.m4: Update.
4556         * gnulib/import/m4/open-cloexec.m4: Update.
4557         * gnulib/import/m4/open.m4: Update.
4558         * gnulib/import/m4/openat.m4: Update.
4559         * gnulib/import/m4/opendir.m4: Update.
4560         * gnulib/import/m4/pathmax.m4: Update.
4561         * gnulib/import/m4/rawmemchr.m4: Update.
4562         * gnulib/import/m4/readdir.m4: Update.
4563         * gnulib/import/m4/readlink.m4: Update.
4564         * gnulib/import/m4/realloc.m4: Update.
4565         * gnulib/import/m4/rename.m4: Update.
4566         * gnulib/import/m4/rewinddir.m4: Update.
4567         * gnulib/import/m4/rmdir.m4: Update.
4568         * gnulib/import/m4/save-cwd.m4: Update.
4569         * gnulib/import/m4/secure_getenv.m4: Update.
4570         * gnulib/import/m4/setenv.m4: Update.
4571         * gnulib/import/m4/signal_h.m4: Update.
4572         * gnulib/import/m4/ssize_t.m4: Update.
4573         * gnulib/import/m4/stat-time.m4: Update.
4574         * gnulib/import/m4/stat.m4: Update.
4575         * gnulib/import/m4/std-gnu11.m4: Update.
4576         * gnulib/import/m4/stdbool.m4: Update.
4577         * gnulib/import/m4/stddef_h.m4: Update.
4578         * gnulib/import/m4/stdint.m4: Update.
4579         * gnulib/import/m4/stdio_h.m4: Update.
4580         * gnulib/import/m4/stdlib_h.m4: Update.
4581         * gnulib/import/m4/strchrnul.m4: Update.
4582         * gnulib/import/m4/strdup.m4: Update.
4583         * gnulib/import/m4/strerror.m4: Update.
4584         * gnulib/import/m4/string_h.m4: Update.
4585         * gnulib/import/m4/strstr.m4: Update.
4586         * gnulib/import/m4/strtok_r.m4: Update.
4587         * gnulib/import/m4/sys_socket_h.m4: Update.
4588         * gnulib/import/m4/sys_stat_h.m4: Update.
4589         * gnulib/import/m4/sys_time_h.m4: Update.
4590         * gnulib/import/m4/sys_types_h.m4: Update.
4591         * gnulib/import/m4/tempname.m4: Update.
4592         * gnulib/import/m4/time_h.m4: Update.
4593         * gnulib/import/m4/unistd-safer.m4: Update.
4594         * gnulib/import/m4/unistd_h.m4: Update.
4595         * gnulib/import/m4/warn-on-use.m4: Update.
4596         * gnulib/import/m4/wchar_h.m4: Update.
4597         * gnulib/import/m4/wchar_t.m4: Update.
4598         * gnulib/import/m4/wctype_h.m4: Update.
4599         * gnulib/import/m4/wint_t.m4: Update.
4600         * gnulib/import/malloc.c: Update.
4601         * gnulib/import/malloc/scratch_buffer.h: Update.
4602         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
4603         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
4604         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
4605         * gnulib/import/malloca.c: Update.
4606         * gnulib/import/malloca.h: Update.
4607         * gnulib/import/malloca.valgrind: Update.
4608         * gnulib/import/math.in.h: Update.
4609         * gnulib/import/mbrtowc.c: Update.
4610         * gnulib/import/mbsinit.c: Update.
4611         * gnulib/import/mbsrtowcs-impl.h: Update.
4612         * gnulib/import/mbsrtowcs-state.c: Update.
4613         * gnulib/import/mbsrtowcs.c: Update.
4614         * gnulib/import/memchr.c: Update.
4615         * gnulib/import/memmem.c: Update.
4616         * gnulib/import/mempcpy.c: Update.
4617         * gnulib/import/memrchr.c: Update.
4618         * gnulib/import/mkdir.c: Update.
4619         * gnulib/import/mkstemp.c: Update.
4620         * gnulib/import/msvc-inval.c: Update.
4621         * gnulib/import/msvc-inval.h: Update.
4622         * gnulib/import/msvc-nothrow.c: Update.
4623         * gnulib/import/msvc-nothrow.h: Update.
4624         * gnulib/import/open.c: Update.
4625         * gnulib/import/openat-die.c: Update.
4626         * gnulib/import/openat-priv.h: Update.
4627         * gnulib/import/openat-proc.c: Update.
4628         * gnulib/import/openat.c: Update.
4629         * gnulib/import/openat.h: Update.
4630         * gnulib/import/opendir.c: Update.
4631         * gnulib/import/pathmax.h: Update.
4632         * gnulib/import/pipe-safer.c: Update.
4633         * gnulib/import/rawmemchr.c: Update.
4634         * gnulib/import/readdir.c: Update.
4635         * gnulib/import/readlink.c: Update.
4636         * gnulib/import/realloc.c: Update.
4637         * gnulib/import/ref-add.sin: Update.
4638         * gnulib/import/ref-del.sin: Update.
4639         * gnulib/import/rename.c: Update.
4640         * gnulib/import/rewinddir.c: Update.
4641         * gnulib/import/rmdir.c: Update.
4642         * gnulib/import/same-inode.h: Update.
4643         * gnulib/import/save-cwd.c: Update.
4644         * gnulib/import/save-cwd.h: Update.
4645         * gnulib/import/scratch_buffer.h: Update.
4646         * gnulib/import/secure_getenv.c: Update.
4647         * gnulib/import/setenv.c: Update.
4648         * gnulib/import/signal.in.h: Update.
4649         * gnulib/import/stat-time.c: Update.
4650         * gnulib/import/stat-time.h: Update.
4651         * gnulib/import/stat-w32.c: Update.
4652         * gnulib/import/stat-w32.h: Update.
4653         * gnulib/import/stat.c: Update.
4654         * gnulib/import/stdbool.in.h: Update.
4655         * gnulib/import/stddef.in.h: Update.
4656         * gnulib/import/stdint.in.h: Update.
4657         * gnulib/import/stdio.in.h: Update.
4658         * gnulib/import/stdlib.in.h: Update.
4659         * gnulib/import/str-two-way.h: Update.
4660         * gnulib/import/strchrnul.c: Update.
4661         * gnulib/import/strdup.c: Update.
4662         * gnulib/import/streq.h: Update.
4663         * gnulib/import/strerror-override.c: Update.
4664         * gnulib/import/strerror-override.h: Update.
4665         * gnulib/import/strerror.c: Update.
4666         * gnulib/import/string.in.h: Update.
4667         * gnulib/import/stripslash.c: Update.
4668         * gnulib/import/strnlen1.c: Update.
4669         * gnulib/import/strnlen1.h: Update.
4670         * gnulib/import/strstr.c: Update.
4671         * gnulib/import/strtok_r.c: Update.
4672         * gnulib/import/sys_stat.in.h: Update.
4673         * gnulib/import/sys_time.in.h: Update.
4674         * gnulib/import/sys_types.in.h: Update.
4675         * gnulib/import/tempname.c: Update.
4676         * gnulib/import/tempname.h: Update.
4677         * gnulib/import/time.in.h: Update.
4678         * gnulib/import/unistd--.h: Update.
4679         * gnulib/import/unistd-safer.h: Update.
4680         * gnulib/import/unistd.in.h: Update.
4681         * gnulib/import/unsetenv.c: Update.
4682         * gnulib/import/verify.h: Update.
4683         * gnulib/import/extra/snippet/warn-on-use.h: Update.
4684         * gnulib/import/wchar.in.h: Update.
4685         * gnulib/import/wctype.in.h: Update.
4686         * gnulib/import/xalloc-oversized.h: Update.
4687         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
4688         "53e2c179f26a890fa6685af4b6c1397ee370433b".
4689
4690 2018-08-16  Gary Benson <gbenson@redhat.com>
4691
4692         PR gdb/13000:
4693         * gdb/main.c (captured_main_1): Exit with nonzero status
4694         in batch mode if the last command to be executed failed.
4695         * NEWS: Mention the above.
4696
4697 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
4698
4699         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
4700         end of warning message.
4701
4702 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4703
4704         PR gdb/22943:
4705         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
4706         (aarch64_extract_return_value): Use
4707         aapcs_is_vfp_call_or_return_candidate.
4708         (aarch64_return_in_memory): Likewise.
4709         (aarch64_store_return_value): Likewise.
4710
4711 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4712
4713         * aarch64-tdep.c
4714         (aapcs_is_vfp_call_or_return_candidate): Make static
4715         (pass_in_v_or_stack): Remove function.
4716         (pass_in_v_vfp_candidate): New function.
4717         (aarch64_push_dummy_call): Check for float register candidates.
4718
4719 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4720
4721         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
4722         (aapcs_is_vfp_call_or_return_candidate_1): New function.
4723         (aapcs_is_vfp_call_or_return_candidate): Likewise.
4724
4725 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
4726
4727         PR build/23399
4728         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
4729         (struct ipa_sym_addresses): Rename to...
4730         (struct ipa_sym_addresses_common): ... this.
4731         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
4732
4733 2018-08-28  Tom Tromey  <tom@tromey.com>
4734
4735         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4736         (token_fifo): Now a std::vector.
4737         (yylex, c_parse): Update.
4738         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4739         (token_fifo): Now a std::vector.
4740         (yylex, d_parse): Update.
4741         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4742         (token_fifo): Now a std::vector.
4743         (yylex, go_parse): Update.
4744
4745 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
4746
4747         * parser-defs.h (struct type_stack) <elements>: Change type to
4748         std::vector<union type_stack_elt>.
4749         <depth, size>: Remove.
4750         * parse.c (parse_exp_in_context_1): Adjust.
4751         (type_stack_reserve): Remove.
4752         (check_type_stack_depth): Remove.
4753         (insert_into_type_stack): Adjust to std::vector.
4754         (insert_type): Likewise.
4755         (push_type): Likewise.
4756         (push_type_int): Likewise.
4757         (insert_type_address_space): Likewise.
4758         (pop_type): Likewise.
4759         (pop_type_int): Likewise.
4760         (pop_typelist): Likewise.
4761         (pop_type_stack): Likewise.
4762         (append_type_stack): Likewise.
4763         (push_type_stack): Likewise.
4764         (get_type_stack): Likewise.
4765         (type_stack_cleanup): Likewise.
4766         (push_typelist): Likewise.
4767         (follow_types): Likewise.
4768         (_initialize_parse): Likewise.
4769
4770 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
4771
4772         * NEWS: Mention csky target.
4773
4774 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
4775             Hafiz Abid Qadeer  <abidh@codesourcery.com>
4776             Don Breazeal  <donb@codesourcery.com>
4777
4778         * csky-linux-tdep.c: New file.
4779         * csky-tdep.c: Likewise.
4780         * csky-tdep.h: Likewise.
4781         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
4782         csky-tdep.o.
4783         (HFILES_NO_SRCDIR): Add csky-tdep.h.
4784         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
4785         * configure.tgt: Add csky support.
4786
4787 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
4788
4789         * python/py-framefilter.c (py_print_frame): Print frame architecture
4790         when printing on an MI output.
4791
4792 2018-08-27  Tom Tromey  <tom@tromey.com>
4793
4794         PR build/23087:
4795         * configure: Rebuild.
4796         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
4797
4798 2018-08-27  Tom Tromey  <tom@tromey.com>
4799
4800         * aarch64-linux-tdep.c
4801         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
4802         casts to int.
4803
4804 2018-08-27  Tom Tromey  <tom@tromey.com>
4805
4806         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
4807         unsigned.
4808         (ppc64_standard_linkage1, ppc64_standard_linkage2)
4809         (ppc64_standard_linkage3, ppc64_standard_linkage4)
4810         (ppc64_standard_linkage5, ppc64_standard_linkage6)
4811         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
4812         unsigned.
4813
4814 2018-08-27  Tom Tromey  <tom@tromey.com>
4815
4816         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
4817         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
4818
4819 2018-08-27  Tom Tromey  <tom@tromey.com>
4820
4821         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
4822         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
4823         ULONGEST_MAX.
4824         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
4825         ULONGEST_MAX.
4826         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
4827         ULONGEST_MAX.
4828         * sparc-linux-tdep.c (sparc32_linux_sigframe)
4829         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
4830         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
4831         ULONGEST_MAX.
4832         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
4833         (ppc64_linux_sigaction_tramp_frame)
4834         (ppc32_linux_sighandler_tramp_frame)
4835         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4836         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
4837         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
4838         * mn10300-linux-tdep.c (am33_linux_sigframe)
4839         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
4840         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
4841         * mips-linux-tdep.c (mips_linux_o32_sigframe)
4842         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
4843         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
4844         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
4845         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
4846         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
4847         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
4848         * microblaze-linux-tdep.c
4849         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4850         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
4851         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
4852         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
4853         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
4854         * common/common-types.h (ULONGEST_MAX): New define.
4855         (CORE_ADDR_MAX): Fix formatting.
4856         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
4857         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
4858         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
4859         (arm_linux_rt_sigreturn_tramp_frame)
4860         (arm_eabi_linux_sigreturn_tramp_frame)
4861         (arm_eabi_linux_rt_sigreturn_tramp_frame)
4862         (thumb2_eabi_linux_sigreturn_tramp_frame)
4863         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
4864         (arm_linux_restart_syscall_tramp_frame)
4865         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
4866         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
4867         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
4868         ULONGEST_MAX.
4869         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
4870
4871 2018-08-27  Tom Tromey  <tom@tromey.com>
4872
4873         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
4874         CORE_ADDR_MAX.
4875         * mips-tdep.c (mips_deal_with_atomic_sequence)
4876         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
4877         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
4878         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
4879         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
4880         CORE_ADDR_MAX.
4881         * aarch64-tdep.c (aarch64_software_single_step): Use
4882         CORE_ADDR_MAX.
4883
4884 2018-08-27  Tom Tromey  <tom@tromey.com>
4885
4886         * linespec.c (complete_linespec_component): Add cast to "char".
4887         * completer.c (completion_tracker::build_completion_result): Add
4888         cast to "char".
4889
4890 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4891
4892         * solist.h (struct solist, struct target_so_ops): Fix
4893         indentation.
4894
4895 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4896
4897         * ada-tasks.c (ada_task_info_s): Remove typedef.
4898         (DEF_VEC_O(ada_task_info_s)): Remove.
4899         (struct ada_tasks_inferior_data): Initialize fields.
4900         <task_list>: Make an std::vector.
4901         (get_ada_tasks_inferior_data): Allocate with new.
4902         (ada_get_task_number): Adjust.
4903         (get_task_number_from_id): Likewise.
4904         (valid_task_id): Likewise.
4905         (ada_get_task_info_from_ptid): Likewise.
4906         (iterate_over_live_ada_tasks): Likewise.
4907         (add_ada_task): Likewise.
4908         (read_known_tasks): Likewise.
4909         (ada_build_task_list): Likewise.
4910         (print_ada_task_info): Likewise.
4911         (info_task): Likewise.
4912         (task_command_1): Likewise.
4913
4914 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4915
4916         * ada-lang.c (add_angle_brackets): Return std::string.
4917
4918 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
4919
4920         * python/py-threadevent.c (py_get_event_thread): Initialize
4921         pythread.
4922
4923 2018-08-24  Pedro Alves  <palves@redhat.com>
4924
4925         * python/py-bpevent.c (create_breakpoint_event_object): Use
4926         copy-initialization.
4927         * python/py-continueevent.c (emit_continue_event): Use
4928         copy-initialization.
4929         * python/py-exitedevent.c (create_exited_event_object): Return a
4930         gdbpy_ref<>.
4931         (emit_exited_event): Use copy-initialization.
4932         * python/py-inferior.c (python_new_inferior)
4933         (python_inferior_deleted, add_thread_object): Use
4934         copy-initialization.
4935         * python/py-infevents.c (create_inferior_call_event_object)
4936         (create_register_changed_event_object)
4937         (create_memory_changed_event_object): Return a gdbpy_ref<>.
4938         (emit_inferior_call_event, emit_memory_changed_event)
4939         (emit_register_changed_event): Use copy-initialization.
4940         * python/py-newobjfileevent.c (create_new_objfile_event_object):
4941         Return a gdbpy_ref<>.
4942         (emit_new_objfile_event): Use copy-initialization.
4943         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
4944         (emit_clear_objfiles_event): Use copy-initialization.
4945         * python/py-signalevent.c (create_signal_event_object): Use
4946         copy-initialization.
4947         * python/py-threadevent.c (create_thread_event_object): Use
4948         copy-initialization.
4949
4950 2018-08-24  Pedro Alves  <palves@redhat.com>
4951             Simon Marchi  <simon.marchi@ericsson.com>
4952
4953         PR gdb/23379
4954         * python/py-continueevent.c: Include "gdbthread.h".
4955         (create_continue_event_object): Add intro comment.  Add 'ptid'
4956         parameter.  Use it to find thread to pass to
4957         create_thread_event_object.
4958         (emit_continue_event): Pass PTID down to
4959         create_continue_event_object.
4960         * python/py-event.h (py_get_event_thread): Declare.
4961         (create_thread_event_object): Remove default from 'thread'
4962         parameter.
4963         * python/py-stopevent.c (create_stop_event_object): Use
4964         py_get_event_thread.
4965         * python/py-threadevent.c (get_event_thread): Rename to ...
4966         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
4967         and use it to find the thread.
4968         (create_thread_event_object): Assert that THREAD isn't null.
4969         Don't find the event thread here.
4970
4971 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
4972
4973         * block.h (blockrange, blockranges): New struct declarations.
4974         (struct block): Add new field named `ranges'.
4975         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
4976         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
4977         macros for accessing ranges in struct block.
4978         (make_blockranges): New declaration.
4979         block.c (make_blockranges): New function.
4980         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
4981         for block.
4982         * symtab.h (find_pc_partial_function): Add new parameter `block'.
4983         * blockframe.c (cache_pc_function_block): New static global.
4984         (clear_pc_function_cache): Clear cache_pc_function_block.
4985         (find_pc_partial_function): Move comment to symtab.h.  Add
4986         support for non-contiguous blocks.
4987         * cli/cli-cmds.c (block.h): Include.
4988         (print_disassembly): Handle printing of non-contiguous blocks.
4989         (disassemble_current_function): Likewise.
4990         (disassemble_command): Likewise.
4991
4992         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
4993         BLOCK_START.
4994         * blockframe.c (get_pc_function_start): Likewise.
4995         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
4996         (gcc_symbol_address): Likewise.
4997         * compile/compile-object-run.c (compile_object_run): Likewise.
4998         * compile/compile.c (get_expr_block_and_pc): Likewise.
4999         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
5000         (func_addr_to_tail_call_list): Likewise.
5001         * findvar.c (default_read_var_value): Likewise.
5002         * inline-frame.c (inline_frame_this_id): Likewise.
5003         (skip-inline_frames): Likewise.
5004         * infcmd.c (until_next_command): Likewise.
5005         * linespec.c (convert_linespec_to_sals): Likewise.
5006         * parse.c (parse_exp_in_context_1): Likewise.
5007         * printcmd.c (build_address_symbolic): likewise.
5008         (info_address_command): Likewise.
5009         symtab.c (find_function_start_sal): Likewise.
5010         (skip_prologue_sal): Likewise.
5011         (find_function_alias_target): Likewise.
5012         (find_gnu_ifunc): Likewise.
5013         * stack.c (find_frame_funname): Likewise.
5014         * symtab.c (fixup_symbol_section): Likewise.
5015         (find_function_start_sal): Likewise.
5016         (skip_prologue_sal): Likewsie.
5017         (find_function_alias_target): Likewise.
5018         (find_gnu_ifunc): Likewise.
5019         * tracepoint.c (info_scope_command): Likewise.
5020         * value.c (value_fn_field): Likewise.
5021
5022         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
5023         in place of find_pc_partial_function.
5024         * blockframe.c (find_function_entry_range_from_pc): New function.
5025         * symtab.h (find_function_entry_range_from_pc): Declare and document.
5026         * objfiles.c (objfile_relocate1): Relocate start and end addresses
5027         for each range in a block.
5028
5029
5030 2018-08-23  Xavier Roirand  <roirand@adacore.com>
5031
5032         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
5033         incrementation.
5034
5035 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5036
5037         * solib-svr4.c (read_program_headers_from_bfd): Return
5038         gdb::optional<gdb::byte_vector>.
5039         (svr4_exec_displacement): Adjust.
5040
5041 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5042
5043         * solib-svr4.c (read_program_header): Return
5044         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
5045         (find_program_interpreter): Return
5046         gdb::optional<gdb::byte_vector>.
5047         (scan_dyntag_auxv): Adjust.
5048         (enable_break): Adjust.
5049         (svr4_exec_displacement): Adjust.
5050
5051 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5052
5053         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
5054         * inf-child.c (inf_child_target::terminal_save_inferior): New.
5055
5056 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5057
5058         * guile/scm-string.c (gdbscm_scm_from_printf): Use
5059         string_vprintf.
5060         * guile/scm-utils.c (gdbscm_printf): Likewise.
5061         * serial.c (serial_printf): Likewise.
5062         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
5063
5064 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
5065
5066         * stack.c (print_frame): Print frame architecture when printing on
5067         an MI output.
5068         * NEWS: Mention new "arch" attribute in frame output.
5069
5070 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
5071
5072         * arch/aarch64.h (aarch64_regnum): Update comment.
5073
5074 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
5075
5076         * NEWS: Add SVE to 8.2 section.
5077
5078 2018-08-21  Pedro Alves  <palves@redhat.com>
5079
5080         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
5081         out from gdbscm_parse_function_args.
5082         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
5083         gdbscm_parse_function_args_1.
5084
5085 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
5086
5087         PR gdb/17816
5088         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
5089         operator.
5090
5091 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
5092
5093         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
5094
5095 2018-08-19  Michael Spang  <spang@google.com>
5096
5097         PR gdb/11786
5098         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
5099         for PT_TLS segments.
5100
5101 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
5102
5103         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
5104         dwarf_variable_value.
5105         * dwarf2-frame.c (class dwarf_expr_executor):
5106         Add override for dwarf_variable_value.
5107         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
5108         (class symbol_needs_eval_context): Likewise.
5109         (indirect_synthetic_pointer): Add forward declaration.
5110         (sect_variable_value): New function.
5111         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
5112         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
5113         for DW_OP_GNU_variable_value.
5114
5115 2018-08-16  Tom Tromey  <tom@tromey.com>
5116
5117         * top.c (read_command_file): Update.
5118         (command_line_input): Remove "repeat" argument.
5119         * ada-lang.c (get_selections): Update.
5120         * linespec.c (decode_line_2): Update.
5121         * defs.h (command_line_input): Remove argument.
5122         * cli/cli-script.c (read_next_line): Update.
5123         * python/py-gdb-readline.c: Update.
5124
5125 2018-08-17  Tom Tromey  <tom@tromey.com>
5126
5127         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
5128         command_line_input.
5129
5130 2018-08-15  Tom Tromey  <tom@tromey.com>
5131
5132         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
5133
5134 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
5135
5136         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
5137         If used, use find_pc_partial_function to find address range
5138         to disassemble.
5139         * mi/mi-main.c (mi_cmd_list_features): Report
5140         "data-disassemble-a-option" feature.
5141         * NEWS: Mention new -data-disassemble option -a.
5142
5143 2018-08-13  Tom Tromey  <tom@tromey.com>
5144
5145         * common/common-defs.h (_FORTIFY_SOURCE): Define.
5146
5147 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5148
5149         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
5150         (aarch64_linux_collect_sve_regset): Likewise.
5151         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
5152         * regcache.h (regcache_map_entry_size): New function.
5153
5154 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5155
5156         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
5157         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
5158         (SVE_HEADER_VL_LENGTH): Likewise.
5159         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
5160         (SVE_HEADER_FLAGS_LENGTH): Likewise.
5161         (SVE_HEADER_RESERVED_LENGTH): Likewise.
5162         (SVE_HEADER_SIZE_OFFSET): Likewise.
5163         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
5164         (SVE_HEADER_VL_OFFSET): Likewise.
5165         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
5166         (SVE_HEADER_FLAGS_OFFSET): Likewise.
5167         (SVE_HEADER_RESERVED_OFFSET): Likewise.
5168         (SVE_HEADER_SIZE): Likewise.
5169         (aarch64_linux_core_read_vq): Add function.
5170         (aarch64_linux_core_read_description): Check for SVE section.
5171
5172 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5173
5174         * aarch64-fbsd-tdep.c
5175         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
5176         collect_size.
5177         * aarch64-linux-tdep.c
5178         (aarch64_linux_iterate_over_regset_sections): Likewise.
5179         * alpha-linux-tdep.c
5180         (alpha_linux_iterate_over_regset_sections):
5181         * alpha-nbsd-tdep.c
5182         (alphanbsd_iterate_over_regset_sections): Likewise.
5183         * amd64-fbsd-tdep.c
5184         (amd64fbsd_iterate_over_regset_sections): Likewise.
5185         * amd64-linux-tdep.c
5186         (amd64_linux_iterate_over_regset_sections): Likewise.
5187         * arm-bsd-tdep.c
5188         (armbsd_iterate_over_regset_sections): Likewise.
5189         * arm-fbsd-tdep.c
5190         (arm_fbsd_iterate_over_regset_sections): Likewise.
5191         * arm-linux-tdep.c
5192         (arm_linux_iterate_over_regset_sections): Likewise.
5193         * corelow.c (get_core_registers_cb): Likewise.
5194         (core_target::fetch_registers): Likewise.
5195         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
5196         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
5197         * gdbarch.h (void): Regenerate.
5198         * gdbarch.sh: Add supply_size and collect_size.
5199         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
5200         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
5201         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
5202         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
5203         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
5204         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
5205         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
5206         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
5207         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
5208         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
5209         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
5210         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
5211         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
5212         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
5213         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections):
5214         Likewise.
5215         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
5216         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
5217         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
5218         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
5219         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
5220         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
5221         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections):
5222         Likewise.
5223         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
5224         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
5225         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
5226         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
5227         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
5228         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
5229         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
5230         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
5231
5232 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
5233
5234         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
5235         with string_printf.
5236
5237 2018-08-10  Keith Seitz  <keiths@redhat.com>
5238
5239         * compile/compile-c-support.c (add_code_header, add_code_footer):
5240         Move into policy class.
5241         (c_push_user_expression, pop_user_expression_nop)
5242         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
5243         (compile_program): New host class.
5244         (c_compile_program): New typedef.
5245         (c_compute_porgram): Use c_compile_program.
5246
5247 2018-08-10  Keith Seitz  <keiths@redhat.com>
5248
5249         * compile/compile-internal.h (compile_instance::~compile_instance):
5250         Remove calls to htab_delete.
5251         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
5252         * compile.c (compile_instance::compile_instance): Initialize
5253         htab unique pointers.
5254         (compile_instance::get_cached_type, compile_instance::insert_type)
5255         (compile_instance::error_symbol_once): Update for unique_ptr.
5256
5257 2018-08-10  Keith Seitz  <keiths@redhat.com>
5258
5259         * compile/compile-c-symbols.c (struct symbol_error)
5260         (hash_symbol_error, eq_symbol_error, del_symbol_error)
5261         (compile_instance::insert_symbol_error)
5262         (compile_instance::error_symbol_once): Move to ...
5263         * compile/compile.c: ... here.
5264
5265 2018-08-10  Keith Seitz  <keiths@redhat.com>
5266
5267         * compile/compile-c-support.c (c_get_compile_context): Use `new'
5268         instead of `new_compile_instance'.
5269         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
5270         Update description.
5271         If the symbol error map is not initialized, create it.
5272         (generate_c_for_for_one_symbol): Do not check/initialize
5273         the symbol error map.
5274         * compile/compile-c-types.c (compile_c_instance): Make a class.
5275         Update all callers.
5276         (compile_instance::compile_instance): Initialize the type cache.
5277         (get_cached_type): New function.
5278         (insert_type): Update description.
5279         (compile_c_instance::m_default_cflags): Define.
5280         (convert_type): Update description.  Use get_cached_type.
5281         (delete_instance): Moved to destructor.
5282         (new_compile_instance): Moved to constructor.
5283         * compile/compile-c.h (compile_c_instance): Make class inheriting
5284         from compile_instance.
5285         <base>: Remove field.
5286         <type_map, symbol_err_map>: Move to base class.
5287         <c_plugin>: Rename to `m_plugin' and remove pointer type.
5288         * compile/compile-internal.h (compile_instance): Make class.
5289         <type_map_t, symbol_err_map_t>: Define.
5290         <fe>: Rename to `m_gcc_fe'.
5291         <scope, block, gcc_target_options>: Add `m_' prefix.
5292         <m_type_map, m_symbol_err_map>: New fields, moved from
5293         compile_c_instance.
5294         <destroy>: Remove.
5295         (convert_type, new_compile_instance): Remove.
5296         * compile/compile.c (cleanup_compile_instance): Remove.
5297         (compile_to_object): Use unique_ptr to eliminate cleanups.
5298         (compile_instance::set_print_callback, compile_instance::version)
5299         (compile_instance::set_verbose)
5300         (compile_instance::set_driver_filename)
5301         (compile_instance::set_triplet_regexp)
5302         (compile_instance::set_arguments)
5303         (compile_instance::set_source_file)
5304         (compile_instance::compile): Define.
5305
5306 2018-08-10  Keith Seitz  <keiths@redhat.com>
5307
5308         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
5309         * compile/compile-c-types.c: Define GCC_METHODN macros and include
5310         gcc-c-fe.def to define C plugin.
5311         (delete_instance): Delete `c_plugin'.
5312         (new_compile_instance): Initialize `c_plugin'.
5313         * compile/compile-c.h: Include gcc_c_plugin.h.
5314         (struct compile_c_instance) <c_plugin>: New member.
5315         * gcc-c-plugin.h: New file.
5316         Update all callers with API change.
5317
5318 2018-08-10  Keith Seitz  <keiths@redhat.com>
5319
5320         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
5321         (HFILES_NO_SRCDIR): ... to here.
5322         Add compile-internal.h and compile-c.h.
5323         * compile/compile-c-support.c: Include compile-c.h.
5324         * compile/compile-c-symbols.c: Include compile-c.h.
5325         (generate_c_for_variable_locations): Update comment.
5326         * compile/compile-c-types.c: Include compile-c.h.
5327         * compile/compile-c.h: New file -- moved C language declarations
5328         from other files here.
5329         * compile/compile-internal.h: Do not include hashtab.h or
5330         common/enum-flags.h.
5331         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
5332         (gcc_convert_symbol, gcc_symbol_address)
5333         (generate_c_for_variable_locations, c_get_mode_for_size)
5334         (c_get_range_decl_name): Definitions moved to compile-c.h.
5335         * compile/compile-loc2c.c: Include compile-c.h.
5336
5337 2018-08-10  Keith Seitz  <keiths@redhat.com>
5338
5339         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
5340         (c_symbol_substitution_name): ... this.
5341         Update all callers.
5342
5343 2018-08-10  Keith Seitz  <keiths@redhat.com>
5344
5345         * compile/compile-c-support.c (c_compute_program): Use
5346         unique_xmalloc_ptr to eliminate cleanup.
5347         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
5348         Return a unique_xmalloc_ptr and eliminate cleanup.
5349         * compile/compile-internal.h (generate_c_for_variable_locations):
5350         Return unique_xmalloc_ptr and update description.
5351
5352 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
5353
5354         * corelow.c (core_target::get_core_register_section): Rename
5355         min_size to section_min_size.
5356
5357 2018-08-09  Jim Wilson  <jimw@sifive.com>
5358
5359         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
5360         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
5361         * NEWS: Mention new GNU/Linux RISC-V target.
5362         * configure.host: Add riscv*-*-linux*.
5363         * configure.nat: Add riscv*.
5364         * configure.tgt: Add riscv*-*-linux*.
5365         * riscv-linux-nat.c: New file.
5366         * riscv-linux-tdep.c: New file.
5367
5368 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5369
5370         * infrun.c (resume): Make static, add forward declaration.
5371         (proceed): Update header comment.
5372         * infrun.h (resume): Delete declaration.
5373
5374 2018-08-09  Tom Tromey  <tom@tromey.com>
5375
5376         * riscv-tdep.h: Minor formatting fixes.
5377
5378 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
5379
5380         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
5381         * dwarf-index-cache.c (create_dir_and_check): Likewise.
5382         (test_mkdir_recursive): Likewise.
5383         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
5384
5385 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5386
5387         * valarith.c (value_subscripted_rvalue): If an array is not in
5388         memory, and we don't know the upper bound, then we can't know that
5389         the requested element exists or not.
5390
5391 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
5392
5393         * target.c (str_comma_list_concat_elem): Fix typo in comment.
5394         (target_options_to_string): Add comment.
5395
5396 2018-08-08  Tom Tromey  <tom@tromey.com>
5397
5398         * unittests/scoped_mmap-selftests.c: Check result of "write".
5399
5400 2018-08-08  Jim Wilson  <jimw@sifive.com>
5401
5402         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
5403         (decode_register_index_short): New.
5404         (decode_j_type_insn, decode_cj_type_insn): New.
5405         (decode_b_type_insn, decode_cb_type_insn): New.
5406         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
5407         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
5408         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
5409         is_c_sw_insn instead of is_sw_insn.
5410         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
5411         (riscv_software_single_step): New.
5412         * riscv-tdep.h (riscv_software_single_step): Declare.
5413
5414         * riscv-tdep.c (riscv_isa_xlen): Drop static.
5415         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
5416
5417 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
5418
5419         PR gdb/18050:
5420         * target.c (dispose_inferior): Don't dispose of inferiors that are
5421         already killed.
5422
5423 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
5424
5425         * remote.c (remote_target::download_tracepoint): Change char* to
5426         const char*.
5427
5428 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
5429
5430         * target.h (target_options_to_string): Return an std::string.
5431         * target.c (str_comma_list_concat_elem): Return void, use
5432         std::string.
5433         (do_option): Likewise.
5434         (target_options_to_string): Return an std::string.
5435         * linux-nat.c (linux_nat_target::wait): Adjust.
5436         * target-debug.h (target_debug_print_options): Adjust.
5437
5438 2018-08-07  Tom Tromey  <tom@tromey.com>
5439
5440         * Makefile.in (CPPFLAGS): New variable.
5441         (INTERNAL_CPPFLAGS): Use it.
5442
5443 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5444
5445         * NEWS: Mention the index cache.
5446
5447 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5448
5449         * common/pathstuff.h (get_standard_cache_dir): New.
5450         * common/pathstuff.c (get_standard_cache_dir): New.
5451         * build-id.h (build_id_to_string): New.
5452         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
5453         DEBUG_STR_SUFFIX): Move to here.
5454         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
5455         DEBUG_STR_SUFFIX): Move from there.
5456         (write_psymtabs_to_index): Make non-static, add basename
5457         parameter.  Write to temporary files, rename when done.
5458         (save_gdb_index_command): Adjust call to
5459         write_psymtabs_to_index.
5460         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
5461         field.
5462         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
5463         (get_gdb_index_contents_from_cache): New.
5464         (get_gdb_index_contents_from_cache_dwz): New.
5465         (dwarf2_initialize_objfile): Read index from cache.
5466         (dwarf2_build_psymtabs): Save to index.
5467         * dwarf-index-cache.h: New file.
5468         * dwarf-index-cache.c: New file.
5469         * dwarf-index-write.h: New file.
5470
5471 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5472
5473         * gnulib/aclocal.m4: Re-generate.
5474         * gnulib/config.in: Re-generate.
5475         * gnulib/configure: Re-generate.
5476         * gnulib/import/Makefile.am: Re-generate.
5477         * gnulib/import/Makefile.in: Re-generate.
5478         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
5479         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5480         * gnulib/import/m4/mkdir.m4: New file.
5481         * gnulib/import/mkdir.c: New file.
5482         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
5483         module.
5484
5485 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5486
5487         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
5488         * common/scoped_mmap.c: New file.
5489         * common/scoped_mmap.h (destroy): New method.
5490         (~scoped_mmap, reset): Use destroy.
5491         (scoped_mmap): New move constructor.
5492         (mmap_file): New declaration.
5493         * unittests/scoped_mmap-selftests.c (test_normal,
5494         test_invalid_filename, run_tests): New functions.
5495         (_initialize_scoped_mmap_selftests): Register selftest.
5496
5497 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5498
5499         * dwarf2read.c (read_gdb_index_from_section): Rename to...
5500         (read_gdb_index_from_buffer): ... this.  Remove section
5501         parameter, add buffer parameter.
5502         (get_gdb_index_contents_ftype,
5503         get_gdb_index_contents_dwz_ftype): New typedefs.
5504         (dwarf2_read_gdb_index): Add callback parameters to get the
5505         index contents.
5506         (get_gdb_index_contents_from_section): New.
5507         (dwarf2_initialize_objfile): Update call to
5508         dwarf2_read_gdb_index.
5509
5510 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5511
5512         * common/filestuff.h (gdb_fopen_cloexec): New overload.
5513         (gdb_open_cloexec): Likewise.
5514         * nat/linux-osdata.c (command_from_pid): Use string_printf.
5515         (commandline_from_pid): Likewise.
5516         (linux_xfer_osdata_threads): Likewise.
5517         (linux_xfer_osdata_fds): Likewise.
5518         * ada-lang.c (is_package_name): Likewise.
5519         * auxv.c (procfs_xfer_auxv): Likewise.
5520         * breakpoint.c (print_one_breakpoint_location): Use
5521         uiout::field_fmt.
5522         (print_one_catch_solib): Use string_printf.
5523         * coff-pe-read.c (add_pe_exported_sym): Likewise.
5524         (add_pe_forwarded_sym): Likewise.
5525         * dwarf2read.c (create_type_unit_group): Likewise.
5526         (build_error_marker_type): Likewise.
5527         * infcall.c (get_function_name): Likewise.
5528         * valprint.c (print_converted_chars_to_obstack): Likewise.
5529         * xtensa-tdep.c (xtensa_register_type): Likewise.
5530
5531 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
5532
5533         * remote.c (remote_target::download_tracepoint): Fix format
5534         string errors.
5535
5536 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5537
5538         * tracefile.c: Include common/byte-vector.h.
5539         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
5540         with trace_regblock_size if needed.  Update uses of buf.
5541
5542 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5543
5544         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
5545         std::vector<unsigned char>.
5546         * tracepoint.c (collection_list::collection_list): Remove
5547         m_regs_mask initializer from initializer list.  Resize
5548         m_regs_mask using the largest remote register number.
5549         (collection_list::add_remote_register): Remove size check on
5550         m_regs_mask.  Use at to access element.
5551         (collection_list::stringify): Change type of temp_buf to
5552         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
5553         stringify the register mask.  Use pack_hex_byte for the register
5554         mask.
5555
5556 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5557
5558         * tracepoint.h (class collection_list) <add_register>: Remove.
5559         <add_remote_register, add_ax_registers, add_local_register>:
5560         Declare.
5561         <add_memrange>: Add scope parameter.
5562         * tracepoint.c (encode_actions_1): Likewise.
5563         (collection_list::add_register): Rename to ...
5564         (collection_list::add_remote_register): ... this.  Update
5565         comment.
5566         (collection_list::add_ax_registers, add_local_register): New
5567         methods.
5568         (collection_list::add_memrange): Add scope parameter.  Call
5569         add_local_register instead of add_register.
5570         (finalize_tracepoint_aexpr): New function.
5571         (collection_list::collect_symbol): Update calls to add_memrange.
5572         Call add_local_register instead of add_register.  Call
5573         add_ax_registers.  Call finalize_tracepoint_aexpr.
5574         (encode_actions_1): Get remote regnos for $reg action.  Call
5575         add_remote_register, add_ax_registers, and add_local_register.
5576         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
5577         (validate_actionline): Call finalize_tracepoint_aexpr.
5578
5579 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5580
5581         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
5582         Replace array buf with gdb::char_vector buf, of size
5583         get_remote_packet_size ().  Replace references to buf and
5584         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
5585         and xsnprintf with snprintf.  Raise errors if the buffer is too
5586         small.
5587
5588 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5589
5590         * remote.c (remote_target::download_tracepoint): Fix the has_more
5591         predicate in the QTDP action list iteration.
5592
5593 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5594
5595         * remote.c (remote_target::download_tracepoint): Fix indentation
5596         in for block.
5597
5598 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5599
5600         * proc-api.c (_initialize_proc_api): Remove c, unused.
5601         * procfs.c (procfs_init_inferior): Remove signals, unused.
5602         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
5603         unused.
5604
5605 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
5606             Andrew Burgess  <andrew.burgess@embecosm.com>
5607
5608         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
5609         'W_STOPCODE (0)' as this could be ambiguous.
5610
5611 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
5612
5613         * ser-tcp.c (net_open): Fix thinko when deciding whether to
5614         disable TCP's Nagle algorithm (use "ai_protocol" instead of
5615         "ai_socktype").
5616
5617 2018-08-02  Tom Tromey  <tom@tromey.com>
5618
5619         PR symtab/16842.
5620         * dwarf2read.c (read_func_scope): Set symtab on template parameter
5621         symbols.
5622         (process_structure_scope): Likewise.
5623
5624 2018-08-02  Xavier Roirand  <roirand@adacore.com>
5625
5626         PR gdb/22629:
5627         * darwin-nat.c (darwin_kill_inferior): Fix handling of
5628         kill inferior.
5629
5630 2018-08-02  Tom Tromey  <tom@tromey.com>
5631
5632         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
5633         (darwin_suspend_inferior, darwin_resume_inferior)
5634         (darwin_decode_notify_message, darwin_resume_inferior_threads)
5635         (darwin_check_new_threads): Check result of get_darwin_inferior.
5636
5637 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
5638
5639         GDB 8.1.1 released.
5640
5641 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
5642
5643         * varobj.c (varobj_get_path_expr_parent): Report an error if
5644         parent is a dynamic varobj.
5645
5646 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5647
5648         * gnulib/aclocal.m4: Re-generate.
5649         * gnulib/config.in: Re-generate.
5650         * gnulib/configure: Re-generate.
5651         * gnulib/import/Makefile.in: Re-generate.
5652         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5653         * gnulib/import/m4/onceonly.m4: Re-generate.
5654
5655 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5656
5657         * target-descriptions.c (struct xml_test_tdesc): New.
5658         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
5659         (record_xml_tdesc): Update.
5660         (maintenance_check_xml_descriptions): Update.
5661         * target-descriptions.h (record_xml_tdesc): Update comment.
5662
5663 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
5664
5665         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
5666         checking array bounds are defined.
5667
5668 2018-07-30  Tom Tromey  <tom@tromey.com>
5669
5670         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
5671         irreflexivity violation.
5672
5673 2018-07-30  Tom Tromey  <tom@tromey.com>
5674
5675         * cli/cli-decode.c (lookup_cmd): Remove lint code.
5676         * value.c (unpack_long): Remove lint code.
5677         * valops.c (value_ind): Remove lint code.
5678         * valarith.c (value_x_binop, value_x_unop, value_equal)
5679         (value_pos): Remove lint code.
5680
5681 2018-07-28  Tom de Vries  <tdevries@suse.de>
5682
5683         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
5684         with undefined upper bound as <optimized out>.
5685
5686 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
5687
5688         * gcore.in: Rename variable "name" to "prefix".  Expand
5689         "usage" text.
5690
5691 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
5692
5693         * windows-nat.c (windows_nat_target::create_inferior): Update to
5694         call close() in global namespace.
5695
5696 2018-07-26  Tom Tromey  <tom@tromey.com>
5697
5698         * dwarf-index-write.c (add_address_entry): Don't add objfile
5699         offsets.
5700         * dbxread.c (find_stab_function): Rename from
5701         find_stab_function_addr.  Return a bound_minimal_symbol.
5702         (read_dbx_symtab): Use raw_text_low, raw_text_high.
5703         Don't add objfile offsets.
5704         (end_psymtab): Use raw_text_low, raw_text_high,
5705         MSYMBOL_VALUE_RAW_ADDRESS.
5706         (read_ofile_symtab): Update.
5707         (process_one_symbol): Update.
5708         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
5709         offsets.
5710         (dw2_relocate): Remove.
5711         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
5712         searching addrmap.
5713         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
5714         Update.
5715         (process_psymtab_comp_unit_reader, add_partial_symbol)
5716         (add_partial_subprogram, dwarf2_ranges_read): Update.
5717         (load_partial_dies): Update.
5718         (add_address_entry): Don't add objfile offsets.
5719         (dwarf2_build_include_psymtabs): Update.
5720         (create_addrmap_from_aranges): Don't add objfile offsets.
5721         (dw2_find_pc_sect_compunit_symtab): Update.
5722         * mdebugread.c (parse_symbol): Don't add objfile offsets.
5723         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
5724         Update.
5725         (parse_partial_symbols): Don't add objfile offsets.  Use
5726         raw_text_low, raw_text_high.  Update.
5727         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
5728         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
5729         or call 'relocate' quick function.  Clear psymbol_map.
5730         * psympriv.h (struct partial_symbol) <address>: Add section
5731         offset.
5732         <set_unrelocated_address>: Rename from set_address.
5733         <raw_text_low, raw_text_high>: New methods.
5734         <text_low, text_high>: Add objfile parameter.
5735         (add_psymbol_to_bcache): Add 'section' parameter.  Call
5736         set_unrelocated_address.
5737         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5738         (find_pc_psymbol): Update.
5739         (fixup_psymbol_section, relocate_psymtabs): Remove.
5740         (dump_psymtab, psym_functions): Update.
5741         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
5742         parameter.
5743         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
5744         (start_psymtab_common): Update.
5745         * symfile-debug.c (debug_qf_relocate): Remove.
5746         (debug_sym_quick_functions): Update.
5747         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
5748         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
5749         Update.
5750
5751 2018-07-26  Tom Tromey  <tromey@redhat.com>
5752
5753         * dbxread.c (end_psymtab): Use text_high_valid and
5754         text_low_valid.
5755         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
5756         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
5757         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5758         Update comment.
5759         <text_low_valid, text_high_valid>: New fields.
5760         <set_text_low, set_text_high>: Update.
5761         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
5762
5763 2018-07-26  Tom Tromey  <tom@tromey.com>
5764
5765         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
5766         Update.
5767         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
5768         textlow and texthigh fields.
5769         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
5770         Update.
5771         * mdebugread.c (parse_lines, parse_partial_symbols)
5772         (psymtab_to_symtab_1): Update.
5773         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5774         Rename fields.  Update comment.  Now private.
5775         <text_low, text_high, set_text_low, set_text_high>: New methods.
5776         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5777         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
5778         (start_psymtab_common, maintenance_info_psymtabs)
5779         (maintenance_check_psymtabs): Update.
5780         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
5781         texthigh fields.
5782         (scan_xcoff_symtab): Update.
5783
5784 2018-07-26  Tom Tromey  <tromey@redhat.com>
5785
5786         * psympriv.h (struct partial_symbol) <unrelocated_address,
5787         address, set_address>: New methods.
5788         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
5789         (fixup_psymbol_section, relocate_psymtabs): Update.
5790         (print_partial_symbols): Add 'objfile' parameter.  Update.
5791         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
5792         Update.
5793
5794 2018-07-26  Tom Tromey  <tom@tromey.com>
5795
5796         * dwarf-index-write.c (write_psymbols, debug_names::insert)
5797         (debug_names::write_psymbols): Update.
5798         * psympriv.h (struct partial_symbol): Derive from
5799         general_symbol_info.
5800         <obj_section>: New method.
5801         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
5802         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5803         (find_pc_sect_psymbol, fixup_psymbol_section)
5804         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
5805         (print_partial_symbols, recursively_search_psymtabs)
5806         (compare_psymbols, psymbol_hash, psymbol_compare)
5807         (add_psymbol_to_bcache, maintenance_check_psymtabs)
5808         (psymbol_name_matches, psym_fill_psymbol_map): Update.
5809
5810 2018-07-26  Tom Tromey  <tromey@redhat.com>
5811
5812         * dbxread.c (end_psymtab): Remove dead code.
5813
5814 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
5815
5816         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
5817         DWARF unwinders are disabled.
5818         * dwarf2-frame.c: Add dwarf2read.h include.
5819         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
5820         disabled.
5821         (dwarf2_frame_unwinders_enabled_p): Define.
5822         (show_dwarf_unwinders_enabled_p): New function.
5823         (_initialize_dwarf2_frame): Register switch to control DWARF
5824         unwinder use.
5825         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
5826         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
5827         (show_dwarf_cmdlist): Remove static keyword.
5828         * dwarf2read.h (set_dwarf_cmdlist): Declare.
5829         (show_dwarf_cmdlist): Declare.
5830         * NEWS: Document new feature.
5831
5832 2018-07-26  Tom de Vries  <tdevries@suse.de>
5833
5834         PR breakpoints/23366
5835         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
5836
5837 2018-07-26  Tom de Vries  <tdevries@suse.de>
5838
5839         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
5840         DW_AT_count can't be translated to a dynamic prop.
5841
5842 2018-07-25  Tom de Vries  <tdevries@suse.de>
5843
5844         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
5845         try/catch.
5846
5847 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
5848
5849         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
5850
5851 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
5852
5853         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
5854
5855 2018-07-24  Keith Seitz  <keiths@redhat.comt
5856
5857         PR symtab/23010
5858         * dwarf2read.c (dw2_add_symbol_to_list): New function.
5859         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
5860         instead of add_symbol_to_list.
5861         (read_file_scope): Call prepare_one_comp_unit before reading
5862         any other DIEs.
5863
5864 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
5865
5866         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
5867
5868 2018-07-24  Tom Tromey  <tom@tromey.com>
5869
5870         * utils.c (malloc, realloc, free): Don't declare.
5871         * configure, config.in: Rebuild.
5872         * configure.ac: Don't check for declarations of free, malloc, or
5873         realloc.
5874
5875 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5876
5877         * aarch64-linux-nat.c
5878         (aarch64_linux_nat_target::stopped_data_address): Remove unused
5879         variable.
5880         * arm-linux-nat.c (fetch_regs): Likewise.
5881         (store_regs): Likewise.
5882         (fetch_vfp_regs): Likewise.
5883         (store_vfp_regs): Likewise.
5884         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
5885         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
5886         (arm_linux_nat_target::insert_watchpoint): Likewise.
5887         (arm_linux_nat_target::remove_watchpoint): Likewise.
5888         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
5889         Likewise.
5890         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
5891         Likewise.
5892         * ppc-linux-nat.c (fetch_register): Likewise.
5893         (fetch_all_gp_regs): Likewise.
5894         (fetch_ppc_registers): Likewise.
5895         (store_all_gp_regs): Likewise.
5896         (store_ppc_registers): Likewise.
5897         (hwdebug_insert_point): Likewise.
5898         (can_use_watchpoint_cond_accel): Likewise.
5899         * remote-sim.c (gdb_os_write_stdout): Likewise.
5900
5901 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5902             Tom Tromey  <tom@tromey.com>
5903
5904         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
5905         test for it.
5906         * configure: Rebuild.
5907
5908 2018-07-22  Tom Tromey  <tom@tromey.com>
5909
5910         * regformats/regdat.sh: Define xmltarget_${name} inside
5911         #ifndef IN_PROCESS_AGENT.
5912
5913 2018-07-22  Tom Tromey  <tom@tromey.com>
5914
5915         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
5916
5917 2018-07-22  Tom Tromey  <tom@tromey.com>
5918
5919         * symfile.c (reread_symbols): Notify iter, not objfile.
5920
5921 2018-07-22  Tom Tromey  <tom@tromey.com>
5922
5923         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
5924         Use arch_ops.
5925         (ravenscar_thread_target::prepare_to_store): Likewise.
5926
5927 2018-07-22  Tom Tromey  <tom@tromey.com>
5928
5929         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
5930         unused variable.  Call value_fetch_lazy when needed.
5931         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
5932         Remove unused variable.  Call value_fetch_lazy when needed.
5933
5934 2018-07-22  Tom Tromey  <tom@tromey.com>
5935
5936         * m32c-tdep.c (mark_dma): Return void.
5937         (make_regs): Remove unused declarations.
5938
5939 2018-07-22  Tom Tromey  <tom@tromey.com>
5940
5941         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
5942         cmdscm_get_valid_command_smob_arg_unsafe for effect.
5943         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
5944         bkscm_get_valid_block_smob_arg_unsafe for effect.
5945
5946 2018-07-22  Tom Tromey  <tom@tromey.com>
5947
5948         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
5949         value_type.
5950
5951 2018-07-22  Tom Tromey  <tom@tromey.com>
5952
5953         * windows-nat.c (saved_context): Conditionally define.
5954         * remote.c (remote_target::remote_btrace_maybe_reopen):
5955         Conditionally declare "warned".
5956         * inflow.c (sigquit_ours): Conditionally define.
5957         (new_tty): Move "tty" declaration inside #if.
5958         * guile/guile.c (guile_datadir): Conditionally define.
5959         * charset.c (set_be_le_names): Move some declarations inside #if.
5960         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
5961         #if.
5962         (parse_xml_btrace_conf): Likewise.
5963
5964 2018-07-22  Tom Tromey  <tom@tromey.com>
5965
5966         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
5967
5968 2018-07-22  Tom Tromey  <tom@tromey.com>
5969
5970         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
5971         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
5972         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
5973         * buildsym-legacy.c (get_macro_table): Remove unused variable.
5974         * stack.c (frame_apply_level_command): Remove unused variable.
5975         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
5976         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
5977         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
5978         unused variable.
5979         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
5980         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
5981         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
5982         variable.
5983         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
5984         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
5985         variable.
5986         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
5987         Remove unused variable.
5988         * cli/cli-script.c (recurse_read_control_structure): Remove unused
5989         variable.
5990         * common/tdesc.c (print_xml_feature::visit): Remove unused
5991         variable.
5992         * compile/compile-object-load.c (store_regs): Remove unused
5993         variables.
5994         * complaints.c (clear_complaints): Remove unused variable.
5995         * corelow.c (core_target_open): Remove unused variable.
5996         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
5997         variable.
5998         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
5999         variable.
6000         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
6001         variable.
6002         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
6003         variable.
6004         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
6005         variable.
6006         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
6007         variable.
6008         * ia64-tdep.c (examine_prologue): Remove unused variable.
6009         * infcall.c (run_inferior_call): Remove unused variable.
6010         * inferior.c (exit_inferior): Remove unused variable.
6011         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
6012         * linespec.c (decode_line_2): Remove unused variable.
6013         * linux-nat.c (super_close): Remove.
6014         * linux-tdep.c (linux_info_proc): Remove unused variable.
6015         * mi/mi-main.c (mi_execute_command): Remove unused variable.
6016         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
6017         Remove unused variable.
6018         * parse.c (find_minsym_type_and_address): Remove unused variable.
6019         * printcmd.c (info_symbol_command, printf_floating): Remove unused
6020         variable.
6021         * python/py-breakpoint.c (bppy_set_commands): Remove unused
6022         variable.
6023         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
6024         variables.
6025         * record-btrace.c (record_btrace_target::store_registers): Remove
6026         unused variable.
6027         (cmd_show_record_btrace_cpu): Remove unused variable.
6028         * riscv-tdep.c (riscv_register_reggroup_p)
6029         (riscv_push_dummy_call, riscv_return_value): Remove unused
6030         variable.
6031         * rust-exp.y (literal): Remove unused variable.
6032         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
6033         unused variable.
6034         <STRUCTOP_ANONYMOUS>: Likewise.
6035         * s390-linux-tdep.c (s390_linux_init_abi_31)
6036         (s390_linux_init_abi_64): Remove unused variable.
6037         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
6038         (file_select_thread, net_windows_open, _initialize_ser_windows):
6039         Remove unused variables.
6040         * symtab.c (find_pc_sect_line): Remove unused variable.
6041         * target-memory.c (compute_garbled_blocks): Remove unused
6042         variable.
6043         (target_write_memory_blocks): Remove unused variable.
6044         * target.c (target_stack::unpush): Remove unused variables.
6045         * tracepoint.c (start_tracing, all_tracepoint_actions)
6046         (merge_uploaded_trace_state_variables)
6047         (print_one_static_tracepoint_marker): Remove unused variable.
6048         * unittests/basic_string_view/element_access/char/1.cc (test01):
6049         Remove unused variable.
6050         * windows-nat.c (windows_continue, windows_add_all_dlls)
6051         (do_initial_windows_stuff, windows_nat_target::create_inferior):
6052         Remove unused variables.
6053
6054 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
6055
6056         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
6057         attr_profile in HAVE_ELF.
6058         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
6059         HAVE_ELF.
6060
6061 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
6062
6063         * frame.c (frame_register_unwind): Change parameter name.
6064         (frame_unwind_register): Likewise.
6065         (frame_unwind_register_value): Likewise.
6066         (frame_unwind_register_signed): Likewise.
6067         (frame_unwind_register_unsigned): Likewise.
6068         * frame.h (frame_register_unwind): Likewise.
6069         (frame_unwind_register): Likewise.
6070         (frame_unwind_register_value): Likewise.
6071         (frame_unwind_register_signed): Likewise.
6072         (frame_unwind_register_unsigned): Likewise.
6073         (frame_unwind_arch): Likewise.
6074
6075 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
6076
6077         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
6078         ISA maintenance.
6079
6080 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
6081
6082         * mips-linux-nat.c (mips_linux_nat_target::read_description):
6083         Call `get_ptrace_pid' rather than extracting the ptrace PID by
6084         hand.
6085
6086 2018-07-20  Keith Seitz  <keiths@redhat.com>
6087
6088         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
6089         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
6090         m_compunit_symtab, m_language>: Add "m_" prefix.
6091         Update all uses.
6092         * buildsym.c: Update all uses.
6093
6094 2018-07-20  Tom Tromey  <tom@tromey.com>
6095
6096         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
6097         * buildsym.h (record_line_ftype): Remove typedef.
6098
6099 2018-07-20  Tom Tromey  <tom@tromey.com>
6100
6101         * buildsym-legacy.h (augment_type_symtab): Don't declare.
6102         (end_expandable_symtab): Likewise.
6103         (end_symtab_get_static_block): Likewise.
6104         (end_symtab_from_static_block): Likewise.
6105         * buildsym-legacy.c (augment_type_symtab): Remove.
6106         (end_expandable_symtab): Remove.
6107         (end_symtab_get_static_block): Remove.
6108         (end_symtab_from_static_block): Remove.
6109
6110 2018-07-20  Tom Tromey  <tom@tromey.com>
6111
6112         * dwarf2read.c: Include buildsym.h.
6113         (struct dwarf2_cu) <builder>: New method.
6114         (fixup_go_packaging): Update.
6115         (process_full_comp_unit, process_full_type_unit): Update.  Don't
6116         use scoped_free_pendings.
6117         (using_directives): Add "cu" parameter, remove "language".
6118         (read_import_statement, setup_type_unit_groups, )
6119         (read_func_scope, read_lexical_block_scope)
6120         (dwarf2_record_block_ranges, read_namespace): Update.
6121         (lnp_state_machine::lnp_state_machine): Add cu parameter.
6122         (lnp_state_machine::handle_end_sequence): Update.
6123         (class lnp_state_machine) <m_cu>: New member.
6124         <m_record_line_callback>: Remove.
6125         <m_currently_recording_lines>: New member.
6126         (lnp_state_machine::handle_set_file): Update.
6127         (noop_record_line): Remove.
6128         (dwarf_record_line_p): Add cu parameter.
6129         (dwarf_record_line_1, dwarf_finish_line): Likewise.
6130         (lnp_state_machine::record_line)
6131         (lnp_state_machine::lnp_state_machine)
6132         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
6133         (dwarf_decode_lines): Update.
6134         (dwarf2_start_subfile): Add cu parameter.
6135         (dwarf2_start_symtab, new_symbol): Update.
6136         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
6137         Remove dwarf2_per_objfile parameter.
6138         (dwarf_decode_macros): Update.
6139
6140 2018-07-20  Tom Tromey  <tom@tromey.com>
6141
6142         * stabsread.c (define_symbol): Update.
6143         * buildsym-legacy.h (get_buildsym_compunit): Declare.
6144         * dwarf2read.c (new_symbol): Update.
6145         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
6146         * cp-namespace.c: Include buildsym.h.
6147         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
6148         * buildsym-legacy.c (get_buildsym_compunit): New function.
6149
6150 2018-07-20  Tom Tromey  <tom@tromey.com>
6151
6152         * xcoffread.c: Include buildsym-legacy.h.
6153         * windows-nat.c: Include buildsym-legacy.h.
6154         * stabsread.c: Include buildsym-legacy.h.
6155         * mdebugread.c: Include buildsym-legacy.h.
6156         * buildsym-legacy.h: New file.
6157         * buildsym-legacy.c: New file, from buildsym.c.
6158         * go32-nat.c: Include buildsym-legacy.h.
6159         * dwarf2read.c: Include buildsym-legacy.h.
6160         * dbxread.c: Include buildsym-legacy.h.
6161         * cp-namespace.c: Include buildsym-legacy.h.
6162         * coffread.c: Include buildsym-legacy.h.
6163         * buildsym.h: Move some contents to buildsym-legacy.h.
6164         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
6165         buildsym-legacy.c.
6166         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
6167
6168 2018-07-20  Tom Tromey  <tom@tromey.com>
6169
6170         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
6171         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
6172         (buildsym_compunit::buildsym_compunit)
6173         (buildsym_compunit::~buildsym_compunit)
6174         (buildsym_compunit::get_macro_table): Define.
6175
6176 2018-07-20  Tom Tromey  <tom@tromey.com>
6177
6178         * buildsym.c (reset_symtab_globals): Remove.
6179         (buildsym_compunit::end_symtab_from_static_block): Update.
6180         (buildsym_compunit::augment_type_symtab): Update.
6181         (end_symtab_from_static_block): Call free_buildsym_compunit.
6182         (augment_type_symtab, end_symtab, end_expandable_symtab):
6183         Likewise.
6184
6185 2018-07-20  Tom Tromey  <tom@tromey.com>
6186
6187         * arch-utils.c: Do not include buildsym.h.
6188         * mipsread.c: Do not include buildsym.h.
6189         * machoread.c: Do not include buildsym.h.
6190         * elfread.c: Do not include buildsym.h.
6191
6192 2018-07-20  Tom Tromey  <tom@tromey.com>
6193
6194         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
6195         initialization.
6196         (buildsym_compunit): Add new constructor.
6197         (struct buildsym_compunit) <get_last_source_file, finish_block,
6198         record_block_range, start_subfile, patch_subfile_names,
6199         push_subfile, pop_subfile, record_line, get_compunit_symtab,
6200         set_last_source_start_addr, get_last_source_start_addr,
6201         get_local_using_directives, set_local_using_directives,
6202         get_global_using_directives, outermost_context_p,
6203         get_current_context_stack, get_context_stack_depth,
6204         get_current_subfile, get_local_symbols, get_file_symbols,
6205         get_global_symbols, record_debugformat, record_producer,
6206         push_context, pop_context, end_symtab_get_static_block,
6207         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
6208         New public methods.
6209         <record_pending_block, finish_block_internal, make_blockvector,
6210         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
6211         private methods.
6212         Update all users.
6213
6214 2018-05-22  Tom Tromey  <tom@tromey.com>
6215
6216         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
6217         parameter.
6218         (finish_block_internal): Update.
6219
6220 2018-07-20  Tom Tromey  <tom@tromey.com>
6221
6222         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
6223         parameter.
6224         (finish_block_internal): Update.
6225
6226 2018-07-20  Tom Tromey  <tom@tromey.com>
6227
6228         * buildsym.h (EXTERN): Don't define or undef.
6229         * buildsym.c (EXTERN): Don't define.
6230
6231 2018-07-20  Tom Tromey  <tom@tromey.com>
6232
6233         * buildsym.c: Remove TODO comment.
6234
6235 2018-07-20  Tom Tromey  <tom@tromey.com>
6236
6237         * coffread.c (coff_symtab_read): Update.
6238         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
6239         (xcoff_new_init): Update.
6240         * mipsread.c (mipscoff_new_init): Update.
6241         * mdebugread.c (mdebug_build_psymtabs): Update.
6242         * elfread.c (elf_new_init): Update.
6243         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
6244         Update.
6245         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
6246         (coffstab_build_psymtabs, elfstab_build_psymtabs)
6247         (stabsect_build_psymtabs): Update.
6248         * buildsym.h (buildsym_init): Don't declare.
6249         * buildsym.c: Update comment.
6250         (prepare_for_building): Remove.
6251         (start_symtab, restart_symtab): Update.
6252         (reset_symtab_globals): Update comment.
6253         (buildsym_init): Remove.
6254
6255 2018-07-20  Tom Tromey  <tom@tromey.com>
6256
6257         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
6258         * stabsread.c (patch_block_stabs, define_symbol, read_type)
6259         (read_enum_type, common_block_start, common_block_end)
6260         (cleanup_undefined_types_1, finish_global_stabs): Update.
6261         * mdebugread.c (psymtab_to_symtab_1): Update.
6262         * dwarf2read.c (fixup_go_packaging, read_func_scope)
6263         (read_lexical_block_scope, new_symbol): Update.
6264         * dbxread.c (process_one_symbol): Update.
6265         * coffread.c (coff_symtab_read, process_coff_symbol)
6266         (coff_read_enum_type): Update.
6267         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
6268         declare.
6269         (get_local_symbols, get_file_symbols, get_global_symbols): New
6270         functions.
6271         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
6272         m_global_symbols.
6273         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
6274         (~scoped_free_pendings): Update.
6275         (finish_block, prepare_for_building, reset_symtab_globals)
6276         (end_symtab_get_static_block, end_symtab_with_blockvector)
6277         (augment_type_symtab, push_context): Update.
6278         (get_local_symbols, get_file_symbols, get_global_symbols): New
6279         functions.
6280         (buildsym_init): Update.
6281
6282 2018-07-20  Tom Tromey  <tom@tromey.com>
6283
6284         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
6285         (process_full_type_unit): Likewise.
6286         (dwarf2_start_symtab): Set list_in_scope.
6287
6288 2018-07-20  Tom Tromey  <tom@tromey.com>
6289
6290         * dwarf2read.c (process_psymtab_comp_unit_reader)
6291         (build_type_psymtabs_reader): Do not set list_in_scope.
6292
6293 2018-07-20  Tom Tromey  <tom@tromey.com>
6294
6295         * buildsym.c (free_pendings): Remove.
6296         (add_symbol_to_list, scoped_free_pendings)
6297         (finish_block_internal, buildsym_init): Update.
6298
6299 2018-07-20  Tom Tromey  <tom@tromey.com>
6300
6301         * xcoffread.c (read_xcoff_symtab): Update.
6302         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
6303         Update.
6304         * dbxread.c (process_one_symbol): Update.
6305         * coffread.c (coff_symtab_read): Update.
6306         * buildsym.h (finish_block): Update.
6307         * buildsym.c (finish_block): Remove "listhead" argument.
6308         (end_symtab_get_static_block): Update.
6309
6310 2018-07-20  Tom Tromey  <tom@tromey.com>
6311
6312         * buildsym.h (class scoped_free_pendings): Remove constructor.
6313         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
6314         method.
6315         <m_pending_block_obstack, m_pending_blocks>: New members.
6316         (pending_block_obstack, pending_blocks): Remove.
6317         (scoped_free_pendings::scoped_free_pendings): Default.
6318         (~scoped_free_pendings): Update.
6319         (free_pending_blocks): Remove.
6320         (finish_block_internal, record_pending_block, make_blockvector)
6321         (end_symtab_get_static_block, augment_type_symtab, push_context)
6322         (buildsym_init): Update.
6323
6324 2018-07-20  Tom Tromey  <tom@tromey.com>
6325
6326         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
6327         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
6328         members.
6329         (pending_addrmap, pending_addrmap_obstack)
6330         (pending_addrmap_interesting): Remove.
6331         (scoped_free_pendings, record_block_range, make_blockvector)
6332         (prepare_for_building, reset_symtab_globals, buildsym_init):
6333         Update.
6334
6335 2018-07-20  Tom Tromey  <tom@tromey.com>
6336
6337         * xcoffread.c (process_linenos): Update.
6338         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
6339         * mdebugread.c (psymtab_to_symtab_1): Update.
6340         * dwarf2read.c (setup_type_unit_groups)
6341         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
6342         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
6343         * dbxread.c (process_one_symbol): Update.
6344         * coffread.c (coff_symtab_read, enter_linenos)
6345         (process_coff_symbol): Update.
6346         * buildsym.h (current_subfile): Don't declare.
6347         (get_current_subfile): Declare.
6348         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
6349         member.
6350         (start_subfile, free_buildsym_compunit, push_subfile)
6351         (prepare_for_building, start_symtab): Update.
6352         (get_current_subfile): New function.
6353
6354 2018-07-20  Tom Tromey  <tom@tromey.com>
6355
6356         * coffread.c (coff_symtab_read): Update.
6357         * xcoffread.c (read_xcoff_symtab): Update.
6358         * dwarf2read.c (new_symbol): Update.
6359         (read_func_scope, read_lexical_block_scope): Update.
6360         * dbxread.c (process_one_symbol): Update.
6361         * buildsym.h (context_stack, context_stack_depth): Don't declare.
6362         (outermost_context_p): Remove macro.
6363         (outermost_context_p, get_current_context_stack)
6364         (get_context_stack_depth): Declare.
6365         (pop_context): Return struct context_stack.
6366         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
6367         member.
6368         (context_stack_size): Remove.
6369         (INITIAL_CONTEXT_STACK_SIZE): Remove.
6370         (prepare_for_building, end_symtab_get_static_block)
6371         (augment_type_symtab, push_context): Update.
6372         (pop_context): Return struct context_stack.
6373         (outermost_context_p, get_current_context_stack)
6374         (get_context_stack_depth): New functions.
6375         (buildsym_init): Update.
6376
6377 2018-07-20  Tom Tromey  <tom@tromey.com>
6378
6379         * rust-exp.y: Now a pure parser.  Update all rules.
6380         (%union): Move earlier.
6381         (current_parser, work_obstack): Remove globals.
6382         (rust_parser, ~rust_parser): Update.
6383         (class rust_parser) <copy_name, concat3, crate_name, super_name,
6384         lex_character, lex_number, lex_string, lex_identifier,
6385         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
6386         convert_name, convert_params_to_expression,
6387         convert_ast_to_expression, ast_basic_type, ast_operation,
6388         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
6389         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
6390         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
6391         ast_array_type, ast_slice_type, ast_reference_type,
6392         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
6393         (rust_parse): Update.
6394         (rustyyerror, rustyylex): Add parser parameter.
6395         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
6396         (rust_lex_stringish_test, rust_lex_test_sequence)
6397         (rust_lex_test_trailing_dot, rust_lex_test_completion)
6398         (rust_lex_test_push_back, rust_lex_tests): Update.
6399
6400 2018-07-19  Pedro Alves  <palves@redhat.com>
6401
6402         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
6403         gdb::unique_xmalloc_ptr.
6404         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
6405         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
6406         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
6407         copy-initialization.
6408         * guile/scm-pretty-print.c (ppscm_print_children): Use
6409         gdb::unique_xmalloc_ptr instead of cleanups.
6410         (gdbscm_apply_val_pretty_printer): Remove cleanups.
6411         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
6412         gdb::unique_xmalloc_ptr.
6413         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6414         Adjust to use gdb::unique_xmalloc_ptr.
6415         * guile/scm-utils.c (extract_arg): Adjust.
6416         * guile/scm-value.c (gdbscm_value_field): Adjust to use
6417         gdb::unique_xmalloc_ptr instead of a cleanup.
6418
6419 2018-07-19  Tom Tromey  <tom@tromey.com>
6420
6421         * utils.c (do_value_free_to_mark)
6422         (make_cleanup_value_free_to_mark): Remove.
6423         * utils.h (make_cleanup_value_free_to_mark): Remove.
6424
6425 2018-07-19  Pedro Alves  <palves@redhat.com>
6426
6427         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
6428         forwarding reference.
6429
6430 2018-07-18  Pedro Alves  <palves@redhat.com>
6431
6432         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
6433         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
6434         cleanup.
6435
6436 2018-07-18  Pedro Alves  <palves@redhat.com>
6437
6438         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
6439         exceptions.
6440         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
6441         (gdbscm_wrap): New.
6442         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
6443         directly instead of a cleanup.
6444         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
6445         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
6446         (vlscm_binop_gdbthrow): New, factored out from ...
6447         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
6448         (vlscm_rich_compare): Use gdbscm_wrap.
6449         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
6450         instead of a cleanup.
6451         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
6452         cleanup.
6453         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6454         Use xfree directly instead of a cleanup.
6455         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
6456         Adjust to use gdbscm_wrap and scoped_value_mark.
6457         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
6458         (gdbscm_value_address, gdbscm_value_dereference)
6459         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
6460         scoped_value_mark.
6461         (gdbscm_value_dynamic_type): Use scoped_value_mark.
6462         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
6463         scoped_value_mark.
6464         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
6465         gdbscm_wrap and scoped_value_mark.
6466         (gdbscm_value_to_string): Use xfree directly instead of a
6467         cleanup.  Move 'buffer' unique_ptr to TRY scope.
6468         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
6469         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
6470         scoped_value_mark.
6471         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
6472         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
6473         scoped_value_mark.
6474         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
6475         gdbscm_wrap.
6476
6477 2018-07-18  Tom de Vries  <tdevries@suse.de>
6478
6479         * findvar.c (default_read_var_value): Also resolve dynamic type for
6480         LOC_OPTIMIZED_OUT vars.
6481
6482 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
6483
6484         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
6485         decoding.
6486
6487 2018-07-17  Tom Tromey  <tom@tromey.com>
6488
6489         * guile/scm-param.c (pascm_set_func, pascm_show_func)
6490         (compute_enum_list, pascm_set_param_value_x)
6491         (gdbscm_parameter_value): Update.
6492         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
6493         (gdbscm_scm_to_host_string): Update.
6494         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
6495         Update.
6496         * guile/scm-cmd.c (cmdscm_add_completion): Update.
6497         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
6498         * guile/scm-string.c (gdbscm_scm_to_string): Return
6499         unique_xmalloc_ptr.
6500         (gdbscm_scm_to_host_string): Likewise.
6501
6502 2018-07-17  Tom Tromey  <tom@tromey.com>
6503
6504         * guile/guile.c (gdbscm_eval_from_control_command): Update.
6505         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
6506         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
6507         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
6508         unique_xmalloc_ptr.
6509
6510 2018-07-17  Tom Tromey  <tom@tromey.com>
6511
6512         * guile/scm-param.c (pascm_signal_setshow_error): Update.
6513         * guile/guile-internal.h (gdbscm_exception_message_to_string):
6514         Update.
6515         * guile/scm-cmd.c (cmdscm_function): Update.
6516         * guile/scm-pretty-print.c
6517         (ppscm_print_exception_unless_memory_error): Update.
6518         * guile/scm-exception.c (gdbscm_exception_message_to_string):
6519         Return unique_xmalloc_ptr.
6520
6521 2018-07-17  Tom Tromey  <tom@tromey.com>
6522
6523         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
6524         Use string_printf.
6525
6526 2018-07-17  Jim Wilson  <jimw@sifive.com>
6527
6528         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
6529         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
6530         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
6531         unecessary braces after EF_RISCV_RVC test.  Delete call to
6532         set_gdbarch_decr_pc_after_break.
6533
6534         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
6535         RISCV_LAST_FP_REGNUM + 1.
6536         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
6537
6538 2018-07-17  Tom Tromey  <tom@tromey.com>
6539
6540         * configure.ac: Remove --disable-gdbcli.
6541         * configure: Rebuild.
6542         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
6543         (SUBDIR_CLI_CFLAGS): Remove.
6544         (SFILES): Use SUBDIR_CLI_SRCS.
6545         (COMMON_OBS): Use SUBDIR_CLI_OBS.
6546
6547 2018-07-17  Tom Tromey  <tom@tromey.com>
6548
6549         PR gdb/18624:
6550         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
6551
6552 2018-07-16  Jim Wilson  <jimw@sifive.com>
6553
6554         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
6555
6556 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6557
6558         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
6559         variable.
6560         (libunwind_frame_sniffer): Likewise.
6561         (libunwind_frame_prev_register): Likewise.
6562         (libunwind_sigtramp_frame_sniffer): Likewise.
6563         * ia64-tdep.c (ia64_access_reg): Likewise.
6564         (ia64_access_rse_reg): Likewise.
6565         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
6566         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
6567
6568 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6569
6570         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
6571
6572 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6573
6574         * remote-sim.c (gdbsim_target::close,
6575         gdbsim_target::mourn_inferior): Remove unused variables.
6576
6577 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
6578
6579         * ia64-tdep.c (ktab_buf): New global.
6580         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
6581         (get_kernel_table): Adjust.
6582
6583 2018-07-16  Tom Tromey  <tom@tromey.com>
6584
6585         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
6586         * dwarf2read.c (using_directives, new_symbol): Use
6587         outermost_context_p.
6588         * dbxread.c (process_one_symbol): Use outermost_context_p.
6589         * coffread.c (coff_symtab_read): Use outermost_context_p.
6590
6591 2018-07-16  Tom Tromey  <tom@tromey.com>
6592
6593         * dwarf2read.c (using_directives, read_func_scope)
6594         (read_lexical_block_scope): Update.
6595         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
6596         * buildsym.h (local_using_directives, global_using_directives):
6597         Don't declare.
6598         (get_local_using_directives, set_local_using_directives)
6599         (get_global_using_directives): Declare.
6600         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
6601         m_global_using_directives>: New members.
6602         (finish_block_internal, prepare_for_building)
6603         (reset_symtab_globals, end_symtab_get_static_block)
6604         (push_context): Update.
6605         (get_local_using_directives, set_local_using_directives)
6606         (get_global_using_directives): New functions.
6607         (buildsym_init): Update.
6608
6609 2018-07-16  Tom Tromey  <tom@tromey.com>
6610
6611         * xcoffread.c (xcoff_initial_scan): Don't call
6612         free_pending_blocks.
6613         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
6614         * buildsym.h (class scoped_free_pendings): Add constructor.
6615         (free_pending_blocks): Don't declare.
6616         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
6617         (free_pending_blocks): Now static.
6618
6619 2018-07-16  Tom Tromey  <tom@tromey.com>
6620
6621         * buildsym.h (push_subfile, pop_subfile): Update declarations.
6622         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
6623         member.
6624         (struct subfile_stack): Remove.
6625         (subfile_stack): Remove.
6626         (push_subfile, pop_subfile, buildsym_init): Update.
6627
6628 2018-07-16  Tom Tromey  <tom@tromey.com>
6629
6630         * buildsym.c (push_subfile): Use gdb_assert.
6631         (pop_subfile): Use gdb_assert.
6632
6633 2018-07-16  Tom Tromey  <tom@tromey.com>
6634
6635         * buildsym.h (merge_symbol_lists): Remove.
6636         * buildsym.c (merge_symbol_lists): Remove.
6637
6638 2018-07-16  Tom Tromey  <tom@tromey.com>
6639
6640         * stabsread.c (scan_file_globals): Update comment.
6641         * stabsread.h (scan_file_globals): Move from buildsym.h.
6642         * buildsym.h (scan_file_globals): Move to stabsread.h.
6643
6644 2018-07-16  Tom Tromey  <tom@tromey.com>
6645
6646         * xcoffread.c (xcoff_new_init): Update.
6647         * mipsread.c (mipscoff_new_init): Update.
6648         * mdebugread.c (mdebug_build_psymtabs): Update.
6649         * elfread.c (elf_new_init): Update.
6650         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
6651         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
6652         * buildsym.h (buildsym_new_init): Don't declare.
6653         * buildsym.c (buildsym_new_init): Remove.
6654
6655 2018-07-16  Tom Tromey  <tom@tromey.com>
6656
6657         * stabsread.h (within_function): Move from buildsym.h.
6658         * stabsread.c (start_stabs): Clear within_function.
6659         * coffread.c (coff_start_symtab): Clear within_function.
6660         * buildsym.h (within_function): Move to stabsread.h.
6661         * buildsym.c (prepare_for_building): Update.
6662
6663 2018-07-16  Tom Tromey  <tom@tromey.com>
6664
6665         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
6666         * dwarf2read.c (dwarf2_start_symtab): Don't set
6667         processing_gcc_compilation.
6668         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
6669
6670 2018-07-16  Tom Tromey  <tom@tromey.com>
6671
6672         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
6673         (next_symbol_text_func): Move from buildsym.h.
6674         * stabsread.c (hashname): Move from buildsym.c.
6675         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
6676         (next_symbol_text_func, hashname): Move to stabsread.h.
6677         * buildsym.c: Don't include bcache.h
6678         (hashname): Move to stasbread.c.
6679
6680 2018-07-16  Tom Tromey  <tom@tromey.com>
6681
6682         * buildsym.h (context_stack_size): Don't declare.
6683         * buildsym.c (context_stack_size): New global.
6684
6685 2018-07-16  Tom Tromey  <tom@tromey.com>
6686
6687         * dbxread.c (processing_acc_compilation): New global.
6688         * buildsym.h (processing_acc_compilation): Don't declare.
6689
6690 2018-07-16  Tom Tromey  <tom@tromey.com>
6691
6692         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
6693         * dbxread.c (read_ofile_symtab): Update.
6694         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
6695         * buildsym.h (last_source_start_addr): Remove.
6696         (set_last_source_start_addr, get_last_source_start_addr):
6697         Declare.
6698         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
6699         parameter.
6700         (struct buildsym_compunit) <m_last_source_start_addr>: New
6701         member.
6702         (prepare_for_building): Remove start_addr parameter.
6703         (start_symtab, restart_symtab, end_symtab_get_static_block)
6704         (end_symtab_with_blockvector): Update.
6705         (set_last_source_start_addr, get_last_source_start_addr): New
6706         functions.
6707
6708 2018-07-16  Tom Tromey  <tom@tromey.com>
6709
6710         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
6711         member.
6712         (have_line_numbers): Remove.
6713         (record_line, prepare_for_building, end_symtab_get_static_block)
6714         (augment_type_symtab): Update.
6715
6716 2018-07-16  Tom Tromey  <tom@tromey.com>
6717
6718         * buildsym.c (~buildsym_compunit): Free the macro table.
6719         (struct buildsym_compunit) <get_macro_table, release_macros>: New
6720         methods.
6721         <m_pending_macros>: New member.
6722         (pending_macros): Remove.
6723         (~scoped_free_pendings, get_macro_table, prepare_for_building)
6724         (reset_symtab_globals, end_symtab_get_static_block)
6725         (end_symtab_with_blockvector, augment_type_symtab)
6726         (buildsym_init): Update.
6727
6728 2018-07-16  Tom Tromey  <tom@tromey.com>
6729
6730         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
6731         parameter.
6732         (buildsym_compunit::set_last_source_file): New method.
6733         <m_last_source_file>: New member.
6734         (prepare_for_building): Remove "name" parameter.
6735         (start_symtab, restart_symtab, reset_symtab_globals): Update.
6736         (last_source_file): Remove.
6737         (set_last_source_file, get_last_source_file): Update.
6738
6739 2018-07-16  Tom Tromey  <tom@tromey.com>
6740
6741         * buildsym.c (prepare_for_building): Add assert.
6742
6743 2018-07-16  Tom Tromey  <tom@tromey.com>
6744
6745         * buildsym.c (~buildsym_compunit): Update.
6746         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
6747         (start_subfile, patch_subfile_names)
6748         (end_symtab_with_blockvector): Update.
6749
6750 2018-07-16  Tom Tromey  <tom@tromey.com>
6751
6752         * buildsym.c (struct buildsym_compunit): Add constructor,
6753         destructor, initializers.
6754         (start_buildsym_compunit): Remove.
6755         (free_buildsym_compunit): Use "delete".
6756         (start_symtab, restart_symtab): Use "new".
6757
6758 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
6759
6760         * symfile.c (set_objfile_default_section_offset): Remove struct
6761         keyword.
6762
6763 2018-07-14  Stafford Horne  <shorne@gmail.com>
6764
6765         * (Responsible Maintainers): Add myself as or1k maintainer.
6766
6767 2018-07-13  Tom Tromey  <tom@tromey.com>
6768
6769         * symfile.c (set_objfile_default_section_offset): Use extra braces
6770         around initializer.
6771
6772 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
6773
6774         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
6775         non-branching basr.
6776
6777 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6778
6779         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6780         unittests/cli-utils-selftests.c
6781         * unittests/cli-utils-selftests.c: New file.
6782
6783 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6784
6785         * NEWS: Mention new commands. Mention change to 'thread apply'.
6786
6787 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6788
6789         * thread.c (thr_try_catch_cmd): New function.
6790         (thread_apply_all_command): Handle qcs flags.
6791         (thread_apply_command): Handle qcs flags.
6792         (taas_command): New function.
6793         (tfaas_command): New function.
6794         (_initialize_thread): Update to setup the new commands 'taas
6795         and 'tfaas'. Change doc string for 'thread apply'.
6796
6797 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6798
6799         * stack.c: (trailing_outermost_frame): New function, mostly
6800         extracted from backtrace_command_1.
6801         (leading_innermost_frame): New function.
6802         (backtrace_command_1): Update to call trailing_outermost_frame.
6803         (frame_apply_command_count): New function.
6804         (frame_apply_level_command): New function.
6805         (frame_apply_all_command): New function.
6806         (frame_apply_command): New function.
6807         (faas_command): New function.
6808         (frame_cmd_list): New variable.
6809         (_initialize_stack): Update to setup the new commands 'frame apply'
6810         and 'faas'.
6811
6812 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6813
6814         * cli-utils.c (number_or_range_parser::get_number): Only handle
6815         numbers or convenience var as numbers.
6816         (parse_flags): New function.
6817         (parse_flags_qcs): New function.
6818         (number_or_range_parser::finished): Ensure parsing end is detected
6819         before end of string.
6820         * cli-utils.h (parse_flags): New function.
6821         (parse_flags_qcs): New function.
6822         (number_or_range_parser): Remove m_finished bool.
6823         (number_or_range_parser::skip_range): Set m_in_range to false.
6824
6825 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
6826
6827         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
6828         on Windows.
6829
6830 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6831             Jan Kratochvil  <jan.kratochvil@redhat.com>
6832             Paul Fertser  <fercerpav@gmail.com>
6833             Tsutomu Seki  <sekiriki@gmail.com>
6834             Pedro Alves  <palves@redhat.com>
6835
6836         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6837         'unittests/parse-connection-spec-selftests.c'.
6838         (COMMON_SFILES): Add 'common/netstuff.c'.
6839         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
6840         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
6841         * common/netstuff.c: New file.
6842         * common/netstuff.h: New file.
6843         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
6844         (wait_for_connect): Update comment.  New parameter
6845         'gdb::optional<int> sock' instead of 'struct serial *scb'.
6846         Use 'sock' directly instead of 'scb->fd'.
6847         (try_connect): New function, with code from 'net_open'.
6848         (net_open): Rewrite main loop to deal with multiple
6849         sockets/addresses.  Handle IPv6-style hostnames; implement
6850         support for IPv6 connections.
6851         * unittests/parse-connection-spec-selftests.c: New file.
6852
6853 2018-07-11  Pedro Alves  <palves@redhat.com>
6854
6855         PR gdb/23377
6856         * remote.c (remote_target::remote_detach_pid): Call
6857         set_current_process.
6858
6859 2018-07-11  Pedro Alves  <palves@redhat.com>
6860
6861         * h8300-tdep.c (h8300_gdbarch_init): Remove
6862         set_gdbarch_ecoff_reg_to_regnum calls.
6863
6864 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6865
6866         PR c++/23373
6867         * c-typeprint.c (c_type_print_base_struct_union): Don't print
6868         offsets/sizes for static members of a class/struct.
6869
6870 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
6871
6872         * target-descriptions.c (tdesc_register_bitsize): Rename.
6873         * target-descriptions.h (tdesc_register_bitsize): Likewise.
6874         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
6875         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
6876
6877 2018-07-10  Tom Tromey  <tom@tromey.com>
6878
6879         * breakpoint.c (moribund_locations): Now static and a
6880         std::vector.
6881         (breakpoint_init_inferior, moribund_breakpoint_here_p)
6882         (build_bpstat_chain, update_global_location_list)
6883         (breakpoint_retire_moribund): Update.
6884         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
6885         VEC.
6886
6887 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6888
6889         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
6890         (riscv_register_reggroup_p): Use new function, remove unneeded
6891         parenthesis.
6892         (riscv_push_dummy_call): Extend assert to compare against xlen or
6893         flen based on register type.
6894
6895 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6896
6897         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
6898
6899 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
6900
6901         * remote.c (show_hardware_watchpoint_limit): New function.
6902         (show_hardware_watchpoint_length_limit): New function.
6903         (show_hardware_breakpoint_limit): New function.
6904         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
6905         where appropriate, update help text.
6906
6907 2018-07-09  Tom Tromey  <tom@tromey.com>
6908
6909         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
6910         (CLIBS): Don't mention NAT_CLIBS.
6911
6912 2018-07-09  Tom Tromey  <tom@tromey.com>
6913
6914         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
6915         (LIBGDB_OBS, clean mostlyclean): Update.
6916         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
6917
6918 2018-07-09  Tom Tromey  <tom@tromey.com>
6919
6920         * Makefile.in (%.c: %.y): Use ECHO_YACC.
6921         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
6922         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
6923
6924 2018-07-09  Tom Tromey  <tom@tromey.com>
6925
6926         * Makefile.in (ALLDEPFILES): Remove exec.c.
6927         (COMMON_OBS): Remove exec.o.
6928         (COMMON_SFILES): Add exec.c.
6929
6930 2018-07-09  Tom Tromey  <tom@tromey.com>
6931
6932         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
6933
6934 2018-07-09  Tom Tromey  <tom@tromey.com>
6935
6936         * Makefile.in (clean mostlyclean): Remove stamp-version.
6937         (version.c): Depend on stamp-version.
6938         (stamp-version): New rule, from version.c rule.
6939
6940 2018-07-09  Tom Tromey  <tom@tromey.com>
6941
6942         * Makefile.in (init.c): Depend on stamp-init.
6943         (stamp-init): New rule, from init.c rule.
6944         (clean mostlyclean): Remove stamp-init.
6945
6946 2018-07-09  Tom Tromey  <tom@tromey.com>
6947
6948         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
6949         SUBDIR_GCC_COMPILE_SRCS.
6950
6951 2018-07-09  Tom Tromey  <tom@tromey.com>
6952
6953         * Makefile.in (init.c): Remove some unused sed rules.
6954
6955 2018-07-09  Tom Tromey  <tom@tromey.com>
6956
6957         * Makefile.in (TSOBS): Remove.
6958         (INIT_FILES): Update.
6959         (LIBGDB_OBS): Update.
6960         (COMMON_SFILES): Add inflow.c.
6961         (SFILES): Remove inflow.c.
6962
6963 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
6964
6965         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
6966
6967 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
6968
6969         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
6970         get_saveloc_name, is_signal_frame_name, step_name,
6971         init_remote_name, create_addr_space_name,
6972         destroy_addr_space_name, search_unwind_table_name,
6973         find_dyn_list_name): Constify.
6974
6975 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
6976
6977         * darwin-nat.c (darwin_pthread_kill): New function.
6978         (darwin_resume_thread): Use darwin_pthread_kill.
6979
6980 2018-07-05  Tom de Vries  <tdevries@suse.de>
6981
6982         * macroexp.c (macro_buffer) <operator=>: New member function.
6983
6984 2018-07-04  Tom Tromey  <tom@tromey.com>
6985
6986         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
6987
6988 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
6989
6990         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
6991         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
6992         * maint.c: Likewise.
6993         * top.c: Likewise.
6994
6995 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6996
6997         * NEWS: Create a new section for the next release branch.
6998         Rename the section of the current branch, now that it has
6999         been cut.
7000
7001 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
7002
7003         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
7004         * version.in: Bump version to 8.2.50.DATE-git.
7005
7006 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
7007             Pedro Alves  <palves@redhat.com>
7008
7009         * linux-nat.c (linux_init_ptrace): Rename to ...
7010         (linux_init_ptrace_procfs): ... this.  Call
7011         linux_proc_init_warnings.
7012         (linux_nat_target::post_attach)
7013         (linux_nat_target::post_startup_inferior): Adjust.
7014         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
7015         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
7016
7017 2018-07-04  Tom de Vries  <tdevries@suse.de>
7018
7019         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
7020         check ...
7021         (read_comp_unit_head): ... here.
7022
7023 2018-07-03  Tom Tromey  <tom@tromey.com>
7024
7025         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
7026         (stop_tracing, tstatus_command)
7027         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
7028         (print_one_static_tracepoint_marker): Update.
7029         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
7030         std::vector.
7031         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
7032         VEC.
7033         (all_tracepoints, static_tracepoints_here): Return std::vector.
7034
7035 2018-07-03  Tom Tromey  <tom@tromey.com>
7036
7037         * common/ptid.c (ptid_equal): Remove.
7038         * common/ptid.h (ptid_equal): Don't declare.
7039         * ada-tasks.c: Update.
7040         * breakpoint.c: Update.
7041         * common/agent.c: Update.
7042         * corelow.c: Update.
7043         * darwin-nat-info.c: Update.
7044         * darwin-nat.c: Update.
7045         * dcache.c: Update.
7046         * dtrace-probe.c: Update.
7047         * dummy-frame.c: Update.
7048         * fbsd-nat.c: Update.
7049         * frame.c: Update.
7050         * gdbthread.h: Update.
7051         * gnu-nat.c: Update.
7052         * go32-nat.c: Update.
7053         * inf-loop.c: Update.
7054         * inf-ptrace.c: Update.
7055         * infcall.c: Update.
7056         * infcmd.c: Update.
7057         * inflow.c: Update.
7058         * infrun.c: Update.
7059         * linux-fork.c: Update.
7060         * linux-nat.c: Update.
7061         * linux-thread-db.c: Update.
7062         * mi/mi-cmd-var.c: Update.
7063         * mi/mi-interp.c: Update.
7064         * mi/mi-main.c: Update.
7065         * nto-procfs.c: Update.
7066         * ppc-linux-tdep.c: Update.
7067         * procfs.c: Update.
7068         * python/py-inferior.c: Update.
7069         * python/py-record-btrace.c: Update.
7070         * python/py-record.c: Update.
7071         * ravenscar-thread.c: Update.
7072         * regcache.c: Update.
7073         * remote-sim.c: Update.
7074         * remote.c: Update.
7075         * sol-thread.c: Update.
7076         * solib.c: Update.
7077         * target.c: Update.
7078         * tui/tui-stack.c: Update.
7079         * varobj.c: Update.
7080         * windows-nat.c: Update.
7081         * windows-tdep.c: Update.
7082
7083 2018-07-03  Tom Tromey  <tom@tromey.com>
7084
7085         * common/ptid.c (ptid_match): Remove.
7086         * common/ptid.h (ptid_match): Don't declare.
7087         * fbsd-nat.c: Update.
7088         * infcmd.c: Update.
7089         * infrun.c: Update.
7090         * linux-nat.c: Update.
7091         * record-btrace.c: Update.
7092         * regcache.c: Update.
7093         * remote.c: Update.
7094
7095 2018-07-03  Tom Tromey  <tom@tromey.com>
7096
7097         * common/ptid.c (ptid_tid_p): Remove.
7098         * common/ptid.h (ptid_tid_p): Don't declare.
7099         * sol-thread.c: Update.
7100
7101 2018-07-03  Tom Tromey  <tom@tromey.com>
7102
7103         * common/ptid.c (ptid_lwp_p): Remove.
7104         * common/ptid.h (ptid_lwp_p): Don't declare.
7105         * fbsd-nat.c: Update.
7106         * linux-nat.c: Update.
7107         * nat/linux-procfs.c: Update.
7108         * nat/x86-linux-dregs.c: Update.
7109         * sol-thread.c: Update.
7110
7111 2018-07-03  Tom Tromey  <tom@tromey.com>
7112
7113         * common/ptid.c (ptid_is_pid): Remove.
7114         * common/ptid.h (ptid_is_pid): Don't declare.
7115         * infrun.c: Update.
7116         * linux-nat.c: Update.
7117         * mi/mi-interp.c: Update.
7118         * remote.c: Update.
7119         * thread.c: Update.
7120
7121 2018-07-03  Tom Tromey  <tom@tromey.com>
7122
7123         * common/ptid.c (ptid_get_tid): Remove.
7124         * common/ptid.h (ptid_get_tid): Don't declare.
7125         * ada-tasks.c: Update.
7126         * aix-thread.c: Update.
7127         * bsd-uthread.c: Update.
7128         * darwin-nat.c: Update.
7129         * fbsd-nat.c: Update.
7130         * i386-darwin-nat.c: Update.
7131         * infrun.c: Update.
7132         * linux-tdep.c: Update.
7133         * nto-procfs.c: Update.
7134         * ppc-ravenscar-thread.c: Update.
7135         * python/py-infthread.c: Update.
7136         * ravenscar-thread.c: Update.
7137         * sol-thread.c: Update.
7138         * sparc-ravenscar-thread.c: Update.
7139         * windows-nat.c: Update.
7140
7141 2018-07-03  Tom Tromey  <tom@tromey.com>
7142
7143         * common/ptid.c (ptid_get_lwp): Remove.
7144         * common/ptid.h (ptid_get_lwp): Don't declare.
7145         * aarch64-linux-nat.c: Update.
7146         * ada-tasks.c: Update.
7147         * aix-thread.c: Update.
7148         * amd64-linux-nat.c: Update.
7149         * arm-linux-nat.c: Update.
7150         * corelow.c: Update.
7151         * fbsd-nat.c: Update.
7152         * fbsd-tdep.c: Update.
7153         * gnu-nat.c: Update.
7154         * i386-cygwin-tdep.c: Update.
7155         * i386-gnu-nat.c: Update.
7156         * i386-linux-nat.c: Update.
7157         * ia64-linux-nat.c: Update.
7158         * inf-ptrace.c: Update.
7159         * infrun.c: Update.
7160         * linux-fork.c: Update.
7161         * linux-nat.c: Update.
7162         * linux-tdep.c: Update.
7163         * linux-thread-db.c: Update.
7164         * mips-linux-nat.c: Update.
7165         * nat/aarch64-linux-hw-point.c: Update.
7166         * nat/aarch64-linux.c: Update.
7167         * nat/linux-btrace.c: Update.
7168         * nat/linux-osdata.c: Update.
7169         * nat/linux-procfs.c: Update.
7170         * nat/x86-linux-dregs.c: Update.
7171         * obsd-nat.c: Update.
7172         * ppc-fbsd-nat.c: Update.
7173         * ppc-linux-nat.c: Update.
7174         * procfs.c: Update.
7175         * python/py-infthread.c: Update.
7176         * ravenscar-thread.c: Update.
7177         * remote.c: Update.
7178         * s390-linux-nat.c: Update.
7179         * sol-thread.c: Update.
7180         * sol2-tdep.c: Update.
7181         * spu-linux-nat.c: Update.
7182         * x86-linux-nat.c: Update.
7183         * xtensa-linux-nat.c: Update.
7184
7185 2018-07-03  Tom Tromey  <tom@tromey.com>
7186
7187         * common/ptid.c (ptid_get_pid): Remove.
7188         * common/ptid.h (ptid_get_pid): Don't declare.
7189         * aarch64-linux-nat.c: Update.
7190         * ada-lang.c: Update.
7191         * aix-thread.c: Update.
7192         * alpha-bsd-nat.c: Update.
7193         * amd64-fbsd-nat.c: Update.
7194         * amd64-linux-nat.c: Update.
7195         * arm-linux-nat.c: Update.
7196         * arm-nbsd-nat.c: Update.
7197         * auxv.c: Update.
7198         * break-catch-syscall.c: Update.
7199         * breakpoint.c: Update.
7200         * bsd-uthread.c: Update.
7201         * corelow.c: Update.
7202         * ctf.c: Update.
7203         * darwin-nat.c: Update.
7204         * fbsd-nat.c: Update.
7205         * fbsd-tdep.c: Update.
7206         * gcore.c: Update.
7207         * gnu-nat.c: Update.
7208         * hppa-nbsd-nat.c: Update.
7209         * hppa-obsd-nat.c: Update.
7210         * i386-fbsd-nat.c: Update.
7211         * ia64-linux-nat.c: Update.
7212         * inf-ptrace.c: Update.
7213         * infcmd.c: Update.
7214         * inferior.c: Update.
7215         * inferior.h: Update.
7216         * inflow.c: Update.
7217         * infrun.c: Update.
7218         * linux-fork.c: Update.
7219         * linux-nat.c: Update.
7220         * linux-tdep.c: Update.
7221         * linux-thread-db.c: Update.
7222         * m68k-bsd-nat.c: Update.
7223         * mi/mi-interp.c: Update.
7224         * mi/mi-main.c: Update.
7225         * mips-linux-nat.c: Update.
7226         * mips-nbsd-nat.c: Update.
7227         * mips64-obsd-nat.c: Update.
7228         * nat/aarch64-linux-hw-point.c: Update.
7229         * nat/aarch64-linux.c: Update.
7230         * nat/linux-btrace.c: Update.
7231         * nat/linux-osdata.c: Update.
7232         * nat/linux-procfs.c: Update.
7233         * nat/x86-linux-dregs.c: Update.
7234         * nto-procfs.c: Update.
7235         * obsd-nat.c: Update.
7236         * ppc-linux-nat.c: Update.
7237         * ppc-nbsd-nat.c: Update.
7238         * ppc-obsd-nat.c: Update.
7239         * proc-service.c: Update.
7240         * procfs.c: Update.
7241         * python/py-inferior.c: Update.
7242         * python/py-infthread.c: Update.
7243         * ravenscar-thread.c: Update.
7244         * record.c: Update.
7245         * remote-sim.c: Update.
7246         * remote.c: Update.
7247         * rs6000-nat.c: Update.
7248         * s390-linux-nat.c: Update.
7249         * sh-nbsd-nat.c: Update.
7250         * sol-thread.c: Update.
7251         * sparc-nat.c: Update.
7252         * sparc64-tdep.c: Update.
7253         * spu-linux-nat.c: Update.
7254         * spu-tdep.c: Update.
7255         * target-debug.h: Update.
7256         * target.c: Update.
7257         * thread.c: Update.
7258         * tid-parse.c: Update.
7259         * tracefile-tfile.c: Update.
7260         * vax-bsd-nat.c: Update.
7261         * windows-nat.c: Update.
7262         * x86-linux-nat.c: Update.
7263         * x86-nat.c: Update.
7264
7265 2018-07-03  Tom Tromey  <tom@tromey.com>
7266
7267         * common/ptid.c (pid_to_ptid): Remove.
7268         * common/ptid.h (pid_to_ptid): Don't declare.
7269         * aix-thread.c: Update.
7270         * arm-linux-nat.c: Update.
7271         * common/ptid.c: Update.
7272         * common/ptid.h: Update.
7273         * corelow.c: Update.
7274         * ctf.c: Update.
7275         * darwin-nat.c: Update.
7276         * fbsd-nat.c: Update.
7277         * fork-child.c: Update.
7278         * gnu-nat.c: Update.
7279         * go32-nat.c: Update.
7280         * inf-ptrace.c: Update.
7281         * infcmd.c: Update.
7282         * inferior.c: Update.
7283         * infrun.c: Update.
7284         * linux-fork.c: Update.
7285         * linux-nat.c: Update.
7286         * nat/aarch64-linux-hw-point.c: Update.
7287         * nat/fork-inferior.c: Update.
7288         * nat/x86-linux-dregs.c: Update.
7289         * nto-procfs.c: Update.
7290         * obsd-nat.c: Update.
7291         * procfs.c: Update.
7292         * progspace.c: Update.
7293         * remote.c: Update.
7294         * rs6000-nat.c: Update.
7295         * s390-linux-nat.c: Update.
7296         * sol-thread.c: Update.
7297         * spu-linux-nat.c: Update.
7298         * target.c: Update.
7299         * top.c: Update.
7300         * tracefile-tfile.c: Update.
7301         * windows-nat.c: Update.
7302
7303 2018-07-03  Tom Tromey  <tom@tromey.com>
7304
7305         * common/ptid.h (ptid_build): Don't declare.
7306         * common/ptid.c (ptid_build): Remove.
7307         * aix-thread.c: Update.
7308         * bsd-kvm.c: Update.
7309         * bsd-uthread.c: Update.
7310         * common/agent.c: Update.
7311         * common/ptid.c: Update.
7312         * common/ptid.h: Update.
7313         * corelow.c: Update.
7314         * darwin-nat.c: Update.
7315         * fbsd-nat.c: Update.
7316         * gnu-nat.c: Update.
7317         * linux-fork.c: Update.
7318         * linux-nat.c: Update.
7319         * linux-thread-db.c: Update.
7320         * nat/linux-osdata.c: Update.
7321         * nat/linux-procfs.c: Update.
7322         * nto-procfs.c: Update.
7323         * obsd-nat.c: Update.
7324         * proc-service.c: Update.
7325         * procfs.c: Update.
7326         * ravenscar-thread.c: Update.
7327         * remote-sim.c: Update.
7328         * remote.c: Update.
7329         * sol-thread.c: Update.
7330         * target.c: Update.
7331         * windows-nat.c: Update.
7332
7333 2018-07-03  Tom Tromey  <tom@tromey.com>
7334
7335         * infrun.c (follow_exec): Use exit_inferior_silent.
7336         * inferior.c (exit_inferior_num_silent): Remove.
7337         * inferior.h (exit_inferior_num_silent): Don't declare.
7338
7339 2018-07-03  Tom Tromey  <tom@tromey.com>
7340
7341         PR cli/23340:
7342         * darwin-nat.c (darwin_attach_pid): Reset inferior and
7343         inferior_ptid on error.
7344
7345 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
7346             Simon Marchi  <simon.marchi@polymtl.ca>
7347
7348         PR tdep/8282
7349         * disasm.h (gdb_disassembler): Add
7350         `m_disassembler_options_holder'. member
7351         * disasm.c (get_all_disassembler_options): New function.
7352         (gdb_disassembler::gdb_disassembler): Use it.
7353         (gdb_buffered_insn_length_init_dis): Likewise.
7354         (gdb_buffered_insn_length): Adjust accordingly.
7355         (set_disassembler_options): Handle options with arguments.
7356         (show_disassembler_options_sfunc): Likewise.  Add a leading new
7357         line if showing options with descriptions.
7358         (disassembler_options_completer): Adapt to using the
7359         `disasm_options_and_args_t' structure.
7360         * mips-tdep.c (mips_disassembler_options): New variable.
7361         (mips_disassembler_options_o32): Likewise.
7362         (mips_disassembler_options_n32): Likewise.
7363         (mips_disassembler_options_n64): Likewise.
7364         (gdb_print_insn_mips): Don't set `disassembler_options'.
7365         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
7366         functions.
7367         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
7368         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
7369         `gdbarch_disassembler_options_implicit' and
7370         `gdbarch_valid_disassembler_options'.
7371         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
7372         `disasm_options_and_args_t' structure.
7373         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
7374         method.
7375         (valid_disassembler_options): Switch from `disasm_options_t' to
7376         the `disasm_options_and_args_t' structure.
7377         * NEWS: Document `set disassembler-options' support for the MIPS
7378         target.
7379         * gdbarch.h: Regenerate.
7380         * gdbarch.c: Regenerate.
7381
7382 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
7383
7384         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
7385
7386 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
7387
7388         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
7389         parameter in call to amd64_target_description.
7390         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
7391         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
7392         (amd64fbsd_init_abi): Likewise.
7393         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
7394         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
7395         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
7396         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
7397
7398 2018-06-29  Pedro Alves  <palves@redhat.com>
7399
7400         * gdb/amd64-tdep.h (amd64_create_target_description): Add
7401         "segments" parameter.
7402         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
7403         (_initialize_amd64_tdep): Update call to
7404         amd64_create_target_description.
7405         (amd64_target_description): Add "segments" parameter.  Adjust
7406         the implementation to use it.
7407         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
7408         call to amd64_create_target_description.
7409         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
7410         * gdb/arch/amd64.h (amd64_create_target_description): Add
7411         "segments" register.
7412         * gdb/arch/amd64.c (amd64_create_target_description): Add
7413         "segments" parameter.  Call create_feature_i386_64bit_segments
7414         only if SEGMENTS is true.
7415         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
7416         call to amd64_create_target_description.
7417
7418 2018-06-29  Pedro Alves  <palves@redhat.com>
7419
7420         * thread.c (thread_target_id_str): New, factored out from ...
7421         (print_thread_info_1): ... here.  Use it to compute the max
7422         "Target Id" column width.
7423
7424 2018-06-29  Pedro Alves  <palves@redhat.com>
7425
7426         * remote.c (remote_target::extra_thread_info): Delete
7427         'display_buf' and 'n' locals.  from the cache, regardless of
7428         packet mechanims is in use.  Use cache for qThreadExtra and qP
7429         methods too.
7430
7431 2018-06-29  Pedro Alves  <palves@redhat.com>
7432
7433         * blockframe.c (find_pc_sect_containing_function): New function.
7434         * breakpoint.c (print_breakpoint_location): Don't call
7435         find_pc_sect_function.
7436         * linespec.c (create_sals_line_offset): Record the location's
7437         symbol in the sal.
7438         * linespec.c (convert_address_location_to_sals): Fill in sal's
7439         symbol with find_pc_sect_containing_function.
7440         * symtab.c (find_function_start_sal): Rename to ...
7441         (find_function_start_sal_1): ... this.
7442         (find_function_start_sal): Reimplement as wrapper around
7443         find_function_start_sal_1, and use
7444         find_pc_sect_containing_function to fill in the sal's symbol.
7445         (find_function_start_sal(symbol*, bool)): Adjust.
7446         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
7447         comments.
7448         (find_pc_sect_containing_function): Declare.
7449
7450 2018-06-29  Pedro Alves  <palves@redhat.com>
7451
7452         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
7453         true if the the location has no symbol.
7454
7455 2018-06-28  Tom Tromey  <tom@tromey.com>
7456
7457         * NEWS: Mention --enable-codesign.
7458         * silent-rules.mk (ECHO_SIGN): New variable.
7459         * configure.ac: Add --enable-codesign.
7460         * configure: Rebuild.
7461         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
7462         (gdb$(EXEEXT)): Optionally invoke codesign.
7463
7464 2018-06-28  Pedro Alves  <palves@redhat.com>
7465
7466         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
7467         comments.
7468         (switch_to_thread_no_regs): Adjust comment.
7469         * infcmd.c (stop_pc): Delete.
7470         (post_create_inferior, info_program_command): Replace references
7471         to stop_pc with references to thread_info->suspend.stop_pc.
7472         * inferior.h (stop_pc): Delete declaration.
7473         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
7474         (handle_inferior_event_1, handle_signal_stop)
7475         (process_event_stop_test, keep_going_stepped_thread)
7476         (handle_step_into_function, handle_step_into_function_backward)
7477         (print_stop_location): Replace references to stop_pc with
7478         references to thread_info->suspend.stop_pc.
7479         (struct infcall_suspend_state) <stop_pc>: Delete field.
7480         (save_infcall_suspend_state, restore_infcall_suspend_state):
7481         Remove references to inf_stat->stop_pc.
7482         * linux-fork.c (fork_load_infrun_state): Likewise.
7483         * record-btrace.c (record_btrace_set_replay): Likewise.
7484         * record-full.c (record_full_goto_entry): Likewise.
7485         * remote.c (print_one_stopped_thread): Likewise.
7486         * target.c (target_resume): Extend comment.
7487         * thread.c (set_executing_thread): New.
7488         (set_executing): Use it.
7489         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
7490         Remove references to stop_pc.
7491
7492 2018-06-28  Pedro Alves  <palves@redhat.com>
7493
7494         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
7495         Moving fetching stop_pc until after ecs->event_thread is refreshed.
7496
7497 2018-06-28  Tom Tromey  <tom@tromey.com>
7498
7499         * coffread.c (coff_symfile_finish): Update.
7500         * xcoffread.c (xcoff_symfile_finish): Update.
7501         * elfread.c (elf_symfile_finish): Update.
7502         * symfile.h (dwarf2_free_objfile): Don't declare.
7503         * dwarf2read.c (_initialize_dwarf2_read): Use
7504         register_objfile_data_with_cleanup.
7505         (dwarf2_free_objfile): Now static.  Change signature.
7506
7507 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7508
7509         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
7510         option "-o" to add-symbol-file-load to add an offset to each
7511         section's load address.
7512         * symfile.c (set_objfile_default_section_offset): New function.
7513
7514 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7515
7516         * symfile.c (add_symbol_file_command): Make sure that sections
7517         with the same name are sorted in the same order.
7518
7519 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7520
7521         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
7522         require the second argument.  If omitted, load sections at the
7523         addresses specified in the file.
7524
7525 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7526
7527         * symfile.c (symbol_file_command, symbol_file_add_main_1)
7528         (_initialize_symfile): Add option "-o" to symbol-file to add an
7529         offset to each section of the symbol file.
7530
7531 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7532
7533         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
7534
7535 2018-06-27  Tom Tromey  <tom@tromey.com>
7536
7537         * stack.c (_initialize_stack): Update "func" help text.
7538
7539 2018-06-27  Tom Tromey  <tom@tromey.com>
7540
7541         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
7542         std::vector.
7543         (unwind_infopy_str, pyuw_create_unwind_info)
7544         (unwind_infopy_add_saved_register, pyuw_sniffer)
7545         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
7546         Update.
7547         (struct saved_reg): Add constructor.
7548         <value>: Now a gdbpy_ref<>.
7549
7550 2018-06-27  Tom Tromey  <tom@tromey.com>
7551
7552         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
7553
7554 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7555
7556         * gdb-gdb.py.in: Format using autopep8.
7557
7558 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7559
7560         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
7561         (type_lookup_function): Recognize CORE_ADDR values.
7562
7563 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7564
7565         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
7566         print tag_name.
7567
7568 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7569
7570         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
7571         <__lt__>: Add.
7572
7573 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7574
7575         * gdb-gdb.py: Move to...
7576         * gdb-gdb.py.in: ... here.
7577         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
7578         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
7579         dependencies.
7580         (distclean): Remove gdb-gdb.py when cleaning.
7581         (gdb-gdb.py, gdb-gdb.gdb): New rules.
7582         * configure: Re-generate.
7583
7584 2018-06-27  Pedro Alves  <palves@redhat.com>
7585
7586         * proc-service.c (get_ps_regcache): New.
7587         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
7588         (ps_lsetfpregs): Use it.
7589
7590 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
7591
7592         PR gdb/21695
7593         * dwarf2read.c (lnp_state_machine::check_line_address): Update
7594         declaration.
7595         (dwarf_decode_lines_1): Adjust.
7596
7597 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7598
7599         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
7600         override.
7601         <info_proc>: Likewise.
7602
7603 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
7604
7605         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
7606         to windows_fetch_one_register, and only handle the case of
7607         fetching one register.  Move the code that reloads the context
7608         and iterates over all registers if R is negative to...
7609         (windows_nat_target::fetch_registers): ... here.
7610         (do_windows_store_inferior_registers): Rename to
7611         windows_store_one_register, and only handle the case of storing
7612         one register.  Move the code that handles the case where r is
7613         negative to...
7614         (windows_nat_target::store_registers) ... here.
7615
7616 2018-06-26  Tom Tromey  <tom@tromey.com>
7617
7618         PR rust/22574:
7619         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
7620         * rust-lang.c (rust_print_struct_def): Add podata parameter.
7621         Update.
7622         (rust_internal_print_type): Add podata parameter.
7623         (rust_print_type): Update.
7624
7625 2018-06-26  Tom Tromey  <tom@tromey.com>
7626
7627         * typeprint.h (struct print_offset_data) <update, finish,
7628         maybe_print_hole>: New methods.
7629         <indentation>: New constant.
7630         * typeprint.c (print_offset_data::indentation): Define.
7631         (print_offset_data::maybe_print_hole, print_offset_data::update)
7632         (print_offset_data::finish): Move from c-typeprint.c and rename.
7633         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
7634         (print_spaces_filtered_with_print_options): Update.
7635         (c_print_type_union_field_offset, maybe_print_hole)
7636         (c_print_type_struct_field_offset): Move to typeprint.c and
7637         rename.
7638         (c_type_print_base_struct_union): Update.
7639
7640 2018-06-25  Pedro Alves  <palves@redhat.com>
7641
7642         * gdbthread.h (thread_info_ref, delete_thread)
7643         (delete_thread_silent, first_thread_of_inferior)
7644         (any_thread_of_inferior, switch_to_thread)
7645         (enable_thread_stack_temporaries)
7646         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7647         (get_last_thread_stack_temporary)
7648         (value_in_thread_stack_temporaries, can_access_registers_thread):
7649         Spell out "struct thread_info" instead of just "thread_info".
7650         * inferior.h (notice_new_inferior): Likewise.
7651
7652 2018-06-25  Pedro Alves  <palves@redhat.com>
7653
7654         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7655         pass thread_info pointer to delete_thread.
7656         (windows_nat_target::detach): Pass inferior pointer to
7657         detach_inferior.
7658         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
7659         delete_thread.
7660         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
7661         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
7662         and pass a thread_info pointer to delete_thread.
7663         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
7664         pass thread_info pointer to delete_thread.
7665         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
7666         delete_thread_silent call.
7667         * procfs.c (procfs_target::detach): Pass inferior pointer to
7668         detach_inferior.
7669         (procfs_target::wait): Pass thread_info pointer to delete_thread.
7670         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
7671         delete_thread_silent call.
7672         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7673         pass thread_info pointer to delete_thread.
7674         (windows_nat_target::detach): Pass inferior pointer to
7675         delete_inferior.
7676
7677 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7678
7679         * regcache.c (readable_regcache::read_part): Fix asserts.
7680         (reg_buffer::raw_collect_part): New function.
7681         (regcache::write_part): Fix asserts.
7682         (reg_buffer::raw_supply_part): New function.
7683         (regcache::transfer_regset_register): New helper function.
7684         (regcache::transfer_regset): Call new functions.
7685         (regcache_supply_regset): Use gdb_byte*.
7686         (regcache::supply_regset): Likewise.
7687         (regcache_collect_regset): Likewise.
7688         (regcache::collect_regset): Likewise.
7689         * regcache.h (reg_buffer::raw_collect_part): New declaration.
7690         (reg_buffer::raw_supply_part): Likewise.
7691         (regcache::transfer_regset_register): Likewise.
7692         (regcache::transfer_regset): Use gdb_byte*.
7693
7694 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7695
7696         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
7697
7698 2018-06-21  Pedro Alves  <palves@redhat.com>
7699
7700         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
7701         instead of a ptid_t.  All callers adjusted.
7702         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
7703         adjusted.
7704         (print_ada_task_info, display_current_task_id, task_command_1):
7705         Adjust.
7706         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
7707         inferior_thread.
7708         (breakpoint_kind): Adjust.
7709         (remove_breakpoints_pid): Rename to ...
7710         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
7711         pointer.  All callers adjusted.
7712         (bpstat_clear_actions): Use inferior_thread.
7713         (get_bpstat_thread): New.
7714         (bpstat_do_actions): Use it.
7715         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
7716         to take a thread_info pointer.  All callers adjusted.
7717         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
7718         (breakpoint_re_set_thread): Use inferior_thread.
7719         * breakpoint.h (struct inferior): Forward declare.
7720         (bpstat_stop_status): Update.
7721         (remove_breakpoints_pid): Delete.
7722         (remove_breakpoints_inf): New.
7723         * bsd-uthread.c (bsd_uthread_target::wait)
7724         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
7725         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
7726         (maint_btrace_packet_history_cmd)
7727         (maint_btrace_clear_packet_history_cmd): Adjust.
7728         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
7729         inferior_thread.
7730         * cli/cli-interp.c: Include "inferior.h".
7731         * common/refcounted-object.h (struct
7732         refcounted_object_ref_policy): New.
7733         * compile/compile-object-load.c: Include gdbthread.h.
7734         (store_regs): Use inferior_thread.
7735         * corelow.c (core_target::close): Use current_inferior.
7736         (core_target_open): Adjust to use first_thread_of_inferior and use
7737         the current inferior.
7738         * ctf.c (ctf_target::close): Adjust to use current_inferior.
7739         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
7740         <thread>: ... this new field.  All references adjusted.
7741         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
7742         Take a thread_info pointer instead of a ptid_t.
7743         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
7744         (dummy_frame_discard, register_dummy_frame_dtor): Take a
7745         thread_info pointer instead of a ptid_t.
7746         * elfread.c: Include "inferior.h".
7747         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
7748         Use inferior_thread.
7749         * eval.c (evaluate_subexp): Likewise.
7750         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
7751         inferior_thread.
7752         * gdb_proc_service.h (struct thread_info): Forward declare.
7753         (struct ps_prochandle) <ptid>: Delete, replaced by ...
7754         <thread>: ... this new field.  All references adjusted.
7755         * gdbarch.h, gdbarch.c: Regenerate.
7756         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
7757         'thread' parameter.  All implementations and callers adjusted.
7758         * gdbthread.h (thread_info) <set_running>: New method.
7759         (delete_thread, delete_thread_silent): Take a thread_info pointer
7760         instead of a ptid.
7761         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
7762         (first_thread_of_process): Delete, replaced by ...
7763         (first_thread_of_inferior): ... this new function.  All callers
7764         adjusted.
7765         (any_live_thread_of_process): Delete, replaced by ...
7766         (any_live_thread_of_inferior): ... this new function.  All callers
7767         adjusted.
7768         (switch_to_thread, switch_to_no_thread): Declare.
7769         (is_executing): Delete.
7770         (enable_thread_stack_temporaries): Update comment.
7771         <enable_thread_stack_temporaries>: Take a thread_info pointer
7772         instead of a ptid_t.  Incref the thread.
7773         <~enable_thread_stack_temporaries>: Decref the thread.
7774         <m_ptid>: Delete
7775         <m_thr>: New.
7776         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7777         (get_last_thread_stack_temporary)
7778         (value_in_thread_stack_temporaries, can_access_registers_thread):
7779         Take a thread_info pointer instead of a ptid_t.  All callers
7780         adjusted.
7781         * infcall.c (get_call_return_value): Use inferior_thread.
7782         (run_inferior_call): Work with thread pointers instead of ptid_t.
7783         (call_function_by_hand_dummy): Work with thread pointers instead
7784         of ptid_t.  Use thread_info_ref.
7785         * infcmd.c (proceed_thread_callback): Access thread's state
7786         directly.
7787         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
7788         access thread's state directly.
7789         (continue_command): Use inferior_thread.
7790         (info_program_command): Use find_thread_ptid and access thread
7791         state directly.
7792         (proceed_after_attach_callback): Use thread state directly.
7793         (notice_new_inferior): Take a thread_info pointer instead of a
7794         ptid_t.  All callers adjusted.
7795         (exit_inferior): Take an inferior pointer instead of a pid.  All
7796         callers adjusted.
7797         (exit_inferior_silent): New.
7798         (detach_inferior): Delete.
7799         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
7800         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
7801         (detach_inferior_command, kill_inferior_command): Use
7802         find_inferior_id instead of valid_gdb_inferior_id and
7803         gdb_inferior_id_to_pid.
7804         (inferior_command): Use inferior and thread pointers.
7805         * inferior.h (struct thread_info): Forward declare.
7806         (notice_new_inferior): Take a thread_info pointer instead of a
7807         ptid_t.  All callers adjusted.
7808         (detach_inferior): Delete declaration.
7809         (exit_inferior, exit_inferior_silent): Take an inferior pointer
7810         instead of a pid.  All callers adjusted.
7811         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
7812         (valid_gdb_inferior_id): Delete.
7813         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
7814         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
7815         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
7816         ...
7817         <inf>: ... this new field.
7818         <step_ptid>: Delete, replaced by ...
7819         <step_thread>: ... this new field.
7820         (get_displaced_stepping_state): Take an inferior pointer instead
7821         of a pid.  All callers adjusted.
7822         (displaced_step_in_progress_any_inferior): Adjust.
7823         (displaced_step_in_progress_thread): Take a thread pointer instead
7824         of a ptid_t.  All callers adjusted.
7825         (displaced_step_in_progress, add_displaced_stepping_state): Take
7826         an inferior pointer instead of a pid.  All callers adjusted.
7827         (get_displaced_step_closure_by_addr): Adjust.
7828         (remove_displaced_stepping_state): Take an inferior pointer
7829         instead of a pid.  All callers adjusted.
7830         (displaced_step_prepare_throw, displaced_step_prepare)
7831         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
7832         All callers adjusted.
7833         (start_step_over): Adjust.
7834         (infrun_thread_ptid_changed): Remove bit updating ptids in the
7835         displaced step queue.
7836         (do_target_resume): Adjust.
7837         (fetch_inferior_event): Use inferior_thread.
7838         (context_switch, get_inferior_stop_soon): Take an
7839         execution_control_state pointer instead of a ptid_t.  All callers
7840         adjusted.
7841         (switch_to_thread_cleanup): Delete.
7842         (stop_all_threads): Use scoped_restore_current_thread.
7843         * inline-frame.c: Include "gdbthread.h".
7844         (inline_state) <inline_state>: Take a thread pointer instead of a
7845         ptid_t.  All callers adjusted.
7846         <ptid>: Delete, replaced by ...
7847         <thread>: ... this new field.
7848         (find_inline_frame_state): Take a thread pointer instead of a
7849         ptid_t.  All callers adjusted.
7850         (skip_inline_frames, step_into_inline_frame)
7851         (inline_skipped_frames, inline_skipped_symbol): Take a thread
7852         pointer instead of a ptid_t.  All callers adjusted.
7853         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
7854         (inline_skipped_frames, inline_skipped_symbol): Likewise.
7855         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
7856         pointers directly.
7857         * linux-nat.c (get_detach_signal): Likewise.
7858         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
7859         (thread_db_notice_clone): Adjust.
7860         (thread_db_find_new_threads_silently)
7861         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
7862         a thread pointer instead of a ptid_t.  All callers adjusted.
7863         * mi/mi-cmd-var.c: Include "inferior.h".
7864         (mi_cmd_var_update_iter): Update to use thread pointers.
7865         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
7866         inferior directly.
7867         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
7868         out to ...
7869         (mi_output_running): ... this new function.
7870         (mi_on_resume_1): Adjust to use it.
7871         (mi_user_selected_context_changed): Adjust to use inferior_thread.
7872         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
7873         directly.
7874         (interrupt_thread_callback): : Adjust to use thread and inferior
7875         pointers.
7876         * proc-service.c: Include "gdbthread.h".
7877         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
7878         * progspace-and-thread.c: Include "inferior.h".
7879         * progspace.c: Include "inferior.h".
7880         * python/py-exitedevent.c (create_exited_event_object): Adjust to
7881         hold a reference to an inferior_object.
7882         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
7883         inferior_thread.
7884         * python/py-inferior.c (struct inferior_object): Give the type a
7885         tag name instead of a typedef.
7886         (python_on_normal_stop): No need to check if the current thread is
7887         listed.
7888         (inferior_to_inferior_object): Change return type to
7889         inferior_object.  All callers adjusted.
7890         (find_thread_object): Delete, bits factored out to ...
7891         (thread_to_thread_object): ... this new function.
7892         * python/py-infthread.c (create_thread_object): Use
7893         inferior_to_inferior_object.
7894         (thpy_is_stopped): Use thread pointer directly.
7895         (gdbpy_selected_thread): Use inferior_thread.
7896         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
7897         field, replaced with ...
7898         <thread>: ... this new field.  All users adjusted.
7899         (btpy_insn_or_gap_new): Drop const.
7900         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
7901         callers adjusted.
7902         * python/py-record.c: Include "gdbthread.h".
7903         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7904         a ptid_t.  All callers adjusted.
7905         (gdbpy_current_recording): Use inferior_thread.
7906         * python/py-record.h (recpy_record_object) <ptid>: Delete
7907         field, replaced with ...
7908         <thread>: ... this new field.  All users adjusted.
7909         (recpy_element_object) <ptid>: Delete
7910         field, replaced with ...
7911         <thread>: ... this new field.  All users adjusted.
7912         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7913         a ptid_t.  All callers adjusted.
7914         * python/py-threadevent.c: Include "gdbthread.h".
7915         (get_event_thread): Use thread_to_thread_object.
7916         * python/python-internal.h (struct inferior_object): Forward
7917         declare.
7918         (find_thread_object, find_inferior_object): Delete declarations.
7919         (thread_to_thread_object, inferior_to_inferior_object): New
7920         declarations.
7921         * record-btrace.c: Include "inferior.h".
7922         (require_btrace_thread): Use inferior_thread.
7923         (record_btrace_frame_sniffer)
7924         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
7925         (get_thread_current_frame): Use scoped_restore_current_thread and
7926         switch_to_thread.
7927         (get_thread_current_frame): Use thread pointer directly.
7928         (record_btrace_replay_at_breakpoint): Use thread's inferior
7929         pointer directly.
7930         * record-full.c: Include "inferior.h".
7931         * regcache.c: Include "gdbthread.h".
7932         (get_thread_arch_regcache): Use the inferior's address space
7933         directly.
7934         (get_thread_regcache, registers_changed_thread): New.
7935         * regcache.h (get_thread_regcache(thread_info *thread)): New
7936         overload.
7937         (registers_changed_thread): New.
7938         (remote_target) <remote_detach_1>: Swap order of parameters.
7939         (remote_add_thread): <remote_add_thread>: Return the new thread.
7940         (get_remote_thread_info(ptid_t)): New overload.
7941         (remote_target::remote_notice_new_inferior): Use thread pointers
7942         directly.
7943         (remote_target::process_initial_stop_replies): Use
7944         thread_info::set_running.
7945         (remote_target::remote_detach_1, remote_target::detach)
7946         (extended_remote_target::detach): Adjust.
7947         * stack.c (frame_show_address): Use inferior_thread.
7948         * target-debug.h (target_debug_print_thread_info_pp): New.
7949         * target-delegates.c: Regenerate.
7950         * target.c (default_thread_address_space): Delete.
7951         (memory_xfer_partial_1): Use current_inferior.
7952         (target_detach): Use current_inferior.
7953         (target_thread_address_space): Delete.
7954         (generic_mourn_inferior): Use current_inferior.
7955         * target.h (struct target_ops) <thread_address_space>: Delete.
7956         (target_thread_address_space): Delete.
7957         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
7958         pointers directly.
7959         (delete_thread_1, delete_thread, delete_thread_silent): Take a
7960         thread pointer instead of a ptid_t.  Adjust all callers.
7961         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
7962         (first_thread_of_process): Delete, replaced by ...
7963         (first_thread_of_inferior): ... this new function.  All callers
7964         adjusted.
7965         (any_thread_of_process): Rename to ...
7966         (any_thread_of_inferior): ... this, and take an inferior pointer.
7967         (any_live_thread_of_process): Rename to ...
7968         (any_live_thread_of_inferior): ... this, and take an inferior
7969         pointer.
7970         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7971         (value_in_thread_stack_temporaries)
7972         (get_last_thread_stack_temporary): Take a thread pointer instead
7973         of a ptid_t.  Adjust all callers.
7974         (thread_info::set_running): New.
7975         (validate_registers_access): Use inferior_thread.
7976         (can_access_registers_ptid): Rename to ...
7977         (can_access_registers_thread): ... this, and take a thread
7978         pointer.
7979         (print_thread_info_1): Adjust to compare thread pointers instead
7980         of ptids.
7981         (switch_to_no_thread, switch_to_thread): Make extern.
7982         (scoped_restore_current_thread::~scoped_restore_current_thread):
7983         Use m_thread pointer directly.
7984         (scoped_restore_current_thread::scoped_restore_current_thread):
7985         Use inferior_thread.
7986         (thread_command): Use thread pointer directly.
7987         (thread_num_make_value_helper): Use inferior_thread.
7988         * top.c (execute_command): Use inferior_thread.
7989         * tui/tui-interp.c: Include "inferior.h".
7990         * varobj.c (varobj_create): Use inferior_thread.
7991         (value_of_root_1): Use find_thread_global_id instead of
7992         global_thread_id_to_ptid.
7993
7994 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
7995
7996         * regcache.c (readable_regcache::read_part): Avoid memcpy when
7997         possible.
7998         (regcache::write_part): Likewise.
7999         (readable_regcache::cooked_read_part): Update comment.
8000         (readable_regcache::cooked_write_part): Likewise.
8001         * regcache.h: (readable_regcache::read_part): Likewise.
8002         (regcache::write_part): Likewise.
8003
8004 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
8005             Dirk Schubert  <dirk.schubert@arm.com>
8006
8007         * aarch64-linux-nat.c (post_attach): New.
8008         (aarch64_linux_nat_target::post_attach): Override post_attach to
8009         record the number of hardware debug registers.
8010
8011 2018-06-20  Tom Tromey  <tom@tromey.com>
8012
8013         * python/py-param.c (add_setshow_generic): Make parameters const.
8014         (parmpy_init): Update.
8015
8016 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
8017
8018         * regcache.h (regcache_cooked_read_ftype): Rename to...
8019         (register_read_ftype): ...this, change type to function_view.
8020         (class reg_buffer) <save>: Remove src parameter.
8021         (readonly_detached_regcache) <readonly_detached_regcache>: Make
8022         parameter non-const in first overload.  Remove src parameter in
8023         second overload.
8024         * regcache.c (do_cooked_read): Remove.
8025         (readonly_detached_regcache::readonly_detached_regcache): Make
8026         parameter non-const, adjust call to other constructor.
8027         (reg_buffer::save): Remove src parameter.
8028         * frame.c (do_frame_register_read): Remove.
8029         (frame_save_as_regcache): Use lambda function.
8030         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
8031         parameter to ppu2spu_data *.
8032         (ppu2spu_sniffer): Use lambda function.
8033
8034 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
8035
8036         * record-full.c (record_full_target::insert_breakpoint): Remove
8037         "struct" keyword, add const.
8038
8039 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
8040
8041         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
8042         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
8043         * configure.ac: Remove AC_PREREQ, add missing quoting.
8044         * gnulib/configure.ac: Modernize usage of
8045         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
8046         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
8047         (AUTOMAKE_VERSION): Bump to 1.15.1.
8048         * configure: Re-generate.
8049         * config.in: Re-generate.
8050         * aclocal.m4: Re-generate.
8051         * gnulib/aclocal.m4: Re-generate.
8052         * gnulib/config.in: Re-generate.
8053         * gnulib/configure: Re-generate.
8054         * gnulib/import/Makefile.in: Re-generate.
8055
8056 2018-06-19  Pedro Alves  <palves@redhat.com>
8057
8058         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
8059         (lookup_minimal_symbol_by_pc_section): ... here with
8060         gdb_assert_not_reached added.
8061
8062 2018-06-19  Pedro Alves  <palves@redhat.com>
8063
8064         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
8065         parameter with a block parameter.  Compare location's block symbol
8066         with the frame's block instead of addresses.
8067         (skip_inline_frames): Pass the current block instead of the
8068         frame's address.  Break out as soon as we determine the frame
8069         should not be skipped.
8070
8071 2018-06-18  Tom Tromey  <tom@tromey.com>
8072
8073         * solib-aix.c (solib_aix_get_section_offsets): Return
8074         unique_xmalloc_ptr.
8075         (solib_aix_solib_create_inferior_hook): Update.
8076
8077 2018-06-18  Tom Tromey  <tom@tromey.com>
8078
8079         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
8080
8081 2018-06-18  Tom Tromey  <tom@tromey.com>
8082
8083         * solib-frv.c (frv_relocate_main_executable): Use
8084         unique_xmalloc_ptr.
8085         * solib-dsbt.c (dsbt_relocate_main_executable): Use
8086         unique_xmalloc_ptr.
8087
8088 2018-06-18  Tom Tromey  <tom@tromey.com>
8089
8090         * objfiles.h (inhibit_section_map_updates): Update.
8091         (resume_section_map_updates, resume_section_map_updates_cleanup):
8092         Remove.
8093         * solib-svr4.c (svr4_handle_solib_event): Update.
8094         * objfiles.c (inhibit_section_map_updates): Return
8095         scoped_restore_tmpl<int>.
8096         (resume_section_map_updates, resume_section_map_updates_cleanup):
8097         Remove.
8098
8099 2018-06-18  Tom Tromey  <tom@tromey.com>
8100
8101         * valprint.h (read_string): Update.
8102         * valprint.c (read_string): Change type of "buffer".
8103         (val_print_string): Update.
8104         * python/py-value.c (valpy_string): Update.
8105         * language.h (struct language_defn) <la_get_string>: Change
8106         type of "buffer".
8107         (default_get_string, c_get_string): Update.
8108         * language.c (default_get_string): Change type of "buffer".
8109         * guile/scm-value.c (gdbscm_value_to_string): Update.
8110         * c-lang.c (c_get_string): Change type of "buffer".
8111
8112 2018-06-18  Tom Tromey  <tom@tromey.com>
8113
8114         * ser-mingw.c (struct pipe_state_destroyer): New.
8115         (pipe_state_up): New typedef.
8116         (cleanup_pipe_state): Remove.
8117         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
8118
8119 2018-06-18  Tom Tromey  <tom@tromey.com>
8120
8121         * rust-lang.h (rust_yyerror): Don't declare.
8122         * rust-lang.c (rust_language_defn): Update.
8123         * rust-exp.y (yyerror): Now static.
8124         * parse.c (parse_exp_in_context_1): Update.
8125         * p-lang.h (p_yyerror): Don't declare.
8126         * p-lang.c (p_language_defn): Update.
8127         * p-exp.y (yyerror): Now static.
8128         * opencl-lang.c (opencl_language_defn): Update.
8129         * objc-lang.c (objc_language_defn): Update.
8130         * m2-lang.h (m2_yyerror): Don't declare.
8131         * m2-lang.c (m2_language_defn): Update.
8132         * m2-exp.y (yyerror): Now static.
8133         * language.h (struct language_defn) <la_error>: Remove.
8134         * language.c (unk_lang_error): Remove.
8135         (unknown_language_defn, auto_language_defn): Remove.
8136         * go-lang.h (go_yyerror): Don't declare.
8137         * go-lang.c (go_language_defn): Update.
8138         * go-exp.y (yyerror): Now static.
8139         * f-lang.h (f_yyerror): Don't declare.
8140         * f-lang.c (f_language_defn): Update.
8141         * f-exp.y (yyerror): Now static.
8142         * d-lang.h (d_yyerror): Don't declare.
8143         * d-lang.c (d_language_defn): Update.
8144         * d-exp.y (yyerror): Now static.
8145         * c-lang.h (c_yyerror): Don't declare.
8146         * c-lang.c (c_language_defn, cplus_language_defn)
8147         (asm_language_defn, minimal_language_defn): Update.
8148         * c-exp.y (yyerror): Now static.
8149         * ada-lang.h (ada_yyerror): Don't declare.
8150         * ada-lang.c (ada_language_defn): Update.
8151         * ada-exp.y (yyerror): Now static.
8152
8153 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
8154
8155         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
8156         (store_sveregs_to_thread): Likewise.
8157         (aarch64_linux_fetch_inferior_registers): Check for SVE.
8158         (aarch64_linux_store_inferior_registers): Likewise.
8159         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
8160         function.
8161         (aarch64_sve_regs_copy_to_regcache): Likewise.
8162         (aarch64_sve_regs_copy_from_regcache): Likewise.
8163         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
8164         declaration.
8165         (aarch64_sve_regs_copy_to_regcache): Likewise.
8166         (aarch64_sve_regs_copy_from_regcache): Likewise.
8167         (sve_context): Structure from Linux headers.
8168         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
8169         (SVE_SIG_ZREG_SIZE): Likewise.
8170         (SVE_SIG_PREG_SIZE): Likewise.
8171         (SVE_SIG_FFR_SIZE): Likewise.
8172         (SVE_SIG_REGS_OFFSET): Likewise.
8173         (SVE_SIG_ZREGS_OFFSET): Likewise.
8174         (SVE_SIG_ZREG_OFFSET): Likewise.
8175         (SVE_SIG_ZREGS_SIZE): Likewise.
8176         (SVE_SIG_PREGS_OFFSET): Likewise.
8177         (SVE_SIG_PREG_OFFSET): Likewise.
8178         (SVE_SIG_PREGS_SIZE): Likewise.
8179         (SVE_SIG_FFR_OFFSET): Likewise.
8180         (SVE_SIG_REGS_SIZE): Likewise.
8181         (SVE_SIG_CONTEXT_SIZE): Likewise.
8182         (SVE_PT_REGS_MASK): Likewise.
8183         (SVE_PT_REGS_FPSIMD): Likewise.
8184         (SVE_PT_REGS_SVE): Likewise.
8185         (SVE_PT_VL_INHERIT): Likewise.
8186         (SVE_PT_VL_ONEXEC): Likewise.
8187         (SVE_PT_REGS_OFFSET): Likewise.
8188         (SVE_PT_FPSIMD_OFFSET): Likewise.
8189         (SVE_PT_FPSIMD_SIZE): Likewise.
8190         (SVE_PT_SVE_ZREG_SIZE): Likewise.
8191         (SVE_PT_SVE_PREG_SIZE): Likewise.
8192         (SVE_PT_SVE_FFR_SIZE): Likewise.
8193         (SVE_PT_SVE_FPSR_SIZE): Likewise.
8194         (SVE_PT_SVE_FPCR_SIZE): Likewise.
8195         (__SVE_SIG_TO_PT): Likewise.
8196         (SVE_PT_SVE_OFFSET): Likewise.
8197         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
8198         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
8199         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
8200         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
8201         (SVE_PT_SVE_PREG_OFFSET): Likewise.
8202         (SVE_PT_SVE_PREGS_SIZE): Likewise.
8203         (SVE_PT_SVE_FFR_OFFSET): Likewise.
8204         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
8205         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
8206         (SVE_PT_SVE_SIZE): Likewise.
8207         (SVE_PT_SIZE): Likewise.
8208         (HAS_SVE_STATE): New define.
8209
8210 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
8211
8212         * nat/aarch64-sve-linux-sigcontext.h: New file.
8213         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
8214         new files.
8215         (SVE_VQ_MIN): Likewise.
8216         (SVE_VQ_MAX): Likewise.
8217         (SVE_VL_MIN): Likewise.
8218         (SVE_VL_MAX): Likewise.
8219         (SVE_NUM_ZREGS): Likewise.
8220         (SVE_NUM_PREGS): Likewise.
8221         (sve_vl_valid): Likewise.
8222         (struct user_sve_header): Likewise.
8223
8224 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
8225             Richard Bunt <Richard.Bunt@arm.com>
8226
8227         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
8228         was requested by GDB.
8229
8230 2018-06-15  Tom de Vries  <tdevries@suse.de>
8231
8232         * MAINTAINERS (Write After Approval): Add Tom de Vries.
8233
8234 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
8235
8236         * gnulib/update-gnulib.sh: Print expected versions of
8237         autoconf/aclocal.
8238
8239 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
8240
8241         * arch-utils.c (default_type_align): Use type_length_units.
8242         * gdbtypes.c (type_align): Use type_length_units.
8243
8244 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8245
8246         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
8247         of 'define' command.
8248
8249 2018-06-14  Tom de Vries  <tdevries@suse.de>
8250
8251         PR cli/22573
8252         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
8253         get_no_prettyformat_print_options.
8254
8255 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
8256
8257         * sparc-nat.h: Include target.h.
8258         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
8259         <fetch_registers>: Remove this argument in function call.
8260         <store_registers>: Remove this argument in function call, remove
8261         extra semicolon.
8262         <low_forget_process>: Call sparc64_forget_process instead of
8263         sparc_forget_process.
8264
8265 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
8266
8267         * procfs.c (_initialize_procfs): Use add_inf_child_target.
8268         (procfs_target::make_corefile_notes): Adjust to new
8269         target_read_alloc return type.
8270
8271 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8272             Stephen Roberts  <stephen.roberts@arm.com>
8273
8274         PR gdb/22882
8275         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
8276         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
8277         Move should_notify_stop local into more inner scope.
8278
8279 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8280             Stephen Roberts  <stephen.roberts@arm.com>
8281
8282         PR gdb/22882
8283         * infrun.c (resume_1): Add call to mark_async_event_handler.
8284
8285 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8286
8287         * infrun.c (do_target_wait): Change old version of $pc printed.
8288
8289 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
8290
8291         * dwarf2read.c (read_index_from_section): Rename to...
8292         (read_gdb_index_from_section): ... this, update all callers.
8293         (dwarf2_read_index): Rename to...
8294         (dwarf2_read_gdb_index): ... this, update all callers.
8295
8296 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
8297
8298         * hppa-linux-nat.c
8299         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
8300         hppa_linux_nat_target::fetch_registers.
8301
8302 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8303
8304         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
8305         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
8306         (AARCH64_DWARF_SVE_FFR): Likewise.
8307         (AARCH64_DWARF_SVE_P0): Likewise.
8308         (AARCH64_DWARF_SVE_Z0): Likewise.
8309
8310 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8311
8312         * common/common-regcache.h (raw_compare): New function.
8313         * regcache.c (regcache::raw_compare): Likewise.
8314         * regcache.h (regcache::raw_compare): New declaration.
8315
8316 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8317
8318         * common/common-regcache.h (reg_buffer_common): New structure.
8319         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
8320         (reg_buffer::raw_supply): Likewise.
8321         (reg_buffer::raw_supply_integer): Likewise.
8322         (reg_buffer::raw_supply_zeroed): Likewise.
8323         (reg_buffer::raw_collect): Likewise.
8324         (reg_buffer::raw_collect_integer): Likewise.
8325         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
8326         (reg_buffer::raw_supply): Likewise.
8327         (reg_buffer::raw_supply_integer): Likewise.
8328         (reg_buffer::raw_supply_zeroed): Likewise.
8329         (reg_buffer::raw_collect): Likewise.
8330         (reg_buffer::raw_collect_integer): Likewise.
8331
8332 2018-06-10  Tom Tromey  <tom@tromey.com>
8333
8334         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
8335         (class remote_state) <stop_reply_queue>: Now std::vector.
8336         (remote_state::~remote_state)
8337         (remote_target::stop_reply_queue_length): Update.
8338         (struct queue_iter_param, remove_child_of_pending_fork)
8339         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
8340         (check_pending_event_prevents_wildcard_vcont_callback)
8341         (remove_stop_reply_for_inferior)
8342         (remove_stop_reply_of_remote_state)
8343         (remote_notif_remove_once_on_match)
8344         (stop_reply_match_ptid_and_ws)
8345         (remote_kill_child_of_pending_fork): Remove.
8346         (remote_target::remove_new_fork_children)
8347         (remote_target::check_pending_events_prevent_wildcard_vcont)
8348         (remote_target::discard_pending_stop_replies)
8349         (remote_target::discard_pending_stop_replies_in_queue)
8350         (remote_target::remote_notif_remove_queued_reply)
8351         (remote_target::queued_stop_reply)
8352         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
8353         (remote_target::wait, remote_target::kill_new_fork_children)
8354         (remote_target::async): Update.
8355
8356 2018-06-10  Tom Tromey  <tom@tromey.com>
8357
8358         * record-full.c (record_full_arch_list_cleanups): Remove.
8359         (record_full_message): Use try/catch.
8360         (record_full_wait_cleanups): Remove.
8361         (record_full_wait_1): Use try/catch.
8362         (record_full_restore): Likewise.
8363
8364 2018-06-10  Tom Tromey  <tom@tromey.com>
8365
8366         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
8367         declare VEC.  Add constructor.
8368         <in_target_beneath>: Now bool.
8369         (record_full_breakpoints): Now a std::vector, static.
8370         (record_full_sync_record_breakpoints)
8371         (record_full_init_record_breakpoints)
8372         (record_full_target::insert_breakpoint)
8373         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
8374
8375 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
8376
8377         * dwarf2read.c (process_cu_includes): Remove struct keyword.
8378         * serial.c (serial_interface_lookup): Remove struct keyword.
8379
8380 2018-06-10  Tom Tromey  <tom@tromey.com>
8381
8382         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
8383         method.
8384         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
8385         a method.
8386         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
8387         method.
8388         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
8389         "beneath" as a method.
8390         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
8391         Use "beneath" as a method.
8392
8393 2018-06-10  Tom Tromey  <tom@tromey.com>
8394
8395         * tracefile.c (struct trace_file_writer_deleter): New.
8396         <operator()>: Rename from trace_file_writer_xfree.
8397         (trace_file_writer_up): New typedef.
8398         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
8399
8400 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8401
8402         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
8403         <m_registers, m_register_status>: Change type to
8404         std::unique_ptr.
8405         * regcache.c (reg_buffer::reg_buffer): Use new instead of
8406         XCNEWVEC.
8407
8408 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8409
8410         * common/common-regcache.h (enum register_status): Add
8411         underlying type "signed char".
8412         * regcache.h (reg_buffer) <m_register_status>: Change type to
8413         register_status *.
8414         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
8415         register_status instead of signed char.
8416         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
8417         (reg_buffer::get_register_status): Remove cast.
8418         (readable_regcache::raw_read): Remove cast.
8419         (readable_regcache::cooked_read): Remove cast.
8420
8421 2018-06-09  Tom Tromey  <tom@tromey.com>
8422
8423         * source.c (reverse_search_command, forward_search_command): Use
8424         scoped_fd.
8425
8426 2018-06-09  Tom Tromey  <tom@tromey.com>
8427
8428         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
8429         (serial_ops_list): Now static, std::vector.
8430         (serial_interface_lookup, serial_add_interface): Update.
8431
8432 2018-06-09  Tom Tromey  <tom@tromey.com>
8433
8434         * dwarf2read.c (process_cu_includes): Update.
8435         (process_full_comp_unit): Update.
8436         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
8437         std::vector.
8438
8439 2018-06-08  Paul Koning  <paul_koning@dell.com>
8440
8441         PR gdb/23252
8442
8443         * python/python.c (do_start_initialization):
8444         Avoid call to internal Python API.
8445         (init__gdb_module): New function.
8446
8447 2018-06-08  Gary Benson <gbenson@redhat.com>
8448
8449         * linux-thread-db.c (valprint.h): New include.
8450         (struct check_thread_db_info): New structure.
8451         (check_thread_db_on_load, tdb_testinfo): New static globals.
8452         (check_thread_db, check_thread_db_callback): New functions.
8453         (try_thread_db_load_1): Run integrity checks if requested.
8454         (maintenance_check_libthread_db): New function.
8455         (_initialize_thread_db): Register "maint check libthread-db"
8456         and "maint set/show check-libthread-db".
8457         * NEWS: Mention the above new commands.
8458
8459 2018-06-08  Tom Tromey  <tom@tromey.com>
8460
8461         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
8462         now a method.
8463
8464 2018-06-08  Tom Tromey  <tom@tromey.com>
8465
8466         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
8467
8468 2018-06-08  Tom Tromey  <tom@tromey.com>
8469
8470         * common/btrace-common.h (struct btrace_data): Add constructor,
8471         destructor, move assignment operator.
8472         <empty, clear, fini>: New methods.
8473         <format>: Initialize.
8474         (btrace_data_init, btrace_data_fini, btrace_data_clear)
8475         (btrace_data_empty): Don't declare.
8476         * common/btrace-common.c (btrace_data_init): Remove.
8477         (btrace_data::fini): Rename from btrace_data_fini.
8478         (btrace_data::empty): Rename from btrace_data_empty.
8479         (btrace_data::clear): Rename from btrace_data_clear.  Return
8480         bool.
8481         * btrace.h (make_cleanup_btrace_data): Don't declare.
8482         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
8483         (parse_xml_btrace): Update.
8484         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
8485         (maint_btrace_clear_packet_history_cmd): Update.
8486
8487 2018-06-07  Pedro Alves  <palves@redhat.com>
8488
8489         * target.h (target_ops) <beneath>: Now a method.  All references
8490         updated.
8491         (class target_stack): New.
8492         * target.c (g_target_stack): New.
8493         (g_current_top_target): Delete.
8494         (current_top_target): Get the top target out of g_target_stack.
8495         (target_stack::push, target_stack::unpush): New.
8496         (push_target, unpush_target): Reimplement.
8497         (target_is_pushed): Reimplement in terms of g_target_stack.
8498         (target_ops::beneath, target_stack::find_beneath): New.
8499
8500 2018-06-07  Pedro Alves  <palves@redhat.com>
8501
8502         * target.h (find_target_beneath): Delete declaration.
8503         * target.c (find_target_beneath): Delete definition.
8504         * aix-thread.c: All callers of find_target_beneath adjusted to
8505         call target_ops::beneath instead.
8506         * bsd-uthread.c: Likewise.
8507         * linux-thread-db.c: Likewise.
8508         * ravenscar-thread.c: Likewise.
8509         * sol-thread.c: Likewise.
8510         * spu-multiarch.c: Likewise.
8511
8512 2018-06-07  Pedro Alves  <palves@redhat.com>
8513
8514         * target.h (target_ops) <beneath>: Now a method.  All references
8515         updated.
8516         (target_ops) <m_beneath>: New.
8517         * target.c (target_ops::beneath): New.
8518         * corelow.c: Adjust all references to target_ops::beneath.
8519         * linux-thread-db.c: Likewise.
8520         * make-target-delegates: Likewise.
8521         * record-btrace.c: Likewise.
8522         * record-full.c: Likewise.
8523         * remote.c: Likewise.
8524         * target.c: Likewise.
8525         * target-delegates.c: Regenerate.
8526
8527 2018-06-07  Pedro Alves  <palves@redhat.com>
8528
8529         * target.h (target_stack): Delete.
8530         (current_top_target): Declare function.
8531         * target.c (target_stack): Delete.
8532         (g_current_top_target): New.
8533         (current_top_target): New function.
8534         * auxv.c: Use current_top_target instead of target_stack
8535         throughout.
8536         * avr-tdep.c: Likewise.
8537         * breakpoint.c: Likewise.
8538         * corefile.c: Likewise.
8539         * elfread.c: Likewise.
8540         * eval.c: Likewise.
8541         * exceptions.c: Likewise.
8542         * frame.c: Likewise.
8543         * gdbarch-selftests.c: Likewise.
8544         * gnu-v3-abi.c: Likewise.
8545         * ia64-tdep.c: Likewise.
8546         * ia64-vms-tdep.c: Likewise.
8547         * infcall.c: Likewise.
8548         * infcmd.c: Likewise.
8549         * infrun.c: Likewise.
8550         * linespec.c: Likewise.
8551         * linux-tdep.c: Likewise.
8552         * minsyms.c: Likewise.
8553         * ppc-linux-nat.c: Likewise.
8554         * ppc-linux-tdep.c: Likewise.
8555         * procfs.c: Likewise.
8556         * regcache.c: Likewise.
8557         * remote.c: Likewise.
8558         * rs6000-tdep.c: Likewise.
8559         * s390-linux-nat.c: Likewise.
8560         * s390-tdep.c: Likewise.
8561         * solib-aix.c: Likewise.
8562         * solib-darwin.c: Likewise.
8563         * solib-dsbt.c: Likewise.
8564         * solib-spu.c: Likewise.
8565         * solib-svr4.c: Likewise.
8566         * solib-target.c: Likewise.
8567         * sparc-tdep.c: Likewise.
8568         * sparc64-tdep.c: Likewise.
8569         * spu-tdep.c: Likewise.
8570         * symfile.c: Likewise.
8571         * symtab.c: Likewise.
8572         * target-descriptions.c: Likewise.
8573         * target-memory.c: Likewise.
8574         * target.c: Likewise.
8575         * target.h: Likewise.
8576         * tracefile-tfile.c: Likewise.
8577         * tracepoint.c: Likewise.
8578         * valops.c: Likewise.
8579         * valprint.c: Likewise.
8580         * value.c: Likewise.
8581         * windows-tdep.c: Likewise.
8582         * mi/mi-main.c: Likewise.
8583
8584 2018-06-07  Tom Tromey  <tom@tromey.com>
8585
8586         * valprint.h (build_address_symbolic): Declare.
8587         * printcmd.c (print_address_symbolic): Update.
8588         (build_address_symbolic): Change "name" and "filename" to
8589         std::string.
8590         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
8591         Update.
8592         * defs.h (build_address_symbolic): Remove declaration.
8593
8594 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
8595
8596         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
8597         (aarch64_vnv_type): Add function.
8598         (aarch64_pseudo_register_name): Add V regs for SVE.
8599         (aarch64_pseudo_register_type): Likewise.
8600         (aarch64_pseudo_register_reggroup_p): Likewise.
8601         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
8602         (aarch64_pseudo_read_value): Add V regs for SVE.
8603         (aarch64_pseudo_write_2): Use V0 offset for SVE
8604         (aarch64_pseudo_write): Add V regs for SVE.
8605         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
8606
8607 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
8608
8609         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
8610         (sve_vl_from_vq): Likewise.
8611
8612 2018-06-05  Tom Tromey  <tom@tromey.com>
8613
8614         * cli/cli-cmds.c (show_version): Update.
8615         * top.c (print_gdb_version): Add "interactive" parameter.
8616         Update.
8617         * main.c (captured_main_1): Update.
8618         * top.h (print_gdb_version): Add "interactive" parameter and a
8619         comment.
8620
8621 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
8622
8623         * common/enum-flags.h: Add trailing semicolon to example in
8624         comment.
8625
8626 2018-06-05  Tom Tromey  <tom@tromey.com>
8627
8628         PR cli/12326:
8629         * NEWS: Add entry about pager.
8630         * utils.c (pagination_disabled_for_command): New global.
8631         (prompt_for_continue): Allow "c" response to prompt.
8632         (reinitialize_more_filter): Clear
8633         pagination_disabled_for_command.
8634         (fputs_maybe_filtered): Check pagination_disabled_for_command.
8635
8636 2018-06-04  Tom Tromey  <tom@tromey.com>
8637
8638         * ada-lang.h (ada_lookup_symbol_list): Update.
8639         * ada-lang.c (resolve_subexp): Update.
8640         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
8641         parameter.
8642         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
8643         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
8644         results parameter to std::vector.
8645         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
8646         Update.
8647         * ada-exp.y (block_lookup): Update.
8648         (select_possible_type_sym): Change type of syms.  Remove nsyms
8649         parameter.
8650         (write_var_or_type, write_name_assoc): Update.
8651
8652 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
8653
8654         * windows-nat.c (windows_nat_target::xfer_partial): Return
8655         TARGET_XFER_E_IO if we need to delegate to the target beneath
8656         but BENEATH is NULL.
8657
8658 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
8659
8660         * Makefile.in (config.status): Add configure.nat as a
8661         dependency.
8662
8663 2018-06-04  Tom Tromey  <tom@tromey.com>
8664
8665         * cp-name-parser.y (cpname_state): Add method declarations.
8666         (HANDLE_QUAL): Update.
8667         (cpname_state::d_grab, cpname_state::fill_comp)
8668         (cpname_state::make_operator, cpname_state::make_dtor)
8669         (cpname_state::make_builtin_type, cpname_state::make_name)
8670         (cpname_state::d_qualify, cpname_state::d_int_type)
8671         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
8672         (%union): Move earlier.
8673
8674 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8675
8676         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
8677
8678 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8679
8680         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
8681         (aarch64_pseudo_write_1): Likewise.
8682         (aarch64_pseudo_read_value): Use helper.
8683         (aarch64_pseudo_write): Likewise.
8684
8685 2018-06-04  Pedro Alves  <palves@redhat.com>
8686
8687         * darwin-nat.c (darwin_ops): Delete.
8688         (darwin_attach_pid): Use get_native_target.
8689
8690 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8691
8692         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
8693         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
8694
8695 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8696
8697         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
8698         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
8699         (aarch64_gdbarch_init): Check for SVE.
8700         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
8701
8702 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8703
8704         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
8705         * aarch64-tdep.h (aarch64_read_description): Likewise.
8706         * arch/aarch64.c (aarch64_create_target_description): Likewise.
8707         * arch/aarch64.h (aarch64_create_target_description): Likewise.
8708         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
8709         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
8710         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
8711
8712 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
8713
8714         * value.c (value_fetch_lazy_bitfield): New.
8715         (value_fetch_lazy_memory): New.
8716         (value_fetch_lazy_register): New.
8717         (value_fetch_lazy): Factor out to smaller functions.
8718
8719 2018-06-01  Tom Tromey  <tom@tromey.com>
8720
8721         * cp-name-parser.y (backslashable, represented): Now const.
8722
8723 2018-06-01  Tom Tromey  <tom@tromey.com>
8724
8725         * cp-name-parser.y: Include parser-defs.h.
8726         (parser_fprintf): Remove declaration.
8727
8728 2018-06-01  Tom Tromey  <tom@tromey.com>
8729
8730         * cp-name-parser.y: Use %pure-parser, %lex-param, and
8731         %parse-param.
8732         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
8733         (global_result): Remove globals.
8734         (struct cpname_state): New.
8735         (yyparse): Don't declare.
8736         (yylex, yyerror): Move declarations after %union.
8737         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
8738         (make_name): Add state parameter.
8739         Update all callers.
8740         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
8741         parameter.
8742         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
8743         Update.
8744         (yylex): Add lvalp, state parameters.
8745         (yyerror): Add state parameter.
8746         (cp_demangled_name_to_comp): Update.
8747
8748 2018-06-01  Tom Tromey  <tom@tromey.com>
8749
8750         * cp-name-parser.y (parser_fprintf): Declare.
8751         (GDB_YY_REMAP_PREFIX): Define.
8752         Include yy-remap.h.  Don't redefine yy* identifiers.
8753
8754 2018-06-01  Tom Tromey  <tom@tromey.com>
8755
8756         * python/py-type.c (typy_legacy_template_argument): Update.
8757         * cp-support.h (cp_demangled_name_to_comp): Update.
8758         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
8759         parameter to be a "std::string *".
8760         (main): Update.
8761
8762 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
8763
8764         * ada-lex.l: Include "diagnostics.h" instead of
8765         "common/diagnostics.h".
8766         * unittests/environ-selftests.c: Likewise.
8767         * common/diagnostics.h: Moved to ../include.
8768
8769 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
8770
8771         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
8772         to language_mode_manual while calling breakpoint_re_set_one.
8773
8774 2018-06-01  Tom Tromey  <tom@tromey.com>
8775
8776         * valops.c (value_cast_structs, destructor_name_p): Update.
8777         * symtab.c (gdb_mangle_name): Update.
8778         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
8779         Update.
8780         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
8781         (pascal_object_print_value_fields, pascal_object_print_value):
8782         Update.
8783         * p-typeprint.c (pascal_type_print_derivation_info): Update.
8784         * linespec.c (find_methods): Update.
8785         * gdbtypes.h (type_name_no_tag): Remove.
8786         (type_name_or_error): Rename from type_name_no_tag_or_error.
8787         * gdbtypes.c (type_name_no_tag): Remove.
8788         (type_name_or_error): Rename from type_name_no_tag_or_error.
8789         (lookup_struct_elt_type, check_typedef): Update.
8790         * expprint.c (print_subexp_standard): Update.
8791         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
8792         * d-namespace.c (d_lookup_nested_symbol): Update.
8793         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
8794         (cp_print_class_member): Update.
8795         * cp-namespace.c (cp_lookup_nested_symbol): Update.
8796         * completer.c (add_struct_fields): Update.
8797         * c-typeprint.c (cp_type_print_derivation_info)
8798         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
8799         Update.
8800         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
8801         (ada_prefer_type, ada_is_exception_sym): Update.
8802
8803 2018-06-01  Tom Tromey  <tom@tromey.com>
8804
8805         * valops.c (enum_constant_from_type, value_namespace_elt)
8806         (value_maybe_namespace_elt): Update.
8807         * valarith.c (find_size_for_pointer_math): Update.
8808         * target-descriptions.c (make_gdb_type): Update.
8809         * symmisc.c (print_symbol): Update.
8810         * stabsread.c (define_symbol, read_type)
8811         (complain_about_struct_wipeout, add_undefined_type)
8812         (cleanup_undefined_types_1): Update.
8813         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
8814         (rust_range_type_p, val_print_struct, rust_print_struct_def)
8815         (rust_internal_print_type, rust_composite_type)
8816         (rust_evaluate_funcall, rust_evaluate_subexp)
8817         (rust_inclusive_range_type_p): Update.
8818         * python/py-type.c (typy_get_tag): Update.
8819         * p-typeprint.c (pascal_type_print_base): Update.
8820         * mdebugread.c (parse_symbol, parse_type): Update.
8821         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
8822         Update.
8823         * guile/scm-type.c (gdbscm_type_tag): Update.
8824         * go-lang.c (sixg_string_p): Update.
8825         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
8826         Update.
8827         * gdbtypes.h (struct main_type) <tag_name>: Remove.
8828         (TYPE_TAG_NAME): Remove.
8829         * gdbtypes.c (type_name_no_tag): Simplify.
8830         (check_typedef, check_types_equal, recursive_dump_type)
8831         (copy_type_recursive, arch_composite_type): Update.
8832         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
8833         in summary mode when needed.
8834         * eval.c (evaluate_funcall): Update.
8835         * dwarf2read.c (fixup_go_packaging, read_structure_type)
8836         (process_structure_scope, read_enumeration_type)
8837         (read_namespace_type, read_module_type, determine_prefix): Update.
8838         * cp-support.c (inspect_type): Update.
8839         * coffread.c (process_coff_symbol, decode_base_type): Update.
8840         * c-varobj.c (c_is_path_expr_parent): Update.
8841         * c-typeprint.c (c_type_print_base_struct_union): Update.
8842         (c_type_print_base_1): Update.  Print struct/class/union/enum in
8843         summary when using C language.
8844         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
8845         (gen_maybe_namespace_elt): Update.
8846         * ada-lang.c (ada_type_name): Simplify.
8847         (empty_record, ada_template_to_fixed_record_type_1)
8848         (template_to_static_fixed_type)
8849         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
8850
8851 2018-06-01  Tom Tromey  <tom@tromey.com>
8852
8853         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
8854         c_print_type.
8855         * c-typeprint.c (c_print_type_1): Add "language" parameter.
8856         (c_print_type): Update.
8857         (c_print_type): New overload.
8858         (c_type_print_varspec_prefix, c_type_print_args)
8859         (c_type_print_varspec_suffix, c_print_type_no_offsets)
8860         (c_type_print_base_struct_union, c_type_print_base_1)
8861         (cp_type_print_method_args): Add "language" parameter.
8862         (c_type_print_base): Update.
8863         * c-lang.h (c_print_type): Add new overload.
8864
8865 2018-06-01  Tom Tromey  <tom@tromey.com>
8866
8867         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
8868         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
8869
8870 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
8871
8872         * aarch64-tdep.c (aarch64_sve_register_names): New const
8873         var.
8874         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
8875         (AARCH64_SVE_Z_REGS_NUM): New define.
8876         (AARCH64_SVE_P_REGS_NUM): Likewise.
8877         (AARCH64_SVE_NUM_REGS): Likewise.
8878
8879 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
8880
8881         * nat/linux-ptrace.h [__alpha__]
8882         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
8883         definitions.
8884
8885 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
8886
8887         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
8888         the endianness selected.
8889         * NEWS: Document `set endian auto' mode operation update.
8890
8891 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8892
8893         * Makefile.in: Add new header.
8894         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
8895         (sve_vl_from_vg): Likewise.
8896         (sve_vq_from_vl): Likewise.
8897         (sve_vl_from_vq): Likewise.
8898         (sve_vq_from_vg): Likewise.
8899         (sve_vg_from_vq): Likewise.
8900         * configure.nat: Add new c file.
8901         * nat/aarch64-sve-linux-ptrace.c: New file.
8902         * nat/aarch64-sve-linux-ptrace.h: New file.
8903
8904 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8905
8906         * aarch64-linux-nat.c (aarch64_linux_read_description):
8907         Add parmeter zero.
8908         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
8909         Likewise.
8910         * aarch64-tdep.c (tdesc_aarch64_list): Add.
8911         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
8912         (aarch64_gdbarch_init): Add parmeter zero.
8913         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
8914         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
8915         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
8916         parmeter.
8917         * doc/gdb.texinfo: Describe SVE feature
8918         * features/aarch64-sve.c: New file.
8919
8920 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
8921
8922         PR gdb/23210
8923         * gdbarch.sh (significant_addr_bit): Default to zero when
8924         not set by target architecture.
8925         * gdbarch.c: Re-generated.
8926         * utils.c (address_significant): Update.
8927
8928 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
8929
8930         * stack.c (func_command): Remove trailing newline in call to error.
8931
8932 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8933
8934         * regcache.h (regcache_raw_collect): Remove, update callers to
8935         use regcache::raw_collect.
8936         * regcache.c (regcache_raw_collect): Remove.
8937
8938 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8939
8940         * regcache.h (regcache_raw_supply): Remove, update callers to
8941         use detached_regcache::raw_supply.
8942         * regcache.c (regcache_raw_supply): Remove.
8943
8944 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8945
8946         * regcache.h (regcache_cooked_write_part): Remove, update
8947         callers to use regcache::cooked_write_part.
8948         * regcache.c (regcache_cooked_write_part): Remove.
8949
8950 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8951
8952         * regcache.h (regcache_cooked_read_part): Remove, update callers
8953         to use readable_regcache::cooked_read_part.
8954         * regcache.c (regcache_cooked_read_part): Remove.
8955
8956 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8957
8958         * regcache.h (regcache_cooked_read_value): Remove, update
8959         callers to use readable_regcache::cooked_read_value.
8960         * regcache.c (regcache_cooked_read_value): Remove.
8961
8962 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8963
8964         * regcache.h (regcache_cooked_write): Remove, update callers to
8965         use regcache::cooked_write.
8966         * regcache.c (regcache_cooked_write): Remove.
8967
8968 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8969
8970         * regcache.h (regcache_invalidate): Remove, update callers to
8971         use detached_regcache::invalidate instead.
8972         * regcache.c (regcache_invalidate): Remove.
8973
8974 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8975
8976         * regcache.h (regcache_raw_write_part): Remove, update callers
8977         to use regcache::raw_write_part instead.
8978         * regcache.c (regcache_raw_write_part): Remove.
8979
8980 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8981
8982         * regcache.h (regcache_raw_read_part): Remove, update callers to
8983         use readable_regcache::raw_read_part instead.
8984         * regcache.c (regcache_raw_read_part): Remove.
8985
8986 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8987
8988         * regcache.h (regcache_cooked_read): Remove, update callers to
8989         use readable_regcache::cooked_read instead.
8990         * regcache.c (regcache_cooked_read): Remove.
8991
8992 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8993
8994         * regcache.h (regcache_raw_write): Remove, update callers to use
8995         regcache::raw_write instead.
8996         * regcache.c (regcache_raw_write): Remove.
8997
8998 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8999
9000         * regcache.h (regcache_raw_read): Remove, update callers to use
9001         readable_regcache::raw_read instead.
9002         * regcache.c (regcache_raw_read): Remove.
9003
9004 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9005
9006         * regcache.h (regcache_raw_update): Remove, update callers to
9007         use readable_regcache::raw_update instead.
9008         * regcache.c (regcache_raw_update): Remove.
9009
9010 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9011
9012         * regcache.h (regcache_register_status): Remove, update callers
9013         to use reg_buffer::get_register_status directly instead.
9014         * regcache.c (regcache_register_status): Remove.
9015
9016 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9017
9018         * regcache.h (regcache_get_ptid): Remove, update all callers to
9019         call regcache::ptid instead.
9020         * regcache.c (regcache_get_ptid): Remove.
9021
9022 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9023
9024         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
9025
9026 2018-05-30  Pedro Alves  <palves@redhat.com>
9027
9028         * common/common-exceptions.h (exception_rethrow): Use
9029         ATTRIBUTE_NORETURN.
9030
9031 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
9032
9033         * breakpoint.c (print_solib_event, check_status_catch_solib):
9034         Remove struct keyword in range-based for loops.
9035         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
9036         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
9037         Likewise.
9038         * linespec.c (find_superclass_methods, search_minsyms_for_name):
9039         Likewise.
9040         * symfile.c (addr_info_make_relative): Likewise.
9041         * thread.c (value_in_thread_stack_temporaries): Likewise.
9042
9043 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
9044
9045         PR gdb/16841
9046         * valops.c (value_struct_elt_for_reference): Call check_typedef on
9047         aggregate type to get its real type before accessing it.
9048
9049 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
9050
9051         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
9052         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
9053         * coff-pe-read.c (add_pe_forwarded_sym): Replace
9054         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
9055         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
9056         * jit.c (jit_breakpoint_re_set_internal): Likewise.
9057         * printcmd.c (info_address_command): Likewise.
9058
9059 2018-05-29  Tom Tromey  <tom@tromey.com>
9060
9061         * windows-nat.c (handle_exception): Update fall-through comment.
9062
9063 2018-05-29  Tom Tromey  <tom@tromey.com>
9064
9065         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
9066         (struct program_space) <added_solibs>: Now a std::vector.
9067         * breakpoint.c (print_solib_event): Update.
9068         (check_status_catch_solib): Update.
9069         * progspace.c (clear_program_space_solib_cache): Update.
9070         * solib.c (update_solib_list): Update.
9071
9072 2018-05-29  Tom Tromey  <tom@tromey.com>
9073
9074         * python/py-type.c (typy_richcompare): Update.
9075         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
9076         * gdbtypes.h (types_deeply_equal): Return bool.
9077         (types_equal): Likewise.
9078         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
9079         declare VEC.
9080         (check_types_equal): Change worklist to std::vector.  Return
9081         bool.
9082         (struct type_equality_entry): Add constructor.
9083         (compare_maybe_null_strings): Return bool.
9084         (check_types_worklist): Return bool.  Change worklist to
9085         std::vector.
9086         (types_deeply_equal): Use std::vector.
9087         (types_equal): Return bool.
9088         (compare_maybe_null_strings): Simplify.
9089
9090 2018-05-29  Tom Tromey  <tom@tromey.com>
9091
9092         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
9093
9094 2018-05-29  Tom Tromey  <tom@tromey.com>
9095
9096         * objc-lang.h: Don't include cp-support.h.
9097         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
9098         declare VEC.
9099
9100 2018-05-27  Tom Tromey  <tom@tromey.com>
9101
9102         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
9103
9104 2018-05-25  Tom Tromey  <tom@tromey.com>
9105
9106         * value.c (value::location): Initialize.
9107
9108 2018-05-25  Tom Tromey  <tom@tromey.com>
9109
9110         * dbxread.c (init_bincl_list): Remove.
9111         (bincl_list): Now a std::vector.
9112         (bincls_allocated, next_bincl): Remove.
9113         (free_bincl_list, do_free_bincl_list_cleanup)
9114         (make_cleanup_free_bincl_list): Remove.
9115         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
9116         unique_xmalloc_ptr.
9117         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
9118         (struct header_file_location): Add constructor.
9119         (add_bincl_to_list): Remove.
9120
9121 2018-05-25  Tom Tromey  <tom@tromey.com>
9122
9123         * tui/tui.c (tui_enable): Update.
9124         * mi/mi-interp.c (mi_interp::init): Update.
9125         * interps.h (class interp) <name>: New method.
9126         <m_name>: Rename from name.
9127         (~scoped_restore_interp): Update.
9128         * interps.c (interp::interp): Update.
9129         (interp_add, interp_set, interp_lookup_existing)
9130         (current_interp_named_p): Update.
9131
9132 2018-05-25  Tom Tromey  <tom@tromey.com>
9133
9134         * interps.c (interp_name): Remove.
9135         * mi/mi-interp.c (mi_interp::init): Update.
9136         * interps.h (interp_name): Remove.
9137         (~scoped_restore_interp): Update.
9138         * tui/tui.c (tui_enable): Update.
9139
9140 2018-05-25  Tom Tromey  <tom@tromey.com>
9141
9142         * utils.c (fputs_maybe_filtered): Update.
9143         * linespec.c (decode_line_full): Update.
9144         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
9145         (mi_print_breakpoint_for_event, mi_solib_loaded)
9146         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
9147         (mi_user_selected_context_changed): Update.
9148         * mi/mi-main.c (mi_execute_command): Update.
9149         * cli/cli-script.c (execute_control_command): Update.
9150         * python/python.c (execute_gdb_command): Update.
9151         * solib.c (info_sharedlibrary_command): Update.
9152         * interps.c (interp_ui_out): Remove.
9153         * interps.h (interp_ui_out): Remove.
9154
9155 2018-05-25  Tom Tromey  <tom@tromey.com>
9156
9157         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
9158         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
9159         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
9160
9161 2018-05-25  Tom Tromey  <tom@tromey.com>
9162
9163         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
9164         * interps.c (interp_exec): Use scoped_restore.
9165
9166 2018-05-25  Tom Tromey  <tom@tromey.com>
9167
9168         * remote.c (remote_target::remote_file_get): Use
9169         gdb::byte_vector.
9170         (remote_target::remote_file_put): Likewise.
9171
9172 2018-05-25  Tom Tromey  <tom@tromey.com>
9173
9174         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
9175         a std::string.
9176         (get_pe_section_index, add_pe_exported_sym): Update.
9177         (read_pe_exported_syms): Use gdb::def_vector.
9178
9179 2018-05-25  Tom Tromey  <tom@tromey.com>
9180
9181         * frame.c (remove_prev_frame): Remove.
9182         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
9183
9184 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
9185
9186         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
9187         Remove prototypes.
9188         * mips-linux-nat.c (supply_fpregset): Always call
9189         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
9190         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
9191         `mips_fill_fpregset'.
9192         * mips-linux-tdep.c (mips_supply_fpregset)
9193         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
9194         (mips_fill_fpregset_wrapper): Remove functions.
9195         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
9196         (mips_linux_fpregset): Remove variable.
9197         (mips_linux_iterate_over_regset_sections): Use
9198         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
9199         (mips_linux_o32_sigframe_init): Remove comment.
9200
9201 2018-05-25  Pedro Alves  <palves@redhat.com>
9202
9203         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
9204         (struct readahead_cache, struct packet_reg, struct
9205         remote_arch_state, class remote_state): Move higher up in the
9206         file.
9207         (remote_target::m_remote_state): Now an object instead of a pointer.
9208         (remote_target::get_remote_state): Adjust.
9209
9210 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
9211
9212         * stack.c (select_and_print_frame): Delete.
9213         (struct function_bounds): Move struct within function.
9214         (func_command): Most content moved into new function
9215         find_frame_for_function, use new function, print result, add
9216         function comment.
9217         (find_frame_for_function): New function, now returns a result.
9218
9219 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9220
9221         * stack.c (iterate_over_block_arg_vars): Fix comment.
9222         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
9223
9224 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
9225
9226         PR gdb/23203
9227         * frame.c
9228         (scoped_restore_selected_frame::scoped_restore_selected_frame):
9229         Define.
9230         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
9231         Define.
9232         * frame.h (class scoped_restore_selected_frame): New class.
9233         * stack.c (print_frame_local_vars): Remove catching and rethrowing
9234         of any exception, use scoped_restore_selected_frame to restore the
9235         frame instead.
9236
9237 2018-05-24  Pedro Alves  <palves@redhat.com>
9238
9239         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
9240         override.
9241
9242 2018-05-23  Tom Tromey  <tom@tromey.com>
9243
9244         * complaints.c (struct complaints): Remove.
9245         (symfile_complaint_book): Remove.
9246         (series): New global.
9247         (complaint_internal): Update.
9248         (clear_complaints): Update.
9249
9250 2018-05-23  Tom Tromey  <tom@tromey.com>
9251
9252         * complaints.c (counters): New global.
9253         (struct complain): Remove.
9254         (struct complaints) <root>: Remove.
9255         (complaint_sentinel): Remove.
9256         (symfile_complaint_book): Update.
9257         (find_complaint) Remove.
9258         (complaint_internal, clear_complaints): Update.
9259
9260 2018-05-23  Tom Tromey  <tom@tromey.com>
9261
9262         * complaints.c (struct complain) <file, line>: Remove.
9263         (find_complaint): Remove file, line parameters.
9264         (complaint_internal): Update.
9265
9266 2018-05-23  Tom Tromey  <tom@tromey.com>
9267
9268         * complaints.c (vcomplaint): Remove.
9269         (complaint_internal) Merge in contents of vcomplaint.
9270
9271 2018-05-23  Tom Tromey  <tom@tromey.com>
9272
9273         * complaints.c (struct complaints) <explanation>: Remove.
9274         (symfile_explanations): Remove.
9275         (symfile_complaint_book): Update.
9276         (vcomplaint): Update.
9277         (struct explanation): Remove.
9278
9279 2018-05-23  Tom Tromey  <tom@tromey.com>
9280
9281         * complaints.c (symfile_complaints): Remove.
9282         (complaint_internal): Remove "complaints" parameter.
9283         (clear_complaints, vcomplaint): Remove "c" parameter.
9284         (get_complaints): Remove.
9285         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
9286         (dwarf2_debug_line_missing_file_complaint)
9287         (dwarf2_debug_line_missing_end_sequence_complaint)
9288         (dwarf2_complex_location_expr_complaint)
9289         (dwarf2_const_value_length_mismatch_complaint)
9290         (dwarf2_section_buffer_overflow_complaint)
9291         (dwarf2_macro_malformed_definition_complaint)
9292         (dwarf2_invalid_attrib_class_complaint)
9293         (create_addrmap_from_index, dw2_symtab_iter_next)
9294         (dw2_expand_marked_cus)
9295         (dw2_debug_names_iterator::find_vec_in_debug_names)
9296         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
9297         (create_debug_type_hash_table, init_cutu_and_read_dies)
9298         (partial_die_parent_scope, add_partial_enumeration)
9299         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
9300         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
9301         (read_import_statement, read_file_scope, create_dwo_cu_reader)
9302         (create_cus_hash_table, create_dwp_hash_table)
9303         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
9304         (dwarf2_rnglists_process, dwarf2_ranges_process)
9305         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
9306         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
9307         (handle_struct_member_die, process_structure_scope)
9308         (read_array_type, read_common_block, read_module_type)
9309         (read_tag_pointer_type, read_typedef, read_base_type)
9310         (read_subrange_type, load_partial_dies, partial_die_info::read)
9311         (partial_die_info::read, partial_die_info::read)
9312         (partial_die_info::read, read_checked_initial_length_and_offset)
9313         (dwarf2_string_attr, read_formatted_entries)
9314         (dwarf_decode_line_header)
9315         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
9316         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
9317         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
9318         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
9319         (get_signatured_type, get_DW_AT_signature_type)
9320         (decode_locdesc, file_file_name, consume_improper_spaces)
9321         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
9322         (dwarf_decode_macro_bytes, dwarf_decode_macros)
9323         (dwarf2_symbol_mark_computed, set_die_type)
9324         (read_attribute_value): Update.
9325         * stap-probe.c (handle_stap_probe, get_stap_base_address):
9326         Update.
9327         * dbxread.c (unknown_symtype_complaint)
9328         (lbrac_mismatch_complaint, repeated_header_complaint)
9329         (set_namestring, function_outside_compilation_unit_complaint)
9330         (read_dbx_symtab, process_one_symbol): Update.
9331         * gdbtypes.c (stub_noname_complaint): Update.
9332         * windows-nat.c (handle_unload_dll): Update.
9333         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
9334         (decode_base_type): Update.
9335         * xcoffread.c (bf_notfound_complaint, ef_complaint)
9336         (eb_complaint, record_include_begin, record_include_end)
9337         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
9338         (process_xcoff_symbol, read_symbol)
9339         (function_outside_compilation_unit_complaint)
9340         (scan_xcoff_symtab): Update.
9341         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
9342         * buildsym.c (finish_block_internal, make_blockvector)
9343         (end_symtab_get_static_block, augment_type_symtab): Update.
9344         * dtrace-probe.c (dtrace_process_dof)
9345         (dtrace_static_probe_ops::get_probes): Update.
9346         * complaints.h (struct complaint): Don't declare.
9347         (symfile_complaints): Remove.
9348         (complaint_internal): Remove "complaints" parameter.
9349         (complaint): Likewise.
9350         (clear_complaints): Likewise.
9351         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9352         (reread_symbols): Update.
9353         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
9354         (dwarf2_frame_cache, decode_frame_entry): Update.
9355         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
9356         * objc-lang.c (lookup_objc_class, lookup_child_selector)
9357         (info_selectors_command): Update.
9358         * macrotab.c (macro_include, check_for_redefinition)
9359         (macro_undef): Update.
9360         * objfiles.c (filter_overlapping_sections): Update.
9361         * stabsread.c (invalid_cpp_abbrev_complaint)
9362         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
9363         (define_symbol, error_type, read_type, rs6000_builtin_type)
9364         (stabs_method_name_from_physname, read_member_functions)
9365         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
9366         (attach_fields_to_type, complain_about_struct_wipeout)
9367         (read_range_type, read_args, common_block_start)
9368         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
9369         Update.
9370         * mdebugread.c (index_complaint, unknown_ext_complaint)
9371         (basic_type_complaint, bad_tag_guess_complaint)
9372         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
9373         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
9374         (parse_procedure, parse_lines)
9375         (function_outside_compilation_unit_complaint)
9376         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
9377         (bad_tag_guess_complaint, reg_value_complaint): Update.
9378         * cp-support.c (demangled_name_complaint): Update.
9379         * macroscope.c (sal_macro_scope): Update.
9380         * dwarf-index-write.c (class debug_names): Update.
9381
9382 2018-05-23  Tom Tromey  <tom@tromey.com>
9383
9384         * complaints.c (clear_complaints): Remove "noisy" parameter.
9385         * complaints.h (clear_complaints): Update.
9386         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9387         (reread_symbols): Update.
9388
9389 2018-05-23  Tom Tromey  <tom@tromey.com>
9390
9391         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
9392         SUBSEQUENT_MESSAGE.
9393         (vcomplaint, clear_complaints): Update.
9394         (symfile_explanations): Remove some messages.
9395
9396 2018-05-23  Tom Tromey  <tom@tromey.com>
9397
9398         * complaints.c (internal_complaint): Remove.
9399         * complaints.h (internal_complaint): Remove.
9400
9401 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9402
9403         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
9404
9405 2018-05-22  Pedro Alves  <palves@redhat.com>
9406
9407         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
9408         (remote_fileio_badfd, remote_fileio_return_errno)
9409         (remote_fileio_return_success, remote_fileio_func_open)
9410         (remote_fileio_func_open, remote_fileio_func_close)
9411         (remote_fileio_func_read, remote_fileio_func_write)
9412         (remote_fileio_func_lseek, remote_fileio_func_rename)
9413         (remote_fileio_func_unlink, remote_fileio_func_stat)
9414         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
9415         (remote_fileio_func_isatty, remote_fileio_func_system): Add
9416         remote_target parameter.
9417         (remote_fio_func_map) <func>: Add remote_target parameter.
9418         (do_remote_fileio_request, remote_fileio_request):
9419         * remote-fileio.h (remote_fileio_request):
9420         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
9421         remote_target parameter.
9422         (remote_notif_process, handle_notification): Adjust to pass down
9423         the remote.
9424         (remote_notif_state_allocate): Add remote_target parameter.  Save
9425         it.
9426         * remote-notif.h (struct remote_target): Forward declare.
9427         (struct notif_client) <parse, ack, can_get_pending_events>: Add
9428         remote_target parameter.
9429         (struct remote_notif_state) <remote>: New field.
9430         (remote_notif_ack, remote_notif_parse): Add remote_target
9431         parameter.
9432         (remote_notif_state_allocate, remote_notif_state_allocate): Add
9433         remote_target parameter.
9434         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
9435         (threads_listing_context, rmt_thread_action, protocol_feature)
9436         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
9437         (packet_result, struct threads_listing_context, remote_state):
9438         Move definitions and declarations higher up.
9439         (remote_target) <~remote_target>: Declare.
9440         (remote_download_command_source, remote_file_put, remote_file_get)
9441         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
9442         (remote_hostio_pread_vFile, remote_hostio_send_command)
9443         (remote_hostio_set_filesystem, remote_hostio_open)
9444         (remote_hostio_close, remote_hostio_unlink, remote_state)
9445         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
9446         (get_memory_write_packet_size, get_memory_read_packet_size)
9447         (append_pending_thread_resumptions, remote_detach_1)
9448         (append_resumption, remote_resume_with_vcont)
9449         (add_current_inferior_and_thread, wait_ns, wait_as)
9450         (process_stop_reply, remote_notice_new_inferior)
9451         (process_initial_stop_replies, remote_add_thread)
9452         (btrace_sync_conf, remote_btrace_maybe_reopen)
9453         (remove_new_fork_children, kill_new_fork_children)
9454         (discard_pending_stop_replies, stop_reply_queue_length)
9455         (check_pending_events_prevent_wildcard_vcont)
9456         (discard_pending_stop_replies_in_queue, stop_reply)
9457         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
9458         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
9459         (remote_interrupt_as, remote_interrupt_ns)
9460         (remote_get_noisy_reply, remote_query_attached)
9461         (remote_add_inferior, remote_current_thread, get_current_thread)
9462         (set_thread, set_general_thread, set_continue_thread)
9463         (set_general_process, write_ptid)
9464         (remote_unpack_thread_info_response, remote_get_threadinfo)
9465         (parse_threadlist_response, remote_get_threadlist)
9466         (remote_threadlist_iterator, remote_get_threads_with_ql)
9467         (remote_get_threads_with_qxfer)
9468         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
9469         (get_offsets, remote_check_symbols, remote_supported_packet)
9470         (remote_query_supported, remote_packet_size)
9471         (remote_serial_quit_handler, remote_detach_pid)
9472         (remote_vcont_probe, remote_resume_with_hc)
9473         (send_interrupt_sequence, interrupt_query)
9474         (remote_notif_get_pending_events, fetch_register_using_p)
9475         (send_g_packet, process_g_packet, fetch_registers_using_g)
9476         (store_register_using_P, store_registers_using_G)
9477         (set_remote_traceframe, check_binary_download)
9478         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
9479         (remote_xfer_live_readonly_partial, remote_read_bytes)
9480         (remote_send_printf, remote_flash_write, readchar)
9481         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
9482         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
9483         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
9484         (extended_remote_disable_randomization, extended_remote_run)
9485         (send_environment_packet, extended_remote_environment_support)
9486         (extended_remote_set_inferior_cwd, remote_write_qxfer)
9487         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
9488         (packet_command): Now methods of ...
9489         (remote_target): ... this class.
9490         (m_remote_state) <remote_target>: New field.
9491         (struct remote_state) <stop_reply_queue,
9492         remote_async_inferior_event_token, wait_forever_enabled_p>: New
9493         fields.
9494         (remote_state::remote_state): Allocate stop_reply_queue.
9495         (remote_state): Delete global.
9496         (get_remote_state_raw): Delete.
9497         (remote_target::get_remote_state): Allocate m_remote_state on
9498         demand.
9499         (get_current_remote_target): New.
9500         (remote_ops, extended_remote_ops): Delete.
9501         (wait_forever_enabled_p, remote_async_inferior_event_token):
9502         Delete, moved to struct remote_state.
9503         (remote_target::close): Delete self.  Destruction bits split to
9504         ...
9505         (remote_target::~remote_target): ... this.
9506         (show_memory_packet_size): Adjust to use
9507         get_current_remote_target.
9508         (struct protocol_feature) <func>: Add remote_target parameter.
9509         All callers adjusted.
9510         (curr_quit_handler_target): New.
9511         (remote_serial_quit_handler): Reimplement.
9512         (remote_target::open_1): Adjust to use get_current_remote_target.
9513         Heap-allocate remote_target/extended_remote_target instances.
9514         (vcont_builder::vcont_builder): Add remote_target parameter, and
9515         save it in m_remote.  All callers adjusted.
9516         (vcont_builder::m_remote): New field.
9517         (vcont_builder::restart, vcont_builder::flush)
9518         (vcont_builder::push_action): Use it.
9519         (remote_target::commit_resume): Use it.
9520         (struct queue_iter_param) <remote>: New field.
9521         (remote_target::remove_new_fork_children): Fill in 'remote' field.
9522         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
9523         (check_pending_event_prevents_wildcard_vcont_callback)
9524         (remote_target::check_pending_events_prevent_wildcard_vcont)
9525         (remote_target::discard_pending_stop_replies)
9526         (remote_target::discard_pending_stop_replies_in_queue)
9527         (remote_target::remote_notif_remove_queued_reply): Fill in
9528         'remote' field.
9529         (remote_notif_get_pending_events): New.
9530         (remote_target::readchar, remote_target::remote_serial_write):
9531         Save/restore curr_quit_handler_target.
9532         (putpkt): New.
9533         (kill_new_fork_children): Fill in 'remote' field.
9534         (packet_command): Use get_current_remote_target, defer to
9535         remote_target method of same name.
9536         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
9537         parameter, and save it in m_remote.  All callers adjusted.
9538         (scoped_remote_fd::release): Use m_remote.
9539         (scoped_remote_fd::m_remote): New field.
9540         (remote_file_put, remote_file_get, remote_file_delete): Use
9541         get_current_remote_target, defer to remote_target method of same
9542         name.
9543         (remote_btrace_reset): Add remote_state paremeter.  Update all
9544         callers.
9545         (remote_async_inferior_event_handler). Pass down 'data'.
9546         (remote_new_objfile): Use get_current_remote_target.
9547         (remote_target::vcont_r_supported): New.
9548         (set_range_stepping): Use get_current_remote_target and
9549         remote_target::vcont_r_supported.
9550         (_initialize_remote): Don't allocate 'remote_state' and
9551         'stop_reply_queue' globals.
9552         * remote.h (struct remote_target): Forward declare.
9553         (getpkt, putpkt, remote_notif_get_pending_events): Add
9554         'remote_target' parameter.
9555
9556 2018-05-22  Pedro Alves  <palves@redhat.com>
9557
9558         * remote.c (vcont_builder): Now a class.  Make all data members
9559         private.
9560         (vcont_builder) <vcont_builder, restart, flush, push_action>:
9561         Declare methods.
9562         (vcont_builder_restart): Rename to ...
9563         (vcont_builder::restart): ... this.
9564         (vcont_builder_flush): Rename to ...
9565         (vcont_builder::flush): ... this.
9566         (vcont_builder_push_action): Rename to ...
9567         (vcont_builder::push_action): ... this.
9568         (remote_target::commit_resume): Adjust.
9569
9570 2018-05-22  Pedro Alves  <palves@redhat.com>
9571
9572         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
9573         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
9574         (get_fixed_memory_packet_size): New.
9575         (get_memory_packet_size): Use it.
9576         (set_memory_packet_size): Don't override the config size with
9577         DEFAULT_MAX_MEMORY_PACKET_SIZE.
9578         (show_memory_packet_size): Use get_fixed_memory_packet_size.
9579         Don't refer to get_memory_packet_size if not connected to a remote
9580         target.  Show "(default)" if configured size is 0.
9581
9582 2018-05-22  Pedro Alves  <palves@redhat.com>
9583
9584         * remote.c (remote_target::mourn_inferior): Move
9585         discard_pending_stop_replies call here from ...
9586         (_initialize_remote): ... here.
9587
9588 2018-05-22  Pedro Alves  <palves@redhat.com>
9589
9590         * remote.c (compare_section_command): Remove set_general_process
9591         call.
9592
9593 2018-05-22  Pedro Alves  <palves@redhat.com>
9594
9595         * remote.c (struct packet_reg, struct remote_arch_state):
9596         Move higher up in the file.
9597         (remote_state) <m_arch_states>: Store remote_arch_state values
9598         instead of remote_arch_state pointers.
9599         (remote_state::get_remote_arch_state): Adjust.
9600
9601 2018-05-22  Pedro Alves  <palves@redhat.com>
9602
9603         * remote.c: Include <unordered_map>.
9604         (remote_state): Now a class.
9605         (remote_state) <get_remote_arch_state>: Declare method.
9606         <get_remote_arch_state>: New field.
9607         (remote_arch_state) <remote_arch_state>: Declare ctor.
9608         <regs>: Now a unique_ptr.
9609         (remote_gdbarch_data_handle): Delete.
9610         (get_remote_arch_state): Delete.
9611         (remote_state::get_remote_arch_state): New.
9612         (get_remote_state): Adjust to call remote_state's
9613         get_remote_arch_state method.
9614         (init_remote_state): Delete, bits factored out to ...
9615         (remote_arch_state::remote_arch_state): ... this new method.
9616         (get_remote_packet_size, get_memory_packet_size)
9617         (process_g_packet, remote_target::fetch_registers)
9618         (remote_target::prepare_to_store, store_registers_using_G)
9619         (remote_target::store_registers, remote_target::get_trace_status):
9620         Adjust to call remote_state's method.
9621         (_initialize_remote): Remove reference to
9622         remote_gdbarch_data_handle.
9623
9624 2018-05-22  Pedro Alves  <palves@redhat.com>
9625
9626         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
9627         pread>: New method declarations.
9628         (remote_target::open_1): Adjust.
9629         (readahead_cache_invalidate): Rename to ...
9630         (readahead_cache::invalidate): ... this, and adjust to be a class
9631         method.
9632         (readahead_cache_invalidate_fd): Rename to ...
9633         (readahead_cache::invalidate_fd): ... this, and adjust to be a
9634         class method.
9635         (remote_hostio_pwrite): Adjust.
9636         (remote_hostio_pread_from_cache): Rename to ...
9637         (readahead_cache::pread): ... this, and adjust to be a class
9638         method.
9639         (remote_hostio_close): Adjust.
9640
9641 2018-05-22  Pedro Alves  <palves@redhat.com>
9642
9643         * remote.c (remote_hostio_close_cleanup): Delete.
9644         (class scoped_remote_fd): New.
9645         (remote_file_put, remote_file_get): Use it.
9646
9647 2018-05-22  Pedro Alves  <palves@redhat.com>
9648
9649         (struct vCont_action_support): Use bool and initialize all fields.
9650         (struct readahead_cache): Initialize all fields.
9651         (remote_state): Use bool and initialize all fields.
9652         (remote_state::remote_state, remote_state::~remote_state): New.
9653         (new_remote_state): Delete.
9654         (_initialize_remote): Use new to allocate remote_state.
9655
9656 2018-05-22  Pedro Alves  <palves@redhat.com>
9657             張俊芝  <zjz@zjz.name>
9658
9659         PR gdb/22973
9660         * c-exp.y: Include "c-support.h".
9661         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
9662         of tolower.  Use c_ident_is_alpha to scan names.
9663         * c-lang.c: Include "c-support.h".
9664         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
9665         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
9666         * c-support.h: New file, with bits factored out from ...
9667         * cp-name-parser.y: ... this file.
9668         Include "c-support.h".
9669         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
9670         c-support.h and renamed.
9671         (symbol_end, yylex): Adjust.
9672
9673 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9674
9675         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
9676         parameter type to CORE_ADDR.
9677         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
9678         parameter type in declaration to CORE_ADDR.
9679         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
9680         target_auxv_search to get AT_HWCAP and use the result to get the
9681         target description.
9682         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
9683         to CORE_ADDR. Remove the cast of the return value to unsigned
9684         long. Fix error predicate of target_auxv_search.
9685         (ppc_linux_nat_target::read_description): Change the type of the
9686         hwcap variable to CORE_ADDR.
9687
9688 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9689
9690         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
9691         if the size of fpscr is larger than 32 bits.
9692
9693 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9694
9695         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
9696         (ppc32_linux_vsxregmap): New global.
9697         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
9698         regcache_supply_regset, and regcache_collect_regset.
9699         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
9700         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
9701         (fetch_vsx_register, store_vsx_register): Remove.
9702         (fetch_vsx_registers): Add regno parameter. Get regset using
9703         ppc_linux_vsxregset. Use regset to supply registers.
9704         (store_vsx_registers): Add regno parameter. Get regset using
9705         ppc_linux_vsxregset. Use regset to collect registers.
9706         (fetch_register): Call fetch_vsx_registers instead of
9707         fetch_vsx_register.
9708         (store_register): Call store_vsx_registers instead of
9709         store_vsx_register.
9710         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
9711         new regno parameter.
9712         (store_ppc_registers): Call store_vsx_registers with -1 for the
9713         new regno parameter.
9714         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
9715         (ppc_collect_vsxregset): Remove.
9716
9717 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9718
9719         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
9720         offset fields.
9721         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
9722         for vector register offset fields.
9723         (ppc64_fbsd_reg_offsets): Likewise.
9724         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9725         to vector register offset fields.
9726         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9727         to vector register offset fields.
9728         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
9729         vector register offset fields.
9730         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
9731         initializers for vector register offset fields.
9732         (rs6000_aix64_reg_offsets): Likewise.
9733         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
9734         (ppc_supply_vrregset): Remove.
9735         (ppc_collect_vrregset): Remove.
9736         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
9737         (ppc_linux_vrregset) : New function.
9738         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
9739         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
9740         (ppc32_linux_vrregset): Remove.
9741         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
9742         and use result instead of ppc32_linux_vrregset.
9743         (ppc32_linux_reg_offsets): Remove initializers for vector register
9744         offset fields.
9745         (ppc64_linux_reg_offsets): Likewise.
9746         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
9747         * ppc-linux-nat.c: Include regset.h.
9748         (gdb_vrregset_t): Adjust comment to account for little-endian
9749         mode.
9750         (supply_vrregset, fill_vrregset): Remove.
9751         (fetch_altivec_register, store_altivec_register): Remove.
9752         (fetch_altivec_registers): Add regno parameter. Get regset using
9753         ppc_linux_vrregset. Use regset to supply registers.
9754         (store_altivec_registers): Add regno parameter. Get regset using
9755         ppc_linux_vrregset. Use regset to collect registers.
9756         (fetch_register): Call fetch_altivec_registers instead of
9757         fetch_altivec_register.
9758         (store_register): Call store_altivec_registers instead of
9759         store_altivec_register.
9760         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
9761         the new regno parameter.
9762         (store_ppc_registers): Call store_altivec_registers with -1 for
9763         the new regno parameter.
9764
9765 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9766
9767         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
9768         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
9769         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
9770         (gdb_vrregset_t): Change array type size to
9771         PPC_LINUX_SIZEOF_VRREGSET.
9772         (gdb_vsxregset_t): Change array type size to
9773         PPC_LINUX_SIZEOF_VSXREGSET.
9774         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
9775         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
9776         PPC_LINUX_SIZEOF_VSXREGSET.
9777
9778 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9779
9780         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
9781         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
9782         nat/ppc-linux.c.
9783         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
9784         ppc_linux_target_wordsize with tid.
9785         (ppc_linux_nat_target::read_description): Call ppc_linux_target
9786         wordsize with tid.
9787         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
9788         (ppc64_64bit_inferior_p): Add static and inline specifiers.
9789         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
9790         tid parameter. Remove static specifier.
9791         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
9792         (ppc_linux_target_wordsize): New declaration.
9793
9794 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9795
9796         * arch/ppc-linux-common.c: New file.
9797         * arch/ppc-linux-common.h: New file.
9798         * arch/ppc-linux-tdesc.h: New file.
9799         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
9800         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
9801         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
9802         arch/ppc-linux-tdesc.h.
9803         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
9804         arch/ppc-linux-tdesc.h.
9805         (ppc_linux_nat_target::read_description): Remove target
9806         description matching code. Fill a ppc_linux_features struct and
9807         call ppc_linux_match_description with it. Move comment about ISA
9808         2.05 to ppc-linux-common.c.
9809         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
9810         arch/ppc-linux-tdesc.h.
9811         (ppc_linux_core_read_description): Remove target description
9812         matching code. Fill a ppc_linux_features struct and call
9813         ppc_linux_match_description with it.
9814         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
9815         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
9816         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
9817         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
9818         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
9819         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
9820         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
9821         (tdesc_powerpc_e500l): Remove.
9822
9823 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
9824
9825         * ada-lang.c (catch_assert_command): Pass empty string instead
9826         of NULL for excep_string argument.
9827
9828 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9829
9830         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
9831         the width of the requested register exceeds the width of the
9832         `ptrace' data type.
9833
9834 2018-05-21  Tom Tromey  <tom@tromey.com>
9835
9836         * printcmd.c (output_command): Remove.
9837         (output_command_const): Rename to output_command.
9838         * valprint.h (output_command): Rename from output_command_const.
9839         * tracepoint.c (trace_dump_actions): Call output_command.
9840
9841 2018-05-21  Tom Tromey  <tom@tromey.com>
9842
9843         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
9844         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
9845         * ada-lang.h (create_ada_exception_catchpoint): Update.
9846         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
9847         std::string.
9848         (create_excep_cond_exprs, ~ada_catchpoint)
9849         (should_stop_exception, print_one_exception)
9850         (print_mention_exception, print_recreate_exception): Update.
9851         (ada_get_next_arg): Remove.
9852         (catch_ada_exception_command_split): Use std::string.  Change type
9853         of "excep_string", "cond_string".
9854         (catch_ada_exception_command): Update.
9855         (create_ada_exception_catchpoint): Change type of excep_string.
9856         (ada_exception_sal): Remove excep_string parameter.
9857         (~ada_catchpoint): Remove.
9858
9859 2018-05-21  Tom Tromey  <tom@tromey.com>
9860
9861         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
9862         cleanup.
9863
9864 2018-05-21  Tom Tromey  <tom@tromey.com>
9865
9866         * ada-lang.c (ada_exception_message_1, ada_exception_message):
9867         Return unique_xmalloc_ptr.
9868         (print_it_exception): Update.
9869
9870 2018-05-21  Tom Tromey  <tom@tromey.com>
9871
9872         * tracepoint.c (trace_dump_actions): Use std::string.
9873
9874 2018-05-21  Tom Tromey  <tom@tromey.com>
9875
9876         * symfile.c (reread_symbols): Use std::string for original_name.
9877
9878 2018-05-21  Tom Tromey  <tom@tromey.com>
9879
9880         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
9881         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
9882         constructor.
9883
9884 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
9885
9886         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
9887         instance to...
9888         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
9889         * objfiles.c (get_objfile_bfd_data): Allocate
9890         objfile_per_bfd_storage with obstack_new when allocating on
9891         obstack.
9892
9893 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9894
9895         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
9896         OBSTACK_ZALLOC.
9897         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
9898         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
9899         * mdebugread.c (mdebug_build_psymtabs): Likewise.
9900         (add_pending): Likewise.
9901         (parse_symbol): Likewise.
9902         (parse_partial_symbols): Likewise.
9903         (psymtab_to_symtab_1): Likewise.
9904         (new_psymtab): Likewise.
9905         (elfmdebug_build_psymtabs): Likewise.
9906         * minsyms.c (terminate_minimal_symbol_table): Likewise.
9907         * objfiles.c (get_objfile_bfd_data): Likewise.
9908         (objfile_register_static_link): Likewise.
9909         * psymtab.c (allocate_psymtab): Likewise.
9910         * stabsread.c (read_member_functions): Likewise.
9911         * xcoffread.c (xcoff_end_psymtab): Likewise.
9912
9913 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9914
9915         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
9916         compiler supports std::is_trivially_constructible.
9917         * common/poison.h: Include obstack.h.
9918         (IsMallocable): Define to is_trivially_constructible if the
9919         compiler supports it, define to true_type otherwise.
9920         (xobnew): New.
9921         (XOBNEW): Redefine.
9922         (xobnewvec): New.
9923         (XOBNEWVEC): Redefine.
9924         * gdb_obstack.h (obstack_zalloc): New.
9925         (OBSTACK_ZALLOC): Redefine.
9926         (obstack_calloc): New.
9927         (OBSTACK_CALLOC): Redefine.
9928         (obstack_new): New.
9929         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
9930         (gdbarch_obstack): New declaration in gdbarch.h, definition in
9931         gdbarch.c.
9932         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
9933         obstack_calloc/obstack_zalloc.
9934         (gdbarch_obstack_zalloc): Remove.
9935         * target-descriptions.c (tdesc_data_init): Use obstack_new.
9936
9937 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9938
9939         * stack.c (backtrace_command_1): Remove useless variable int i.
9940
9941 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9942
9943         * stack.c (print_frame_info): Fix comment.
9944
9945 2018-05-18  Tom Tromey  <tom@tromey.com>
9946
9947         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
9948         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
9949         (~dwarf2_per_objfile): Update
9950         (dwarf2_get_dwz_file): Use new.
9951         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
9952         unique_ptr.
9953
9954 2018-05-18  Tom Tromey  <tom@tromey.com>
9955
9956         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
9957         unique_ptr.
9958         * dwarf2read.c (struct dwp_file): Add constructor and
9959         initializers.
9960         (open_and_init_dwp_file): Return a unique_ptr.
9961         (dwarf2_per_objfile, create_dwp_hash_table)
9962         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
9963         (lookup_dwo_unit_in_dwp): Update.
9964         (open_and_init_dwp_file, get_dwp_file): Update.
9965
9966 2018-05-18  Tom Tromey  <tom@tromey.com>
9967
9968         * dwarf2read.c (dwarf2_per_objfile): Update.
9969         (struct mapped_index): Add initializers.
9970         (dwarf2_read_index): Use new.
9971         (dw2_symtab_iter_init): Update.
9972         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
9973         unique_ptr.
9974
9975 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9976
9977         * dwarf2read.c (mapped_index) <total_size>: Remove.
9978
9979 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9980
9981         * unittests/format_pieces-selftests.c (test_format_specifier):
9982         Add ARI comments.
9983
9984 2018-05-18  Tom Tromey  <tom@tromey.com>
9985
9986         * c-typeprint.c (maybe_print_hole): New function.
9987         (c_print_type_struct_field_offset): Update.
9988         (c_type_print_base_struct_union): Call maybe_print_hole.
9989
9990 2018-05-17  Keith Seitz  <keiths@redhat.com>
9991
9992         * breakpoint.c (build_bpstat_chain): New function, moved from
9993         bpstat_stop_status.
9994         (bpstat_stop_status): Add optional parameter, `stop_chain'.
9995         If no stop chain is passed, call build_bpstat_chain to build it.
9996         * breakpoint.h (build_bpstat_chain): Declare.
9997         (bpstat_stop_status): Move documentation here from breakpoint.c.
9998         * infrun.c (handle_signal_stop): Before eliding inlined frames,
9999         build the stop chain and pass it to skip_inline_frames.
10000         Pass this stop chain to bpstat_stop_status.
10001         * inline-frame.c: Include breakpoint.h.
10002         (stopped_by_user_bp_inline_frame): New function.
10003         (skip_inline_frames): Add parameter `stop_chain'.
10004         Move documention to inline-frame.h.
10005         If non-NULL, use stopped_by_user_bp_inline_frame to determine
10006         whether the frame should be elided.
10007         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
10008         Add moved documentation and update for new parameter.
10009
10010 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
10011
10012         PR cli/14975
10013         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10014         unittests/format_pieces-selftests.c.
10015         * common/format.h (format_piece) <operator==>: New.
10016         (format_pieces) <operator[]>: Remove.
10017         * common/format.c (format_pieces::format_pieces): Handle \e.
10018         * unittests/format_pieces-selftests.c: New.
10019
10020 2018-05-17  Tom Tromey  <tom@tromey.com>
10021
10022         PR symtab/23010:
10023         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
10024         (dw2_instantiate_symtab): Add skip_partial parameter.
10025         (dw2_find_last_source_symtab, dw2_map_expand_apply)
10026         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
10027         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
10028         (dw2_expand_symtabs_matching_one)
10029         (dw2_find_pc_sect_compunit_symtab)
10030         (dw2_debug_names_lookup_symbol)
10031         (dw2_debug_names_expand_symtabs_for_function): Update.
10032         (init_cutu_and_read_dies): Add skip_partial parameter.
10033         (process_psymtab_comp_unit, build_type_psymtabs_1)
10034         (process_skeletonless_type_unit, load_partial_comp_unit)
10035         (psymtab_to_symtab_1): Update.
10036         (load_full_comp_unit): Add skip_partial parameter.
10037         (process_imported_unit_die, dwarf2_read_addr_index)
10038         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
10039         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
10040         (read_signatured_type): Update.
10041
10042 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
10043
10044         * value.c (release_value): Remove unused variable.
10045         (record_latest_value): Likewise.
10046         (access_value_history): Likewise.
10047         (preserve_values): Likewise.
10048
10049 2018-05-17  Tom Tromey  <tom@tromey.com>
10050
10051         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
10052         Initialize.
10053
10054 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
10055
10056         PR gdb/22286
10057         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
10058         Also handle registers whose width is not a multiple of
10059         PTRACE_TYPE_RET.
10060         (linux_nat_trad_target::store_register): Likewise.
10061
10062 2018-05-16  Tom Tromey  <tom@tromey.com>
10063
10064         * gdbcore.h (core_bfd): Redefine.
10065         * corelow.c (core_target::close): Update.
10066         (core_target_open): Update.
10067         * progspace.h (struct program_space) <cbfd>: Now a
10068         gdb_bfd_ref_ptr.
10069
10070 2018-05-16  Tom Tromey  <tom@tromey.com>
10071
10072         PR cli/19551:
10073         * symfile-add-flags.h (enum symfile_add_flags)
10074         <SYMFILE_NOT_FILENAME>: New constant.
10075         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
10076         objfile name from BFD.
10077         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
10078         * minidebug.c (find_separate_debug_file_in_section): Put
10079         ".gnu_debugdata" into BFD's file name.
10080
10081 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
10082
10083         * regcache.c (regcache_read_ftype, regcache_write_ftype):
10084         Remove.
10085
10086 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
10087
10088         PR binutils/21446
10089         * aarch64-tdep.c (aarch64_analyze_prologue,
10090         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
10091         Indicate not interested in errors.
10092
10093 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
10094
10095         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
10096         Supply the MIPS_ZERO_REGNUM register.
10097
10098 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
10099
10100         * mips-tdep.c (mask_address_var): Make variable static.
10101
10102 2018-05-14  Tom Tromey  <tom@tromey.com>
10103
10104         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
10105
10106 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
10107
10108         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
10109         FXSAVE_ADDR for the mxcsr register.
10110
10111 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
10112
10113         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
10114
10115 2018-05-11  Pedro Alves  <palves@redhat.com>
10116
10117         * corelow.c (core_target) <core_target>: No longer inline.
10118         Initialize m_core_gdbarch, m_core_vec and build the section table
10119         here.
10120         <~core_target>: New.
10121         <core_gdbarch, get_core_register_section>: New methods.
10122         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
10123         factored out from ...
10124         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
10125         (core_ops): Delete.
10126         (sniff_core_bfd): Add gdbarch parameter.
10127         (core_close): Delete, merged into ...
10128         (core_target::close): ... here.  Delete self.
10129         (core_close_cleanup): Delete.
10130         (core_target_open): Allocate a core_target on the heap.  Use a
10131         unique_ptr instead of a cleanup.  Bits moved into the core_target
10132         ctor.  Adjust to use core_target methods instead of globals.
10133         (get_core_register_section): Rename to ...
10134         (core_target::get_core_register_section): ... this and adjust.
10135         (struct get_core_registers_cb_data): New.
10136         (get_core_registers_cb): Use it.  Use bool.
10137         (core_target::fetch_registers, core_target::files_info)
10138         (core_target::xfer_partial, core_target::read_description)
10139         (core_target::pid_to, core_target::thread_name): Adjust to
10140         reference class fields instead of globals.
10141         * target.h (struct target_ops_deleter, target_ops_up): New.
10142
10143 2018-05-11  Pedro Alves  <palves@redhat.com>
10144
10145         * corefile.c (core_file_command): Move to corelow.c.
10146         * corelow.c (the_core_target): Delete.
10147         (core_file_command): Moved from corefile.c.  Check exec_bfd
10148         instead of the_core_target.  Use target_detach instead of calling
10149         into the_core_target directly.
10150         (maybe_say_no_core_file_now): New.
10151         (core_target::detach): Use it.
10152         (_initialize_corelow): Remove references to the_core_target.
10153         * gdbcore.h (the_core_target): Delete.
10154
10155 2018-05-11  Tom Tromey  <tromey@redhat.com>
10156             Pedro Alves  <palves@redhat.com>
10157
10158         * corefile.c (core_bfd): Remove.
10159         * gdbcore.h (core_bfd): Now a macro.
10160         * progspace.h (struct program_space) <cbfd>: New field.
10161
10162 2018-05-11  Tom Tromey  <tom@tromey.com>
10163
10164         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
10165         gdb::def_vector.
10166
10167 2018-05-10  Tom Tromey  <tom@tromey.com>
10168
10169         * configure: Rebuild.
10170         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
10171
10172 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
10173
10174         PR server/23158:
10175         * regformats/regdat.sh: Adjust script, following the addition
10176         of the new expedite_regs parameter to init_target_desc.
10177
10178 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
10179     
10180         PR gdb/23127
10181         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
10182         set_gdbarch_significant_addr_bit.
10183         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
10184         set_gdbarch_significant_addr_bit.
10185         * utils.c (address_significant): Update to sign extend addr.
10186
10187 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
10188
10189         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
10190         (xtensa_linux_init_abi): Limit tdep->num_regs by
10191         tdep->num_nopriv_regs.
10192         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
10193         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
10194         not initialized.
10195
10196 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
10197
10198         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
10199
10200 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
10201
10202         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
10203         (I387_MXCSR_INIT_VAL): New constant.
10204         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
10205         buffer if it was supplied by the inferior.
10206         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
10207         (i387_xsave_get_clear_bv): New function.
10208         (i387_supply_xsave): Only read x87 control registers from the
10209         xsave buffer if the feature is enabled, and the state will have
10210         been written, otherwise, provide a suitable default.
10211         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
10212         including x87 control registers.  Update control registers if they
10213         have changed from the default value, and mark features as enabled
10214         as required.
10215         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
10216
10217 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
10218
10219         * spu-tdep.c (info_spu_event_command): Fix output formatting.
10220
10221 2018-05-07  Tom Tromey  <tom@tromey.com>
10222
10223         * configure: Rebuild.
10224         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
10225
10226 2018-05-07  Tom Tromey  <tom@tromey.com>
10227
10228         PR tdep/20362:
10229         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
10230         bit.  Use correct value for VDIV.
10231
10232 2018-05-04  Tom Tromey  <tom@tromey.com>
10233
10234         * configure: Rebuild.
10235         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
10236
10237 2018-05-04  Tom Tromey  <tom@tromey.com>
10238
10239         * linux-record.c (record_linux_system_call) <case
10240         RECORD_SYS_RECVFROM>: Add "break".
10241
10242 2018-05-04  Tom Tromey  <tom@tromey.com>
10243
10244         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
10245         Add missing "break".
10246         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
10247         Add missing "break".
10248
10249 2018-05-04  Tom Tromey  <tom@tromey.com>
10250
10251         * rs6000-tdep.c (ppc_process_record_op4)
10252         (ppc_process_record_op63): Add fall-through comment.
10253
10254 2018-05-04  Tom Tromey  <tom@tromey.com>
10255
10256         * i386-tdep.c (i386_process_record): Add fall-through comment.
10257
10258 2018-05-04  Tom Tromey  <tom@tromey.com>
10259
10260         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
10261         comment.
10262
10263 2018-05-04  Tom Tromey  <tom@tromey.com>
10264
10265         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
10266         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
10267         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
10268         comment.
10269         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
10270         comment.
10271         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
10272         comment.
10273
10274 2018-05-04  Tom Tromey  <tom@tromey.com>
10275
10276         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
10277
10278 2018-05-04  Tom Tromey  <tom@tromey.com>
10279
10280         * s390-tdep.c (s390_process_record): Fix fall-through comments.
10281         * xcoffread.c (scan_xcoff_symtab): Move comment later.
10282         * symfile.c (section_is_mapped): Fix fall-through comment.
10283         * stabsread.c (define_symbol, read_member_functions): Fix
10284         fall-through comment.
10285         * s390-linux-tdep.c (s390_process_record): Fix fall-through
10286         comment.
10287         * remote.c (remote_wait_as): Fix fall-through comment.
10288         * p-exp.y (yylex): Fix fall-through comment.
10289         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
10290         comment.
10291         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
10292         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
10293         * jv-exp.y (yylex): Fix fall-through comment.
10294         * go-exp.y (lex_one_token): Fix fall-through comment.
10295         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
10296         fall-through comment.
10297         * f-exp.y (yylex): Fix fall-through comment.
10298         * dwarf2read.c (process_die): Fix fall-through comments.
10299         * dbxread.c (process_one_symbol): Fix fall-through comment.
10300         * d-exp.y (lex_one_token): Fix fall-through comment.
10301         * cp-name-parser.y (yylex): Fix fall-through comment.
10302         * coffread.c (coff_symtab_read): Fix fall-through comment.
10303         * c-exp.y (lex_one_token): Fix fall-through comment.
10304         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
10305         comment.
10306         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
10307         comment.
10308
10309 2018-05-04  Tom Tromey  <tom@tromey.com>
10310
10311         PR python/22730:
10312         * NEWS: Mention gdb.execute change.
10313         * gdbcmd.h (execute_control_command): Don't declare.
10314         * python/python.c (execute_gdb_command): Use read_command_lines_1,
10315         execute_control_commands, execute_control_commands_to_string.
10316         * cli/cli-script.h (execute_control_commands)
10317         (execute_control_commands_to_string): Declare.
10318         (execute_control_command): Add from_tty parameter.
10319         * cli/cli-script.c (execute_control_commands)
10320         (execute_control_commands_to_string): New functions.
10321         (execute_user_command): Use execute_control_commands.
10322         (execute_control_command_1): Add "from_tty" parameter.  Update.
10323         (execute_control_command): Likewise.
10324
10325 2018-05-04  Tom Tromey  <tom@tromey.com>
10326
10327         PR python/22731:
10328         * NEWS: Mention that breakpoint commands are writable.
10329         * python/py-breakpoint.c (bppy_set_commands): New function.
10330         (breakpoint_object_getset) <"commands">: Use it.
10331
10332 2018-05-04  Tom Tromey  <tom@tromey.com>
10333
10334         * tracepoint.c (actions_command): Update.
10335         * mi/mi-cmd-break.c (mi_command_line_array)
10336         (mi_command_line_array_cnt, mi_command_line_array_ptr)
10337         (mi_read_next_line): Remove.
10338         (mi_cmd_break_commands): Update.
10339         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
10340         function_view.
10341         * cli/cli-script.c (get_command_line): Update.
10342         (process_next_line): Use function_view.  Constify.
10343         (recurse_read_control_structure, read_command_lines)
10344         (read_command_lines_1): Change argument types to function_view.
10345         (do_define_command, document_command): Update.
10346         * breakpoint.h (check_tracepoint_command): Don't declare.
10347         * breakpoint.c (check_tracepoint_command): Remove.
10348         (commands_command_1, create_tracepoint_from_upload): Update.
10349
10350 2018-05-04  Tom Tromey  <tom@tromey.com>
10351
10352         PR gdb/11750:
10353         * cli/cli-script.h (enum command_control_type) <define_control>:
10354         New constant.
10355         * cli/cli-script.c (multi_line_command_p): Handle define_control.
10356         (build_command_line, execute_control_command_1)
10357         (process_next_line): Likewise.
10358         (do_define_command): New function, extracted from define_command.
10359         (define_command): Use it.
10360
10361 2018-05-04  Tom Tromey  <tom@tromey.com>
10362
10363         * tracepoint.c (actions_command): Update.
10364         * cli/cli-script.h (read_command_lines): Update.
10365         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
10366         (MAX_TMPBUF): Remove define.
10367         (define_command): Use string_printf.
10368         (document_command): Likewise.
10369         * breakpoint.c (commands_command_1): Update.
10370
10371 2018-05-04  Tom Tromey  <tom@tromey.com>
10372
10373         * top.c (execute_command): Update.
10374         * cli/cli-script.h (print_command_lines): Now varargs.
10375         * cli/cli-script.c (print_command_lines): Now varargs.
10376         (execute_control_command_1) <case while_control, case if_control>:
10377         Update.
10378
10379 2018-05-04  Tom Tromey  <tom@tromey.com>
10380
10381         * tracepoint.c (all_tracepoint_actions): Rename from
10382         all_tracepoint_actions_and_cleanup.  Change return type.
10383         (actions_command, encode_actions_1, encode_actions)
10384         (trace_dump_actions, tdump_command): Update.
10385         * remote.c (remote_download_command_source): Update.
10386         * python/python.c (gdbpy_eval_from_control_command)
10387         (python_command, python_interactive_command): Update.
10388         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
10389         * guile/guile.c (guile_command)
10390         (gdbscm_eval_from_control_command, guile_command): Update.
10391         * compile/compile.c (compile_code_command)
10392         (compile_print_command, compile_to_object): Update.
10393         * cli/cli-script.h (struct command_lines_deleter): New.
10394         (counted_command_line): New typedef.
10395         (struct command_line): Add constructor, destructor.
10396         <body_list>: Remove.
10397         <body_list_0, body_list_1>: New members.
10398         (command_line_up): Remove typedef.
10399         (read_command_lines, read_command_lines_1, get_command_line):
10400         Update.
10401         (copy_command_lines): Don't declare.
10402         * cli/cli-script.c (build_command_line): Use "new".
10403         (get_command_line): Return counted_command_line.
10404         (print_command_lines, execute_user_command)
10405         (execute_control_command_1, while_command, if_command): Update.
10406         (realloc_body_list): Remove.
10407         (process_next_line, recurse_read_control_structure): Update.
10408         (read_command_lines, read_command_lines_1): Return counted_command_line.
10409         (free_command_lines): Use "delete".
10410         (copy_command_lines): Remove.
10411         (define_command, document_command, show_user_1): Update.
10412         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
10413         a counted_command_line.
10414         * breakpoint.h (counted_command_line): Remove typedef.
10415         (breakpoint_set_commands): Update.
10416         * breakpoint.c (check_no_tracepoint_commands)
10417         (validate_commands_for_breakpoint): Update.
10418         (breakpoint_set_commands): Change commands to be a
10419         counted_command_line.
10420         (commands_command_1, update_dprintf_command_list)
10421         (create_tracepoint_from_upload): Update.
10422
10423 2018-05-04  Tom Tromey  <tom@tromey.com>
10424
10425         * cli/cli-decode.h (cmd_list_element): New constructor.
10426         (~cmd_list_element): New destructor.
10427         (struct cmd_list_element): Add initializers.
10428         * cli/cli-decode.c (do_add_cmd): Use "new".
10429         (delete_cmd): Use "delete".
10430
10431 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
10432             Pedro Alves <palves@redhat.com>
10433
10434         PR breakpoints/19806 and support for PR external/20207.
10435         * NEWS: Mention Aarch64 watchpoint improvements.
10436         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
10437         watchpoints and PR external/20207 watchpoints.
10438         * nat/aarch64-linux-hw-point.c
10439         (kernel_supports_any_contiguous_range): New.
10440         (aarch64_watchpoint_offset): New.
10441         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
10442         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
10443         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
10444         (aarch64_align_watchpoint): New parameters aligned_offset_p and
10445         next_addr_orig_p.  Support PR external/20207 watchpoints.
10446         (aarch64_downgrade_regs): New.
10447         (aarch64_dr_state_insert_one_point): New parameters offset and
10448         addr_orig.
10449         (aarch64_dr_state_remove_one_point): Likewise.
10450         (aarch64_handle_breakpoint): Update caller.
10451         (aarch64_handle_aligned_watchpoint): Likewise.
10452         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
10453         aligned_offset.
10454         (aarch64_linux_set_debug_regs): Remove const from state.  Call
10455         aarch64_downgrade_regs.
10456         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
10457         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
10458         (DR_CONTROL_MASK): ... this.
10459         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
10460         (unsigned int aarch64_watchpoint_offset): New prototype.
10461         (aarch64_linux_set_debug_regs): Remove const from state.
10462         * utils.c (align_up, align_down): Move to ...
10463         * common/common-utils.c (align_up, align_down): ... here.
10464         * utils.h (align_up, align_down): Move to ...
10465         * common/common-utils.h (align_up, align_down): ... here.
10466
10467 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
10468
10469         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
10470         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
10471         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
10472         Re-implement to match the ABI as summarized in GCC's
10473         gcc/config/sparc/sparc.c.  All callers updated.
10474         (sparc32_store_arguments): Remove assertion.
10475
10476 2018-05-04  Tom Tromey  <tom@tromey.com>
10477
10478         * printcmd.c: Don't include tui.h.
10479         (decode_format): Use skip_spaces.
10480
10481 2018-05-04  Tom Tromey  <tom@tromey.com>
10482
10483         PR gdb/22619:
10484         * printcmd.c (last_count): New global.
10485         (x_command): Use saved count when repeating.
10486
10487 2018-05-04  Tom Tromey  <tom@tromey.com>
10488
10489         * nto-procfs.c (do_closedir_cleanup): Remove.
10490         (procfs_pidlist): Use gdb_dir_up.
10491         * procfs.c (do_closedir_cleanup): Remove.
10492         (proc_update_threads): Use gdb_dir_up.
10493         * common/filestuff.h (struct gdb_dir_deleter): New.
10494         (gdb_dir_up): New typedef.
10495
10496 2018-05-04  Tom Tromey  <tom@tromey.com>
10497
10498         * ada-lang.c (print_mention_exception): Use std::string.
10499
10500 2018-05-04  Tom Tromey  <tom@tromey.com>
10501
10502         * ada-lang.c (create_excep_cond_exprs): Update.
10503         (ada_exception_catchpoint_cond_string): Use std::string.
10504
10505 2018-05-04  Tom Tromey  <tom@tromey.com>
10506
10507         * ada-lang.c (xget_renaming_scope): Return std::string.
10508         (old_renaming_is_invisible): Update.
10509
10510 2018-05-04  Tom Tromey  <tom@tromey.com>
10511
10512         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
10513         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
10514
10515 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
10516
10517         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
10518
10519 2018-05-04  Tom Tromey  <tom@tromey.com>
10520
10521         * remote.c (remote_query_supported_append): Change type.
10522         (remote_check_symbols): Update.
10523
10524 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
10525
10526         PR gdb/11420
10527         * configure.ac: Prepend libpython.
10528         * python/python-config.py: Likewise.
10529         * configure: Regenerate.
10530
10531 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
10532
10533         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
10534
10535 2018-05-03  Pedro Alves  <palves@redhat.com>
10536
10537         * s390-linux-nat.c
10538         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
10539         override.  Write 'true' instead of '1'.
10540         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
10541         declaration.
10542
10543 2018-05-02  Pedro Alves  <palves@redhat.com>
10544
10545         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
10546         add_inf_child_target.
10547         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
10548         add_inf_child_target.
10549         * aix-thread.c (aix_thread_target_info): New.
10550         (aix_thread_target) <shortname, longname, doc>: Delete.
10551         <info>: New.
10552         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
10553         add_inf_child_target.
10554         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
10555         add_inf_child_target.
10556         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
10557         add_inf_child_target.
10558         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
10559         add_inf_child_target.
10560         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
10561         add_inf_child_target.
10562         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
10563         add_inf_child_target.
10564         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
10565         add_inf_child_target.
10566         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
10567         add_inf_child_target.
10568         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
10569         add_inf_child_target.
10570         * bfd-target.c (target_bfd_target_info): New.
10571         (target_bfd) <shortname, longname, doc>: Delete.
10572         <info>: New.
10573         * bsd-kvm.c (bsd_kvm_target_info): New.
10574         (bsd_kvm_target) <shortname, longname, doc>: Delete.
10575         <info>: New.
10576         (bsd_kvm_target::open): Rename to ...
10577         (bsd_kvm_target_open): ... this.  Adjust.
10578         * bsd-uthread.c (bsd_uthread_target_info): New.
10579         (bsd_uthread_target) <shortname, longname, doc>: Delete.
10580         <info>: New.
10581         * corefile.c (core_file_command): Adjust.
10582         * corelow.c (core_target_info): New.
10583         (core_target) <shortname, longname, doc>: Delete.
10584         <info>: New.
10585         (core_target::open): Rename to ...
10586         (core_target_open): ... this.  Adjust.
10587         * ctf.c (ctf_target_info): New.
10588         (ctf_target) <shortname, longname, doc>: Delete.
10589         <info>: New.
10590         (ctf_target::open): Rename to ...
10591         (ctf_target_open): ... this.
10592         (_initialize_ctf): Adjust.
10593         * exec.c (exec_target_info): New.
10594         (exec_target) <shortname, longname, doc>: Delete.
10595         <info>: New.
10596         (exec_target::open): Rename to ...
10597         (exec_target_open): ... this.
10598         * gdbcore.h (core_target_open): Declare.
10599         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
10600         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
10601         add_inf_child_target.
10602         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
10603         add_inf_child_target.
10604         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
10605         add_inf_child_target.
10606         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
10607         add_inf_child_target.
10608         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
10609         add_inf_child_target.
10610         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
10611         add_inf_child_target.
10612         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
10613         add_inf_child_target.
10614         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
10615         add_inf_child_target.
10616         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
10617         add_inf_child_target.
10618         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
10619         add_inf_child_target.
10620         * inf-child.c (inf_child_target_info): New.
10621         (inf_child_target::info): New.
10622         (inf_child_open_target): Remove 'target' parameter.  Use
10623         get_native_target instead.
10624         (inf_child_target::open): Delete.
10625         (add_inf_child_target): New.
10626         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
10627         Delete.
10628         <info>: New.
10629         (add_inf_child_target): Declare.
10630         (inf_child_open_target): Declare.
10631         * linux-thread-db.c (thread_db_target_info): New.
10632         (thread_db_target) <shortname, longname, doc>: Delete.
10633         <info>: New.
10634         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
10635         add_inf_child_target.
10636         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
10637         add_inf_child_target.
10638         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
10639         add_inf_child_target.
10640         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
10641         add_inf_child_target.
10642         * make-target-delegates (print_class): Adjust.
10643         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
10644         add_inf_child_target.
10645         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
10646         add_inf_child_target.
10647         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
10648         add_inf_child_target.
10649         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
10650         add_inf_child_target.
10651         * nto-procfs.c (nto_native_target_info): New.
10652         (nto_procfs_target_native) <shortname, longname, doc>:
10653         Delete.
10654         <info>: New.
10655         (nto_procfs_target_info): New.
10656         (nto_procfs_target_procfs) <shortname, longname, doc>:
10657         Delete.
10658         <info>: New.
10659         (init_procfs_targets): Adjust.
10660         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
10661         add_inf_child_target.
10662         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
10663         add_inf_child_target.
10664         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
10665         add_inf_child_target.
10666         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
10667         add_inf_child_target.
10668         * ravenscar-thread.c (ravenscar_target_info): New.
10669         (ravenscar_thread_target) <shortname, longname, doc>:
10670         Delete.
10671         <info>: New.
10672         * record-btrace.c (record_btrace_target_info):
10673         (record_btrace_target) <shortname, longname, doc>: Delete.
10674         <info>: New.
10675         (record_btrace_target::open): Rename to ...
10676         (record_btrace_target_open): ... this.  Adjust.
10677         * record-full.c (record_longname, record_doc): New.
10678         (record_full_base_target) <shortname, longname, doc>: Delete.
10679         <info>: New.
10680         (record_full_target_info): New.
10681         (record_full_target): <shortname>: Delete.
10682         <info>: New.
10683         (record_full_core_open_1, record_full_open_1): Update comments.
10684         (record_full_base_target::open): Rename to ...
10685         (record_full_open): ... this.
10686         (cmd_record_full_restore): Update.
10687         (_initialize_record_full): Update.
10688         * remote-sim.c (remote_sim_target_info): New.
10689         (gdbsim_target) <shortname, longname, doc>: Delete.
10690         <info>: New.
10691         (gdbsim_target::open): Rename to ...
10692         (gdbsim_target_open): ... this.
10693         (_initialize_remote_sim): Adjust.
10694         * remote.c (remote_doc): New.
10695         (remote_target_info): New.
10696         (remote_target) <shortname, longname, doc>: Delete.
10697         <info>: New.
10698         (extended_remote_target_info): New.
10699         (extended_remote_target) <shortname, longname, doc>: Delete.
10700         <info>: New.
10701         (remote_target::open_1): Make static.  Adjust.
10702         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
10703         * s390-linux-nat.c (_initialize_s390_nat): Use
10704         add_inf_child_target.
10705         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
10706         add_inf_child_target.
10707         * sol-thread.c (thread_db_target_info): New.
10708         (sol_thread_target) <shortname, longname, doc>: Delete.
10709         <info>: New.
10710         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
10711         add_inf_child_target.
10712         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
10713         add_inf_child_target.
10714         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
10715         add_inf_child_target.
10716         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
10717         add_inf_child_target.
10718         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
10719         add_inf_child_target.
10720         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
10721         add_inf_child_target.
10722         * spu-linux-nat.c (_initialize_spu_nat): Use
10723         add_inf_child_target.
10724         * spu-multiarch.c (spu_multiarch_target_info): New.
10725         (spu_multiarch_target) <shortname, longname, doc>: Delete.
10726         <info>: New.
10727         * target-delegates.c: Regenerate.
10728         * target.c: Include <unordered_map>.
10729         (target_ops_p): Delete.
10730         (DEF_VEC_P(target_ops_p)): Delete.
10731         (target_factories): New.
10732         (test_target_info): New.
10733         (test_target_ops::info): New.
10734         (open_target): Adjust to use target_factories.
10735         (add_target_with_completer): Rename to ...
10736         (add_target): ... this.  Change prototype.  Register target_info
10737         and open callback in target_factories.  Register target_info in
10738         command context instead of target_ops.
10739         (add_target): Delete old implementation.
10740         (add_deprecated_target_alias): Change prototype.  Adjust.
10741         (the_native_target): New.
10742         (set_native_target, get_native_target): New.
10743         (find_default_run_target): Use the_native_target.
10744         (find_attach_target, find_run_target): Simplify.
10745         (target_ops::open): Delete.
10746         (dummy_target_info): New.
10747         (dummy_target::shortname, dummy_target::longname)
10748         (dummy_target::doc): Delete.
10749         (dummy_target::info): New.
10750         (debug_target::shortname, debug_target::longname)
10751         (debug_target::doc): Delete.
10752         (debug_target::info): New.
10753         * target.h (struct target_info): New.
10754         (target_ops::~target_ops): Add comment.
10755         (target_ops::info): New.
10756         (target_ops::shortname, target_ops::longname, target_ops::doc): No
10757         longer virtual.  Implement in terms of target_info.
10758         (set_native_target, get_native_target): Declare.
10759         (target_open_ftype): New.
10760         (add_target, add_target_with_completer)
10761         (add_deprecated_target_alias): Change prototype.
10762         (test_target) <shortname, longname, doc>: Delete.
10763         <info>: New.
10764         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
10765         add_inf_child_target.
10766         * tracefile-tfile.c (tfile_target_info): New.
10767         (tfile_target) <shortname, longname, doc>: Delete.
10768         <info>: New.
10769         (tfile_target::open): Rename to ...
10770         (tfile_target_open): ... this.
10771         (_initialize_tracefile_tfile): Adjust.
10772         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
10773         add_inf_child_target.
10774         * windows-nat.c (_initialize_windows_nat): Use
10775         add_inf_child_target.
10776         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
10777         add_inf_child_target.
10778
10779 2018-05-02  Pedro Alves  <palves@redhat.com>
10780
10781         * linux-nat.h (linux_nat_target) <low_new_thread,
10782         low_delete_thread, low_new_fork, low_forget_process,
10783         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
10784         New virtual methods.
10785         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10786         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
10787         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
10788         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10789         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
10790         Delete.
10791         * linux-fork.c (delete_fork): Adjust to call low method.
10792         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
10793         (linux_nat_new_fork, linux_nat_forget_process_hook)
10794         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
10795         (linux_nat_status_is_event):
10796         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
10797         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
10798         to call low method.
10799         (sigtrap_is_event): Rename to ...
10800         (linux_nat_target::low_status_is_event): ... this.
10801         (linux_nat_set_status_is_event): Delete.
10802         (save_stop_reason, linux_nat_wait_1)
10803         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
10804         low methods.
10805         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10806         (linux_nat_set_new_fork, linux_nat_set_forget_process)
10807         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10808         (linux_nat_set_prepare_to_resume): Delete.
10809         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
10810         low virtual methods.
10811         * amd64-linux-nat.c: Likewise.
10812         * arm-linux-nat.c: Likewise.
10813         * i386-linux-nat.c: Likewise.
10814         * ia64-linux-nat.c: Likewise.
10815         * mips-linux-nat.c: Likewise.
10816         * ppc-linux-nat.c: Likewise.
10817         * s390-linux-nat.c: Likewise.
10818         * sparc64-linux-nat.c: Likewise.
10819         * x86-linux-nat.c: Likewise.
10820         * x86-linux-nat.h: Include "nat/x86-linux.h".
10821         (x86_linux_nat_target) <low_new_fork, low_forget_process,
10822         low_prepare_to_resume, low_new_thread, low_delete_thread>:
10823         Override methods.
10824
10825 2018-05-02  Pedro Alves  <palves@redhat.com>
10826
10827         * target.h (target_ops)
10828         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
10829         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
10830         stopped_by_watchpoint, have_continuable_watchpoint,
10831         stopped_data_address, watchpoint_addr_within_range,
10832         can_accel_watchpoint_condition, can_run, thread_alive,
10833         has_all_memory, has_memory, has_stack, has_registers,
10834         has_execution, can_async_p, is_async_p, supports_non_stop,
10835         always_non_stop_p, can_execute_reverse, supports_multi_process,
10836         supports_enable_disable_tracepoint,
10837         supports_disable_randomization, supports_string_tracing,
10838         supports_evaluation_of_breakpoint_conditions,
10839         can_run_breakpoint_commands, filesystem_is_local,
10840         can_download_tracepoint, get_trace_state_variable_value,
10841         set_trace_notes, get_tib_address, use_agent, can_use_agent,
10842         record_is_replaying, record_will_replay,
10843         augmented_libraries_svr4_read>: Adjust to return bool.
10844         * aarch64-linux-nat.c: All implementations adjusted.
10845         * aix-thread.c: All implementations adjusted.
10846         * arm-linux-nat.c: All implementations adjusted.
10847         * breakpoint.c: All implementations adjusted.
10848         * bsd-kvm.c: All implementations adjusted.
10849         * bsd-uthread.c: All implementations adjusted.
10850         * corelow.c: All implementations adjusted.
10851         * ctf.c: All implementations adjusted.
10852         * darwin-nat.c: All implementations adjusted.
10853         * darwin-nat.h: All implementations adjusted.
10854         * exec.c: All implementations adjusted.
10855         * fbsd-nat.c: All implementations adjusted.
10856         * fbsd-nat.h: All implementations adjusted.
10857         * gnu-nat.c: All implementations adjusted.
10858         * gnu-nat.h: All implementations adjusted.
10859         * go32-nat.c: All implementations adjusted.
10860         * ia64-linux-nat.c: All implementations adjusted.
10861         * inf-child.c: All implementations adjusted.
10862         * inf-child.h: All implementations adjusted.
10863         * inf-ptrace.c: All implementations adjusted.
10864         * inf-ptrace.h: All implementations adjusted.
10865         * linux-nat.c: All implementations adjusted.
10866         * linux-nat.h: All implementations adjusted.
10867         * mips-linux-nat.c: All implementations adjusted.
10868         * nto-procfs.c: All implementations adjusted.
10869         * ppc-linux-nat.c: All implementations adjusted.
10870         * procfs.c: All implementations adjusted.
10871         * ravenscar-thread.c: All implementations adjusted.
10872         * record-btrace.c: All implementations adjusted.
10873         * record-full.c: All implementations adjusted.
10874         * remote-sim.c: All implementations adjusted.
10875         * remote.c: All implementations adjusted.
10876         * s390-linux-nat.c: All implementations adjusted.
10877         * sol-thread.c: All implementations adjusted.
10878         * spu-multiarch.c: All implementations adjusted.
10879         * target-delegates.c: All implementations adjusted.
10880         * target.c: All implementations adjusted.
10881         * target.h: All implementations adjusted.
10882         * tracefile-tfile.c: All implementations adjusted.
10883         * tracefile.c: All implementations adjusted.
10884         * tracefile.h: All implementations adjusted.
10885         * windows-nat.c: All implementations adjusted.
10886         * x86-linux-nat.h: All implementations adjusted.
10887         * x86-nat.h: All implementations adjusted.
10888
10889 2018-05-02  Pedro Alves  <palves@redhat.com>
10890
10891         * make-target-delegates (scan_target_h): Don't trim lines here.
10892         Replace sequences of tabs and/or whitespace with a single
10893         whitespace.
10894         (top level, parsing methods): Trim each line before processing it
10895         here.
10896
10897 2018-05-02  Pedro Alves  <palves@redhat.com>
10898             John Baldwin  <jhb@freebsd.org>
10899
10900         * target.h (enum strata) <debug_stratum>: New.
10901         (struct target_ops) <all delegation methods>: Replace by C++
10902         virtual methods, and drop "to_" prefix.  All references updated
10903         throughout.
10904         <to_shortname, to_longname, to_doc, to_data,
10905         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
10906         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
10907         virtual methods.  All references updated throughout.
10908         <can_attach, supports_terminal_ours, can_create_inferior,
10909         get_thread_control_capabilities, attach_no_wait>: New
10910         virtual methods.
10911         <insert_breakpoint, remove_breakpoint>: Now
10912         TARGET_DEFAULT_NORETURN methods.
10913         <info_proc>: Now returns bool.
10914         <to_magic>: Delete.
10915         (OPS_MAGIC): Delete.
10916         (current_target): Delete.  All references replaced by references
10917         to ...
10918         (target_stack): ... this.  New.
10919         (target_shortname, target_longname): Adjust.
10920         (target_can_run): Now a function declaration.
10921         (default_child_has_all_memory, default_child_has_memory)
10922         (default_child_has_stack, default_child_has_registers)
10923         (default_child_has_execution): Remove target_ops parameter.
10924         (complete_target_initialization): Delete.
10925         (memory_breakpoint_target): New template class.
10926         (test_target_ops): Refactor as a C++ class with virtual methods.
10927         * make-target-delegates (NAME_PART): Tighten.
10928         (POINTER_PART, CP_SYMBOL): New.
10929         (SIMPLE_RETURN_PART): Reimplement.
10930         (VEC_RETURN_PART): Expect less.
10931         (RETURN_PART, VIRTUAL_PART): New.
10932         (METHOD): Adjust to C++ virtual methods.
10933         (scan_target_h): Remove reference to C99.
10934         (dname): Output "target_ops::" prefix.
10935         (write_function_header): Adjust to output a C++ class method.
10936         (write_declaration): New.
10937         (write_delegator): Adjust to output a C++ class method.
10938         (tdname): Output "dummy_target::" prefix.
10939         (write_tdefault, write_debugmethod): Adjust to output a C++ class
10940         method.
10941         (tdefault_names, debug_names): Delete.
10942         (return_types, tdefaults, styles, argtypes_array): New.
10943         (top level): All methods are delegators.
10944         (print_class): New.
10945         (top level): Print dummy_target and debug_target classes.
10946         * target-delegates.c: Regenerate.
10947         * target-debug.h (target_debug_print_enum_info_proc_what)
10948         (target_debug_print_thread_control_capabilities)
10949         (target_debug_print_thread_info_p): New.
10950         * target.c (dummy_target): Delete.
10951         (the_dummy_target, the_debug_target): New.
10952         (target_stack): Now extern.
10953         (set_targetdebug): Push/unpush debug target.
10954         (default_child_has_all_memory, default_child_has_memory)
10955         (default_child_has_stack, default_child_has_registers)
10956         (default_child_has_execution): Remove target_ops parameter.
10957         (complete_target_initialization): Delete.
10958         (add_target_with_completer): No longer call
10959         complete_target_initialization.
10960         (target_supports_terminal_ours): Use regular delegation.
10961         (update_current_target): Delete.
10962         (push_target): No longer check magic number.  Don't call
10963         update_current_target.
10964         (unpush_target): Don't call update_current_target.
10965         (target_is_pushed): No longer check magic number.
10966         (target_require_runnable): Skip for all stratums over
10967         process_stratum.
10968         (target_ops::info_proc): New.
10969         (target_info_proc): Use find_target_at and
10970         find_default_run_target.
10971         (target_supports_disable_randomization): Use regular delegation.
10972         (target_get_osdata): Use find_target_at.
10973         (target_ops::open, target_ops::close, target_ops::can_attach)
10974         (target_ops::attach, target_ops::can_create_inferior)
10975         (target_ops::create_inferior, target_ops::can_run)
10976         (target_can_run): New.
10977         (default_fileio_target): Use regular delegation.
10978         (target_ops::fileio_open, target_ops::fileio_pwrite)
10979         (target_ops::fileio_pread, target_ops::fileio_fstat)
10980         (target_ops::fileio_close, target_ops::fileio_unlink)
10981         (target_ops::fileio_readlink): New.
10982         (target_fileio_open_1, target_fileio_unlink)
10983         (target_fileio_readlink): Always call the target method.  Handle
10984         FILEIO_ENOSYS.
10985         (return_zero, return_zero_has_execution): Delete.
10986         (init_dummy_target): Delete.
10987         (dummy_target::dummy_target, dummy_target::shortname)
10988         (dummy_target::longname, dummy_target::doc)
10989         (debug_target::debug_target, debug_target::shortname)
10990         (debug_target::longname, debug_target::doc): New.
10991         (target_supports_delete_record): Use regular delegation.
10992         (setup_target_debug): Delete.
10993         (maintenance_print_target_stack): Skip debug_stratum.
10994         (initialize_targets): Instantiate the_dummy_target and
10995         the_debug_target.
10996         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
10997         use target_stack.
10998         (target_auxv_search, fprint_target_auxv): Adjust.
10999         (info_auxv_command): Adjust to use target_stack.
11000         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
11001         * exceptions.c (print_flush): Handle a NULL target_stack.
11002         * regcache.c (target_ops_no_register): Refactor as class with
11003         virtual methods.
11004
11005         * exec.c (exec_target): New class.
11006         (exec_ops): Now an exec_target.
11007         (exec_open, exec_close_1, exec_get_section_table)
11008         (exec_xfer_partial, exec_files_info, exec_has_memory)
11009         (exec_make_note_section): Refactor as exec_target methods.
11010         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
11011         Delete.
11012         (exec_target::find_memory_regions): New.
11013         (_initialize_exec): Don't call init_exec_ops.
11014         * gdbcore.h (exec_file_clear): Delete.
11015
11016         * corefile.c (core_target): Delete.
11017         (core_file_command): Adjust.
11018         * corelow.c (core_target): New class.
11019         (the_core_target): New.
11020         (core_close): Remove target_ops parameter.
11021         (core_close_cleanup): Adjust.
11022         (core_target::close): New.
11023         (core_open, core_detach, get_core_registers, core_files_info)
11024         (core_xfer_partial, core_thread_alive, core_read_description)
11025         (core_pid_to_str, core_thread_name, core_has_memory)
11026         (core_has_stack, core_has_registers, core_info_proc): Rework as
11027         core_target methods.
11028         (ignore, core_remove_breakpoint, init_core_ops): Delete.
11029         (_initialize_corelow): Initialize the_core_target.
11030         * gdbcore.h (core_target): Delete.
11031         (the_core_target): New.
11032
11033         * ctf.c: (ctf_target): New class.
11034         (ctf_ops): Now a ctf_target.
11035         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
11036         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
11037         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
11038         methods.
11039         (init_ctf_ops): Delete.
11040         (_initialize_ctf): Don't call it.
11041         * tracefile-tfile.c (tfile_target): New class.
11042         (tfile_ops): Now a tfile_target.
11043         (tfile_open, tfile_close, tfile_files_info)
11044         (tfile_get_tracepoint_status, tfile_trace_find)
11045         (tfile_fetch_registers, tfile_xfer_partial)
11046         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
11047         Refactor as tfile_target methods.
11048         (tfile_xfer_partial_features): Remove target_ops parameter.
11049         (init_tfile_ops): Delete.
11050         (_initialize_tracefile_tfile): Don't call it.
11051         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
11052         (tracefile_has_stack, tracefile_has_registers)
11053         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
11054         tracefile_target methods.
11055         (init_tracefile_ops): Delete.
11056         (tracefile_target::tracefile_target): New.
11057         * tracefile.h: Include "target.h".
11058         (tracefile_target): New class.
11059         (init_tracefile_ops): Delete.
11060
11061         * spu-multiarch.c (spu_multiarch_target): New class.
11062         (spu_ops): Now a spu_multiarch_target.
11063         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
11064         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
11065         (spu_search_memory, spu_mourn_inferior): Refactor as
11066         spu_multiarch_target methods.
11067         (init_spu_ops): Delete.
11068         (_initialize_spu_multiarch): Remove references to init_spu_ops,
11069         complete_target_initialization.
11070
11071         * ravenscar-thread.c (ravenscar_thread_target): New class.
11072         (ravenscar_ops): Now a ravenscar_thread_target.
11073         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
11074         (ravenscar_thread_alive, ravenscar_pid_to_str)
11075         (ravenscar_fetch_registers, ravenscar_store_registers)
11076         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
11077         (ravenscar_stopped_by_hw_breakpoint)
11078         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
11079         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
11080         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
11081         methods.
11082         (init_ravenscar_thread_ops): Delete.
11083         (_initialize_ravenscar): Remove references to
11084         init_ravenscar_thread_ops and complete_target_initialization.
11085
11086         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
11087         (bsd_uthread_target): New class.
11088         (bsd_uthread_ops): Now a bsd_uthread_target.
11089         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
11090         (bsd_uthread_close, bsd_uthread_mourn_inferior)
11091         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
11092         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
11093         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
11094         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
11095         (bsd_uthread_target): Delete function.
11096         (_initialize_bsd_uthread): Remove reference to
11097         complete_target_initialization.
11098
11099         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
11100         (target_bfd): ... this new class.
11101         (target_bfd_xfer_partial, target_bfd_get_section_table)
11102         (target_bfd_close): Refactor as target_bfd methods.
11103         (target_bfd::~target_bfd): New.
11104         (target_bfd_reopen): Adjust.
11105         (target_bfd::close): New.
11106
11107         * record-btrace.c (record_btrace_target): New class.
11108         (record_btrace_ops): Now a record_btrace_target.
11109         (record_btrace_open, record_btrace_stop_recording)
11110         (record_btrace_disconnect, record_btrace_close)
11111         (record_btrace_async, record_btrace_info)
11112         (record_btrace_insn_history, record_btrace_insn_history_range)
11113         (record_btrace_insn_history_from, record_btrace_call_history)
11114         (record_btrace_call_history_range)
11115         (record_btrace_call_history_from, record_btrace_record_method)
11116         (record_btrace_is_replaying, record_btrace_will_replay)
11117         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
11118         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
11119         (record_btrace_store_registers, record_btrace_prepare_to_store)
11120         (record_btrace_to_get_unwinder)
11121         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
11122         (record_btrace_commit_resume, record_btrace_wait)
11123         (record_btrace_stop, record_btrace_can_execute_reverse)
11124         (record_btrace_stopped_by_sw_breakpoint)
11125         (record_btrace_supports_stopped_by_sw_breakpoint)
11126         (record_btrace_stopped_by_hw_breakpoint)
11127         (record_btrace_supports_stopped_by_hw_breakpoint)
11128         (record_btrace_update_thread_list, record_btrace_thread_alive)
11129         (record_btrace_goto_begin, record_btrace_goto_end)
11130         (record_btrace_goto, record_btrace_stop_replaying_all)
11131         (record_btrace_execution_direction)
11132         (record_btrace_prepare_to_generate_core)
11133         (record_btrace_done_generating_core): Refactor as
11134         record_btrace_target methods.
11135         (init_record_btrace_ops): Delete.
11136         (_initialize_record_btrace): Remove reference to
11137         init_record_btrace_ops.
11138         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
11139         the execution_direction global.
11140         (record_full_base_target, record_full_target)
11141         (record_full_core_target): New classes.
11142         (record_full_ops): Now a record_full_target.
11143         (record_full_core_ops): Now a record_full_core_target.
11144         (record_full_target::detach, record_full_target::disconnect)
11145         (record_full_core_target::disconnect)
11146         (record_full_target::mourn_inferior, record_full_target::kill):
11147         New.
11148         (record_full_open, record_full_close, record_full_async): Refactor
11149         as methods of the record_full_base_target class.
11150         (record_full_resume, record_full_commit_resume): Refactor
11151         as methods of the record_full_target class.
11152         (record_full_wait, record_full_stopped_by_watchpoint)
11153         (record_full_stopped_data_address)
11154         (record_full_stopped_by_sw_breakpoint)
11155         (record_full_supports_stopped_by_sw_breakpoint)
11156         (record_full_stopped_by_hw_breakpoint)
11157         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
11158         methods of the record_full_base_target class.
11159         (record_full_store_registers, record_full_xfer_partial)
11160         (record_full_insert_breakpoint, record_full_remove_breakpoint):
11161         Refactor as methods of the record_full_target class.
11162         (record_full_can_execute_reverse, record_full_get_bookmark)
11163         (record_full_goto_bookmark, record_full_execution_direction)
11164         (record_full_record_method, record_full_info, record_full_delete)
11165         (record_full_is_replaying, record_full_will_replay)
11166         (record_full_goto_begin, record_full_goto_end, record_full_goto)
11167         (record_full_stop_replaying): Refactor as methods of the
11168         record_full_base_target class.
11169         (record_full_core_resume, record_full_core_kill)
11170         (record_full_core_fetch_registers)
11171         (record_full_core_prepare_to_store)
11172         (record_full_core_store_registers, record_full_core_xfer_partial)
11173         (record_full_core_insert_breakpoint)
11174         (record_full_core_remove_breakpoint)
11175         (record_full_core_has_execution): Refactor
11176         as methods of the record_full_core_target class.
11177         (record_full_base_target::supports_delete_record): New.
11178         (init_record_full_ops): Delete.
11179         (init_record_full_core_ops): Delete.
11180         (record_full_save): Refactor as method of the
11181         record_full_base_target class.
11182         (_initialize_record_full): Remove references to
11183         init_record_full_ops and init_record_full_core_ops.
11184
11185         * remote.c (remote_target, extended_remote_target): New classes.
11186         (remote_ops): Now a remote_target.
11187         (extended_remote_ops): Now an extended_remote_target.
11188         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
11189         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
11190         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
11191         (remote_pass_signals, remote_set_syscall_catchpoint)
11192         (remote_program_signals, )
11193         (remote_thread_always_alive): Remove target_ops parameter.
11194         (remote_thread_alive, remote_thread_name)
11195         (remote_update_thread_list, remote_threads_extra_info)
11196         (remote_static_tracepoint_marker_at)
11197         (remote_static_tracepoint_markers_by_strid)
11198         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
11199         (remote_open): Refactor as methods of remote_target.
11200         (extended_remote_open, extended_remote_detach)
11201         (extended_remote_attach, extended_remote_post_attach):
11202         (extended_remote_supports_disable_randomization)
11203         (extended_remote_create_inferior): : Refactor as method of
11204         extended_remote_target.
11205         (remote_set_permissions, remote_open_1, remote_detach)
11206         (remote_follow_fork, remote_follow_exec, remote_disconnect)
11207         (remote_resume, remote_commit_resume, remote_stop)
11208         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
11209         (remote_terminal_ours, remote_wait, remote_fetch_registers)
11210         (remote_prepare_to_store, remote_store_registers)
11211         (remote_flash_erase, remote_flash_done, remote_files_info)
11212         (remote_kill, remote_mourn, remote_insert_breakpoint)
11213         (remote_remove_breakpoint, remote_insert_watchpoint)
11214         (remote_watchpoint_addr_within_range)
11215         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
11216         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
11217         (remote_supports_stopped_by_sw_breakpoint)
11218         (remote_stopped_by_hw_breakpoint)
11219         (remote_supports_stopped_by_hw_breakpoint)
11220         (remote_stopped_by_watchpoint, remote_stopped_data_address)
11221         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
11222         (remote_verify_memory): Refactor as methods of remote_target.
11223         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
11224         parameter.
11225         (remote_xfer_partial, remote_get_memory_xfer_limit)
11226         (remote_search_memory, remote_rcmd, remote_memory_map)
11227         (remote_pid_to_str, remote_get_thread_local_address)
11228         (remote_get_tib_address, remote_read_description): Refactor as
11229         methods of remote_target.
11230         (remote_target::fileio_open, remote_target::fileio_pwrite)
11231         (remote_target::fileio_pread, remote_target::fileio_close): New.
11232         (remote_hostio_readlink, remote_hostio_fstat)
11233         (remote_filesystem_is_local, remote_can_execute_reverse)
11234         (remote_supports_non_stop, remote_supports_disable_randomization)
11235         (remote_supports_multi_process, remote_supports_cond_breakpoints)
11236         (remote_supports_enable_disable_tracepoint)
11237         (remote_supports_string_tracing)
11238         (remote_can_run_breakpoint_commands, remote_trace_init)
11239         (remote_download_tracepoint, remote_can_download_tracepoint)
11240         (remote_download_trace_state_variable, remote_enable_tracepoint)
11241         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
11242         (remote_trace_start, remote_get_trace_status)
11243         (remote_get_tracepoint_status, remote_trace_stop)
11244         (remote_trace_find, remote_get_trace_state_variable_value)
11245         (remote_save_trace_data, remote_get_raw_trace_data)
11246         (remote_set_disconnected_tracing, remote_core_of_thread)
11247         (remote_set_circular_trace_buffer, remote_traceframe_info)
11248         (remote_get_min_fast_tracepoint_insn_len)
11249         (remote_set_trace_buffer_size, remote_set_trace_notes)
11250         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
11251         (remote_disable_btrace, remote_teardown_btrace)
11252         (remote_read_btrace, remote_btrace_conf)
11253         (remote_augmented_libraries_svr4_read, remote_load)
11254         (remote_pid_to_exec_file, remote_can_do_single_step)
11255         (remote_execution_direction, remote_thread_handle_to_thread_info):
11256         Refactor as methods of remote_target.
11257         (init_remote_ops, init_extended_remote_ops): Delete.
11258         (remote_can_async_p, remote_is_async_p, remote_async)
11259         (remote_thread_events, remote_upload_tracepoints)
11260         (remote_upload_trace_state_variables): Refactor as methods of
11261         remote_target.
11262         (_initialize_remote): Remove references to init_remote_ops and
11263         init_extended_remote_ops.
11264
11265         * remote-sim.c (gdbsim_target): New class.
11266         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
11267         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
11268         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
11269         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
11270         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
11271         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
11272         Refactor as methods of gdbsim_target.
11273         (gdbsim_ops): Now a gdbsim_target.
11274         (init_gdbsim_ops): Delete.
11275         (gdbsim_cntrl_c): Adjust.
11276         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
11277
11278         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
11279         (the_amd64_linux_nat_target): New.
11280         (amd64_linux_fetch_inferior_registers)
11281         (amd64_linux_store_inferior_registers): Refactor as methods of
11282         amd64_linux_nat_target.
11283         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
11284         * i386-linux-nat.c: Don't include "linux-nat.h".
11285         (i386_linux_nat_target): New class.
11286         (the_i386_linux_nat_target): New.
11287         (i386_linux_fetch_inferior_registers)
11288         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
11289         as methods of i386_linux_nat_target.
11290         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
11291         * inf-child.c (inf_child_ops): Delete.
11292         (inf_child_fetch_inferior_registers)
11293         (inf_child_store_inferior_registers): Delete.
11294         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
11295         methods of inf_child_target.
11296         (inf_child_target::supports_terminal_ours)
11297         (inf_child_target::terminal_init)
11298         (inf_child_target::terminal_inferior)
11299         (inf_child_target::terminal_ours_for_output)
11300         (inf_child_target::terminal_ours, inf_child_target::interrupt)
11301         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
11302         New.
11303         (inf_child_open, inf_child_disconnect, inf_child_close)
11304         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
11305         (inf_child_post_startup_inferior, inf_child_can_run)
11306         (inf_child_pid_to_exec_file): Refactor as methods of
11307         inf_child_target.
11308         (inf_child_follow_fork): Delete.
11309         (inf_child_target::can_create_inferior)
11310         (inf_child_target::can_attach): New.
11311         (inf_child_target::has_all_memory, inf_child_target::has_memory)
11312         (inf_child_target::has_stack, inf_child_target::has_registers)
11313         (inf_child_target::has_execution): New.
11314         (inf_child_fileio_open, inf_child_fileio_pwrite)
11315         (inf_child_fileio_pread, inf_child_fileio_fstat)
11316         (inf_child_fileio_close, inf_child_fileio_unlink)
11317         (inf_child_fileio_readlink, inf_child_use_agent)
11318         (inf_child_can_use_agent): Refactor as methods of
11319         inf_child_target.
11320         (return_zero, inf_child_target): Delete.
11321         (inf_child_target::inf_child_target): New.
11322         * inf-child.h: Include "target.h".
11323         (inf_child_target): Delete function prototype.
11324         (inf_child_target): New class.
11325         (inf_child_open_target, inf_child_mourn_inferior)
11326         (inf_child_maybe_unpush_target): Delete.
11327         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
11328         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
11329         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
11330         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
11331         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
11332         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
11333         (inf_ptrace_wait, inf_ptrace_xfer_partial)
11334         (inf_ptrace_thread_alive, inf_ptrace_files_info)
11335         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
11336         methods of inf_ptrace_target.
11337         (inf_ptrace_target): Delete function.
11338         * inf-ptrace.h: Include "inf-child.h".
11339         (inf_ptrace_target): Delete function declaration.
11340         (inf_ptrace_target): New class.
11341         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
11342         * linux-nat.c (linux_target): New.
11343         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
11344         (linux_nat_target::~linux_nat_target): New.
11345         (linux_child_post_attach, linux_child_post_startup_inferior)
11346         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
11347         (linux_child_remove_fork_catchpoint)
11348         (linux_child_insert_vfork_catchpoint)
11349         (linux_child_remove_vfork_catchpoint)
11350         (linux_child_insert_exec_catchpoint)
11351         (linux_child_remove_exec_catchpoint)
11352         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
11353         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
11354         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
11355         (linux_nat_stopped_data_address)
11356         (linux_nat_stopped_by_sw_breakpoint)
11357         (linux_nat_supports_stopped_by_sw_breakpoint)
11358         (linux_nat_stopped_by_hw_breakpoint)
11359         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
11360         (linux_nat_kill, linux_nat_mourn_inferior)
11361         (linux_nat_xfer_partial, linux_nat_thread_alive)
11362         (linux_nat_update_thread_list, linux_nat_pid_to_str)
11363         (linux_nat_thread_name, linux_child_pid_to_exec_file)
11364         (linux_child_static_tracepoint_markers_by_strid)
11365         (linux_nat_is_async_p, linux_nat_can_async_p)
11366         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
11367         (linux_nat_supports_multi_process)
11368         (linux_nat_supports_disable_randomization, linux_nat_async)
11369         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
11370         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
11371         (linux_nat_fileio_open, linux_nat_fileio_readlink)
11372         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
11373         methods of linux_nat_target.
11374         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
11375         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
11376         parameter.
11377         (check_stopped_by_watchpoint): Adjust.
11378         (linux_xfer_partial): Delete.
11379         (linux_target_install_ops, linux_target, linux_nat_add_target):
11380         Delete.
11381         (linux_nat_target::linux_nat_target): New.
11382         * linux-nat.h: Include "inf-ptrace.h".
11383         (linux_nat_target): New.
11384         (linux_target, linux_target_install_ops, linux_nat_add_target):
11385         Delete function declarations.
11386         (linux_target): Declare global.
11387         * linux-thread-db.c (thread_db_target): New.
11388         (thread_db_target::thread_db_target): New.
11389         (thread_db_ops): Delete.
11390         (the_thread_db_target): New.
11391         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
11392         (thread_db_update_thread_list, thread_db_pid_to_str)
11393         (thread_db_extra_thread_info)
11394         (thread_db_thread_handle_to_thread_info)
11395         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
11396         (thread_db_resume): Refactor as methods of thread_db_target.
11397         (init_thread_db_ops): Delete.
11398         (_initialize_thread_db): Remove reference to init_thread_db_ops.
11399         * x86-linux-nat.c: Don't include "linux-nat.h".
11400         (super_post_startup_inferior): Delete.
11401         (x86_linux_nat_target::~x86_linux_nat_target): New.
11402         (x86_linux_child_post_startup_inferior)
11403         (x86_linux_read_description, x86_linux_enable_btrace)
11404         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
11405         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
11406         methods of x86_linux_nat_target.
11407         (x86_linux_create_target): Delete.  Bits folded ...
11408         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
11409         pointer.
11410         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
11411         (x86_linux_nat_target): New class.
11412         (x86_linux_create_target): Delete.
11413         (x86_linux_add_target): Now takes a linux_nat_target pointer.
11414         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
11415         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
11416         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
11417         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
11418         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
11419         make extern.
11420         (x86_use_watchpoints): Delete.
11421         * x86-nat.h: Include "breakpoint.h" and "target.h".
11422         (x86_use_watchpoints): Delete.
11423         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
11424         (x86_stopped_by_watchpoint, x86_stopped_data_address)
11425         (x86_insert_watchpoint, x86_remove_watchpoint)
11426         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
11427         (x86_stopped_by_hw_breakpoint): New declarations.
11428         (x86_nat_target): New template class.
11429
11430         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
11431         (the_ppc_linux_nat_target): New.
11432         (ppc_linux_fetch_inferior_registers)
11433         (ppc_linux_can_use_hw_breakpoint)
11434         (ppc_linux_region_ok_for_hw_watchpoint)
11435         (ppc_linux_ranged_break_num_registers)
11436         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
11437         (ppc_linux_insert_mask_watchpoint)
11438         (ppc_linux_remove_mask_watchpoint)
11439         (ppc_linux_can_accel_watchpoint_condition)
11440         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
11441         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
11442         (ppc_linux_watchpoint_addr_within_range)
11443         (ppc_linux_masked_watch_num_registers)
11444         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
11445         (ppc_linux_read_description): Refactor as methods of
11446         ppc_linux_nat_target.
11447         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
11448
11449         * procfs.c (procfs_xfer_partial): Delete forward declaration.
11450         (procfs_target): New class.
11451         (the_procfs_target): New.
11452         (procfs_target): Delete function.
11453         (procfs_auxv_parse, procfs_attach, procfs_detach)
11454         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
11455         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
11456         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
11457         (procfs_create_inferior, procfs_update_thread_list)
11458         (procfs_thread_alive, procfs_pid_to_str)
11459         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
11460         (procfs_stopped_data_address, procfs_insert_watchpoint)
11461         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
11462         (proc_find_memory_regions, procfs_info_proc)
11463         (procfs_make_note_section): Refactor as methods of procfs_target.
11464         (_initialize_procfs): Adjust.
11465         * sol-thread.c (sol_thread_target): New class.
11466         (sol_thread_ops): Now a sol_thread_target.
11467         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
11468         (sol_thread_fetch_registers, sol_thread_store_registers)
11469         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
11470         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
11471         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
11472         (init_sol_thread_ops): Delete.
11473         (_initialize_sol_thread): Adjust.  Remove references to
11474         init_sol_thread_ops and complete_target_initialization.
11475
11476         * windows-nat.c (windows_nat_target): New class.
11477         (windows_fetch_inferior_registers)
11478         (windows_store_inferior_registers, windows_resume, windows_wait)
11479         (windows_attach, windows_detach, windows_pid_to_exec_file)
11480         (windows_files_info, windows_create_inferior)
11481         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
11482         (windows_close, windows_pid_to_str, windows_xfer_partial)
11483         (windows_get_tib_address, windows_get_ada_task_ptid)
11484         (windows_thread_name, windows_thread_alive): Refactor as
11485         windows_nat_target methods.
11486         (do_initial_windows_stuff): Adjust.
11487         (windows_target): Delete function.
11488         (_initialize_windows_nat): Adjust.
11489
11490         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
11491         (darwin_mourn_inferior, darwin_kill_inferior)
11492         (darwin_create_inferior, darwin_attach, darwin_detach)
11493         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
11494         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
11495         (darwin_supports_multi_process): Refactor as darwin_nat_target
11496         methods.
11497         (darwin_resume_to, darwin_files_info): Delete.
11498         (_initialize_darwin_inferior): Rename to ...
11499         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
11500         * darwin-nat.h: Include "inf-child.h".
11501         (darwin_nat_target): New class.
11502         (darwin_complete_target): Delete.
11503         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
11504         (darwin_target): New.
11505         (i386_darwin_fetch_inferior_registers)
11506         (i386_darwin_store_inferior_registers): Refactor as methods of
11507         darwin_nat_target.
11508         (darwin_complete_target): Delete, with ...
11509         (_initialize_i386_darwin_nat): ... bits factored out here.
11510
11511         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
11512         (the_alpha_linux_nat_target): New.
11513         (alpha_linux_register_u_offset): Refactor as
11514         alpha_linux_nat_target method.
11515         (_initialize_alpha_linux_nat): Adjust.
11516         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
11517         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11518         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
11519         methods of linux_nat_trad_target.
11520         (linux_trad_target): Delete.
11521         * linux-nat-trad.h (linux_trad_target): Delete function.
11522         (linux_nat_trad_target): New class.
11523         * mips-linux-nat.c (mips_linux_nat_target): New class.
11524         (super_fetch_registers, super_store_registers, super_close):
11525         Delete.
11526         (the_mips_linux_nat_target): New.
11527         (mips64_linux_regsets_fetch_registers)
11528         (mips64_linux_regsets_store_registers)
11529         (mips64_linux_fetch_registers, mips64_linux_store_registers)
11530         (mips_linux_register_u_offset, mips_linux_read_description)
11531         (mips_linux_can_use_hw_breakpoint)
11532         (mips_linux_stopped_by_watchpoint)
11533         (mips_linux_stopped_data_address)
11534         (mips_linux_region_ok_for_hw_watchpoint)
11535         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
11536         (mips_linux_close): Refactor as methods of mips_linux_nat.
11537         (_initialize_mips_linux_nat): Adjust to C++ification.
11538
11539         * aix-thread.c (aix_thread_target): New class.
11540         (aix_thread_ops): Now an aix_thread_target.
11541         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
11542         (aix_thread_fetch_registers, aix_thread_store_registers)
11543         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
11544         (aix_thread_thread_alive, aix_thread_pid_to_str)
11545         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
11546         Refactor as methods of aix_thread_target.
11547         (init_aix_thread_ops): Delete.
11548         (_initialize_aix_thread): Remove references to init_aix_thread_ops
11549         and complete_target_initialization.
11550         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
11551         (rs6000_nat_target): New class.
11552         (the_rs6000_nat_target): New.
11553         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
11554         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
11555         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
11556         (super_create_inferior): Delete.
11557         (_initialize_rs6000_nat): Adjust to C++ification.
11558
11559         * arm-linux-nat.c (arm_linux_nat_target): New class.
11560         (the_arm_linux_nat_target): New.
11561         (arm_linux_fetch_inferior_registers)
11562         (arm_linux_store_inferior_registers, arm_linux_read_description)
11563         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
11564         (arm_linux_remove_hw_breakpoint)
11565         (arm_linux_region_ok_for_hw_watchpoint)
11566         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
11567         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
11568         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
11569         arm_linux_nat_target.
11570         (_initialize_arm_linux_nat): Adjust to C++ification.
11571
11572         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
11573         (the_aarch64_linux_nat_target): New.
11574         (aarch64_linux_fetch_inferior_registers)
11575         (aarch64_linux_store_inferior_registers)
11576         (aarch64_linux_child_post_startup_inferior)
11577         (aarch64_linux_read_description)
11578         (aarch64_linux_can_use_hw_breakpoint)
11579         (aarch64_linux_insert_hw_breakpoint)
11580         (aarch64_linux_remove_hw_breakpoint)
11581         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
11582         (aarch64_linux_region_ok_for_hw_watchpoint)
11583         (aarch64_linux_stopped_data_address)
11584         (aarch64_linux_stopped_by_watchpoint)
11585         (aarch64_linux_watchpoint_addr_within_range)
11586         (aarch64_linux_can_do_single_step): Refactor as methods of
11587         aarch64_linux_nat_target.
11588         (super_post_startup_inferior): Delete.
11589         (_initialize_aarch64_linux_nat): Adjust to C++ification.
11590
11591         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
11592         (the_hppa_linux_nat_target): New.
11593         (hppa_linux_fetch_inferior_registers)
11594         (hppa_linux_store_inferior_registers): Refactor as methods of
11595         hppa_linux_nat_target.
11596         (_initialize_hppa_linux_nat): Adjust to C++ification.
11597
11598         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
11599         (the_ia64_linux_nat_target): New.
11600         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
11601         (ia64_linux_stopped_data_address)
11602         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
11603         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
11604         ia64_linux_nat_target methods.
11605         (super_xfer_partial): Delete.
11606         (_initialize_ia64_linux_nat): Adjust to C++ification.
11607
11608         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
11609         (the_m32r_linux_nat_target): New.
11610         (m32r_linux_fetch_inferior_registers)
11611         (m32r_linux_store_inferior_registers): Refactor as
11612         m32r_linux_nat_target methods.
11613         (_initialize_m32r_linux_nat): Adjust to C++ification.
11614
11615         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
11616         (the_m68k_linux_nat_target): New.
11617         (m68k_linux_fetch_inferior_registers)
11618         (m68k_linux_store_inferior_registers): Refactor as
11619         m68k_linux_nat_target methods.
11620         (_initialize_m68k_linux_nat): Adjust to C++ification.
11621
11622         * s390-linux-nat.c (s390_linux_nat_target): New class.
11623         (the_s390_linux_nat_target): New.
11624         (s390_linux_fetch_inferior_registers)
11625         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
11626         (s390_insert_watchpoint, s390_remove_watchpoint)
11627         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
11628         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
11629         (s390_auxv_parse, s390_read_description): Refactor as methods of
11630         s390_linux_nat_target.
11631         (_initialize_s390_nat): Adjust to C++ification.
11632
11633         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
11634         (the_sparc_linux_nat_target): New.
11635         (_initialize_sparc_linux_nat): Adjust to C++ification.
11636         * sparc-nat.c (sparc_fetch_inferior_registers)
11637         (sparc_store_inferior_registers): Remove target_ops parameter.
11638         * sparc-nat.h (sparc_fetch_inferior_registers)
11639         (sparc_store_inferior_registers): Remove target_ops parameter.
11640         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
11641         (the_sparc64_linux_nat_target): New.
11642         (_initialize_sparc64_linux_nat): Adjust to C++ification.
11643
11644         * spu-linux-nat.c (spu_linux_nat_target): New class.
11645         (the_spu_linux_nat_target): New.
11646         (spu_child_post_startup_inferior, spu_child_post_attach)
11647         (spu_child_wait, spu_fetch_inferior_registers)
11648         (spu_store_inferior_registers, spu_xfer_partial)
11649         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
11650         methods.
11651         (_initialize_spu_nat): Adjust to C++ification.
11652
11653         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
11654         (the_tilegx_linux_nat_target): New.
11655         (fetch_inferior_registers, store_inferior_registers):
11656         Refactor as methods.
11657         (_initialize_tile_linux_nat): Adjust to C++ification.
11658
11659         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
11660         (the_xtensa_linux_nat_target): New.
11661         (xtensa_linux_fetch_inferior_registers)
11662         (xtensa_linux_store_inferior_registers): Refactor as
11663         xtensa_linux_nat_target methods.
11664         (_initialize_xtensa_linux_nat): Adjust to C++ification.
11665
11666         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
11667         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
11668         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
11669         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
11670         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
11671         (fbsd_stopped_by_sw_breakpoint)
11672         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
11673         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
11674         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
11675         (fbsd_post_startup_inferior, fbsd_post_attach)
11676         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
11677         (fbsd_set_syscall_catchpoint)
11678         (super_xfer_partial, super_resume, super_wait)
11679         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
11680         (fbsd_handle_debug_trap): Remove target_ops parameter.
11681         (fbsd_nat_add_target): Delete.
11682         * fbsd-nat.h: Include "inf-ptrace.h".
11683         (fbsd_nat_add_target): Delete.
11684         (USE_SIGTRAP_SIGINFO): Define.
11685         (fbsd_nat_target): New class.
11686
11687         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
11688         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
11689         (amd64bsd_target): Delete.
11690         * amd64-bsd-nat.h: New file.
11691         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
11692         "x86-bsd-nat.h".
11693         (amd64_fbsd_nat_target): New class.
11694         (the_amd64_fbsd_nat_target): New.
11695         (amd64fbsd_read_description): Refactor as method of
11696         amd64_fbsd_nat_target.
11697         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11698         (_initialize_amd64fbsd_nat): Adjust to C++ification.
11699         * amd64-nat.h (amd64bsd_target): Delete function declaration.
11700         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
11701         (i386bsd_store_inferior_registers): Remove target_ops parameter.
11702         (i386bsd_target): Delete.
11703         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
11704         (i386bsd_fetch_inferior_registers)
11705         (i386bsd_store_inferior_registers): Declare.
11706         (i386_bsd_nat_target): New class.
11707         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
11708         (the_i386_fbsd_nat_target): New.
11709         (i386fbsd_resume, i386fbsd_read_description): Refactor as
11710         i386_fbsd_nat_target methods.
11711         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11712         (_initialize_i386fbsd_nat): Adjust to C++ification.
11713         * x86-bsd-nat.c (super_mourn_inferior): Delete.
11714         (x86bsd_mourn_inferior, x86bsd_target): Delete.
11715         (_initialize_x86_bsd_nat): Adjust to C++ification.
11716         * x86-bsd-nat.h: Include "x86-nat.h".
11717         (x86bsd_target): Delete declaration.
11718         (x86bsd_nat_target): New class.
11719
11720         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
11721         (the_aarch64_fbsd_nat_target): New.
11722         (aarch64_fbsd_fetch_inferior_registers)
11723         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
11724         aarch64_fbsd_nat_target.
11725         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
11726         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
11727         (the_alpha_bsd_nat_target): New.
11728         (alphabsd_fetch_inferior_registers)
11729         (alphabsd_store_inferior_registers): Refactor as
11730         alpha_bsd_nat_target methods.
11731         (_initialize_alphabsd_nat): Refactor as methods of
11732         alpha_bsd_nat_target.
11733         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
11734         (the_amd64_nbsd_nat_target): New.
11735         (_initialize_amd64nbsd_nat): Adjust to C++ification.
11736         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
11737         (the_amd64_obsd_nat_target): New.
11738         (_initialize_amd64obsd_nat): Adjust to C++ification.
11739         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
11740         (the_arm_fbsd_nat_target): New.
11741         (arm_fbsd_fetch_inferior_registers)
11742         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
11743         (_initialize_arm_fbsd_nat): Refactor as methods of
11744         arm_fbsd_nat_target.
11745         (_initialize_arm_fbsd_nat): Adjust to C++ification.
11746         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
11747         (the_arm_netbsd_nat_target): New.
11748         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
11749         arm_netbsd_nat_target.
11750         (_initialize_arm_netbsd_nat): Adjust to C++ification.
11751         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
11752         (the_hppa_nbsd_nat_target): New.
11753         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
11754         hppa_nbsd_nat_target methods.
11755         (_initialize_hppanbsd_nat): Adjust to C++ification.
11756         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
11757         (the_hppa_obsd_nat_target): New.
11758         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
11759         methods of hppa_obsd_nat_target.
11760         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
11761         add_target.
11762         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
11763         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
11764         add_target.
11765         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
11766         (_initialize_i386obsd_nat): Use add_target.
11767         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
11768         (the_m68k_bsd_nat_target): New.
11769         (m68kbsd_fetch_inferior_registers)
11770         (m68kbsd_store_inferior_registers): Refactor as methods of
11771         m68k_bsd_nat_target.
11772         (_initialize_m68kbsd_nat): Adjust to C++ification.
11773         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
11774         (the_mips_fbsd_nat_target): New.
11775         (mips_fbsd_fetch_inferior_registers)
11776         (mips_fbsd_store_inferior_registers): Refactor as methods of
11777         mips_fbsd_nat_target.
11778         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
11779         add_target.
11780         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
11781         (the_mips_nbsd_nat_target): New.
11782         (mipsnbsd_fetch_inferior_registers)
11783         (mipsnbsd_store_inferior_registers): Refactor as methods of
11784         mips_nbsd_nat_target.
11785         (_initialize_mipsnbsd_nat): Adjust to C++ification.
11786         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
11787         (the_mips64_obsd_nat_target): New.
11788         (mips64obsd_fetch_inferior_registers)
11789         (mips64obsd_store_inferior_registers): Refactor as methods of
11790         mips64_obsd_nat_target.
11791         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
11792         add_target.
11793         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
11794         nbsd_nat_target.
11795         * nbsd-nat.h: Include "inf-ptrace.h".
11796         (nbsd_nat_target): New class.
11797         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
11798         (obsd_wait): Refactor as methods of obsd_nat_target.
11799         (obsd_add_target): Delete.
11800         * obsd-nat.h: Include "inf-ptrace.h".
11801         (obsd_nat_target): New class.
11802         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
11803         (the_ppc_fbsd_nat_target): New.
11804         (ppcfbsd_fetch_inferior_registers)
11805         (ppcfbsd_store_inferior_registers): Refactor as methods of
11806         ppc_fbsd_nat_target.
11807         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
11808         add_target.
11809         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
11810         (the_ppc_nbsd_nat_target): New.
11811         (ppcnbsd_fetch_inferior_registers)
11812         (ppcnbsd_store_inferior_registers): Refactor as methods of
11813         ppc_nbsd_nat_target.
11814         (_initialize_ppcnbsd_nat): Adjust to C++ification.
11815         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
11816         (the_ppc_obsd_nat_target): New.
11817         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
11818         methods of ppc_obsd_nat_target.
11819         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
11820         add_target.
11821         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
11822         (the_sh_nbsd_nat_target): New.
11823         (shnbsd_fetch_inferior_registers)
11824         (shnbsd_store_inferior_registers): Refactor as methods of
11825         sh_nbsd_nat_target.
11826         (_initialize_shnbsd_nat): Adjust to C++ification.
11827         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
11828         (inf_ptrace_xfer_partial): Delete.
11829         (sparc_xfer_partial, sparc_target): Delete.
11830         * sparc-nat.h (sparc_fetch_inferior_registers)
11831         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
11832         (sparc_target): Delete function declaration.
11833         (sparc_target): New template class.
11834         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
11835         (_initialize_sparcnbsd_nat): Adjust to C++ification.
11836         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
11837         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
11838         add_target.
11839         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
11840         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
11841         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
11842         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
11843         add_target.
11844         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
11845         (the_vax_bsd_nat_target): New.
11846         (vaxbsd_fetch_inferior_registers)
11847         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
11848         methods.
11849         (_initialize_vaxbsd_nat): Adjust to C++ification.
11850
11851         * bsd-kvm.c (bsd_kvm_target): New class.
11852         (bsd_kvm_ops): Now a bsd_kvm_target.
11853         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
11854         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
11855         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
11856         bsd_kvm_target.
11857         (bsd_kvm_return_one): Delete.
11858         (bsd_kvm_add_target): Adjust to C++ification.
11859
11860         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
11861         (nto_procfs_target_procfs): New classes.
11862         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
11863         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
11864         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
11865         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
11866         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
11867         (procfs_remove_hw_breakpoint, procfs_resume)
11868         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
11869         (procfs_kill_inferior, procfs_store_registers)
11870         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
11871         as methods of nto_procfs_target.
11872         (nto_procfs_ops): Now an nto_procfs_target_procfs.
11873         (nto_native_ops): Delete.
11874         (procfs_open, procfs_native_open): Delete.
11875         (nto_native_ops): Now an nto_procfs_target_native.
11876         (init_procfs_targets): Adjust to C++ification.
11877         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
11878         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
11879         Refactor as methods of nto_procfs_target.
11880
11881         * go32-nat.c (go32_nat_target): New class.
11882         (the_go32_nat_target): New.
11883         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
11884         (go32_store_registers, go32_xfer_partial, go32_files_info)
11885         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
11886         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
11887         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
11888         (go32_pid_to_str): Refactor as methods of go32_nat_target.
11889         (go32_target): Delete.
11890         (_initialize_go32_nat): Adjust to C++ification.
11891
11892         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
11893         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
11894         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
11895         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
11896         gnu_nat_target.
11897         (gnu_target): Delete.
11898         * gnu-nat.h (gnu_target): Delete.
11899         (gnu_nat_target): New class.
11900         * i386-gnu-nat.c (gnu_base_target): New.
11901         (i386_gnu_nat_target): New class.
11902         (the_i386_gnu_nat_target): New.
11903         (_initialize_i386gnu_nat): Adjust to C++ification.
11904
11905 2018-05-02  Pedro Alves  <palves@redhat.com>
11906
11907         * bfd-target.c (target_bfd_xclose): Rename to ...
11908         (target_bfd_close): ... this.
11909         (target_bfd_reopen): Adjust.
11910         * target.c (target_close): Remove references to to_xclose.
11911         * target.h (target_ops::to_xclose): Delete.
11912         (target_ops::to_close): Update comments.
11913
11914 2018-05-02  Pedro Alves  <palves@redhat.com>
11915
11916         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
11917         "linux-nat.h".
11918         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
11919         * inf-ptrace.c (inf_ptrace_register_u_offset)
11920         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11921         (inf_ptrace_store_register, inf_ptrace_store_registers)
11922         (inf_ptrace_trad_target): Move to ...
11923         * linux-nat-trad.c: ... this new file.
11924         * linux-nat-trad.h: New file.
11925         * linux-nat.c (linux_target_install_ops): Make extern.
11926         (linux_trad_target): Delete.
11927         * linux-nat.h (linux_trad_target): Delete declaration.
11928         (linux_target_install_ops): Declare.
11929         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
11930         "linux-nat.h".
11931
11932 2018-05-02  Pedro Alves  <palves@redhat.com>
11933
11934         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11935         procfs_target/add_target here.
11936         * procfs.c (procfs_target): Make static.
11937         (_initialize_procfs): Call add_target here.
11938         * procfs.h (struct target_ops): Remove forward declaration.
11939         (procfs_target): Remove declaration.
11940         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
11941
11942 2018-05-02  Pedro Alves  <palves@redhat.com>
11943
11944         * procfs.c (procfs_stopped_by_watchpoint)
11945         (procfs_insert_watchpoint, procfs_remove_watchpoint)
11946         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
11947         Forward declare.
11948         (procfs_use_watchpoints): Delete, move contents...
11949         (procfs_target): ... here.
11950         * procfs.h (procfs_use_watchpoints): Delete declaration.
11951         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11952         procfs_use_watchpoints.
11953         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
11954         procfs_use_watchpoints.
11955
11956 2018-05-02  Tom Tromey  <tom@tromey.com>
11957
11958         PR python/20084:
11959         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
11960         and var_zuinteger_unlimited.
11961         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
11962         and PARAM_ZUINTEGER_UNLIMITED.
11963         (set_parameter_value): Handle var_zuinteger and
11964         var_zuinteger_unlimited.
11965         (add_setshow_generic): Likewise.
11966         (parmpy_init): Likewise.
11967
11968 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
11969
11970         PR rust/23124
11971         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
11972         pointer is not null before dereferencing it.
11973
11974 2018-04-30  Tom Tromey  <tom@tromey.com>
11975
11976         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
11977         is_mi_like_p.
11978
11979 2018-04-30  Tom Tromey  <tom@tromey.com>
11980
11981         * breakpoint.c (mention): Remove use of is_mi_like_p.
11982         (print_mention_ranged_breakpoint): Likewise.
11983         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
11984         of is_mi_like_p.
11985
11986 2018-04-30  Tom Tromey  <tom@tromey.com>
11987
11988         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
11989
11990 2018-04-30  Tom Tromey  <tom@tromey.com>
11991
11992         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
11993         (info_spu_event_command): Remove some uses of is_mi_like_p.
11994
11995 2018-04-30  Tom Tromey  <tom@tromey.com>
11996
11997         * python/py-framefilter.c (py_print_single_arg)
11998         (enumerate_locals, py_print_args, py_print_frame): Remove some
11999         uses of is_mi_like_p.
12000
12001 2018-04-30  Tom Tromey  <tom@tromey.com>
12002
12003         * ui-out.c: Update.
12004         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
12005         * ui-out.h (ui_out::is_mi_like_p): Now const.
12006         (ui_out::do_is_mi_like_p): Now const.
12007         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
12008
12009 2018-04-30  Tom Tromey  <tom@tromey.com>
12010
12011         * varobj.c (varobj_set_visualizer): Use new_reference.
12012         * python/python.c (gdbpy_decode_line): Use new_reference.
12013         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
12014         new_reference.
12015
12016 2018-04-30  Tom Tromey  <tom@tromey.com>
12017
12018         * varobj.c (install_new_value): Use new_reference.
12019         * value.h (value_incref): Return void.  Swap intro comment with
12020         value_decref.
12021         * value.c (set_value_parent): Use new_reference.
12022         (value_incref): Return void.  Update intro comment.
12023         (release_value): Use new_reference.
12024         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
12025
12026 2018-04-30  Tom Tromey  <tom@tromey.com>
12027
12028         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
12029         * gdb_bfd.h (new_bfd_ref): Remove.
12030         (gdb_bfd_open): Update comment.
12031         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
12032         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
12033         (gdb_bfd_fdopenr): Use new_reference.
12034         * exec.c (exec_file_attach): Use new_reference.
12035
12036 2018-04-30  Tom Tromey  <tom@tromey.com>
12037
12038         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
12039         method.
12040
12041 2018-04-30  Tom Tromey  <tom@tromey.com>
12042
12043         * jit.c (jit_read_code_entry): Use type_align.
12044         * i386-tdep.c (i386_gdbarch_init): Don't call
12045         set_gdbarch_long_long_align_bit.
12046         * gdbarch.sh: Remove long_long_align_bit.
12047         * gdbarch.c, gdbarch.h: Rebuild.
12048         * arc-tdep.c (arc_type_align): New function.
12049         (arc_gdbarch_init): Use arc_type_align.  Don't call
12050         set_gdbarch_long_long_align_bit.
12051
12052 2018-04-30  Tom Tromey  <tom@tromey.com>
12053
12054         * rust-lang.c (rust_type_alignment): Remove.
12055         (rust_composite_type): Use type_align.
12056
12057 2018-04-30  Tom Tromey  <tom@tromey.com>
12058
12059         * NEWS: Mention Type.align.
12060         * python/py-type.c (typy_get_alignof): New function.
12061         (type_object_getset): Add "alignof".
12062
12063 2018-04-30  Tom Tromey  <tom@tromey.com>
12064
12065         PR exp/17095:
12066         * NEWS: Update.
12067         * std-operator.def (UNOP_ALIGNOF): New operator.
12068         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
12069         New.
12070         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
12071         * c-lang.c (c_op_print_tab): Add alignof.
12072         * c-exp.y (ALIGNOF): New token.
12073         (exp): Add "ALIGNOF" production.
12074         (ident_tokens): Add _Alignof and alignof.
12075
12076 2018-04-30  Tom Tromey  <tom@tromey.com>
12077
12078         * i386-tdep.c (i386_type_align): New function.
12079         (i386_gdbarch_init): Update.
12080         * gdbarch.sh (type_align): New method.
12081         * gdbarch.c, gdbarch.h: Rebuild.
12082         * arch-utils.h (default_type_align): Declare.
12083         * arch-utils.c (default_type_align): New function.
12084         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
12085         (struct type) <align_log2>: New field.
12086         <instance_flags>: Now a bitfield.
12087         (TYPE_RAW_ALIGN): New macro.
12088         (type_align, type_raw_align, set_type_align): Declare.
12089         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
12090         functions.
12091         * dwarf2read.c (quirk_rust_enum): Set type alignment.
12092         (get_alignment, maybe_set_alignment): New functions.
12093         (read_structure_type, read_enumeration_type, read_array_type)
12094         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
12095         (read_subrange_type, read_base_type): Set type alignment.
12096
12097 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
12098
12099         * dwarf2read.c (read_index_from_section): Use bool.
12100
12101 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
12102
12103         PR gdb/22950
12104         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
12105         with #ifdef.
12106
12107 2018-04-29  John Reiser  <jreiser@BitWagon.com>
12108
12109         PR build/22873
12110         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
12111         last step, and do it atomically.
12112
12113 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
12114
12115         * compile/compile-c-types.c (convert_int, convert_float):
12116         Update for C FE v1.
12117
12118 2018-04-27  Tom Tromey  <tom@tromey.com>
12119
12120         PR rust/22545:
12121         * rust-lang.c (rust_inclusive_range_type_p): New function.
12122         (rust_range): Handle inclusive ranges.
12123         (rust_compute_range): Likewise.
12124         * rust-exp.y (struct rust_op) <inclusive>: New field.
12125         (DOTDOTEQ): New constant.
12126         (range_expr): Add "..=" productions.
12127         (operator_tokens): Add "..=" token.
12128         (ast_range): Add "inclusive" parameter.
12129         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
12130         ranges.
12131         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
12132         bounds values.
12133         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
12134         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
12135         Update comments.
12136         * expprint.c (print_subexp_standard): Handle new bounds values.
12137         (dump_subexp_body_standard): Likewise.
12138
12139 2018-04-27  Tom Tromey  <tom@tromey.com>
12140
12141         * configure: Rebuild.
12142         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
12143         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
12144         "OVERRIDE".
12145         (class symbol_needs_eval_context): Likewise.
12146         * dwarf2read.c (mock_mapped_index::symbol_name_count)
12147         (mock_mapped_index::symbol_name_at): Use "override".  Remove
12148         "virtual".
12149         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
12150         "override".
12151         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
12152         * aarch64-tdep.c (instruction_reader::read): Use "override".
12153         (instruction_reader_test::read): Likewise.
12154         * arm-tdep.c (instruction_reader::read): Use "override".
12155         (instruction_reader_thumb::read): Likewise.
12156
12157 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
12158
12159         PR remote/9665
12160         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
12161         instead of remote_send.
12162         (remote_send): Remove.
12163
12164 2018-04-26  Pedro Alves  <palves@redhat.com>
12165
12166         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
12167         find_function_start_sal instead of find_pc_line.
12168
12169 2018-04-26  Pedro Alves  <palves@redhat.com>
12170
12171         * breakpoint.c (set_breakpoint_location_function): Handle
12172         mst_data_gnu_ifunc.
12173         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
12174         * elfread.c (elf_symtab_read): Give data symbols with
12175         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
12176         (elf_rel_plt_read): Update comment.
12177         * linespec.c (convert_linespec_to_sals): Handle
12178         mst_data_gnu_ifunc.
12179         (minsym_found): Handle mst_data_gnu_ifunc.
12180         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
12181         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
12182         * parse.c (find_minsym_type_and_address): Handle
12183         mst_data_gnu_ifunc.
12184         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
12185         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
12186         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
12187         comment.
12188         <mst_data_gnu_ifunc>: New enumerator.
12189
12190 2018-04-26  Pedro Alves  <palves@redhat.com>
12191
12192         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
12193         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
12194         'want_trampoline' parameter by a lookup_msym_prefer parameter.
12195         Handle it.
12196         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
12197         (lookup_minimal_symbol_by_pc): Adjust.
12198         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
12199         (lookup_solib_trampoline_symbol_by_pc): Adjust.
12200         * minsyms.h (lookup_msym_prefer): New enum.
12201         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
12202         parameter by a lookup_msym_prefer parameter.
12203
12204 2018-04-26  Pedro Alves  <palves@redhat.com>
12205
12206         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
12207         ends in "@plt" instead of looking at the symbol's section.
12208
12209 2018-04-26  Pedro Alves  <palves@redhat.com>
12210
12211         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
12212         all references.
12213         (find_pc_partial_function_gnu_ifunc): Rename to ...
12214         (find_pc_partial_function): ... this, and remove references to
12215         'is_gnu_ifunc_p'.
12216         (find_pc_partial_function): Delete old implementation.
12217         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
12218
12219 2018-04-26  Pedro Alves  <palves@redhat.com>
12220
12221         * linespec.c (struct bound_minimal_symbol_search_key): New.
12222         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
12223         skip first line if we found a GNU ifunc minimal symbol by name.
12224         (compare_msymbols): Change parameters to work with a destructured
12225         lhs minsym.
12226         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
12227         functions.
12228
12229 2018-04-26  Pedro Alves  <palves@redhat.com>
12230
12231         * breakpoint.c (set_breakpoint_location_function): Don't resolve
12232         ifunc targets here.  Instead, if we have an ifunc minsym, use its
12233         address/name.
12234         (add_location_to_breakpoint): Store the minsym and the objfile in
12235         the breakpoint location.
12236         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
12237         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
12238         Record the minsym in the sal.
12239         * symtab.h (symtab_and_line) <msymbol>: New field.
12240
12241 2018-04-26  Pedro Alves  <palves@redhat.com>
12242
12243         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
12244         unless we actually resolved the ifunc.
12245
12246 2018-04-26  Pedro Alves  <palves@redhat.com>
12247
12248         * c-exp.y (variable production): Prefer ifunc minsyms over
12249         regular function symbols.
12250         * symtab.c (find_gnu_ifunc): New function.
12251         * minsyms.h (lookup_msym_prefer): New enum.
12252         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
12253         parameter by a lookup_msym_prefer parameter.
12254         * symtab.h (find_gnu_ifunc): New declaration.
12255
12256 2018-04-26  Pedro Alves  <palves@redhat.com>
12257
12258         * blockframe.c (find_gnu_ifunc_target_type): New function.
12259         (find_function_type): New.
12260         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
12261         return a value with a memory address.
12262         (eval_call): For calls to GNU ifunc functions, try to find the
12263         type of the target function from the type that the resolver
12264         returns.
12265         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
12266         symbols.
12267         * infcall.c (find_function_return_type): Delete.
12268         (find_function_addr): Add 'function_type' parameter.  For calls to
12269         GNU ifunc functions, try to find the type of the target function
12270         from the type that the resolver returns, and return it via
12271         FUNCTION_TYPE.
12272         (call_function_by_hand_dummy): Adjust to use the function type
12273         returned by find_function_addr.
12274         (find_function_addr): Add 'function_type' parameter and move
12275         description here.
12276         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
12277         declarations.
12278
12279 2018-04-26  Pedro Alves  <palves@redhat.com>
12280
12281         * c-exp.y (variable production): Skip finding an alias for ifunc
12282         symbols.
12283
12284 2018-04-26  Pedro Alves  <palves@redhat.com>
12285
12286         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
12287
12288 2018-04-25  Pedro Alves  <palves@redhat.com>
12289
12290         * infcmd.c (kill_command): Print the pid as string, not the whole
12291         thread's ptid.  Add comment.  s/has been killed/killed/ in output
12292         message.
12293         * remote.c (remote_detach_1): Print the pid as string, not the
12294         whole thread's ptid.
12295
12296 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
12297             Sergio Durigan Junior  <sergiodj@redhat.com>
12298             Pedro Alves  <palves@redhat.com>
12299
12300         * infcmd.c (kill_command): Print message when inferior has
12301         been killed.
12302         * inferior.c (print_inferior_events): Remove 'static'.  Set as
12303         '1'.
12304         (add_inferior): Improve message printed when
12305         'print_inferior_events' is on.
12306         (exit_inferior): Remove message printed when
12307         'print_inferior_events' is on.
12308         (detach_inferior): Improve message printed when
12309         'print_inferior_events' is on.
12310         (initialize_inferiors): Use 'add_inferior_silent' to set
12311         'current_inferior_'.
12312         * inferior.h (print_inferior_events): Declare here as
12313         'extern'.
12314         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
12315         '[Detaching...]' messages when 'print_inferior_events' is on.
12316         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
12317         as prefix/suffix for messages.  Remove periods.  Fix erroneous
12318         'Detaching after fork from child...', replace it by '... from
12319         parent...'.
12320         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
12321         prefix/suffix when printing 'Detaching...' messages.  Print
12322         them when 'print_inferior_events' is on.
12323         * remote.c (remote_detach_1): Print message when detaching
12324         from inferior and '!is_fork_parent'.
12325
12326 2018-04-24  Tom Tromey  <tom@tromey.com>
12327
12328         * cli-out.h: Reindent.
12329
12330 2018-04-24  Tom Tromey  <tom@tromey.com>
12331
12332         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
12333         (cli_ui_out::do_field_string): Use fputs_filtered.
12334         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
12335
12336 2018-04-23  Tom Tromey  <tom@tromey.com>
12337
12338         * guile/scm-frame.c (gdbscm_frame_read_var): Use
12339         gdb::unique_xmalloc_ptr.
12340
12341 2018-04-23  Tom Tromey  <tom@tromey.com>
12342
12343         * configure: Rebuild.
12344
12345 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
12346
12347         PR gdb/23095
12348         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
12349         prepare_for_testing.  Set normal_bp to r_debug_state if target
12350         is bsd.
12351
12352 2018-04-21  Pedro Alves  <palves@redhat.com>
12353             Rajendra SY  <rajendra.sy@gmail.com>
12354
12355         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
12356         * remote.c (extended_remote_attach): In all-stop mode, mark the
12357         thread as executing.
12358
12359 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
12360
12361         * thread.c (thread_apply_all_command): Fix comment.
12362         (thread_command): Fix comment.
12363
12364 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
12365
12366         * common/tdesc.h (tdesc_create_feature): Remove xml filename
12367         parameter.
12368         * features/aarch64-core.c (create_feature_aarch64_core):
12369         Regenerate.
12370         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
12371         Likewise.
12372         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
12373         Likewise.
12374         * features/i386/32bit-avx512.c
12375         (create_feature_i386_32bit_avx512): Likewise.
12376         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
12377         Likewise.
12378         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
12379         Likewise.
12380         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
12381         Likewise.
12382         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
12383         Likewise.
12384         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
12385         Likewise.
12386         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
12387         Likewise.
12388         * features/i386/64bit-avx512.c
12389         (create_feature_i386_64bit_avx512): Likewise.
12390         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
12391         Likewise.
12392         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
12393         Likewise.
12394         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
12395         Likewise.
12396         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
12397         Likewise.
12398         * features/i386/64bit-segments.c
12399         (create_feature_i386_64bit_segments): Likewise.
12400         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
12401         Likewise.
12402         * features/i386/x32-core.c
12403         (create_feature_i386_x32_core): Likewise.
12404         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
12405         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
12406         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
12407         * target-descriptions.c: In generated code, don't pass xml
12408         filename.
12409
12410 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12411
12412         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
12413         (print_xml_feature::visit_post): Likewise.
12414         (print_xml_feature::visit): Likewise.
12415         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
12416         (print_xml_feature): Add new class.
12417         * regformats/regdat.sh: Null xmltarget on feature targets.
12418         * target-descriptions.c (struct target_desc): Add xmltarget.
12419         (maintenance_check_tdesc_xml_convert): Add unittest function.
12420         (tdesc_get_features_xml): Add function to get xml.
12421         (maintenance_check_xml_descriptions): Test xml generation.
12422         * xml-tdesc.c (string_read_description_xml): Add function.
12423         * xml-tdesc.h (string_read_description_xml): Add declaration.
12424
12425 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12426
12427         * features/Makefile: Add feature marker to targets with new style
12428         target descriptions.
12429         * regformats/aarch64.dat: Regenerate.
12430         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
12431         * regformats/i386/amd64-avx-linux.dat: Likewise.
12432         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
12433         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
12434         * regformats/i386/amd64-linux.dat: Likewise.
12435         * regformats/i386/amd64-mpx-linux.dat: Likewise.
12436         * regformats/i386/amd64.dat: Likewise.
12437         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
12438         * regformats/i386/i386-avx-linux.dat: Likewise.
12439         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
12440         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
12441         * regformats/i386/i386-linux.dat: Likewise.
12442         * regformats/i386/i386-mmx-linux.dat: Likewise.
12443         * regformats/i386/i386-mpx-linux.dat: Likewise.
12444         * regformats/i386/i386.dat: Likewise.
12445         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
12446         * regformats/i386/x32-avx-linux.dat: Likewise.
12447         * regformats/i386/x32-linux.dat: Likewise.
12448         * regformats/tic6x-c62x-linux.dat: Likewise.
12449         * regformats/tic6x-c64x-linux.dat: Likewise.
12450         * regformats/tic6x-c64xp-linux.dat: Likewise.
12451         * regformats/regdat.sh: Parse feature marker.
12452
12453 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12454
12455         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
12456         (tdesc_osabi_name): Likewise.
12457         * target-descriptions.c (tdesc_architecture_name): Add new
12458         function.
12459         (tdesc_osabi_name): Likewise.
12460
12461 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12462
12463         * common/tdesc.c (tdesc_predefined_type): Move to here.
12464         (tdesc_named_type): Likewise.
12465         (tdesc_create_vector): Likewise.
12466         (tdesc_create_struct): Likewise.
12467         (tdesc_set_struct_size): Likewise.
12468         (tdesc_create_union): Likewise.
12469         (tdesc_create_flags): Likewise.
12470         (tdesc_create_enum): Likewise.
12471         (tdesc_add_field): Likewise.
12472         (tdesc_add_typed_bitfield): Likewise.
12473         (tdesc_add_bitfield): Likewise.
12474         (tdesc_add_flag): Likewise.
12475         (tdesc_add_enum_value): Likewise.
12476         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
12477         (struct tdesc_type_vector): Likewise.
12478         (struct tdesc_type_field): Likewise.
12479         (struct tdesc_type_with_fields): Likewise.
12480         (tdesc_create_enum): Add declaration.
12481         (tdesc_add_typed_bitfield): Likewise.
12482         (tdesc_add_enum_value): Likewise.
12483         * target-descriptions.c (tdesc_type_field): Move from here.
12484         (tdesc_type_builtin): Likewise.
12485         (tdesc_type_vector): Likewise.
12486         (tdesc_type_with_fields): Likewise.
12487         (tdesc_predefined_types): Likewise.
12488         (tdesc_named_type): Likewise.
12489         (tdesc_create_vector): Likewise.
12490         (tdesc_create_struct): Likewise.
12491         (tdesc_set_struct_size): Likewise.
12492         (tdesc_create_union): Likewise.
12493         (tdesc_create_flags): Likewise.
12494         (tdesc_create_enum): Likewise.
12495         (tdesc_add_field): Likewise.
12496         (tdesc_add_typed_bitfield): Likewise.
12497         (tdesc_add_bitfield): Likewise.
12498         (tdesc_add_flag): Likewise.
12499         (tdesc_add_enum_value): Likewise.
12500         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
12501         (tdesc_add_typed_bitfield): Likewise.
12502         (tdesc_add_enum_value): Likewise.
12503
12504 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12505
12506         * common/tdesc.c (tdesc_feature::accept): Move to here.
12507         (tdesc_feature::operator==): Likewise.
12508         (tdesc_create_reg): Likewise.
12509         * common/tdesc.h (tdesc_type_kind): Likewise.
12510         (struct tdesc_type): Likewise.
12511         (struct tdesc_feature): Likewise.
12512         * regformats/regdat.sh: Create a feature.
12513         * target-descriptions.c (tdesc_type_kind): Move from here.
12514         (tdesc_type): Likewise.
12515         (tdesc_type_up): Likewise.
12516         (tdesc_feature): Likewise.
12517         (tdesc_create_reg): Likewise.
12518
12519 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12520
12521         * Makefile.in: Add arch/tdesc.c
12522         * common/tdesc.c: New file.
12523         * common/tdesc.h (tdesc_element_visitor): Move to here.
12524         (tdesc_element): Likewise.
12525         (tdesc_reg): Likewise.
12526         (tdesc_reg_up): Likewise.
12527         * regformats/regdef.h (reg): Add offset to constructors.
12528         * target-descriptions.c (tdesc_element_visitor): Move from here.
12529         (tdesc_element): Likewise.
12530         (tdesc_reg): Likewise.
12531         (tdesc_reg_up): Likewise.
12532
12533 2018-04-17  Tom Tromey  <tom@tromey.com>
12534
12535         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
12536         discriminant field.
12537
12538 2018-04-17  Tom Tromey  <tom@tromey.com>
12539
12540         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
12541
12542 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12543
12544         * symtab.c (print_symbol_info): Skip printing filename and line
12545         number when `last' is NULL.
12546         (symtab_symbol_info): Use empty string instead of NULL for first
12547         invocation of print_symbol_info.
12548         (rbreak_command): Pass NULL to `last' parameter of
12549         print_symbol_info.
12550
12551 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
12552
12553         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
12554         instead of nullptr.
12555
12556 2018-04-16  Pedro Alves  <palves@redhat.com>
12557
12558         * MAINTAINERS (sh): Remove.
12559         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
12560         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
12561         (ALLDEPFILES): Remove sh64-tdep.c.
12562         * NEWS: Mentions that support for SH-5/SH64 is removed.
12563         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
12564         (sh*-*-openbsd*): Ditto.
12565         (sh64-*-elf*): Remove.
12566         (sh*): Remove.
12567         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
12568         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
12569         * sh-tdep.c: No longer include "sh64-tdep.h".
12570         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
12571         * sh64-tdep.c, sh64-tdep.h: Remove files.
12572
12573 2018-04-16  Pedro Alves  <palves@redhat.com>
12574
12575         * MAINTAINERS: Remove m88k.
12576         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
12577         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
12578         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
12579         * NEWS: Mention that support for m88k was removed.
12580         * configure.host (m88*-*-*): Remove support.
12581         * configure.nat (m88k-*-*): Remove support.
12582         * configure.tgt (m88*-*-openbsd*): Remove.
12583         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
12584
12585 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
12586
12587         * configure.tgt (x86_tobjs): New variable.
12588         (amd64_tobjs, i386_tobjs): Use it.
12589
12590 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12591
12592         * symtab.c (print_symbol_info): Precede the symbol definition by
12593         the line number when available.
12594         * NEWS: Advertise this enhancement.
12595
12596 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12597
12598         * NEWS (New options): announce set/show record btrace cpu.
12599         * btrace.c: Include record-btrace.h.
12600         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
12601         the vendor is unknown.
12602         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
12603         Maybe overwrite the btrace configuration's cpu.
12604         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
12605         (btrace_fetch): Add cpu parameter.  Update callers.
12606         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
12607         Maybe overwrite the btrace configuration's cpu.  Skip enabling
12608         errata workarounds if the vendor is unknown.
12609         * python/py-record-btrace.c: Include record-btrace.h.
12610         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
12611         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
12612         * record-btrace.c (record_btrace_cpu_state_kind): New.
12613         (record_btrace_cpu): New.
12614         (set_record_btrace_cpu_cmdlist): New.
12615         (record_btrace_get_cpu): New.
12616         (require_btrace_thread, record_btrace_info)
12617         (record_btrace_resume_thread): Call record_btrace_get_cpu.
12618         (cmd_set_record_btrace_cpu_none): New.
12619         (cmd_set_record_btrace_cpu_auto): New.
12620         (cmd_set_record_btrace_cpu): New.
12621         (cmd_show_record_btrace_cpu): New.
12622         (_initialize_record_btrace): Initialize set/show record btrace cpu
12623         commands.
12624         * record-btrace.h (record_btrace_get_cpu): New.
12625
12626 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12627
12628         * record.c (set_record_command): Fix typo in message.
12629
12630 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12631
12632         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
12633
12634 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12635
12636         * infrun.c (process_event_stop_test): Call
12637         gdbarch_in_indirect_branch_thunk.
12638         * gdbarch.sh (in_indirect_branch_thunk): New.
12639         * gdbarch.c: Regenerated.
12640         * gdbarch.h: Regenerated.
12641         * x86-tdep.h: New.
12642         * x86-tdep.c: New.
12643         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
12644         (HFILES_NO_SRCDIR): Add x86-tdep.h.
12645         (ALLDEPFILES): Add x86-tdep.c.
12646         * arch-utils.h (default_in_indirect_branch_thunk): New.
12647         * arch-utils.c (default_in_indirect_branch_thunk): New.
12648         * i386-tdep: Include x86-tdep.h.
12649         (i386_in_indirect_branch_thunk): New.
12650         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
12651         function.
12652         * amd64-tdep: Include x86-tdep.h.
12653         (amd64_in_indirect_branch_thunk): New.
12654         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
12655
12656 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
12657
12658         PR gdb/23053
12659         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
12660         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
12661         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
12662         regression.
12663
12664 2018-04-12  Tom Tromey  <tom@tromey.com>
12665
12666         * rust-lang.c (rust_print_struct_def): Remove univariant code.
12667         (rust_evaluate_subexp): Likewise.
12668
12669 2018-04-12  Pedro Alves  <palves@redhat.com>
12670
12671         * procfs.c (procfs_detach): Make forward declaration's prototype
12672         match definition's protototype.
12673         (proc_get_LDT_entry): Remove stale do_cleanups call.
12674
12675 2018-04-12  Pedro Alves  <palves@redhat.com>
12676
12677         * target.h (target_ops::to_has_exited): Delete.
12678         (target_has_exited): Delete.
12679         * target-delegates.c: Regenerate.
12680
12681 2018-04-11  Pedro Alves  <palves@redhat.com>
12682
12683         * target.c (fileio_fh_t::t): Add comment.
12684         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12685         (target_fileio_close): Handle a NULL target.
12686         (invalidate_fileio_fh): New.
12687         (target_close): Call it.
12688         * remote.c (remote_hostio_send_command): No longer check whether
12689         remote_desc is open.
12690
12691 2018-04-11  Pedro Alves  <palves@redhat.com>
12692
12693         * target.c (fileio_fh_t): Make it a named struct instead of a
12694         typedef.
12695         (fileio_fh_t::is_closed): New method.
12696         (DEF_VEC_O (fileio_fh_t)): Remove.
12697         (fileio_fhandles): Now a std::vector.
12698         (is_closed_fileio_fh): Delete.
12699         (acquire_fileio_fd): Adjust.  Rename parameters.
12700         (release_fileio_fd): Adjust.
12701         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
12702         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12703         (target_fileio_close): Adjust.
12704
12705 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
12706
12707         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
12708         index.
12709
12710 2018-04-10  Pedro Alves  <palves@redhat.com>
12711
12712         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
12713         (scoped_finish_thread_state): New class.
12714         * infcmd.c (run_command_1): Use it instead of finish_thread_state
12715         cleanup.
12716         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
12717         (fetch_inferior_event, normal_stop): Likewise.
12718         * thread.c (finish_thread_state_cleanup): Delete.
12719
12720 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12721             Pedro Alves  <palves@redhat.com>
12722
12723         * value.c: Include "selftest.h" and "common/array-view.h".
12724         (struct range) <operator ==>: New.
12725         (test_ranges_contain): New.
12726         (check_ranges_vector): New.
12727         (test_insert_into_bit_range_vector): New.
12728         (_initialize_values): Register selftests.
12729         * common/array-view.h (operator==, operator!=): New.
12730
12731 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12732
12733         * common/gdb_vecs.h (unordered_remove): Add overload that takes
12734         an iterator.
12735         * inline-frame.c: Include <algorithm>.
12736         (struct inline_state): Add constructor.
12737         (inline_state_s): Remove.
12738         (DEF_VEC_O(inline_state_s)): Remove.
12739         (inline_states): Change type to std::vector.
12740         (find_inline_frame_state): Adjust to std::vector.
12741         (allocate_inline_frame_state): Remove.
12742         (clear_inline_frame_state): Adjust to std::vector.
12743         (skip_inline_frames): Adjust to std::vector.
12744
12745 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12746
12747         * tracepoint.h (struct trace_state_variable): Add constructor.
12748         <name>: Change type to std::string.
12749         * tracepoint.c (tsv_s): Remove.
12750         (DEF_VEC_O(tsv_s)): Remove.
12751         (tvariables): Change to std::vector.
12752         (create_trace_state_variable): Adjust to std::vector.
12753         (find_trace_state_variable): Likewise.
12754         (find_trace_state_variable_by_number): Likewise.
12755         (delete_trace_state_variable): Likewise.
12756         (trace_variable_command): Adjust to std::string.
12757         (delete_trace_variable_command): Likewise.
12758         (tvariables_info_1): Adjust to std::vector.
12759         (save_trace_state_variables): Likewise.
12760         (start_tracing): Likewise.
12761         (merge_uploaded_trace_state_variables): Adjust to std::vector
12762         and std::string.
12763         * target.h (struct target_ops)
12764         <to_download_trace_state_variable>: Pass reference to
12765         trace_state_variable.
12766         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
12767         * target-delegates.c: Re-generate.
12768         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
12769         (mi_tsv_deleted): Likewise.
12770         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
12771         * remote.c (remote_download_trace_state_variable): Change
12772         pointer to reference and adjust.
12773         * make-target-delegates (parse_argtypes): Handle references.
12774         (write_function_header): Likewise.
12775         (munge_type): Likewise.
12776
12777 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12778
12779         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12780         string_view-selftests.c.
12781         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
12782         testsuite.
12783         * unittests/basic_string_view/cons/char/1.cc: Likewise.
12784         * unittests/basic_string_view/cons/char/2.cc: Likewise.
12785         * unittests/basic_string_view/cons/char/3.cc: Likewise.
12786         * unittests/basic_string_view/element_access/char/1.cc:
12787         Likewise.
12788         * unittests/basic_string_view/element_access/char/empty.cc:
12789         Likewise.
12790         * unittests/basic_string_view/element_access/char/front_back.cc:
12791         Likewise.
12792         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
12793         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
12794         Likewise.
12795         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
12796         Likewise.
12797         * unittests/basic_string_view/modifiers/swap/char/1.cc:
12798         Likewise.
12799         * unittests/basic_string_view/operations/compare/char/1.cc:
12800         Likewise.
12801         * unittests/basic_string_view/operations/compare/char/13650.cc:
12802         Likewise.
12803         * unittests/basic_string_view/operations/copy/char/1.cc:
12804         Likewise.
12805         * unittests/basic_string_view/operations/data/char/1.cc:
12806         Likewise.
12807         * unittests/basic_string_view/operations/find/char/1.cc:
12808         Likewise.
12809         * unittests/basic_string_view/operations/find/char/2.cc:
12810         Likewise.
12811         * unittests/basic_string_view/operations/find/char/3.cc:
12812         Likewise.
12813         * unittests/basic_string_view/operations/find/char/4.cc:
12814         Likewise.
12815         * unittests/basic_string_view/operations/rfind/char/1.cc:
12816         Likewise.
12817         * unittests/basic_string_view/operations/rfind/char/2.cc:
12818         Likewise.
12819         * unittests/basic_string_view/operations/rfind/char/3.cc:
12820         Likewise.
12821         * unittests/basic_string_view/operations/substr/char/1.cc:
12822         Likewise.
12823         * unittests/basic_string_view/operators/char/2.cc: Likewise.
12824         * unittests/string_view-selftests.c: New file.
12825
12826 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12827
12828         * unittests/basic_string_view/capacity/1.cc: New file.
12829         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
12830         * unittests/basic_string_view/cons/char/1.cc: New file.
12831         * unittests/basic_string_view/cons/char/2.cc: New file.
12832         * unittests/basic_string_view/cons/char/3.cc: New file.
12833         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
12834         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
12835         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
12836         * unittests/basic_string_view/element_access/char/1.cc: New file.
12837         * unittests/basic_string_view/element_access/char/2.cc: New file.
12838         * unittests/basic_string_view/element_access/char/empty.cc: New file.
12839         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
12840         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
12841         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
12842         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
12843         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
12844         * unittests/basic_string_view/include.cc: New file.
12845         * unittests/basic_string_view/inserters/char/1.cc: New file.
12846         * unittests/basic_string_view/inserters/char/2.cc: New file.
12847         * unittests/basic_string_view/inserters/char/3.cc: New file.
12848         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
12849         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
12850         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
12851         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
12852         * unittests/basic_string_view/literals/types.cc: New file.
12853         * unittests/basic_string_view/literals/values.cc: New file.
12854         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
12855         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
12856         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
12857         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
12858         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
12859         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
12860         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
12861         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
12862         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
12863         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
12864         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
12865         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
12866         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
12867         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
12868         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
12869         * unittests/basic_string_view/operations/data/char/1.cc: New file.
12870         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
12871         * unittests/basic_string_view/operations/find/char/1.cc: New file.
12872         * unittests/basic_string_view/operations/find/char/2.cc: New file.
12873         * unittests/basic_string_view/operations/find/char/3.cc: New file.
12874         * unittests/basic_string_view/operations/find/char/4.cc: New file.
12875         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
12876         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
12877         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
12878         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
12879         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
12880         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
12881         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
12882         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
12883         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
12884         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
12885         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
12886         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
12887         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
12888         * unittests/basic_string_view/operators/char/2.cc: New file.
12889         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
12890         * unittests/basic_string_view/range_access/char/1.cc: New file.
12891         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
12892         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
12893         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
12894         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
12895         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
12896         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
12897         * unittests/basic_string_view/requirements/typedefs.cc: New file.
12898         * unittests/basic_string_view/typedefs.cc: New file.
12899         * unittests/basic_string_view/types/1.cc: New file.
12900
12901 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12902
12903         * common/gdb_string_view.h: Remove libstdc++ implementation
12904         details, adjust to gdb reality.
12905         * common/gdb_string_view.tcc: Likewise.
12906         * cli/cli-script.c (struct string_view): Remove.
12907         (user_args) <m_args>: Change element type to gdb::string_view.
12908         (user_args::insert_args): Adjust.
12909
12910 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12911
12912         * common/gdb_string_view.h: New file.
12913         * common/gdb_string_view.tcc: New file.
12914
12915 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12916
12917         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
12918         * configure: Re-generate.
12919
12920 2018-04-09  Pedro Alves  <palves@redhat.com>
12921
12922         * gdbarch.sh: Include "observable.h" instead of "observer.h".
12923         (set_target_gdbarch): Call
12924         gdb::observers::architecture_changed.notify instead of
12925         observer_notify_architecture_changed.
12926
12927 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12928
12929         * tracepoint.c (struct current_traceframe_cleanup): Remove.
12930         (do_restore_current_traceframe_cleanup): Remove.
12931         (restore_current_traceframe_cleanup_dtor): Remove.
12932         (make_cleanup_restore_current_traceframe): Remove.
12933         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
12934         New.
12935         * tracepoint.h (struct scoped_restore_current_traceframe): New.
12936         * infrun.c (fetch_inferior_event): Use
12937         scoped_restore_current_traceframe.
12938
12939 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12940
12941         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
12942         Remove.
12943         <n_allocated_type_units>: Remove.
12944         <all_type_units>: Change to std::vector.
12945         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12946         to std::vector change.
12947         (dwarf2_per_objfile::get_cutu): Likewise.
12948         (dwarf2_per_objfile::get_tu): Likewise.
12949         (create_signatured_type_table_from_index): Likewise.
12950         (create_signatured_type_table_from_debug_names): Likewise.
12951         (dw2_symtab_iter_next): Likewise.
12952         (dw2_print_stats): Likewise.
12953         (dw2_expand_all_symtabs): Likewise.
12954         (dw2_expand_marked_cus): Likewise.
12955         (dw2_debug_names_iterator::next): Likewise.
12956         (dwarf2_initialize_objfile): Likewise.
12957         (add_signatured_type_cu_to_table): Likewise.
12958         (create_all_type_units): Likewise.
12959         (add_type_unit): Likewise.
12960         (struct tu_abbrev_offset): Add constructor.
12961         (build_type_psymtabs_1): Adjust to std::vector change.
12962         (print_tu_stats): Likewise.
12963         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12964         (write_debug_names): Likewise.
12965
12966 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12967
12968         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
12969         Make an std::vector.
12970         <n_comp_units>: Remove.
12971         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12972         to std::vector change.
12973         (dwarf2_per_objfile::get_cutu): Likewise.
12974         (dwarf2_per_objfile::get_cu): Likewise.
12975         (create_cus_from_index): Likewise.
12976         (create_addrmap_from_index): Likewise.
12977         (create_addrmap_from_aranges): Likewise.
12978         (dwarf2_read_index): Likewise.
12979         (dw2_find_last_source_symtab): Likewise.
12980         (dw2_map_symtabs_matching_filename): Likewise.
12981         (dw2_symtab_iter_next): Likewise.
12982         (dw2_print_stats): Likewise.
12983         (dw2_expand_all_symtabs): Likewise.
12984         (dw2_expand_symtabs_with_fullname): Likewise.
12985         (dw2_expand_marked_cus): Likewise.
12986         (dw2_map_symbol_filenames): Likewise.
12987         (create_cus_from_debug_names): Likewise.
12988         (dwarf2_read_debug_names): Likewise.
12989         (dw2_debug_names_iterator::next): Likewise.
12990         (dwarf2_initialize_objfile): Likewise.
12991         (set_partial_user): Likewise.
12992         (dwarf2_build_psymtabs_hard): Likewise.
12993         (read_comp_units_from_section): Remove arguments, adjust to
12994         std::vector change.
12995         (create_all_comp_units): Adjust to std::vector and
12996         read_comp_units_from_section changes.
12997         (dwarf2_find_containing_comp_unit): Adjust to std::vector
12998         change.
12999         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
13000         (psyms_seen_size): Likewise.
13001         (write_gdbindex): Likewise.
13002         (write_debug_names): Likewise.
13003
13004 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13005
13006         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
13007         with dwarf2_per_objfile.
13008         (create_cus_from_index): Likewise.
13009         (create_signatured_type_table_from_index): Likewise.
13010         (dwarf2_read_index): Likewise.
13011         (dwarf2_initialize_objfile): Likewise.
13012         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
13013         per_cu rather than get_dwarf2_per_objfile.
13014
13015 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13016
13017         * dwarf2read.h (struct signatured_type): Forward declare.
13018         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
13019         New methods.
13020         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
13021         (dw2_get_cutu): ...this.
13022         (dwarf2_per_objfile::get_cu): Rename from...
13023         (dw2_get_cu): ...this.
13024         (dwarf2_per_objfile::get_tu): New.
13025         (create_addrmap_from_index): Adjust.
13026         (create_addrmap_from_aranges): Adjust.
13027         (dw2_find_last_source_symtab): Adjust.
13028         (dw2_map_symtabs_matching_filename): Adjust.
13029         (dw2_symtab_iter_next): Adjust.
13030         (dw2_print_stats): Adjust.
13031         (dw2_expand_all_symtabs): Adjust.
13032         (dw2_expand_symtabs_with_fullname): Adjust.
13033         (dw2_expand_marked_cus): Adjust.
13034         (dw_expand_symtabs_matching_file_matcher): Adjust.
13035         (dw2_map_symbol_filenames): Adjust.
13036         (dw2_debug_names_iterator::next): Adjust.
13037         (dwarf2_initialize_objfile): Adjust.
13038         (set_partial_user): Adjust.
13039         (dwarf2_build_psymtabs_hard): Adjust.
13040
13041 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13042
13043         * dwarf2read.c (create_signatured_type_table_from_debug_names):
13044         Remove unused variables.
13045         (dw2_map_symtabs_matching_filename): Likewise.
13046         (dwarf2_record_block_ranges): Likewise.
13047         (dwarf2_read_addr_index): Likewise.
13048         (follow_die_offset): Likewise.
13049
13050 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13051
13052         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
13053         to symbol_file_add_main.
13054
13055 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13056
13057         PR mi/22299
13058         * mi/mi-console.c (do_fputc_async_safe): New.
13059         (mi_console_file::write_async_safe): New.
13060         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
13061         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
13062         New.
13063         * ui-file.c (ui_file::putstrn): Adjust call to
13064         fputstrn_unfiltered.
13065         * utils.c (printchar): Replace do_fputs and do_fprintf
13066         parameters by do_fputc.
13067         (fputstr_filtered): Adjust call to printchar.
13068         (fputstr_unfiltered): Likewise.
13069         (fputstrn_filtered): Likewise.
13070         (fputstrn_unfiltered): Add do_fputc parameter, pass to
13071         printchar.
13072         * utils.h (do_fputc_ftype): New typedef.
13073         (fputstrn_unfiltered): Add do_fputc parameter.
13074
13075 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13076
13077         * regformats/i386/i386-avx.dat: Remove.
13078
13079 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13080
13081         PR gdb/22979
13082         * amd64-tdep.c (amd64_none_init_abi): New function.
13083         (amd64_x32_none_init_abi): New function.
13084         (_initialize_amd64_tdep): Register handlers for x86-64 and
13085         x64_32 with GDB_OSABI_NONE.
13086         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
13087         GDB_OSABI_NONE osabi.
13088
13089 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13090
13091         PR gdb/22980
13092         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
13093         GDB_OSABI_NONE.
13094         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
13095         * osabi.c (gdb_osabi_names): Add "unknown" entry.
13096
13097 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13098
13099         * common/byte-vector.h (char_vector): New type.
13100         * target.h (target_read_alloc): Return
13101         gdb::optional<byte_vector>.
13102         (target_read_stralloc): Return gdb::optional<char_vector>.
13103         (target_get_osdata): Return gdb::optional<char_vector>.
13104         * target.c (target_read_alloc_1): Templatize.  Replacement
13105         manual memory management with vector.
13106         (target_read_alloc): Change return type, adjust.
13107         (target_read_stralloc): Change return type, adjust.
13108         (target_get_osdata): Change return type, adjust.
13109         * auxv.c (struct auxv_info) <length>: Remove.
13110         <data>: Change type to gdb::optional<byte_vector>.
13111         (auxv_inferior_data_cleanup): Free auxv_info with delete.
13112         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
13113         (target_auxv_search): Adjust.
13114         (fprint_target_auxv): Adjust.
13115         * avr-tdep.c (avr_io_reg_read_command): Adjust.
13116         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
13117         (linux_make_corefile_notes): Adjust.
13118         * osdata.c (get_osdata): Adjust.
13119         * remote.c (remote_get_threads_with_qxfer): Adjust.
13120         (remote_memory_map): Adjust.
13121         (remote_traceframe_info): Adjust.
13122         (btrace_read_config): Adjust.
13123         (remote_read_btrace): Adjust.
13124         (remote_pid_to_exec_file): Adjust.
13125         * solib-aix.c (solib_aix_get_library_list): Adjust.
13126         * solib-dsbt.c (decode_loadmap): Don't free buf.
13127         (dsbt_get_initial_loadmaps): Adjust.
13128         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
13129         * solib-target.c (solib_target_current_sos): Adjust.
13130         * tracepoint.c (sdata_make_value): Adjust.
13131         * xml-support.c (xinclude_start_include): Adjust.
13132         (xml_fetch_content_from_file): Adjust.
13133         * xml-support.h (xml_fetch_another): Change return type.
13134         (xml_fetch_content_from_file): Change return type.
13135         * xml-syscall.c (xml_init_syscalls_info): Adjust.
13136         * xml-tdesc.c (file_read_description_xml): Adjust.
13137         (fetch_available_features_from_target): Change return type.
13138         (target_fetch_description_xml): Adjust.
13139         (target_read_description_xml): Adjust.
13140
13141 2018-04-06  Tom Tromey  <tom@tromey.com>
13142
13143         * value.c (~value): Update.
13144         (struct value) <contents>: Now unique_xmalloc_ptr.
13145         (value_contents_bits_eq, allocate_value_contents)
13146         (value_contents_raw, value_contents_all_raw)
13147         (value_contents_for_printing, value_contents_for_printing_const)
13148         (set_value_enclosing_type): Update.
13149
13150 2018-04-06  Tom Tromey  <tom@tromey.com>
13151
13152         * value.c (range_s): Remove typedef, VEC.
13153         (struct range): Add operator<.
13154         (range_lessthan): Remove.
13155         (ranges_contain): Change type.
13156         (~value): Update.
13157         (struct value) <unavailable, optimized_out>: Now std::vector.
13158         (value_entirely_available)
13159         (value_entirely_covered_by_range_vector)
13160         (value_entirely_unavailable, value_entirely_optimized_out):
13161         Update.
13162         (insert_into_bit_range_vector): Change argument type.
13163         (find_first_range_overlap): Likewise.
13164         (struct ranges_and_idx, value_contents_bits_eq)
13165         (require_not_optimized_out, require_available): Update.
13166         (ranges_copy_adjusted): Change argument types.
13167         (value_optimized_out, value_copy, value_fetch_lazy): Update.
13168
13169 2018-04-06  Tom Tromey  <tom@tromey.com>
13170
13171         * value.c (~value): Update.
13172         (struct value) <parent>: Now a value_ref_ptr.
13173         (value_parent, set_value_parent, value_address, value_copy):
13174         Update.
13175
13176 2018-04-06  Tom Tromey  <tom@tromey.com>
13177
13178         * value.c (struct value): Add constructor, destructor, and member
13179         initializers.
13180         (allocate_value_lazy, value_decref): Update.
13181
13182 2018-04-06  Tom Tromey  <tom@tromey.com>
13183
13184         * value.c (struct value) <released, next>: Remove.
13185         (all_values): Now a std::vector.
13186         (allocate_value_lazy): Update.
13187         (value_next): Remove.
13188         (value_mark, value_free_to_mark, release_value)
13189         (value_release_to_mark): Update.
13190
13191 2018-04-06  Tom Tromey  <tom@tromey.com>
13192
13193         * value.h (fetch_subexp_value, value_release_to_mark): Update.
13194         (free_value_chain): Remove.
13195         * value.c (free_value_chain): Remove.
13196         (value_release_to_mark): Return a std::vector.
13197         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
13198         std::vector.
13199         (check_condition): Update.
13200         * eval.c (fetch_subexp_value): Change "val_chain" to a
13201         std::vector.
13202         * breakpoint.c (update_watchpoint): Update.
13203         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
13204
13205 2018-04-06  Tom Tromey  <tom@tromey.com>
13206
13207         * value.h (free_all_values): Remove.
13208         * value.c (free_all_values): Remove.
13209
13210 2018-04-06  Tom Tromey  <tom@tromey.com>
13211
13212         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
13213         (value_history_chain, value_history_count): Remove.
13214         (value_history): New global.
13215         (record_latest_value, access_value_history, show_values)
13216         (preserve_values): Update.
13217
13218 2018-04-06  Tom Tromey  <tom@tromey.com>
13219
13220         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
13221         * varobj.c (varobj_set_display_format, varobj_set_value)
13222         (install_default_visualizer, construct_visualizer)
13223         (install_new_value, ~varobj, varobj_get_value_type)
13224         (my_value_of_variable, varobj_editable_p): Update.
13225         * c-varobj.c (c_describe_child, c_value_of_variable)
13226         (cplus_number_of_children, cplus_describe_child): Update.
13227         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
13228         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
13229         (ada_value_of_variable, ada_value_is_changeable_p): Update.
13230
13231 2018-04-06  Tom Tromey  <tom@tromey.com>
13232
13233         * printcmd.c (last_examine_address): Change type to
13234         value_ref_ptr.
13235         (do_examine, x_command): Update.
13236
13237 2018-04-06  Tom Tromey  <tom@tromey.com>
13238
13239         * value.c (release_value): Update.
13240         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
13241         (struct bpstats) <val>: Now a value_ref_ptr.
13242         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
13243         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
13244         (~watchpoint, print_it_watchpoint, watch_command_1)
13245         (invalidate_bp_value_on_memory_change): Update.
13246
13247 2018-04-06  Tom Tromey  <tom@tromey.com>
13248
13249         * varobj.c (varobj_clear_saved_item)
13250         (update_dynamic_varobj_children, install_new_value, ~varobj):
13251         Update.
13252         * value.h (value_incref): Move declaration earlier.
13253         (value_decref): Rename from value_free.
13254         (struct value_ref_policy): New.
13255         (value_ref_ptr): New typedef.
13256         (struct value_deleter): Remove.
13257         (gdb_value_up): Remove typedef.
13258         (release_value): Change return type.
13259         (release_value_or_incref): Remove.
13260         * value.c (set_value_parent): Update.
13261         (value_incref): Change return type.
13262         (value_decref): Rename from value_free.
13263         (value_free_to_mark, free_all_values, free_value_chain): Update.
13264         (release_value): Return value_ref_ptr.
13265         (release_value_or_incref): Remove.
13266         (record_latest_value, set_internalvar, clear_internalvar):
13267         Update.
13268         * stack.c (info_frame_command): Don't call value_free.
13269         * python/py-value.c (valpy_dealloc, valpy_new)
13270         (value_to_value_object): Update.
13271         * printcmd.c (do_examine): Update.
13272         * opencl-lang.c (lval_func_free_closure): Update.
13273         * mi/mi-main.c (register_changed_p): Don't call value_free.
13274         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
13275         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
13276         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
13277         value_free.
13278         * guile/scm-value.c (vlscm_free_value_smob)
13279         (vlscm_scm_from_value): Update.
13280         * frame.c (frame_register_unwind, frame_unwind_register_signed)
13281         (frame_unwind_register_unsigned, get_frame_register_bytes)
13282         (put_frame_register_bytes): Don't call value_free.
13283         * findvar.c (address_from_register): Don't call value_free.
13284         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
13285         * dwarf2loc.c (entry_data_value_free_closure)
13286         (value_of_dwarf_reg_entry, free_pieced_value_closure)
13287         (dwarf2_evaluate_loc_desc_full): Update.
13288         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
13289         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
13290         (~watchpoint, watch_command_1)
13291         (invalidate_bp_value_on_memory_change): Update.
13292         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
13293
13294 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
13295
13296         PR gdb/23022
13297         * warning.m4: Add -Wno-error=deprecated-register.
13298         * configure: Re-generate.
13299
13300 2018-04-05  Tom Tromey  <tom@tromey.com>
13301
13302         * linespec.h: Remove include of "vec.h".
13303
13304 2018-04-05  Tom Tromey  <tom@tromey.com>
13305
13306         * linespec.c (typep): Remove typedef.
13307         (find_methods, find_superclass_methods): Take a std::vector.
13308         (find_method): Use std::vector.
13309
13310 2018-04-05  Tom Tromey  <tom@tromey.com>
13311
13312         * utils.c (compare_strings): Remove.
13313         * utils.h (compare_strings): Remove.
13314         * objc-lang.h (find_imps): Update.
13315         * objc-lang.c (find_methods): Take a std::vector.
13316         (uniquify_strings, find_imps): Likewise.
13317         * linespec.c (find_methods): Take a std::vector.
13318         (decode_objc): Use std::vector.
13319         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
13320         a std::vector.
13321         (find_method, find_function_symbols): Use std::vector.
13322
13323 2018-04-05  Tom Tromey  <tom@tromey.com>
13324
13325         * completer.c (completion_tracker::completion_tracker): Remove
13326         cast.
13327         (completion_tracker::discard_completions): Likewise.
13328         * breakpoint.c (ambiguous_names_p): Remove cast.
13329         * ada-lang.c (_initialize_ada_language): Remove cast.
13330         * utils.h (streq): Update.
13331         (streq_hash): Add new declaration.
13332         * utils.c (streq): Return bool.
13333         (streq_hash): New function.
13334
13335 2018-04-05  Tom Tromey  <tom@tromey.com>
13336
13337         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
13338         Remove a string copy.
13339
13340 2018-04-05  Tom Tromey  <tom@tromey.com>
13341
13342         * linespec.c (filter_results): Use std::vector.
13343         (decode_line_2, decode_line_full): Update.
13344
13345 2018-04-05  Tom Tromey  <tom@tromey.com>
13346
13347         * linespec.c (canonical_to_fullform): Return std::string.
13348         (filter_results): Update.
13349         (struct decode_line_2_item): Add constructor.
13350         <fullform, displayform>: Now std::string.
13351         (decode_line_2_compare_items): Now a std::sort comparator.
13352         (decode_line_2): Update.
13353
13354 2018-04-05  Tom Tromey  <tom@tromey.com>
13355
13356         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
13357         (unexpected_linespec_error): Update.
13358         (linespec_parse_basic, parse_linespec): Update.
13359
13360 2018-04-05  Tom Tromey  <tom@tromey.com>
13361
13362         * linespec.c (linespec_parse_basic): Reindent.
13363
13364 2018-04-05  Tom Tromey  <tom@tromey.com>
13365
13366         * minsyms.h (iterate_over_minimal_symbols): Update.
13367         * minsyms.c (iterate_over_minimal_symbols): Take a
13368         gdb::function_view.
13369         * linespec.c (struct collect_minsyms): Remove.
13370         (compare_msyms): Now a std::sort comparator.
13371         (add_minsym): Add parameters.
13372         (search_minsyms_for_name): Update.  Use std::vector.
13373
13374 2018-04-03  Tom Tromey  <tom@tromey.com>
13375
13376         * mipsread.c (read_alphacoff_dynamic_symtab): Use
13377         gdb::byte_vector.
13378
13379 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13380
13381         * MAINTAINERS (Write After Approval): Add Weimin Pan.
13382
13383 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13384
13385         PR gdb/16959
13386         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
13387         printing static type.
13388
13389 2018-04-01  Tom Tromey  <tom@tromey.com>
13390
13391         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
13392         (rs6000_xfer_shared_libraries): Update.
13393
13394 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
13395
13396         * common/gdb_vecs.h (char_ptr): Remove.
13397         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
13398
13399 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13400
13401         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
13402         with std::vector.
13403         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
13404
13405 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13406
13407         * tracepoint.h (struct uploaded_tp): Initialize fields.
13408         <actions, step_actions, cmd_strings>: Change type to
13409         std::vector<char *>.
13410         * tracepoint.c (get_uploaded_tp): Allocate with new.
13411         (free_uploaded_tps): Free with delete.
13412         (parse_tracepoint_definition): Adjust to std::vector change.
13413         * breakpoint.c (read_uploaded_action): Likewise.
13414         (create_tracepoint_from_upload): Likewise.
13415         * ctf.c (ctf_write_uploaded_tp): Likewise.
13416         (SET_ARRAY_FIELD): Likewise.
13417         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
13418
13419 2018-03-30  Tom Tromey  <tom@tromey.com>
13420
13421         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
13422         std::unique_ptr.
13423         (svr4_keep_data_in_core): Update.
13424         (svr4_read_so_list): Update.
13425
13426 2018-03-30  Tom Tromey  <tom@tromey.com>
13427
13428         * windows-nat.c (handle_output_debug_string, handle_exception):
13429         Update.
13430         * target.h (target_read_string): Update.
13431         * target.c (target_read_string): Change "string" to
13432         unique_xmalloc_ptr.
13433         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
13434         Update.
13435         * solib-frv.c (frv_current_sos): Update.
13436         * solib-dsbt.c (dsbt_current_sos): Update.
13437         * solib-darwin.c (darwin_current_sos): Update.
13438         * linux-thread-db.c (inferior_has_bug): Update.
13439         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
13440         Update.  Remove alloca.
13441         * ada-lang.c (ada_main_name): Update.
13442
13443 2018-03-30  Tom Tromey  <tom@tromey.com>
13444
13445         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
13446         (struct dwo_file_deleter): New.
13447         (dwo_file_up): New typedef.
13448         (open_and_init_dwo_file): Use dwo_file_up.
13449         (free_dwo_file_cleanup): Remove.
13450
13451 2018-03-30  Tom Tromey  <tom@tromey.com>
13452
13453         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
13454         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
13455
13456 2018-03-30  Tom Tromey  <tom@tromey.com>
13457
13458         * dwarf2read.c (class free_cached_comp_units): New class.
13459         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
13460         (free_cached_comp_units): Remove function.
13461
13462 2018-03-30  Tom Tromey  <tom@tromey.com>
13463
13464         * utils.h (make_cleanup_unpush_target): Remove.
13465         * inf-ptrace.c (struct target_unpusher): New.
13466         (target_unpush_up) New typedef.
13467         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
13468         target_unpush_up.
13469         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
13470
13471 2018-03-27  Tom Tromey  <tom@tromey.com>
13472
13473         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
13474
13475 2018-03-27  Pedro Alves  <palves@redhat.com>
13476             Tom Tromey  <tom@tromey.com>
13477
13478         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
13479         destructor.  Now a class.
13480         (gdb_readline_wrapper_cleanup): Remove function.
13481         (gdb_readline_wrapper): Remove cleanups.
13482
13483 2018-03-27  Tom Tromey  <tom@tromey.com>
13484
13485         * typeprint.h (struct type_print_options) <local_typedefs,
13486         global_typedefs>: Remove "struct" keyword.
13487         (class typedef_hash_table): New class.
13488         (recursively_update_typedef_hash, add_template_parameters)
13489         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
13490         (find_typedef_in_hash): Don't declare.
13491         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
13492         (typedef_hash_table::recursively_update): Rename from
13493         recursively_update_typedef_hash.  Now a member.
13494         (typedef_hash_table::add_template_parameters): Rename from
13495         add_template_parameters.  Now a member.
13496         (typedef_hash_table::typedef_hash_table): Now a constructor;
13497         rename from create_typedef_hash.
13498         (typedef_hash_table::~typedef_hash_table): Now a destructor;
13499         rename from free_typedef_hash.
13500         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
13501         (do_free_global_table): Remove.
13502         (typedef_hash_table::typedef_hash_table): New constructor; renamed
13503         from copy_type_recursive.
13504         (create_global_typedef_table): Remove.
13505         (typedef_hash_table::find_global_typedef): Now a member of
13506         typedef_hash_table.
13507         (typedef_hash_table::find_typedef): Rename from
13508         find_typedef_in_hash; now a member.
13509         (whatis_exp): Update.
13510         * extension.h (struct ext_lang_type_printers): Add constructor and
13511         destructor.
13512         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
13513         declare.
13514         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
13515         Now a constructor; rename from start_ext_lang_type_printers.
13516         (ext_lang_type_printers): Now a destructor; rename from
13517         free_ext_lang_type_printers.
13518         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
13519         Update.
13520         (c_type_print_base_struct_union): Update.  Remove cleanups.
13521
13522 2018-03-27  Tom Tromey  <tom@tromey.com>
13523
13524         * dwarf-index-write.c: Include <cmath>.
13525
13526 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13527
13528         * NEWS: Add entry describing new "set|show varsize-limit" command.
13529         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
13530         command.
13531         * printcmd.c (_initialize_printcmd): Add "set var" alias of
13532         "set variable".
13533
13534 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
13535
13536         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
13537         dwarf-index-write.c
13538         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
13539         * dwarf-index-common.c: New file.
13540         * dwarf-index-common.h: New file.
13541         * dwarf-index-write.c: New file.
13542         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
13543         (struct dwarf2_section_info): Move from here.
13544         (dwarf2_section_info_def): Likewise.
13545         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
13546         (offset_type): Likewise.
13547         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
13548         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
13549         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
13550         (byte_swap): Likewise.
13551         (MAYBE_SWAP): Likewise.
13552         (dwarf2_per_cu_ptr): Likewise.
13553         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
13554         (struct tu_stats): Likewise.
13555         (struct dwarf2_per_objfile): Likewise.
13556         (struct dwarf2_per_cu_data): Likewise.
13557         (struct signatured_type): Likewise.
13558         (sig_type_ptr): Likewise.
13559         (DEF_VEC_P (sig_type_ptr)): Likewise.
13560         (INDEX4_SUFFIX): Likewise.
13561         (INDEX5_SUFFIX): Likewise.
13562         (DEBUG_STR_SUFFIX): Likewise.
13563         (dwarf2_read_section): Make non-static.
13564         (mapped_index_string_hash): Move from here.
13565         (dwarf5_djb_hash): Likewise.
13566         (file_write): Likewise.
13567         (class data_buf): Likewise.
13568         (struct symtab_index_entry): Likewise.
13569         (struct mapped_symtab): Likewise.
13570         (find_slot): Likewise.
13571         (hash_expand): Likewise.
13572         (add_index_entry): Likewise.
13573         (uniquify_cu_indices): Likewise.
13574         (class c_str_view): Likewise.
13575         (class c_str_view_hasher): Likewise.
13576         (class vector_hasher): Likewise.
13577         (write_hash_table): Likewise.
13578         (psym_index_map): Likewise.
13579         (struct addrmap_index_data): Likewise.
13580         (add_address_entry): Likewise.
13581         (add_address_entry_worker): Likewise.
13582         (write_address_map): Likewise.
13583         (symbol_kind): Likewise.
13584         (write_psymbols): Likewise.
13585         (struct signatured_type_index_data): Likewise.
13586         (write_one_signatured_type): Likewise.
13587         (recursively_count_psymbols): Likewise.
13588         (recursively_write_psymbols): Likewise.
13589         (class debug_names): Likewise.
13590         (check_dwarf64_offsets): Likewise.
13591         (psyms_seen_size): Likewise.
13592         (write_gdbindex): Likewise.
13593         (write_debug_names): Likewise.
13594         (assert_file_size): Likewise.
13595         (write_psymtabs_to_index): Likewise.
13596         (save_gdb_index_command): Likewise.
13597         (_initialize_dwarf2_read): Don't register the "save gdb-index"
13598         command.
13599         * dwarf2read.h: New file.
13600
13601 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13602
13603         PR gdb/22670
13604         * dwarf2read.c (dwarf2_physname): Do not return the demangled
13605         symbol name if the CU's language stores symbol names in linkage
13606         format.
13607         * language.h (struct language_defn)
13608         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
13609         all instances of this struct.
13610
13611 2018-03-26  Tom Tromey  <tom@tromey.com>
13612
13613         * stack.c (backtrace_command_1): Remove verbose code.
13614
13615 2018-03-26  Tom Tromey  <tom@tromey.com>
13616
13617         * python/py-framefilter.c (py_print_type): Don't catch
13618         exceptions.  Return void.
13619         (py_print_value): Likewise.
13620         (py_print_single_arg): Likewise.
13621         (enumerate_args): Don't catch exceptions.
13622         (py_print_args): Likewise.
13623         (py_print_frame): Likewise.
13624         (gdbpy_apply_frame_filter): Catch exceptions here.
13625
13626 2018-03-26  Tom Tromey  <tom@tromey.com>
13627
13628         * stack.c (_initialize_stack): Remove trailing newlines from help
13629         text.  Add "Usage" line to "backtrace" help.
13630
13631 2018-03-26  Tom Tromey  <tom@tromey.com>
13632
13633         PR python/16486:
13634         * python/py-framefilter.c (py_print_args): Call wrap_hint.
13635
13636 2018-03-26  Tom Tromey  <tom@tromey.com>
13637
13638         * python/py-framefilter.c (py_print_single_arg): Return
13639         EXT_LANG_BT_ERROR from catch.
13640
13641 2018-03-26  Tom Tromey  <tom@tromey.com>
13642
13643         PR backtrace/15584:
13644         * stack.c (backtrace_command_1): Move some code into no-filters
13645         "if".
13646
13647 2018-03-26  Tom Tromey  <tom@tromey.com>
13648
13649         * python/py-framefilter.c (throw_quit_or_print_exception): New
13650         function.
13651         (gdbpy_apply_frame_filter): Use it.
13652
13653 2018-03-26  Tom Tromey  <tom@tromey.com>
13654
13655         PR cli/17716:
13656         * python/py-framefilter.c (py_print_type, py_print_value)
13657         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
13658         RETURN_MASK_ERROR.
13659
13660 2018-03-26  Tom Tromey  <tom@tromey.com>
13661
13662         * python/py-framefilter.c (enumerate_args): Use
13663         gdb::unique_xmalloc_ptr.
13664
13665 2018-03-26  Tom Tromey  <tom@tromey.com>
13666
13667         * python/py-framefilter.c (py_print_frame): Return
13668         EXT_LANG_BT_OK.
13669         (gdbpy_apply_frame_filter): Update comment.
13670         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
13671         Remove.
13672         <EXT_LANG_BT_NO_FILTERS>: Change value.
13673
13674 2018-03-26  Tom Tromey  <tom@tromey.com>
13675
13676         PR backtrace/15582:
13677         * stack.c (backtrace_command): Parse "hide" argument.
13678         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
13679         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
13680         constant.
13681
13682 2018-03-26  Tom Tromey  <tom@tromey.com>
13683
13684         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
13685         add "flags".
13686         (backtrace_command): Remove "fulltrace", add "flags".
13687
13688 2018-03-26  Tom Tromey  <tom@tromey.com>
13689
13690         * stack.c (backtrace_command): Rewrite command line parsing.
13691
13692 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13693
13694         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
13695
13696 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13697
13698         * filename-seen-cache.h: Add include guard.
13699
13700 2018-03-26  Keith Seitz  <keiths@redhat.com>
13701
13702         * symfile.c (place_section): Remove "struct" from section_addr_info
13703         in comment.
13704         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
13705         "struct" keyword from section_addr_info.
13706
13707 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
13708
13709         * regformats/regdef.h (reg): Add constructors.
13710
13711 2018-03-25  Pedro Alves  <palves@redhat.com>
13712
13713         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
13714         if then/else bodies in var_func_name extraction.
13715
13716 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
13717
13718         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
13719         lookup_minimal_symbol() to find symbol entry.
13720         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
13721
13722 2018-03-23  Keith Seitz  <keiths@redhat.com>
13723
13724         PR c++/22968
13725         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
13726         nested type definitions for C++, too.
13727
13728 2018-03-23  Tom Tromey  <tom@tromey.com>
13729
13730         * machoread.c (struct oso_el): Add a constructor.  Don't define as
13731         a typedef.
13732         (macho_register_oso): Remove.
13733         (macho_symtab_read): Take a std::vector.
13734         (oso_el_compare_name): Now a std::sort comparator.
13735         (macho_symfile_read_all_oso): Take a std::vector.
13736         (macho_symfile_read): Use std::vector.  Remove cleanups.
13737
13738 2018-03-22  Tom Tromey  <tom@tromey.com>
13739
13740         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
13741         (record_full_goto_bookmark): Use std::string.
13742
13743 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13744
13745         PR tdep/18295
13746         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
13747         a single mask.
13748
13749 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13750
13751         * rs6000-tdep.c (store_insn_p): New function.
13752         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
13753         and cr_reg to their unshifted values. Use store_insn_p to
13754         match LR saves using either R1 or fdata->alloca_reg. Use
13755         store_insn_p to match CR saves. Set alloca_reg_offset
13756         when alloca_reg and framep are set. Remove lr_reg shift
13757         when assigning to fdata->lr_register.
13758
13759 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13760
13761         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
13762         command line args instead of emitting a warning.
13763
13764 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13765
13766         * tracepoint.h (struct static_tracepoint_marker): Initialize
13767         fields, define default constructor, move constructor and move
13768         assignment, disable the rest.
13769         <str_id, extra>: Make std::string.
13770         (release_static_tracepoint_marker): Remove.
13771         (free_current_marker): Remove.
13772         * tracepoint.c (free_current_marker): Remove.
13773         (parse_static_tracepoint_marker_definition): Adjust to
13774         std::string, use new hex2str overload.
13775         (release_static_tracepoint_marker): Remove.
13776         (print_one_static_tracepoint_marker): Get marker by reference
13777         and adjust to std::string.
13778         (info_static_tracepoint_markers_command): Adjust to std::vector
13779         changes
13780         * target.h (static_tracepoint_marker_p): Remove typedef.
13781         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
13782         (struct target_ops) <to_static_tracepoint_marker_at>: Return
13783         bool.
13784         <to_static_tracepoint_markers_by_strid>: Return std::vector.
13785         * target-debug.h
13786         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
13787         (target_debug_print_std_vector_static_tracepoint_marker): New.
13788         (target_debug_print_struct_static_tracepoint_marker_p): Rename
13789         to...
13790         (target_debug_print_static_tracepoint_marker_p): ... this.
13791         * target-delegates.c: Re-generate.
13792         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
13793         Make std::string.
13794         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
13795         (decode_static_tracepoint_spec): Adjust to std::vector.
13796         (tracepoint_print_one_detail): Adjust to std::string.
13797         (strace_marker_decode_location): Adjust to std::string.
13798         (update_static_tracepoint): Adjust to std::string, remove call
13799         to release_static_tracepoint_marker.
13800         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
13801         Adjust to std::vector.
13802         * remote.c (remote_static_tracepoint_marker_at): Return bool.
13803         (remote_static_tracepoint_markers_by_strid): Adjust to
13804         std::vector.
13805         * common/rsp-low.h (hex2str): New overload with explicit count
13806         of bytes.
13807         * common/rsp-low.c (hex2str): New overload with explicit count
13808         of bytes.
13809         * unittests/rsp-low-selftests.c (test_hex2str): New function.
13810         (_initialize_rsp_low_selftests): Add test_hex2str test.
13811         * unittests/tracepoint-selftests.c
13812         (test_parse_static_tracepoint_marker_definition): Adjust to
13813         std::string.
13814
13815 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13816
13817         * tracepoint.c (parse_static_tracepoint_marker_definition):
13818         Consider case where the definition is followed by more
13819         definitions.
13820         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13821         tracepoint-selftests.c.
13822         * unittests/tracepoint-selftests.c: New.
13823
13824 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13825
13826         * MAINTAINERS (Write After Approval): Add Pedro Franco de
13827         Carvalho.
13828
13829 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13830
13831         * symtab.c (find_pc_sect_line): fixed indentation.
13832
13833 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13834
13835         * symtab.c (find_pc_sect_line): now uses binary search.
13836
13837 2018-03-19  Tom Tromey  <tom@tromey.com>
13838
13839         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
13840         "IDENT" production.
13841
13842 2018-03-19  Pedro Alves  <palves@redhat.com>
13843             Tom Tromey  <tom@tromey.com>
13844
13845         * unittests/observable-selftests.c: New file.
13846         * common/observable.h: New file.
13847         * observable.h: New file.
13848         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
13849         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
13850         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
13851         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
13852         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
13853         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
13854         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
13855         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
13856         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
13857         python/py-breakpoint.c, python/py-finishbreakpoint.c,
13858         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
13859         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
13860         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
13861         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
13862         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
13863         tui/tui-interp.c, valops.c: Update all users.
13864         * tui/tui-hooks.c (tui_bp_created_observer)
13865         (tui_bp_deleted_observer, tui_bp_modified_observer)
13866         (tui_inferior_exit_observer, tui_before_prompt_observer)
13867         (tui_normal_stop_observer, tui_register_changed_observer):
13868         Remove.
13869         (tui_observers_token): New global.
13870         (attach_or_detach, tui_attach_detach_observers): New functions.
13871         (tui_install_hooks, tui_remove_hooks): Use
13872         tui_attach_detach_observers.
13873         * record-btrace.c (record_btrace_thread_observer): Remove.
13874         (record_btrace_thread_observer_token): New global.
13875         * observer.sh: Remove.
13876         * observer.c: Rename to observable.c.
13877         * observable.c (namespace gdb_observers): Define new objects.
13878         (observer_debug): Move into gdb_observers namespace.
13879         (struct observer, struct observer_list, xalloc_observer_list_node)
13880         (xfree_observer_list_node, generic_observer_attach)
13881         (generic_observer_detach, generic_observer_notify): Remove.
13882         (_initialize_observer): Update.
13883         Don't include observer.inc.
13884         * Makefile.in (generated_files): Remove observer.h, observer.inc.
13885         (clean mostlyclean): Likewise.
13886         (observer.h, observer.inc): Remove targets.
13887         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
13888         (COMMON_SFILES): Use observable.c, not observer.c.
13889         * .gitignore: Remove observer.h.
13890
13891 2018-03-18  Tom Tromey  <tom@tromey.com>
13892
13893         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
13894         gdb::def_vector.
13895         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
13896
13897 2018-03-17  Tom Tromey  <tom@tromey.com>
13898
13899         * auto-load.c (auto_load_objfile_script_1): Use std::string.
13900
13901 2018-03-17  Tom Tromey  <tom@tromey.com>
13902
13903         * target.c (class scoped_target_fd): New.
13904         (target_fileio_close_cleanup): Remove.
13905         (target_fileio_read_alloc_1): Use scoped_target_fd.
13906
13907 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
13908
13909         * silent-rules.mk: New.
13910         * Makefile.in: Include silent-rules.mk
13911         (srcdir, VPATH, top_srcdir): Move up.
13912         (COMPILE): Add ECHO_CXX.
13913         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
13914         (init.c): Add ECHO_INIT_C.
13915         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
13916         (version.c): Add ECHO_GEN.
13917         (printcmd.o): Add ECHO_CXX.
13918         (target-float.o): Add ECHO_CXX.
13919         (ada-exp.o): Add ECHO_CXX.
13920         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
13921         (insight$(EXEEXT)): Add ECHO_CXXLD.
13922         * gnulib/configure.ac: Add AM_SILENT_RULES.
13923         * gnulib/aclocal.m4: Re-generate.
13924         * gnulib/configure: Re-generate.
13925         * gnulib/import/Makefile.in: Re-generate.
13926
13927 2018-03-16  Tom Tromey  <tom@tromey.com>
13928
13929         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
13930         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
13931         * utils.c (do_free_section_addr_info)
13932         (make_cleanup_free_section_addr_info): Remove.
13933         * symfile.h (struct other_sections): Add constructor.
13934         (struct section_addr_info): Remove.
13935         (section_addr_info): New typedef.
13936         (struct sym_fns) <sym_offsets>: Change type of parameter.
13937         (build_section_addr_info_from_objfile)
13938         (relative_addr_info_to_section_offsets, addr_info_make_relative)
13939         (default_symfile_offsets, symbol_file_add)
13940         (symbol_file_add_from_bfd)
13941         (build_section_addr_info_from_section_table): Update.
13942         (alloc_section_addr_info, free_section_addr_info): Don't declare.
13943         * symfile.c (alloc_section_addr_info): Remove.
13944         (build_section_addr_info_from_section_table): Change return type.
13945         Update.
13946         (build_section_addr_info_from_bfd)
13947         (build_section_addr_info_from_objfile): Likewise.
13948         (free_section_addr_info): Remove.
13949         (relative_addr_info_to_section_offsets): Change type of "addrs".
13950         (addrs_section_compar): Now a std::sort comparator.
13951         (addrs_section_sort): Change return type.
13952         (addr_info_make_relative): Change type of "addrs".  Update.
13953         (default_symfile_offsets, syms_from_objfile_1)
13954         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
13955         (symbol_file_add_separate): Update.
13956         (symbol_file_add): Change type of "addrs".  Update.
13957         (add_symbol_file_command): Update.  Remove cleanups.
13958         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
13959         cleanups.
13960         * symfile-debug.c (debug_sym_offsets): Change type of "info".
13961         * solib.c (solib_read_symbols): Update.
13962         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
13963         * machoread.c (macho_symfile_offsets): Update.
13964         * jit.c (jit_bfd_try_read_symtab): Update.
13965
13966 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
13967
13968         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13969         unittests/utils-selftests.c.
13970         * unittests/utils-selftests.c: New file.
13971
13972 2018-03-14  Tom Tromey  <tom@tromey.com>
13973
13974         PR cli/14977:
13975         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
13976         for NULL.
13977
13978 2018-03-14  Tom Tromey  <tom@tromey.com>
13979
13980         PR cli/19918:
13981         * printcmd.c (printf_pointer): Allow "-" in format.
13982
13983 2018-03-14  Tom Tromey  <tom@tromey.com>
13984
13985         * printcmd.c (_initialize_printcmd): Add usage to printf.
13986
13987 2018-03-14  Yao Qi  <qiyao@sourceware.org>
13988
13989         * MAINTAINERS: Update my email address.
13990
13991 2018-03-13  Tom Tromey  <tom@tromey.com>
13992
13993         * machoread.c (macho_check_dsym): Change filenamep to a
13994         std::string*.
13995         (macho_symfile_read): Update.
13996         * symfile.c (load_command): Use std::string.
13997
13998 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13999
14000         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
14001         to error message string.
14002         (riscv_register_name): Use xsnprintf instead of sprintf.
14003         (riscv_insn::fetch_instruction): Use gdb_assert instead of
14004         internal_error.
14005         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
14006         error.
14007         (riscv_push_dummy_call): Likewise.
14008
14009 2018-03-12  Tom Tromey  <tom@tromey.com>
14010
14011         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
14012         Use gdb::byte_vector.
14013         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
14014
14015 2018-03-12  Yao Qi  <yao.qi@linaro.org>
14016
14017         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
14018         parameter type to readable_regcache.
14019         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
14020         the declaration.
14021
14022 2018-03-11  Tom Tromey  <tom@tromey.com>
14023
14024         * dwarf2read.c (struct nextfield): Add initializers.
14025         (struct nextfnfield): Remove.
14026         (struct fnfieldlist): Add initializers.  Remove "length" and
14027         "head", use std::vector.
14028         (struct decl_field_list): Remove.
14029         (struct field_info): Add initializers.
14030         <fields, baseclasses>: Now std::vector.
14031         <nbaseclasses, nfnfields, typedef_field_list_count,
14032         nested_types_list_count>: Remove.
14033         (dwarf2_add_field, dwarf2_add_type_defn)
14034         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
14035         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
14036         (process_structure_scope): Update.
14037
14038 2018-03-11  Tom Tromey  <tom@tromey.com>
14039
14040         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
14041         for use by std::sort.
14042         (build_type_psymtabs_1): Use std::vector.
14043
14044 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
14045
14046         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
14047         and LIBMPFR in the printed configuration.
14048
14049 2018-03-08  Tom Tromey  <tom@tromey.com>
14050
14051         * source.c (get_filename_and_charpos): Use scoped_fd.
14052         * nto-procfs.c (procfs_open_1): Use scoped_fd.
14053         (procfs_pidlist): Likewise.
14054         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
14055         (iterate_over_mappings): Likewise.
14056
14057 2018-03-08  Tom Tromey  <tom@tromey.com>
14058
14059         * infcall.c (struct call_return_meta_info)
14060         <stack_temporaries_enabled>: Remove.
14061         (get_call_return_value, call_function_by_hand_dummy): Update.
14062         * thread.c (disable_thread_stack_temporaries): Remove.
14063         (enable_thread_stack_temporaries): Remove.
14064         (thread_stack_temporaries_enabled_p): Return bool.
14065         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
14066         (get_last_thread_stack_temporary): Update.
14067         * eval.c (evaluate_subexp): Update.
14068         * gdbthread.h (class enable_thread_stack_temporaries): Now a
14069         class, not a function.
14070         (value_ptr, value_vec): Remove typedefs.
14071         (class thread_info) <stack_temporaries_enabled>: Now bool.
14072         <stack_temporaries>: Now a std::vector.
14073         (thread_stack_temporaries_enabled_p)
14074         (value_in_thread_stack_temporaries): Return bool.
14075
14076 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
14077
14078         * remote.c (putpkt_binary): Fix omitted bytes reporting.
14079         (getpkt_or_notif_sane_1): Likewise.
14080
14081 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14082
14083         * build-id.c (build_id_to_debug_bfd): Use std::string.
14084
14085 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14086
14087         * build-id.c (find_separate_debug_file_by_buildid): Return
14088         std::string.
14089         * build-id.h (find_separate_debug_file_by_buildid): Return
14090         std::string.
14091         * coffread.c (coff_symfile_read): Adjust to std::string.
14092         * elfread.c (elf_symfile_read): Adjust to std::string.
14093         * symfile.c (separate_debug_file_exists): Change parameter to
14094         std::string.
14095         (find_separate_debug_file): Return std::string.
14096         (find_separate_debug_file_by_debuglink): Return std::string.
14097         * symfile.h (find_separate_debug_file_by_debuglink): Return
14098         std::string.
14099
14100 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14101
14102         * common/xml-utils.c (xml_escape_text): Move code to...
14103         (xml_escape_text_append): ... this new function.
14104         * common/xml-utils.h (xml_escape_text_append): New declaration.
14105         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
14106         New function.
14107         (_initialize_xml_utils): register test_xml_escape_text_append as
14108         a selftest.
14109
14110 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
14111
14112         * defs.h: Remove MAX_REGISTER_SIZE.
14113         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
14114         asserts.
14115         * python/py-unwind.c (pyuw_sniffer): Likewise.
14116
14117 2018-03-07  Tom Tromey  <tom@tromey.com>
14118
14119         * linux-tdep.c (linux_info_proc): Update.
14120         * target.h (struct target_ops) <to_fileio_readlink>: Return
14121         optional<string>.
14122         (target_fileio_readlink): Return optional<string>.
14123         * remote.c (remote_hostio_readlink): Return optional<string>.
14124         * inf-child.c (inf_child_fileio_readlink): Return
14125         optional<string>.
14126         * target.c (target_fileio_readlink): Return optional<string>.
14127
14128 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
14129
14130         * regcache.c (cooked_read_test): Add riscv to the list of
14131         architectures that have a save_reggroup.
14132
14133 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14134
14135         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
14136         value is not a dynamic class object.
14137
14138 2018-03-06  Tom Tromey  <tom@tromey.com>
14139
14140         * rust-exp.y: Formatting fixes.
14141
14142 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14143
14144         * riscv-tdep.c (riscv_register_name): Remove target description
14145         support.
14146         (riscv_gdbarch_init): Remove target description check.
14147
14148 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14149
14150         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
14151         comment.
14152         * riscv-tdep.h: Likewise.
14153
14154 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14155
14156         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
14157         (riscv_pseudo_register_write): Delete.
14158         (riscv_gdbarch_init): Remove all use of pseudo registers.
14159
14160 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14161
14162         * record-btrace.c (btrace_print_lines): Replace cleanup
14163         parameter with RAII equivalents.
14164         (btrace_insn_history): Replace cleanup with RAII equivalents.
14165         * ui-out.h (make_cleanup_ui_out_list_begin_end,
14166         make_cleanup_ui_out_tuple_begin_end): Remove.
14167         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
14168         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
14169         make_cleanup_ui_out_list_begin_end): Remove.
14170
14171 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14172
14173         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
14174         parameter types to std::vector.  Use bool.
14175         (record_btrace_wait): Replace VEC(tp_t) with
14176         std::vector<thread_info *>.
14177         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
14178
14179 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14180
14181         * record-btrace.c (record_btrace_disable_callback): Remove.
14182         (struct scoped_btrace_disable): New.
14183         (record_btrace_open): Use scoped_btrace_disable.
14184
14185 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14186
14187         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
14188         reading values from registers.
14189
14190 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14191
14192         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
14193         where appropriate.
14194
14195 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14196
14197         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
14198         change parameter type.  Use GDB's print functions, and use
14199         core_addr_to_string where appropriate.
14200         (riscv_push_dummy_call): Use core_addr_to_string where
14201         appropriate, update call to riscv_print_arg_location, and reindent
14202         a few lines.
14203         (riscv_return_value): Update call to riscv_print_arg_location.
14204
14205 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14206             Tim Newsome <tim@sifive.com>
14207             Albert Ou <a0u@eecs.berkeley.edu>
14208             Darius Rad <darius@bluespec.com>
14209
14210         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
14211         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
14212         (ALLDEPFILES): Add riscv-tdep.c
14213         * configure.tgt: Add riscv support.
14214         * riscv-tdep.c: New file.
14215         * riscv-tdep.h: New file.
14216         * NEWS: Mention new target.
14217         * MAINTAINERS: Add entry for riscv.
14218
14219 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14220
14221         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
14222         fields within aggregates.
14223
14224 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
14225
14226         * record-btrace.c (btrace_print_lines): Change type of flags to
14227         gdb_disassembly_flags.
14228
14229 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14230
14231         * fbsd-nat.c: Include "inf-ptrace.h".
14232         (USE_SIGTRAP_SIGINFO): Conditionally define.
14233         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
14234         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
14235         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
14236         function.
14237         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
14238         Likewise.
14239         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
14240         Likewise.
14241         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
14242         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
14243         "supports_stopped_by_hw_breakpoint" target methods.
14244
14245 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14246
14247         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
14248         * fbsd-nat.c (debug_fbsd_nat): New variable.
14249         (show_fbsd_nat_debug): New function.
14250         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
14251         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
14252
14253 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14254
14255         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
14256         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
14257         prototype.
14258         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
14259         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
14260         method.
14261
14262 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14263
14264         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
14265         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
14266
14267 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14268
14269         * charset.c (struct charset_vector): New.
14270         (charsets): Change type to charset_vector.
14271         (find_charset_names): Adjust.
14272         (add_one): Adjust.
14273         (_initialize_charset): Adjust.
14274
14275 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14276
14277         * progspace.h (struct program_space) <deleted_solibs>: Change
14278         type to std::vector<std::string>.
14279         * progspace.c (clear_program_space_solib_cache): Adjust.
14280         * breakpoint.c (print_solib_event): Adjust.
14281         (check_status_catch_solib): Adjust.
14282         * solib.c (update_solib_list): Adjust.
14283         * ui-out.h (class ui_out) <field_string>: New overload.
14284         * ui-out.c (ui_out::field_string): New overload.
14285
14286 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14287
14288         * progspace.h (struct program_space): Add constructor and
14289         destructor, initialize fields.
14290         (add_program_space): Remove.
14291         * progspace.c (add_program_space): Rename to...
14292         (program_space::program_space): ... this.
14293         (release_program_space): Rename to...
14294         (program_space::~program_space): ... this.
14295         (delete_program_space): Use delete to delete program_space.
14296         (initialize_progspace): Use new to allocate program_space.
14297         * inferior.c (add_inferior_with_spaces): Likewise.
14298         (clone_inferior_command): Likewise.
14299         * infrun.c (follow_fork_inferior): Likewise.
14300         (handle_vfork_child_exec_or_exit): Likewise.
14301
14302 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14303
14304         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
14305         (delim_string_to_char_ptr_vec): Return std::vector of
14306         gdb::unique_xmalloc_ptr.
14307         (dirnames_to_char_ptr_vec_append): Take std::vector of
14308         gdb::unique_xmalloc_ptr.
14309         (dirnames_to_char_ptr_vec): Return std::vector of
14310         gdb::unique_xmalloc_ptr.
14311         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
14312         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
14313         (delim_string_to_char_ptr_vec): Return an std::vector of
14314         gdb::unique_xmalloc_ptr, adjust the code.
14315         (dirnames_to_char_ptr_vec_append): Take an std::vector of
14316         gdb::unique_xmalloc_ptr, adjust the code.
14317         (dirnames_to_char_ptr_vec): Return an std::vector of
14318         gdb::unique_xmalloc_ptr, adjust the code.
14319         * auto-load.c (auto_load_safe_path_vec): Change type to
14320         std::vector of gdb::unique_xmalloc_ptr.
14321         (auto_load_expand_dir_vars): Return an std::vector of
14322         gdb::unique_xmalloc_ptr, adjust the code.
14323         (auto_load_safe_path_vec_update): Adjust.
14324         (filename_is_in_auto_load_safe_path_vec): Adjust.
14325         (auto_load_objfile_script_1): Adjust.
14326         * build-id.c (build_id_to_debug_bfd): Adjust.
14327         * linux-thread-db.c (thread_db_load_search): Adjust.
14328         * source.c (add_path): Adjust.
14329         (openp): Adjust.
14330         * symfile.c (find_separate_debug_file): Adjust.
14331         * utils.c (do_free_char_ptr_vec): Remove.
14332         (make_cleanup_free_char_ptr_vec): Remove.
14333
14334 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
14335
14336         PR gdb/22907
14337         * common/pathstuff.c: Conditionally include "<windows.h>".
14338
14339 2018-03-01  Georg Sauthoff  <mail@georg.so>
14340
14341         PR gdb/22888
14342         * gcore.in: Quote variables and switch interpreter to bash.
14343
14344 2018-03-01  Tom Tromey  <tom@tromey.com>
14345
14346         * dwarf2read.c (alloc_discriminant_info): Fix default_index
14347         assertion.  Add assertion for discriminant_index.
14348         (quirk_rust_enum): Use correct base type name in univariant case.
14349
14350 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
14351
14352         * record.c (get_call_history_modifiers): Return a
14353         record_print_flags.
14354         (cmd_record_call_history): Adjust.
14355         * record-btrace.c (record_btrace_call_history): Adjust.
14356         (record_btrace_call_history_range): Adjust.
14357         (record_btrace_call_history_from): Adjust.
14358         * target-debug.h (target_debug_print_record_print_flags): New.
14359         * target-delegates.c: Re-generate.
14360         * target.c (target_call_history): Change flags type.
14361         (target_call_history_from): Likewise.
14362         (target_call_history_range): Likewise.
14363         * target.h (struct target_ops) <target_call_history>: Likewise.
14364         (target_call_history_from): Likewise.
14365         (target_call_history_range): Likewise.
14366
14367 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14368             Simon Marchi  <simon.marchi@polymtl.ca>
14369
14370         * common/common-utils.c: Include "sys/stat.h".
14371         (is_regular_file): Move here from "source.c"; change return
14372         type to "bool".
14373         * common/common-utils.h (is_regular_file): New prototype.
14374         * common/pathstuff.c (contains_dir_separator): New function.
14375         * common/pathstuff.h (contains_dir_separator): New prototype.
14376         * source.c: Don't include "sys/stat.h".
14377         (is_regular_file): Move to "common/common-utils.c".
14378
14379 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14380
14381         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
14382         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
14383         * auto-load.c: Include "common/pathstuff.h".
14384         * common/common-def.h (current_directory): Move here.
14385         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
14386         function.
14387         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
14388         prototype.
14389         * common/pathstuff.c: New file.
14390         * common/pathstuff.h: New file.
14391         * compile/compile.c: Include "common/pathstuff.h".
14392         * defs.h (current_directory): Move to "common/common-defs.h".
14393         * dwarf2read.c: Include "common/pathstuff.h".
14394         * exec.c: Likewise.
14395         * guile/scm-safe-call.c: Likewise.
14396         * linux-thread-db.c: Likewise.
14397         * main.c: Likewise.
14398         * nto-tdep.c: Likewise.
14399         * objfiles.c: Likewise.
14400         * source.c: Likewise.
14401         * symtab.c: Likewise.
14402         * utils.c: Include "common/pathstuff.h".
14403         (gdb_realpath): Move to "common/pathstuff.c".
14404         (gdb_realpath_keepfile): Likewise.
14405         (gdb_abspath): Likewise.
14406         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
14407         (gdb_realpath_keepfile): Likewise.
14408         (gdb_abspath): Likewise.
14409
14410 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
14411
14412         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
14413         wildcard process pid for super_resume for kernels with a
14414         specific bug.
14415
14416 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
14417
14418         * compile/compile.c (get_args): Add additional comments
14419         explaining function.
14420
14421 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
14422             Tom Tromey  <tom@tromey.com>
14423
14424         * target.h (memory_write_request_s): Remove typedef.  Don't define
14425         VEC.
14426         (target_write_memory_blocks): Change argument to std::vector.
14427         (struct memory_write_request): Add constructor.
14428         * target-memory.c (compare_block_starting_address): Return bool.
14429         Change argument types.
14430         (claim_memory): Change arguments to use std::vector.
14431         (split_regular_and_flash_blocks, blocks_to_erase)
14432         (compute_garbled_blocks): Likewise.
14433         (cleanup_request_data, cleanup_write_requests_vector): Remove.
14434         (target_write_memory_blocks): Change argument to std::vector.
14435         * symfile.c (struct load_section_data): Add constructor and
14436         destructor.  Use std::vector for "requests".
14437         (struct load_progress_data): Add initializers.
14438         (load_section_callback): Update.  Use "new".
14439         (clear_memory_write_data): Remove.
14440         (generic_load): Update.
14441
14442 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
14443
14444         * arch/aarch64.h: Use common/tdesc.h.
14445
14446 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14447
14448         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
14449         architecture with a 64-bit ABI.
14450
14451 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14452
14453         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
14454         ahead of target description loading.
14455
14456 2018-02-26  Tom Tromey  <tom@tromey.com>
14457
14458         * stack.c (backtrace_command_1): Update.
14459         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
14460         of "flags".
14461         * python/py-framefilter.c (py_print_frame)
14462         (gdbpy_apply_frame_filter): Change type of "flags".
14463         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
14464         of "flags".
14465         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
14466         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
14467         * extension.h (enum frame_filter_flag): Rename from
14468         frame_filter_flags.
14469         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
14470         (apply_ext_lang_frame_filter): Change type of "flags".
14471         * extension.c (apply_ext_lang_frame_filter): Change type of
14472         "flags".
14473         * extension-priv.h (struct extension_language_ops)
14474         <apply_frame_filter>: Change type of "flags".
14475
14476 2018-02-26  Tom Tromey  <tom@tromey.com>
14477
14478         PR python/16497:
14479         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
14480         off-by-one in py_end computation.
14481         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
14482         PRINT_MORE_FRAMES.
14483         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
14484         constant.
14485
14486 2018-02-26  Tom Tromey  <tom@tromey.com>
14487
14488         * dwarf2read.c (struct variant_field): New.
14489         (struct nextfield) <variant>: New field.
14490         (dwarf2_add_field): Handle DW_TAG_variant_part.
14491         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
14492         discriminated union.
14493         (read_structure_type): Handle DW_TAG_variant_part.
14494         (handle_struct_member_die): New function, extracted from
14495         process_structure_scope.  Handle DW_TAG_variant.
14496         (process_structure_scope): Handle discriminated unions.  Call
14497         handle_struct_member_die.
14498
14499 2018-02-26  Tom Tromey  <tom@tromey.com>
14500
14501         * rust-lang.h (rust_last_path_segment): Declare.
14502         * rust-lang.c (rust_last_path_segment): Now public.  Change
14503         contract.
14504         (struct disr_info): Remove.
14505         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
14506         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
14507         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
14508         (rust_enum_p, rust_enum_variant): New function.
14509         (rust_underscore_fields): Remove "offset" parameter.
14510         (rust_print_enum): New function.
14511         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
14512         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
14513         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
14514         enums.
14515         (rust_internal_print_type): New function, from rust_print_type.
14516         Remove enum code.
14517         (rust_print_type): Call rust_internal_print_type.
14518         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
14519         Update enum handling.
14520         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
14521         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
14522         (rust_union_quirks): New functions.
14523         (process_full_comp_unit, process_full_type_unit): Call
14524         rust_union_quirks.
14525         (process_structure_scope): Update rust_unions if necessary.
14526
14527 2018-02-26  Tom Tromey  <tom@tromey.com>
14528
14529         * value.h (value_union_variant): Declare.
14530         * valops.c (value_union_variant): New function.
14531         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
14532         (struct discriminant_info): New.
14533         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
14534         enumerator.
14535         (struct main_type) <flag_discriminated_union>: New field.
14536
14537 2018-02-26  Tom Tromey  <tom@tromey.com>
14538
14539         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14540         unittests/unpack-selftests.c.
14541         * unittests/unpack-selftests.c: New file.
14542         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
14543
14544 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14545
14546         * dwarf2read.c (struct partial_die_info) <read>: New method.
14547         (read_partial_die): Remove the declaration.
14548         (load_partial_dies): Update.
14549         (partial_die_info::partial_die_info):
14550         (read_partial_die): Change it to partial_die_info::read.
14551
14552 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14553
14554         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
14555         (fixup_partial_die): Remove declaration.
14556         (scan_partial_symbols): Update.
14557         (partial_die_parent_scope): Likewise.
14558         (partial_die_full_name): Likewise.
14559         (fixup_partial_die): Change it to partial_die_info::fixup.
14560
14561 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14562
14563         * dwarf2read.c (read_partial_die): Update the declaration.
14564         (load_partial_dies): Caller update.
14565         (read_partial_die): Remove one argument abbrev_len.
14566
14567 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14568
14569         * dwarf2read.c (struct partial_die_info): Add ctor, delete
14570         assignment operator.
14571         (load_partial_dies): Use ctor and copy ctor.
14572         (read_partial_die): Update.
14573         (dwarf2_cu::find_partial_die): Use ctor.
14574
14575 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14576
14577         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
14578         (find_partial_die_in_comp_unit): Change it to
14579         dwarf2_cu::find_partial_die.
14580         (find_partial_die): Update.
14581
14582 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14583
14584         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
14585         is NULL.
14586
14587 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14588
14589         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
14590
14591 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
14592
14593         * arch/amd64.h: Use common/tdesc.h.
14594         * arch/i386.c: Likewise.
14595         * arch/i386.h: Likewise.
14596         * arch/tic6x.c: Likewise.
14597         * arch/tdesc.h: Move file from here...
14598         * common/tdesc.h: ...to here.
14599         * features/aarch64-core.c: Regenerate.
14600         * features/aarch64-fpu.c: Regenerate.
14601         * features/i386/32bit-avx.c: Regenerate.
14602         * features/i386/32bit-avx512.c: Regenerate.
14603         * features/i386/32bit-core.c: Regenerate.
14604         * features/i386/32bit-linux.c: Regenerate.
14605         * features/i386/32bit-mpx.c: Regenerate.
14606         * features/i386/32bit-pkeys.c: Regenerate.
14607         * features/i386/32bit-sse.c: Regenerate.
14608         * features/i386/64bit-avx.c: Regenerate.
14609         * features/i386/64bit-avx512.c: Regenerate.
14610         * features/i386/64bit-core.c: Regenerate.
14611         * features/i386/64bit-linux.c: Regenerate.
14612         * features/i386/64bit-mpx.c: Regenerate.
14613         * features/i386/64bit-pkeys.c: Regenerate.
14614         * features/i386/64bit-segments.c: Regenerate.
14615         * features/i386/64bit-sse.c: Regenerate.
14616         * features/i386/x32-core.c: Regenerate.
14617         * features/tic6x-c6xp.c: Regenerate.
14618         * features/tic6x-core.c: Regenerate.
14619         * features/tic6x-gp.c: Regenerate.
14620         * target-descriptions.c: Use common/tdesc.h.
14621         * target-descriptions.h: Likewise.
14622
14623 2018-02-24  Tom Tromey  <tom@tromey.com>
14624
14625         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
14626         (try_thread_db_load_from_dir, thread_db_load_search): Use
14627         std::string.
14628         (info_auto_load_libthread_db_compare): Return bool.  Change
14629         argument types.
14630         (info_auto_load_libthread_db): Use std::vector, std::string.
14631         Remove cleanups.
14632
14633 2018-02-24  Tom Tromey  <tom@tromey.com>
14634
14635         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
14636         std::string.
14637         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
14638         std::string*.
14639         * gdbarch.c: Rebuild.
14640         * gdbarch.h: Rebuild.
14641         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
14642         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
14643         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
14644         std::string*.
14645
14646 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
14647
14648         * gdbtypes.h (sect_offset): Change type to uint64_t.
14649         (sect_offset_str): New function.
14650         * dwarf2read.c (create_addrmap_from_aranges): Use
14651         sect_offset_str.
14652         (error_check_comp_unit_head): Likewise.
14653         (create_debug_type_hash_table): Likewise.
14654         (read_cutu_die_from_dwo): Likewise.
14655         (init_cutu_and_read_dies): Likewise.
14656         (init_cutu_and_read_dies_no_follow): Likewise.
14657         (process_psymtab_comp_unit_reader): Likewise.
14658         (partial_die_parent_scope): Likewise.
14659         (peek_die_abbrev): Likewise.
14660         (process_queue): Likewise.
14661         (dwarf2_physname): Likewise.
14662         (read_namespace_alias): Likewise.
14663         (read_import_statement): Likewise.
14664         (create_dwo_cu_reader): Likewise.
14665         (create_cus_hash_table): Likewise.
14666         (lookup_dwo_cutu): Likewise.
14667         (inherit_abstract_dies): Likewise.
14668         (read_func_scope): Likewise.
14669         (read_call_site_scope): Likewise.
14670         (dwarf2_add_member_fn): Likewise.
14671         (read_common_block): Likewise.
14672         (read_module_type): Likewise.
14673         (read_typedef): Likewise.
14674         (read_subrange_type): Likewise.
14675         (load_partial_dies): Likewise.
14676         (read_partial_die): Likewise.
14677         (find_partial_die): Likewise.
14678         (read_str_index): Likewise.
14679         (dwarf2_string_attr): Likewise.
14680         (build_error_marker_type): Likewise.
14681         (lookup_die_type): Likewise.
14682         (dump_die_shallow): Likewise.
14683         (follow_die_ref): Likewise.
14684         (dwarf2_fetch_die_loc_sect_off): Likewise.
14685         (dwarf2_fetch_constant_bytes): Likewise.
14686         (follow_die_sig): Likewise.
14687         (get_signatured_type): Likewise.
14688         (get_DW_AT_signature_type): Likewise.
14689         (dwarf2_find_containing_comp_unit): Likewise.
14690         (set_die_type): Likewise.
14691
14692 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
14693
14694         * arch/aarch64.c: Include "common-defs.h".
14695         * arch/amd64.c: Likewise.
14696         * arch/i386.c: Likewise.
14697
14698 2018-02-21  Tom Tromey  <tom@tromey.com>
14699
14700         * value.h: (extract_field_op): Update.
14701         * eval.c (extract_field_op): Return a const char *.
14702         * expression.h (parse_expression_for_completion): Update.
14703         * completer.c (complete_expression): Update.
14704         (add_struct_fields): Make fieldname const.
14705         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
14706         (mark_completion_tag, parse_exp_in_context_1): Update.
14707         (parse_expression_for_completion): Change "name" to
14708         unique_xmalloc_ptr*.
14709
14710 2018-02-21  Tom Tromey  <tom@tromey.com>
14711
14712         * infcall.c (call_function_by_hand_dummy): Use std::vector.
14713
14714 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14715
14716         * avr-tdep.c (avr_read_pc): Change parameter type to
14717         readable_regcache.
14718         * gdbarch.sh (read_pc): Likewise.
14719         * gdbarch.c: Re-generated.
14720         * gdbarch.h: Re-generated.
14721         * hppa-tdep.c (hppa_read_pc): Change parameter type to
14722         readable_regcache.
14723         * ia64-tdep.c (ia64_read_pc): Likewise.
14724         * mips-tdep.c (mips_read_pc): Likewise.
14725         * spu-tdep.c (spu_read_pc): Likewise.
14726
14727 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14728
14729         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
14730         * regcache-dump.c: New file.
14731         * regcache.c: Move register_dump to regcache-dump.c.
14732         (maintenance_print_registers): Likewise.
14733         (maintenance_print_raw_registers): Likewise.
14734         (maintenance_print_cooked_registers): Likewise.
14735         (maintenance_print_register_groups): Likewise.
14736         (maintenance_print_remote_registers): Likewise.
14737         (_initialize_regcache): Likewise.
14738         * regcache.h (register_dump): Moved from regcache.c.
14739
14740 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14741
14742         * regcache.c (regcache::regcache): Update.
14743         (regcache::invalidate): Move it to detached_regcache::invalidate.
14744         (get_thread_arch_aspace_regcache): Update.
14745         (regcache::raw_update): Update.
14746         (regcache::cooked_read): Remove some code.
14747         (regcache::cooked_read_value): Likewise.
14748         (regcache::raw_write): Remove assert on m_readonly_p.
14749         (regcache::raw_supply_integer): Move it to
14750         detached_regcache::raw_supply_integer.
14751         (regcache::raw_supply_zeroed): Likewise.
14752         * regcache.h (detached_regcache) <raw_supply_integer>: New
14753         declaration.
14754         <raw_supply_zeroed, invalidate>: Likewise.
14755         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
14756         <invalidate>: Likewise.
14757         <m_readonly_p>: Removed.
14758
14759 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14760
14761         * infcmd.c (get_return_value): Let stop_regs point to
14762         get_current_regcache.
14763         * regcache.c (regcache::regcache): Remove.
14764         (register_dump_reg_buffer): New class.
14765         (regcache_print): Adjust.
14766         * regcache.h (regcache): Remove constructors.
14767
14768 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14769
14770         * regcache.c (class register_dump): New class.
14771         (register_dump_regcache, register_dump_none): New class.
14772         (register_dump_remote, register_dump_groups): New class.
14773         (regcache_print): Update.
14774         * regcache.h (regcache_dump_what): Move it to regcache.c.
14775         (regcache) <dump>: Remove.
14776
14777 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14778
14779         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
14780          reg_buffer_rw *.
14781         (jit_unwind_reg_set_impl): Call raw_supply.
14782         (jit_frame_sniffer): Use reg_buffer_rw.
14783         * record-full.c (record_full_core_regbuf): Change its type.
14784         (record_full_core_open_1): Use reg_buffer_rw.
14785         (record_full_close): Likewise.
14786         (record_full_core_fetch_registers): Use regcache->raw_supply.
14787         (record_full_core_store_registers): Likewise.
14788         * regcache.c (regcache::get_register_status): Move it to
14789         reg_buffer.
14790         (regcache_raw_set_cached_value): Remove.
14791         (regcache::raw_set_cached_value): Remove.
14792         (regcache::raw_write): Call raw_supply.
14793         (regcache::raw_supply): Move it to reg_buffer_rw.
14794         * regcache.h (regcache_raw_set_cached_value): Remove.
14795         (reg_buffer_rw): New class.
14796
14797 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14798
14799         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
14800         readonly_detached_regcache.
14801         (dummy_frame_prev_register): Use regcache->cooked_read.
14802         * frame.c (frame_save_as_regcache): Change return type.
14803         (frame_pop): Update.
14804         * frame.h (frame_save_as_regcache): Update declaration.
14805         * inferior.h (get_infcall_suspend_state_regcache): Update
14806         declaration.
14807         * infrun.c (infcall_suspend_state) <registers>: use
14808         readonly_detached_regcache.
14809         (save_infcall_suspend_state): Don't use regcache_dup.
14810         (get_infcall_suspend_state_regcache): Change return type.
14811         * linux-fork.c (struct fork_info) <savedregs>: Change to
14812         readonly_detached_regcache.
14813         <pc>: New field.
14814         (fork_save_infrun_state): Don't use regcache_dup.
14815         (info_checkpoints_command): Adjust.
14816         * mi/mi-main.c (register_changed_p): Update declaration.
14817         (mi_cmd_data_list_changed_registers): Use
14818         readonly_detached_regcache.
14819         (register_changed_p): Change parameter type to
14820         readonly_detached_regcache.
14821         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
14822         readonly_detached_regcache.
14823         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
14824         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
14825         New.
14826         (regcache::save): Move it to reg_buffer.
14827         (regcache::restore): Change parameter type.
14828         (regcache_dup): Remove.
14829         * regcache.h (reg_buffer) <save>: New method.
14830         (readonly_detached_regcache): New class.
14831         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
14832         readonly_detached_regcache.
14833         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
14834
14835 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14836
14837         * frame.c (frame_save_as_regcache): Use regcache method save.
14838         (frame_pop): Use regcache method restore.
14839         * infrun.c (restore_infcall_suspend_state): Likewise.
14840         * linux-fork.c (fork_load_infrun_state): Likewise.
14841         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
14842         save.
14843         * regcache.c (regcache_save): Remove.
14844         (regcache::restore): More asserts.
14845         (regcache_cpy): Remove.
14846         * regcache.h (regcache_save): Remove the declaration.
14847         (regcache::restore): Move from private to public.
14848         Remove the friend declaration of regcache_cpy.
14849         (regcache_cpy): Remove declaration.
14850
14851 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14852
14853         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
14854         parameter type to 'readable_regcache *'.
14855         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14856         * arm-tdep.c (arm_neon_quad_read): Likewise.
14857         (arm_pseudo_read): Likewise.
14858         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14859         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14860         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14861         * gdbarch.c: Re-generated.
14862         * gdbarch.h: Re-generated.
14863         * gdbarch.sh (pseudo_register_read): Change parameter type to
14864         'readable_regcache *'.
14865         (pseudo_register_read_value): Likewise.
14866         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
14867         (h8300_pseudo_register_read): Likewise.
14868         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
14869         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14870         (i386_pseudo_register_read_into_value): Likewise.
14871         (i386_pseudo_register_read_value): Likewise.
14872         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
14873         declaration.
14874         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
14875         * m32c-tdep.c (m32c_raw_read): Likewise.
14876         (m32c_read_flg): Likewise.
14877         (m32c_banked_register): Likewise.
14878         (m32c_banked_read): Likewise.
14879         (m32c_sb_read): Likewise.
14880         (m32c_part_read): Likewise.
14881         (m32c_cat_read): Likewise.
14882         (m32c_r3r2r1r0_read): Likewise.
14883         (m32c_pseudo_register_read): Likewise.
14884         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14885         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14886         (mep_pseudo_cr64_read): Likewise.
14887         (mep_pseudo_register_read): Likewise.
14888         * mips-tdep.c (mips_pseudo_register_read): Likewise.
14889         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14890         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14891         * regcache.c (regcache::raw_read): Move it to readable_regcache.
14892         (regcache::cooked_read): Likewise.
14893         (regcache::cooked_read_value): Likewise.
14894         (regcache_cooked_read_signed):
14895         (regcache::cooked_read): Likewise.
14896         * regcache.h (readable_regcache): New class.
14897         (regcache): Inherit readable_regcache.  Move some methods to
14898         readable_regcache.
14899         * rl78-tdep.c (rl78_pseudo_register_read): Change
14900         parameter type to 'readable_regcache *'.
14901         * rs6000-tdep.c (do_regcache_raw_read): Remove.
14902         (e500_pseudo_register_read): Change parameter type to
14903         'readable_regcache *'.
14904         (dfp_pseudo_register_read): Likewise.
14905         (vsx_pseudo_register_read): Likewise.
14906         (efpr_pseudo_register_read): Likewise.
14907         * s390-tdep.c (s390_pseudo_register_read): Likewise.
14908         * sh-tdep.c (sh_pseudo_register_read): Likewise.
14909         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
14910         (sh64_pseudo_register_read): Likewise.
14911         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
14912         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14913         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
14914         (spu_pseudo_register_read): Likewise.
14915         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14916         (xtensa_pseudo_register_read): Likewise.
14917
14918 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14919
14920         * regcache.c (regcache::regcache): Call reg_buffer ctor.
14921         (regcache::arch): Move it to reg_buffer::arch.
14922         (regcache::register_buffer): Likewise.
14923         (regcache::assert_regnum): Likewise.
14924         (regcache::num_raw_registers): Likewise.
14925         * regcache.h (reg_buffer): New class.
14926         (regcache): Inherit reg_buffer.
14927
14928 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
14929
14930         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
14931         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
14932
14933 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
14934
14935         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
14936
14937 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
14938
14939         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
14940         (SFILES): Remove common/*.c files.
14941         (COMMON_OBS): Remove some *.o files built from common/*.c files.
14942         * common/common.host: Add common reference.
14943         * configure.ac: Likewise.
14944         * configure: Regenerate.
14945
14946 2018-02-16  Yao Qi  <yao.qi@linaro.org>
14947
14948         * block.c (block_namespace_info): Inherit allocate_on_obstack.
14949         (block_initialize_namespace): Use new.
14950         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
14951         (dwarf2_free_objfile): Use delete.
14952         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
14953         (copy_type_recursive): Use new.
14954         * gdb_obstack.h (allocate_on_obstack): New.
14955
14956 2018-02-15  Yao Qi  <yao.qi@linaro.org>
14957
14958         PR gdb/22849
14959         * inferior.c (exit_inferior_1): Reset inf->control.
14960
14961 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
14962
14963         * ada-lang.c (ada_to_fixed_value_create): Delete advance
14964         declaration.
14965
14966 2018-02-14  Pedro Alves  <palves@redhat.com>
14967
14968         * frame-unwind.c (frame_unwind_try_unwinder): Always call
14969         frame_cleanup_after_sniffer on exception.
14970
14971 2018-02-14  Tom Tromey  <tom@tromey.com>
14972
14973         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
14974         const.
14975         (solib_bfd_open): Make pathname const.
14976         * solib.c (solib_bfd_open): Make pathname const.
14977         * solib-spu.c (spu_bfd_fopen): Make name const.
14978         (spu_bfd_open): Make pathname const.
14979         * solib-darwin.c (darwin_bfd_open): Make pathname const.
14980         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
14981
14982 2018-02-14  Tom Tromey  <tom@tromey.com>
14983
14984         * symfile.c (symfile_bfd_open): Update.
14985         * source.h (openp, source_full_path_of, find_and_open_source):
14986         Change argument type to unique_xmalloc_ptr.
14987         * source.c (openp): Take a unique_xmalloc_ptr.
14988         (source_full_path_of, find_and_open_source): Likewise.
14989         (open_source_file, symtab_to_fullname): Update.
14990         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
14991         unique_xmalloc_ptr.
14992         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
14993         (exec_file_find): Update.
14994         * psymtab.c (psymtab_to_fullname): Update.
14995         * nto-tdep.h (nto_find_and_open_solib): Update.
14996         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
14997         unique_xmalloc_ptr.
14998         * exec.c (exec_file_attach): Update.
14999         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
15000         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
15001
15002 2018-02-14  Tom Tromey  <tom@tromey.com>
15003
15004         * solib.c: Include source.h.
15005         * nto-tdep.c: Include source.h.
15006         * mi/mi-cmd-env.c: Include source.h.
15007         * infcmd.c: Include source.h.
15008         * exec.c: Include source.h.
15009         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
15010         (add_path, directory_switch, source_path, init_source_path): Move
15011         declarations...
15012         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
15013         (add_path, directory_switch, source_path, init_source_path):
15014         ...here.
15015
15016 2018-02-14  Tom Tromey  <tom@tromey.com>
15017
15018         * solist.h (exec_file_find, solib_find): Return
15019         unique_xmalloc_ptr.
15020         (solib_bfd_fopen): Take a const char *.
15021         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
15022         (exec_file_find, solib_find): Likewise.
15023         (solib_bfd_fopen): Do not take ownership of "pathname".
15024         (solib_bfd_open): Use unique_xmalloc_ptr.
15025         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
15026         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
15027         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
15028         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
15029
15030 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
15031
15032         * ada-lang.c (name_match_type_from_name): Remove reference to
15033         ada_name_for_lookup in function's documentation.
15034         * ada-lang.h (ada_name_for_lookup): Delete declaration.
15035
15036 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
15037
15038         * defs.h (enum openp_flags): New enum.
15039         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
15040         Move to enum openp_flags.
15041         (openp_flags): New enum flags.
15042         (openp): Change parameter type to openp_flags.
15043         * source.c (openp): Change parameter type to openp_flags.
15044         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
15045         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
15046
15047 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
15048
15049         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
15050         per-command.
15051
15052 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
15053
15054         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
15055         into...
15056         (class dwarf2_queue_guard): ...the destructor of this new class.
15057         (dw2_do_instantiate_symtab): Create instance of the new class
15058         dwarf2_queue_guard, remove cleanup.
15059
15060 2018-02-09  Tom Tromey  <tom@tromey.com>
15061
15062         * source.c (find_source_lines): Don't reference past the end of
15063         the vector.
15064
15065 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15066
15067         * remote.c (remote_btrace_maybe_reopen): Change error message.
15068         * btrace.c (btrace_enable): Likewise.
15069         (parse_xml_btrace): Likewise.
15070         (parse_xml_btrace_conf): Likewise.
15071
15072 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15073
15074         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
15075         (linux_enable_pt, linux_enable_bts): Call
15076         diagnose_perf_event_open_fail.
15077
15078 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15079
15080         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
15081         Remove parameter and change return type.  Update callers.  Move it.
15082         (linux_enable_bts, linux_enable_pt): Improve error message.
15083         (linux_enable_pt): Remove zero buffer size check.
15084         (linux_enable_btrace): Improve error messages.  Remove NULL return
15085         check.
15086
15087 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15088
15089         * btrace.c (btrace_enable): Remove target_supports_btrace call.
15090         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
15091         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
15092         (linux_supports_pt, linux_supports_btrace): Remove.
15093         (linux_enable_bts): Call cpu_supports_bts.
15094         * nat/linux-btrace.h (linux_supports_btrace): Remove.
15095         * remote.c (remote_supports_btrace): Remove.
15096         (init_remote_ops): Remove remote_supports_btrace.
15097         * target-delegates.c: Regenerated.
15098         * target.c (target_supports_btrace): Remove.
15099         * target.h (target_ops) <to_supports_btrace>: Remove
15100         (target_supports_btrace): Remove.
15101         * x86-linux-nat.c (x86_linux_create_target): Remove
15102         linux_supports_btrace.
15103
15104 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15105
15106         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
15107         btrace failed.
15108         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
15109         exception and use message in own exception.
15110
15111 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15112
15113         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
15114         (perf_event_pt_event_type): Use gdb_file_up.
15115         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
15116         scoped_fd, and scoped_mmap.
15117
15118 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15119
15120         * common/scoped_mmap.h: New.
15121         * unittests/scoped_mmap-selftest.c: New.
15122         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
15123         unittests/scoped_mmap-selftest.c.
15124
15125 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15126
15127         * common/scoped_fd.h: New.
15128         * unittests/scoped_fd-selftest.c: New.
15129         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
15130         unittests/scoped_fd-selftest.c.
15131
15132 2018-02-09  Tom Tromey  <tom@tromey.com>
15133
15134         * auto-load.c (auto_load_section_scripts): Use
15135         gdb::unique_xmalloc_ptr.
15136
15137 2018-02-09  Tom Tromey  <tom@tromey.com>
15138
15139         * auto-load.c (execute_script_contents): Use std::string.
15140
15141 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
15142
15143         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
15144         Python function, rather than a new command.
15145
15146 2018-02-08  Tom Tromey  <tom@tromey.com>
15147
15148         * solib.c (solib_find_1): Use std::string.
15149         (solib_bfd_fopen): Use unique_xmalloc_ptr.
15150
15151 2018-02-08  Tom Tromey  <tom@tromey.com>
15152
15153         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
15154
15155 2018-02-08  Tom Tromey  <tom@tromey.com>
15156
15157         * source.c (find_source_lines): Use gdb::def_vector.
15158
15159 2018-02-08  Tom Tromey  <tom@tromey.com>
15160
15161         * macrocmd.c (struct temporary_macro_definition): New.
15162         (macro_define_command): Use temporary_macro_definition.  Remove
15163         cleanups.
15164         (free_macro_definition_ptr): Remove.
15165
15166 2018-02-08  Tom Tromey  <tom@tromey.com>
15167
15168         * macroexp.c (maybe_expand): Use std::string.
15169
15170 2018-02-08  Tom Tromey  <tom@tromey.com>
15171
15172         * macroexp.c (struct macro_buffer): Add initializers for some
15173         members.
15174         (init_buffer, init_shared_buffer, free_buffer)
15175         (free_buffer_return_text): Remove.
15176         (macro_buffer): New constructors.
15177         (~macro_buffer): New destructor.
15178         (macro_buffer::set_shared): New method.
15179         (macro_buffer::resize_buffer, macro_buffer::appendc)
15180         (macro_buffer::appendmem): Now methods, not free functions.
15181         (set_token, append_tokens_without_splicing, stringify)
15182         (macro_stringify): Update.
15183         (gather_arguments): Change return type.  Remove argc_p argument,
15184         add args_ptr argument.  Use std::vector.
15185         (substitute_args): Remove argc argument.  Accept std::vector.
15186         (expand): Update.  Use std::vector.
15187         (scan, macro_expand, macro_expand_next): Update.
15188
15189 2018-02-08  Tom Tromey  <tom@tromey.com>
15190
15191         * symtab.c (default_collect_symbol_completion_matches_break_on):
15192         Use unique_xmalloc_ptr.
15193         * macroscope.h: (sal_macro_scope, user_macro_scope)
15194         (default_macro_scope): Return unique_xmalloc_ptr.
15195         * macroscope.c (sal_macro_scope, user_macro_scope)
15196         (default_macro_scope): Return unique_xmalloc_ptr.
15197         * macroexp.h (macro_expand, macro_expand_once): Return
15198         unique_xmalloc_ptr.
15199         * macroexp.c (macro_expand, macro_expand_once): Return
15200         unique_xmalloc_ptr.
15201         * macrocmd.c (macro_expand_command, macro_expand_once_command)
15202         (info_macro_command, info_macros_command): Use
15203         unique_xmalloc_ptr.
15204         * compile/compile-c-support.c (write_macro_definitions): Use
15205         unique_xmalloc_ptr.
15206         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
15207
15208 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
15209
15210         * value.c (value_static_field): Assign field type instead of
15211         containing type when returning an optimized out value.
15212
15213 2018-02-06  Yao Qi  <yao.qi@linaro.org>
15214
15215         * ft32-tdep.c (ft32_read_pc): Remove.
15216         (ft32_write_pc): Remove.
15217         (ft32_gdbarch_init): Update.
15218         * m32r-tdep.c (m32r_read_pc): Remove.
15219         (m32r_gdbarch_init): Update.
15220         * mep-tdep.c (mep_read_pc): Remove.
15221         (mep_gdbarch_init): Update.
15222         * microblaze-tdep.c (microblaze_write_pc): Remove.
15223         (microblaze_gdbarch_init): Update.
15224         * mn10300-tdep.c (mn10300_read_pc): Remove.
15225         (mn10300_write_pc): Remove.
15226         (mn10300_gdbarch_init): Update.
15227         * moxie-tdep.c (moxie_read_pc): Remove.
15228         (moxie_write_pc): Remove.
15229         (moxie_gdbarch_init): Update.
15230
15231 2018-02-06  Yao Qi  <yao.qi@linaro.org>
15232
15233         * expprint.c (print_subexp_standard): Handle
15234         OP_F77_UNDETERMINED_ARGLIST.
15235         (dump_subexp_body_standard): Likewise.
15236
15237 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
15238
15239         * target-descriptions.c (tdesc_element_visitor) Add empty
15240         implementations.
15241         (tdesc_type): Move make_gdb_type from here.
15242         (tdesc_type_builtin): Likewise.
15243         (tdesc_type_vector): Likewise.
15244         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
15245         (make_gdb_type_struct): Move from tdesc_type_with_fields.
15246         (make_gdb_type_union): Likewise.
15247         (make_gdb_type_flags): Likewise.
15248         (make_gdb_type_enum): Likewise.
15249         (make_gdb_type): New function.
15250         (tdesc_register_type): Use static make_gdb_type.
15251
15252 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
15253
15254         * infcmd.c (default_print_one_register_info): Align natural-format
15255         column values consistently one under another.
15256         (pad_to_column): New function.
15257
15258 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
15259
15260         * dwarf2read.c (dwarf2_physname): Move commment.
15261
15262 2018-02-01  Leszek Swirski  <leszeks@google.com>
15263
15264         * varobj.c (varobj_formatted_print_options): Allow recursive
15265         pretty printing if pretty printing is enabled.
15266
15267 2018-02-01  Leszek Swirski  <leszeks@google.com>
15268
15269         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
15270         names after a structop as a filename.
15271
15272 2018-02-01  Yao Qi  <yao.qi@linaro.org>
15273
15274         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
15275         (arm_record_coproc_data_proc): Likewise.
15276
15277 2018-02-01  Yao Qi  <yao.qi@linaro.org>
15278
15279         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
15280
15281 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
15282
15283         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
15284         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
15285
15286 2018-01-31  Pedro Alves  <palves@redhat.com>
15287
15288         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
15289         * inflow.c (child_terminal_save_inferior): Wrap reference to
15290         tcgetpgrp in HAVE_TERMIOS_H.
15291         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
15292         _WIN32.
15293         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
15294         always iterate over all inferiors.
15295         (gdbsim_cntrl_c): Adjust.
15296         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
15297
15298 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15299
15300         * gdbtypes.c (lookup_array_range_type): Make sure the array's
15301         index type is objfile-owned if the element type is as well.
15302
15303 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15304
15305         GDB 8.1 released.
15306
15307 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15308
15309         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
15310         "features/s390x-linux64.c".
15311         (_initialize_s390_linux_tdep): Remove initialization of tdescs
15312         s390_linux32 and s390x_linux64.
15313         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
15314         default tdesc.
15315         * s390-tdep.c: Include "features/s390-linux32.c" and
15316         "features/s390x-linux64.c".
15317         (s390_tdesc_valid): Add check for tdesc_has_registers.
15318         (s390_gdbarch_init): Make sure there is always a valid tdesc.
15319         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
15320         tdesc_s390x_linux64.
15321         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
15322         tdesc_s390x_linux64 to...
15323         * s390-tdep.h: ...here.
15324
15325 2018-01-30  Pedro Alves  <palves@redhat.com>
15326
15327         PR gdb/13211
15328         * config.in, configure: Regenerate.
15329         * configure.ac: Check for getpgid.
15330         * go32-nat.c (go32_pass_ctrlc): New.
15331         (go32_target): Install it.
15332         * inf-child.c (inf_child_target): Install
15333         child_terminal_save_inferior, child_pass_ctrlc and
15334         child_interrupt.
15335         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
15336         (inf_ptrace_target): No longer install it.
15337         * infcmd.c (interrupt_target_1): Adjust.
15338         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
15339         (child_interrupt): Declare.
15340         (inferior::terminal_state): New.
15341         * inflow.c (struct terminal_info): Update comments.
15342         (inferior_process_group): Delete.
15343         (terminal_is_ours): Delete.
15344         (gdb_tty_state): New.
15345         (child_terminal_init): Adjust.
15346         (is_gdb_terminal, sharing_input_terminal_1)
15347         (sharing_input_terminal): New functions.
15348         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
15349         Set the process's actual process group in the foreground if
15350         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
15351         mark terminal as the inferior's if not sharing GDB's terminal.
15352         Don't check attach_flag.
15353         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
15354         pass down a target_terminal_state.
15355         (child_terminal_save_inferior): New, factored out from ...
15356         (child_terminal_ours_1): ... this.  Handle
15357         target_terminal_state::is_ours_for_output.
15358         (child_interrupt, child_pass_ctrlc): New.
15359         (inflow_inferior_exit): Clear the inferior's terminal_state.
15360         (copy_terminal_info): Copy the inferior's terminal state.
15361         (_initialize_inflow): Remove reference to terminal_is_ours.
15362         * inflow.h (inferior_process_group): Delete.
15363         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
15364         * procfs.c (procfs_target): Don't install procfs_interrupt.
15365         (procfs_interrupt): Delete.
15366         * remote.c (remote_serial_quit_handler): Adjust.
15367         (remote_interrupt): Remove ptid parameter.  Adjust.
15368         * target-delegates.c: Regenerate.
15369         * target.c: Include "terminal.h".
15370         (target_terminal::terminal_state): Rename to ...
15371         (target_terminal::m_terminal_state): ... this.
15372         (target_terminal::init): Adjust.
15373         (target_terminal::inferior): Adjust to per-inferior
15374         terminal_state.
15375         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
15376         (target_terminal::ours, target_terminal::ours_for_output): Use
15377         target_terminal_is_ours_kind.
15378         (target_interrupt): Remove ptid parameter.  Adjust.
15379         (default_target_pass_ctrlc): Adjust.
15380         * target.h (target_ops::to_terminal_save_inferior): New field.
15381         (target_ops::to_interrupt): Remove ptid_t parameter.
15382         (target_interrupt): Remove ptid_t parameter.  Update comment.
15383         (target_pass_ctrlc): Update comment.
15384         * target/target.h (target_terminal_state): New scoped enum,
15385         factored out of ...
15386         (target_terminal::terminal_state): ... here.
15387         (target_terminal::inferior): Update comments.
15388         (target_terminal::restore_inferior): New.
15389         (target_terminal::is_inferior, target_terminal::is_ours)
15390         (target_terminal::is_ours_for_output): Adjust.
15391         (target_terminal::scoped_restore_terminal_state): Adjust to
15392         rename, and call restore_inferior() instead of inferior().
15393         (target_terminal::scoped_restore_terminal_state::m_state): Change
15394         type.
15395         (target_terminal::terminal_state): Rename to ...
15396         (target_terminal::m_terminal_state): ... this and change type.
15397
15398 2018-01-30  Pedro Alves  <palves@redhat.com>
15399
15400         * linux-nat.c (wait_for_signal): New function.
15401         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
15402         directly.
15403         (async_terminal_is_ours)
15404         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
15405         (linux_nat_add_target): Don't override
15406         to_terminal_inferior/to_terminal_ours.
15407
15408 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
15409
15410         * remote.c (remote_follow_fork): Don't call "detach_inferior".
15411
15412 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
15413
15414         * dwarf2read.c (free_dwo_files): Add forward-declaration.
15415         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
15416         dwarf2_per_objfile_free here.
15417         (dwarf2_per_objfile_free): Remove.
15418         (_initialize_dwarf2_read): Don't register
15419         dwarf2_per_objfile_free as a registry cleanup.
15420
15421 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
15422
15423         Avoid compilation errors in MinGW native builds
15424
15425         The error is triggered by including python-internal.h, and the
15426         error message is:
15427
15428              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
15429                       from build-gnulib/import/math.h:27,
15430                       from d:/usr/Python26/include/pyport.h:235,
15431                       from d:/usr/Python26/include/Python.h:58,
15432                       from python/python-internal.h:94,
15433                       from python/py-arch.c:24:
15434              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
15435         using ::hypot;
15436                 ^~~~~
15437
15438         This happens because Python headers define 'hypot' to expand t
15439         '_hypot' in the Windows builds.
15440         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
15441         'hypoth'.  This avoids a compilation error.
15442
15443 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15444
15445         * MAINTAINERS (Write After Approval): Fix ordering.
15446
15447 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15448
15449         * MAINTAINERS (Write After Approval): Add Alan Hayward.
15450
15451 2018-01-26  Alan Modra  <amodra@gmail.com>
15452
15453         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
15454         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
15455         Remove nop.  Make const.  Comment.
15456         (powerpc32_plt_stub_so_2): New.
15457         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
15458         Correct count.  Update uses.
15459         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
15460         Move common code reading PLT entry word.  Correct
15461         powerpc32_plt_stub PLT address calculation.
15462         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
15463         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
15464         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
15465         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
15466         (ppc64_standard_linkage8): Likewise.
15467         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
15468         Correct insns description.
15469         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
15470
15471 2018-01-24  Pedro Alves  <palves@redhat.com>
15472
15473         GCC PR libstdc++/83906
15474         * gdbtypes.c (operator==(const dynamic_prop &,
15475         const dynamic_prop &)): New.
15476         (operator==(const range_bounds &, const range_bounds &)): New.
15477         (check_types_equal): Use them instead of memcmp.
15478         * gdbtypes.h (operator==(const dynamic_prop &,
15479         const dynamic_prop &)): Declare.
15480         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
15481         (operator==(const range_bounds &, const range_bounds &)): Declare.
15482         (operator!=(const range_bounds &, const range_bounds &)): Declare.
15483
15484 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15485
15486         * s390-linux-tdep.c (s390_record_address_mask)
15487         (s390_record_calc_disp_common, s390_record_calc_disp)
15488         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15489         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15490         (s390_process_record): Move to s390-tdep.c.
15491         (s390_linux_init_abi_any): Adjust.
15492         * s390-tdep.c (s390_record_address_mask)
15493         (s390_record_calc_disp_common, s390_record_calc_disp)
15494         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15495         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15496         (s390_process_record): Moved from s390-linux-tdep.c
15497         (s390_gdbarch_init): Adjust.
15498
15499 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15500
15501         * s390-linux-nat.c (s390-tdep.h): New include.
15502         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
15503         (HFILES_NO_SRCDIR): Add s390-tdep.h.
15504         (ALLDEPFILES): Add s390-tdep.c.
15505         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
15506         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
15507         * s390-tdep.h: ...this.  New file.
15508         * s390-linux-tdep.c (s390-tdep.h): New include.
15509         (_initialize_s390_tdep): Rename to...
15510         (_initialize_s390_linux_tdep): ...this and adjust.
15511         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
15512         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
15513         s390-tdep.h.
15514         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
15515         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
15516         (s390_is_partial_instruction, s390_software_single_step)
15517         (is_non_branch_ril, s390_displaced_step_copy_insn)
15518         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
15519         (s390_prologue_data, s390_addr, s390_store, s390_load)
15520         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
15521         (s390_register_call_saved, s390_guess_tracepoint_registers)
15522         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
15523         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
15524         (s390_pseudo_register_name, s390_pseudo_register_type)
15525         (s390_pseudo_register_read, s390_pseudo_register_write)
15526         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
15527         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
15528         (s390_addr_bits_remove, s390_address_class_type_flags)
15529         (s390_address_class_type_flags_to_name)
15530         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
15531         (s390_function_arg_float, s390_function_arg_vector)
15532         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
15533         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
15534         (s390_frame_align, s390_register_return_value, s390_return_value)
15535         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
15536         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
15537         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
15538         (s390_trad_frame_prev_register, s390_unwind_cache)
15539         (s390_prologue_frame_unwind_cache)
15540         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
15541         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
15542         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
15543         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
15544         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
15545         (s390_frame_base_address, s390_local_base_address)
15546         (s390_frame_base, s390_gcc_target_options)
15547         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
15548         (s390_validate_reg_range, s390_tdesc_valid)
15549         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
15550         * s390-tdep.c: ...this.  New file.
15551
15552 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15553
15554         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
15555         (s390_process_record, s390_gdbarch_tdep_alloc)
15556         (s390_linux_init_abi_any): Use/set new hook.
15557
15558 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15559
15560         * s390-linux-tdep.c (osabi.h): New include.
15561         (s390_linux_init_abi_31, s390_linux_init_abi_64)
15562         (s390_linux_init_abi_any): New functions.
15563         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
15564
15565 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15566
15567         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
15568         tdesc_has_registers check
15569
15570 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15571
15572         * s390-linux-tdep.c (s390_tdesc_valid): New function.
15573         (s390_validate_reg_range): New macro.
15574         (s390_gdbarch_init): Adjust.
15575
15576 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15577
15578         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
15579         (s390_gdbarch_tdep_alloc): Adjust.
15580         (s390_gdbarch_init): Adjust.
15581
15582 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15583
15584         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
15585         <have_tdb>: Change type to bool.
15586         (s390_gdbarch_tdep_alloc): Adjust.
15587         (s390_gdbarch_init): Adjust.
15588
15589 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15590
15591         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
15592         (gdbarch_tdep) <have_upper, have_vx>: New fields.
15593         (s390_gdbarch_tdep_alloc): New function.
15594         (s390_gdbarch_init): Allocate tdep at start and use its fields
15595         instead of separate variables.
15596
15597 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15598
15599         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
15600         when looking for cached gdbarch and add comment for remaining.
15601
15602 2018-01-22  Pedro Alves  <palves@redhat.com>
15603             Sergio Durigan Junior  <sergiodj@redhat.com>
15604
15605         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
15606         case.
15607
15608 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
15609
15610         * MAINTAINERS: Update my company e-mail address.
15611
15612 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15613
15614         * regcache.c (cooked_write_test): New function.
15615         (_initialize_regcache): Register the test.
15616
15617 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15618
15619         * ia64-tdep.c (ia64_pseudo_register_read): Call
15620         regcache->cooked_read instead of regcache_cooked_read_unsigned.
15621         * m32c-tdep.c (m32c_cat_read): Likewise.
15622         (m32c_r3r2r1r0_read): Likewise.
15623         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
15624         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
15625
15626 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15627
15628         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
15629         method raw_read instead of regcache_raw_read.
15630         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
15631         * arm-tdep.c (arm_neon_quad_read): Likewise.
15632         * avr-tdep.c (avr_pseudo_register_read): Likewise.
15633         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
15634         * frv-tdep.c (frv_pseudo_register_read): Likewise.
15635         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
15636         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
15637         (i386_pseudo_register_read_into_value): Likewise.
15638         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
15639         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
15640         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
15641         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
15642         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
15643         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
15644         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
15645         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
15646         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
15647
15648 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15649
15650         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
15651         * configure.tgt: Remove target mt.
15652         * mt-tdep.c: Remove.
15653         * regcache.c (cooked_read_test): Remove the check for mt.
15654
15655 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15656
15657         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
15658         instead of gdbarch_pseudo_register_read_value.
15659
15660 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15661
15662         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
15663         language is Ada.
15664
15665 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15666
15667         * linespec.c (create_sals_line_offset): Remove code that preserved
15668         the symtab_and_line's line number.
15669
15670 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15671
15672         * varobj.c (varobj_create): Don't set valid_block when creating a
15673         floating varobj.
15674
15675 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15676
15677         * varobj.c (varobj_create): Remove out of date comment.
15678
15679 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15680
15681         PR mi/20395
15682         * ada-exp.y (write_var_from_sym): Pass extra parameter when
15683         updating innermost block.
15684         * parse.c (innermost_block_tracker::update): Take extra type
15685         parameter, and check types match before updating innermost block.
15686         (write_dollar_variable): Update innermost block for registers.
15687         * parser-defs.h (enum innermost_block_tracker_type): New enum.
15688         (innermost_block_tracker::innermost_block_tracker): Initialise
15689         m_types member.
15690         (innermost_block_tracker::reset): Take type parameter.
15691         (innermost_block_tracker::update): Take type parameter, and pass
15692         type through as needed.
15693         (innermost_block_tracker::m_types): New member.
15694         * varobj.c (varobj_create): Pass type when reseting innermost
15695         block.
15696
15697 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15698
15699         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
15700         * ada-lang.c (resolve_subexp): Likewise.
15701         * breakpoint.c (set_breakpoint_condition) Likewise.
15702         (watch_command_1) Likewise.
15703         * c-exp.y (variable): Likewise.
15704         * d-exp.y (PrimaryExpression): Likewise.
15705         * f-exp.y (variable): Likewise.
15706         * go-exp.y (variable): Likewise.
15707         * m2-exp.y (variable): Likewise.
15708         * objfiles.c (objfile::~objfile): Likewise.
15709         * p-exp.y (variable): Likewise.
15710         * parse.c (innermost_block): Change type.
15711         * parser-defs.h (class innermost_block_tracker): New.
15712         (innermost_block): Change to innermost_block_tracker.
15713         * printcmd.c (display_command): Switch to innermost_block API.
15714         (do_one_display): Likewise.
15715         * rust-exp.y (do_one_display): Likewise.
15716         * symfile.c (clear_symtab_users): Likewise.
15717         * varobj.c (varobj_create): Switch to innermost_block API, replace
15718         use of innermost_block with block stored on varobj object.
15719
15720 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15721
15722         * expression.h (innermost_block): Remove declaration.
15723         * varobj.c: Add 'parser-defs.h' include.
15724
15725 2018-01-19  Tom Tromey  <tom@tromey.com>
15726
15727         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
15728         symbols in the static and global blocks.
15729
15730 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
15731
15732         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
15733         gdb_ptrace.h, and move including gdb_wait.h ...
15734         * nat/linux-ptrace.h: ... to here.
15735
15736 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15737
15738         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
15739         inf_ptrace_detach_success.
15740         (inf_ptrace_detach_success): Add inferior parameter, use it
15741         instead of inferior_ptid, pass it to detach_inferior.
15742         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
15743         parameter.
15744         * inferior.c (detach_inferior): Add overload that takes an
15745         inferior object.
15746         * inferior.h (detach_inferior): Likewise.
15747         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
15748         use inferior_ptid, adjust call to inf_ptrace_detach_success.
15749         * linux-thread-db.c (thread_db_detach): Use inf parameter.
15750
15751 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15752
15753         * target.h (struct target_ops) <to_detach>: Add inferior
15754         parameter.
15755         (target_detach): Likewise.
15756         * target.c (dispose_inferior): Pass inferior down.
15757         (target_detach): Pass inferior down.  Assert that it is equal to
15758         the current inferior.
15759         * aix-thread.c (aix_thread_detach): Pass inferior down.
15760         * corefile.c (core_file_command): Pass current_inferior() down.
15761         * corelow.c (core_detach): Add inferior parameter.
15762         * darwin-nat.c (darwin_detach): Likewise.
15763         * gnu-nat.c (gnu_detach): Likewise.
15764         * inf-ptrace.c (inf_ptrace_detach): Likewise.
15765         * infcmd.c (detach_command): Pass current_inferior() down to
15766         target_detach.
15767         * infrun.c (follow_fork_inferior): Pass parent_inf to
15768         target_detach.
15769         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
15770         target_detach.
15771         * linux-nat.c (linux_nat_detach): Add inferior parameter.
15772         * linux-thread-db.c (thread_db_detach): Likewise.
15773         * nto-procfs.c (procfs_detach): Likewise.
15774         * procfs.c (procfs_detach): Likewise.
15775         * record.c (record_detach): Likewise.
15776         * record.h (struct inferior): Forward-declare.
15777         (record_detach): Add inferior parameter.
15778         * remote-sim.c (gdbsim_detach): Likewise.
15779         * remote.c (remote_detach_1): Likewise.
15780         (remote_detach): Likewise.
15781         (extended_remote_detach): Likewise.
15782         * sol-thread.c (sol_thread_detach): Likewise.
15783         * target-debug.h (target_debug_print_inferior_p): New macro.
15784         * target-delegates.c: Re-generate.
15785         * top.c (kill_or_detach): Pass inferior down to target_detach.
15786         * windows-nat.c (windows_detach): Add inferior parameter.
15787
15788 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15789
15790         * target.h (struct target_ops) <to_detach>: Remove args
15791         parameter.
15792         (target_detach): Likewise.
15793         * target.c (dispose_inferior): Adjust.
15794         (target_detach): Remove args parameter, adjust.
15795         * aix-thread.c (aix_thread_detach): Adjust.
15796         * corefile.c (core_file_command): Adjust.
15797         * corelow.c (core_detach): Adjust.
15798         * darwin-nat.c (darwin_detach): Adjust.
15799         * gnu-nat.c (gnu_detach): Adjust.
15800         * inf-ptrace.c (inf_ptrace_detach): Adjust.
15801         * infcmd.c (detach_command): Adjust
15802         * infrun.c (follow_fork_inferior): Adjust.
15803         (handle_vfork_child_exec_or_exit): Adjust.
15804         * linux-fork.c (linux_fork_detach): Remove args parameter.
15805         * linux-fork.h (linux_fork_detach): Likewise.
15806         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
15807         * linux-thread-db.c (thread_db_detach): Likewise.
15808         * nto-procfs.c (procfs_detach): Likewise.
15809         * procfs.c (procfs_detach): Likewise.
15810         (do_detach): Remove signo parameter.
15811         * record.c (record_detach): Remove args parameter.
15812         * record.h (record_detach): Likewise.
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-delegates.c: Re-generate.
15819         * top.c (struct qt_args) <args>: Remove field.
15820         (kill_or_detach): Don't pass args.
15821         (quit_force): Don't set args.
15822         * windows-nat.c (windows_detach): Remove args parameter.
15823
15824 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15825
15826         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
15827         (arm_linux_init_abi): Install it.
15828
15829 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15830
15831         * osabi.c (gdb_osabi_names): Extend the regexp for
15832         arm-linux-gnueabihf.
15833
15834 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15835
15836         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
15837         m_abbrevs.
15838         (abbrev_table::add_abbrev): Update.
15839         (abbrev_table::lookup_abbrev): Update.
15840
15841 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15842
15843         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
15844
15845 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
15846
15847         * compile/compile.c (compile_to_object): Convert "triplet_rx"
15848         to "std::string".
15849
15850 2018-01-17  Tom Tromey  <tom@tromey.com>
15851
15852         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
15853
15854 2018-01-17  Tom Tromey  <tom@tromey.com>
15855
15856         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
15857         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
15858         (create_array_type_with_stride): Update.
15859         * dwarf2read.c (set_die_type): Update.
15860
15861 2018-01-17  Tom Tromey  <tom@tromey.com>
15862
15863         * dwarf2read.c (delayed_method_info): Remove typedef.
15864         (dwarf2_cu::method_info): Now a std::vector.
15865         (add_to_method_list): Update.
15866         (free_delayed_list): Remove.
15867         (compute_delayed_physnames): Update.
15868         (process_full_comp_unit, process_full_type_unit): Clear the method
15869         list.  Remove cleanups.
15870         (psymtab_include_file_name): Add name_holder parameter.  Use
15871         unique_xmalloc_ptr.
15872         (dwarf_decode_lines): Update.
15873
15874 2018-01-17  Tom Tromey  <tom@tromey.com>
15875             Simon Marchi  <simon.marchi@ericsson.com>
15876
15877         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
15878         (dwarf2_per_objfile::free_cached_comp_units)
15879         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15880         (init_cutu_and_read_dies_no_follow): Update.
15881         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
15882         (dwarf2_cu::~dwarf2_cu): New.
15883         (free_heap_comp_unit, free_stack_comp_unit): Remove.
15884         (age_cached_comp_units, free_one_cached_comp_unit): Update.
15885
15886 2018-01-17  Tom Tromey  <tom@tromey.com>
15887             Simon Marchi  <simon.marchi@ericsson.com>
15888
15889         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
15890         (struct die_reader_specs) <abbrev_table>: New member.
15891         (struct abbrev_table): Add constructor.
15892         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
15893         <abbrev_obstack>: Now an auto_obstack.
15894         (abbrev_table_up): New typedef.
15895         (init_cu_die_reader): Add abbrev_table parameter.
15896         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
15897         Add result_dwo_abbrev_table.
15898         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15899         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
15900         Update.
15901         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
15902         parameter.
15903         (skip_children): Update.
15904         (abbrev_table::alloc_abbrev): Rename from
15905         abbrev_table_alloc_abbrev.
15906         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
15907         (abbrev_table::lookup_abbrev): Rename from
15908         abbrev_table_lookup_abbrev.
15909         (abbrev_table_read_table): Return abbrev_table_up.
15910         (abbrev_table_free, abbrev_table_free_cleanup)
15911         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
15912         (load_partial_dies): Update.
15913
15914 2018-01-17  Tom Tromey  <tom@tromey.com>
15915
15916         * dwarf2read.c (dwarf2_compute_name): Update comment.
15917         (read_func_scope, read_variable): Update.
15918         (new_symbol): Remove.
15919         (new_symbol_full): Rename to new_symbol.
15920
15921 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
15922
15923         PR gdb/16577
15924         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
15925         a warning instead of throwing an error, set section size to 0 and return
15926         NULL.
15927         * gdb_bfd.h (gdb_bfd_map_section): Update description.
15928
15929 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15930
15931         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
15932         std::string.
15933         (linux_ptrace_attach_fail_reason_string): Likewise.
15934         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
15935         Likewise.
15936         (linux_ptrace_attach_fail_reason_string): Likewise.
15937         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
15938
15939 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15940
15941         * linux-nat.c (linux_nat_attach): Remove xstrdup.
15942
15943 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
15944
15945         PR gdb/21559
15946         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
15947         checking for fs_base/gs_base fields in struct user_regs_struct.
15948         * configure: Regenerate.
15949
15950 2018-01-17  Yao Qi  <yao.qi@linaro.org>
15951
15952         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
15953         function.
15954         (aarch64_linux_init_abi): Install it to gdbarch hook
15955         gcc_target_options.
15956
15957 2018-01-15  Pedro Alves  <palves@redhat.com>
15958
15959         * common/signals-state-save-restore.c
15960         (save_original_signals_state): Fix typos.
15961
15962 2017-01-12  Tom Tromey  <tom@tromey.com>
15963             Sergio Durigan Junior  <sergiodj@redhat.com>
15964
15965         * Makefile.in (install-only): Install gdb-add-index.
15966
15967 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
15968
15969         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
15970
15971 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
15972
15973         * infrun.c (keep_going_pass_signal): Clear step-over info when
15974         insert_breakpoints fails.
15975
15976 2018-01-11  Pedro Alves  <palves@redhat.com>
15977
15978         PR gdb/22583
15979         * infrun.c (resume): Rename to ...
15980         (resume_1): ... this.
15981         (resume): Reimplement as wrapper around resume_1.
15982
15983 2018-01-11  Pedro Alves  <palves@redhat.com>
15984
15985         PR remote/22597
15986         * remote.c (remote_parse_stop_reply): Default to the last-set
15987         general thread instead of to 'magic_null_ptid'.
15988
15989 2018-01-10  Pedro Alves  <palves@redhat.com>
15990
15991         * language.h (language_get_symbol_name_matcher): Rename ...
15992         (get_symbol_name_matcher): ... this.
15993         * language.c (language_get_symbol_name_matcher): Ditto.
15994         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
15995         callers adjusted.
15996
15997 2018-01-10  Pedro Alves  <palves@redhat.com>
15998
15999         PR gdb/22670
16000         * dwarf2read.c
16001         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
16002         Adjust to use language_get_symbol_name_matcher instead of
16003         language_defn::la_get_symbol_name_matcher.
16004         * language.c (language_get_symbol_name_matcher): If in Ada mode
16005         and the lookup name is a verbatim match, return Ada's matcher.
16006         * language.h (language_get_symbol_name_matcher): Adjust comment.
16007         (ada_lookup_name_info::verbatim_p):: New method.
16008
16009 2018-01-10  Pedro Alves  <palves@redhat.com>
16010
16011         PR gdb/22670
16012         * ada-lang.c (ada_collect_symbol_completion_matches): If the
16013         minsym's language is language_auto or language_cplus, pass down
16014         language_ada instead.
16015         * symtab.c (compare_symbol_name): Don't frob symbol language here.
16016
16017 2018-01-10  Pedro Alves  <palves@redhat.com>
16018
16019         PR gdb/22670
16020         * minsyms.c (linkage_name_str): New function.
16021         (iterate_over_minimal_symbols): Use it.
16022
16023 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16024
16025         * NEWS: Document that 'info proc' now works on FreeBSD.
16026
16027 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16028
16029         * configure.ac: Check for kinfo_getfile in libutil.
16030         * configure: Regenerate.
16031         * config.in: Regenerate.
16032         * fbsd-nat.c: Include "fbsd-tdep.h".
16033         (fbsd_fetch_cmdline): New.
16034         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
16035         rather than calling error.
16036         (fbsd_info_proc): New.
16037         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
16038         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
16039         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
16040
16041 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16042
16043         * fbsd-nat.c (struct free_deleter): Remove.
16044         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
16045
16046 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16047
16048         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
16049         NULL for an empty pathname.
16050
16051 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16052
16053         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
16054         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
16055         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
16056         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
16057         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
16058         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
16059         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
16060         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
16061         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
16062         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
16063         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
16064         (fbsd_core_fetch_timeval, fbsd_print_sigset)
16065         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
16066         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
16067         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
16068
16069 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
16070
16071         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
16072         (gnu_xfer_auxv): New function.
16073         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
16074         TARGET_OBJECT_AUXV.
16075
16076 2018-01-08  Yao Qi  <yao.qi@linaro.org>
16077             Simon Marchi  <simon.marchi@ericsson.com>
16078
16079         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
16080         common/selftest.c.
16081         (COMMON_OBS): Remove selftest.o.
16082         * configure.ac: Append selftest-arch.c and common/selftest.c to
16083         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
16084         * configure: Re-generated.
16085         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
16086         GDB_SELF_TEST.
16087         (maintenance_info_selftests): Likewise.
16088
16089 2018-01-08  Xavier Roirand  <roirand@adacore.com>
16090
16091         * ada-valprint.c (val_print_packed_array_elements): Use
16092         proper number of elements when printing an array indexed
16093         by an enumeration type.
16094
16095 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16096
16097         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
16098         (dw2_get_file_names_reader): Adjust.
16099         (lookup_dwo_signatured_type): Adjust.
16100         (lookup_dwp_signatured_type): Adjust.
16101         (lookup_signatured_type): Adjust.
16102         (create_type_unit_group): Adjust.
16103         (get_type_unit_group): Adjust.
16104         (process_psymtab_comp_unit_reader): Adjust.
16105         (build_type_psymtabs_reader): Adjust.
16106         (scan_partial_symbols): Adjust.
16107         (add_partial_symbol): Adjust.
16108         (add_partial_subprogram): Adjust.
16109         (peek_die_abbrev): Adjust.
16110         (fixup_go_packaging): Adjust.
16111         (process_imported_unit_die): Adjust.
16112         (dwarf2_compute_name): Adjust.
16113         (dwarf2_physname): Adjust.
16114         (read_import_statement): Adjust.
16115         (handle_DW_AT_stmt_list): Adjust.
16116         (read_file_scope): Adjust.
16117         (read_func_scope): Adjust.
16118         (read_lexical_block_scope): Adjust.
16119         (read_call_site_scope): Adjust.
16120         (read_variable): Adjust.
16121         (dwarf2_rnglists_process): Adjust.
16122         (dwarf2_ranges_process): Adjust.
16123         (dwarf2_ranges_read): Adjust.
16124         (dwarf2_get_pc_bounds): Adjust.
16125         (dwarf2_record_block_ranges): Adjust.
16126         (dwarf2_add_field): Adjust.
16127         (dwarf2_add_member_fn): Adjust.
16128         (read_structure_type): Adjust.
16129         (process_structure_scope): Adjust.
16130         (read_enumeration_type): Adjust.
16131         (read_array_type): Adjust.
16132         (mark_common_block_symbol_computed): Adjust.
16133         (read_common_block): Adjust.
16134         (read_namespace_type): Adjust.
16135         (read_namespace): Adjust.
16136         (read_module_type): Adjust.
16137         (read_tag_pointer_type): Adjust.
16138         (read_tag_ptr_to_member_type): Adjust.
16139         (read_tag_string_type): Adjust.
16140         (read_subroutine_type): Adjust.
16141         (read_typedef): Adjust.
16142         (read_base_type): Adjust.
16143         (attr_to_dynamic_prop): Adjust.
16144         (read_subrange_type): Adjust.
16145         (read_unspecified_type): Adjust.
16146         (dwarf2_read_abbrevs): Adjust.
16147         (load_partial_dies): Adjust.
16148         (read_partial_die): Adjust.
16149         (find_partial_die): Adjust.
16150         (guess_partial_die_structure_name): Adjust.
16151         (fixup_partial_die): Adjust.
16152         (read_attribute_value): Adjust.
16153         (read_addr_index): Adjust.
16154         (read_addr_index_from_leb128): Adjust.
16155         (read_str_index): Adjust.
16156         (dwarf2_string_attr): Adjust.
16157         (get_debug_line_section): Adjust.
16158         (dwarf_decode_line_header): Adjust.
16159         (lnp_state_machine::check_line_address): Adjust.
16160         (dwarf_decode_lines_1): Adjust.
16161         (dwarf_decode_lines): Adjust.
16162         (dwarf2_start_symtab): Adjust.
16163         (var_decode_location): Adjust.
16164         (new_symbol_full): Adjust.
16165         (dwarf2_const_value_data): Adjust.
16166         (dwarf2_const_value_attr): Adjust.
16167         (dwarf2_const_value): Adjust.
16168         (die_type): Adjust.
16169         (die_containing_type): Adjust.
16170         (build_error_marker_type): Adjust.
16171         (lookup_die_type): Adjust.
16172         (guess_full_die_structure_name): Adjust.
16173         (anonymous_struct_prefix): Adjust.
16174         (determine_prefix): Adjust.
16175         (dwarf2_name): Adjust.
16176         (follow_die_ref_or_sig): Adjust.
16177         (follow_die_offset): Adjust.
16178         (follow_die_ref): Adjust.
16179         (follow_die_sig_1): Adjust.
16180         (follow_die_sig): Adjust.
16181         (get_signatured_type): Adjust.
16182         (get_DW_AT_signature_type): Adjust.
16183         (decode_locdesc): Adjust.
16184         (dwarf_decode_macros): Adjust.
16185         (cu_debug_loc_section): Adjust.
16186         (fill_in_loclist_baton): Adjust.
16187         (dwarf2_symbol_mark_computed): Adjust.
16188         (init_one_comp_unit): Don't assign
16189         dwarf2_cu::dwarf2_per_objfile.
16190         (set_die_type): Adjust.
16191
16192 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16193
16194         * dwarf2read.c (struct mapped_debug_names): Add constructor.
16195         <dwarf2_per_objfile>: New field.
16196         (dwarf2_per_objfile): Remove global.
16197         (get_dwarf2_per_objfile): New function.
16198         (set_dwarf2_per_objfile): New function.
16199         (dwarf2_build_psymtabs_hard): Change objfile parameter to
16200         dwarf2_per_objfile.
16201         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16202         (read_abbrev_offset): Likewise.
16203         (read_indirect_string): Likewise.
16204         (read_indirect_line_string): Likewise.
16205         (read_indirect_string_at_offset): Likewise.
16206         (read_indirect_string_from_dwz): Likewise.
16207         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16208         dwarf2_per_objfile.
16209         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16210         (create_all_comp_units): Change objfile parameter to
16211         dwarf2_per_objfile.
16212         (create_all_type_units): Likewise.
16213         (process_queue): Add dwarf2_per_objfile parameter.
16214         (read_and_check_comp_unit_head): Likewise.
16215         (lookup_dwo_unit_in_dwp): Likewise.
16216         (get_dwp_file): Likewise.
16217         (process_cu_includes): Likewise.
16218         (struct free_dwo_file_cleanup_data): New struct.
16219         (dwarf2_has_info): Use get_dwarf2_per_objfile and
16220         set_dwarf2_per_objfile.
16221         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
16222         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
16223         context, adjust calls.
16224         (dw2_instantiate_symtab): Likewise.
16225         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
16226         (dw2_get_cu): Likewise.
16227         (create_cu_from_index_list): Change objfile parameter to
16228         dwarf2_per_objfile.
16229         (create_cus_from_index_list): Get dwarf2_per_objfile from
16230         context, adjust calls.
16231         (create_cus_from_index): Likewise.
16232         (create_signatured_type_table_from_index): Change objfile
16233         parameter to dwarf2_per_objfile.
16234         (create_signatured_type_table_from_debug_names): Change objfile
16235         parameter to dwarf2_per_objfile.
16236         (create_addrmap_from_index): Likewise.
16237         (create_addrmap_from_aranges): Likewise.
16238         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
16239         (dw2_setup): Remove.
16240         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
16241         context.
16242         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
16243         get_dwarf2_per_objfile.
16244         (dw2_forget_cached_source_info): Likewise.
16245         (dw2_map_symtabs_matching_filename): Likewise.
16246         (struct dw2_symtab_iterator) <index>: Remove.
16247         <dwarf2_per_objfile>: New field.
16248         (dw2_symtab_iter_init): Replace index parameter with
16249         dwarf2_per_objfile.
16250         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
16251         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
16252         (dw2_print_stats): Likewise.
16253         (dw2_dump): Likewise.
16254         (dw2_expand_symtabs_for_function): Likewise.
16255         (dw2_expand_all_symtabs): Likewise.
16256         (dw2_expand_symtabs_with_fullname): Likewise.
16257         (dw2_expand_marked_cus): Replace index and objfile parameters
16258         with dwarf2_per_objfile.
16259         (dw_expand_symtabs_matching_file_matcher): Add
16260         dwarf2_per_objfile parameter and adjust calls.
16261         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
16262         adjust calls.
16263         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
16264         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
16265         adjust calls.
16266         (create_cus_from_debug_names_list): Replace objfile parameter
16267         with dwarf2_per_objfile and adjust calls.
16268         (create_cus_from_debug_names): Likewise.
16269         (dwarf2_read_debug_names): Likewise.
16270         (mapped_debug_names::namei_to_name): Adjust call.
16271         (dw2_debug_names_iterator::next): Likewise.
16272         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
16273         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
16274         (dw2_debug_names_dump): Likewise.
16275         (dw2_debug_names_expand_symtabs_for_function): Likewise.
16276         (dw2_debug_names_expand_symtabs_matching): Likewise.
16277         (dwarf2_initialize_objfile): Likewise.
16278         (dwarf2_build_psymtabs): Likewise.
16279         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
16280         this_cu.
16281         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
16282         (read_and_check_comp_unit_head): Likewise.
16283         (read_abbrev_offset): Likewise.
16284         (create_debug_type_hash_table): Likewise.
16285         (create_debug_types_hash_table): Likewise.
16286         (create_all_type_units): Replace objfile parameter with
16287         dwarf2_per_objfile.
16288         (add_type_unit): Add dwarf2_per_objfile parameter.
16289         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
16290         with dwarf2_per_objfile.
16291         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
16292         (lookup_dwp_signatured_type): Likewise.
16293         (lookup_signatured_type): Likewise.
16294         (read_cutu_die_from_dwo): Likewise.
16295         (init_tu_and_read_dwo_dies): Likewise.
16296         (init_cutu_and_read_dies): Likewise.
16297         (init_cutu_and_read_dies_no_follow): Likewise.
16298         (allocate_type_unit_groups_table): Add objfile parameter.
16299         (create_type_unit_group): Use dwarf2_per_objfile from cu.
16300         (get_type_unit_group): Likewise.
16301         (process_psymtab_comp_unit): Update call.
16302         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
16303         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
16304         (print_tu_stats): Likewise.
16305         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
16306         in void* parameter.
16307         (build_type_psymtabs): Change objfile parameter to
16308         dwarf2_per_objfile.
16309         (process_skeletonless_type_unit): Use dwarf2_per_objfile
16310         passed in void* parameter.
16311         (process_skeletonless_type_units): Change objfile parameter to
16312         dwarf2_per_objfile.
16313         (set_partial_user): Likewise.
16314         (dwarf2_build_psymtabs_hard): Likewise.
16315         (read_comp_units_from_section): Likewise.
16316         (create_all_comp_units): Likewise.
16317         (scan_partial_symbols): Update calls.
16318         (add_partial_symbol): Likewise.
16319         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
16320         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
16321         (process_queue): Add dwarf2_per_objfile parameter.
16322         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
16323         (compute_compunit_symtab_includes): Likewise.
16324         (process_cu_includes): Add dwarf2_per_objfile parameter.
16325         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
16326         (process_full_type_unit): Likewise.
16327         (process_imported_unit_die): Update call.
16328         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
16329         (read_file_scope): Likewise.
16330         (allocate_dwo_file_hash_table): Add objfile parameter.
16331         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
16332         (create_cus_hash_table): Likewise.
16333         (create_dwp_hash_table): Likewise.
16334         (create_dwo_unit_in_dwp_v1): Likewise.
16335         (create_dwp_v2_section): Likewise.
16336         (create_dwo_unit_in_dwp_v2): Likewise.
16337         (lookup_dwo_unit_in_dwp): Likewise.
16338         (try_open_dwop_file): Likewise.
16339         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
16340         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
16341         cleanup to include a reference to dwarf2_per_objfile.
16342         (open_dwp_file): Add dwarf2_per_objfile parameter.
16343         (open_and_init_dwp_file): Likewise.
16344         (get_dwp_file): Likewise.
16345         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
16346         (queue_and_load_all_dwo_tus): Update call.
16347         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
16348         data.
16349         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
16350         (dwarf2_ranges_process): Likewise.
16351         (dwarf2_get_pc_bounds): Likewise.
16352         (mark_common_block_symbol_computed): Likewise.
16353         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16354         (dwarf2_read_abbrevs): Update call.
16355         (read_partial_die): Use dwarf2_per_objfile from cu.
16356         (find_partial_die): Likewise.
16357         (fixup_partial_die): Likewise.
16358         (read_attribute_value): Likewise.
16359         (read_indirect_string_at_offset_from): Add objfile parameter.
16360         (read_indirect_string_at_offset): Add dwarf2_per_objfile
16361         parameter.
16362         (read_indirect_string_from_dwz): Add objfile parameter.
16363         (read_indirect_string): Add objfile parameter.
16364         (read_addr_index_1): Add dwarf2_per_objfile parameter.
16365         (read_addr_index): Use dwarf2_per_objfile from cu.
16366         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
16367         call dw2_setup.
16368         (read_str_index): Use dwarf2_per_objfile from cu.
16369         (get_debug_line_section): Likewise.
16370         (read_formatted_entries): Add dwarf2_per_objfile parameter.
16371         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
16372         (new_symbol_full): Use dwarf2_per_objfile from cu.
16373         (build_error_marker_type): Likewise.
16374         (lookup_die_type): Likewise.
16375         (determine_prefix): Likewise.
16376         (follow_die_offset): Likewise.
16377         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
16378         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
16379         (dwarf2_fetch_die_type_sect_off): Likewise.
16380         (dwarf2_get_die_type): Likewise.
16381         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
16382         (get_signatured_type): Likewise.
16383         (get_DW_AT_signature_type): Likewise.
16384         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
16385         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
16386         (cu_debug_loc_section): Likewise.
16387         (fill_in_loclist_baton): Likewise.
16388         (dwarf2_symbol_mark_computed): Likewise.
16389         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16390         dwarf2_per_objfile.
16391         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
16392         parameter.
16393         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16394         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
16395         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
16396         (set_die_type): Use dwarf2_free_objfile from cu.
16397         (get_die_type_at_offset): Likewise.
16398         (dwarf2_per_objfile_free): Don't assign global variable.
16399         (debug_names) <constructor>: Add dwarf2_per_objfile
16400         parameter, update m_debugstrlookup construction.
16401         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
16402         parameter.
16403         <m_dwarf2_per_objfile>: New field.
16404         <lookup>: Use m_dwarf2_per_objfile.
16405         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
16406         (psyms_seen_size): Likewise.
16407         (write_gdbindex): Replace objfile parameter with
16408         dwarf2_per_objfile.
16409         (write_debug_names): Likewise.
16410         (write_psymtabs_to_index): Likewise.
16411         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
16412         calls.
16413
16414 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16415
16416         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
16417         <dwarf2_per_objfile>: New field.
16418         (struct dwarf2_per_cu_data) <objfile>: Remove.
16419         <dwarf2_per_objfile>: New field.
16420         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
16421         of objfile.
16422         (create_signatured_type_table_from_index): Likewise.
16423         (create_debug_type_hash_table): Likewise.
16424         (fill_in_sig_entry_from_dwo_entry): Likewise.
16425         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
16426         (create_type_unit_group): Assign dwarf2_per_objfile instead of
16427         objfile.
16428         (create_partial_symtab): Access objfile through
16429         dwarf2_per_objfile.
16430         (process_psymtab_comp_unit_reader): Likewise.
16431         (read_comp_units_from_section): Likewise.
16432         (scan_partial_symbols): Likewise.
16433         (add_partial_symbol): Likewise.
16434         (add_partial_subprogram): Likewise.
16435         (peek_die_abbrev): Likewise.
16436         (fixup_go_packaging): Likewise.
16437         (process_full_comp_unit): Likewise.
16438         (process_full_type_unit): Likewise.
16439         (process_imported_unit_die): Likewise.
16440         (dwarf2_compute_name): Likewise.
16441         (dwarf2_physname): Likewise.
16442         (read_import_statement): Likewise.
16443         (create_cus_hash_table): Assign dwarf2_physname instead of
16444         objfile.
16445         (read_func_scope): Access objfile through dwarf2_per_objfile.
16446         (read_lexical_block_scope): Likewise.
16447         (read_call_site_scope): Likewise.
16448         (read_variable): Likewise.
16449         (dwarf2_rnglists_process): Likewise.
16450         (dwarf2_ranges_process): Likewise.
16451         (dwarf2_ranges_read): Likewise.
16452         (dwarf2_record_block_ranges): Likewise.
16453         (dwarf2_add_field): Likewise.
16454         (dwarf2_add_member_fn): Likewise.
16455         (read_structure_type): Likewise.
16456         (process_structure_scope): Likewise.
16457         (read_enumeration_type): Likewise.
16458         (read_array_type): Likewise.
16459         (read_common_block): Likewise.
16460         (read_namespace_type): Likewise.
16461         (read_namespace): Likewise.
16462         (read_module_type): Likewise.
16463         (read_tag_pointer_type): Likewise.
16464         (read_tag_ptr_to_member_type): Likewise.
16465         (read_tag_string_type): Likewise.
16466         (read_subroutine_type): Likewise.
16467         (read_typedef): Likewise.
16468         (read_base_type): Likewise.
16469         (attr_to_dynamic_prop): Likewise.
16470         (read_subrange_type): Likewise.
16471         (read_unspecified_type): Likewise.
16472         (load_partial_dies): Likewise.
16473         (read_partial_die): Likewise.
16474         (find_partial_die): Likewise.
16475         (guess_partial_die_structure_name): Likewise.
16476         (fixup_partial_die): Likewise.
16477         (read_attribute_value): Likewise.
16478         (read_addr_index_from_leb128): Likewise.
16479         (dwarf2_read_addr_index): Likewise.
16480         (dwarf2_string_attr): Likewise.
16481         (lnp_state_machine::check_line_address): Likewise.
16482         (dwarf_decode_lines_1): Likewise.
16483         (dwarf_decode_lines): Likewise.
16484         (dwarf2_start_symtab): Likewise.
16485         (var_decode_location): Likewise.
16486         (new_symbol_full): Likewise.
16487         (dwarf2_const_value_data): Likewise.
16488         (dwarf2_const_value_attr): Likewise.
16489         (dwarf2_const_value): Likewise.
16490         (die_type): Likewise.
16491         (die_containing_type): Likewise.
16492         (lookup_die_type): Likewise.
16493         (guess_full_die_structure_name): Likewise.
16494         (anonymous_struct_prefix): Likewise.
16495         (dwarf2_name): Likewise.
16496         (follow_die_ref_or_sig): Likewise.
16497         (follow_die_offset): Likewise.
16498         (follow_die_ref): Likewise.
16499         (dwarf2_fetch_die_loc_sect_off): Likewise.
16500         (dwarf2_fetch_constant_bytes): Likewise.
16501         (dwarf2_fetch_die_type_sect_off): Likewise.
16502         (dwarf2_get_die_type): Likewise.
16503         (follow_die_sig): Likewise.
16504         (decode_locdesc): Likewise.
16505         (dwarf2_per_cu_objfile): Likewise.
16506         (dwarf2_per_cu_text_offset): Likewise.
16507         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
16508         objfile.
16509         (set_die_type): Access objfile through
16510         dwarf2_per_objfile.
16511
16512 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16513
16514         * valprint.c (converted_character_d): Remove typedef.
16515         (DEF_VEC_O (converted_character_d)): Remove.
16516         (count_next_character): Use std::vector.
16517         (print_converted_chars_to_obstack): Likewise.
16518         (generic_printstr): Likewise.
16519
16520 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16521
16522         * xml-support.h (struct gdb_xml_value): Add constructor.
16523         <value>: Change type to unique_xmalloc_ptr.
16524         (gdb_xml_value_s): Remove typedef.
16525         (DEF_VEC_O (gdb_xml_value_s)): Remove.
16526         (gdb_xml_element_start_handler): Change parameter type to
16527         std::vector.
16528         (xml_find_attribute): Likewise.
16529         * xml-support.c (xml_find_attribute): Change parameter type to
16530         std::vector and adjust.
16531         (gdb_xml_values_cleanup): Remove.
16532         (gdb_xml_parser::start_element): Adjust to std::vector.
16533         (xinclude_start_include): Change paraeter type to std::vector
16534         and adjust.
16535         * btrace.c (check_xml_btrace_version): Likewise.
16536         (parse_xml_btrace_block): Likewise.
16537         (parse_xml_btrace_pt_config_cpu): Likewise.
16538         (parse_xml_btrace_pt): Likewise.
16539         (parse_xml_btrace_conf_bts): Likewise.
16540         (parse_xml_btrace_conf_pt): Likewise.
16541         * memory-map.c (memory_map_start_memory): Likewise.
16542         (memory_map_start_property): Likewise.
16543         * osdata.c (osdata_start_osdata): Likewise.
16544         (osdata_start_item): Likewise.
16545         (osdata_start_column): Likewise.
16546         * remote.c (start_thread): Likewise.
16547         * solib-aix.c (library_list_start_library): Likewise.
16548         (library_list_start_list): Likewise.
16549         * solib-svr4.c (library_list_start_library): Likewise.
16550         (svr4_library_list_start_list): Likewise.
16551         * solib-target.c (library_list_start_segment): Likewise.
16552         (library_list_start_section): Likewise.
16553         (library_list_start_library): Likewise.
16554         (library_list_start_list): Likewise.
16555         * tracepoint.c (traceframe_info_start_memory): Likewise.
16556         (traceframe_info_start_tvar): Likewise.
16557         * xml-syscall.c (syscall_start_syscall): Likewise.
16558         * xml-tdesc.c (tdesc_start_target): Likewise.
16559         (tdesc_start_feature): Likewise.
16560         (tdesc_start_reg): Likewise.
16561         (tdesc_start_union): Likewise.
16562         (tdesc_start_struct): Likewise.
16563         (tdesc_start_flags): Likewise.
16564         (tdesc_start_enum): Likewise.
16565         (tdesc_start_field): Likewise.
16566         (tdesc_start_enum_value): Likewise.
16567         (tdesc_start_vector): Likewise.
16568
16569 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16570
16571         * extension.h (struct xmethod_worker) <clone>: Remove.
16572         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
16573         Remove.
16574         (python_xmethod_worker::clone): Remove.
16575         * valops.c (find_overload_match): Use std::move instead of
16576         clone.
16577
16578 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16579
16580         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
16581         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
16582         <free_xmethod_worker_data>: Remove.
16583         <get_matching_xmethod_workers>: Chance VEC to std::vector.
16584         <get_xmethod_arg_types>: Remove.
16585         <get_xmethod_result_type>: Remove.
16586         <invoke_xmethod>: Remove.
16587         * extension.c (new_xmethod_worker): Remove.
16588         (clone_xmethod_worker): Remove.
16589         (get_matching_xmethod_workers): Return void, pass std::vector by
16590         pointer.
16591         (get_xmethod_arg_types): Rename to...
16592         (xmethod_worker::get_arg_types): ... this, and adjust.
16593         (get_xmethod_result_type): Rename to...
16594         (xmethod_worker::get_result_type): ... this, and adjust.
16595         (invoke_xmethod): Remove.
16596         (free_xmethod_worker): Remove.
16597         (free_xmethod_worker_vec): Remove.
16598         * extension.h (enum ext_lang_rc): Move here from
16599         extension-priv.h.
16600         (struct xmethod_worker): Add constructor and destructor.
16601         <data>: Remove.
16602         <value>: Remove.
16603         <invoke, clone, do_get_result_type, do_get_arg_types>: New
16604         virtual pure methods.
16605         <get_arg_types, get_result_type>: New methods.
16606         (xmethod_worker_ptr): Remove typedef.
16607         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
16608         (xmethod_worker_vec): Remove typedef.
16609         (xmethod_worker_up): New typedef.
16610         (invoke_xmethod): Remove.
16611         (clone_xmethod_worker): Remove.
16612         (free_xmethod_worker): Remove.
16613         (free_xmethod_worker_vec): Remove.
16614         (get_xmethod_arg_types): Remove.
16615         (get_xmethod_result_type): Remove.
16616         * valops.c (find_method_list): Use std::vector, don't use
16617         intermediate vector.
16618         (value_find_oload_method_list): Use std::vector.
16619         (find_overload_match): Use std::vector.
16620         (find_oload_champ): Use std::vector.
16621         * value.c (value_free): Use operator delete.
16622         (value_of_xmethod): Rename to...
16623         (value_from_xmethod): ... this.  Don't assign
16624         xmethod_worker::value, take rvalue-reference.
16625         (result_type_of_xmethod): Adjust.
16626         (call_xmethod): Adjust.
16627         * value.h: Include extension.h.
16628         (struct xmethod_worker): Don't forward-declare.
16629         (value_of_xmethod): Rename to...
16630         (value_from_xmethod): ... this, take rvalue-reference.
16631         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
16632         (struct python_xmethod_worker): ... this, add constructor and
16633         destructor.
16634         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
16635         (gdbpy_free_xmethod_worker_data): Rename to...
16636         (python_xmethod_worker::~python_xmethod_worker): ... this and
16637         adjust.
16638         (gdbpy_clone_xmethod_worker_data): Rename to...
16639         (python_xmethod_worker::clone): ... this and adjust.
16640         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
16641         temporary vector.
16642         (gdbpy_get_xmethod_arg_types): Rename to...
16643         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
16644         (gdbpy_get_xmethod_result_type): Rename to...
16645         (python_xmethod_worker::do_get_result_type): ... this and
16646         adjust.
16647         (gdbpy_invoke_xmethod): Rename to...
16648         (python_xmethod_worker::invoke): ... this and adjust.
16649         (new_python_xmethod_worker): Rename to...
16650         (python_xmethod_worker::python_xmethod_worker): ... this and
16651         adjust.
16652         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
16653         Remove.
16654         (gdbpy_free_xmethod_worker_data): Remove.
16655         (gdbpy_get_matching_xmethod_workers): Use std::vector.
16656         (gdbpy_get_xmethod_arg_types): Remove.
16657         (gdbpy_get_xmethod_result_type): Remove.
16658         (gdbpy_invoke_xmethod): Remove.
16659         * python/python.c (python_extension_ops): Remove obsolete
16660         callbacks.
16661
16662 2018-01-05  Pedro Alves  <palves@redhat.com>
16663
16664         PR gdb/18653
16665         * common/signals-state-save-restore.c
16666         (save_original_signals_state): New parameter 'quiet'.  Warn if we
16667         find a custom handler preinstalled, instead of internal erroring.
16668         But only warn if !quiet.
16669         * common/signals-state-save-restore.h
16670         (save_original_signals_state): New parameter 'quiet'.
16671         * main.c (captured_main_1): Move save_original_signals_state call
16672         after option handling, and pass QUIET.
16673
16674 2018-01-05  Pedro Alves  <palves@redhat.com>
16675
16676         * spu-tdep.c (spu_catch_start): Pass
16677         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
16678
16679 2018-01-05  Pedro Alves  <palves@redhat.com>
16680
16681         PR gdb/22670
16682         * ada-lang.c (literal_symbol_name_matcher): New function.
16683         (ada_get_symbol_name_matcher): Use it for
16684         symbol_name_match_type::SEARCH_NAME.
16685         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
16686         it down instead of assuming symbol_name_match_type::FULL.
16687         * block.h (block_lookup_symbol): New parameter 'match_type'.
16688         * c-valprint.c (print_unpacked_pointer): Use
16689         lookup_symbol_search_name instead of lookup_symbol.
16690         * compile/compile-object-load.c (get_out_value_type): Pass down
16691         symbol_name_match_type::SEARCH_NAME.
16692         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
16693         symbol_name_match_type::FULL.
16694         * cp-support.c (cp_get_symbol_name_matcher): Handle
16695         symbol_name_match_type::SEARCH_NAME.
16696         * infrun.c (insert_exception_resume_breakpoint): Use
16697         lookup_symbol_search_name.
16698         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
16699         * psymtab.c (maintenance_check_psymtabs): Use
16700         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
16701         * stack.c (print_frame_args): Use lookup_symbol_search_name and
16702         SYMBOL_SEARCH_NAME.
16703         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
16704         if symbol_name_match_type::SEARCH_NAME.
16705         (lookup_symbol_in_language): Pass down
16706         symbol_name_match_type::FULL.
16707         (lookup_symbol_search_name): New.
16708         (lookup_language_this): Pass down
16709         symbol_name_match_type::SEARCH_NAME.
16710         (lookup_symbol_aux, lookup_local_symbol): New parameter
16711         'match_type'.  Pass it down.
16712         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
16713         (lookup_symbol_search_name): New declaration.
16714         (lookup_symbol_in_block): New 'match_type' parameter.
16715
16716 2018-01-05  Pedro Alves  <palves@redhat.com>
16717
16718         PR gdb/22670
16719         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
16720         ada_lookup_symbol.
16721         (ada_lookup_symbol): Reimplement in terms of
16722         ada_lookup_symbol_list, bits factored out from
16723         ada_lookup_encoded_symbol.
16724
16725 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16726
16727         * ada-exp.y (write_object_renaming): When subscripting an array
16728         using a symbol as the index, pass the block in call to
16729         ada_lookup_encoded_symbol when looking that symbol up.
16730
16731 2018-01-05  Jerome Guitton  <guitton@adacore.com>
16732
16733         * ada-lang.c (ada_array_length): Use ada_index_type instead of
16734         TYPE_INDEX_TYPE.
16735
16736 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16737
16738         * ada-lang.c (ada_to_fixed_value_create): Add handling of
16739         the case where VALUE_LVAL (val0) is not lval_memory.
16740
16741 2018-01-05  Xavier Roirand  <roirand@adacore.com>
16742
16743         * ada-valprint.c (print_optional_low_bound): Handle
16744         character-indexed array printing like boolean-indexed array
16745         printing.
16746
16747 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16748
16749         * NEWS: Create a new section for the next release branch.
16750         Rename the section of the current branch, now that it has
16751         been cut.
16752
16753 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16754
16755         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
16756         * version.in: Bump version to 8.1.50.DATE-git.
16757
16758 2018-01-03  Xavier Roirand  <roirand@adacore.com>
16759
16760         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
16761         Add field.
16762         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
16763         Add field.
16764         (default_exception_support_info) <catch_handlers_sym>: Add field.
16765         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
16766         (ada_exception_name_addr_1): Add "catch handlers" handling.
16767         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
16768         Update all callers.
16769         (create_excep_cond_exprs) <ex>: Add parameter.
16770         (re_set_exception): Update create_excep_cond_exprs call.
16771         (print_it_exception, print_one_exception, print_mention_exception)
16772         (print_recreate_exception): Add "catch handler" handling.
16773         (allocate_location_catch_handlers, re_set_catch_handlers)
16774         (check_status_catch_handlers, print_it_catch_handlers)
16775         (print_one_catch_handlers, print_mention_catch_handlers)
16776         (print_recreate_catch_handlers): New function.
16777         (catch_handlers_breakpoint_ops): New variable.
16778         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
16779         Add parameter.  Add "catch handler" handling.
16780         (ada_exception_sym_name, ada_exception_breakpoint_ops):
16781         Add "catch handler" handling.
16782         (ada_exception_catchpoint_cond_string): Add "catch handler"
16783         handling.
16784         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
16785         call.
16786         (catch_ada_handlers_command): New function.
16787         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
16788         operations structure.
16789         (_initialize_ada_language): Add "catch handlers" command entry.
16790         * NEWS: Document "catch handlers" feature.
16791
16792 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16793
16794         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
16795         account when creating the array type of the slice.
16796         (ada_value_slice): Likewise.
16797
16798 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16799
16800         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
16801         New enum value.
16802         (create_array_type_with_stride): Add byte_stride_prop parameter.
16803         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
16804         New parameter.  Update all callers in this file.
16805         (array_type_has_dynamic_stride): New function.
16806         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
16807         of arrays with dynamic byte strides.
16808         * dwarf2read.c (read_array_type): Add support for dynamic
16809         DW_AT_byte_stride attributes.
16810
16811 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16812
16813         * dwarf2read.c (read_unspecified_type): Treat
16814         DW_TAG_enumeration_type DIEs from Ada units as stubs.
16815
16816 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16817
16818         Update copyright year range in all GDB files.
16819
16820 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
16821
16822         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
16823         and gdb/testsuite/gdb.base/step-line.c.
16824
16825 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16826
16827         * copyright.py (main): Dump the contents of
16828         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
16829         even if BY_HAND is empty.
16830
16831 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16832
16833         * top.c (print_gdb_version): Update Copyright year in version
16834         message.
16835
16836 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16837
16838         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
16839
16840 For older changes see ChangeLog-2017.
16841 \f
16842 Local Variables:
16843 mode: change-log
16844 left-margin: 8
16845 fill-column: 74
16846 version-control: never
16847 coding: utf-8
16848 End: