Change wrap buffering to use a std::string
[external/binutils.git] / gdb / ChangeLog
1 2018-12-28  Tom Tromey  <tom@tromey.com>
2
3         * utils.c (filter_initialized): New global.
4         (wrap_buffer): Now a std::string.
5         (wrap_pointer): Remove.
6         (flush_wrap_buffer): New function.
7         (filtered_printing_initialized, set_width, wrap_here)
8         (fputs_maybe_filtered): Update.
9
10 2018-12-28  Eli Zaretskii  <eliz@gnu.org>
11
12         * coffread.c (coff_symtab_read): Don't record in minsyms symbols
13         that are unresolved.  This avoids triggering an internal error
14         when stepping outside of 'main' in MinGW programs.
15
16 2018-12-27  Tom Tromey  <tom@tromey.com>
17
18         * python/py-utils.c (gdbpy_handle_exception): Translate
19         PyExc_KeyboardInterrupt to quit.
20
21 2018-12-27  Tom Tromey  <tom@tromey.com>
22
23         * python/python-internal.h (gdbpy_print_stack_or_quit): Declare.
24         * python/py-unwind.c (pyuw_sniffer): Use
25         gdbpy_print_stack_or_quit.
26         * python/py-framefilter.c (throw_quit_or_print_exception):
27         Remove.
28         (gdbpy_apply_frame_filter): Use gdbpy_print_stack_or_quit.
29         * python/python.c (gdbpy_print_stack_or_quit): New function.
30
31 2018-12-27  Tom Tromey  <tom@tromey.com>
32
33         * python/py-value.c (convert_value_from_python): Use
34         gdbpy_convert_exception.
35         * python/py-param.c (parmpy_init): Use gdbpy_convert_exception.
36         * python/py-cmd.c (cmdpy_init): Use gdbpy_convert_exception.
37         * python/py-breakpoint.c (bppy_init): Use
38         gdbpy_convert_exception.
39
40 2018-12-27  Tom Tromey  <tom@tromey.com>
41
42         * configure.nat (NATDEPFILES): Use nat/ prefix.
43         * Makefile.in (CONFIG_SRC_SUBDIR): Add nat.
44         (%.o: ${srcdir}/nat/%.c): Remove rule.
45         (INIT_FILES): Do not filter out NATDEPFILES.
46
47 2018-12-27  Tom Tromey  <tom@tromey.com>
48
49         * Makefile.in (INIT_FILES): Redefine.
50         (stamp-init): Remove sed, tr invocations.  Use for loop.  Don't
51         set LANG or LC_ALL.
52
53 2018-12-27  Tom Tromey  <tom@tromey.com>
54
55         * Makefile.in (stamp-init): Remove gdbtypes special case.
56
57 2018-12-27  John Baldwin  <jhb@FreeBSD.org>
58
59         * config/i386/nm-fbsd.h: Remove file.
60         * Makefile.in (HFILES_NO_SRCDIR): Remove config/i386/nm-fbsd.h.
61         * configure.nat: Remove NAT_FILE for FreeBSD/i386.
62
63 2018-12-27  Tom Tromey  <tom@tromey.com>
64
65         * minsyms.h (class minimal_symbol_reader): Use
66         DISABLE_COPY_AND_ASSIGN.
67
68 2018-12-27  Tom Tromey  <tom@tromey.com>
69
70         * python/python.c (python_interactive_command): Use std::string.
71         (gdbpy_parameter): Likewise.
72         * python/py-utils.c (unicode_to_encoded_string): Update comment.
73         * python/py-symtab.c (salpy_str): Use PyString_FromFormat.
74         * python/py-record-btrace.c (recpy_bt_insn_data): Use
75         byte_vector.
76         * python/py-objfile.c (objfpy_get_build_id): Use
77         unique_xmalloc_ptr.
78         * python/py-inferior.c (infpy_read_memory): Use
79         unique_xmalloc_ptr.
80         * python/py-cmd.c (gdbpy_parse_command_name): Use std::string.
81
82 2018-12-26  Simon Marchi  <simon.marchi@polymtl.ca>
83
84         * target.c (target_terminal::restore_inferior): Remove struct keyword.
85
86 2018-12-26  Simon Marchi  <simon.marchi@ericsson.com>
87
88         * build-id.c (build_id_to_debug_bfd): Enhance debug output.
89         * symfile.c (separate_debug_file_exists): Likewise.
90
91 2018-12-24  Andrew Burgess  <andrew.burgess@embecosm.com>
92
93         * c-exp.y (field_name): Allow DOUBLE_KEYWORD, INT_KEYWORD, LONG,
94         SHORT, SIGNED_KEYWORD, and UNSIGNED tokens to act as a field
95         names.
96         (typename_stoken): New function.
97
98 2018-12-24  Andrew Burgess  <andrew.burgess@embecosm.com>
99
100         * c-exp.y (field_name): New %token, and new rule.
101         (exp): Replace uses of 'name' with 'field_name' where appropriate.
102
103 2018-12-24  Andrew Burgess  <andrew.burgess@embecosm.com>
104
105         PR gdb/13368
106         * c-exp.y (typebase): Extend the comment.
107         (ident_tokens): Likewise.
108
109 2018-12-18  Tom Tromey  <tom@tromey.com>
110
111         * dwarf2read.c (dwarf2_find_containing_comp_unit): Don't take
112         address of sect_off.
113
114 2018-12-23  Joel Brobecker  <brobecker@adacore.com>
115
116         GDB 8.2.1 released.
117
118 2018-12-22  Andrew Burgess  <andrew.burgess@embecosm.com>
119
120         * riscv-tdep.c (riscv_call_arg_struct): Don't adjust size before
121         assigning locations.
122         (riscv_return_value): Take more care not to read/write outside of
123         argument buffer.  Cast return value between the declared type and
124         the abi type.
125
126 2018-12-22  Andrew Burgess  <andrew.burgess@embecosm.com>
127
128         * riscv-tdep.c (riscv_register_reggroup_p): Save and restore fcsr,
129         fflags, and frm registers.
130
131 2018-12-22  Andrew Burgess  <andrew.burgess@embecosm.com>
132
133         * riscv-tdep.c (riscv_dwarf_reg_to_regnum): New function.
134         (riscv_gdbarch_init): Register new function with gdbarch.
135         * riscv-tdep.h: New enum to define RISC-V DWARF register numbers.
136
137 2018-12-21  Simon Marchi  <simon.marchi@ericsson.com>
138
139         * minsyms.c (mst_str): New.
140         (minimal_symbol_reader::record_full): Add debug output.
141
142 2018-12-21  John Baldwin  <jhb@FreeBSD.org>
143
144         * fbsd-nat.c (fbsd_handle_debug_trap): Require pl.pl_flags to
145         equal PL_FLAG_SI.
146         (fbsd_nat_target::stopped_by_sw_breakpoint): Likewise.
147
148 2018-12-21  Paul Marechal  <paul.marechal@ericsson.com>
149
150         PR gdb/23974
151         * target.c (target_read_stralloc): Check for empty vector.
152
153 2018-12-21  Дилян Палаузов  <dilyan.palauzov@aegee.org>
154
155         * top.c (print_gdb_configuration): Print "--without-python"
156         if GDB was configured without Python.
157
158 2018-12-21  Andrew Burgess  <andrew.burgess@embecosm.com>
159
160         * riscv-tdep.c (riscv_scan_prologue): Use plongest to format
161         a signed offset as a string.
162
163 2018-12-21  Dave Murphy  <davem@devkitpro.org>
164
165         * dtrace-probe.c (dtrace_static_probe_ops): Explicit zero
166         initialise.
167         * probe.c (any_static_probe_ops): Ditto.
168         * record-btrace.c (record_btrace_thread_observer_token): Ditto.
169         * stap-probe.c (stap_static_probe_ops): Ditto.
170         * tui/tui-hooks.c (tui_observers_token): Ditto.
171         * unittests/observable-selftests.c (token1, token2, token3): Ditto.
172
173 2018-12-19  Andrew Burgess  <andrew.burgess@embecosm.com>
174
175         * gdb/dummy-frame.c (default_dummy_id): Defined new function.
176         * gdb/dummy-frame.h (default_dummy_id): Declare new function.
177         * gdb/frame-unwind.c (default_unwind_pc): Define new function.
178         (default_unwind_sp): Define new function.
179         * gdb/frame-unwind.h (default_unwind_pc): Declare new function.
180         (default_unwind_sp): Declare new function.
181         * gdb/frame.c (frame_unwind_pc): Assume gdbarch_unwind_pc is
182         available.
183         (get_frame_sp): Assume that gdbarch_unwind_sp is available.
184         * gdb/gdbarch.c: Regenerate.
185         * gdb/gdbarch.h: Regenerate.
186         * gdb/gdbarch.sh: Update definition of dummy_id, unwind_pc, and
187         unwind_sp.  Add additional header files to be included in
188         generated file.
189
190 2018-12-19  Dimitar Dimitrov  <dimitar@dinux.eu>
191
192         * nat/linux-ptrace.c (linux_ptrace_test_ret_to_nx): Remove
193         sp clobbers.
194
195 2018-12-17  Andrew Burgess  <andrew.burgess@embecosm.com>
196
197         * dwarf2read.c (struct dwarf2_cu): Convert the fields 'mark',
198         'has_loclist', 'checked_producer', 'producer_is_gxx_lt_4_6',
199         'producer_is_gcc_lt_4_3', 'producer_is_icc_lt_14',
200         'processing_has_namespace_info' from unsigned int to bool.  Update
201         comments.
202         (producer_is_icc_lt_14): Update return type.
203         (producer_is_gcc_lt_4_3): Likewise.
204         (producer_is_gxx_lt_4_6): Likewise.
205         (process_die): Write true instead of 1 into predicate fields.
206         (dwarf2_start_symtab): Likewise.
207         (var_decode_location): Likewise.
208         (dwarf2_mark_helper): Likewise.
209         (dwarf2_mark): Likewise.
210         (dwarf2_clear_marks): Write false instead of 0 into predicate
211         field.
212         (dwarf2_cu::dwarf2_cu): Initialise predicate fields to false, not
213         0.
214
215 2018-12-17  Szabolcs Nagy  <szabolcs.nagy@arm.com>
216
217         * nat/aarch64-sve-linux-ptrace.h: Include signal.h instead of
218         asm/sigcontext.h.
219
220 2018-12-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
221
222         * nat/linux-ptrace.c (kill_child): Fix ARI warning by removing
223         warning trailing new line.
224
225 2018-12-16  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
226
227         * nat/linux-ptrace.c (kill_child): New function.
228         (linux_ptrace_test_ret_to_nx): Use kill_child instead of local code.
229         Add a call to kill_child in case of early return after fork.
230         (linux_check_ptrace_features): Use kill_child instead of local code.
231         (linux_test_for_tracefork): Likewise.
232
233 2018-12-14  Tom Tromey  <tom@tromey.com>
234
235         * Makefile.in: Remove "alloca" comment.
236         (INFOFILES): Remove.
237         (local-maintainer-clean): Don't use INFOFILES.
238
239 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
240
241         * syscalls/update-freebsd.sh: New file.
242         * syscalls/freebsd.xml: Regenerate.
243
244 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
245
246         * NEWS: Add entry documenting system call aliases.
247         * break-catch-syscall.c (catch_syscall_split_args): Pass 'result'
248         to get_syscalls_by_name.
249         * gdbarch.sh (UNKNOWN_SYSCALL): Remove.
250         * gdbarch.h: Regenerate.
251         * syscalls/gdb-syscalls.dtd (syscall): Add alias attribute.
252         * xml-syscall.c [!HAVE_LIBEXPAT] (get_syscalls_by_name): Rename
253         from get_syscall_by_name.  Now accepts a pointer to a vector of
254         integers and returns a bool.
255         [HAVE_LIBEXPAT] (struct syscall_desc): Add alias member.
256         (syscall_create_syscall_desc): Add alias parameter and pass it to
257         syscall_desc constructor.
258         (syscall_start_syscall): Handle alias attribute.
259         (syscall_attr): Add alias attribute.
260         (xml_get_syscalls_by_name): Rename from xml_get_syscall_number.
261         Now accepts a pointer to a vector of integers and returns a
262         bool.  Add syscalls whose alias or name matches the requested
263         name.
264         (get_syscalls_by_name): Rename from get_syscall_by_name.  Now
265         accepts a pointer to a vector of integers and returns a bool.
266         * xml-syscall.h (get_syscalls_by_name): Likewise.
267
268 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
269
270         * break-catch-syscall.c (catch_syscall_split_args): Pass 'result'
271         to get_syscalls_by_group.
272         * xml-syscall.c [!HAVE_LIBEXPAT] (get_syscalls_by_group): Return
273         false.
274         [HAVE_LIBEXPAT] (xml_list_syscalls_by_group): Append syscall
275         numbers to an existing vector of integers and return a bool.
276         (get_syscalls_by_group): Accept pointer to vector of integers
277         and change return type to bool.
278         * xml-syscall.h (get_syscalls_by_group): Likewise.
279
280 2018-12-13  Jim Wilson  <jimw@sifive.com>
281
282         * riscv-tdep.c (riscv_print_one_register_info): For MSTATUS, add
283         comment for SD field, and correct xlen calculation.  For MISA, add
284         comment for MXL field, add call to register_size, and correct base
285         calculation.
286
287 2018-12-13  Stafford Horne  <shorne@gmail.com>
288
289         * NEWS(New targets): Add or1k*-*-linux*.
290
291 2018-12-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
292
293         * nat/linux-osdata.c (linux_xfer_osdata_info_os_types): Forward
294         declare on one line to fix ARI warning.
295
296 2018-12-12  Andrew Burgess  <andrew.burgess@embecosm.com>
297
298         * infrun.c (infcall_suspend_state::infcall_suspend_state): New.
299         (infcall_suspend_state::registers): New.
300         (infcall_suspend_state::restore): New.
301         (infcall_suspend_state::thread_suspend): Rename to...
302         (infcall_suspend_state::m_thread_suspend): ...this.
303         (infcall_suspend_state::registers): Rename to...
304         (infcall_suspend_state::m_registers): ...this.
305         (infcall_suspend_state::siginfo_gdbarch): Rename to...
306         (infcall_suspend_state::m_siginfo_gdbarch): ...this.
307         (infcall_suspend_state::siginfo_data): Rename to...
308         (infcall_suspend_state::m_siginfo_data): ...this.
309         (save_infcall_suspend_state): Rewrite to use infcall_suspend_state
310         constructor.
311         (restore_infcall_suspend_state): Rewrite to use
312         infcall_suspend_state::restore method.
313         (get_infcall_suspend_state_regcache): Use
314         infcall_suspend_state::registers method.
315
316 2018-12-12  Andrew Burgess  <andrew.burgess@embecosm.com>
317
318         * riscv-tdep.c (riscv_call_arg_scalar_float): Unnamed (variadic)
319         arguments are passed in integer registers.
320         (riscv_call_arg_complex_float): Likewise.
321
322 2018-12-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
323
324         * nat/linux-osdata.c (common_getter): New function.
325         (struct osdata_type): Change getter to take_snapshot.
326         Add LONGEST len_avail and struct buffer buffer.
327         Change all elements in the initializer.
328         Add an element for the list of types.
329         (linux_xfer_osdata_info_os_types): New function.
330         (linux_common_xfer_osdata): Use common_getter for the list of types.
331         Replace getter call by common_getter.
332         (linux_xfer_osdata_cpus): Remove args READBUF, OFFSET, LEN.
333         Add arg BUFFER.  Only keep the code that adds data in BUFFER.
334         (linux_xfer_osdata_fds): Likewise.
335         (linux_xfer_osdata_modules): Likewise.
336         (linux_xfer_osdata_msg): Likewise.
337         (linux_xfer_osdata_processes): Likewise.
338         (linux_xfer_osdata_processgroups): Likewise.
339         (linux_xfer_osdata_sem): Likewise.
340         (linux_xfer_osdata_shm): Likewise.
341         (linux_xfer_osdata_isockets): Likewise.
342         (linux_xfer_osdata_threads): Likewise.
343
344 2018-12-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
345
346         * nat/linux-osdata.c: Removed various trailing spaces.
347
348 2018-12-10  Andrew Burgess  <andrew.burgess@embecosm.com>
349
350         * riscv-tdep.c (riscv_register_name): Fix ARI warning by removing
351         leading whitespace before #include line.
352
353 2018-12-08  Simon Marchi  <simon.marchi@ericsson.com>
354             Дилян Палаузов  <dilyan.palauzov@aegee.org>
355
356         PR gdb/23950
357         * configure.ac: Search for tgetent in libtinfow.
358         * configure: Re-generate.
359
360 2018-12-08  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
361
362         * linux-thread-db.c (struct thread_db_info): Add td_ta_delete_p.
363         (thread_db_err_str): Forward declare.
364         (delete_thread_db_info): Call td_ta_delete_p if available.
365         (try_thread_db_load_1): Acquire td_ta_delete address.
366         * nat/gdb_thread_db.h (td_ta_delete_ftype): Declare.
367
368 2018-12-08  Pedro Alves  <palves@redhat.com>
369
370         * source.c (forward_search_command): Rename to ...
371         (search_command_helper): ... this.  Add 'forward' parameter.
372         Tweak to use a gdb::def_vector<char> instead of a xrealloc'ed
373         buffer.  Handle backward searches too.
374         (forward_search_command, reverse_search_command): Reimplement by
375         calling search_command_helper.
376
377 2018-12-07  Andrew Burgess  <andrew.burgess@embecosm.com>
378
379         * .dir-locals.el: Copy most of the settings from c-mode over to
380         c++-mode.
381
382 2018-12-08  Stafford Horne  <shorne@gmail.com>
383
384         * Makefile.in (ALL_TARGET_OBS): Add or1k-linux-tdep.o.
385         * configure.tgt: Add or1k*-*-linux*.
386         * or1k-linux-tdep.c: New file.
387         * or1k-tdep.c (or1k_gdbarch_init): Call gdbarch_init_osabi.
388
389 2018-12-07  Pedro Alves  <palves@redhat.com>
390
391         * dwarf2read.c (get_gdb_index_contents_from_section): Use
392         gdb::make_array_view.
393
394 2018-12-05  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
395
396         * language.c (_initialize_language): Fix leak by assigning
397         a static string to language.  Same for range and case_sensitive,
398         even if no leak is detected for these variables.
399
400 2018-12-05  John Baldwin  <jhb@FreeBSD.org>
401
402         * configure: Re-generate.
403         * configure.ac: Use separate sed expressions to escape variables
404         in auto-load directories.
405
406 2018-12-05  Andrew Burgess  <andrew.burgess@embecosm.com>
407
408         * riscv-tdep.c (riscv_features_from_gdbarch_info): New function.
409         (riscv_find_default_target_description): Use new function to
410         extract feature from gdbarch_info.
411         (riscv_gdbarch_init): Add error checks for xlen and flen between
412         target description and bfd headers.  Be smarter about when we
413         think the hardware floating point abi should be used.
414
415 2018-12-05  Alan Hayward  <alan.hayward@arm.com>
416
417         * nat/aarch64-linux-hw-point.c
418         (aarch64_linux_any_set_debug_regs_state): New function.
419         * nat/aarch64-linux-hw-point.h
420         (aarch64_linux_any_set_debug_regs_state): New declaration.
421         * nat/aarch64-linux.c (aarch64_linux_new_thread): Check if any
422         BPs or WPs are set.
423
424 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
425
426         * common/filestuff.c [HAVE_KINFO_GETFILE]: Include headers.
427         (fdwalk) [HAVE_KINFO_GETFILE]: Use kinfo_getfile.
428
429 2018-11-30  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
430             Simon Marchi  <simon.marchi@ericsson.com>
431
432         * linespec.c (symtab_vector_up): Remove.
433         (symtabs_from_filename): Change return type to std::vector.
434         (collect_symtabs_from_filename): Likewise.
435         (create_sals_line_offset): Assign return value of
436         collect_symtabs_from_filename to *ls->file_symtabs.
437         (convert_explicit_location_to_linespec): Remove call to release.
438         (parse_linespec): Likewise.
439         (symtab_collector) <symtab_collector>: Remove initialization of
440         m_symtabs.
441         <release_symtabs>: Change return type to std::vector<symtab *>.
442         <operator ()>: Adjust.
443
444 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
445
446         * fbsd-nat.c [__FreeBSD_version >= 700009] (USE_SIGINFO): Macro
447         defined.
448         (union sigval32, struct siginfo32, fbsd_siginfo_size)
449         (fbsd_convert_siginfo): Make conditional on USE_SIGINFO instead
450         of KERN_PROC_AUXV and PT_LWPINFO.
451         (fbsd_nat_target::xfer_partial): Define method unconditionally.
452         Make TARGET_OBJECT_SIGNAL_INFO conditional on USE_SIGINFO.
453         Make TARGET_OBJECT_AUXV conditional on KERN_PROC_AUXV.
454         Make TARGET_OBJECT_FREEBSD_VMMAP and
455         TARGET_OBJECT_FREEBSD_PS_STRINGS conditional on KERN_PROC_VMMAP
456         and KERN_PROC_PS_STRINGS.
457         * fbsd-nat.h: Include <sys/proc.h>.
458         (fbsd_nat_target::xfer_partial): Declare method unconditionally.
459
460 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
461
462         * riscv-linux-nat.c: Add 'inferior.h' and 'target-descriptions.h'
463         header files.
464         (riscv_linux_nat_target::read_description): New method.
465
466 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
467
468         * arch/riscv.h (riscv_gdbarch_features::hash): New method.
469         * arch/riscv.c (struct riscv_gdbarch_features_hasher): New.
470         (riscv_tdesc_cache): New global.
471         (riscv_create_target_description): Look in the cache before
472         creating a new target description.
473
474 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
475
476         * arch/riscv.h (riscv_gdb_features::operator==): New.
477         (riscv_gdb_features::operator!=): New.
478         * riscv-tdep.c (riscv_gdbarch_init): Make use of the inequality
479         operator.
480
481 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
482
483         * arch/riscv.h (riscv_create_target_description): Make return type
484         const.
485         * arch/riscv.c (riscv_create_target_description): Likewise.
486         * riscv-tdep.c (riscv_find_default_target_description): Likewise.
487
488 2018-11-30  Jan Kratochvil  <jan.kratochvil@redhat.com>
489             Keith Seitz  <keiths@redhat.com>
490             Tom Tromey  <tom@tromey.com>
491             Sergio Durigan Junior  <sergiodj@redhat.com>
492
493         https://bugzilla.redhat.com/show_bug.cgi?id=1613614
494         * dwarf2read.c (dwarf2_find_containing_comp_unit): Add
495         'mid_cu->length' to '*cu_off' when checking if 'sect_off' is
496         inside the CU.
497
498 2018-11-30  Pedro Alves  <palves@redhat.com>
499
500         * aix-thread.c (aix_thread_target) <aix_thread_target>: Delete.
501         <stratum>: New override.
502         * bfd-target.c (aix_thread_target) <aix_thread_target>: Delete.
503         <stratum>: New override.
504         * bsd-uthread.c (bsd_uthread_target) <bsd_uthread_target>: Delete.
505         <stratum>: New override.
506         * exec.c (exec_target) <exec_target>: Delete.
507         <stratum>: New override.
508         * gdbarch-selftests.c (register_to_value_test): Adjust to use the
509         stratum method instead of the to_stratum field.
510         * linux-thread-db.c (thread_db_target) <thread_db_target>: Delete.
511         <stratum>: New override.
512         (thread_db_target::thread_db_target): Delete.
513         * make-target-delegates (print_class): Don't print a ctor
514         declaration.  Print a stratum method override declaration.
515         * process-stratum-target.h (process_stratum_target)
516         <process_stratum_target>: Delete.
517         <stratum>: New override.
518         * ravenscar-thread.c (ravenscar_thread_target)
519         <ravenscar_thread_target>: Delete.
520         <stratum>: New override.
521         * record-btrace.c (record_btrace_target)
522         <record_btrace_target>: Delete.
523         <stratum>: New override.
524         * record-full.c (record_full_base_target)
525         <record_full_base_target>: Delete.
526         <stratum>: New override.
527         * record.c (record_disconnect, record_detach)
528         (record_mourn_inferior, record_kill): Adjust to use the stratum
529         method instead of the to_stratum field.
530         * regcache.c (cooked_read_test, cooked_write_test): Likewise.
531         * sol-thread.c (sol_thread_target)
532         <sol_thread_target>: Delete.
533         <stratum>: New override.
534         * spu-multiarch.c (spu_multiarch_target)
535         <spu_multiarch_target>: Delete.
536         <stratum>: New override.
537         * target-delegates.c: Regenerate.
538         * target.c (target_stack::push, target_stack::unpush)
539         (pop_all_targets_above, pop_all_targets_at_and_above)
540         (info_target_command, target_require_runnable)
541         (target_stack::find_beneath): Adjust to use the stratum method
542         instead of the to_stratum field.
543         (dummy_target::dummy_target): Delete.
544         (dummy_target::stratum): New.
545         (debug_target::debug_target): Delete.
546         (debug_target::stratum): New.
547         (maintenance_print_target_stack): Adjust to use the stratum method
548         instead of the to_stratum field.
549         * target.h (struct target_ops) <stratum>: New method.
550         <to_stratum>: Delete.
551         <is_pushed>: Adjust to use the stratum method
552         instead of the to_stratum field.
553
554 2018-11-30  Pedro Alves  <palves@redhat.com>
555
556         * corelow.c (core_target) <has_all_memory, has_execution>: New
557         overrides.
558         * inf-child.c (inf_child_target::has_all_memory)
559         (inf_child_target::has_memory, inf_child_target::has_stack)
560         (inf_child_target::has_registers)
561         (inf_child_target::has_execution): Delete.
562         * inf-child.h (inf_child_target) <has_all_memory, has_memory,
563         has_stack, has_registers, has_execution>: Delete.
564         * process-stratum-target.c
565         (process_stratum_target::has_all_memory)
566         (process_stratum_target::has_memory)
567         (process_stratum_target::has_stack)
568         (process_stratum_target::has_registers)
569         (process_stratum_target::has_execution): New.
570         * process-stratum-target.h (process_stratum_target)
571         <has_all_memory, has_memory, has_stack, has_registers,
572         has_execution>: New method overrides.
573         * ravenscar-thread.c (ravenscar_thread_target) <has_all_memory,
574         has_memory, has_stack, has_registers, has_execution>: Delete.
575         * remote-sim.c (gdbsim_target) <has_stack, has_registers,
576         has_execution>: Delete.
577         * remote.c (remote_target) <has_all_memory, has_memory, has_stack,
578         has_registers, has_execution>: Delete.
579         * target.c (default_child_has_all_memory)
580         (default_child_has_memory, default_child_has_stack)
581         (default_child_has_registers, default_child_has_execution):
582         Delete.
583         * target.h (default_child_has_all_memory)
584         (default_child_has_memory, default_child_has_stack)
585         (default_child_has_registers, default_child_has_execution):
586         Delete.
587         * tracefile.h (tracefile_target) <has_execution>: New override.
588
589 2018-11-30  Pedro Alves  <palves@redhat.com>
590
591         * Makefile.in (COMMON_SFILES): Add process-stratum-target.c.
592         * bsd-kvm.c: Include "process-stratum-target.h".
593         (bsd_kvm_target): Now inherits from process_stratum_target.
594         (bsd_kvm_target::bsd_kvm_target): Default it.
595         * corelow.c: Include "process-stratum-target.h".
596         (core_target): Now inherits from process_stratum_target.
597         (core_target::core_target): Don't set to_stratum here.
598         * inf-child.c (inf_child_target::inf_child_target): Delete.
599         * inf-child.h: Include "process-stratum-target.h".
600         (inf_child_target): Inherit from process_stratum_target.
601         (inf_child_target) <inf_child_target>: Default it.
602         <can_async_p, supports_non_stop, supports_disable_randomization>:
603         Delete overrides.
604         * process-stratum-target.c: New file.
605         * process-stratum-target.h: New file.
606         * remote-sim.c: Include "process-stratum-target.h".
607         (gdbsim_target): Inherit from process_stratum_target.
608         <gdbsim_target>: Default it.
609         * remote.c: Include "process-stratum-target.h".
610         (remote_target): Inherit from process_stratum_target.
611         <remote_target>: Default it.
612         * target.c (default_thread_address_space)
613         (default_thread_architecture): Delete.
614         * target.h (target_ops) <thread_architecture>: Now returns NULL by
615         default.
616         <thread_address_space>: Ditto.
617         * test-target.h: Include "process-stratum-target.h" instead of
618         "target.h".
619         (test_target_ops): Inherit from process_stratum_target.
620         <test_target_ops>: Default it.
621         * tracefile.c (tracefile_target::tracefile_target): Delete.
622         * tracefile.h: Include "process-stratum-target.h".
623         (tracefile_target): Inherit from process_stratum_target.
624         <tracefile_target>: Default it.
625         * target-delegates.c: Regenerate.
626
627 2018-11-30  Pedro Alves  <palves@redhat.com>
628
629         * Makefile.in (COMMON_SFILES): Add test-target.c.
630         * gdbarch-selftests.c: Include "test-target.h".
631         * regcache.c: Include "test-target.h".
632         * target.c (test_target_info, test_target_ops::info): Move to ...
633         * test-target.c: ... this new file.
634         * target.h (test_target_ops): Move to ...
635         * test-target.h: ... this new file.
636
637 2018-11-29  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
638
639         * source.c (forward_search_command): Fix leak by using
640         xrealloc even for the first allocation in the loop, as buf
641         is static.
642
643 2018-11-29  Rajendra SY  <rajendra.sy@gmail.com>
644
645         PR gdb/23093
646         * gdb/fbsd-tdep.c (fbsd_gdb_signal_from_target)
647         (fbsd_gdb_signal_to_target): New.
648         (fbsd_init_abi): Install gdbarch "signal_from_target" and
649         "signal_to_target" methods.
650
651 2018-11-29  Tom Tromey  <tom@tromey.com>
652
653         * valarith.c (value_x_unop): Don't set argvec[3].
654
655 2018-11-26  Simon Marchi  <simon.marchi@ericsson.com>
656
657         PR gdb/23917
658         * sparc-linux-nat.c (sparc_linux_nat_target): Remove extraneous
659         semicolon.
660
661 2018-11-26  Pedro Alves  <palves@redhat.com>
662
663         * procfs.c (procfs_notice_thread): Replace uses of
664         in_thread_list/is_exited with find_thread_ptid/THREAD_EXITED.
665         * sol-thread.c (sol_thread_target::wait)
666         (sol_update_thread_list_callback): Likewise.
667
668 2018-11-25  Tom Tromey  <tom@tromey.com>
669
670         * ui-out.c (ui_out::field_fmt): Remove comment.
671         * tui/tui-out.c (tui_ui_out::do_field_fmt): Remove comment.
672         * mi/mi-out.c (mi_ui_out::do_field_fmt): Remove comment.
673
674 2018-11-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
675
676         * source.c (open_source_file): Leak fixed in '8e6a5953e1d Fix 4K
677         leak in open_source_file' has been partially undone by '2179fbc36d23
678         Return scoped_fd from open_source_file'. Re-add the transfer of
679         current s->fullname to the unique_xmalloc_ptr fullname given
680         to find_and_open_source.
681
682 2018-11-23  Pedro Alves  <palves@redhat.com>
683
684         * gdbthread.h (enum thread_state): Move comments here.
685         (is_running, is_stopped, is_exited): Remove declarations.
686
687 2018-11-22  Pedro Alves  <palves@redhat.com>
688
689         * Makefile.in (COMMON_SFILES): Add thread-iter.c.
690         * breakpoint.c (breakpoints_should_be_inserted_now): Replace
691         ALL_NON_EXITED_THREADS with all_non_exited_threads.
692         (print_one_breakpoint_location): Replace ALL_INFERIORS with
693         all_inferiors.
694         * bsd-kvm.c: Include inferior.h.
695         * btrace.c (btrace_free_objfile): Replace ALL_NON_EXITED_THREADS
696         with all_non_exited_threads.
697         * common/filtered-iterator.h: New.
698         * common/safe-iterator.h: New.
699         * corelow.c (core_target_open): Don't call init_thread_list here.
700         * darwin-nat.c (thread_info_from_private_thread_info): Replace
701         ALL_THREADS with all_threads.
702         * fbsd-nat.c (fbsd_nat_target::resume): Replace
703         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
704         * fbsd-tdep.c (fbsd_make_corefile_notes): Replace
705         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
706         * fork-child.c (postfork_hook): Don't call init_thread_list here.
707         * gdbarch-selftests.c (register_to_value_test): Adjust.
708         * gdbthread.h: Don't include "inferior.h" here.
709         (struct inferior): Forward declare.
710         (enum step_over_calls_kind): Moved here from inferior.h.
711         (thread_info::deletable): Definition moved to thread.c.
712         (find_thread_ptid (inferior *, ptid_t)): Declare.
713         (ALL_THREADS, ALL_THREADS_BY_INFERIOR, ALL_THREADS_SAFE): Delete.
714         Include "thread-iter.h".
715         (all_threads, all_non_exited_threads, all_threads_safe): New.
716         (any_thread_p): Declare.
717         (thread_list): Delete.
718         * infcmd.c (signal_command): Replace ALL_NON_EXITED_THREADS with
719         all_non_exited_threads.
720         (proceed_after_attach_callback): Delete.
721         (proceed_after_attach): Take an inferior pointer instead of an
722         integer PID.  Adjust to use range-for.
723         (attach_post_wait): Pass down inferior pointer instead of pid.
724         Use range-for instead of ALL_NON_EXITED_THREADS.
725         (detach_command): Remove init_thread_list call.
726         * inferior-iter.h: New.
727         * inferior.c (struct delete_thread_of_inferior_arg): Delete.
728         (delete_thread_of_inferior): Delete.
729         (delete_inferior, exit_inferior_1): Use range-for with
730         inf->threads_safe() instead of iterate_over_threads.
731         (inferior_appeared): Call init_thread_list here.
732         (discard_all_inferiors): Use all_non_exited_inferiors.
733         (find_inferior_id, find_inferior_pid): Use all_inferiors.
734         (iterate_over_inferiors): Use all_inferiors_safe.
735         (have_inferiors, number_of_live_inferiors): Use
736         all_non_exited_inferiors.
737         (number_of_inferiors): Use all_inferiors and std::distance.
738         (print_inferior): Use all_inferiors.
739         * inferior.h: Include gdbthread.h.
740         (enum step_over_calls_kind): Moved to gdbthread.h.
741         (struct inferior) <thread_list>: New field.
742         <threads, non_exited_threads, threads_safe>: New methods.
743         (ALL_INFERIORS): Delete.
744         Include "inferior-iter.h".
745         (ALL_NON_EXITED_INFERIORS): Delete.
746         (all_inferiors_safe, all_inferiors, all_non_exited_inferiors): New
747         functions.
748         * inflow.c (child_interrupt, child_pass_ctrlc): Replace
749         ALL_NON_EXITED_THREADS with all_non_exited_threads.
750         * infrun.c (follow_exec): Use all_threads_safe.
751         (clear_proceed_status, proceed): Use all_non_exited_threads.
752         (init_wait_for_inferior): Don't clear inline frame state here.
753         (infrun_thread_stop_requested, for_each_just_stopped_thread): Use
754         all_threads instead of ALL_NON_EXITED_THREADS.
755         (random_pending_event_thread): Use all_non_exited_threads instead
756         of ALL_NON_EXITED_THREADS.  Use a lambda for repeated code.
757         (clean_up_just_stopped_threads_fsms): Use all_non_exited_threads
758         instead of ALL_NON_EXITED_THREADS.
759         (handle_no_resumed): Use all_non_exited_threads instead of
760         ALL_NON_EXITED_THREADS.  Use all_inferiors instead of
761         ALL_INFERIORS.
762         (restart_threads, switch_back_to_stepped_thread): Use
763         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
764         * linux-nat.c (check_zombie_leaders): Replace ALL_INFERIORS with
765         all_inferiors.
766         (kill_unfollowed_fork_children): Use inf->non_exited_threads
767         instead of ALL_NON_EXITED_THREADS.
768         * linux-tdep.c (linux_make_corefile_notes): Use
769         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
770         * linux-thread-db.c (thread_db_target::update_thread_list):
771         Replace ALL_INFERIORS with all_inferiors.
772         (thread_db_target::thread_handle_to_thread_info): Use
773         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
774         * mi/mi-interp.c (multiple_inferiors_p): New.
775         (mi_on_resume_1): Simplify using all_non_exited_threads and
776         multiple_inferiors_p.
777         * mi/mi-main.c (mi_cmd_thread_list_ids): Use all_non_exited_threads
778         instead of ALL_NON_EXITED_THREADS.
779         * nto-procfs.c (nto_procfs_target::open): Don't call
780         init_thread_list here.
781         * record-btrace.c (record_btrace_target_open)
782         (record_btrace_target::stop_recording)
783         (record_btrace_target::close)
784         (record_btrace_target::record_is_replaying)
785         (record_btrace_target::resume, record_btrace_target::wait)
786         (record_btrace_target::record_stop_replaying): Use
787         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
788         * record-full.c (record_full_wait_1): Use all_non_exited_threads
789         instead of ALL_NON_EXITED_THREADS.
790         * regcache.c (cooked_read_test): Remove reference to global
791         thread_list.
792         * remote-sim.c (gdbsim_target::create_inferior): Don't call
793         init_thread_list here.
794         * remote.c (remote_target::update_thread_list): Use
795         all_threads_safe instead of ALL_NON_EXITED_THREADS.
796         (remote_target::process_initial_stop_replies): Replace
797         ALL_INFERIORS with all_non_exited_inferiors and use
798         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
799         (remote_target::open_1): Don't call init_thread_list here.
800         (remote_target::append_pending_thread_resumptions)
801         (remote_target::remote_resume_with_hc): Use all_non_exited_threads
802         instead of ALL_NON_EXITED_THREADS.
803         (remote_target::commit_resume)
804         (remote_target::remove_new_fork_children): Replace ALL_INFERIORS
805         with all_non_exited_inferiors and use all_non_exited_threads
806         instead of ALL_NON_EXITED_THREADS.
807         (remote_target::kill_new_fork_children): Use
808         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.  Remove
809         init_thread_list and init_wait_for_inferior calls.
810         (remote_target::remote_btrace_maybe_reopen)
811         (remote_target::thread_handle_to_thread_info): Use
812         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
813         * target.c (target_terminal::restore_inferior)
814         (target_terminal_is_ours_kind): Replace ALL_INFERIORS with
815         all_non_exited_inferiors.
816         * thread-iter.c: New file.
817         * thread-iter.h: New file.
818         * thread.c: Include "inline-frame.h".
819         (thread_list): Delete.
820         (clear_thread_inferior_resources): Call clear_inline_frame_state.
821         (init_thread_list): Use all_threads_safe instead of
822         ALL_THREADS_SAFE.  Adjust to per-inferior thread lists.
823         (new_thread): Adjust to per-inferior thread lists.
824         (add_thread_silent): Pass inferior to find_thread_ptid.
825         (thread_info::deletable): New, moved from the header.
826         (delete_thread_1): Adjust to per-inferior thread lists.
827         (find_thread_global_id): Use inf->threads().
828         (find_thread_ptid): Use find_inferior_ptid and pass inferior to
829         find_thread_ptid.
830         (find_thread_ptid(inferior*, ptid_t)): New overload.
831         (iterate_over_threads): Use all_threads_safe.
832         (any_thread_p): New.
833         (thread_count): Use all_threads and std::distance.
834         (live_threads_count): Use all_non_exited_threads and
835         std::distance.
836         (valid_global_thread_id): Use all_threads.
837         (in_thread_list): Use find_thread_ptid.
838         (first_thread_of_inferior): Adjust to per-inferior thread lists.
839         (any_thread_of_inferior, any_live_thread_of_inferior): Use
840         inf->non_exited_threads().
841         (prune_threads, delete_exited_threads): Use all_threads_safe.
842         (thread_change_ptid): Pass inferior pointer to find_thread_ptid.
843         (set_resumed, set_running): Use all_non_exited_threads.
844         (is_thread_state, is_stopped, is_exited, is_running)
845         (is_executing): Delete.
846         (set_executing, set_stop_requested, finish_thread_state): Use
847         all_non_exited_threads.
848         (print_thread_info_1): Use all_inferiors and all_threads.
849         (thread_apply_all_command): Use all_non_exited_threads.
850         (thread_find_command): Use all_threads.
851         (update_threads_executing): Use all_non_exited_threads.
852         * tid-parse.c (parse_thread_id): Use inf->threads.
853         * x86-bsd-nat.c (x86bsd_dr_set): Use inf->non_exited_threads ().
854
855 2018-11-22  Pedro Alves  <palves@redhat.com>
856
857         * infrun.c (follow_exec) <set follow-exec new>: Add thread and
858         switch to it before calling into try_open_exec_file.
859
860 2018-11-22  Pedro Alves  <palves@redhat.com>
861
862         * cli/cli-interp.c (cli_on_user_selected_context_changed): Use
863         inferior_thread instead of find_thread_ptid, and only when
864         inferior_ptid is not null_ptid.
865         * inferior.c (add_inferior): Don't include target_pid_to_str
866         output when the inferior is not started.
867         * python/py-inferior.c (python_on_normal_stop): Don't use
868         find_thread_ptid.
869         (tui_on_user_selected_context_changed): Use inferior_thread
870         instead of find_thread_ptid, and only when inferior_ptid is not
871         null_ptid.
872
873 2018-11-21  Benno Fünfstück  <benno.fuenfstueck@gmail.com>
874
875         PR python/23714
876         * gdb/python/python.c (execute_gdb_command): Call
877         prevent_dont_repeat earlier to avoid affecting dont_repeat.
878
879 2018-11-21  Andrew Burgess  <andrew.burgess@embecosm.com>
880
881         * Makefile.in (ALL_TARGET_OBS): Add arch/riscv.o.
882         (HFILES_NO_SRCDIR): Add arch/riscv.h.
883         * arch/riscv.c: New file.
884         * arch/riscv.h: New file.
885         * configure.tgt: Add cpu_obs list of riscv, move riscv-tdep.o into
886         this list, and add arch/riscv.o.
887         * features/Makefile: Add riscv features.
888         * features/riscv/32bit-cpu.c: New file.
889         * features/riscv/32bit-cpu.xml: New file.
890         * features/riscv/32bit-csr.c: New file.
891         * features/riscv/32bit-csr.xml: New file.
892         * features/riscv/32bit-fpu.c: New file.
893         * features/riscv/32bit-fpu.xml: New file.
894         * features/riscv/64bit-cpu.c: New file.
895         * features/riscv/64bit-cpu.xml: New file.
896         * features/riscv/64bit-csr.c: New file.
897         * features/riscv/64bit-csr.xml: New file.
898         * features/riscv/64bit-fpu.c: New file.
899         * features/riscv/64bit-fpu.xml: New file.
900         * features/riscv/rebuild-csr-xml.sh: New file.
901         * riscv-tdep.c: Add 'arch/riscv.h' include.
902         (riscv_gdb_reg_names): Delete.
903         (csr_reggroup): New global.
904         (struct riscv_register_alias): Delete.
905         (struct riscv_register_feature): New structure.
906         (riscv_register_aliases): Delete.
907         (riscv_xreg_feature): New global.
908         (riscv_freg_feature): New global.
909         (riscv_virtual_feature): New global.
910         (riscv_csr_feature): New global.
911         (riscv_create_csr_aliases): New function.
912         (riscv_read_misa_reg): Delete.
913         (riscv_has_feature): Delete.
914         (riscv_isa_xlen): Simplify, just return cached xlen.
915         (riscv_isa_flen): Simplify, just return cached flen.
916         (riscv_has_fp_abi): Update for changes in struct gdbarch_tdep.
917         (riscv_register_name): Update to make use of tdesc_register_name.
918         Look up xreg and freg names in the new globals riscv_xreg_feature
919         and riscv_freg_feature.  Don't supply csr aliases here.
920         (riscv_fpreg_q_type): Delete.
921         (riscv_register_type): Use tdesc_register_type in almost all
922         cases, override the returned type in a few specific cases only.
923         (riscv_print_one_register_info): Handle errors reading registers.
924         (riscv_register_reggroup_p): Use tdesc_register_in_reggroup_p for
925         registers that are otherwise unknown to GDB.  Also check the
926         csr_reggroup.
927         (riscv_print_registers_info): Remove assert about upper register
928         number, and use gdbarch_register_reggroup_p instead of
929         short-cutting.
930         (riscv_find_default_target_description): New function.
931         (riscv_check_tdesc_feature): New function.
932         (riscv_add_reggroups): New function.
933         (riscv_setup_register_aliases): New function.
934         (riscv_init_reggroups): New function.
935         (_initialize_riscv_tdep): Add calls to setup CSR aliases, and
936         setup register groups.  Register new riscv debug variable.
937         * riscv-tdep.h: Add 'arch/riscv.h' include.
938         (struct gdbarch_tdep): Remove abi union, and add
939         riscv_gdbarch_features field.  Remove cached quad floating point
940         type, and provide initialisation for double type field.
941         * target-descriptions.c (maint_print_c_tdesc_cmd): Add riscv to
942         the list of targets using the feature based target descriptions.
943         * NEWS: Mention target description support.
944
945 2018-11-21  Pedro Alves  <palves@redhat.com>
946
947         * valops.c (find_method_list, value_find_oload_method_list)
948         (find_overload_match, find_oload_champ): Rename parameters and
949         locals.
950
951 2018-11-21  Pedro Alves  <palves@redhat.com>
952
953         * valops.c (find_method_list): Replace pointer and length
954         parameters with an gdb::array_view.  Adjust.
955         (value_find_oload_method_list): Likewise.
956         (find_overload_match): Use gdb::array_view for methods list.
957         Adjust to find_oload_champ interface change.
958         (find_oload_champ): 'xm_worker_vec' parameter now a pointer/array.
959         'num_fns' parameter now a size_t.  Eliminate 'fn_count' local.
960
961 2018-11-21  Pedro Alves  <palves@redhat.com>
962
963         * gdbtypes.c (compare_badness): Change type of parameters to const
964         reference.  Adjust to badness_vector being a std::vector now.
965         (rank_function): Adjust to badness_vector being a std::vector now.
966         * gdbtypes.h (badness_vector): Now a typedef to std::vector.
967         (LENGTH_MATCH): Delete.
968         (compare_badness): Change type of parameters to const reference.
969         (rank_function): Return a badness_vector by value now.
970         (find_overload_match): Adjust to badness_vector being a
971         std::vector now.  Remove cleanups.
972         (find_oload_champ_namespace): 'oload_champ_bv' parameter now a
973         badness_vector pointer.
974         (find_oload_champ_namespace_loop): 'oload_champ_bv' parameter now
975         a badness_vector pointer.  Adjust to badness_vector being a
976         std::vector now.  Remove cleanups.
977         (find_oload_champ): 'oload_champ_bv' parameter now
978         a badness_vector pointer.  Adjust to badness_vector being a
979         std::vector now.  Remove cleanups.
980
981 2018-11-21  Pedro Alves  <palves@redhat.com>
982
983         * cp-support.c (sym_return_val_size, sym_return_val_index)
984         (sym_return_val): Delete.
985         (overload_list_add_symbol): Add std::vector parameter.  Adjust to
986         add to the vector.
987         (make_symbol_overload_list): Adjust to return a std::vector
988         instead of maintaining a global open coded vector.
989         (make_symbol_overload_list_block): Add std::vector parameter.
990         (make_symbol_overload_list_block): Rename to ...
991         (add_symbol_overload_list_block): ... this and add std::vector
992         parameter.
993         (make_symbol_overload_list_namespace): Rename to ...
994         (add_symbol_overload_list_namespace): ... this and add std::vector
995         parameter.
996         (make_symbol_overload_list_adl_namespace): Rename to ...
997         (add_symbol_overload_list_adl_namespace): ... this and add
998         std::vector parameter.
999         (make_symbol_overload_list_adl): Delete.
1000         (add_symbol_overload_list_adl): New.
1001         (make_symbol_overload_list_using): Rename to ...
1002         (add_symbol_overload_list_using): ... this and add std::vector
1003         parameter.
1004         (make_symbol_overload_list_qualified): Rename to ...
1005         (add_symbol_overload_list_qualified): ... this and add std::vector
1006         parameter.
1007         * cp-support.h: Include "common/array-view.h" and <vector>.
1008         (make_symbol_overload_list): Change return type to std::vector.
1009         (make_symbol_overload_list_adl): Delete declaration.
1010         (add_symbol_overload_list_adl): New declaration.
1011         * valops.c (find_overload_match): Local 'oload_syms' now a
1012         std::vector.
1013         (find_oload_champ_namespace): 'oload_syms' parameter now a
1014         std::vector pointer.
1015         (find_oload_champ_namespace_loop): 'oload_syms' parameter now a
1016         std::vector pointer.  Adjust to new make_symbol_overload_list
1017         interface.
1018
1019 2018-11-21  Pedro Alves  <palves@redhat.com>
1020
1021         * common/array-view.h (array_view::splice(size_type, size_t)): New.
1022         (array_view::splice(size_type)): New.
1023         * eval.c (eval_call, evaluate_funcall): Adjust to use array_view.
1024         * extension.c (xmethod_worker::get_arg_types): Adjust to return an
1025         std::vector.
1026         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
1027         * extension.h: Include "common/array-view.h".
1028         (xmethod_worker::invoke): Adjust to use gdb::array_view.
1029         (xmethod_worker::get_arg_types): Adjust to return an std::vector.
1030         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
1031         (xmethod_worker::do_get_arg_types): Adjust to use std::vector.
1032         (xmethod_worker::do_get_result_type): Adjust to use
1033         gdb::array_view.
1034         * gdbtypes.c (rank_function): Adjust to use gdb::array_view.
1035         * gdbtypes.h: Include "common/array-view.h".
1036         (rank_function): Adjust to use gdb::array_view.
1037         * python/py-xmethods.c (python_xmethod_worker::invoke)
1038         (python_xmethod_worker::do_get_arg_types)
1039         (python_xmethod_worker::do_get_result_type)
1040         (python_xmethod_worker::invoke): Adjust to new interfaces.
1041         * valarith.c (value_user_defined_cpp_op, value_user_defined_op)
1042         (value_x_binop, value_x_unop): Adjust to use gdb::array_view.
1043         * valops.c (find_overload_match, find_oload_champ_namespace)
1044         (find_oload_champ_namespace_loop, find_oload_champ): Adjust to use
1045         gdb:array_view and the new xmethod_worker interfaces.
1046         * value.c (result_type_of_xmethod, call_xmethod): Adjust to use
1047         gdb::array_view.
1048         * value.h (find_overload_match, result_type_of_xmethod)
1049         (call_xmethod): Adjust to use gdb::array_view.
1050         * unittests/array-view-selftests.c: Add slicing tests.
1051
1052 2018-11-21  Pedro Alves  <palves@redhat.com>
1053
1054         * ada-lang.c (ada_evaluate_subexp): Adjust to pass an array_view.
1055         * common/array-view.h (make_array_view): New.
1056         * compile/compile-object-run.c (compile_object_run): Adjust to
1057         pass an array_view.
1058         * elfread.c (elf_gnu_ifunc_resolve_addr): Adjust.
1059         * eval.c (eval_call): Adjust to pass an array_view.
1060         (evaluate_subexp_standard): Adjust to pass an array_view.
1061         * gcore.c (call_target_sbrk): Adjust to pass an array_view.
1062         * guile/scm-value.c (gdbscm_value_call): Likewise.
1063         * infcall.c (push_dummy_code): Replace pointer + size parameters
1064         with an array_view parameter.
1065         (call_function_by_hand, call_function_by_hand_dummy): Likewise and
1066         adjust.
1067         * infcall.h: Include "common/array-view.h".
1068         (call_function_by_hand, call_function_by_hand_dummy): Replace
1069         pointer + size parameters with an array_view parameter.
1070         * linux-fork.c (inferior_call_waitpid): Adjust to use array_view.
1071         * linux-tdep.c (linux_infcall_mmap): Likewise.
1072         * objc-lang.c (lookup_objc_class, lookup_child_selector)
1073         (value_nsstring, print_object_command): Likewise.
1074         * python/py-value.c (valpy_call): Likewise.
1075         * rust-lang.c (rust_evaluate_funcall): Likewise.
1076         * spu-tdep.c (flush_ea_cache): Likewise.
1077         * valarith.c (value_x_binop, value_x_unop): Likewise.
1078         * valops.c (value_allocate_space_in_inferior): Likewise.
1079         * unittests/array-view-selftests.c (run_tests): Add
1080         gdb::make_array_view test.
1081
1082 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
1083
1084         * cli-out.c (cli_ui_out::do_field_int): Use string_printf rather
1085         than a fixed size buffer.
1086
1087 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
1088
1089         * breakpoint.c (print_one_breakpoint_location): Reduce whitespace,
1090         and remove insertion of extra spaces in GDB's output.
1091         * cli-out.c (cli_ui_out::do_field_fmt): Update header comment.
1092         Layout field into a temporary buffer, and then output it as a
1093         string field.
1094
1095 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1096
1097         * NEWS: Document the language choice done by
1098         'info [types|functions|variables]|rbreak'.
1099
1100 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1101
1102         * symtab.c (treg_matches_sym_type_name): Use
1103         scoped_switch_to_sym_language_if_auto instead of local logic.
1104         (print_symbol_info): Use scoped_switch_to_sym_language_if_auto
1105         to switch to SYM language when language mode is auto.
1106
1107 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1108
1109         * language.h (scoped_switch_to_sym_language_if_auto): New class.
1110
1111 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1112
1113         * symtab.c (search_symbols): Properly check absence of type regexp
1114         before entering the loop scanning the minimal symbols.
1115
1116 2018-11-20  John Darrington  <john@darrington.wattle.id.au>
1117
1118         * s12z-tdep.c (s12z_extract_return_value): New function.
1119         (inv_reg_perm) New array.
1120         (s12z_return_value): Populate readbuf if non-null.
1121
1122 2018-11-20  Eli Zaretskii  <eliz@gnu.org>
1123
1124         * common/filestuff.c (gdb_fopen_cloexec): Disable use of "e" mode
1125         with 'fopen' also if O_CLOEXEC is equal to O_NOINHERIT, to cater
1126         to MinGW fixed by Gnulib.
1127         (O_NOINHERIT): Define if not defined.
1128
1129 2018-11-19  John Darrington  <john@darrington.wattle.id.au>
1130
1131         * s12z-tdep.c (s12z_frame_cache): Add an assertion.
1132
1133 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
1134
1135         * infrun.c (displaced_step_inferior_state) <next>: Remove.
1136
1137 2018-11-19  Tom Tromey  <tom@tromey.com>
1138
1139         * source.c (get_filename_and_charpos): Return void.
1140
1141 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
1142
1143         * skip.c (_initialize_step_skip): Fix "info skip" help.
1144
1145 2018-11-16  Tom Tromey  <tom@tromey.com>
1146
1147         PR rust/23625:
1148         * rust-lang.c (rust_internal_print_type): Handle TYPE_CODE_PTR.
1149
1150 2018-11-19  Simon Marchi  <simon.marchi@ericsson.com>
1151
1152         * infrun.c (displaced_step_inferior_states): Change type to
1153         std::forward_list.
1154         (get_displaced_stepping_state): Adjust.
1155         (displaced_step_in_progress_any_inferior): Adjust.
1156         (add_displaced_stepping_state): Adjust.
1157         (remove_displaced_stepping_state): Adjust.
1158
1159 2018-11-18  Tom Tromey  <tom@tromey.com>
1160
1161         PR build/23814:
1162         * target-delegates.c: Rebuild.
1163         * ia64-linux-nat.c (class ia64_linux_nat_target)
1164         <have_steppable_watchpoint>: Use override.  Return true, not 1.
1165         (ia64_linux_nat_target::can_use_hw_breakpoint): Rename.  Remove
1166         "self" argument.
1167         (ia64_linux_nat_target::low_new_thread): Rename.
1168         (class ia64_linux_nat_target) <read_description>: Don't declare.
1169         * target.h (struct target_ops) <have_steppable_watchpoint>: Return
1170         bool.
1171
1172 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1173
1174         PR gdb/22736:
1175         * aarch64-tdep.c (aarch64_push_dummy_call): Remove
1176         lang_struct_return code.
1177
1178 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1179
1180         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
1181         return_method.
1182         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
1183         * amd64-tdep.c (amd64_push_arguments): Likewise.
1184         (amd64_push_dummy_call): Likewise.
1185         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
1186         * arc-tdep.c (arc_push_dummy_call): Likewise.
1187         * arm-tdep.c (arm_push_dummy_call): Likewise.
1188         * avr-tdep.c (avr_push_dummy_call): Likewise.
1189         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
1190         * cris-tdep.c (cris_push_dummy_call): Likewise.
1191         * csky-tdep.c (csky_push_dummy_call): Likewise.
1192         * frv-tdep.c (frv_push_dummy_call): Likewise.
1193         * gdbarch.c: Regenerate.
1194         * gdbarch.h: Regenerate.
1195         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
1196         return_method.
1197         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
1198         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
1199         (hppa64_push_dummy_call): Likewise.
1200         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
1201         * i386-tdep.c (i386_push_dummy_call): Likewise.
1202         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
1203         * infcall.c (call_function_by_hand_dummy): Likewise.
1204         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
1205         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
1206         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
1207         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
1208         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
1209         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
1210         * mep-tdep.c (mep_push_dummy_call): Likewise.
1211         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
1212         (mips_n32n64_push_dummy_call): Likewise.
1213         (mips_o32_push_dummy_call): Likewise.
1214         (mips_o64_push_dummy_call): Likewise.
1215         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
1216         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
1217         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
1218         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
1219         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
1220         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
1221         (ppc64_sysv_abi_push_dummy_call): Likewise.
1222         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
1223         (ppc64_sysv_abi_push_dummy_call): Likewise.
1224         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
1225         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
1226         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
1227         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
1228         * rx-tdep.c (rx_push_dummy_call): Likewise.
1229         * s390-tdep.c (s390_push_dummy_call): Likewise.
1230         * score-tdep.c (score_push_dummy_call): Likewise.
1231         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
1232         (sh_push_dummy_call_nofpu): Likewise.
1233         * sparc-tdep.c (sparc32_store_arguments): Likewise.
1234         (sparc32_push_dummy_call): Likewise.
1235         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
1236         (sparc64_push_dummy_call): Likewise.
1237         * spu-tdep.c (spu_push_dummy_call): Likewise.
1238         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
1239         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
1240         * v850-tdep.c (v850_push_dummy_call): Likewise.
1241         * vax-tdep.c (vax_push_dummy_call): Likewise.
1242         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
1243         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
1244
1245 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1246
1247         * gdbarch.sh (enum function_call_return_method): Add enum.
1248         * gdbarch.h: Regenerate.
1249         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
1250
1251 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
1252
1253         * unittests/copy_bitwise-selftests.c: New file.
1254         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
1255         (selftests::copy_bitwise_tests): Delete, moving this code to
1256         unittests/copy_bitwise-selftests.c instead.
1257         (_initialize_utils): Do not register copy_bitwise tests.
1258         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1259         unittests/copy_bitwise-selftests.c.
1260
1261 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
1262
1263         * ada-lang.c (move_bits): Delete. Update all callers to use
1264         copy_bitwise instead.
1265         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
1266         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
1267         Move from here to utils.c.
1268         (_initialize_dwarf2loc): Remove call to register copy_bitwise
1269         selftests.
1270         * utils.h (copy_bitwise): Add declaration.
1271         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
1272         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
1273         Moved here from dwarf2loc.c.
1274         (_initialize_utils): Register copy_bitwise selftests.
1275
1276 2018-11-14  Jim Wilson  <jimw@sifive.com>
1277
1278         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
1279         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
1280         then increment next_regnum if odd.
1281         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
1282         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
1283         function type.  Pass new arg to riscv_arg_location based on function
1284         type.
1285         (riscv_return_value): Pass new arg to riscv_arg_location.
1286
1287         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
1288         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
1289         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
1290
1291         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
1292         setting len.  New local align, set to max of arg align and xlen,
1293         and pass to first riscv_assign_stack_location call.
1294
1295 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
1296
1297         * skip.c (complete_skip_number): New function.
1298         (_initialize_step_skip): Add completers to some skip commands.
1299
1300 2018-11-09  Tom Tromey  <tom@tromey.com>
1301
1302         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
1303         (struct remote_g_packet_data): Derive from allocate_on_obstack.
1304         <guesses>: Now a std::vector.
1305         (remote_g_packet_data_init, register_remote_g_packet_guess):
1306         Update.
1307         (remote_read_description_p): Update.  Return bool.
1308         (remote_target::read_description): Update.
1309         (struct remote_g_packet_guess): Add constructor.
1310
1311 2018-11-09  Tom Tromey  <tom@tromey.com>
1312
1313         * common/scoped_fd.h (class scoped_fd): Add move constructor and
1314         move assignment operator.
1315         * psymtab.c (psymtab_to_fullname): Update.
1316         * source.h (open_source_file): Return scoped_fd.
1317         (find_and_open_source): Likewise.
1318         * source.c (open_source_file): Return scoped_fd.
1319         (get_filename_and_charpos): Update.
1320         (print_source_lines_base): Update.  Use scoped_fd::to_file.
1321         (forward_search_command): Likewise.
1322         (reverse_search_command): Likewise.
1323         (find_and_open_source): Return scoped_fd.
1324         * tui/tui-source.c (tui_set_source_content): Update.  Use
1325         gdb_file_up.
1326
1327 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
1328
1329         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
1330         overflow.
1331
1332 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1333
1334         * configure: Regenerate.
1335
1336 2018-11-09  Tom de Vries  <tdevries@suse.de>
1337
1338         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
1339         unconditionally, to set the language of the symbol.  Manage freeing
1340         returned pointer using gdb::unique_xmalloc_ptr.
1341
1342 2018-11-08  Tom Tromey  <tom@tromey.com>
1343
1344         * record.c (require_record_target): Upper-case "<TAB>".
1345
1346 2018-11-08  Tom Tromey  <tom@tromey.com>
1347
1348         * python/lib/gdb/command/pretty_printers.py
1349         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
1350
1351 2018-11-08  Tom Tromey  <tom@tromey.com>
1352
1353         PR gdb/23555:
1354         PR gdb/23838:
1355         * target.h (target_supports_terminal_ours): Return bool.
1356         * target.c (target_supports_terminal_ours): Handle case where
1357         current_top_target returns nullptr.  Return bool.
1358
1359 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
1360
1361         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
1362         return the correct count for potential HFAs.
1363
1364 2018-11-08  Jan Beulich  <jbeulich@suse.com>
1365
1366         * i387-tdep.c (i387_supply_xsave): Split handling of
1367         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
1368         (i387_collect_xsave): Likewise.
1369
1370 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
1371
1372         * riscv-tdep.c (riscv_insn::decode): Update header comment.
1373         (riscv_frame_this_id): Catch errors thrown while building the
1374         frame cache, leave the frame id as the default, which is the outer
1375         frame id.
1376
1377 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
1378
1379         * ada-lang.c (read_atcb): Only set task_info->called_task if
1380         task_info->state == Entry_Caller_Sleep.
1381         (print_ada_task_info): Do not check task_info->state before
1382         checking task_info->called_task.
1383         (info_task): Likewise.
1384
1385 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
1386
1387         * ada-tasks.c (read_atcb): Clear task_info before computing
1388         the value of each of its fields.
1389
1390 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
1391
1392         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
1393         NULL before dereferencing it.
1394
1395 2018-11-06  Tom de Vries  <tdevries@suse.de>
1396
1397         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
1398         program headers.
1399
1400 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
1401
1402         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
1403         so that it applies to uclinux as well.
1404
1405 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
1406
1407         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
1408         when on AAPCS.
1409
1410 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
1411
1412         * riscv-fbsd-nat.c (getregs_supplies): Return true for
1413         RISCV_CSR_SSTATUS_REGNUM.
1414
1415 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1416
1417         * source.c (open_source_file): Fix leak by transferring the
1418         current s->fullname to the unique_xmalloc_ptr fullname given
1419         to find_and_open_source.
1420
1421 2018-11-04  Tom Tromey  <tom@tromey.com>
1422
1423         * varobj.c (install_default_visualizer): Update.
1424         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
1425         Return gdbpy_ref.
1426         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
1427         (find_pretty_printer_from_progspace)
1428         (find_pretty_printer_from_gdb, find_pretty_printer)
1429         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
1430         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
1431         Update.
1432
1433 2018-11-04  Tom Tromey  <tom@tromey.com>
1434
1435         * python/python.c (gdbpy_parameter_value): Update.
1436         * python/python-internal.h (python_string_to_unicode)
1437         (python_string_to_target_python_string)
1438         (host_string_to_python_string): Return gdbpy_ref.
1439         * python/py-utils.c (python_string_to_unicode)
1440         (unicode_to_encoded_python_string)
1441         (unicode_to_target_python_string)
1442         (python_string_to_target_string)
1443         (python_string_to_target_python_string): Return gdbpy_ref.
1444         (python_string_to_host_string): Update.
1445         (host_string_to_python_string): Return gdbpy_ref.
1446         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
1447         (stpy_fullname): Update.
1448         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
1449         Update.
1450         * python/py-prettyprint.c (print_string_repr): Update.
1451         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
1452         (objfpy_get_build_id): Update.
1453         * python/py-breakpoint.c (bppy_get_location)
1454         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
1455         Update.
1456
1457 2018-11-04  Tom Tromey  <tom@tromey.com>
1458
1459         * python/python-internal.h (gdb_py_object_from_longest)
1460         (gdb_py_object_from_ulongest): Return gdbpy_ref.
1461         * python/py-value.c (valpy_int): Update.
1462         * python/py-utils.c (gdb_py_object_from_longest): Return
1463         gdbpy_ref.
1464         (gdb_py_object_from_ulongest): Likewise.
1465         * python/py-type.c (typy_get_alignof): Update.
1466         * python/py-linetable.c (ltpy_get_all_source_lines)
1467         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
1468         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
1469
1470 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1471
1472         * ada-lang.c (_initialize_ada_language): Fix typo.
1473
1474 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1475
1476         * language.c (type): Remove.
1477         (_initialize_language): Remove assignment to type.
1478
1479 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
1480
1481         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
1482         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
1483         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
1484         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
1485         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
1486         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
1487         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
1488         and aarch64-ravenscar-thread.o.
1489         * NEWS: Add entry documenting Ravenscar tasking support
1490         on AArch64 ELF.
1491
1492 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
1493
1494         * symtab.c (info_functions_command): Initialize quiet flag.
1495         * stack.c (info_args_command): Likewise.
1496
1497 2018-11-01  Jim Wilson  <jimw@sifive.com>
1498
1499         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
1500         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
1501         debugging messages.
1502
1503 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1504
1505         * ada-lang.c (ada_watch_location_expression): New function.
1506         (ada_language_defn): Set la_watch_location_expression to
1507         ada_watch_location_expression.
1508
1509 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1510
1511         * print-utils.c (int_string): Remove unnecessary trailing spaces.
1512
1513 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1514
1515         * rs6000-tdep.c (skip_prologue): Fix potential negative left
1516         shifting.
1517
1518 2018-11-01  Jerome Guitton  <guitton@adacore.com>
1519             Joel Brobecker  <brobecker@adacore.com>
1520
1521         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
1522         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
1523         * arm-pikeos-tdep.c: New file.
1524         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
1525         embedded system.
1526         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
1527
1528 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
1529
1530         * common/pathstuff.c (get_standard_temp_dir): New.
1531         * common/pathstuff.h (get_standard_temp_dir): New.
1532         * config.in: Re-generate.
1533         * configure: Re-generate.
1534         * configure.ac: Don't check for mkdtemp.
1535         * gnulib/aclocal-m4-deps.mk: Re-generate.
1536         * gnulib/aclocal.m4: Re-generate.
1537         * gnulib/config.in: Re-generate.
1538         * gnulib/configure: Re-generate.
1539         * gnulib/import/Makefile.am: Re-generate.
1540         * gnulib/import/Makefile.in: Re-generate.
1541         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1542         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1543         * gnulib/import/m4/mkdtemp.m4: New file.
1544         * gnulib/import/mkdtemp.c: New file.
1545         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
1546         Add mkdtemp module.
1547         * unittests/mkdir-recursive-selftests.c (test): Use
1548         get_standard_temp_dir.
1549         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
1550         ifdef.
1551         * compile/compile.c (get_compile_file_tempdir): Likewise.
1552
1553 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1554
1555         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
1556         (SIG_FRAME_LR_OFFSET64): New define.
1557         (SIG_FRAME_FP_OFFSET64): New define.
1558         (aix_sighandle_frame_cache): New Function.
1559         (aix_sighandle_frame_this_id): New Function.
1560         (aix_sighandle_frame_prev_register): New Function.
1561         (aix_sighandle_frame_sniffer): New Function.
1562         (aix_sighandle_frame_unwind): New global variable.
1563         (rs6000_aix_init_osabi): Install new frame unwinder.
1564
1565 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
1566
1567         PR gdb/23835
1568         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
1569         already defined.
1570
1571 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1572
1573         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
1574
1575 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
1576
1577         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
1578         (producer_is_icc): New function.
1579         (check_producer): Set producer_is_icc field on dwarf2_cu.
1580         (dwarf2_init_integer_type): New function.
1581         (read_base_type): Call dwarf2_init_integer_type instead of
1582         init_integer_type in all cases.
1583         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
1584         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
1585         LEN is greater than 0.
1586
1587 2018-10-30  Tom Tromey  <tom@tromey.com>
1588
1589         * main.c (captured_main_1): Check return value of bfd_init.
1590
1591 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1592
1593         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
1594         Adjust comments.
1595
1596 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1597
1598         * procfs.c: Include common/pathstuff.h.
1599
1600 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1601
1602         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1603         Add missing braces.  No functional change.
1604
1605 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1606
1607         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
1608         to report a bad option and fix indentation.
1609         * demangle.c (demangle_command): Use report_unrecognized_option_error
1610         to report a bad option and correctly report the bad option.
1611
1612 2018-10-27  Tom Tromey  <tom@tromey.com>
1613
1614         PR cli/23364:
1615         * darwin-nat.c (copied_shell): New global.
1616         (may_have_sip): Rename from should_disable_startup_with_shell.
1617         (copy_shell_to_cache, maybe_cache_shell): New functions.
1618         (darwin_nat_target::create_inferior): Update.  Use
1619         copied_shell.
1620
1621 2018-10-27  Tom Tromey  <tom@tromey.com>
1622
1623         * unittests/scoped_fd-selftests.c (test_to_file): New function.
1624         (run_tests): Call test_to_file.
1625         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
1626         temporary files.
1627         * common/scoped_fd.h (scoped_fd::to_file): New method.
1628
1629 2018-10-27  Tom Tromey  <tom@tromey.com>
1630
1631         * unittests/scoped_mmap-selftests.c (test_normal): Use
1632         gdb_mkostemp_cloexec.
1633         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
1634         Use gdb_mkostemp_cloexec.
1635         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
1636         gnulib/config.in, gnulib/configure,
1637         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
1638         gnulib/import/m4/gnulib-cache.m4,
1639         gnulib/import/m4/gnulib-comp.m4: Update.
1640         * gnulib/import/m4/mkostemp.m4: New file.
1641         * gnulib/import/m4/mkstemp.m4: Remove.
1642         * gnulib/import/mkostemp.c: New file.
1643         * gnulib/import/mkstemp.m4: Remove.
1644         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
1645         mkstemp, add mkostemp.  Apply new patch.
1646         * gnulib/import/stdlib.in.h: Apply patch.
1647         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
1648         New file.
1649         * dwarf-index-write.c (write_psymtabs_to_index): Use
1650         gdb_mkostemp_cloexec.
1651         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
1652
1653 2018-10-27  Tom Tromey  <tom@tromey.com>
1654
1655         * unittests/mkdir-recursive-selftests.c: New file.
1656         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1657         unittests/mkdir-recursive-selftests.c.
1658         * dwarf-index-cache.c (mkdir_recursive): Move to
1659         common/filestuff.c.
1660         (index_cache::store): Check return value of mkdir_recursive.
1661         (create_dir_and_check, test_mkdir_recursive): Move to new file.
1662         (_initialize_index_cache): Don't register test.
1663         * common/filestuff.h (mkdir_recursive): Declare.
1664         * common/filestuff.c (mkdir_recursive): Move from
1665         dwarf-index-cache.c.  Return bool.
1666
1667 2018-10-27  Tom Tromey  <tom@tromey.com>
1668
1669         * dwarf-index-write.c (write_psymtabs_to_index): Move
1670         make_temp_filename to common/pathstuff.c.
1671         * common/pathstuff.h (make_temp_filename): Declare.
1672         * common/pathstuff.c (make_temp_filename): New function, moved
1673         from dwarf-index-write.c.
1674
1675 2018-10-27  Tom Tromey  <tom@tromey.com>
1676
1677         * procfs.c (procfs_target::create_inferior): Use get_shell.
1678         * cli/cli-cmds.c (shell_escape): Use get_shell.
1679         * windows-nat.c (windows_nat_target::create_inferior): Use
1680         get_shell.
1681         * common/pathstuff.c (get_shell): New function.
1682         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
1683         (fork_inferior): Use get_shell.
1684         * common/pathstuff.h (get_shell): Declare.
1685
1686 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1687
1688         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
1689
1690 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1691
1692         * stack.c (print_variable_and_value_data): Add preg and treg.
1693         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
1694         and update callers.
1695         (print_frame_arg_vars): Likewise.
1696         (prepare_reg): New function.
1697         (info_locals_command): Extract info print args and use them.
1698         (info_args_command): Likewise.
1699         (_initialize_stack): Modify on-line help.
1700         * symtab.c (treg_matches_sym_type_name): New function.
1701         (search_symbols): New arg t_regexp.
1702         (symtab_symbol_info): New args quiet, regexp, t_regexp.
1703         (info_variables_command): Extract info print args and use them.
1704         (info_functions_command): Likewise.
1705         (info_types_command): Update call to symtab_symbol_info.
1706         (_initialize_symtab): Modify on-line help.
1707         * symtab.h (treg_matches_sym_type_name): New function.
1708         (search_symbols): New t_regexp arg.
1709
1710 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1711
1712         * cli-utils.c (extract_arg_maybe_quoted): New function.
1713         (extract_info_print_args): New function.
1714         (info_print_args_help): New function.
1715         (report_unrecognized_option_error): New function.
1716         * cli-utils.h (extract_arg_maybe_quoted): New function.
1717         (extract_info_print_args): New function.
1718         (info_print_args_help): New function.
1719         (report_unrecognized_option_error): New function.
1720
1721 2018-10-26  Tom Tromey  <tom@tromey.com>
1722
1723         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
1724         (compute_compunit_symtab_includes): Update.
1725         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
1726         (compunit_symtab_ptr): Likewise.
1727
1728 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1729
1730         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
1731         default_print_auxv_entry for specific tag values.
1732
1733 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1734
1735         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
1736
1737 2018-10-26  Jim Wilson  <jimw@sifive.com>
1738
1739         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
1740         (riscv_linux_sigframe_init): Declare.
1741         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
1742         (riscv_linux_sigframe): New.
1743         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
1744         (riscv_linux_sigframe_init): Define.
1745         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
1746
1747         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
1748         (riscv_isa_flen): Likewise.  Drop static.
1749         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
1750         (riscv_isa_flen): Likewise.  Declare.
1751
1752 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1753             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1754
1755         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
1756         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
1757         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
1758         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
1759         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
1760         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
1761         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
1762         Define.
1763         (struct ppc_linux_features) <htm>: New field.
1764         (ppc_linux_no_features): Add initializer for htm field.
1765         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1766         new tdescs.
1767         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
1768         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
1769         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
1770         Define if not already defined.
1771         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
1772         and rs6000/powerpc-isa207-htm-vsx64l.
1773         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
1774         rs6000/powerpc-isa207-htm-vsx64l.xml.
1775         * features/rs6000/power-htm-spr.xml: New file.
1776         * features/rs6000/power-htm-core.xml: New file.
1777         * features/rs6000/power64-htm-core.xml: New file.
1778         * features/rs6000/power-htm-fpu.xml: New file.
1779         * features/rs6000/power-htm-altivec.xml: New file.
1780         * features/rs6000/power-htm-vsx.xml: New file.
1781         * features/rs6000/power-htm-ppr.xml: New file.
1782         * features/rs6000/power-htm-dscr.xml: New file.
1783         * features/rs6000/power-htm-tar.xml: New file.
1784         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
1785         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
1786         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
1787         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
1788         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
1789         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
1790         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1791         fetch_regset with HTM regsets.
1792         (store_register, store_ppc_registers): Call store_regset with HTM
1793         regsets.
1794         (ppc_linux_nat_target::read_description): Set htm field in the
1795         features struct if needed.
1796         * ppc-linux-tdep.c: Include
1797         features/rs6000/powerpc-isa207-htm-vsx32l.c and
1798         features/rs6000/powerpc-isa207-htm-vsx64l.c.
1799         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
1800         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
1801         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
1802         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
1803         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
1804         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
1805         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
1806         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
1807         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
1808         (ppc32_linux_ctarregset): New globals.
1809         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
1810         (ppc_linux_collect_core_cpgrregset): New function.
1811         (ppc_linux_iterate_over_regset_sections): Call back with the htm
1812         regsets.
1813         (ppc_linux_core_read_description): Check if the tm spr section is
1814         present and set htm in the features struct.
1815         (_initialize_ppc_linux_tdep): Call
1816         initialize_tdesc_powerpc_isa207_htm_vsx32l and
1817         initialize_tdesc_powerpc_isa207_htm_vsx64l.
1818         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
1819         Declare.
1820         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
1821         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
1822         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
1823         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
1824         New fields.
1825         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
1826         Likewise.
1827         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
1828         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
1829         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
1830         New enum fields.
1831         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
1832         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
1833         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
1834         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
1835         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
1836         <PPC_CTAR_REGNUM>: Likewise.
1837         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
1838         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
1839         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
1840         (IS_CEFP_PSEUDOREG): Define.
1841         (rs6000_register_name): Hide the upper halves of checkpointed VSX
1842         registers.  Return names for the checkpointed DFP, VSX, and EFP
1843         pseudo registers.
1844         (rs6000_pseudo_register_type): Remove initial assert and raise an
1845         internal error in the else clause instead.  Return types for the
1846         checkpointed DFP, VSX, and EFP pseudo registers.
1847         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
1848         checkpointed DFP pseudo registers.
1849         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
1850         checkpointed VSX pseudo registers.
1851         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
1852         from efpr_pseudo_register_read and
1853         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
1854         registers.
1855         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
1856         Handle checkpointed DFP, VSX, and EFP registers.
1857         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
1858         (efp_ax_pseudo_register_collect): New functions.
1859         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
1860         register logic to new functions.  Handle checkpointed DFP, VSX,
1861         and EFP pseudo registers.
1862         (rs6000_gdbarch_init): Look for and validate the htm features.
1863         Include checkpointed DFP, VSX and EFP pseudo-registers.
1864         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
1865         HTM registers.
1866
1867 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1868
1869         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
1870         without altivec or fpu.
1871
1872 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1873             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1874
1875         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
1876         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
1877         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
1878         Define if not already defined.
1879         * features/rs6000/power-ebb.xml: New file.
1880         * features/rs6000/power-linux-pmu.xml: New file.
1881         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
1882         features.
1883         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
1884         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
1885         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
1886         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
1887         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
1888         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1889         fetch_regset with ebb and pmu regsets.
1890         (store_register, store_ppc_registers): Call store_regset with ebb
1891         and pmu regsets.
1892         (ppc_linux_nat_target::read_description): Set isa207 field in the
1893         features struct if ebb and pmu are avaiable.
1894         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
1895         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
1896         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
1897         and pmu regsets.
1898         (ppc_linux_core_read_description): Check if the pmu section is
1899         present and set isa207 in the features struct.
1900         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
1901         (ppc32_linux_pmuregset): Declare.
1902         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
1903         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
1904         <ppc_sier_regnum>: New field.
1905         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
1906         New enum values.
1907         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
1908         values.
1909         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
1910         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
1911         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
1912         ebb and pmu features.
1913
1914 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1915             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1916
1917         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
1918         (tdesc_powerpc_isa207_vsx64l): Declare.
1919         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
1920         (struct ppc_linux_features) <isa207>: New field.
1921         (ppc_linux_no_features): Add initializer for isa207 field.
1922         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1923         new tdescs.
1924         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
1925         (NT_PPC_TAR): Define if not already defined.
1926         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
1927         rs6000/powerpc-isa207-vsx64l.
1928         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
1929         rs6000/powerpc-isa207-vsx64l.xml.
1930         * features/rs6000/power-tar.xml: New file.
1931         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
1932         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
1933         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
1934         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
1935         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
1936         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
1937         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1938         fetch_regset with the TAR regset.
1939         (store_register, store_ppc_registers): Call store_regset with the
1940         TAR regset.
1941         (ppc_linux_nat_target::read_description): Set isa207 field in the
1942         features struct if needed.
1943         * ppc-linux-tdep.c: Include
1944         features/rs6000/powerpc-isa207-vsx32l.c and
1945         features/rs6000/powerpc-isa207-vsx64l.c.
1946         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
1947         (ppc_linux_iterate_over_regset_sections): Call back with the tar
1948         regset.
1949         (ppc_linux_core_read_description): Check if the tar section is
1950         present and set isa207 in the features struct.
1951         (_initialize_ppc_linux_tdep): Call
1952         initialize_tdesc_powerpc_isa207_vsx32l and
1953         initialize_tdesc_powerpc_isa207_vsx64l.
1954         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
1955         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
1956         (enum) <PPC_TAR_REGNUM>: New enum value.
1957         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
1958         feature.
1959         (ppc_process_record_op31): Record changes to TAR.
1960
1961 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1962             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1963
1964         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
1965         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
1966         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
1967         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
1968         (struct ppc_linux_features) <ppr_dscr>: New field.
1969         (ppc_linux_no_features): Add initializer for ppr_dscr field.
1970         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1971         new tdescs.
1972         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
1973         Define if not already defined.
1974         * features/Makefile (WHICH): Add
1975         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
1976         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
1977         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
1978         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
1979         * features/rs6000/power-dscr.xml: New file.
1980         * features/rs6000/power-ppr.xml: New file.
1981         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
1982         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
1983         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
1984         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
1985         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
1986         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
1987         * ppc-linux-nat.c: Include <sys/uio.h>.
1988         (fetch_regset, store_regset, check_regset): New functions.
1989         (fetch_register, fetch_ppc_registers): Call fetch_regset with
1990         DSCR and PPR regsets.
1991         (store_register, store_ppc_registers): Call store_regset with
1992         DSCR and PPR regsets.
1993         (ppc_linux_get_hwcap2): New function.
1994         (ppc_linux_nat_target::read_description): Call
1995         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
1996         features struct if needed.
1997         * ppc-linux-tdep.c: Include
1998         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
1999         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
2000         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
2001         (ppc32_linux_dscrregset): New globals.
2002         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
2003         and dscr regsets.
2004         (ppc_linux_core_read_description): Check if the ppr and dscr
2005         sections are present and set ppr_dscr in the features struct.
2006         (_initialize_ppc_linux_tdep): Call
2007         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
2008         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
2009         * ppc-linux-tdep.h (ppc32_linux_pprregset)
2010         (ppc32_linux_dscrregset): Declare.
2011         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
2012         <ppc_dscr_regnum>: New field.
2013         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
2014         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
2015         and dscr features.
2016         (ppc_process_record_op31): Record changes to PPR and DSCR.
2017
2018 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2019
2020         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
2021         second initializer line for the have_* variables.  Initialize
2022         have_fpu to 0 instead of 1.
2023
2024 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2025
2026         * arch/ppc-linux-common.c (ppc_linux_match_description):
2027         Parenthesize tdesc assignements and indent them properly.
2028
2029 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2030
2031         * ppc-linux-nat.c (fetch_register): Change if statement to else
2032         if.
2033         (store_register): Likewise.
2034
2035 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2036
2037         * rs6000-tdep.c: Remove reggroups.h include.
2038         (rs6000_pseudo_register_reggroup_p): Remove.
2039         (rs6000_gdbarch_init): Remove call to
2040         set_tdesc_pseudo_register_reggroup_p.
2041
2042 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2043
2044         * reggroups.c (default_register_reggroup_p): Return true for
2045         decfloat registers and float_reggroup.
2046
2047 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2048
2049         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
2050         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
2051         ppc_linux_collect_vrregset by regcache_collect_regset.
2052
2053 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2054
2055         * linux-tdep.c (linux_collect_regset_section_cb): Use
2056         std::vector<gdb_byte> instead of char * and malloc for buf.
2057         Remove xfree.
2058
2059 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
2060
2061         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
2062         symtab_start instead of always using language_unknown.
2063
2064 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2065
2066         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
2067         READ_P parameter, catch and ignore register access errors from
2068         either the old or new MISA location.
2069         (riscv_has_feature): Update call to riscv_read_misa_reg.
2070
2071 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
2072
2073         * python/py-function.c (convert_values_to_python): Return
2074         gdbpy_ref<>.  Add header comment.
2075         (fnpy_call): Adjust.
2076
2077 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
2078
2079         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
2080         (cmdpy_completer_handle_brkchars): Adjust.
2081         (cmdpy_completer): Adjust.
2082
2083 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
2084
2085         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
2086         Pass correct regnum to raw_supply_zeroed.
2087
2088 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
2089
2090         * regcache.c (cooked_read_test): Add CSKY to the list of
2091         architectures with a save_reggroup
2092
2093 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
2094
2095         PR gdb/23368
2096         * infrun.c (follow_exec): In the follow_exec_mode_new case,
2097         transfer terminal state from old new new inferior.
2098         * terminal.h (swap_terminal_info): New function.
2099         * inflow.c (swap_terminal_info): New function.
2100
2101 2018-10-23  Tom Tromey  <tom@tromey.com>
2102
2103         * record-btrace.c (get_thread_current_frame_id): Rename from
2104         get_thread_current_frame.  Return a frame_id.
2105         (record_btrace_start_replaying): Update.
2106
2107 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
2108
2109         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
2110         for CSRs.
2111
2112 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
2113
2114         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
2115         have_nonsteppable_watchpoint attribute to 1.
2116
2117 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
2118
2119         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
2120         register names.
2121         (struct register_alias): Rename to...
2122         (struct riscv_register_alias): ...this, and update comment.
2123         (riscv_register_aliases): Update type, and alias names.  Remove
2124         CSR names from this list.
2125         (riscv_register_name): Use riscv_gdb_reg_names for int and float
2126         register names.  Add an extra assertion.
2127         (riscv_is_regnum_a_named_csr): New function.
2128         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
2129
2130 2018-10-23  John Darrington  <john@darrington.wattle.id.au>
2131
2132         * configure.tgt: Add configuration for s12z.
2133         * s12z-tdep.c:  New file.
2134         * NEWS: Mention new target.
2135
2136 2018-10-22  Jim Wilson  <jimw@sifive.com>
2137
2138         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
2139         FP reg smaller than FP reg size, and fill with -1 instead of 0.
2140
2141         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
2142         (riscv_register_type): Use them.
2143         (riscv_print_one_register_info): Handle union of floats same as float.
2144         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
2145         riscv_fpreg_q_type fields.
2146
2147 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
2148
2149         * gdbarch.sh (gdbarch_num_cooked_regs): New.
2150         * gdbarch.h: Re-generate.
2151         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
2152         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
2153         * eval.c (evaluate_subexp_standard): Likewise.
2154         * findvar.c (value_of_register): Likewise.
2155         (value_of_register_lazy): Likewise.
2156         (address_from_register): Likewise.
2157         * frame.c (get_frame_register_bytes): Likewise.
2158         * gdbarch-selftests.c (register_to_value_test): Likewise.
2159         * h8300-tdep.c (h8300_register_type): Likewise.
2160         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
2161         (i386_svr4_reg_to_regnum): Likewise.
2162         * infcmd.c (default_print_registers_info): Likewise.
2163         (registers_info): Likewise.
2164         (print_vector_info): Likewise.
2165         (default_print_float_info): Likewise.
2166         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
2167         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
2168         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
2169         (mi_cmd_data_list_changed_registers): Likewise.
2170         (mi_cmd_data_list_register_values): Likewise.
2171         (mi_cmd_data_write_register_values): Likewise.
2172         (mi_cmd_trace_frame_collected): Likewise.
2173         * mips-tdep.c (print_gp_register_row): Likewise.
2174         (mips_print_registers_info): Likewise.
2175         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
2176         * regcache.c (init_regcache_descr): Likewise.
2177         (register_size): Likewise.
2178         (register_dump::dump): Likewise.
2179         (cooked_read_test): Likewise.
2180         (cooked_write_test): Likewise.
2181         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
2182         (rs6000_gdbarch_init): Likewise.
2183         * stabsread.c (stab_reg_to_regnum): Likewise.
2184         * stack.c (info_frame_command): Likewise.
2185         * target-descriptions.c (tdesc_register_name): Likewise.
2186         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
2187         * tui/tui-regs.c (tui_show_register_group): Likewise.
2188         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
2189         (user_reg_map_regnum_to_name): Likewise.
2190         (value_of_user_reg): Likewise.
2191         (maintenance_print_user_registers): Likewise.
2192         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
2193         (xtensa_register_name): Likewise.
2194         (xtensa_register_type): Likewise.
2195         (xtensa_reg_to_regnum): Likewise.
2196         (xtensa_pseudo_register_read): Likewise.
2197         (xtensa_pseudo_register_write): Likewise.
2198
2199 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
2200
2201         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
2202         correctly-sized buffer with raw_read.
2203         (amd64_pseudo_register_write): Use correctly-sized buffer for
2204         raw_read/raw_write.
2205
2206 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2207
2208         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
2209         in add_prefix_cmd of set print type.
2210
2211 2018-10-19  Tom Tromey  <tom@tromey.com>
2212
2213         PR tui/18388:
2214         * NEWS: Mention tabset deprecation.
2215         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
2216         (update_tab_width): New function.
2217         (tui_set_tab_width, tui_show_tab_width): New functions.
2218         (tui_set_tab_width_command): Use update_tab_width.
2219         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
2220         Add new "set tui tab-width" command.
2221         * tui/tui-source.c (tui_set_source_content): Update.
2222         * tui/tui-disasm.c (tui_set_disassem_content): Update.
2223         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
2224         Don't declare.
2225         (tui_tab_width): Declare.
2226         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
2227         (tui_set_default_tab_len): Remove.
2228
2229 2018-10-19  Tom Tromey  <tom@tromey.com>
2230
2231         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
2232         (key_is_backspace, tui_getc): Don't declare.
2233         * tui/tui-io.c (key_is_start_sequence): Now static.
2234         (key_is_end_sequence, key_is_backspace): Remove.
2235         (tui_getc): Now static.
2236
2237 2018-10-19  Tom Tromey  <tom@tromey.com>
2238
2239         * symfile.c (reread_symbols): Clear "static_links".
2240
2241 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
2242
2243         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
2244         define.
2245         (aarch64_linux_sigframe_init): Extra boundary checks.
2246
2247 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
2248
2249         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
2250         the possibly non-existent tdesc type 'vec128', but the type of raw
2251         register v16 instead.
2252
2253 2018-10-19  Gary Benson <gbenson@redhat.com>
2254
2255         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
2256
2257 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
2258
2259         PR cli/23785
2260         * cli/cli-dump.c (restore_binary_file): Check if "file" is
2261         NULL.
2262
2263 2018-10-17  Paul Koning  <paul_koning@dell.com>
2264
2265         * charset.c (convert_between_encodings): Fix unsigned overflow.
2266
2267 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
2268
2269         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
2270         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
2271         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
2272         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
2273         New functions.
2274         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
2275         and fbsd_info_proc_mappings_header.
2276         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
2277         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
2278         New.
2279
2280 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
2281
2282         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
2283         Solaris Maintainer.
2284
2285 2018-10-15  Tom Tromey  <tom@tromey.com>
2286
2287         * tui/tui.c (strcat_to_buf): Remove casts.
2288         * tui/tui-winsource.c (tui_show_source_line)
2289         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
2290         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
2291         * tui/tui-windata.c (tui_first_data_item_displayed)
2292         (tui_delete_data_content_windows, tui_erase_data_content)
2293         (tui_display_all_data, tui_display_data_from)
2294         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
2295         * tui/tui-win.c (tui_set_win_height)
2296         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
2297         casts.
2298         * tui/tui-win.c (tui_resize_all): Remove casts.
2299         (tui_scroll_backward_command, tui_set_focus)
2300         (tui_set_tab_width_command): Likewise.
2301         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
2302         * tui/tui-regs.c (tui_show_register_group): Remove cast.
2303         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
2304         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
2305         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
2306         Remove casts.
2307
2308 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
2309
2310         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
2311         AArch64/ARM maintainer.
2312
2313 2018-10-11  Gary Benson <gbenson@redhat.com>
2314
2315         * interps.h (interp::m_name): Make private and mutable.
2316         * interps.c (interp::~interp): Free m_name.
2317
2318 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2319             Simon Marchi <simark@simark.ca>
2320
2321         * README (`configure' options): Add documentation for new
2322         "--enable-unit-tests" option.
2323         * acinclude.m4: Include "selftest.m4".
2324         * configure: Regenerate.
2325         * configure.ac: Use "GDB_AC_SELFTEST".
2326         * maint.c (maintenance_selftest): Update message informing
2327         that selftests have been disabled.
2328         (maintenance_info_selftests): Likewise.
2329         * selftest.m4: New file.
2330
2331 2018-10-10  Gary Benson <gbenson@redhat.com>
2332
2333         * remote.c (remote_target::remote_send_printf): Add
2334         missing va_end found by Coverity.
2335
2336 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
2337
2338         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
2339
2340 2018-10-09  Tom Tromey  <tom@tromey.com>
2341
2342         * configure: Rebuild.
2343         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
2344         * NEWS: Update --enable-ubsan documentation.
2345
2346 2018-10-09  Gary Benson <gbenson@redhat.com>
2347
2348         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
2349         found by Coverity.
2350
2351 2018-10-08  Tom Tromey  <tom@tromey.com>
2352
2353         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
2354         variable.
2355         (riscv_fbsd_init_abi): Likewise.
2356
2357 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
2358         * valops.c (value_struct_elt_for_reference): Rename local variable
2359         to work around the shadowing a previous local warning.
2360
2361 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2362
2363         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
2364         * NEWS: Mention new FreeBSD/riscv native configuration.
2365         * configure.host: Add riscv*-*-freebsd*.
2366         * configure.nat: Likewise.
2367         * riscv-fbsd-nat.c: New file.
2368
2369 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2370
2371         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
2372         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
2373         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
2374         * NEWS: Mention new FreeBSD/riscv target.
2375         * configure.tgt: Add riscv*-*-freebsd*.
2376         * riscv-fbsd-tdep.c: New file.
2377         * riscv-fbsd-tdep.h: New file.
2378
2379 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2380
2381         * regcache.h (struct regcache_map_entry): Note that this type can
2382         be used with traditional frame caches.
2383         * trad-frame.c (trad_frame_set_reg_regmap): New.
2384         * trad-frame.h (trad_frame_set_reg_regmap): New.
2385
2386 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
2387
2388         PR c++/16841
2389         * valops.c (get_virtual_base_offset): New function.
2390         (value_struct_elt_for_reference): Use it to get virtual base offset
2391         and add it in calculating class member address.
2392
2393 2018-10-08  John Darrington  <john@darrington.wattle.id.au>
2394
2395         * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
2396         (check_producer): Check if the producer is codewarrior.
2397         (producer_is_codewarrior): New function.
2398         (lnp_state_machine::record_line): Ignore is_stmt flag for records
2399         produced by codewarrior.
2400         (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
2401
2402 2018-10-06  Tom Tromey  <tom@tromey.com>
2403
2404         PR python/19399:
2405         * python/py-inferior.c: Add "architecture" entry.
2406         (infpy_architecture): New function.
2407
2408 2018-10-06  Tom Tromey  <tom@tromey.com>
2409
2410         PR python/21765:
2411         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
2412         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
2413         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
2414         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
2415
2416 2018-10-06  Tom Tromey  <tom@tromey.com>
2417
2418         PR build/17077:
2419         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
2420         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
2421         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
2422         #include.
2423
2424 2018-10-06  Tom Tromey  <tom@tromey.com>
2425
2426         * python/py-breakpoint.c (bppy_get_location): Handle a
2427         bp_breakpoint without a location.
2428
2429 2018-10-06  Tom Tromey  <tom@tromey.com>
2430
2431         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
2432         (_RegEx): Reformat help text.
2433         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
2434         (AnyCallerIs, AnyCallerMatches): Reformat help text.
2435         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
2436         text.
2437         * python/lib/gdb/command/xmethods.py (InfoXMethod)
2438         (EnableXMethod, DisableXMethod): Remove help indentation.
2439         Capitalize meta-syntactic variables.
2440         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
2441         (EnableUnwinder, DisableUnwinder): Remove help indentation.
2442         Capitalize meta-syntactic variables.
2443         * python/lib/gdb/command/explore.py (ExploreCommand)
2444         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
2445         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
2446         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
2447         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
2448         Remove help indentation.
2449         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
2450         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
2451         (DisableFrameFilter, SetFrameFilterPriority)
2452         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
2453
2454 2018-10-06  Tom Tromey  <tom@tromey.com>
2455
2456         PR tui/28819:
2457         * tui/tui-io.c (gdb_wgetch): New function.
2458         (tui_mld_getc, tui_getc): Use it.
2459
2460 2018-10-05  Tom Tromey  <tom@tromey.com>
2461
2462         * sol-thread.c (sol_thread_target::wait): Rename inner
2463         "save_ptid".
2464
2465 2018-10-04  Tom Tromey  <tom@tromey.com>
2466
2467         * configure: Rebuild.
2468         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
2469
2470 2018-10-04  Tom Tromey  <tom@tromey.com>
2471
2472         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
2473         declaration of "block".
2474
2475 2018-10-04  Tom Tromey  <tom@tromey.com>
2476
2477         * common/filestuff.c (fdwalk): Remove inner declaration of
2478         "result".
2479
2480 2018-10-04  Tom Tromey  <tom@tromey.com>
2481
2482         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
2483         "structs_addr" and hoist declaration.
2484
2485 2018-10-04  Tom Tromey  <tom@tromey.com>
2486
2487         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
2488         variable "size".
2489
2490 2018-10-04  Tom Tromey  <tom@tromey.com>
2491
2492         * mdebugread.c (parse_partial_symbols): Use std::string.
2493
2494 2018-10-04  Tom Tromey  <tom@tromey.com>
2495
2496         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
2497         * p-valprint.c (pascal_val_print): Split inner "i" variable.
2498         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
2499         header.
2500         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
2501         more inner scope.
2502         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
2503         * varobj.c (varobj_update): Rename inner "newobj",
2504         "type_changed".
2505         * valprint.c (generic_emit_char): Rename inner "buf".
2506         * valops.c (find_overload_match): Rename inner "temp".
2507         (value_struct_elt_for_reference): Declare "v" in more inner
2508         scope.
2509         * v850-tdep.c (v850_push_dummy_call): Rename "len".
2510         * unittests/array-view-selftests.c (run_tests): Rename inner
2511         "vec".
2512         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
2513         header.
2514         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
2515         "tsv" in more inner scope.
2516         (print_one_static_tracepoint_marker): Rename inner
2517         "tuple_emitter".
2518         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
2519         (tic6x_push_dummy_call): Don't redeclare "addr".
2520         * target-float.c: Declare "dto" lower.
2521         * symtab.c (lookup_local_symbol): Rename inner "sym".
2522         (find_pc_sect_line): Rename inner "pc".
2523         * stack.c (print_frame): Don't redeclare "gdbarch".
2524         (return_command): Rename inner "gdbarch".
2525         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
2526         "sp".
2527         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
2528         header.
2529         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
2530         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
2531         scope.
2532         * remote.c (remote_target::update_thread_list): Don't redeclare
2533         "tp".
2534         (remote_target::process_initial_stop_replies): Rename inner
2535         "thread".
2536         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
2537         (remote_target::wait_as): Don't redeclare "stop_reply".
2538         (remote_target::get_thread_local_address): Rename inner
2539         "result".
2540         (remote_target::get_tib_address): Likewise.
2541
2542         * regcache.c (cooked_read_test): Rename "regnum".
2543         * record-btrace.c (cmd_record_btrace_start): Rename inner
2544         "exception".
2545         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
2546         loop header.
2547         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
2548         header.
2549         (ppu2spu_sniffer): Rename inner "buf".
2550         * parse.c (operator_check_standard): Rename inner "type",
2551         "objfile".
2552         * p-valprint.c (pascal_val_print): Introduce new scope for
2553         "low_bound", "high_bound".
2554         * p-exp.y (yylex): Declare "i" in loop header.
2555         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
2556         Lower declaration of "s".
2557         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
2558         header.
2559         (nios2_push_dummy_call): Rename "len".
2560         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
2561         "buf".
2562         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
2563         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
2564         (linux_xfer_osdata_modules): Likewise.
2565         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
2566         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
2567         (mips_o64_push_dummy_call): Likewise.
2568         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
2569         "op".
2570         * mi/mi-main.c (list_available_thread_groups): Rename inner
2571         "tuple_emitter".
2572         (mi_cmd_data_read_memory): Rename inner "opts".
2573         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
2574         "tuple_emitter".
2575         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
2576         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
2577         more inner scope.
2578         (parse_partial_symbols): Rename inner "pst", "p", "name"
2579         * main.c (captured_main_1): Rename inner "i"s.
2580         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
2581         "oso2".
2582         * linux-tdep.c (linux_info_proc): Rename inner "filename".
2583         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
2584         * infrun.c (handle_no_resumed): Don't redeclare "thread".
2585         (handle_signal_stop): Rename inner "gdbarch".
2586         (handle_command): Declare "signum" in loop header.
2587         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
2588         "status".
2589         (examine_prologue): Rename inner "sol" and "sof".
2590         (ia64_extract_return_value): Rename inner "val".  Declare another
2591         "val" in a more inner scope.
2592         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
2593         inner scope.
2594         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
2595         "except".
2596         * findvar.c (default_read_var_value): Don't redeclare "addr".
2597         * f-exp.y (yylex): Declare "i" in loop header.
2598         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
2599         Rename inner "type", "expect_type".
2600         (evaluate_subexp_for_sizeof): Rename inner "pc".
2601         * elfread.c (elf_symfile_read): Rename inner "abfd".
2602         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
2603         "bytes_read".
2604         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
2605         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
2606         (dwarf_decode_line_header): Rename inner "lh".
2607         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
2608         "offset".  Declare "i" in loop header.
2609         (disassemble_dwarf_expression): Rename inner "addr_size".
2610         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
2611         inner "result".
2612         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
2613         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
2614         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
2615         "inner_list_emitter".
2616         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
2617         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
2618         declaration in a block.
2619         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
2620         * cp-valprint.c (cp_print_value_fields): Don't redeclare
2621         "obstack_final_size".
2622         * cp-support.c (inspect_type): Declare "i" in loop header.
2623         * compile/compile.c (compile_instance::insert_symbol_error):
2624         Rename inner "e".
2625         * common/agent.c (agent_run_command): Remove inner "ret"
2626         declaration.
2627         * coffread.c (coff_symfile_read): Rename inner "name".
2628         (coff_symfile_read): Rename inner "abfd".
2629         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
2630         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
2631         "high".
2632         * c-exp.y (lex_one_token): Move "len" declaration lower.
2633         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
2634         "gdbarch".
2635         (create_exception_master_breakpoint): Likewise.  Don't redeclare
2636         "b".
2637         (watch_command_1): Declare "mark" later.
2638         (clear_command): Don't shadow "a" or "b".
2639         (delete_command): Rename inner "b".
2640         (delete_trace_command): Likewise.
2641         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
2642         "op".
2643         (arm_gdbarch_init): Remove inner "e_flags".
2644         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
2645         "offset" in inner blocks.
2646
2647 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
2648
2649         * dwarf-index-write.c (file_write): Don't write if the vector is
2650         empty.
2651
2652 2018-10-05  Tom de Vries  <tdevries@suse.de>
2653
2654         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
2655         PyArg_ParseTuple call.
2656
2657 2018-10-05  Tom de Vries  <tdevries@suse.de>
2658
2659         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
2660         PyArg_ParseTuple call.
2661
2662 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
2663
2664         * psymtab.c (recursively_search_psymtabs): Reformat parameters
2665         to avoid exceeding 80 characters per line limit.
2666
2667 2018-10-04  Tom Tromey  <tom@tromey.com>
2668
2669         * symfile.c (syms_from_objfile_1, finish_new_objfile)
2670         (reread_symbols): Update.
2671         * complaints.h (clear_complaints): Remove argument.
2672         * complaints.c (enum complaint_series): Remove.
2673         (series): Remove global.
2674         (complaint_internal): Update.
2675         (clear_complaints): Remove argument.
2676
2677 2018-10-04  Tom Tromey  <tom@tromey.com>
2678
2679         * symfile.c (symbol_file_add_with_addrs): Do not print "no
2680         debugging symbols" message if there is a separate debug objfile.
2681
2682 2018-10-04  Tom Tromey  <tom@tromey.com>
2683
2684         PR cli/19551:
2685         * symfile.c (symbol_file_add_with_addrs): Update output.
2686         * psymtab.c (require_partial_symbols): Update output.
2687
2688 2018-10-04  Tom Tromey  <tom@tromey.com>
2689
2690         PR cli/22234:
2691         * complaints.c: Emit \n.
2692
2693 2018-10-04  Tom Tromey  <tom@tromey.com>
2694
2695         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
2696         (separate_debug_file_exists, find_separate_debug_file)
2697         (add_symbol_file_command, reread_symbols, allocate_symtab)
2698         (allocate_compunit_symtab): Use filtered printing, not
2699         unfiltered.
2700         * psymtab.c (require_partial_symbols, dump_psymtab)
2701         (allocate_psymtab): Use filtered printing, not unfiltered.
2702
2703 2018-10-04  Tom Tromey  <tom@tromey.com>
2704
2705         * complaints.c (complaint_internal): Correctly check complaint
2706         count.
2707
2708 2018-10-04  Tom Tromey  <tom@tromey.com>
2709
2710         * complaints.h (struct complaints): Remove declaration.
2711         * complaints.c (clear_complaints): Remove an unused variable.
2712
2713 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2714
2715         * MAINTAINERS (Write After Approval): Add self.
2716
2717 2018-10-03  Tom Tromey  <tom@tromey.com>
2718
2719         * guile/scm-value.c (gdbscm_value_to_string): Initialize
2720         "buffer_contents".
2721         * coffread.c (coff_symtab_read): Initialize "newobj".
2722
2723 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
2724
2725         * dwarf2read.c (read_func_scope): Remove struct keyword in
2726         range-based for.
2727
2728 2018-10-03  Tom Tromey  <tom@tromey.com>
2729
2730         * README: Mention --enable-ubsan.
2731         * NEWS: Mention --enable-ubsan.
2732         * acinclude.m4: Include sanitize.m4.
2733         * configure: Rebuild.
2734         * configure.ac: Call AM_GDB_UBSAN.
2735         * sanitize.m4: New file.
2736
2737 2018-10-03  Tom Tromey  <tom@tromey.com>
2738
2739         * expression.h (enum exp_opcode): Use uint8_t as base type.
2740         * expprint.c (op_name): Handle invalid opcodes.
2741
2742 2018-10-03  Tom Tromey  <tom@tromey.com>
2743
2744         * parse.c (prefixify_expression): Add assert.
2745         (parse_exp_in_context_1): Throw exception if the expression is
2746         empty.
2747
2748 2018-10-03  Tom Tromey  <tom@tromey.com>
2749
2750         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
2751
2752 2018-10-03  Tom Tromey  <tom@tromey.com>
2753
2754         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
2755
2756 2018-10-03  Tom Tromey  <tom@tromey.com>
2757
2758         * dwarf2read.c (read_subrange_type): Make "negative_mask"
2759         unsigned.
2760
2761 2018-10-03  Tom Tromey  <tom@tromey.com>
2762
2763         * findvar.c (extract_integer): Do work in an unsigned type.
2764
2765 2018-10-03  Tom Tromey  <tom@tromey.com>
2766
2767         * common/enum-flags.h (enum_flags::operator~): Add static assert.
2768         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
2769         base type.
2770         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
2771         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
2772         type.
2773         * c-lang.h (enum c_string_type_values): Use unsigned as base
2774         type.
2775         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
2776
2777 2018-10-03  Tom Tromey  <tom@tromey.com>
2778
2779         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
2780         <~dwarf2_frame_state_reg_info>: Update.
2781         <dwarf2_frame_state_reg_info>: Update.
2782         <alloc_regs>: Add assertion.  Update.
2783         <reg>: Now a std::vector.
2784         <num_regs>: Remove.
2785         <swap>: Update.
2786         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
2787         (execute_cfa_program_test, dwarf2_frame_cache): Update.
2788
2789 2018-10-03  Tom Tromey  <tom@tromey.com>
2790
2791         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
2792
2793 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2794
2795         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
2796
2797 2018-10-02  Tom Tromey  <tom@tromey.com>
2798
2799         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
2800
2801 2018-10-02  John Darrington  <john@darrington.wattle.id.au>
2802
2803         * NEWS: Mention changed commands.
2804         * ser-uds.c: New file.
2805         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
2806         * configure: Regenerate.
2807         * Makefile.in: Add new file.
2808         * serial.c (serial_open): Check if filename is a socket
2809         and lookup the appropriate interface accordingly.
2810
2811 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2812
2813         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
2814         define.
2815         (AARCH64_EXTRA_MAGIC): Likewise.
2816         (AARCH64_FPSIMD_MAGIC): Likewise.
2817         (AARCH64_SVE_MAGIC): Likewise.
2818         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
2819         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
2820         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
2821         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
2822         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
2823         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
2824         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
2825         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
2826         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
2827         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
2828         (read_aarch64_ctx): Add function.
2829         (aarch64_linux_sigframe_init): Detect FP registers.
2830
2831 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2832
2833         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
2834         (AARCH64_D0_REGNUM): Likewise.
2835         (AARCH64_S0_REGNUM): Likewise.
2836         (AARCH64_H0_REGNUM): Likewise.
2837         (AARCH64_B0_REGNUM): Likewise.
2838         (AARCH64_SVE_V0_REGNUM): Likewise.
2839         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
2840         (AARCH64_D0_REGNUM): Likewise.
2841         (AARCH64_S0_REGNUM): Likewise.
2842         (AARCH64_H0_REGNUM): Likewise.
2843         (AARCH64_B0_REGNUM): Likewise.
2844         (AARCH64_SVE_V0_REGNUM): Likewise.
2845
2846 2018-10-01  Gary Benson <gbenson@redhat.com>
2847
2848         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
2849         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
2850         prfpregset_t instead of gdb_prfpregset_t.
2851         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
2852         * configure, config.in: Rebuild.
2853
2854 2018-10-01  Gary Benson <gbenson@redhat.com>
2855
2856         * common/gdb_proc_service.h: New file, factored out from...
2857         * gdb_proc_service.h: Moved common code to the above file.
2858         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
2859
2860 2018-10-01  Gary Benson <gbenson@redhat.com>
2861
2862         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
2863         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
2864
2865 2018-10-01  Gary Benson <gbenson@redhat.com>
2866
2867         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
2868         (AC_CHECK_HEADERS): Check for linux/elf.h.
2869         * configure, config.in: Rebuild.
2870         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
2871         doesn't define elf_fpregset_t.
2872
2873 2018-10-01  Gary Benson <gbenson@redhat.com>
2874
2875         * gdb_proc_service.h: Whitespace change.
2876
2877 2018-10-01  Tom Tromey  <tom@tromey.com>
2878
2879         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
2880         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
2881         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
2882
2883 2018-10-01  Tom Tromey  <tom@tromey.com>
2884
2885         * README: Minor change.
2886
2887 2018-09-30  Pedro Alves  <palves@redhat.com>
2888
2889         * darwin-nat-info.c (darwin_debug_regions_recurse)
2890         (info_mach_exceptions_command): Remove unused local variables.
2891         * darwin-nat.c (darwin_decode_notify_message)
2892         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
2893         (darwin_stop_inferior, darwin_setup_exceptions)
2894         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
2895         (darwin_nat_target::attach, darwin_nat_target::detach)
2896         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
2897         local variables.
2898         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
2899         variables.
2900
2901 2018-09-29  Tom Tromey  <tom@tromey.com>
2902
2903         * README: Remove some leftover text.
2904
2905 2018-09-29  Tom Tromey  <tom@tromey.com>
2906
2907         * PROBLEMS: Rewrite.
2908         * README: Update.
2909
2910 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
2911
2912         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
2913         case with explicit breakpoint kind.
2914         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
2915         'additional_info' and related logic.
2916         (riscv_debug_breakpoints): New variable.
2917         (riscv_breakpoint_kind_from_pc): Use the length of the existing
2918         instruction to determine the breakpoint kind.
2919         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
2920         flag.  Update description of 'set/show riscv
2921         use-compressed-breakpoints' flag.
2922
2923 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
2924
2925         (NEWS): Mention changes to frame related commands.
2926         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
2927         (add_prefix_cmd_suppress_notification): New function.
2928         (add_com_suppress_notification): Call
2929         add_cmd_suppress_notification.
2930         * command.h (add_cmd_suppress_notification): Declare.
2931         (add_prefix_cmd_suppress_notification): Declare.
2932         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
2933         (parse_frame_specification): Moved from stack.c, with
2934         simplification to handle a single argument.
2935         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
2936         switch to the selected frame.  Add a header comment.
2937         * stack.c: Remove 'safe-ctype.h' include.
2938         (find_frame_for_function): Add declaration.
2939         (find_frame_for_address): New function.
2940         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
2941         (frame_selection_by_function_completer): New function.
2942         (info_frame_command): Rename to...
2943         (info_frame_command_core): ...this, and update parameter types.
2944         (select_frame_command): Rename to...
2945         (select_frame_command_core): ...this, and update parameter types.
2946         (frame_command): Rename to...
2947         (frame_command_core): ...this, and update parameter types.
2948         (class frame_command_helper): New class to wrap implementations of
2949         frame related sub-commands.
2950         (frame_apply_cmd_list): New static global.
2951         (frame_cmd_list): Make static.
2952         (select_frame_cmd_list): New global for sub-commands.
2953         (info_frame_cmd_list): New global for sub-commands.
2954         (_initialize_stack): Register sub-commands for 'frame',
2955         'select-frame', and 'info frame'.  Update 'frame apply' commands
2956         to use frame_apply_cmd_list.  Move function local static
2957         frame_apply_list to file static frame_apply_cmd_list for
2958         consistency.
2959         * stack.h (select_frame_command): Delete declarationn.
2960         (select_frame_for_mi): Declare new function.
2961
2962 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2963
2964         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
2965         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
2966         and NOP.
2967
2968 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
2969
2970         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
2971
2972 2018-09-26  Tom Tromey  <tom@tromey.com>
2973
2974         * valops.c (auto_abandon): Remove dead code.
2975
2976 2018-09-26  Tom Tromey  <tom@tromey.com>
2977
2978         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
2979
2980 2018-09-24  Tom Tromey  <tom@tromey.com>
2981
2982         * common/pathstuff.c (get_standard_cache_dir): Make
2983         "xdg_cache_home" and "home" const.
2984         * top.c (init_history): Make "tmpenv" const.
2985         * main.c (get_init_files): Make "homedir" const.
2986
2987 2018-09-23  Tom Tromey  <tom@tromey.com>
2988
2989         PR python/18852:
2990         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
2991
2992 2018-09-23  Tom Tromey  <tom@tromey.com>
2993
2994         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
2995         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
2996         * python/python-internal.h (gdbpy_handle_exception): Declare.
2997         * python/py-utils.c (gdbpy_handle_exception): New function.
2998
2999 2018-09-23  Tom Tromey  <tom@tromey.com>
3000
3001         PR python/17284:
3002         * python/py-type.c (typy_template_argument): Check for negative
3003         argument number.
3004
3005 2018-09-23  Tom Tromey  <tom@tromey.com>
3006
3007         PR python/14062:
3008         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
3009
3010 2018-09-23  Tom Tromey  <tom@tromey.com>
3011
3012         PR python/18170:
3013         * python/py-value.c (valpy_int): Allow conversion from pointer
3014         type.
3015
3016 2018-09-23  Tom Tromey  <tom@tromey.com>
3017
3018         PR python/20126:
3019         * python/py-value.c (valpy_int): Respect type sign.
3020
3021 2018-09-23  Tom Tromey  <tom@tromey.com>
3022
3023         PR python/18352;
3024         * python/py-value.c (valpy_float): Allow conversions from int or
3025         char.
3026         (valpy_int, valpy_long): Allow conversions from float.
3027
3028 2018-09-23  Tom Tromey  <tom@tromey.com>
3029
3030         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
3031         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
3032
3033 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3034
3035         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
3036         __sighndlr.
3037         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
3038
3039 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
3040
3041         * windows-nat.c (windows_nat_target::wait): Remove a spurious
3042         target_terminal::ours().
3043
3044 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
3045
3046         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
3047         of vl to ULONGEST.
3048
3049 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
3050
3051         * breakpoint.c (update_inserted_breakpoint_locations): Remove
3052         redundant condition.
3053
3054 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3055
3056         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
3057
3058         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
3059         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
3060         * sol-thread.c (ps_pdmodel): Don't guard definition.
3061
3062         * procfs.c: Fix formatting.
3063
3064         * procfs.c (sysset_t_alloc): Remove.
3065         (create_procinfo): Use XNEW instead of sysset_t_alloc.
3066         (procfs_debug_inferior): Likewise.
3067         (procfs_set_exec_trap): Likewise.
3068         (proc_set_traced_sysentry): Don't allocate argp dynamically.
3069         (proc_set_traced_sysexit): Likewise.
3070
3071         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
3072         (dead_procinfo): Likewise.
3073         (proc_warn): Likewise.
3074         (proc_error): Likewise.
3075         (proc_get_LDT_entry): Likewise.
3076         (do_attach): Likewise.
3077         (procfs_target::pid_to_str): Likewise.
3078         (iterate_over_mappings): Likewise.
3079
3080         * procfs.c (create_procinfo): Fix ARI warning.
3081         (proc_get_status): Likewise.
3082         (proc_stop_process): Likewise.
3083         (proc_run_process): Likewise.
3084         (proc_kill): Likewise.
3085         (proc_get_LDT_entry): Likewise.
3086         (procfs_find_LDT_entry): Likewise.
3087         (proc_update_threads): Likewise.
3088         (proc_iterate_over_threads): Likewise.
3089         (do_attach): Likewise.
3090         (procfs_xfer_memory): Likewise.
3091         (invalidate_cache): Likewise.
3092         (procfs_target::resume): Likewise.
3093         (procfs_init_inferior): Likewise.
3094         (procfs_set_exec_trap): Likewise.
3095         (procfs_target::thread_alive): Likewise.
3096         (procfs_target::pid_to_exec_file): Likewise.
3097         (iterate_over_mappings): Likewise.
3098         (procfs_target::make_corefile_notes): Likewise.
3099         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
3100
3101         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
3102         (procfs_find_LDT_entry): Likewise.
3103         * sol-thread.c (ps_lgetLDT): Likewise.
3104
3105 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3106
3107         PR tdep/17903
3108         * procfs.c (procfs_target): Declare pid_to_exec_file.
3109         (procfs_target::pid_to_exec_file): New.
3110
3111 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3112
3113         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
3114         renaming.
3115         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
3116         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
3117
3118 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3119
3120         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
3121         (supply_fpregset, fill_fpregset): Move ...
3122         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
3123         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
3124         Remove references to ioctl-based procfs.
3125         Include <sys/reg.h>.
3126         Remove PR_MODEL_NATIVE guards.
3127         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
3128         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
3129
3130 2018-09-19  Xavier Roirand  <roirand@adacore.com>
3131
3132         PR gdb/20981:
3133         * solib-darwin.c (darwin_get_dyld_bfd): New function.
3134         (darwin_solib_get_all_image_info_addr_at_init): Update call.
3135         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
3136
3137 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
3138
3139         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
3140         (fbsd_print_sockaddr_in6): Likewise.
3141
3142 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
3143             Chris January  <chris.january@arm.com>
3144
3145         * eval.c (skip_undetermined_arglist): Skip argument list helper.
3146         (evaluate_subexp_standard): Return a dummy type when
3147         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
3148         OP_F77_UNDETERMINED_ARGLIST case.
3149         * expression.h (enum noside): Update comment.
3150
3151 2018-09-19  George Vasick <george.vasick@oracle.com>
3152
3153         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
3154
3155 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
3156             April Chin <april.chin@oracle.com>
3157             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3158
3159         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
3160         uint_t lwpid_t.
3161         (create_procinfo): Print pids in /proc without leading zeros.
3162
3163 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
3164
3165         * nios2-tdep.c (nios2_gcc_target_options): New.
3166         (nios2_gdb_arch_init): Install new hook.
3167
3168 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
3169
3170         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
3171         New file.
3172         * update-gnulib.sh: Apply patch.
3173         * configure: Re-generate.
3174
3175 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3176
3177         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
3178         description.  Make "info proc" command descriptions more
3179         consistent.
3180
3181 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3182
3183         * NEWS: Mention 'info proc files' command.
3184
3185 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3186
3187         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
3188         descriptors for IP_FILES and IP_ALL.
3189
3190 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3191
3192         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
3193         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
3194         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
3195         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
3196         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
3197         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
3198         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
3199         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
3200         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
3201         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
3202         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
3203         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
3204         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
3205         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
3206         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
3207         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
3208         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
3209         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
3210         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
3211         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
3212         (struct fbsd_sockaddr_un): New types.
3213         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
3214         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
3215         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
3216         (fbsd_core_info_proc_files): New functions.
3217         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
3218         IP_ALL.
3219         * fbsd-tdep.h (fbsd_info_proc_files_header)
3220         (fbsd_info_proc_files_entry): New.
3221
3222 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3223
3224         * defs.h (enum info_proc_what) [IP_FILES]: New value.
3225         * infcmd.c (info_proc_cmd_files): New function.
3226         (_initialize_infcmd): Register 'info proc files' command.
3227
3228 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3229
3230         * gnulib/aclocal-m4-deps.mk: Re-generate.
3231         * gnulib/aclocal.m4: Re-generate.
3232         * gnulib/config.in: Re-generate.
3233         * gnulib/configure: Re-generate.
3234         * gnulib/import/Makefile.am: Re-generate.
3235         * gnulib/import/Makefile.in: Re-generate.
3236         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3237         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3238         * gnulib/import/arpa_inet.in.h: New file.
3239         * gnulib/import/inet_ntop.c: New file.
3240         * gnulib/import/m4/arpa_inet_h.m4: New file.
3241         * gnulib/import/m4/inet_ntop.m4: New file.
3242         * gnulib/import/m4/netinet_in_h.m4: New file.
3243         * gnulib/import/m4/socklen.m4: New file.
3244         * gnulib/import/m4/sockpfaf.m4: New file.
3245         * gnulib/import/m4/stdalign.m4: New file.
3246         * gnulib/import/m4/sys_uio_h.m4: New file.
3247         * gnulib/import/netinet_in.in.h: New file.
3248         * gnulib/import/stdalign.in.h: New file.
3249         * gnulib/import/sys_socket.c: New file.
3250         * gnulib/import/sys_socket.in.h: New file.
3251         * gnulib/import/sys_uio.in.h: New file.
3252         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
3253         module.
3254
3255 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3256
3257         * gnulib/aclocal-m4-deps.mk: New file.
3258         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
3259         deterministically.
3260
3261 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3262
3263         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
3264         KVE_PATH.
3265
3266 2018-09-18  Tom Tromey  <tom@tromey.com>
3267
3268         * compile/compile-object-load.c (struct
3269         link_hash_table_cleanup_data): Add constructor and destructor.
3270         Use DISABLE_COPY_AND_ASSIGN.
3271         (~link_hash_table_cleanup_data): Rename from
3272         link_hash_table_free.  Now a destructor.
3273         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
3274
3275 2018-09-18  Tom Tromey  <tom@tromey.com>
3276
3277         * compile/compile-object-run.c (do_module_cleanup): Use delete.
3278         * compile/compile-object-load.c (struct munmap_list): Move to
3279         header file.
3280         (munmap_list::add): Rename from munmap_list_add; rewrite.
3281         (munmap_list::~munmap_list): Rename from munmap_list_free.
3282         (munmap_listp_free_cleanup): Remove.
3283         (compile_object_load): Update.
3284         * compile/compile-object-load.h (struct munmap_list): Move from
3285         compile-object-load.c.  Rewrite.
3286
3287 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
3288
3289         * aarch64-tdep.c (pass_in_v): Use register size.
3290         (aarch64_extract_return_value): Likewise.
3291         (aarch64_store_return_value): Likewise.
3292
3293 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3294
3295         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
3296         rlim_t.
3297
3298 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3299
3300         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
3301         Fix short help line.
3302
3303 2018-09-17  Tom Tromey  <tom@tromey.com>
3304
3305         PR python/20445:
3306         * configure: Rebuild.
3307         * configure.ac: Conditionally use -DNDEBUG for Python.
3308
3309 2018-09-17  Tom Tromey  <tom@tromey.com>
3310
3311         * configure: Rebuild.
3312         * configure.ac: Use gmp as a library dependency when checking for
3313         mpfr.
3314
3315 2018-09-17  Pedro Alves  <palves@redhat.com>
3316
3317         * python/py-inferior.c (find_inferior_object): Delete.
3318
3319 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
3320
3321         * compile/compile-cplus-types.c
3322         (compile_cplus_instance::enter_scope): Don't use new_scope after
3323         std::move.
3324
3325 2018-09-17  Tom Tromey  <tom@tromey.com>
3326
3327         * common/pathstuff.c (get_standard_cache_dir): Use
3328         ~/Library/Caches on macOS.
3329         * common/pathstuff.h (get_standard_cache_dir): Update comment.
3330
3331 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
3332
3333         PR python/23669
3334         * breakpoint.c (commands_cmd_element): New.
3335         (_initialize_breakpoint): Assign commands_cmd_element.
3336         * breakpoint.h (commands_cmd_element): New.
3337         * cli/cli-script.c (while_cmd_element, if_command,
3338         define_cmd_element): New.
3339         (command_name_equals): Remove.
3340         (process_next_line): Compare commands by pointer, not by name.
3341         (_initialize_cli_script): Assign the various cmd_list_element
3342         variables.
3343         * compile/compile.c (compile_cmd_element): New.
3344         (_initialize_compile): Assign compile_cmd_element.
3345         * compile/compile.h (compile_cmd_element): New.
3346         * guile/guile.c (guile_cmd_element): New.
3347         (install_gdb_commands): Assign guile_cmd_element.
3348         * guile/guile.h (guile_cmd_element): New.
3349         * python/python.c (python_cmd_element): New.
3350         (_initialize_python): Assign python_cmd_element.
3351         * python/python.h (python_cmd_element): New.
3352         * tracepoint.c (while_stepping_cmd_element): New.
3353         (_initialize_tracepoint): Assign while_stepping_cmd_element.
3354         * tracepoint.h (while_stepping_cmd_element): New.
3355
3356 2018-09-17  Tom Tromey  <tom@tromey.com>
3357
3358         * infrun.c (save_infcall_suspend_state): Return
3359         infcall_suspend_state_up.
3360         (save_infcall_control_state): Return infcall_control_state_up.
3361         * inferior.h (save_infcall_suspend_state)
3362         (save_infcall_control_state): Declare later.  Return unique
3363         pointers.
3364
3365 2018-09-17  Tom Tromey  <tom@tromey.com>
3366
3367         * infrun.c (struct stop_context): Declare constructor,
3368         destructor, "changed" method.
3369         (stop_context::stop_context): Rename from save_stop_context.
3370         (stop_context::~stop_context): Rename from
3371         release_stop_context_cleanup.
3372         (normal_stop): Update.
3373         (stop_context::changed): Rename from stop_context_changed.  Return
3374         bool.
3375
3376 2018-09-17  Tom Tromey  <tom@tromey.com>
3377
3378         * inferior.h (struct infcall_suspend_state_deleter): New.
3379         (infcall_suspend_state_up): New typedef.
3380         (struct infcall_control_state_deleter): New.
3381         (infcall_control_state_up): New typedef.
3382         (make_cleanup_restore_infcall_suspend_state)
3383         (make_cleanup_restore_infcall_control_state): Don't declare.
3384         * infcall.c (call_function_by_hand_dummy): Update.
3385         * infrun.c (do_restore_infcall_suspend_state_cleanup)
3386         (make_cleanup_restore_infcall_suspend_state): Remove.
3387         (do_restore_infcall_control_state_cleanup)
3388         (make_cleanup_restore_infcall_control_state): Remove.
3389
3390 2018-09-17  Tom Tromey  <tom@tromey.com>
3391
3392         * gdbthread.h (struct thread_control_state): Add initializer.
3393         (class thread_info) <control>: Remove initializer.
3394         * inferior.h (struct inferior_control_state): Add initializer.
3395         (class inferior) <control>: Remove initializer.
3396         (exit_inferior_1): Update.
3397         * infrun.c (struct infcall_control_state): Add constructors.
3398         (save_infcall_control_state): Use new.
3399         (restore_infcall_control_state, discard_infcall_control_state):
3400         Use delete.
3401
3402 2018-09-17  Tom Tromey  <tom@tromey.com>
3403
3404         * infrun.c (struct infcall_suspend_state) <registers>: Now a
3405         unique_ptr.
3406         <siginfo_data>: Now a unique_xmalloc_ptr.
3407         (save_infcall_suspend_state, restore_infcall_suspend_state)
3408         (discard_infcall_suspend_state)
3409         (get_infcall_suspend_state_regcache): Update.
3410
3411 2018-09-17  Tom Tromey  <tom@tromey.com>
3412
3413         * gdbthread.h (struct thread_suspend_state): Add initializers.
3414         (class thread_info) <suspend>: Remove initializer.
3415         * infrun.c (struct infcall_suspend_state): Add initializers.
3416         (save_infcall_suspend_state): Use new.
3417         (discard_infcall_suspend_state): Use delete.
3418
3419 2018-09-16  Tom Tromey  <tom@tromey.com>
3420
3421         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
3422         Remove.
3423         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
3424         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
3425         (py_varobj_iter_new): Likewise.
3426         (py_varobj_get_iterator): Use gdbpy_ref.
3427
3428 2018-09-16  Tom Tromey  <tom@tromey.com>
3429
3430         * python/py-threadevent.c (py_get_event_thread): Simplify.
3431         * python/py-inferior.c (infpy_thread_from_thread_handle):
3432         Return immediately after calling thread_to_thread_object.  Use
3433         Py_RETURN_NONE.
3434         (thread_to_thread_object): Set the exception on a NULL return.
3435
3436 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
3437
3438         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
3439
3440 2018-09-16  Tom Tromey  <tom@tromey.com>
3441
3442         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
3443         Remove.
3444
3445 2018-09-16  Tom Tromey  <tom@tromey.com>
3446
3447         * python/python-internal.h (thread_to_thread_object): Change
3448         return type.
3449         * python/py-inferior.c (thread_to_thread_object): Return a new
3450         reference.
3451         (infpy_thread_from_thread_handle): Update.
3452         * python/py-infthread.c (gdbpy_selected_thread): Update.
3453         * python/py-stopevent.c (create_stop_event_object): Update.
3454         * python/py-threadevent.c (py_get_event_thread): Return a new
3455         reference.
3456         (py_get_event_thread): Update.
3457         * python/py-event.h (py_get_event_thread): Change return type.
3458         * python/py-continueevent.c (create_continue_event_object):
3459         Update.
3460
3461 2018-09-16  Tom Tromey  <tom@tromey.com>
3462
3463         * python/py-progspace.c (pspy_get_objfiles): Update.
3464         * python/python-internal.h (objfile_to_objfile_object): Change
3465         return type.
3466         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3467         Update.
3468         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3469         Update.
3470         * python/python.c (gdbpy_get_current_objfile): Update.
3471         (gdbpy_objfiles): Update.
3472         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
3473         Update.
3474         (objfile_to_objfile_object): Return a new reference.
3475         * python/py-symtab.c (stpy_get_objfile): Update.
3476         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
3477         Update.
3478
3479 2018-09-16  Tom Tromey  <tom@tromey.com>
3480
3481         * python/py-inferior.c (infpy_get_progspace): Update.
3482         * python/python-internal.h (pspace_to_pspace_object): Change
3483         return type.
3484         * python/py-newobjfileevent.c
3485         (create_clear_objfiles_event_object): Update.
3486         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3487         Update.
3488         * python/python.c (gdbpy_get_current_progspace): Update.
3489         (gdbpy_progspaces): Update.
3490         * python/py-progspace.c (pspace_to_pspace_object): Return a new
3491         reference.
3492         * python/py-objfile.c (objfpy_get_progspace): Update.
3493         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
3494         Update.
3495
3496 2018-09-16  Tom Tromey  <tom@tromey.com>
3497
3498         * python/lib/gdb/__init__.py (current_progspace, objfiles)
3499         (solib_name, block_for_pc, find_pc_line): New functions.
3500         (execute_unwinders): Update.
3501         * python/py-block.c (gdbpy_block_for_pc): Remove.
3502         * python/py-inferior.c (infpy_get_progspace): New function.
3503         (inferior_object_getset) <progspace>: Add.
3504         * python/py-progspace.c (pspy_objfiles): Rewrite.
3505         (pspy_solib_name, pspy_block_for_pc)
3506         (pspy_find_pc_line, pspy_is_valid): New functions.
3507         (progspace_object_methods): Add entries for solib_name,
3508         block_for_pc, find_pc_line, is_valid.
3509         * python/python-internal.h (gdbpy_block_for_pc)
3510         (build_objfiles_list): Don't declare.
3511         * python/python.c: Don't include solib.h.
3512         (gdbpy_solib_name, gdbpy_find_pc_line)
3513         (gdbpy_get_current_progspace, build_objfiles_list)
3514         (gdbpy_objfiles): Remove.
3515         (GdbMethods) <current_progspace, objfiles, block_for_pc,
3516         solib_name, find_pc_line>: Remove entries.
3517
3518 2018-09-16  Tom Tromey  <tom@tromey.com>
3519
3520         * top.c (new_ui_command): Use GNU style for metasyntactic
3521         variables.
3522         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
3523         variables.
3524         * maint.c (maintenance_translate_address): Remove "<>" around
3525         text.
3526         * interps.c (interpreter_exec_cmd): Use GNU style for
3527         metasyntactic variables.
3528         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
3529         metasyntactic variables.
3530         * tracepoint.c (tfind_range_command): Use GNU style for
3531         metasyntactic variables.
3532         (tfind_outside_command): Likewise.
3533         (_initialize_tracepoint): Likewise.
3534         * remote.c (extended_remote_target::create_inferior): Use GNU
3535         style for metasyntactic variables.
3536         * sparc64-tdep.c (adi_examine_command): Use GNU style for
3537         metasyntactic variables.
3538         (adi_assign_command): Likewise.
3539
3540 2018-09-16  Tom Tromey  <tom@tromey.com>
3541
3542         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
3543         metasyntactic variables.  Print message if no disassembler options
3544         are available.
3545
3546 2018-09-15  Tom Tromey  <tom@tromey.com>
3547
3548         * infcmd.c (get_inferior_args): Return const char *.
3549         * inferior.h (get_inferior_args): Return type now const.
3550         * linux-tdep.c (linux_fill_prpsinfo): Update.
3551         * procfs.c (procfs_target::make_corefile_notes): Update.
3552
3553 2018-09-07  Tom Tromey  <tom@tromey.com>
3554
3555         * python/python.c (execute_gdb_command): Call bpstat_do_actions
3556         inside the TRY.
3557
3558 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
3559
3560         * nios2-tdep.c (nios2_type_align): New.
3561         (nios2_gdb_arch_init): Install type_align hook.
3562
3563 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
3564
3565         * eval.c (fake_method::fake_method): Call xzalloc directly for a
3566         type that is neither object file owned, nor gdbarch owned.
3567         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
3568         gdbarch is non-NULL.
3569         (alloc_type_instance): Allocate non-objfile owned types on the
3570         gdbarch obstack.
3571         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
3572         using TYPE_ALLOC to ensure memory is allocated on the correct
3573         obstack.
3574         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
3575         obstack, or the gdbarch obstack.
3576         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
3577
3578 2018-09-14  Tom Tromey  <tom@tromey.com>
3579
3580         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
3581         block.
3582
3583 2018-09-14  Tom Tromey  <tom@tromey.com>
3584
3585         * nat/fork-inferior.c (get_startup_shell): Remove "static".
3586
3587 2018-09-13  Tom Tromey  <tom@tromey.com>
3588
3589         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
3590         static.
3591
3592 2018-09-13  Tom Tromey  <tom@tromey.com>
3593
3594         * exec.c (try_open_exec_file): Use std::string.
3595
3596 2018-09-13  Tom Tromey  <tom@tromey.com>
3597
3598         * utils.h (gdb_bfd_errmsg): Return std::string.
3599         * exec.c (exec_file_attach): Update.
3600         * compile/compile-object-load.c (compile_object_load): Update.
3601         * utils.c (gdb_bfd_errmsg): Return std::string.
3602
3603 2018-09-13  Tom Tromey  <tom@tromey.com>
3604
3605         * procfs.c (struct procinfo_deleter): New.
3606         (procinfo_up): New typedef.
3607         (do_destroy_procinfo_cleanup): Remove.
3608         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
3609
3610 2018-09-13  Tom Tromey  <tom@tromey.com>
3611
3612         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
3613
3614 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3615 2018-09-13  Tom Tromey  <tom@tromey.com>
3616
3617         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
3618         (pspy_get_objfiles): New function.
3619         (progspace_object_methods): New.
3620         (pspace_object_type): Add tp_methods callback.
3621         * python/python-internal.h (build_objfiles_list): New
3622         declaration.
3623         * python/python.c (build_objfiles_list): New function.
3624         (gdbpy_objfiles): Implement using build_objfiles_list.
3625         * NEWS: Mention the Progspace.objfiles method.
3626
3627 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3628
3629         * python/py-inferior.c (infpy_get_progspace): New function.
3630         (inferior_object_getset): Add progspace property.
3631         * NEWS: Mention the new property.
3632
3633 2018-09-13  Tom Tromey  <tom@tromey.com>
3634
3635         PR rust/23650:
3636         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
3637
3638 2018-09-13  Tom Tromey  <tom@tromey.com>
3639
3640         PR rust/23626:
3641         * rust-lang.c (rust_enum_variant): Now static.
3642         (rust_empty_enum_p): New function.
3643         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
3644         Handle empty enum.
3645
3646 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3647
3648         * python/py-inferior.c (infpy_repr): New.
3649         (inferior_object_type): Register infpy_repr.
3650         * python/py-objfile.c (objfpy_repr): New.
3651         (objfile_object_type): Register objfpy_repr.
3652
3653 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3654
3655         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
3656
3657 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3658
3659         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
3660         typo.
3661
3662 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
3663
3664         * common/common-utils.c: Don't include '<sys/stat.h>'.
3665         (is_regular_file): Move to...
3666         * common/filestuff.c (is_regular_file): ... here.
3667         * common/common-utils.h (is_regular_file): Move to...
3668         * common/filestuff.h (is_regular_file): ... here.
3669
3670 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
3671
3672         * skip.c (debug_skip): New variable.
3673         (skiplist_entry::do_skip_file_p): Add debug output.
3674         (skiplist_entry::do_skip_gfile_p): Likewise.
3675         (skiplist_entry::skip_function_p): Likewise.
3676         (_initialize_step_skip): Create debug command.
3677         * NEWS: Mention set/show debug skip.
3678
3679 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3680
3681         * darwin-nat.c (should_disable_startup_with_shell):
3682         New function.
3683         (darwin_nat_target::create_inferior): Add call.
3684
3685 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3686
3687         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
3688         inf_port, msg_state>: Initialize.
3689         (struct darwin_thread_info) <signaled, single_step>: Change
3690         type and initialize.
3691         (struct darwin_thread_info) <event>: Initialize.
3692
3693 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3694
3695         PR gdb/23555
3696         PR gdb/23558
3697         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
3698         guesses.
3699
3700 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3701
3702         Revert:
3703         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3704
3705         PR gdb/23555
3706         PR gdb/23558
3707         * gnulib/aclocal.m4: Regenerate.
3708         * gnulib/config.in: Regenerate.
3709         * gnulib/configure: Regenerate.
3710         * gnulib/import/Makefile.am: Update.
3711         * gnulib/import/Makefile.in: Update.
3712         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3713         * gnulib/import/_Noreturn.h: ... this.
3714         * gnulib/import/alloca.in.h: Update.
3715         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3716         * gnulib/import/arg-nonnull.h: ... this.
3717         * gnulib/import/assure.h: Update.
3718         * gnulib/import/at-func.c: Update.
3719         * gnulib/import/basename-lgpl.c: Update.
3720         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3721         * gnulib/import/c++defs.h: ... this.
3722         * gnulib/import/canonicalize-lgpl.c: Update.
3723         * gnulib/import/cdefs.h: Update.
3724         * gnulib/import/chdir-long.c: Update.
3725         * gnulib/import/chdir-long.h: Update.
3726         * gnulib/import/cloexec.c: Update.
3727         * gnulib/import/cloexec.h: Update.
3728         * gnulib/import/close.c: Update.
3729         * gnulib/import/closedir.c: Update.
3730         * gnulib/import/config.charset: Update.
3731         * gnulib/import/dirent-private.h: Update.
3732         * gnulib/import/dirent.in.h: Update.
3733         * gnulib/import/dirfd.c: Update.
3734         * gnulib/import/dirname-lgpl.c: Update.
3735         * gnulib/import/dirname.h: Update.
3736         * gnulib/import/dosname.h: Update.
3737         * gnulib/import/dup-safer-flag.c: Update.
3738         * gnulib/import/dup-safer.c: Update.
3739         * gnulib/import/dup.c: Update.
3740         * gnulib/import/dup2.c: Update.
3741         * gnulib/import/errno.in.h: Update.
3742         * gnulib/import/error.c: Update.
3743         * gnulib/import/error.h: Update.
3744         * gnulib/import/exitfail.c: Update.
3745         * gnulib/import/exitfail.h: Update.
3746         * gnulib/import/extra/update-copyright: Update.
3747         * gnulib/import/fchdir.c: Update.
3748         * gnulib/import/fcntl.c: Update.
3749         * gnulib/import/fcntl.in.h: Update.
3750         * gnulib/import/fd-hook.c: Update.
3751         * gnulib/import/fd-hook.h: Update.
3752         * gnulib/import/fd-safer-flag.c: Update.
3753         * gnulib/import/fd-safer.c: Update.
3754         * gnulib/import/fdopendir.c: Update.
3755         * gnulib/import/filename.h: Update.
3756         * gnulib/import/filenamecat-lgpl.c: Update.
3757         * gnulib/import/filenamecat.h: Update.
3758         * gnulib/import/flexmember.h: Update.
3759         * gnulib/import/float+.h: Update.
3760         * gnulib/import/float.c: Update.
3761         * gnulib/import/float.in.h: Update.
3762         * gnulib/import/fnmatch.c: Update.
3763         * gnulib/import/fnmatch.in.h: Update.
3764         * gnulib/import/fnmatch_loop.c: Update.
3765         * gnulib/import/fpucw.h: Update.
3766         * gnulib/import/frexp.c: Update.
3767         * gnulib/import/frexpl.c: Update.
3768         * gnulib/import/fstat.c: Update.
3769         * gnulib/import/fstatat.c: Update.
3770         * gnulib/import/getcwd-lgpl.c: Update.
3771         * gnulib/import/getcwd.c: Update.
3772         * gnulib/import/getdtablesize.c: Update.
3773         * gnulib/import/getlogin_r.c: Update.
3774         * gnulib/import/getprogname.c: Update.
3775         * gnulib/import/getprogname.h: Update.
3776         * gnulib/import/gettext.h: Update.
3777         * gnulib/import/gettimeofday.c: Update.
3778         * gnulib/import/glob-libc.h: Update.
3779         * gnulib/import/glob.c: Update.
3780         * gnulib/import/glob.in.h: Update.
3781         * gnulib/import/glob_internal.h: Update.
3782         * gnulib/import/glob_pattern_p.c: Update.
3783         * gnulib/import/globfree.c: Update.
3784         * gnulib/import/hard-locale.c: Update.
3785         * gnulib/import/hard-locale.h: Update.
3786         * gnulib/import/intprops.h: Update.
3787         * gnulib/import/inttypes.in.h: Update.
3788         * gnulib/import/isnan.c: Update.
3789         * gnulib/import/isnand-nolibm.h: Update.
3790         * gnulib/import/isnand.c: Update.
3791         * gnulib/import/isnanl-nolibm.h: Update.
3792         * gnulib/import/isnanl.c: Update.
3793         * gnulib/import/itold.c: Update.
3794         * gnulib/import/libc-config.h: Update.
3795         * gnulib/import/limits.in.h: Update.
3796         * gnulib/import/localcharset.c: Update.
3797         * gnulib/import/localcharset.h: Update.
3798         * gnulib/import/localtime-buffer.c: Update.
3799         * gnulib/import/localtime-buffer.h: Update.
3800         * gnulib/import/lstat.c: Update.
3801         * gnulib/import/m4/00gnulib.m4: Update.
3802         * gnulib/import/m4/__inline.m4: Update.
3803         * gnulib/import/m4/absolute-header.m4: Update.
3804         * gnulib/import/m4/alloca.m4: Update.
3805         * gnulib/import/m4/builtin-expect.m4: Update.
3806         * gnulib/import/m4/canonicalize.m4: Update.
3807         * gnulib/import/m4/chdir-long.m4: Update.
3808         * gnulib/import/m4/close.m4: Update.
3809         * gnulib/import/m4/closedir.m4: Update.
3810         * gnulib/import/m4/configmake.m4: Update.
3811         * gnulib/import/m4/d-ino.m4: Update.
3812         * gnulib/import/m4/d-type.m4: Update.
3813         * gnulib/import/m4/dirent_h.m4: Update.
3814         * gnulib/import/m4/dirfd.m4: Update.
3815         * gnulib/import/m4/dirname.m4: Update.
3816         * gnulib/import/m4/double-slash-root.m4: Update.
3817         * gnulib/import/m4/dup.m4: Update.
3818         * gnulib/import/m4/dup2.m4: Update.
3819         * gnulib/import/m4/eealloc.m4: Update.
3820         * gnulib/import/m4/environ.m4: Update.
3821         * gnulib/import/m4/errno_h.m4: Update.
3822         * gnulib/import/m4/error.m4: Update.
3823         * gnulib/import/m4/exponentd.m4: Update.
3824         * gnulib/import/m4/exponentl.m4: Update.
3825         * gnulib/import/m4/extensions.m4: Update.
3826         * gnulib/import/m4/extern-inline.m4: Update.
3827         * gnulib/import/m4/fchdir.m4: Update.
3828         * gnulib/import/m4/fcntl-o.m4: Update.
3829         * gnulib/import/m4/fcntl.m4: Update.
3830         * gnulib/import/m4/fcntl_h.m4: Update.
3831         * gnulib/import/m4/fdopendir.m4: Update.
3832         * gnulib/import/m4/filenamecat.m4: Update.
3833         * gnulib/import/m4/flexmember.m4: Update.
3834         * gnulib/import/m4/float_h.m4: Update.
3835         * gnulib/import/m4/fnmatch.m4: Update.
3836         * gnulib/import/m4/fnmatch_h.m4: Update.
3837         * gnulib/import/m4/fpieee.m4: Update.
3838         * gnulib/import/m4/frexp.m4: Update.
3839         * gnulib/import/m4/frexpl.m4: Update.
3840         * gnulib/import/m4/fstat.m4: Update.
3841         * gnulib/import/m4/fstatat.m4: Update.
3842         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3843         * gnulib/import/m4/getcwd-path-max.m4: Update.
3844         * gnulib/import/m4/getcwd.m4: Update.
3845         * gnulib/import/m4/getdtablesize.m4: Update.
3846         * gnulib/import/m4/getlogin.m4: Update.
3847         * gnulib/import/m4/getlogin_r.m4: Update.
3848         * gnulib/import/m4/getpagesize.m4: Update.
3849         * gnulib/import/m4/getprogname.m4: Update.
3850         * gnulib/import/m4/gettimeofday.m4: Update.
3851         * gnulib/import/m4/glibc21.m4: Update.
3852         * gnulib/import/m4/glob.m4: Update.
3853         * gnulib/import/m4/glob_h.m4: Update.
3854         * gnulib/import/m4/gnulib-cache.m4: Update.
3855         * gnulib/import/m4/gnulib-common.m4: Update.
3856         * gnulib/import/m4/gnulib-comp.m4: Update.
3857         * gnulib/import/m4/gnulib-tool.m4: Update.
3858         * gnulib/import/m4/hard-locale.m4: Update.
3859         * gnulib/import/m4/include_next.m4: Update.
3860         * gnulib/import/m4/inttypes-pri.m4: Update.
3861         * gnulib/import/m4/inttypes.m4: Update.
3862         * gnulib/import/m4/isnand.m4: Update.
3863         * gnulib/import/m4/isnanl.m4: Update.
3864         * gnulib/import/m4/largefile.m4: Update.
3865         * gnulib/import/m4/limits-h.m4: Update.
3866         * gnulib/import/m4/localcharset.m4: Update.
3867         * gnulib/import/m4/locale-fr.m4: Update.
3868         * gnulib/import/m4/locale-ja.m4: Update.
3869         * gnulib/import/m4/locale-zh.m4: Update.
3870         * gnulib/import/m4/localtime-buffer.m4: Update.
3871         * gnulib/import/m4/longlong.m4: Update.
3872         * gnulib/import/m4/lstat.m4: Update.
3873         * gnulib/import/m4/malloc.m4: Update.
3874         * gnulib/import/m4/malloca.m4: Update.
3875         * gnulib/import/m4/math_h.m4: Update.
3876         * gnulib/import/m4/mbrtowc.m4: Update.
3877         * gnulib/import/m4/mbsinit.m4: Update.
3878         * gnulib/import/m4/mbsrtowcs.m4: Update.
3879         * gnulib/import/m4/mbstate_t.m4: Update.
3880         * gnulib/import/m4/memchr.m4: Update.
3881         * gnulib/import/m4/memmem.m4: Update.
3882         * gnulib/import/m4/mempcpy.m4: Update.
3883         * gnulib/import/m4/memrchr.m4: Update.
3884         * gnulib/import/m4/mkdir.m4: Update.
3885         * gnulib/import/m4/mkstemp.m4: Update.
3886         * gnulib/import/m4/mmap-anon.m4: Update.
3887         * gnulib/import/m4/mode_t.m4: Update.
3888         * gnulib/import/m4/msvc-inval.m4: Update.
3889         * gnulib/import/m4/msvc-nothrow.m4: Update.
3890         * gnulib/import/m4/multiarch.m4: Update.
3891         * gnulib/import/m4/nocrash.m4: Update.
3892         * gnulib/import/m4/off_t.m4: Update.
3893         * gnulib/import/m4/onceonly.m4: Update.
3894         * gnulib/import/m4/open-cloexec.m4: Update.
3895         * gnulib/import/m4/open.m4: Update.
3896         * gnulib/import/m4/openat.m4: Update.
3897         * gnulib/import/m4/opendir.m4: Update.
3898         * gnulib/import/m4/pathmax.m4: Update.
3899         * gnulib/import/m4/rawmemchr.m4: Update.
3900         * gnulib/import/m4/readdir.m4: Update.
3901         * gnulib/import/m4/readlink.m4: Update.
3902         * gnulib/import/m4/realloc.m4: Update.
3903         * gnulib/import/m4/rename.m4: Update.
3904         * gnulib/import/m4/rewinddir.m4: Update.
3905         * gnulib/import/m4/rmdir.m4: Update.
3906         * gnulib/import/m4/save-cwd.m4: Update.
3907         * gnulib/import/m4/secure_getenv.m4: Update.
3908         * gnulib/import/m4/setenv.m4: Update.
3909         * gnulib/import/m4/signal_h.m4: Update.
3910         * gnulib/import/m4/ssize_t.m4: Update.
3911         * gnulib/import/m4/stat-time.m4: Update.
3912         * gnulib/import/m4/stat.m4: Update.
3913         * gnulib/import/m4/std-gnu11.m4: Update.
3914         * gnulib/import/m4/stdbool.m4: Update.
3915         * gnulib/import/m4/stddef_h.m4: Update.
3916         * gnulib/import/m4/stdint.m4: Update.
3917         * gnulib/import/m4/stdio_h.m4: Update.
3918         * gnulib/import/m4/stdlib_h.m4: Update.
3919         * gnulib/import/m4/strchrnul.m4: Update.
3920         * gnulib/import/m4/strdup.m4: Update.
3921         * gnulib/import/m4/strerror.m4: Update.
3922         * gnulib/import/m4/string_h.m4: Update.
3923         * gnulib/import/m4/strstr.m4: Update.
3924         * gnulib/import/m4/strtok_r.m4: Update.
3925         * gnulib/import/m4/sys_socket_h.m4: Update.
3926         * gnulib/import/m4/sys_stat_h.m4: Update.
3927         * gnulib/import/m4/sys_time_h.m4: Update.
3928         * gnulib/import/m4/sys_types_h.m4: Update.
3929         * gnulib/import/m4/tempname.m4: Update.
3930         * gnulib/import/m4/time_h.m4: Update.
3931         * gnulib/import/m4/unistd-safer.m4: Update.
3932         * gnulib/import/m4/unistd_h.m4: Update.
3933         * gnulib/import/m4/warn-on-use.m4: Update.
3934         * gnulib/import/m4/wchar_h.m4: Update.
3935         * gnulib/import/m4/wchar_t.m4: Update.
3936         * gnulib/import/m4/wctype_h.m4: Update.
3937         * gnulib/import/m4/wint_t.m4: Update.
3938         * gnulib/import/malloc.c: Update.
3939         * gnulib/import/malloc/scratch_buffer.h: Update.
3940         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3941         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3942         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3943         * gnulib/import/malloca.c: Update.
3944         * gnulib/import/malloca.h: Update.
3945         * gnulib/import/malloca.valgrind: Update.
3946         * gnulib/import/math.in.h: Update.
3947         * gnulib/import/mbrtowc.c: Update.
3948         * gnulib/import/mbsinit.c: Update.
3949         * gnulib/import/mbsrtowcs-impl.h: Update.
3950         * gnulib/import/mbsrtowcs-state.c: Update.
3951         * gnulib/import/mbsrtowcs.c: Update.
3952         * gnulib/import/memchr.c: Update.
3953         * gnulib/import/memmem.c: Update.
3954         * gnulib/import/mempcpy.c: Update.
3955         * gnulib/import/memrchr.c: Update.
3956         * gnulib/import/mkdir.c: Update.
3957         * gnulib/import/mkstemp.c: Update.
3958         * gnulib/import/msvc-inval.c: Update.
3959         * gnulib/import/msvc-inval.h: Update.
3960         * gnulib/import/msvc-nothrow.c: Update.
3961         * gnulib/import/msvc-nothrow.h: Update.
3962         * gnulib/import/open.c: Update.
3963         * gnulib/import/openat-die.c: Update.
3964         * gnulib/import/openat-priv.h: Update.
3965         * gnulib/import/openat-proc.c: Update.
3966         * gnulib/import/openat.c: Update.
3967         * gnulib/import/openat.h: Update.
3968         * gnulib/import/opendir.c: Update.
3969         * gnulib/import/pathmax.h: Update.
3970         * gnulib/import/pipe-safer.c: Update.
3971         * gnulib/import/rawmemchr.c: Update.
3972         * gnulib/import/readdir.c: Update.
3973         * gnulib/import/readlink.c: Update.
3974         * gnulib/import/realloc.c: Update.
3975         * gnulib/import/ref-add.sin: Update.
3976         * gnulib/import/ref-del.sin: Update.
3977         * gnulib/import/rename.c: Update.
3978         * gnulib/import/rewinddir.c: Update.
3979         * gnulib/import/rmdir.c: Update.
3980         * gnulib/import/same-inode.h: Update.
3981         * gnulib/import/save-cwd.c: Update.
3982         * gnulib/import/save-cwd.h: Update.
3983         * gnulib/import/scratch_buffer.h: Update.
3984         * gnulib/import/secure_getenv.c: Update.
3985         * gnulib/import/setenv.c: Update.
3986         * gnulib/import/signal.in.h: Update.
3987         * gnulib/import/stat-time.c: Update.
3988         * gnulib/import/stat-time.h: Update.
3989         * gnulib/import/stat-w32.c: Update.
3990         * gnulib/import/stat-w32.h: Update.
3991         * gnulib/import/stat.c: Update.
3992         * gnulib/import/stdbool.in.h: Update.
3993         * gnulib/import/stddef.in.h: Update.
3994         * gnulib/import/stdint.in.h: Update.
3995         * gnulib/import/stdio.in.h: Update.
3996         * gnulib/import/stdlib.in.h: Update.
3997         * gnulib/import/str-two-way.h: Update.
3998         * gnulib/import/strchrnul.c: Update.
3999         * gnulib/import/strdup.c: Update.
4000         * gnulib/import/streq.h: Update.
4001         * gnulib/import/strerror-override.c: Update.
4002         * gnulib/import/strerror-override.h: Update.
4003         * gnulib/import/strerror.c: Update.
4004         * gnulib/import/string.in.h: Update.
4005         * gnulib/import/stripslash.c: Update.
4006         * gnulib/import/strnlen1.c: Update.
4007         * gnulib/import/strnlen1.h: Update.
4008         * gnulib/import/strstr.c: Update.
4009         * gnulib/import/strtok_r.c: Update.
4010         * gnulib/import/sys_stat.in.h: Update.
4011         * gnulib/import/sys_time.in.h: Update.
4012         * gnulib/import/sys_types.in.h: Update.
4013         * gnulib/import/tempname.c: Update.
4014         * gnulib/import/tempname.h: Update.
4015         * gnulib/import/time.in.h: Update.
4016         * gnulib/import/unistd--.h: Update.
4017         * gnulib/import/unistd-safer.h: Update.
4018         * gnulib/import/unistd.in.h: Update.
4019         * gnulib/import/unsetenv.c: Update.
4020         * gnulib/import/verify.h: Update.
4021         * gnulib/import/extra/snippet/warn-on-use.h: Update.
4022         * gnulib/import/wchar.in.h: Update.
4023         * gnulib/import/wctype.in.h: Update.
4024         * gnulib/import/xalloc-oversized.h: Update.
4025         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
4026         "53e2c179f26a890fa6685af4b6c1397ee370433b".
4027
4028 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
4029
4030         * record-btrace.c (get_thread_current_frame): Remove
4031         old_inferior_ptid.
4032
4033 2018-09-10  Jerome Guitton  <guitton@adacore.com>
4034
4035         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
4036         with check_tag to 1 if and only if the type is tagged and the
4037         component being searched cannot been found in the current
4038         view. Otherwise, always call ada_to_fixed_type with
4039         check_tag to 0.
4040
4041 2018-09-10  Xavier Roirand  <roirand@adacore.com>
4042
4043         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
4044         declaration.
4045         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
4046         * ada-varobj.c (ada_varobj_get_number_of_children,
4047         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
4048
4049 2018-09-10  Xavier Roirand  <roirand@adacore.com>
4050
4051         * ada-valprint.c (ada_value_print): Use type instead of
4052         enclosing type.
4053
4054 2018-09-10  Xavier Roirand  <roirand@adacore.com>
4055
4056         * ada-lang.c (ada_value_subscript): Handle case when parameter is
4057         an array of access to unconstrained array.
4058
4059 2018-09-10  Xavier Roirand  <roirand@adacore.com>
4060
4061         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
4062         (ada_check_typedef): Use it.
4063
4064 2018-09-10  Xavier Roirand  <roirand@adacore.com>
4065
4066         * ada-varobj.c (ada_varobj_describe_struct_child)
4067         (ada_varobj_describe_child): Handle union case like struct one.
4068
4069 2018-09-10  Tom Tromey  <tom@tromey.com>
4070
4071         PR python/18380:
4072         * python/python.c (_initialize_python): Make example in "python"
4073         help work in Python 3.
4074
4075 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
4076
4077         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
4078         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
4079         $(EXEEXT) to the script, as it is not a program.
4080
4081 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
4082
4083         * python/py-prettyprint.c (pretty_print_one_value): Return
4084         gdbpy_ref<>.
4085         (print_string_repr): Adjust.
4086         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
4087         * python/python-internal.h (apply_varobj_pretty_printer): Return
4088         gdbpy_ref<>.
4089         * varobj.c (varobj_value_get_print_value): Adjust.
4090
4091 2018-09-08  Tom Tromey  <tom@tromey.com>
4092
4093         PR python/16047:
4094         * python/py-prettyprint.c (pretty_print_one_value): Check for
4095         to_string method.
4096
4097 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4098
4099         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
4100         replace_operator_with_call.
4101
4102 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4103
4104         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
4105
4106 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4107
4108         * ada-typeprint.c (print_range): Print the bounds using TYPE
4109         rather than its TYPE_TARGET_TYPE.
4110
4111 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4112
4113         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
4114         call to ada_to_fixed_value_create.
4115
4116 2018-09-08  Jerome Guitton  <guitton@adacore.com>
4117
4118         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
4119
4120 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4121
4122         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
4123         by calls to error.
4124
4125 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4126
4127         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
4128         Move update of loop variable "fi".
4129
4130 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4131
4132         * ada-lang.c (value_assign_to_component): In the case of
4133         big-endian targets, extract the bits of the given VAL
4134         using an src_offset of zero if container is not a scalar.
4135
4136 2018-09-06  Simon Ser  <contact@emersion.fr>
4137
4138         PR gdb/23105
4139         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
4140         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
4141         * fbsd-tdep.c (fbsd_make_note_desc): New.
4142         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
4143         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
4144         * target.h (enum target_object) Add FreeBSD-specific
4145         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
4146
4147 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
4148
4149         * compile/compile-c.h (generate_c_for_variable_locations):
4150         Change reference to pointer.
4151         * compile/compile-c-support.c (compile_program) <compute>:
4152         Likewise.
4153         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
4154         (generate_c_for_for_one_variable): Likewise
4155         (generate_c_for_variable_locations): Likewise
4156         * compile/compile-c-types.c (compile_c_instance::convert_type):
4157         Likewise
4158         * compile/compile-cplus-symbols.c (convert_one_symbol):
4159         std::move the scope passed to enter_scope.
4160         * compile/compile-cplus-types.c
4161         (compile_cplus_instance::enter_scope): Make parameter
4162         rvalue-reference.
4163         (compile_cplus_instance::new_scope): Change reference to
4164         pointer.
4165         (compile_cplus_instance::convert_type): Likewise
4166         (compile_cplus_convert_typedef): std::move the scope passed to
4167         enter_scope.
4168         (compile_cplus_convert_struct_or_union): Likewise.
4169         (compile_cplus_convert_enum): Likewise.
4170         (compile_cplus_convert_namespace): Likewise.
4171         * compile/compile-cplus.h (compile_cplus_instance)
4172         <enter_scope>: Make parameter rvalue-reference.
4173         * compile/compile-internal.h (compile_instance)
4174         <get_cached_type>: Likewise
4175         * compile/compile-loc2c.c (push): Likewise
4176         (pushf): Likewise
4177         (unary): Likewise
4178         (binary): Likewise
4179         (print_label): Likewise
4180         (pushf_register_address): Likewise
4181         (pushf_register): Likewise
4182         (do_compile_dwarf_expr_to_c): Likewise
4183         (compile_dwarf_expr_to_c): Likewise
4184         (compile_dwarf_bounds_to_c): Likewise
4185         * compile/compile.c (compile_instance::get_cached_type):
4186         Likewise
4187         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
4188         (compile_dwarf_bounds_to_c): Likewise
4189         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
4190         (dwarf2_compile_property_to_c): Likewise
4191         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
4192         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
4193         Likewise
4194
4195 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
4196
4197         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
4198         * tui/tui-data.c (init_content_element): Don't initialize it.
4199
4200 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
4201
4202         * tui/tui-data.h (struct tui_win_info)
4203         <detail::opaque>: Remove.
4204         * tui/tui-data.c (init_win_info): Remove assignment.
4205
4206 2018-09-05  Tom Tromey  <tom@tromey.com>
4207
4208         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
4209         -Wformat-nonliteral.
4210         * target-float.c (host_float_ops<T>::to_string)
4211         (host_float_ops<T>::from_string): Use
4212         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
4213         * configure: Rebuild.
4214
4215 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
4216
4217         * printcmd.c (printf_c_string): Use
4218         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
4219         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
4220
4221 2018-09-05  Tom Tromey  <tom@tromey.com>
4222
4223         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
4224
4225 2018-09-05  Tom de Vries  <tdevries@suse.de>
4226
4227         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
4228         with resolve_abstract_p == true.
4229         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
4230         defaulting to false. Propagate resolve_abstract_p to
4231         dwarf2_fetch_die_loc_sect_off.
4232         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
4233         parameter, defaulting to false.
4234         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
4235         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
4236         parameter.
4237         * dwarf2read.h (struct die_info): Forward-declare.
4238         (die_info_ptr): New typedef.
4239         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
4240
4241 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
4242
4243         GDB 8.2 released.
4244
4245 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
4246             Pedro Alves  <palves@redhat.com>
4247
4248         * gnulib/Makefile.in (aclocal_m4_deps): Move to
4249         "aclocal-m4-deps.mk".  Include file here.
4250         $(srcdir)/aclocal.m4: Add "configure.ac".
4251         * gnulib/aclocal-m4-deps.mk: New file.
4252         * gnulib/update-gnulib.sh: Automatically update
4253         "aclocal-m4-deps.mk".
4254
4255 2018-09-04  Tom Tromey  <tom@tromey.com>
4256
4257         * configure: Rebuild.
4258         * configure.ac: Remove multi-ice code.
4259
4260 2018-09-04  Tom Tromey  <tom@tromey.com>
4261
4262         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
4263         (ada-exp.o): Update.
4264
4265 2018-09-04  Tom Tromey  <tom@tromey.com>
4266
4267         * Makefile.in (printcmd.o, target-float.o): Remove.
4268         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
4269
4270 2018-09-04  Tom Tromey  <tom@tromey.com>
4271
4272         * gnulib/Makefile.in: Remove obsolete comment.
4273         * Makefile.in: Remove obsolete comment.
4274
4275 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
4276
4277         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
4278         line with '+'.
4279
4280 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4281
4282         * riscv-tdep.c: Add 'prologue-value.h' include.
4283         (struct riscv_unwind_cache): New struct.
4284         (riscv_debug_unwinder): New global.
4285         (riscv_scan_prologue): Update arguments, capture register details
4286         from prologue scan.
4287         (riscv_skip_prologue): Reformat arguments line, move end of
4288         prologue calculation into riscv_scan_prologue.
4289         (riscv_frame_cache): Update return type, create
4290         riscv_unwind_cache, scan the prologue, and fill in remaining cache
4291         details.
4292         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
4293         (riscv_frame_prev_register): Use the trad_frame within the
4294         riscv_unwind_cache.
4295         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
4296         flag.
4297
4298 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4299
4300         * trad-frame.h (trad_frame_set_realreg): Declare.
4301         (trad_frame_set_addr): Declare.
4302         * trad-frame.c (trad_frame_set_realreg): Define new function.
4303         (trad_frame_set_addr): Define new function.
4304         (trad_frame_set_reg_realreg): Use new function.
4305         (trad_frame_set_reg_addr): Use new function.
4306
4307 2018-09-01  Keith Seitz  <keiths@redhat.com>
4308
4309         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
4310         pulongest instead of "%lld".
4311         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
4312         ATTRIBUTE_UNUSED.
4313
4314 2018-08-31  Tom Tromey  <tom@tromey.com>
4315
4316         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
4317         variant part type.
4318
4319 2018-08-31  Pedro Alves  <palves@redhat.com>
4320
4321         * gdbarch.h: Regenerate.
4322
4323 2018-08-31  Pedro Alves  <palves@redhat.com>
4324
4325         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
4326         * target.h (Hardware watchpoint interfaces): Describe
4327         continuable/steppable/non-steppable watchpoints.
4328         * gdbarch.h, gdbarch.c: Regenerate.
4329
4330 2018-08-31  Pedro Alves  <palves@redhat.com>
4331
4332         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
4333         Delete.
4334         * s390-linux-nat.c
4335         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
4336         * target.h (target_ops::have_continuable_watchpoint): Delete.
4337         (target_have_continuable_watchpoint): Delete.
4338         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
4339         * target-delegates.c: Regenerate.
4340
4341 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
4342
4343         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
4344         the files present in "gnulib/import/m4/".
4345
4346 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4347
4348         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
4349         c.sw, c.swsp, and c.sdsp.
4350
4351 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4352
4353         * riscv-tdep.c (struct riscv_inferior_data): Delete.
4354         (riscv_read_misa_reg): Don't cache value read into inferior data.
4355         (riscv_new_inferior_data): Delete.
4356         (riscv_inferior_data_cleanup): Delete.
4357         (riscv_inferior_data): Delete.
4358         (riscv_invalidate_inferior_data): Delete.
4359         (_initialize_riscv_tdep): Remove initialisation of inferior data.
4360
4361 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
4362
4363         * compile/compile-cplus-types.c
4364         (compile_cplus_instance::leave_scope): Take the address of scope
4365         object.
4366         (compile_cplus_instance::convert_qualified_base): Compare quals
4367         to 0.
4368
4369 2018-08-30  Keith Seitz  <keiths@redhat.com>
4370
4371         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
4372         Use "%s" and host_address_to_string instead of "%p" in printf.
4373
4374 2018-08-29  Keith Seitz  <keiths@redhat.com>
4375
4376         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
4377         and compile-cplus-types.c.
4378         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
4379         * c-lang.c (cplus_language_defn): Set C++ compile functions.
4380         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
4381         Declare.
4382         * compile/compile-c-support.c: Include compile-cplus.h.
4383         (load_libcompile): Templatize.
4384         (get_compile_context): "New" function.
4385         (c_get_compile_context): Use get_compile_context.
4386         (cplus_get_compile_context): New function.
4387         (cplus_push_user_expression, cplus_pop_user_expression)
4388         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
4389         (cplus_compute_program): Define new structs/functions.
4390         * compile/compile-cplus-symmbols.c: New file.
4391         * compile/compile-cplus-types.c: New file.
4392         * compile/compile-cplus.h: New file.
4393         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
4394         Declare.
4395         * compile/compile-object-load.c (get_out_value_type): Use
4396         strncmp_iw when comparing symbol names.
4397         (compile_object_load): Add mst_bss and mst_data.
4398         * compile/compile.c (_initialize_compile): Remove
4399         -Wno-implicit-function-declaration from `compile_args'.
4400         * compile/gcc-cp-plugin.h: New file.
4401         * NEWS: Mention C++ compile support and new debug options.
4402
4403 2018-08-29  Keith Seitz  <keiths@redhat.com>
4404
4405         * linespec.c (collect_info::add_symbol): Make virtual.
4406         (struct symbol_searcher_collect_info): New struct.
4407         (symbol_searcher::find_all_symbols): New method.
4408         * symtab.h (class symbol_searcher): New class.
4409
4410 2018-08-29  Keith Seitz  <keiths@redhat.com>
4411
4412         * linespec.c (struct linespec) <function_symbols, label_symbols>:
4413         Change to vector of block_symbol.  Update all users.
4414         (struct collect_info) <symbols>: Likewise.
4415         (collect_info::add_symbol): Take block_symbol as argument.
4416         Update all callers.
4417         (decode_compound_collector) <m_symbols>: Change type to vector
4418         of block_symbol.  Update all users.
4419         (decode_compound_collector::operator ()): Change parameter type
4420         to block_symbol.
4421         (find_method, find_function_symbols, find_linespec_symbols)
4422         (find_label_symbols_in_block, find_label_symbols): Change symbol
4423         vectors to block_symbol vectors.
4424         * symtab.h (symbol_found_callback_ftype): Change parameter type to
4425         block_symbol.
4426
4427 2018-08-29  Keith Seitz  <keiths@redhat.com>
4428
4429         * linespec.c (symbolp): Remove typedef and VEC definitions.
4430         (bound_minimal_symbol_d): Likewise.
4431
4432 2018-08-29  Keith Seitz  <keiths@redhat.com>
4433
4434         * linespec.c (decode_compound_collector::decode_compound_collector):
4435         Remove initialization for `m_symtabs'.
4436         (decode_compound_collector::release_symbols): Change return type
4437         to std::vector.  Update all callers.
4438         (class decode_compound_collector) <m_symbols>: Change type to
4439         std::vector.
4440         (lookup_prefix_sym): Change return type to std::vector.  Update all
4441         callers.
4442         (compare_symbols): Remove.
4443         (std_compare_symbols): Rename to `compare_symbols'.
4444         (find_method): Change `sym_classes' parameter to std::vector.
4445         Update all callers.  Use std::sort to sort sym_classes.
4446         (find_linespec_symbols): Remove cleanup.
4447
4448 2018-08-29  Keith Seitz  <keiths@redhat.com>
4449
4450         * linespec.c (struct linespec) <minimal_symbols>: Change type to
4451         std::vector.  Update all users.
4452         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
4453         (struct collect_info) <minimal_symbols>: Likewise.
4454         (compare_msymbols): Return bool.  Change parameters to const
4455         bound_minimal_symbol references.
4456         (find_method, find_function_symbols, find_linespec_symbols): Change
4457         `minsyms' parameter to std::vector.  Update all callers.
4458
4459 2018-08-29  Keith Seitz  <keiths@redhat.com>
4460
4461         * linespec.c (struct linespec) <label_symbols>: Change type to
4462         std::vector.  Update all users.
4463         (find_label_symbols_in_block): Change `result' parameter to
4464         std::vector.  Update all callers.
4465         (find_label_symbols): Return std::vector.  Update all callers.
4466
4467 2018-08-29  Keith Seitz  <keiths@redhat.com>
4468
4469         * linespec.c (struct linespec) <function_symbols>: Change type to
4470         std::vector.  Update all users.
4471         (struct collect_info) <function_symbols>: Likewise.
4472         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
4473         (std_compare_symbols): New function.
4474         (find_method, find_function_symbols, find_linespec_symbols)
4475         (find_label_symbols_in_block): Change `symbols' parameter to
4476         std::vector.  Update all callers.
4477         (find_label_symbols): Likewise for `function_symbols' and
4478         `label_funcs_ret'.
4479
4480 2018-08-29  Keith Seitz  <keiths@redhat.com>
4481
4482         * linespec.c (symtab_vector_up): Define.
4483         (struct linespec) <file_symtabs>: Change type to std::vector *.
4484         Update all uses.
4485         (struct collect_info) <file_symtabs>: Likewise.
4486         (collect_symtabs_from_filename): Return symtab_vector_up.
4487         Update all callers.
4488         (decode_objc): Remove cleanup.
4489         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
4490         (symtab_collector::release_symtabs): Return symtab_vector_up.
4491         Update all callers.
4492         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
4493         Update all users.
4494         (collect_symtabs_from_filename, symtabs_from_filename): Return
4495         symtab_vector_up.  Update all callers.
4496
4497 2018-08-29  Tom Tromey  <tom@tromey.com>
4498
4499         * csky-tdep.c (csky_analyze_prologue): Use
4500         core_addr_to_string_nz.
4501
4502 2018-08-29  Tom Tromey  <tom@tromey.com>
4503
4504         * windows-nat.c (struct xlate_exception) <them>: Change type to
4505         DWORD.
4506         (xlate): Fix formatting.  Remove last entry.
4507         (struct xlate_exception, xlate): Comment out.
4508         (windows_nat_target::resume): Use ranged for.
4509
4510 2018-08-29  Jim Wilson  <jimw@sifive.com>
4511
4512         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
4513         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
4514         of NT_PRFPREG.
4515         (riscv_linux_nat_target::store_registers): Likewise.
4516
4517 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
4518
4519         PR gdb/23555
4520         PR gdb/23558
4521         * gnulib/aclocal.m4: Regenerate.
4522         * gnulib/config.in: Regenerate.
4523         * gnulib/configure: Regenerate.
4524         * gnulib/import/Makefile.am: Update.
4525         * gnulib/import/Makefile.in: Update.
4526         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
4527         * gnulib/import/_Noreturn.h: ... this.
4528         * gnulib/import/alloca.in.h: Update.
4529         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
4530         * gnulib/import/arg-nonnull.h: ... this.
4531         * gnulib/import/assure.h: Update.
4532         * gnulib/import/at-func.c: Update.
4533         * gnulib/import/basename-lgpl.c: Update.
4534         * gnulib/import/extra/snippet/c++defs.h: Rename to...
4535         * gnulib/import/c++defs.h: ... this.
4536         * gnulib/import/canonicalize-lgpl.c: Update.
4537         * gnulib/import/cdefs.h: Update.
4538         * gnulib/import/chdir-long.c: Update.
4539         * gnulib/import/chdir-long.h: Update.
4540         * gnulib/import/cloexec.c: Update.
4541         * gnulib/import/cloexec.h: Update.
4542         * gnulib/import/close.c: Update.
4543         * gnulib/import/closedir.c: Update.
4544         * gnulib/import/config.charset: Update.
4545         * gnulib/import/dirent-private.h: Update.
4546         * gnulib/import/dirent.in.h: Update.
4547         * gnulib/import/dirfd.c: Update.
4548         * gnulib/import/dirname-lgpl.c: Update.
4549         * gnulib/import/dirname.h: Update.
4550         * gnulib/import/dosname.h: Update.
4551         * gnulib/import/dup-safer-flag.c: Update.
4552         * gnulib/import/dup-safer.c: Update.
4553         * gnulib/import/dup.c: Update.
4554         * gnulib/import/dup2.c: Update.
4555         * gnulib/import/errno.in.h: Update.
4556         * gnulib/import/error.c: Update.
4557         * gnulib/import/error.h: Update.
4558         * gnulib/import/exitfail.c: Update.
4559         * gnulib/import/exitfail.h: Update.
4560         * gnulib/import/extra/update-copyright: Update.
4561         * gnulib/import/fchdir.c: Update.
4562         * gnulib/import/fcntl.c: Update.
4563         * gnulib/import/fcntl.in.h: Update.
4564         * gnulib/import/fd-hook.c: Update.
4565         * gnulib/import/fd-hook.h: Update.
4566         * gnulib/import/fd-safer-flag.c: Update.
4567         * gnulib/import/fd-safer.c: Update.
4568         * gnulib/import/fdopendir.c: Update.
4569         * gnulib/import/filename.h: Update.
4570         * gnulib/import/filenamecat-lgpl.c: Update.
4571         * gnulib/import/filenamecat.h: Update.
4572         * gnulib/import/flexmember.h: Update.
4573         * gnulib/import/float+.h: Update.
4574         * gnulib/import/float.c: Update.
4575         * gnulib/import/float.in.h: Update.
4576         * gnulib/import/fnmatch.c: Update.
4577         * gnulib/import/fnmatch.in.h: Update.
4578         * gnulib/import/fnmatch_loop.c: Update.
4579         * gnulib/import/fpucw.h: Update.
4580         * gnulib/import/frexp.c: Update.
4581         * gnulib/import/frexpl.c: Update.
4582         * gnulib/import/fstat.c: Update.
4583         * gnulib/import/fstatat.c: Update.
4584         * gnulib/import/getcwd-lgpl.c: Update.
4585         * gnulib/import/getcwd.c: Update.
4586         * gnulib/import/getdtablesize.c: Update.
4587         * gnulib/import/getlogin_r.c: Update.
4588         * gnulib/import/getprogname.c: Update.
4589         * gnulib/import/getprogname.h: Update.
4590         * gnulib/import/gettext.h: Update.
4591         * gnulib/import/gettimeofday.c: Update.
4592         * gnulib/import/glob-libc.h: Update.
4593         * gnulib/import/glob.c: Update.
4594         * gnulib/import/glob.in.h: Update.
4595         * gnulib/import/glob_internal.h: Update.
4596         * gnulib/import/glob_pattern_p.c: Update.
4597         * gnulib/import/globfree.c: Update.
4598         * gnulib/import/hard-locale.c: Update.
4599         * gnulib/import/hard-locale.h: Update.
4600         * gnulib/import/intprops.h: Update.
4601         * gnulib/import/inttypes.in.h: Update.
4602         * gnulib/import/isnan.c: Update.
4603         * gnulib/import/isnand-nolibm.h: Update.
4604         * gnulib/import/isnand.c: Update.
4605         * gnulib/import/isnanl-nolibm.h: Update.
4606         * gnulib/import/isnanl.c: Update.
4607         * gnulib/import/itold.c: Update.
4608         * gnulib/import/libc-config.h: Update.
4609         * gnulib/import/limits.in.h: Update.
4610         * gnulib/import/localcharset.c: Update.
4611         * gnulib/import/localcharset.h: Update.
4612         * gnulib/import/localtime-buffer.c: Update.
4613         * gnulib/import/localtime-buffer.h: Update.
4614         * gnulib/import/lstat.c: Update.
4615         * gnulib/import/m4/00gnulib.m4: Update.
4616         * gnulib/import/m4/__inline.m4: Update.
4617         * gnulib/import/m4/absolute-header.m4: Update.
4618         * gnulib/import/m4/alloca.m4: Update.
4619         * gnulib/import/m4/builtin-expect.m4: Update.
4620         * gnulib/import/m4/canonicalize.m4: Update.
4621         * gnulib/import/m4/chdir-long.m4: Update.
4622         * gnulib/import/m4/close.m4: Update.
4623         * gnulib/import/m4/closedir.m4: Update.
4624         * gnulib/import/m4/configmake.m4: Update.
4625         * gnulib/import/m4/d-ino.m4: Update.
4626         * gnulib/import/m4/d-type.m4: Update.
4627         * gnulib/import/m4/dirent_h.m4: Update.
4628         * gnulib/import/m4/dirfd.m4: Update.
4629         * gnulib/import/m4/dirname.m4: Update.
4630         * gnulib/import/m4/double-slash-root.m4: Update.
4631         * gnulib/import/m4/dup.m4: Update.
4632         * gnulib/import/m4/dup2.m4: Update.
4633         * gnulib/import/m4/eealloc.m4: Update.
4634         * gnulib/import/m4/environ.m4: Update.
4635         * gnulib/import/m4/errno_h.m4: Update.
4636         * gnulib/import/m4/error.m4: Update.
4637         * gnulib/import/m4/exponentd.m4: Update.
4638         * gnulib/import/m4/exponentl.m4: Update.
4639         * gnulib/import/m4/extensions.m4: Update.
4640         * gnulib/import/m4/extern-inline.m4: Update.
4641         * gnulib/import/m4/fchdir.m4: Update.
4642         * gnulib/import/m4/fcntl-o.m4: Update.
4643         * gnulib/import/m4/fcntl.m4: Update.
4644         * gnulib/import/m4/fcntl_h.m4: Update.
4645         * gnulib/import/m4/fdopendir.m4: Update.
4646         * gnulib/import/m4/filenamecat.m4: Update.
4647         * gnulib/import/m4/flexmember.m4: Update.
4648         * gnulib/import/m4/float_h.m4: Update.
4649         * gnulib/import/m4/fnmatch.m4: Update.
4650         * gnulib/import/m4/fnmatch_h.m4: Update.
4651         * gnulib/import/m4/fpieee.m4: Update.
4652         * gnulib/import/m4/frexp.m4: Update.
4653         * gnulib/import/m4/frexpl.m4: Update.
4654         * gnulib/import/m4/fstat.m4: Update.
4655         * gnulib/import/m4/fstatat.m4: Update.
4656         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
4657         * gnulib/import/m4/getcwd-path-max.m4: Update.
4658         * gnulib/import/m4/getcwd.m4: Update.
4659         * gnulib/import/m4/getdtablesize.m4: Update.
4660         * gnulib/import/m4/getlogin.m4: Update.
4661         * gnulib/import/m4/getlogin_r.m4: Update.
4662         * gnulib/import/m4/getpagesize.m4: Update.
4663         * gnulib/import/m4/getprogname.m4: Update.
4664         * gnulib/import/m4/gettimeofday.m4: Update.
4665         * gnulib/import/m4/glibc21.m4: Update.
4666         * gnulib/import/m4/glob.m4: Update.
4667         * gnulib/import/m4/glob_h.m4: Update.
4668         * gnulib/import/m4/gnulib-cache.m4: Update.
4669         * gnulib/import/m4/gnulib-common.m4: Update.
4670         * gnulib/import/m4/gnulib-comp.m4: Update.
4671         * gnulib/import/m4/gnulib-tool.m4: Update.
4672         * gnulib/import/m4/hard-locale.m4: Update.
4673         * gnulib/import/m4/include_next.m4: Update.
4674         * gnulib/import/m4/inttypes-pri.m4: Update.
4675         * gnulib/import/m4/inttypes.m4: Update.
4676         * gnulib/import/m4/isnand.m4: Update.
4677         * gnulib/import/m4/isnanl.m4: Update.
4678         * gnulib/import/m4/largefile.m4: Update.
4679         * gnulib/import/m4/limits-h.m4: Update.
4680         * gnulib/import/m4/localcharset.m4: Update.
4681         * gnulib/import/m4/locale-fr.m4: Update.
4682         * gnulib/import/m4/locale-ja.m4: Update.
4683         * gnulib/import/m4/locale-zh.m4: Update.
4684         * gnulib/import/m4/localtime-buffer.m4: Update.
4685         * gnulib/import/m4/longlong.m4: Update.
4686         * gnulib/import/m4/lstat.m4: Update.
4687         * gnulib/import/m4/malloc.m4: Update.
4688         * gnulib/import/m4/malloca.m4: Update.
4689         * gnulib/import/m4/math_h.m4: Update.
4690         * gnulib/import/m4/mbrtowc.m4: Update.
4691         * gnulib/import/m4/mbsinit.m4: Update.
4692         * gnulib/import/m4/mbsrtowcs.m4: Update.
4693         * gnulib/import/m4/mbstate_t.m4: Update.
4694         * gnulib/import/m4/memchr.m4: Update.
4695         * gnulib/import/m4/memmem.m4: Update.
4696         * gnulib/import/m4/mempcpy.m4: Update.
4697         * gnulib/import/m4/memrchr.m4: Update.
4698         * gnulib/import/m4/mkdir.m4: Update.
4699         * gnulib/import/m4/mkstemp.m4: Update.
4700         * gnulib/import/m4/mmap-anon.m4: Update.
4701         * gnulib/import/m4/mode_t.m4: Update.
4702         * gnulib/import/m4/msvc-inval.m4: Update.
4703         * gnulib/import/m4/msvc-nothrow.m4: Update.
4704         * gnulib/import/m4/multiarch.m4: Update.
4705         * gnulib/import/m4/nocrash.m4: Update.
4706         * gnulib/import/m4/off_t.m4: Update.
4707         * gnulib/import/m4/onceonly.m4: Update.
4708         * gnulib/import/m4/open-cloexec.m4: Update.
4709         * gnulib/import/m4/open.m4: Update.
4710         * gnulib/import/m4/openat.m4: Update.
4711         * gnulib/import/m4/opendir.m4: Update.
4712         * gnulib/import/m4/pathmax.m4: Update.
4713         * gnulib/import/m4/rawmemchr.m4: Update.
4714         * gnulib/import/m4/readdir.m4: Update.
4715         * gnulib/import/m4/readlink.m4: Update.
4716         * gnulib/import/m4/realloc.m4: Update.
4717         * gnulib/import/m4/rename.m4: Update.
4718         * gnulib/import/m4/rewinddir.m4: Update.
4719         * gnulib/import/m4/rmdir.m4: Update.
4720         * gnulib/import/m4/save-cwd.m4: Update.
4721         * gnulib/import/m4/secure_getenv.m4: Update.
4722         * gnulib/import/m4/setenv.m4: Update.
4723         * gnulib/import/m4/signal_h.m4: Update.
4724         * gnulib/import/m4/ssize_t.m4: Update.
4725         * gnulib/import/m4/stat-time.m4: Update.
4726         * gnulib/import/m4/stat.m4: Update.
4727         * gnulib/import/m4/std-gnu11.m4: Update.
4728         * gnulib/import/m4/stdbool.m4: Update.
4729         * gnulib/import/m4/stddef_h.m4: Update.
4730         * gnulib/import/m4/stdint.m4: Update.
4731         * gnulib/import/m4/stdio_h.m4: Update.
4732         * gnulib/import/m4/stdlib_h.m4: Update.
4733         * gnulib/import/m4/strchrnul.m4: Update.
4734         * gnulib/import/m4/strdup.m4: Update.
4735         * gnulib/import/m4/strerror.m4: Update.
4736         * gnulib/import/m4/string_h.m4: Update.
4737         * gnulib/import/m4/strstr.m4: Update.
4738         * gnulib/import/m4/strtok_r.m4: Update.
4739         * gnulib/import/m4/sys_socket_h.m4: Update.
4740         * gnulib/import/m4/sys_stat_h.m4: Update.
4741         * gnulib/import/m4/sys_time_h.m4: Update.
4742         * gnulib/import/m4/sys_types_h.m4: Update.
4743         * gnulib/import/m4/tempname.m4: Update.
4744         * gnulib/import/m4/time_h.m4: Update.
4745         * gnulib/import/m4/unistd-safer.m4: Update.
4746         * gnulib/import/m4/unistd_h.m4: Update.
4747         * gnulib/import/m4/warn-on-use.m4: Update.
4748         * gnulib/import/m4/wchar_h.m4: Update.
4749         * gnulib/import/m4/wchar_t.m4: Update.
4750         * gnulib/import/m4/wctype_h.m4: Update.
4751         * gnulib/import/m4/wint_t.m4: Update.
4752         * gnulib/import/malloc.c: Update.
4753         * gnulib/import/malloc/scratch_buffer.h: Update.
4754         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
4755         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
4756         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
4757         * gnulib/import/malloca.c: Update.
4758         * gnulib/import/malloca.h: Update.
4759         * gnulib/import/malloca.valgrind: Update.
4760         * gnulib/import/math.in.h: Update.
4761         * gnulib/import/mbrtowc.c: Update.
4762         * gnulib/import/mbsinit.c: Update.
4763         * gnulib/import/mbsrtowcs-impl.h: Update.
4764         * gnulib/import/mbsrtowcs-state.c: Update.
4765         * gnulib/import/mbsrtowcs.c: Update.
4766         * gnulib/import/memchr.c: Update.
4767         * gnulib/import/memmem.c: Update.
4768         * gnulib/import/mempcpy.c: Update.
4769         * gnulib/import/memrchr.c: Update.
4770         * gnulib/import/mkdir.c: Update.
4771         * gnulib/import/mkstemp.c: Update.
4772         * gnulib/import/msvc-inval.c: Update.
4773         * gnulib/import/msvc-inval.h: Update.
4774         * gnulib/import/msvc-nothrow.c: Update.
4775         * gnulib/import/msvc-nothrow.h: Update.
4776         * gnulib/import/open.c: Update.
4777         * gnulib/import/openat-die.c: Update.
4778         * gnulib/import/openat-priv.h: Update.
4779         * gnulib/import/openat-proc.c: Update.
4780         * gnulib/import/openat.c: Update.
4781         * gnulib/import/openat.h: Update.
4782         * gnulib/import/opendir.c: Update.
4783         * gnulib/import/pathmax.h: Update.
4784         * gnulib/import/pipe-safer.c: Update.
4785         * gnulib/import/rawmemchr.c: Update.
4786         * gnulib/import/readdir.c: Update.
4787         * gnulib/import/readlink.c: Update.
4788         * gnulib/import/realloc.c: Update.
4789         * gnulib/import/ref-add.sin: Update.
4790         * gnulib/import/ref-del.sin: Update.
4791         * gnulib/import/rename.c: Update.
4792         * gnulib/import/rewinddir.c: Update.
4793         * gnulib/import/rmdir.c: Update.
4794         * gnulib/import/same-inode.h: Update.
4795         * gnulib/import/save-cwd.c: Update.
4796         * gnulib/import/save-cwd.h: Update.
4797         * gnulib/import/scratch_buffer.h: Update.
4798         * gnulib/import/secure_getenv.c: Update.
4799         * gnulib/import/setenv.c: Update.
4800         * gnulib/import/signal.in.h: Update.
4801         * gnulib/import/stat-time.c: Update.
4802         * gnulib/import/stat-time.h: Update.
4803         * gnulib/import/stat-w32.c: Update.
4804         * gnulib/import/stat-w32.h: Update.
4805         * gnulib/import/stat.c: Update.
4806         * gnulib/import/stdbool.in.h: Update.
4807         * gnulib/import/stddef.in.h: Update.
4808         * gnulib/import/stdint.in.h: Update.
4809         * gnulib/import/stdio.in.h: Update.
4810         * gnulib/import/stdlib.in.h: Update.
4811         * gnulib/import/str-two-way.h: Update.
4812         * gnulib/import/strchrnul.c: Update.
4813         * gnulib/import/strdup.c: Update.
4814         * gnulib/import/streq.h: Update.
4815         * gnulib/import/strerror-override.c: Update.
4816         * gnulib/import/strerror-override.h: Update.
4817         * gnulib/import/strerror.c: Update.
4818         * gnulib/import/string.in.h: Update.
4819         * gnulib/import/stripslash.c: Update.
4820         * gnulib/import/strnlen1.c: Update.
4821         * gnulib/import/strnlen1.h: Update.
4822         * gnulib/import/strstr.c: Update.
4823         * gnulib/import/strtok_r.c: Update.
4824         * gnulib/import/sys_stat.in.h: Update.
4825         * gnulib/import/sys_time.in.h: Update.
4826         * gnulib/import/sys_types.in.h: Update.
4827         * gnulib/import/tempname.c: Update.
4828         * gnulib/import/tempname.h: Update.
4829         * gnulib/import/time.in.h: Update.
4830         * gnulib/import/unistd--.h: Update.
4831         * gnulib/import/unistd-safer.h: Update.
4832         * gnulib/import/unistd.in.h: Update.
4833         * gnulib/import/unsetenv.c: Update.
4834         * gnulib/import/verify.h: Update.
4835         * gnulib/import/extra/snippet/warn-on-use.h: Update.
4836         * gnulib/import/wchar.in.h: Update.
4837         * gnulib/import/wctype.in.h: Update.
4838         * gnulib/import/xalloc-oversized.h: Update.
4839         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
4840         "53e2c179f26a890fa6685af4b6c1397ee370433b".
4841
4842 2018-08-16  Gary Benson <gbenson@redhat.com>
4843
4844         PR gdb/13000:
4845         * gdb/main.c (captured_main_1): Exit with nonzero status
4846         in batch mode if the last command to be executed failed.
4847         * NEWS: Mention the above.
4848
4849 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
4850
4851         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
4852         end of warning message.
4853
4854 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4855
4856         PR gdb/22943:
4857         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
4858         (aarch64_extract_return_value): Use
4859         aapcs_is_vfp_call_or_return_candidate.
4860         (aarch64_return_in_memory): Likewise.
4861         (aarch64_store_return_value): Likewise.
4862
4863 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4864
4865         * aarch64-tdep.c
4866         (aapcs_is_vfp_call_or_return_candidate): Make static
4867         (pass_in_v_or_stack): Remove function.
4868         (pass_in_v_vfp_candidate): New function.
4869         (aarch64_push_dummy_call): Check for float register candidates.
4870
4871 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4872
4873         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
4874         (aapcs_is_vfp_call_or_return_candidate_1): New function.
4875         (aapcs_is_vfp_call_or_return_candidate): Likewise.
4876
4877 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
4878
4879         PR build/23399
4880         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
4881         (struct ipa_sym_addresses): Rename to...
4882         (struct ipa_sym_addresses_common): ... this.
4883         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
4884
4885 2018-08-28  Tom Tromey  <tom@tromey.com>
4886
4887         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4888         (token_fifo): Now a std::vector.
4889         (yylex, c_parse): Update.
4890         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4891         (token_fifo): Now a std::vector.
4892         (yylex, d_parse): Update.
4893         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4894         (token_fifo): Now a std::vector.
4895         (yylex, go_parse): Update.
4896
4897 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
4898
4899         * parser-defs.h (struct type_stack) <elements>: Change type to
4900         std::vector<union type_stack_elt>.
4901         <depth, size>: Remove.
4902         * parse.c (parse_exp_in_context_1): Adjust.
4903         (type_stack_reserve): Remove.
4904         (check_type_stack_depth): Remove.
4905         (insert_into_type_stack): Adjust to std::vector.
4906         (insert_type): Likewise.
4907         (push_type): Likewise.
4908         (push_type_int): Likewise.
4909         (insert_type_address_space): Likewise.
4910         (pop_type): Likewise.
4911         (pop_type_int): Likewise.
4912         (pop_typelist): Likewise.
4913         (pop_type_stack): Likewise.
4914         (append_type_stack): Likewise.
4915         (push_type_stack): Likewise.
4916         (get_type_stack): Likewise.
4917         (type_stack_cleanup): Likewise.
4918         (push_typelist): Likewise.
4919         (follow_types): Likewise.
4920         (_initialize_parse): Likewise.
4921
4922 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
4923
4924         * NEWS: Mention csky target.
4925
4926 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
4927             Hafiz Abid Qadeer  <abidh@codesourcery.com>
4928             Don Breazeal  <donb@codesourcery.com>
4929
4930         * csky-linux-tdep.c: New file.
4931         * csky-tdep.c: Likewise.
4932         * csky-tdep.h: Likewise.
4933         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
4934         csky-tdep.o.
4935         (HFILES_NO_SRCDIR): Add csky-tdep.h.
4936         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
4937         * configure.tgt: Add csky support.
4938
4939 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
4940
4941         * python/py-framefilter.c (py_print_frame): Print frame architecture
4942         when printing on an MI output.
4943
4944 2018-08-27  Tom Tromey  <tom@tromey.com>
4945
4946         PR build/23087:
4947         * configure: Rebuild.
4948         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
4949
4950 2018-08-27  Tom Tromey  <tom@tromey.com>
4951
4952         * aarch64-linux-tdep.c
4953         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
4954         casts to int.
4955
4956 2018-08-27  Tom Tromey  <tom@tromey.com>
4957
4958         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
4959         unsigned.
4960         (ppc64_standard_linkage1, ppc64_standard_linkage2)
4961         (ppc64_standard_linkage3, ppc64_standard_linkage4)
4962         (ppc64_standard_linkage5, ppc64_standard_linkage6)
4963         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
4964         unsigned.
4965
4966 2018-08-27  Tom Tromey  <tom@tromey.com>
4967
4968         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
4969         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
4970
4971 2018-08-27  Tom Tromey  <tom@tromey.com>
4972
4973         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
4974         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
4975         ULONGEST_MAX.
4976         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
4977         ULONGEST_MAX.
4978         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
4979         ULONGEST_MAX.
4980         * sparc-linux-tdep.c (sparc32_linux_sigframe)
4981         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
4982         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
4983         ULONGEST_MAX.
4984         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
4985         (ppc64_linux_sigaction_tramp_frame)
4986         (ppc32_linux_sighandler_tramp_frame)
4987         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4988         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
4989         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
4990         * mn10300-linux-tdep.c (am33_linux_sigframe)
4991         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
4992         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
4993         * mips-linux-tdep.c (mips_linux_o32_sigframe)
4994         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
4995         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
4996         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
4997         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
4998         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
4999         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
5000         * microblaze-linux-tdep.c
5001         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
5002         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
5003         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
5004         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
5005         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
5006         * common/common-types.h (ULONGEST_MAX): New define.
5007         (CORE_ADDR_MAX): Fix formatting.
5008         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
5009         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
5010         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
5011         (arm_linux_rt_sigreturn_tramp_frame)
5012         (arm_eabi_linux_sigreturn_tramp_frame)
5013         (arm_eabi_linux_rt_sigreturn_tramp_frame)
5014         (thumb2_eabi_linux_sigreturn_tramp_frame)
5015         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
5016         (arm_linux_restart_syscall_tramp_frame)
5017         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
5018         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
5019         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
5020         ULONGEST_MAX.
5021         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
5022
5023 2018-08-27  Tom Tromey  <tom@tromey.com>
5024
5025         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
5026         CORE_ADDR_MAX.
5027         * mips-tdep.c (mips_deal_with_atomic_sequence)
5028         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
5029         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
5030         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
5031         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
5032         CORE_ADDR_MAX.
5033         * aarch64-tdep.c (aarch64_software_single_step): Use
5034         CORE_ADDR_MAX.
5035
5036 2018-08-27  Tom Tromey  <tom@tromey.com>
5037
5038         * linespec.c (complete_linespec_component): Add cast to "char".
5039         * completer.c (completion_tracker::build_completion_result): Add
5040         cast to "char".
5041
5042 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
5043
5044         * solist.h (struct solist, struct target_so_ops): Fix
5045         indentation.
5046
5047 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
5048
5049         * ada-tasks.c (ada_task_info_s): Remove typedef.
5050         (DEF_VEC_O(ada_task_info_s)): Remove.
5051         (struct ada_tasks_inferior_data): Initialize fields.
5052         <task_list>: Make an std::vector.
5053         (get_ada_tasks_inferior_data): Allocate with new.
5054         (ada_get_task_number): Adjust.
5055         (get_task_number_from_id): Likewise.
5056         (valid_task_id): Likewise.
5057         (ada_get_task_info_from_ptid): Likewise.
5058         (iterate_over_live_ada_tasks): Likewise.
5059         (add_ada_task): Likewise.
5060         (read_known_tasks): Likewise.
5061         (ada_build_task_list): Likewise.
5062         (print_ada_task_info): Likewise.
5063         (info_task): Likewise.
5064         (task_command_1): Likewise.
5065
5066 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
5067
5068         * ada-lang.c (add_angle_brackets): Return std::string.
5069
5070 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
5071
5072         * python/py-threadevent.c (py_get_event_thread): Initialize
5073         pythread.
5074
5075 2018-08-24  Pedro Alves  <palves@redhat.com>
5076
5077         * python/py-bpevent.c (create_breakpoint_event_object): Use
5078         copy-initialization.
5079         * python/py-continueevent.c (emit_continue_event): Use
5080         copy-initialization.
5081         * python/py-exitedevent.c (create_exited_event_object): Return a
5082         gdbpy_ref<>.
5083         (emit_exited_event): Use copy-initialization.
5084         * python/py-inferior.c (python_new_inferior)
5085         (python_inferior_deleted, add_thread_object): Use
5086         copy-initialization.
5087         * python/py-infevents.c (create_inferior_call_event_object)
5088         (create_register_changed_event_object)
5089         (create_memory_changed_event_object): Return a gdbpy_ref<>.
5090         (emit_inferior_call_event, emit_memory_changed_event)
5091         (emit_register_changed_event): Use copy-initialization.
5092         * python/py-newobjfileevent.c (create_new_objfile_event_object):
5093         Return a gdbpy_ref<>.
5094         (emit_new_objfile_event): Use copy-initialization.
5095         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
5096         (emit_clear_objfiles_event): Use copy-initialization.
5097         * python/py-signalevent.c (create_signal_event_object): Use
5098         copy-initialization.
5099         * python/py-threadevent.c (create_thread_event_object): Use
5100         copy-initialization.
5101
5102 2018-08-24  Pedro Alves  <palves@redhat.com>
5103             Simon Marchi  <simon.marchi@ericsson.com>
5104
5105         PR gdb/23379
5106         * python/py-continueevent.c: Include "gdbthread.h".
5107         (create_continue_event_object): Add intro comment.  Add 'ptid'
5108         parameter.  Use it to find thread to pass to
5109         create_thread_event_object.
5110         (emit_continue_event): Pass PTID down to
5111         create_continue_event_object.
5112         * python/py-event.h (py_get_event_thread): Declare.
5113         (create_thread_event_object): Remove default from 'thread'
5114         parameter.
5115         * python/py-stopevent.c (create_stop_event_object): Use
5116         py_get_event_thread.
5117         * python/py-threadevent.c (get_event_thread): Rename to ...
5118         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
5119         and use it to find the thread.
5120         (create_thread_event_object): Assert that THREAD isn't null.
5121         Don't find the event thread here.
5122
5123 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
5124
5125         * block.h (blockrange, blockranges): New struct declarations.
5126         (struct block): Add new field named `ranges'.
5127         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
5128         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
5129         macros for accessing ranges in struct block.
5130         (make_blockranges): New declaration.
5131         block.c (make_blockranges): New function.
5132         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
5133         for block.
5134         * symtab.h (find_pc_partial_function): Add new parameter `block'.
5135         * blockframe.c (cache_pc_function_block): New static global.
5136         (clear_pc_function_cache): Clear cache_pc_function_block.
5137         (find_pc_partial_function): Move comment to symtab.h.  Add
5138         support for non-contiguous blocks.
5139         * cli/cli-cmds.c (block.h): Include.
5140         (print_disassembly): Handle printing of non-contiguous blocks.
5141         (disassemble_current_function): Likewise.
5142         (disassemble_command): Likewise.
5143
5144         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
5145         BLOCK_START.
5146         * blockframe.c (get_pc_function_start): Likewise.
5147         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
5148         (gcc_symbol_address): Likewise.
5149         * compile/compile-object-run.c (compile_object_run): Likewise.
5150         * compile/compile.c (get_expr_block_and_pc): Likewise.
5151         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
5152         (func_addr_to_tail_call_list): Likewise.
5153         * findvar.c (default_read_var_value): Likewise.
5154         * inline-frame.c (inline_frame_this_id): Likewise.
5155         (skip-inline_frames): Likewise.
5156         * infcmd.c (until_next_command): Likewise.
5157         * linespec.c (convert_linespec_to_sals): Likewise.
5158         * parse.c (parse_exp_in_context_1): Likewise.
5159         * printcmd.c (build_address_symbolic): likewise.
5160         (info_address_command): Likewise.
5161         symtab.c (find_function_start_sal): Likewise.
5162         (skip_prologue_sal): Likewise.
5163         (find_function_alias_target): Likewise.
5164         (find_gnu_ifunc): Likewise.
5165         * stack.c (find_frame_funname): Likewise.
5166         * symtab.c (fixup_symbol_section): Likewise.
5167         (find_function_start_sal): Likewise.
5168         (skip_prologue_sal): Likewsie.
5169         (find_function_alias_target): Likewise.
5170         (find_gnu_ifunc): Likewise.
5171         * tracepoint.c (info_scope_command): Likewise.
5172         * value.c (value_fn_field): Likewise.
5173
5174         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
5175         in place of find_pc_partial_function.
5176         * blockframe.c (find_function_entry_range_from_pc): New function.
5177         * symtab.h (find_function_entry_range_from_pc): Declare and document.
5178         * objfiles.c (objfile_relocate1): Relocate start and end addresses
5179         for each range in a block.
5180
5181
5182 2018-08-23  Xavier Roirand  <roirand@adacore.com>
5183
5184         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
5185         incrementation.
5186
5187 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5188
5189         * solib-svr4.c (read_program_headers_from_bfd): Return
5190         gdb::optional<gdb::byte_vector>.
5191         (svr4_exec_displacement): Adjust.
5192
5193 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5194
5195         * solib-svr4.c (read_program_header): Return
5196         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
5197         (find_program_interpreter): Return
5198         gdb::optional<gdb::byte_vector>.
5199         (scan_dyntag_auxv): Adjust.
5200         (enable_break): Adjust.
5201         (svr4_exec_displacement): Adjust.
5202
5203 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5204
5205         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
5206         * inf-child.c (inf_child_target::terminal_save_inferior): New.
5207
5208 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5209
5210         * guile/scm-string.c (gdbscm_scm_from_printf): Use
5211         string_vprintf.
5212         * guile/scm-utils.c (gdbscm_printf): Likewise.
5213         * serial.c (serial_printf): Likewise.
5214         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
5215
5216 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
5217
5218         * stack.c (print_frame): Print frame architecture when printing on
5219         an MI output.
5220         * NEWS: Mention new "arch" attribute in frame output.
5221
5222 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
5223
5224         * arch/aarch64.h (aarch64_regnum): Update comment.
5225
5226 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
5227
5228         * NEWS: Add SVE to 8.2 section.
5229
5230 2018-08-21  Pedro Alves  <palves@redhat.com>
5231
5232         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
5233         out from gdbscm_parse_function_args.
5234         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
5235         gdbscm_parse_function_args_1.
5236
5237 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
5238
5239         PR gdb/17816
5240         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
5241         operator.
5242
5243 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
5244
5245         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
5246
5247 2018-08-19  Michael Spang  <spang@google.com>
5248
5249         PR gdb/11786
5250         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
5251         for PT_TLS segments.
5252
5253 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
5254
5255         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
5256         dwarf_variable_value.
5257         * dwarf2-frame.c (class dwarf_expr_executor):
5258         Add override for dwarf_variable_value.
5259         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
5260         (class symbol_needs_eval_context): Likewise.
5261         (indirect_synthetic_pointer): Add forward declaration.
5262         (sect_variable_value): New function.
5263         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
5264         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
5265         for DW_OP_GNU_variable_value.
5266
5267 2018-08-16  Tom Tromey  <tom@tromey.com>
5268
5269         * top.c (read_command_file): Update.
5270         (command_line_input): Remove "repeat" argument.
5271         * ada-lang.c (get_selections): Update.
5272         * linespec.c (decode_line_2): Update.
5273         * defs.h (command_line_input): Remove argument.
5274         * cli/cli-script.c (read_next_line): Update.
5275         * python/py-gdb-readline.c: Update.
5276
5277 2018-08-17  Tom Tromey  <tom@tromey.com>
5278
5279         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
5280         command_line_input.
5281
5282 2018-08-15  Tom Tromey  <tom@tromey.com>
5283
5284         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
5285
5286 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
5287
5288         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
5289         If used, use find_pc_partial_function to find address range
5290         to disassemble.
5291         * mi/mi-main.c (mi_cmd_list_features): Report
5292         "data-disassemble-a-option" feature.
5293         * NEWS: Mention new -data-disassemble option -a.
5294
5295 2018-08-13  Tom Tromey  <tom@tromey.com>
5296
5297         * common/common-defs.h (_FORTIFY_SOURCE): Define.
5298
5299 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5300
5301         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
5302         (aarch64_linux_collect_sve_regset): Likewise.
5303         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
5304         * regcache.h (regcache_map_entry_size): New function.
5305
5306 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5307
5308         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
5309         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
5310         (SVE_HEADER_VL_LENGTH): Likewise.
5311         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
5312         (SVE_HEADER_FLAGS_LENGTH): Likewise.
5313         (SVE_HEADER_RESERVED_LENGTH): Likewise.
5314         (SVE_HEADER_SIZE_OFFSET): Likewise.
5315         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
5316         (SVE_HEADER_VL_OFFSET): Likewise.
5317         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
5318         (SVE_HEADER_FLAGS_OFFSET): Likewise.
5319         (SVE_HEADER_RESERVED_OFFSET): Likewise.
5320         (SVE_HEADER_SIZE): Likewise.
5321         (aarch64_linux_core_read_vq): Add function.
5322         (aarch64_linux_core_read_description): Check for SVE section.
5323
5324 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5325
5326         * aarch64-fbsd-tdep.c
5327         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
5328         collect_size.
5329         * aarch64-linux-tdep.c
5330         (aarch64_linux_iterate_over_regset_sections): Likewise.
5331         * alpha-linux-tdep.c
5332         (alpha_linux_iterate_over_regset_sections):
5333         * alpha-nbsd-tdep.c
5334         (alphanbsd_iterate_over_regset_sections): Likewise.
5335         * amd64-fbsd-tdep.c
5336         (amd64fbsd_iterate_over_regset_sections): Likewise.
5337         * amd64-linux-tdep.c
5338         (amd64_linux_iterate_over_regset_sections): Likewise.
5339         * arm-bsd-tdep.c
5340         (armbsd_iterate_over_regset_sections): Likewise.
5341         * arm-fbsd-tdep.c
5342         (arm_fbsd_iterate_over_regset_sections): Likewise.
5343         * arm-linux-tdep.c
5344         (arm_linux_iterate_over_regset_sections): Likewise.
5345         * corelow.c (get_core_registers_cb): Likewise.
5346         (core_target::fetch_registers): Likewise.
5347         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
5348         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
5349         * gdbarch.h (void): Regenerate.
5350         * gdbarch.sh: Add supply_size and collect_size.
5351         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
5352         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
5353         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
5354         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
5355         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
5356         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
5357         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
5358         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
5359         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
5360         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
5361         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
5362         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
5363         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
5364         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
5365         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections):
5366         Likewise.
5367         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
5368         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
5369         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
5370         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
5371         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
5372         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
5373         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections):
5374         Likewise.
5375         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
5376         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
5377         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
5378         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
5379         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
5380         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
5381         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
5382         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
5383
5384 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
5385
5386         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
5387         with string_printf.
5388
5389 2018-08-10  Keith Seitz  <keiths@redhat.com>
5390
5391         * compile/compile-c-support.c (add_code_header, add_code_footer):
5392         Move into policy class.
5393         (c_push_user_expression, pop_user_expression_nop)
5394         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
5395         (compile_program): New host class.
5396         (c_compile_program): New typedef.
5397         (c_compute_porgram): Use c_compile_program.
5398
5399 2018-08-10  Keith Seitz  <keiths@redhat.com>
5400
5401         * compile/compile-internal.h (compile_instance::~compile_instance):
5402         Remove calls to htab_delete.
5403         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
5404         * compile.c (compile_instance::compile_instance): Initialize
5405         htab unique pointers.
5406         (compile_instance::get_cached_type, compile_instance::insert_type)
5407         (compile_instance::error_symbol_once): Update for unique_ptr.
5408
5409 2018-08-10  Keith Seitz  <keiths@redhat.com>
5410
5411         * compile/compile-c-symbols.c (struct symbol_error)
5412         (hash_symbol_error, eq_symbol_error, del_symbol_error)
5413         (compile_instance::insert_symbol_error)
5414         (compile_instance::error_symbol_once): Move to ...
5415         * compile/compile.c: ... here.
5416
5417 2018-08-10  Keith Seitz  <keiths@redhat.com>
5418
5419         * compile/compile-c-support.c (c_get_compile_context): Use `new'
5420         instead of `new_compile_instance'.
5421         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
5422         Update description.
5423         If the symbol error map is not initialized, create it.
5424         (generate_c_for_for_one_symbol): Do not check/initialize
5425         the symbol error map.
5426         * compile/compile-c-types.c (compile_c_instance): Make a class.
5427         Update all callers.
5428         (compile_instance::compile_instance): Initialize the type cache.
5429         (get_cached_type): New function.
5430         (insert_type): Update description.
5431         (compile_c_instance::m_default_cflags): Define.
5432         (convert_type): Update description.  Use get_cached_type.
5433         (delete_instance): Moved to destructor.
5434         (new_compile_instance): Moved to constructor.
5435         * compile/compile-c.h (compile_c_instance): Make class inheriting
5436         from compile_instance.
5437         <base>: Remove field.
5438         <type_map, symbol_err_map>: Move to base class.
5439         <c_plugin>: Rename to `m_plugin' and remove pointer type.
5440         * compile/compile-internal.h (compile_instance): Make class.
5441         <type_map_t, symbol_err_map_t>: Define.
5442         <fe>: Rename to `m_gcc_fe'.
5443         <scope, block, gcc_target_options>: Add `m_' prefix.
5444         <m_type_map, m_symbol_err_map>: New fields, moved from
5445         compile_c_instance.
5446         <destroy>: Remove.
5447         (convert_type, new_compile_instance): Remove.
5448         * compile/compile.c (cleanup_compile_instance): Remove.
5449         (compile_to_object): Use unique_ptr to eliminate cleanups.
5450         (compile_instance::set_print_callback, compile_instance::version)
5451         (compile_instance::set_verbose)
5452         (compile_instance::set_driver_filename)
5453         (compile_instance::set_triplet_regexp)
5454         (compile_instance::set_arguments)
5455         (compile_instance::set_source_file)
5456         (compile_instance::compile): Define.
5457
5458 2018-08-10  Keith Seitz  <keiths@redhat.com>
5459
5460         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
5461         * compile/compile-c-types.c: Define GCC_METHODN macros and include
5462         gcc-c-fe.def to define C plugin.
5463         (delete_instance): Delete `c_plugin'.
5464         (new_compile_instance): Initialize `c_plugin'.
5465         * compile/compile-c.h: Include gcc_c_plugin.h.
5466         (struct compile_c_instance) <c_plugin>: New member.
5467         * gcc-c-plugin.h: New file.
5468         Update all callers with API change.
5469
5470 2018-08-10  Keith Seitz  <keiths@redhat.com>
5471
5472         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
5473         (HFILES_NO_SRCDIR): ... to here.
5474         Add compile-internal.h and compile-c.h.
5475         * compile/compile-c-support.c: Include compile-c.h.
5476         * compile/compile-c-symbols.c: Include compile-c.h.
5477         (generate_c_for_variable_locations): Update comment.
5478         * compile/compile-c-types.c: Include compile-c.h.
5479         * compile/compile-c.h: New file -- moved C language declarations
5480         from other files here.
5481         * compile/compile-internal.h: Do not include hashtab.h or
5482         common/enum-flags.h.
5483         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
5484         (gcc_convert_symbol, gcc_symbol_address)
5485         (generate_c_for_variable_locations, c_get_mode_for_size)
5486         (c_get_range_decl_name): Definitions moved to compile-c.h.
5487         * compile/compile-loc2c.c: Include compile-c.h.
5488
5489 2018-08-10  Keith Seitz  <keiths@redhat.com>
5490
5491         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
5492         (c_symbol_substitution_name): ... this.
5493         Update all callers.
5494
5495 2018-08-10  Keith Seitz  <keiths@redhat.com>
5496
5497         * compile/compile-c-support.c (c_compute_program): Use
5498         unique_xmalloc_ptr to eliminate cleanup.
5499         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
5500         Return a unique_xmalloc_ptr and eliminate cleanup.
5501         * compile/compile-internal.h (generate_c_for_variable_locations):
5502         Return unique_xmalloc_ptr and update description.
5503
5504 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
5505
5506         * corelow.c (core_target::get_core_register_section): Rename
5507         min_size to section_min_size.
5508
5509 2018-08-09  Jim Wilson  <jimw@sifive.com>
5510
5511         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
5512         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
5513         * NEWS: Mention new GNU/Linux RISC-V target.
5514         * configure.host: Add riscv*-*-linux*.
5515         * configure.nat: Add riscv*.
5516         * configure.tgt: Add riscv*-*-linux*.
5517         * riscv-linux-nat.c: New file.
5518         * riscv-linux-tdep.c: New file.
5519
5520 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5521
5522         * infrun.c (resume): Make static, add forward declaration.
5523         (proceed): Update header comment.
5524         * infrun.h (resume): Delete declaration.
5525
5526 2018-08-09  Tom Tromey  <tom@tromey.com>
5527
5528         * riscv-tdep.h: Minor formatting fixes.
5529
5530 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
5531
5532         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
5533         * dwarf-index-cache.c (create_dir_and_check): Likewise.
5534         (test_mkdir_recursive): Likewise.
5535         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
5536
5537 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5538
5539         * valarith.c (value_subscripted_rvalue): If an array is not in
5540         memory, and we don't know the upper bound, then we can't know that
5541         the requested element exists or not.
5542
5543 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
5544
5545         * target.c (str_comma_list_concat_elem): Fix typo in comment.
5546         (target_options_to_string): Add comment.
5547
5548 2018-08-08  Tom Tromey  <tom@tromey.com>
5549
5550         * unittests/scoped_mmap-selftests.c: Check result of "write".
5551
5552 2018-08-08  Jim Wilson  <jimw@sifive.com>
5553
5554         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
5555         (decode_register_index_short): New.
5556         (decode_j_type_insn, decode_cj_type_insn): New.
5557         (decode_b_type_insn, decode_cb_type_insn): New.
5558         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
5559         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
5560         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
5561         is_c_sw_insn instead of is_sw_insn.
5562         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
5563         (riscv_software_single_step): New.
5564         * riscv-tdep.h (riscv_software_single_step): Declare.
5565
5566         * riscv-tdep.c (riscv_isa_xlen): Drop static.
5567         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
5568
5569 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
5570
5571         PR gdb/18050:
5572         * target.c (dispose_inferior): Don't dispose of inferiors that are
5573         already killed.
5574
5575 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
5576
5577         * remote.c (remote_target::download_tracepoint): Change char* to
5578         const char*.
5579
5580 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
5581
5582         * target.h (target_options_to_string): Return an std::string.
5583         * target.c (str_comma_list_concat_elem): Return void, use
5584         std::string.
5585         (do_option): Likewise.
5586         (target_options_to_string): Return an std::string.
5587         * linux-nat.c (linux_nat_target::wait): Adjust.
5588         * target-debug.h (target_debug_print_options): Adjust.
5589
5590 2018-08-07  Tom Tromey  <tom@tromey.com>
5591
5592         * Makefile.in (CPPFLAGS): New variable.
5593         (INTERNAL_CPPFLAGS): Use it.
5594
5595 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5596
5597         * NEWS: Mention the index cache.
5598
5599 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5600
5601         * common/pathstuff.h (get_standard_cache_dir): New.
5602         * common/pathstuff.c (get_standard_cache_dir): New.
5603         * build-id.h (build_id_to_string): New.
5604         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
5605         DEBUG_STR_SUFFIX): Move to here.
5606         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
5607         DEBUG_STR_SUFFIX): Move from there.
5608         (write_psymtabs_to_index): Make non-static, add basename
5609         parameter.  Write to temporary files, rename when done.
5610         (save_gdb_index_command): Adjust call to
5611         write_psymtabs_to_index.
5612         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
5613         field.
5614         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
5615         (get_gdb_index_contents_from_cache): New.
5616         (get_gdb_index_contents_from_cache_dwz): New.
5617         (dwarf2_initialize_objfile): Read index from cache.
5618         (dwarf2_build_psymtabs): Save to index.
5619         * dwarf-index-cache.h: New file.
5620         * dwarf-index-cache.c: New file.
5621         * dwarf-index-write.h: New file.
5622
5623 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5624
5625         * gnulib/aclocal.m4: Re-generate.
5626         * gnulib/config.in: Re-generate.
5627         * gnulib/configure: Re-generate.
5628         * gnulib/import/Makefile.am: Re-generate.
5629         * gnulib/import/Makefile.in: Re-generate.
5630         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
5631         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5632         * gnulib/import/m4/mkdir.m4: New file.
5633         * gnulib/import/mkdir.c: New file.
5634         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
5635         module.
5636
5637 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5638
5639         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
5640         * common/scoped_mmap.c: New file.
5641         * common/scoped_mmap.h (destroy): New method.
5642         (~scoped_mmap, reset): Use destroy.
5643         (scoped_mmap): New move constructor.
5644         (mmap_file): New declaration.
5645         * unittests/scoped_mmap-selftests.c (test_normal,
5646         test_invalid_filename, run_tests): New functions.
5647         (_initialize_scoped_mmap_selftests): Register selftest.
5648
5649 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5650
5651         * dwarf2read.c (read_gdb_index_from_section): Rename to...
5652         (read_gdb_index_from_buffer): ... this.  Remove section
5653         parameter, add buffer parameter.
5654         (get_gdb_index_contents_ftype,
5655         get_gdb_index_contents_dwz_ftype): New typedefs.
5656         (dwarf2_read_gdb_index): Add callback parameters to get the
5657         index contents.
5658         (get_gdb_index_contents_from_section): New.
5659         (dwarf2_initialize_objfile): Update call to
5660         dwarf2_read_gdb_index.
5661
5662 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5663
5664         * common/filestuff.h (gdb_fopen_cloexec): New overload.
5665         (gdb_open_cloexec): Likewise.
5666         * nat/linux-osdata.c (command_from_pid): Use string_printf.
5667         (commandline_from_pid): Likewise.
5668         (linux_xfer_osdata_threads): Likewise.
5669         (linux_xfer_osdata_fds): Likewise.
5670         * ada-lang.c (is_package_name): Likewise.
5671         * auxv.c (procfs_xfer_auxv): Likewise.
5672         * breakpoint.c (print_one_breakpoint_location): Use
5673         uiout::field_fmt.
5674         (print_one_catch_solib): Use string_printf.
5675         * coff-pe-read.c (add_pe_exported_sym): Likewise.
5676         (add_pe_forwarded_sym): Likewise.
5677         * dwarf2read.c (create_type_unit_group): Likewise.
5678         (build_error_marker_type): Likewise.
5679         * infcall.c (get_function_name): Likewise.
5680         * valprint.c (print_converted_chars_to_obstack): Likewise.
5681         * xtensa-tdep.c (xtensa_register_type): Likewise.
5682
5683 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
5684
5685         * remote.c (remote_target::download_tracepoint): Fix format
5686         string errors.
5687
5688 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5689
5690         * tracefile.c: Include common/byte-vector.h.
5691         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
5692         with trace_regblock_size if needed.  Update uses of buf.
5693
5694 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5695
5696         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
5697         std::vector<unsigned char>.
5698         * tracepoint.c (collection_list::collection_list): Remove
5699         m_regs_mask initializer from initializer list.  Resize
5700         m_regs_mask using the largest remote register number.
5701         (collection_list::add_remote_register): Remove size check on
5702         m_regs_mask.  Use at to access element.
5703         (collection_list::stringify): Change type of temp_buf to
5704         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
5705         stringify the register mask.  Use pack_hex_byte for the register
5706         mask.
5707
5708 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5709
5710         * tracepoint.h (class collection_list) <add_register>: Remove.
5711         <add_remote_register, add_ax_registers, add_local_register>:
5712         Declare.
5713         <add_memrange>: Add scope parameter.
5714         * tracepoint.c (encode_actions_1): Likewise.
5715         (collection_list::add_register): Rename to ...
5716         (collection_list::add_remote_register): ... this.  Update
5717         comment.
5718         (collection_list::add_ax_registers, add_local_register): New
5719         methods.
5720         (collection_list::add_memrange): Add scope parameter.  Call
5721         add_local_register instead of add_register.
5722         (finalize_tracepoint_aexpr): New function.
5723         (collection_list::collect_symbol): Update calls to add_memrange.
5724         Call add_local_register instead of add_register.  Call
5725         add_ax_registers.  Call finalize_tracepoint_aexpr.
5726         (encode_actions_1): Get remote regnos for $reg action.  Call
5727         add_remote_register, add_ax_registers, and add_local_register.
5728         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
5729         (validate_actionline): Call finalize_tracepoint_aexpr.
5730
5731 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5732
5733         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
5734         Replace array buf with gdb::char_vector buf, of size
5735         get_remote_packet_size ().  Replace references to buf and
5736         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
5737         and xsnprintf with snprintf.  Raise errors if the buffer is too
5738         small.
5739
5740 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5741
5742         * remote.c (remote_target::download_tracepoint): Fix the has_more
5743         predicate in the QTDP action list iteration.
5744
5745 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5746
5747         * remote.c (remote_target::download_tracepoint): Fix indentation
5748         in for block.
5749
5750 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5751
5752         * proc-api.c (_initialize_proc_api): Remove c, unused.
5753         * procfs.c (procfs_init_inferior): Remove signals, unused.
5754         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
5755         unused.
5756
5757 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
5758             Andrew Burgess  <andrew.burgess@embecosm.com>
5759
5760         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
5761         'W_STOPCODE (0)' as this could be ambiguous.
5762
5763 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
5764
5765         * ser-tcp.c (net_open): Fix thinko when deciding whether to
5766         disable TCP's Nagle algorithm (use "ai_protocol" instead of
5767         "ai_socktype").
5768
5769 2018-08-02  Tom Tromey  <tom@tromey.com>
5770
5771         PR symtab/16842.
5772         * dwarf2read.c (read_func_scope): Set symtab on template parameter
5773         symbols.
5774         (process_structure_scope): Likewise.
5775
5776 2018-08-02  Xavier Roirand  <roirand@adacore.com>
5777
5778         PR gdb/22629:
5779         * darwin-nat.c (darwin_kill_inferior): Fix handling of
5780         kill inferior.
5781
5782 2018-08-02  Tom Tromey  <tom@tromey.com>
5783
5784         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
5785         (darwin_suspend_inferior, darwin_resume_inferior)
5786         (darwin_decode_notify_message, darwin_resume_inferior_threads)
5787         (darwin_check_new_threads): Check result of get_darwin_inferior.
5788
5789 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
5790
5791         GDB 8.1.1 released.
5792
5793 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
5794
5795         * varobj.c (varobj_get_path_expr_parent): Report an error if
5796         parent is a dynamic varobj.
5797
5798 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5799
5800         * gnulib/aclocal.m4: Re-generate.
5801         * gnulib/config.in: Re-generate.
5802         * gnulib/configure: Re-generate.
5803         * gnulib/import/Makefile.in: Re-generate.
5804         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5805         * gnulib/import/m4/onceonly.m4: Re-generate.
5806
5807 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5808
5809         * target-descriptions.c (struct xml_test_tdesc): New.
5810         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
5811         (record_xml_tdesc): Update.
5812         (maintenance_check_xml_descriptions): Update.
5813         * target-descriptions.h (record_xml_tdesc): Update comment.
5814
5815 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
5816
5817         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
5818         checking array bounds are defined.
5819
5820 2018-07-30  Tom Tromey  <tom@tromey.com>
5821
5822         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
5823         irreflexivity violation.
5824
5825 2018-07-30  Tom Tromey  <tom@tromey.com>
5826
5827         * cli/cli-decode.c (lookup_cmd): Remove lint code.
5828         * value.c (unpack_long): Remove lint code.
5829         * valops.c (value_ind): Remove lint code.
5830         * valarith.c (value_x_binop, value_x_unop, value_equal)
5831         (value_pos): Remove lint code.
5832
5833 2018-07-28  Tom de Vries  <tdevries@suse.de>
5834
5835         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
5836         with undefined upper bound as <optimized out>.
5837
5838 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
5839
5840         * gcore.in: Rename variable "name" to "prefix".  Expand
5841         "usage" text.
5842
5843 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
5844
5845         * windows-nat.c (windows_nat_target::create_inferior): Update to
5846         call close() in global namespace.
5847
5848 2018-07-26  Tom Tromey  <tom@tromey.com>
5849
5850         * dwarf-index-write.c (add_address_entry): Don't add objfile
5851         offsets.
5852         * dbxread.c (find_stab_function): Rename from
5853         find_stab_function_addr.  Return a bound_minimal_symbol.
5854         (read_dbx_symtab): Use raw_text_low, raw_text_high.
5855         Don't add objfile offsets.
5856         (end_psymtab): Use raw_text_low, raw_text_high,
5857         MSYMBOL_VALUE_RAW_ADDRESS.
5858         (read_ofile_symtab): Update.
5859         (process_one_symbol): Update.
5860         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
5861         offsets.
5862         (dw2_relocate): Remove.
5863         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
5864         searching addrmap.
5865         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
5866         Update.
5867         (process_psymtab_comp_unit_reader, add_partial_symbol)
5868         (add_partial_subprogram, dwarf2_ranges_read): Update.
5869         (load_partial_dies): Update.
5870         (add_address_entry): Don't add objfile offsets.
5871         (dwarf2_build_include_psymtabs): Update.
5872         (create_addrmap_from_aranges): Don't add objfile offsets.
5873         (dw2_find_pc_sect_compunit_symtab): Update.
5874         * mdebugread.c (parse_symbol): Don't add objfile offsets.
5875         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
5876         Update.
5877         (parse_partial_symbols): Don't add objfile offsets.  Use
5878         raw_text_low, raw_text_high.  Update.
5879         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
5880         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
5881         or call 'relocate' quick function.  Clear psymbol_map.
5882         * psympriv.h (struct partial_symbol) <address>: Add section
5883         offset.
5884         <set_unrelocated_address>: Rename from set_address.
5885         <raw_text_low, raw_text_high>: New methods.
5886         <text_low, text_high>: Add objfile parameter.
5887         (add_psymbol_to_bcache): Add 'section' parameter.  Call
5888         set_unrelocated_address.
5889         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5890         (find_pc_psymbol): Update.
5891         (fixup_psymbol_section, relocate_psymtabs): Remove.
5892         (dump_psymtab, psym_functions): Update.
5893         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
5894         parameter.
5895         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
5896         (start_psymtab_common): Update.
5897         * symfile-debug.c (debug_qf_relocate): Remove.
5898         (debug_sym_quick_functions): Update.
5899         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
5900         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
5901         Update.
5902
5903 2018-07-26  Tom Tromey  <tromey@redhat.com>
5904
5905         * dbxread.c (end_psymtab): Use text_high_valid and
5906         text_low_valid.
5907         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
5908         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
5909         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5910         Update comment.
5911         <text_low_valid, text_high_valid>: New fields.
5912         <set_text_low, set_text_high>: Update.
5913         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
5914
5915 2018-07-26  Tom Tromey  <tom@tromey.com>
5916
5917         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
5918         Update.
5919         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
5920         textlow and texthigh fields.
5921         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
5922         Update.
5923         * mdebugread.c (parse_lines, parse_partial_symbols)
5924         (psymtab_to_symtab_1): Update.
5925         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5926         Rename fields.  Update comment.  Now private.
5927         <text_low, text_high, set_text_low, set_text_high>: New methods.
5928         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5929         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
5930         (start_psymtab_common, maintenance_info_psymtabs)
5931         (maintenance_check_psymtabs): Update.
5932         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
5933         texthigh fields.
5934         (scan_xcoff_symtab): Update.
5935
5936 2018-07-26  Tom Tromey  <tromey@redhat.com>
5937
5938         * psympriv.h (struct partial_symbol) <unrelocated_address,
5939         address, set_address>: New methods.
5940         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
5941         (fixup_psymbol_section, relocate_psymtabs): Update.
5942         (print_partial_symbols): Add 'objfile' parameter.  Update.
5943         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
5944         Update.
5945
5946 2018-07-26  Tom Tromey  <tom@tromey.com>
5947
5948         * dwarf-index-write.c (write_psymbols, debug_names::insert)
5949         (debug_names::write_psymbols): Update.
5950         * psympriv.h (struct partial_symbol): Derive from
5951         general_symbol_info.
5952         <obj_section>: New method.
5953         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
5954         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5955         (find_pc_sect_psymbol, fixup_psymbol_section)
5956         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
5957         (print_partial_symbols, recursively_search_psymtabs)
5958         (compare_psymbols, psymbol_hash, psymbol_compare)
5959         (add_psymbol_to_bcache, maintenance_check_psymtabs)
5960         (psymbol_name_matches, psym_fill_psymbol_map): Update.
5961
5962 2018-07-26  Tom Tromey  <tromey@redhat.com>
5963
5964         * dbxread.c (end_psymtab): Remove dead code.
5965
5966 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
5967
5968         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
5969         DWARF unwinders are disabled.
5970         * dwarf2-frame.c: Add dwarf2read.h include.
5971         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
5972         disabled.
5973         (dwarf2_frame_unwinders_enabled_p): Define.
5974         (show_dwarf_unwinders_enabled_p): New function.
5975         (_initialize_dwarf2_frame): Register switch to control DWARF
5976         unwinder use.
5977         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
5978         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
5979         (show_dwarf_cmdlist): Remove static keyword.
5980         * dwarf2read.h (set_dwarf_cmdlist): Declare.
5981         (show_dwarf_cmdlist): Declare.
5982         * NEWS: Document new feature.
5983
5984 2018-07-26  Tom de Vries  <tdevries@suse.de>
5985
5986         PR breakpoints/23366
5987         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
5988
5989 2018-07-26  Tom de Vries  <tdevries@suse.de>
5990
5991         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
5992         DW_AT_count can't be translated to a dynamic prop.
5993
5994 2018-07-25  Tom de Vries  <tdevries@suse.de>
5995
5996         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
5997         try/catch.
5998
5999 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
6000
6001         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
6002
6003 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
6004
6005         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
6006
6007 2018-07-24  Keith Seitz  <keiths@redhat.comt
6008
6009         PR symtab/23010
6010         * dwarf2read.c (dw2_add_symbol_to_list): New function.
6011         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
6012         instead of add_symbol_to_list.
6013         (read_file_scope): Call prepare_one_comp_unit before reading
6014         any other DIEs.
6015
6016 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
6017
6018         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
6019
6020 2018-07-24  Tom Tromey  <tom@tromey.com>
6021
6022         * utils.c (malloc, realloc, free): Don't declare.
6023         * configure, config.in: Rebuild.
6024         * configure.ac: Don't check for declarations of free, malloc, or
6025         realloc.
6026
6027 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
6028
6029         * aarch64-linux-nat.c
6030         (aarch64_linux_nat_target::stopped_data_address): Remove unused
6031         variable.
6032         * arm-linux-nat.c (fetch_regs): Likewise.
6033         (store_regs): Likewise.
6034         (fetch_vfp_regs): Likewise.
6035         (store_vfp_regs): Likewise.
6036         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
6037         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
6038         (arm_linux_nat_target::insert_watchpoint): Likewise.
6039         (arm_linux_nat_target::remove_watchpoint): Likewise.
6040         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
6041         Likewise.
6042         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
6043         Likewise.
6044         * ppc-linux-nat.c (fetch_register): Likewise.
6045         (fetch_all_gp_regs): Likewise.
6046         (fetch_ppc_registers): Likewise.
6047         (store_all_gp_regs): Likewise.
6048         (store_ppc_registers): Likewise.
6049         (hwdebug_insert_point): Likewise.
6050         (can_use_watchpoint_cond_accel): Likewise.
6051         * remote-sim.c (gdb_os_write_stdout): Likewise.
6052
6053 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
6054             Tom Tromey  <tom@tromey.com>
6055
6056         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
6057         test for it.
6058         * configure: Rebuild.
6059
6060 2018-07-22  Tom Tromey  <tom@tromey.com>
6061
6062         * regformats/regdat.sh: Define xmltarget_${name} inside
6063         #ifndef IN_PROCESS_AGENT.
6064
6065 2018-07-22  Tom Tromey  <tom@tromey.com>
6066
6067         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
6068
6069 2018-07-22  Tom Tromey  <tom@tromey.com>
6070
6071         * symfile.c (reread_symbols): Notify iter, not objfile.
6072
6073 2018-07-22  Tom Tromey  <tom@tromey.com>
6074
6075         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
6076         Use arch_ops.
6077         (ravenscar_thread_target::prepare_to_store): Likewise.
6078
6079 2018-07-22  Tom Tromey  <tom@tromey.com>
6080
6081         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
6082         unused variable.  Call value_fetch_lazy when needed.
6083         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
6084         Remove unused variable.  Call value_fetch_lazy when needed.
6085
6086 2018-07-22  Tom Tromey  <tom@tromey.com>
6087
6088         * m32c-tdep.c (mark_dma): Return void.
6089         (make_regs): Remove unused declarations.
6090
6091 2018-07-22  Tom Tromey  <tom@tromey.com>
6092
6093         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
6094         cmdscm_get_valid_command_smob_arg_unsafe for effect.
6095         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
6096         bkscm_get_valid_block_smob_arg_unsafe for effect.
6097
6098 2018-07-22  Tom Tromey  <tom@tromey.com>
6099
6100         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
6101         value_type.
6102
6103 2018-07-22  Tom Tromey  <tom@tromey.com>
6104
6105         * windows-nat.c (saved_context): Conditionally define.
6106         * remote.c (remote_target::remote_btrace_maybe_reopen):
6107         Conditionally declare "warned".
6108         * inflow.c (sigquit_ours): Conditionally define.
6109         (new_tty): Move "tty" declaration inside #if.
6110         * guile/guile.c (guile_datadir): Conditionally define.
6111         * charset.c (set_be_le_names): Move some declarations inside #if.
6112         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
6113         #if.
6114         (parse_xml_btrace_conf): Likewise.
6115
6116 2018-07-22  Tom Tromey  <tom@tromey.com>
6117
6118         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
6119
6120 2018-07-22  Tom Tromey  <tom@tromey.com>
6121
6122         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
6123         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
6124         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
6125         * buildsym-legacy.c (get_macro_table): Remove unused variable.
6126         * stack.c (frame_apply_level_command): Remove unused variable.
6127         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
6128         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
6129         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
6130         unused variable.
6131         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
6132         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
6133         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
6134         variable.
6135         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
6136         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
6137         variable.
6138         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
6139         Remove unused variable.
6140         * cli/cli-script.c (recurse_read_control_structure): Remove unused
6141         variable.
6142         * common/tdesc.c (print_xml_feature::visit): Remove unused
6143         variable.
6144         * compile/compile-object-load.c (store_regs): Remove unused
6145         variables.
6146         * complaints.c (clear_complaints): Remove unused variable.
6147         * corelow.c (core_target_open): Remove unused variable.
6148         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
6149         variable.
6150         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
6151         variable.
6152         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
6153         variable.
6154         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
6155         variable.
6156         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
6157         variable.
6158         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
6159         variable.
6160         * ia64-tdep.c (examine_prologue): Remove unused variable.
6161         * infcall.c (run_inferior_call): Remove unused variable.
6162         * inferior.c (exit_inferior): Remove unused variable.
6163         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
6164         * linespec.c (decode_line_2): Remove unused variable.
6165         * linux-nat.c (super_close): Remove.
6166         * linux-tdep.c (linux_info_proc): Remove unused variable.
6167         * mi/mi-main.c (mi_execute_command): Remove unused variable.
6168         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
6169         Remove unused variable.
6170         * parse.c (find_minsym_type_and_address): Remove unused variable.
6171         * printcmd.c (info_symbol_command, printf_floating): Remove unused
6172         variable.
6173         * python/py-breakpoint.c (bppy_set_commands): Remove unused
6174         variable.
6175         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
6176         variables.
6177         * record-btrace.c (record_btrace_target::store_registers): Remove
6178         unused variable.
6179         (cmd_show_record_btrace_cpu): Remove unused variable.
6180         * riscv-tdep.c (riscv_register_reggroup_p)
6181         (riscv_push_dummy_call, riscv_return_value): Remove unused
6182         variable.
6183         * rust-exp.y (literal): Remove unused variable.
6184         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
6185         unused variable.
6186         <STRUCTOP_ANONYMOUS>: Likewise.
6187         * s390-linux-tdep.c (s390_linux_init_abi_31)
6188         (s390_linux_init_abi_64): Remove unused variable.
6189         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
6190         (file_select_thread, net_windows_open, _initialize_ser_windows):
6191         Remove unused variables.
6192         * symtab.c (find_pc_sect_line): Remove unused variable.
6193         * target-memory.c (compute_garbled_blocks): Remove unused
6194         variable.
6195         (target_write_memory_blocks): Remove unused variable.
6196         * target.c (target_stack::unpush): Remove unused variables.
6197         * tracepoint.c (start_tracing, all_tracepoint_actions)
6198         (merge_uploaded_trace_state_variables)
6199         (print_one_static_tracepoint_marker): Remove unused variable.
6200         * unittests/basic_string_view/element_access/char/1.cc (test01):
6201         Remove unused variable.
6202         * windows-nat.c (windows_continue, windows_add_all_dlls)
6203         (do_initial_windows_stuff, windows_nat_target::create_inferior):
6204         Remove unused variables.
6205
6206 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
6207
6208         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
6209         attr_profile in HAVE_ELF.
6210         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
6211         HAVE_ELF.
6212
6213 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
6214
6215         * frame.c (frame_register_unwind): Change parameter name.
6216         (frame_unwind_register): Likewise.
6217         (frame_unwind_register_value): Likewise.
6218         (frame_unwind_register_signed): Likewise.
6219         (frame_unwind_register_unsigned): Likewise.
6220         * frame.h (frame_register_unwind): Likewise.
6221         (frame_unwind_register): Likewise.
6222         (frame_unwind_register_value): Likewise.
6223         (frame_unwind_register_signed): Likewise.
6224         (frame_unwind_register_unsigned): Likewise.
6225         (frame_unwind_arch): Likewise.
6226
6227 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
6228
6229         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
6230         ISA maintenance.
6231
6232 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
6233
6234         * mips-linux-nat.c (mips_linux_nat_target::read_description):
6235         Call `get_ptrace_pid' rather than extracting the ptrace PID by
6236         hand.
6237
6238 2018-07-20  Keith Seitz  <keiths@redhat.com>
6239
6240         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
6241         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
6242         m_compunit_symtab, m_language>: Add "m_" prefix.
6243         Update all uses.
6244         * buildsym.c: Update all uses.
6245
6246 2018-07-20  Tom Tromey  <tom@tromey.com>
6247
6248         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
6249         * buildsym.h (record_line_ftype): Remove typedef.
6250
6251 2018-07-20  Tom Tromey  <tom@tromey.com>
6252
6253         * buildsym-legacy.h (augment_type_symtab): Don't declare.
6254         (end_expandable_symtab): Likewise.
6255         (end_symtab_get_static_block): Likewise.
6256         (end_symtab_from_static_block): Likewise.
6257         * buildsym-legacy.c (augment_type_symtab): Remove.
6258         (end_expandable_symtab): Remove.
6259         (end_symtab_get_static_block): Remove.
6260         (end_symtab_from_static_block): Remove.
6261
6262 2018-07-20  Tom Tromey  <tom@tromey.com>
6263
6264         * dwarf2read.c: Include buildsym.h.
6265         (struct dwarf2_cu) <builder>: New method.
6266         (fixup_go_packaging): Update.
6267         (process_full_comp_unit, process_full_type_unit): Update.  Don't
6268         use scoped_free_pendings.
6269         (using_directives): Add "cu" parameter, remove "language".
6270         (read_import_statement, setup_type_unit_groups, )
6271         (read_func_scope, read_lexical_block_scope)
6272         (dwarf2_record_block_ranges, read_namespace): Update.
6273         (lnp_state_machine::lnp_state_machine): Add cu parameter.
6274         (lnp_state_machine::handle_end_sequence): Update.
6275         (class lnp_state_machine) <m_cu>: New member.
6276         <m_record_line_callback>: Remove.
6277         <m_currently_recording_lines>: New member.
6278         (lnp_state_machine::handle_set_file): Update.
6279         (noop_record_line): Remove.
6280         (dwarf_record_line_p): Add cu parameter.
6281         (dwarf_record_line_1, dwarf_finish_line): Likewise.
6282         (lnp_state_machine::record_line)
6283         (lnp_state_machine::lnp_state_machine)
6284         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
6285         (dwarf_decode_lines): Update.
6286         (dwarf2_start_subfile): Add cu parameter.
6287         (dwarf2_start_symtab, new_symbol): Update.
6288         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
6289         Remove dwarf2_per_objfile parameter.
6290         (dwarf_decode_macros): Update.
6291
6292 2018-07-20  Tom Tromey  <tom@tromey.com>
6293
6294         * stabsread.c (define_symbol): Update.
6295         * buildsym-legacy.h (get_buildsym_compunit): Declare.
6296         * dwarf2read.c (new_symbol): Update.
6297         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
6298         * cp-namespace.c: Include buildsym.h.
6299         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
6300         * buildsym-legacy.c (get_buildsym_compunit): New function.
6301
6302 2018-07-20  Tom Tromey  <tom@tromey.com>
6303
6304         * xcoffread.c: Include buildsym-legacy.h.
6305         * windows-nat.c: Include buildsym-legacy.h.
6306         * stabsread.c: Include buildsym-legacy.h.
6307         * mdebugread.c: Include buildsym-legacy.h.
6308         * buildsym-legacy.h: New file.
6309         * buildsym-legacy.c: New file, from buildsym.c.
6310         * go32-nat.c: Include buildsym-legacy.h.
6311         * dwarf2read.c: Include buildsym-legacy.h.
6312         * dbxread.c: Include buildsym-legacy.h.
6313         * cp-namespace.c: Include buildsym-legacy.h.
6314         * coffread.c: Include buildsym-legacy.h.
6315         * buildsym.h: Move some contents to buildsym-legacy.h.
6316         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
6317         buildsym-legacy.c.
6318         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
6319
6320 2018-07-20  Tom Tromey  <tom@tromey.com>
6321
6322         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
6323         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
6324         (buildsym_compunit::buildsym_compunit)
6325         (buildsym_compunit::~buildsym_compunit)
6326         (buildsym_compunit::get_macro_table): Define.
6327
6328 2018-07-20  Tom Tromey  <tom@tromey.com>
6329
6330         * buildsym.c (reset_symtab_globals): Remove.
6331         (buildsym_compunit::end_symtab_from_static_block): Update.
6332         (buildsym_compunit::augment_type_symtab): Update.
6333         (end_symtab_from_static_block): Call free_buildsym_compunit.
6334         (augment_type_symtab, end_symtab, end_expandable_symtab):
6335         Likewise.
6336
6337 2018-07-20  Tom Tromey  <tom@tromey.com>
6338
6339         * arch-utils.c: Do not include buildsym.h.
6340         * mipsread.c: Do not include buildsym.h.
6341         * machoread.c: Do not include buildsym.h.
6342         * elfread.c: Do not include buildsym.h.
6343
6344 2018-07-20  Tom Tromey  <tom@tromey.com>
6345
6346         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
6347         initialization.
6348         (buildsym_compunit): Add new constructor.
6349         (struct buildsym_compunit) <get_last_source_file, finish_block,
6350         record_block_range, start_subfile, patch_subfile_names,
6351         push_subfile, pop_subfile, record_line, get_compunit_symtab,
6352         set_last_source_start_addr, get_last_source_start_addr,
6353         get_local_using_directives, set_local_using_directives,
6354         get_global_using_directives, outermost_context_p,
6355         get_current_context_stack, get_context_stack_depth,
6356         get_current_subfile, get_local_symbols, get_file_symbols,
6357         get_global_symbols, record_debugformat, record_producer,
6358         push_context, pop_context, end_symtab_get_static_block,
6359         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
6360         New public methods.
6361         <record_pending_block, finish_block_internal, make_blockvector,
6362         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
6363         private methods.
6364         Update all users.
6365
6366 2018-05-22  Tom Tromey  <tom@tromey.com>
6367
6368         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
6369         parameter.
6370         (finish_block_internal): Update.
6371
6372 2018-07-20  Tom Tromey  <tom@tromey.com>
6373
6374         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
6375         parameter.
6376         (finish_block_internal): Update.
6377
6378 2018-07-20  Tom Tromey  <tom@tromey.com>
6379
6380         * buildsym.h (EXTERN): Don't define or undef.
6381         * buildsym.c (EXTERN): Don't define.
6382
6383 2018-07-20  Tom Tromey  <tom@tromey.com>
6384
6385         * buildsym.c: Remove TODO comment.
6386
6387 2018-07-20  Tom Tromey  <tom@tromey.com>
6388
6389         * coffread.c (coff_symtab_read): Update.
6390         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
6391         (xcoff_new_init): Update.
6392         * mipsread.c (mipscoff_new_init): Update.
6393         * mdebugread.c (mdebug_build_psymtabs): Update.
6394         * elfread.c (elf_new_init): Update.
6395         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
6396         Update.
6397         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
6398         (coffstab_build_psymtabs, elfstab_build_psymtabs)
6399         (stabsect_build_psymtabs): Update.
6400         * buildsym.h (buildsym_init): Don't declare.
6401         * buildsym.c: Update comment.
6402         (prepare_for_building): Remove.
6403         (start_symtab, restart_symtab): Update.
6404         (reset_symtab_globals): Update comment.
6405         (buildsym_init): Remove.
6406
6407 2018-07-20  Tom Tromey  <tom@tromey.com>
6408
6409         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
6410         * stabsread.c (patch_block_stabs, define_symbol, read_type)
6411         (read_enum_type, common_block_start, common_block_end)
6412         (cleanup_undefined_types_1, finish_global_stabs): Update.
6413         * mdebugread.c (psymtab_to_symtab_1): Update.
6414         * dwarf2read.c (fixup_go_packaging, read_func_scope)
6415         (read_lexical_block_scope, new_symbol): Update.
6416         * dbxread.c (process_one_symbol): Update.
6417         * coffread.c (coff_symtab_read, process_coff_symbol)
6418         (coff_read_enum_type): Update.
6419         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
6420         declare.
6421         (get_local_symbols, get_file_symbols, get_global_symbols): New
6422         functions.
6423         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
6424         m_global_symbols.
6425         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
6426         (~scoped_free_pendings): Update.
6427         (finish_block, prepare_for_building, reset_symtab_globals)
6428         (end_symtab_get_static_block, end_symtab_with_blockvector)
6429         (augment_type_symtab, push_context): Update.
6430         (get_local_symbols, get_file_symbols, get_global_symbols): New
6431         functions.
6432         (buildsym_init): Update.
6433
6434 2018-07-20  Tom Tromey  <tom@tromey.com>
6435
6436         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
6437         (process_full_type_unit): Likewise.
6438         (dwarf2_start_symtab): Set list_in_scope.
6439
6440 2018-07-20  Tom Tromey  <tom@tromey.com>
6441
6442         * dwarf2read.c (process_psymtab_comp_unit_reader)
6443         (build_type_psymtabs_reader): Do not set list_in_scope.
6444
6445 2018-07-20  Tom Tromey  <tom@tromey.com>
6446
6447         * buildsym.c (free_pendings): Remove.
6448         (add_symbol_to_list, scoped_free_pendings)
6449         (finish_block_internal, buildsym_init): Update.
6450
6451 2018-07-20  Tom Tromey  <tom@tromey.com>
6452
6453         * xcoffread.c (read_xcoff_symtab): Update.
6454         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
6455         Update.
6456         * dbxread.c (process_one_symbol): Update.
6457         * coffread.c (coff_symtab_read): Update.
6458         * buildsym.h (finish_block): Update.
6459         * buildsym.c (finish_block): Remove "listhead" argument.
6460         (end_symtab_get_static_block): Update.
6461
6462 2018-07-20  Tom Tromey  <tom@tromey.com>
6463
6464         * buildsym.h (class scoped_free_pendings): Remove constructor.
6465         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
6466         method.
6467         <m_pending_block_obstack, m_pending_blocks>: New members.
6468         (pending_block_obstack, pending_blocks): Remove.
6469         (scoped_free_pendings::scoped_free_pendings): Default.
6470         (~scoped_free_pendings): Update.
6471         (free_pending_blocks): Remove.
6472         (finish_block_internal, record_pending_block, make_blockvector)
6473         (end_symtab_get_static_block, augment_type_symtab, push_context)
6474         (buildsym_init): Update.
6475
6476 2018-07-20  Tom Tromey  <tom@tromey.com>
6477
6478         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
6479         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
6480         members.
6481         (pending_addrmap, pending_addrmap_obstack)
6482         (pending_addrmap_interesting): Remove.
6483         (scoped_free_pendings, record_block_range, make_blockvector)
6484         (prepare_for_building, reset_symtab_globals, buildsym_init):
6485         Update.
6486
6487 2018-07-20  Tom Tromey  <tom@tromey.com>
6488
6489         * xcoffread.c (process_linenos): Update.
6490         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
6491         * mdebugread.c (psymtab_to_symtab_1): Update.
6492         * dwarf2read.c (setup_type_unit_groups)
6493         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
6494         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
6495         * dbxread.c (process_one_symbol): Update.
6496         * coffread.c (coff_symtab_read, enter_linenos)
6497         (process_coff_symbol): Update.
6498         * buildsym.h (current_subfile): Don't declare.
6499         (get_current_subfile): Declare.
6500         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
6501         member.
6502         (start_subfile, free_buildsym_compunit, push_subfile)
6503         (prepare_for_building, start_symtab): Update.
6504         (get_current_subfile): New function.
6505
6506 2018-07-20  Tom Tromey  <tom@tromey.com>
6507
6508         * coffread.c (coff_symtab_read): Update.
6509         * xcoffread.c (read_xcoff_symtab): Update.
6510         * dwarf2read.c (new_symbol): Update.
6511         (read_func_scope, read_lexical_block_scope): Update.
6512         * dbxread.c (process_one_symbol): Update.
6513         * buildsym.h (context_stack, context_stack_depth): Don't declare.
6514         (outermost_context_p): Remove macro.
6515         (outermost_context_p, get_current_context_stack)
6516         (get_context_stack_depth): Declare.
6517         (pop_context): Return struct context_stack.
6518         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
6519         member.
6520         (context_stack_size): Remove.
6521         (INITIAL_CONTEXT_STACK_SIZE): Remove.
6522         (prepare_for_building, end_symtab_get_static_block)
6523         (augment_type_symtab, push_context): Update.
6524         (pop_context): Return struct context_stack.
6525         (outermost_context_p, get_current_context_stack)
6526         (get_context_stack_depth): New functions.
6527         (buildsym_init): Update.
6528
6529 2018-07-20  Tom Tromey  <tom@tromey.com>
6530
6531         * rust-exp.y: Now a pure parser.  Update all rules.
6532         (%union): Move earlier.
6533         (current_parser, work_obstack): Remove globals.
6534         (rust_parser, ~rust_parser): Update.
6535         (class rust_parser) <copy_name, concat3, crate_name, super_name,
6536         lex_character, lex_number, lex_string, lex_identifier,
6537         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
6538         convert_name, convert_params_to_expression,
6539         convert_ast_to_expression, ast_basic_type, ast_operation,
6540         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
6541         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
6542         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
6543         ast_array_type, ast_slice_type, ast_reference_type,
6544         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
6545         (rust_parse): Update.
6546         (rustyyerror, rustyylex): Add parser parameter.
6547         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
6548         (rust_lex_stringish_test, rust_lex_test_sequence)
6549         (rust_lex_test_trailing_dot, rust_lex_test_completion)
6550         (rust_lex_test_push_back, rust_lex_tests): Update.
6551
6552 2018-07-19  Pedro Alves  <palves@redhat.com>
6553
6554         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
6555         gdb::unique_xmalloc_ptr.
6556         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
6557         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
6558         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
6559         copy-initialization.
6560         * guile/scm-pretty-print.c (ppscm_print_children): Use
6561         gdb::unique_xmalloc_ptr instead of cleanups.
6562         (gdbscm_apply_val_pretty_printer): Remove cleanups.
6563         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
6564         gdb::unique_xmalloc_ptr.
6565         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6566         Adjust to use gdb::unique_xmalloc_ptr.
6567         * guile/scm-utils.c (extract_arg): Adjust.
6568         * guile/scm-value.c (gdbscm_value_field): Adjust to use
6569         gdb::unique_xmalloc_ptr instead of a cleanup.
6570
6571 2018-07-19  Tom Tromey  <tom@tromey.com>
6572
6573         * utils.c (do_value_free_to_mark)
6574         (make_cleanup_value_free_to_mark): Remove.
6575         * utils.h (make_cleanup_value_free_to_mark): Remove.
6576
6577 2018-07-19  Pedro Alves  <palves@redhat.com>
6578
6579         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
6580         forwarding reference.
6581
6582 2018-07-18  Pedro Alves  <palves@redhat.com>
6583
6584         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
6585         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
6586         cleanup.
6587
6588 2018-07-18  Pedro Alves  <palves@redhat.com>
6589
6590         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
6591         exceptions.
6592         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
6593         (gdbscm_wrap): New.
6594         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
6595         directly instead of a cleanup.
6596         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
6597         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
6598         (vlscm_binop_gdbthrow): New, factored out from ...
6599         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
6600         (vlscm_rich_compare): Use gdbscm_wrap.
6601         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
6602         instead of a cleanup.
6603         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
6604         cleanup.
6605         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6606         Use xfree directly instead of a cleanup.
6607         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
6608         Adjust to use gdbscm_wrap and scoped_value_mark.
6609         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
6610         (gdbscm_value_address, gdbscm_value_dereference)
6611         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
6612         scoped_value_mark.
6613         (gdbscm_value_dynamic_type): Use scoped_value_mark.
6614         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
6615         scoped_value_mark.
6616         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
6617         gdbscm_wrap and scoped_value_mark.
6618         (gdbscm_value_to_string): Use xfree directly instead of a
6619         cleanup.  Move 'buffer' unique_ptr to TRY scope.
6620         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
6621         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
6622         scoped_value_mark.
6623         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
6624         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
6625         scoped_value_mark.
6626         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
6627         gdbscm_wrap.
6628
6629 2018-07-18  Tom de Vries  <tdevries@suse.de>
6630
6631         * findvar.c (default_read_var_value): Also resolve dynamic type for
6632         LOC_OPTIMIZED_OUT vars.
6633
6634 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
6635
6636         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
6637         decoding.
6638
6639 2018-07-17  Tom Tromey  <tom@tromey.com>
6640
6641         * guile/scm-param.c (pascm_set_func, pascm_show_func)
6642         (compute_enum_list, pascm_set_param_value_x)
6643         (gdbscm_parameter_value): Update.
6644         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
6645         (gdbscm_scm_to_host_string): Update.
6646         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
6647         Update.
6648         * guile/scm-cmd.c (cmdscm_add_completion): Update.
6649         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
6650         * guile/scm-string.c (gdbscm_scm_to_string): Return
6651         unique_xmalloc_ptr.
6652         (gdbscm_scm_to_host_string): Likewise.
6653
6654 2018-07-17  Tom Tromey  <tom@tromey.com>
6655
6656         * guile/guile.c (gdbscm_eval_from_control_command): Update.
6657         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
6658         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
6659         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
6660         unique_xmalloc_ptr.
6661
6662 2018-07-17  Tom Tromey  <tom@tromey.com>
6663
6664         * guile/scm-param.c (pascm_signal_setshow_error): Update.
6665         * guile/guile-internal.h (gdbscm_exception_message_to_string):
6666         Update.
6667         * guile/scm-cmd.c (cmdscm_function): Update.
6668         * guile/scm-pretty-print.c
6669         (ppscm_print_exception_unless_memory_error): Update.
6670         * guile/scm-exception.c (gdbscm_exception_message_to_string):
6671         Return unique_xmalloc_ptr.
6672
6673 2018-07-17  Tom Tromey  <tom@tromey.com>
6674
6675         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
6676         Use string_printf.
6677
6678 2018-07-17  Jim Wilson  <jimw@sifive.com>
6679
6680         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
6681         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
6682         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
6683         unecessary braces after EF_RISCV_RVC test.  Delete call to
6684         set_gdbarch_decr_pc_after_break.
6685
6686         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
6687         RISCV_LAST_FP_REGNUM + 1.
6688         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
6689
6690 2018-07-17  Tom Tromey  <tom@tromey.com>
6691
6692         * configure.ac: Remove --disable-gdbcli.
6693         * configure: Rebuild.
6694         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
6695         (SUBDIR_CLI_CFLAGS): Remove.
6696         (SFILES): Use SUBDIR_CLI_SRCS.
6697         (COMMON_OBS): Use SUBDIR_CLI_OBS.
6698
6699 2018-07-17  Tom Tromey  <tom@tromey.com>
6700
6701         PR gdb/18624:
6702         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
6703
6704 2018-07-16  Jim Wilson  <jimw@sifive.com>
6705
6706         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
6707
6708 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6709
6710         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
6711         variable.
6712         (libunwind_frame_sniffer): Likewise.
6713         (libunwind_frame_prev_register): Likewise.
6714         (libunwind_sigtramp_frame_sniffer): Likewise.
6715         * ia64-tdep.c (ia64_access_reg): Likewise.
6716         (ia64_access_rse_reg): Likewise.
6717         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
6718         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
6719
6720 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6721
6722         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
6723
6724 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6725
6726         * remote-sim.c (gdbsim_target::close,
6727         gdbsim_target::mourn_inferior): Remove unused variables.
6728
6729 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
6730
6731         * ia64-tdep.c (ktab_buf): New global.
6732         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
6733         (get_kernel_table): Adjust.
6734
6735 2018-07-16  Tom Tromey  <tom@tromey.com>
6736
6737         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
6738         * dwarf2read.c (using_directives, new_symbol): Use
6739         outermost_context_p.
6740         * dbxread.c (process_one_symbol): Use outermost_context_p.
6741         * coffread.c (coff_symtab_read): Use outermost_context_p.
6742
6743 2018-07-16  Tom Tromey  <tom@tromey.com>
6744
6745         * dwarf2read.c (using_directives, read_func_scope)
6746         (read_lexical_block_scope): Update.
6747         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
6748         * buildsym.h (local_using_directives, global_using_directives):
6749         Don't declare.
6750         (get_local_using_directives, set_local_using_directives)
6751         (get_global_using_directives): Declare.
6752         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
6753         m_global_using_directives>: New members.
6754         (finish_block_internal, prepare_for_building)
6755         (reset_symtab_globals, end_symtab_get_static_block)
6756         (push_context): Update.
6757         (get_local_using_directives, set_local_using_directives)
6758         (get_global_using_directives): New functions.
6759         (buildsym_init): Update.
6760
6761 2018-07-16  Tom Tromey  <tom@tromey.com>
6762
6763         * xcoffread.c (xcoff_initial_scan): Don't call
6764         free_pending_blocks.
6765         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
6766         * buildsym.h (class scoped_free_pendings): Add constructor.
6767         (free_pending_blocks): Don't declare.
6768         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
6769         (free_pending_blocks): Now static.
6770
6771 2018-07-16  Tom Tromey  <tom@tromey.com>
6772
6773         * buildsym.h (push_subfile, pop_subfile): Update declarations.
6774         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
6775         member.
6776         (struct subfile_stack): Remove.
6777         (subfile_stack): Remove.
6778         (push_subfile, pop_subfile, buildsym_init): Update.
6779
6780 2018-07-16  Tom Tromey  <tom@tromey.com>
6781
6782         * buildsym.c (push_subfile): Use gdb_assert.
6783         (pop_subfile): Use gdb_assert.
6784
6785 2018-07-16  Tom Tromey  <tom@tromey.com>
6786
6787         * buildsym.h (merge_symbol_lists): Remove.
6788         * buildsym.c (merge_symbol_lists): Remove.
6789
6790 2018-07-16  Tom Tromey  <tom@tromey.com>
6791
6792         * stabsread.c (scan_file_globals): Update comment.
6793         * stabsread.h (scan_file_globals): Move from buildsym.h.
6794         * buildsym.h (scan_file_globals): Move to stabsread.h.
6795
6796 2018-07-16  Tom Tromey  <tom@tromey.com>
6797
6798         * xcoffread.c (xcoff_new_init): Update.
6799         * mipsread.c (mipscoff_new_init): Update.
6800         * mdebugread.c (mdebug_build_psymtabs): Update.
6801         * elfread.c (elf_new_init): Update.
6802         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
6803         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
6804         * buildsym.h (buildsym_new_init): Don't declare.
6805         * buildsym.c (buildsym_new_init): Remove.
6806
6807 2018-07-16  Tom Tromey  <tom@tromey.com>
6808
6809         * stabsread.h (within_function): Move from buildsym.h.
6810         * stabsread.c (start_stabs): Clear within_function.
6811         * coffread.c (coff_start_symtab): Clear within_function.
6812         * buildsym.h (within_function): Move to stabsread.h.
6813         * buildsym.c (prepare_for_building): Update.
6814
6815 2018-07-16  Tom Tromey  <tom@tromey.com>
6816
6817         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
6818         * dwarf2read.c (dwarf2_start_symtab): Don't set
6819         processing_gcc_compilation.
6820         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
6821
6822 2018-07-16  Tom Tromey  <tom@tromey.com>
6823
6824         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
6825         (next_symbol_text_func): Move from buildsym.h.
6826         * stabsread.c (hashname): Move from buildsym.c.
6827         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
6828         (next_symbol_text_func, hashname): Move to stabsread.h.
6829         * buildsym.c: Don't include bcache.h
6830         (hashname): Move to stasbread.c.
6831
6832 2018-07-16  Tom Tromey  <tom@tromey.com>
6833
6834         * buildsym.h (context_stack_size): Don't declare.
6835         * buildsym.c (context_stack_size): New global.
6836
6837 2018-07-16  Tom Tromey  <tom@tromey.com>
6838
6839         * dbxread.c (processing_acc_compilation): New global.
6840         * buildsym.h (processing_acc_compilation): Don't declare.
6841
6842 2018-07-16  Tom Tromey  <tom@tromey.com>
6843
6844         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
6845         * dbxread.c (read_ofile_symtab): Update.
6846         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
6847         * buildsym.h (last_source_start_addr): Remove.
6848         (set_last_source_start_addr, get_last_source_start_addr):
6849         Declare.
6850         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
6851         parameter.
6852         (struct buildsym_compunit) <m_last_source_start_addr>: New
6853         member.
6854         (prepare_for_building): Remove start_addr parameter.
6855         (start_symtab, restart_symtab, end_symtab_get_static_block)
6856         (end_symtab_with_blockvector): Update.
6857         (set_last_source_start_addr, get_last_source_start_addr): New
6858         functions.
6859
6860 2018-07-16  Tom Tromey  <tom@tromey.com>
6861
6862         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
6863         member.
6864         (have_line_numbers): Remove.
6865         (record_line, prepare_for_building, end_symtab_get_static_block)
6866         (augment_type_symtab): Update.
6867
6868 2018-07-16  Tom Tromey  <tom@tromey.com>
6869
6870         * buildsym.c (~buildsym_compunit): Free the macro table.
6871         (struct buildsym_compunit) <get_macro_table, release_macros>: New
6872         methods.
6873         <m_pending_macros>: New member.
6874         (pending_macros): Remove.
6875         (~scoped_free_pendings, get_macro_table, prepare_for_building)
6876         (reset_symtab_globals, end_symtab_get_static_block)
6877         (end_symtab_with_blockvector, augment_type_symtab)
6878         (buildsym_init): Update.
6879
6880 2018-07-16  Tom Tromey  <tom@tromey.com>
6881
6882         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
6883         parameter.
6884         (buildsym_compunit::set_last_source_file): New method.
6885         <m_last_source_file>: New member.
6886         (prepare_for_building): Remove "name" parameter.
6887         (start_symtab, restart_symtab, reset_symtab_globals): Update.
6888         (last_source_file): Remove.
6889         (set_last_source_file, get_last_source_file): Update.
6890
6891 2018-07-16  Tom Tromey  <tom@tromey.com>
6892
6893         * buildsym.c (prepare_for_building): Add assert.
6894
6895 2018-07-16  Tom Tromey  <tom@tromey.com>
6896
6897         * buildsym.c (~buildsym_compunit): Update.
6898         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
6899         (start_subfile, patch_subfile_names)
6900         (end_symtab_with_blockvector): Update.
6901
6902 2018-07-16  Tom Tromey  <tom@tromey.com>
6903
6904         * buildsym.c (struct buildsym_compunit): Add constructor,
6905         destructor, initializers.
6906         (start_buildsym_compunit): Remove.
6907         (free_buildsym_compunit): Use "delete".
6908         (start_symtab, restart_symtab): Use "new".
6909
6910 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
6911
6912         * symfile.c (set_objfile_default_section_offset): Remove struct
6913         keyword.
6914
6915 2018-07-14  Stafford Horne  <shorne@gmail.com>
6916
6917         * (Responsible Maintainers): Add myself as or1k maintainer.
6918
6919 2018-07-13  Tom Tromey  <tom@tromey.com>
6920
6921         * symfile.c (set_objfile_default_section_offset): Use extra braces
6922         around initializer.
6923
6924 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
6925
6926         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
6927         non-branching basr.
6928
6929 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6930
6931         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6932         unittests/cli-utils-selftests.c
6933         * unittests/cli-utils-selftests.c: New file.
6934
6935 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6936
6937         * NEWS: Mention new commands. Mention change to 'thread apply'.
6938
6939 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6940
6941         * thread.c (thr_try_catch_cmd): New function.
6942         (thread_apply_all_command): Handle qcs flags.
6943         (thread_apply_command): Handle qcs flags.
6944         (taas_command): New function.
6945         (tfaas_command): New function.
6946         (_initialize_thread): Update to setup the new commands 'taas
6947         and 'tfaas'. Change doc string for 'thread apply'.
6948
6949 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6950
6951         * stack.c: (trailing_outermost_frame): New function, mostly
6952         extracted from backtrace_command_1.
6953         (leading_innermost_frame): New function.
6954         (backtrace_command_1): Update to call trailing_outermost_frame.
6955         (frame_apply_command_count): New function.
6956         (frame_apply_level_command): New function.
6957         (frame_apply_all_command): New function.
6958         (frame_apply_command): New function.
6959         (faas_command): New function.
6960         (frame_cmd_list): New variable.
6961         (_initialize_stack): Update to setup the new commands 'frame apply'
6962         and 'faas'.
6963
6964 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6965
6966         * cli-utils.c (number_or_range_parser::get_number): Only handle
6967         numbers or convenience var as numbers.
6968         (parse_flags): New function.
6969         (parse_flags_qcs): New function.
6970         (number_or_range_parser::finished): Ensure parsing end is detected
6971         before end of string.
6972         * cli-utils.h (parse_flags): New function.
6973         (parse_flags_qcs): New function.
6974         (number_or_range_parser): Remove m_finished bool.
6975         (number_or_range_parser::skip_range): Set m_in_range to false.
6976
6977 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
6978
6979         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
6980         on Windows.
6981
6982 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6983             Jan Kratochvil  <jan.kratochvil@redhat.com>
6984             Paul Fertser  <fercerpav@gmail.com>
6985             Tsutomu Seki  <sekiriki@gmail.com>
6986             Pedro Alves  <palves@redhat.com>
6987
6988         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6989         'unittests/parse-connection-spec-selftests.c'.
6990         (COMMON_SFILES): Add 'common/netstuff.c'.
6991         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
6992         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
6993         * common/netstuff.c: New file.
6994         * common/netstuff.h: New file.
6995         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
6996         (wait_for_connect): Update comment.  New parameter
6997         'gdb::optional<int> sock' instead of 'struct serial *scb'.
6998         Use 'sock' directly instead of 'scb->fd'.
6999         (try_connect): New function, with code from 'net_open'.
7000         (net_open): Rewrite main loop to deal with multiple
7001         sockets/addresses.  Handle IPv6-style hostnames; implement
7002         support for IPv6 connections.
7003         * unittests/parse-connection-spec-selftests.c: New file.
7004
7005 2018-07-11  Pedro Alves  <palves@redhat.com>
7006
7007         PR gdb/23377
7008         * remote.c (remote_target::remote_detach_pid): Call
7009         set_current_process.
7010
7011 2018-07-11  Pedro Alves  <palves@redhat.com>
7012
7013         * h8300-tdep.c (h8300_gdbarch_init): Remove
7014         set_gdbarch_ecoff_reg_to_regnum calls.
7015
7016 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
7017
7018         PR c++/23373
7019         * c-typeprint.c (c_type_print_base_struct_union): Don't print
7020         offsets/sizes for static members of a class/struct.
7021
7022 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
7023
7024         * target-descriptions.c (tdesc_register_bitsize): Rename.
7025         * target-descriptions.h (tdesc_register_bitsize): Likewise.
7026         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
7027         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
7028
7029 2018-07-10  Tom Tromey  <tom@tromey.com>
7030
7031         * breakpoint.c (moribund_locations): Now static and a
7032         std::vector.
7033         (breakpoint_init_inferior, moribund_breakpoint_here_p)
7034         (build_bpstat_chain, update_global_location_list)
7035         (breakpoint_retire_moribund): Update.
7036         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
7037         VEC.
7038
7039 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
7040
7041         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
7042         (riscv_register_reggroup_p): Use new function, remove unneeded
7043         parenthesis.
7044         (riscv_push_dummy_call): Extend assert to compare against xlen or
7045         flen based on register type.
7046
7047 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
7048
7049         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
7050
7051 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
7052
7053         * remote.c (show_hardware_watchpoint_limit): New function.
7054         (show_hardware_watchpoint_length_limit): New function.
7055         (show_hardware_breakpoint_limit): New function.
7056         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
7057         where appropriate, update help text.
7058
7059 2018-07-09  Tom Tromey  <tom@tromey.com>
7060
7061         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
7062         (CLIBS): Don't mention NAT_CLIBS.
7063
7064 2018-07-09  Tom Tromey  <tom@tromey.com>
7065
7066         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
7067         (LIBGDB_OBS, clean mostlyclean): Update.
7068         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
7069
7070 2018-07-09  Tom Tromey  <tom@tromey.com>
7071
7072         * Makefile.in (%.c: %.y): Use ECHO_YACC.
7073         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
7074         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
7075
7076 2018-07-09  Tom Tromey  <tom@tromey.com>
7077
7078         * Makefile.in (ALLDEPFILES): Remove exec.c.
7079         (COMMON_OBS): Remove exec.o.
7080         (COMMON_SFILES): Add exec.c.
7081
7082 2018-07-09  Tom Tromey  <tom@tromey.com>
7083
7084         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
7085
7086 2018-07-09  Tom Tromey  <tom@tromey.com>
7087
7088         * Makefile.in (clean mostlyclean): Remove stamp-version.
7089         (version.c): Depend on stamp-version.
7090         (stamp-version): New rule, from version.c rule.
7091
7092 2018-07-09  Tom Tromey  <tom@tromey.com>
7093
7094         * Makefile.in (init.c): Depend on stamp-init.
7095         (stamp-init): New rule, from init.c rule.
7096         (clean mostlyclean): Remove stamp-init.
7097
7098 2018-07-09  Tom Tromey  <tom@tromey.com>
7099
7100         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
7101         SUBDIR_GCC_COMPILE_SRCS.
7102
7103 2018-07-09  Tom Tromey  <tom@tromey.com>
7104
7105         * Makefile.in (init.c): Remove some unused sed rules.
7106
7107 2018-07-09  Tom Tromey  <tom@tromey.com>
7108
7109         * Makefile.in (TSOBS): Remove.
7110         (INIT_FILES): Update.
7111         (LIBGDB_OBS): Update.
7112         (COMMON_SFILES): Add inflow.c.
7113         (SFILES): Remove inflow.c.
7114
7115 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
7116
7117         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
7118
7119 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
7120
7121         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
7122         get_saveloc_name, is_signal_frame_name, step_name,
7123         init_remote_name, create_addr_space_name,
7124         destroy_addr_space_name, search_unwind_table_name,
7125         find_dyn_list_name): Constify.
7126
7127 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
7128
7129         * darwin-nat.c (darwin_pthread_kill): New function.
7130         (darwin_resume_thread): Use darwin_pthread_kill.
7131
7132 2018-07-05  Tom de Vries  <tdevries@suse.de>
7133
7134         * macroexp.c (macro_buffer) <operator=>: New member function.
7135
7136 2018-07-04  Tom Tromey  <tom@tromey.com>
7137
7138         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
7139
7140 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
7141
7142         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
7143         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
7144         * maint.c: Likewise.
7145         * top.c: Likewise.
7146
7147 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
7148
7149         * NEWS: Create a new section for the next release branch.
7150         Rename the section of the current branch, now that it has
7151         been cut.
7152
7153 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
7154
7155         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
7156         * version.in: Bump version to 8.2.50.DATE-git.
7157
7158 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
7159             Pedro Alves  <palves@redhat.com>
7160
7161         * linux-nat.c (linux_init_ptrace): Rename to ...
7162         (linux_init_ptrace_procfs): ... this.  Call
7163         linux_proc_init_warnings.
7164         (linux_nat_target::post_attach)
7165         (linux_nat_target::post_startup_inferior): Adjust.
7166         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
7167         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
7168
7169 2018-07-04  Tom de Vries  <tdevries@suse.de>
7170
7171         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
7172         check ...
7173         (read_comp_unit_head): ... here.
7174
7175 2018-07-03  Tom Tromey  <tom@tromey.com>
7176
7177         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
7178         (stop_tracing, tstatus_command)
7179         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
7180         (print_one_static_tracepoint_marker): Update.
7181         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
7182         std::vector.
7183         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
7184         VEC.
7185         (all_tracepoints, static_tracepoints_here): Return std::vector.
7186
7187 2018-07-03  Tom Tromey  <tom@tromey.com>
7188
7189         * common/ptid.c (ptid_equal): Remove.
7190         * common/ptid.h (ptid_equal): Don't declare.
7191         * ada-tasks.c: Update.
7192         * breakpoint.c: Update.
7193         * common/agent.c: Update.
7194         * corelow.c: Update.
7195         * darwin-nat-info.c: Update.
7196         * darwin-nat.c: Update.
7197         * dcache.c: Update.
7198         * dtrace-probe.c: Update.
7199         * dummy-frame.c: Update.
7200         * fbsd-nat.c: Update.
7201         * frame.c: Update.
7202         * gdbthread.h: Update.
7203         * gnu-nat.c: Update.
7204         * go32-nat.c: Update.
7205         * inf-loop.c: Update.
7206         * inf-ptrace.c: Update.
7207         * infcall.c: Update.
7208         * infcmd.c: Update.
7209         * inflow.c: Update.
7210         * infrun.c: Update.
7211         * linux-fork.c: Update.
7212         * linux-nat.c: Update.
7213         * linux-thread-db.c: Update.
7214         * mi/mi-cmd-var.c: Update.
7215         * mi/mi-interp.c: Update.
7216         * mi/mi-main.c: Update.
7217         * nto-procfs.c: Update.
7218         * ppc-linux-tdep.c: Update.
7219         * procfs.c: Update.
7220         * python/py-inferior.c: Update.
7221         * python/py-record-btrace.c: Update.
7222         * python/py-record.c: Update.
7223         * ravenscar-thread.c: Update.
7224         * regcache.c: Update.
7225         * remote-sim.c: Update.
7226         * remote.c: Update.
7227         * sol-thread.c: Update.
7228         * solib.c: Update.
7229         * target.c: Update.
7230         * tui/tui-stack.c: Update.
7231         * varobj.c: Update.
7232         * windows-nat.c: Update.
7233         * windows-tdep.c: Update.
7234
7235 2018-07-03  Tom Tromey  <tom@tromey.com>
7236
7237         * common/ptid.c (ptid_match): Remove.
7238         * common/ptid.h (ptid_match): Don't declare.
7239         * fbsd-nat.c: Update.
7240         * infcmd.c: Update.
7241         * infrun.c: Update.
7242         * linux-nat.c: Update.
7243         * record-btrace.c: Update.
7244         * regcache.c: Update.
7245         * remote.c: Update.
7246
7247 2018-07-03  Tom Tromey  <tom@tromey.com>
7248
7249         * common/ptid.c (ptid_tid_p): Remove.
7250         * common/ptid.h (ptid_tid_p): Don't declare.
7251         * sol-thread.c: Update.
7252
7253 2018-07-03  Tom Tromey  <tom@tromey.com>
7254
7255         * common/ptid.c (ptid_lwp_p): Remove.
7256         * common/ptid.h (ptid_lwp_p): Don't declare.
7257         * fbsd-nat.c: Update.
7258         * linux-nat.c: Update.
7259         * nat/linux-procfs.c: Update.
7260         * nat/x86-linux-dregs.c: Update.
7261         * sol-thread.c: Update.
7262
7263 2018-07-03  Tom Tromey  <tom@tromey.com>
7264
7265         * common/ptid.c (ptid_is_pid): Remove.
7266         * common/ptid.h (ptid_is_pid): Don't declare.
7267         * infrun.c: Update.
7268         * linux-nat.c: Update.
7269         * mi/mi-interp.c: Update.
7270         * remote.c: Update.
7271         * thread.c: Update.
7272
7273 2018-07-03  Tom Tromey  <tom@tromey.com>
7274
7275         * common/ptid.c (ptid_get_tid): Remove.
7276         * common/ptid.h (ptid_get_tid): Don't declare.
7277         * ada-tasks.c: Update.
7278         * aix-thread.c: Update.
7279         * bsd-uthread.c: Update.
7280         * darwin-nat.c: Update.
7281         * fbsd-nat.c: Update.
7282         * i386-darwin-nat.c: Update.
7283         * infrun.c: Update.
7284         * linux-tdep.c: Update.
7285         * nto-procfs.c: Update.
7286         * ppc-ravenscar-thread.c: Update.
7287         * python/py-infthread.c: Update.
7288         * ravenscar-thread.c: Update.
7289         * sol-thread.c: Update.
7290         * sparc-ravenscar-thread.c: Update.
7291         * windows-nat.c: Update.
7292
7293 2018-07-03  Tom Tromey  <tom@tromey.com>
7294
7295         * common/ptid.c (ptid_get_lwp): Remove.
7296         * common/ptid.h (ptid_get_lwp): Don't declare.
7297         * aarch64-linux-nat.c: Update.
7298         * ada-tasks.c: Update.
7299         * aix-thread.c: Update.
7300         * amd64-linux-nat.c: Update.
7301         * arm-linux-nat.c: Update.
7302         * corelow.c: Update.
7303         * fbsd-nat.c: Update.
7304         * fbsd-tdep.c: Update.
7305         * gnu-nat.c: Update.
7306         * i386-cygwin-tdep.c: Update.
7307         * i386-gnu-nat.c: Update.
7308         * i386-linux-nat.c: Update.
7309         * ia64-linux-nat.c: Update.
7310         * inf-ptrace.c: Update.
7311         * infrun.c: Update.
7312         * linux-fork.c: Update.
7313         * linux-nat.c: Update.
7314         * linux-tdep.c: Update.
7315         * linux-thread-db.c: Update.
7316         * mips-linux-nat.c: Update.
7317         * nat/aarch64-linux-hw-point.c: Update.
7318         * nat/aarch64-linux.c: Update.
7319         * nat/linux-btrace.c: Update.
7320         * nat/linux-osdata.c: Update.
7321         * nat/linux-procfs.c: Update.
7322         * nat/x86-linux-dregs.c: Update.
7323         * obsd-nat.c: Update.
7324         * ppc-fbsd-nat.c: Update.
7325         * ppc-linux-nat.c: Update.
7326         * procfs.c: Update.
7327         * python/py-infthread.c: Update.
7328         * ravenscar-thread.c: Update.
7329         * remote.c: Update.
7330         * s390-linux-nat.c: Update.
7331         * sol-thread.c: Update.
7332         * sol2-tdep.c: Update.
7333         * spu-linux-nat.c: Update.
7334         * x86-linux-nat.c: Update.
7335         * xtensa-linux-nat.c: Update.
7336
7337 2018-07-03  Tom Tromey  <tom@tromey.com>
7338
7339         * common/ptid.c (ptid_get_pid): Remove.
7340         * common/ptid.h (ptid_get_pid): Don't declare.
7341         * aarch64-linux-nat.c: Update.
7342         * ada-lang.c: Update.
7343         * aix-thread.c: Update.
7344         * alpha-bsd-nat.c: Update.
7345         * amd64-fbsd-nat.c: Update.
7346         * amd64-linux-nat.c: Update.
7347         * arm-linux-nat.c: Update.
7348         * arm-nbsd-nat.c: Update.
7349         * auxv.c: Update.
7350         * break-catch-syscall.c: Update.
7351         * breakpoint.c: Update.
7352         * bsd-uthread.c: Update.
7353         * corelow.c: Update.
7354         * ctf.c: Update.
7355         * darwin-nat.c: Update.
7356         * fbsd-nat.c: Update.
7357         * fbsd-tdep.c: Update.
7358         * gcore.c: Update.
7359         * gnu-nat.c: Update.
7360         * hppa-nbsd-nat.c: Update.
7361         * hppa-obsd-nat.c: Update.
7362         * i386-fbsd-nat.c: Update.
7363         * ia64-linux-nat.c: Update.
7364         * inf-ptrace.c: Update.
7365         * infcmd.c: Update.
7366         * inferior.c: Update.
7367         * inferior.h: Update.
7368         * inflow.c: Update.
7369         * infrun.c: Update.
7370         * linux-fork.c: Update.
7371         * linux-nat.c: Update.
7372         * linux-tdep.c: Update.
7373         * linux-thread-db.c: Update.
7374         * m68k-bsd-nat.c: Update.
7375         * mi/mi-interp.c: Update.
7376         * mi/mi-main.c: Update.
7377         * mips-linux-nat.c: Update.
7378         * mips-nbsd-nat.c: Update.
7379         * mips64-obsd-nat.c: Update.
7380         * nat/aarch64-linux-hw-point.c: Update.
7381         * nat/aarch64-linux.c: Update.
7382         * nat/linux-btrace.c: Update.
7383         * nat/linux-osdata.c: Update.
7384         * nat/linux-procfs.c: Update.
7385         * nat/x86-linux-dregs.c: Update.
7386         * nto-procfs.c: Update.
7387         * obsd-nat.c: Update.
7388         * ppc-linux-nat.c: Update.
7389         * ppc-nbsd-nat.c: Update.
7390         * ppc-obsd-nat.c: Update.
7391         * proc-service.c: Update.
7392         * procfs.c: Update.
7393         * python/py-inferior.c: Update.
7394         * python/py-infthread.c: Update.
7395         * ravenscar-thread.c: Update.
7396         * record.c: Update.
7397         * remote-sim.c: Update.
7398         * remote.c: Update.
7399         * rs6000-nat.c: Update.
7400         * s390-linux-nat.c: Update.
7401         * sh-nbsd-nat.c: Update.
7402         * sol-thread.c: Update.
7403         * sparc-nat.c: Update.
7404         * sparc64-tdep.c: Update.
7405         * spu-linux-nat.c: Update.
7406         * spu-tdep.c: Update.
7407         * target-debug.h: Update.
7408         * target.c: Update.
7409         * thread.c: Update.
7410         * tid-parse.c: Update.
7411         * tracefile-tfile.c: Update.
7412         * vax-bsd-nat.c: Update.
7413         * windows-nat.c: Update.
7414         * x86-linux-nat.c: Update.
7415         * x86-nat.c: Update.
7416
7417 2018-07-03  Tom Tromey  <tom@tromey.com>
7418
7419         * common/ptid.c (pid_to_ptid): Remove.
7420         * common/ptid.h (pid_to_ptid): Don't declare.
7421         * aix-thread.c: Update.
7422         * arm-linux-nat.c: Update.
7423         * common/ptid.c: Update.
7424         * common/ptid.h: Update.
7425         * corelow.c: Update.
7426         * ctf.c: Update.
7427         * darwin-nat.c: Update.
7428         * fbsd-nat.c: Update.
7429         * fork-child.c: Update.
7430         * gnu-nat.c: Update.
7431         * go32-nat.c: Update.
7432         * inf-ptrace.c: Update.
7433         * infcmd.c: Update.
7434         * inferior.c: Update.
7435         * infrun.c: Update.
7436         * linux-fork.c: Update.
7437         * linux-nat.c: Update.
7438         * nat/aarch64-linux-hw-point.c: Update.
7439         * nat/fork-inferior.c: Update.
7440         * nat/x86-linux-dregs.c: Update.
7441         * nto-procfs.c: Update.
7442         * obsd-nat.c: Update.
7443         * procfs.c: Update.
7444         * progspace.c: Update.
7445         * remote.c: Update.
7446         * rs6000-nat.c: Update.
7447         * s390-linux-nat.c: Update.
7448         * sol-thread.c: Update.
7449         * spu-linux-nat.c: Update.
7450         * target.c: Update.
7451         * top.c: Update.
7452         * tracefile-tfile.c: Update.
7453         * windows-nat.c: Update.
7454
7455 2018-07-03  Tom Tromey  <tom@tromey.com>
7456
7457         * common/ptid.h (ptid_build): Don't declare.
7458         * common/ptid.c (ptid_build): Remove.
7459         * aix-thread.c: Update.
7460         * bsd-kvm.c: Update.
7461         * bsd-uthread.c: Update.
7462         * common/agent.c: Update.
7463         * common/ptid.c: Update.
7464         * common/ptid.h: Update.
7465         * corelow.c: Update.
7466         * darwin-nat.c: Update.
7467         * fbsd-nat.c: Update.
7468         * gnu-nat.c: Update.
7469         * linux-fork.c: Update.
7470         * linux-nat.c: Update.
7471         * linux-thread-db.c: Update.
7472         * nat/linux-osdata.c: Update.
7473         * nat/linux-procfs.c: Update.
7474         * nto-procfs.c: Update.
7475         * obsd-nat.c: Update.
7476         * proc-service.c: Update.
7477         * procfs.c: Update.
7478         * ravenscar-thread.c: Update.
7479         * remote-sim.c: Update.
7480         * remote.c: Update.
7481         * sol-thread.c: Update.
7482         * target.c: Update.
7483         * windows-nat.c: Update.
7484
7485 2018-07-03  Tom Tromey  <tom@tromey.com>
7486
7487         * infrun.c (follow_exec): Use exit_inferior_silent.
7488         * inferior.c (exit_inferior_num_silent): Remove.
7489         * inferior.h (exit_inferior_num_silent): Don't declare.
7490
7491 2018-07-03  Tom Tromey  <tom@tromey.com>
7492
7493         PR cli/23340:
7494         * darwin-nat.c (darwin_attach_pid): Reset inferior and
7495         inferior_ptid on error.
7496
7497 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
7498             Simon Marchi  <simon.marchi@polymtl.ca>
7499
7500         PR tdep/8282
7501         * disasm.h (gdb_disassembler): Add
7502         `m_disassembler_options_holder'. member
7503         * disasm.c (get_all_disassembler_options): New function.
7504         (gdb_disassembler::gdb_disassembler): Use it.
7505         (gdb_buffered_insn_length_init_dis): Likewise.
7506         (gdb_buffered_insn_length): Adjust accordingly.
7507         (set_disassembler_options): Handle options with arguments.
7508         (show_disassembler_options_sfunc): Likewise.  Add a leading new
7509         line if showing options with descriptions.
7510         (disassembler_options_completer): Adapt to using the
7511         `disasm_options_and_args_t' structure.
7512         * mips-tdep.c (mips_disassembler_options): New variable.
7513         (mips_disassembler_options_o32): Likewise.
7514         (mips_disassembler_options_n32): Likewise.
7515         (mips_disassembler_options_n64): Likewise.
7516         (gdb_print_insn_mips): Don't set `disassembler_options'.
7517         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
7518         functions.
7519         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
7520         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
7521         `gdbarch_disassembler_options_implicit' and
7522         `gdbarch_valid_disassembler_options'.
7523         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
7524         `disasm_options_and_args_t' structure.
7525         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
7526         method.
7527         (valid_disassembler_options): Switch from `disasm_options_t' to
7528         the `disasm_options_and_args_t' structure.
7529         * NEWS: Document `set disassembler-options' support for the MIPS
7530         target.
7531         * gdbarch.h: Regenerate.
7532         * gdbarch.c: Regenerate.
7533
7534 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
7535
7536         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
7537
7538 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
7539
7540         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
7541         parameter in call to amd64_target_description.
7542         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
7543         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
7544         (amd64fbsd_init_abi): Likewise.
7545         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
7546         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
7547         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
7548         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
7549
7550 2018-06-29  Pedro Alves  <palves@redhat.com>
7551
7552         * gdb/amd64-tdep.h (amd64_create_target_description): Add
7553         "segments" parameter.
7554         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
7555         (_initialize_amd64_tdep): Update call to
7556         amd64_create_target_description.
7557         (amd64_target_description): Add "segments" parameter.  Adjust
7558         the implementation to use it.
7559         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
7560         call to amd64_create_target_description.
7561         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
7562         * gdb/arch/amd64.h (amd64_create_target_description): Add
7563         "segments" register.
7564         * gdb/arch/amd64.c (amd64_create_target_description): Add
7565         "segments" parameter.  Call create_feature_i386_64bit_segments
7566         only if SEGMENTS is true.
7567         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
7568         call to amd64_create_target_description.
7569
7570 2018-06-29  Pedro Alves  <palves@redhat.com>
7571
7572         * thread.c (thread_target_id_str): New, factored out from ...
7573         (print_thread_info_1): ... here.  Use it to compute the max
7574         "Target Id" column width.
7575
7576 2018-06-29  Pedro Alves  <palves@redhat.com>
7577
7578         * remote.c (remote_target::extra_thread_info): Delete
7579         'display_buf' and 'n' locals.  from the cache, regardless of
7580         packet mechanims is in use.  Use cache for qThreadExtra and qP
7581         methods too.
7582
7583 2018-06-29  Pedro Alves  <palves@redhat.com>
7584
7585         * blockframe.c (find_pc_sect_containing_function): New function.
7586         * breakpoint.c (print_breakpoint_location): Don't call
7587         find_pc_sect_function.
7588         * linespec.c (create_sals_line_offset): Record the location's
7589         symbol in the sal.
7590         * linespec.c (convert_address_location_to_sals): Fill in sal's
7591         symbol with find_pc_sect_containing_function.
7592         * symtab.c (find_function_start_sal): Rename to ...
7593         (find_function_start_sal_1): ... this.
7594         (find_function_start_sal): Reimplement as wrapper around
7595         find_function_start_sal_1, and use
7596         find_pc_sect_containing_function to fill in the sal's symbol.
7597         (find_function_start_sal(symbol*, bool)): Adjust.
7598         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
7599         comments.
7600         (find_pc_sect_containing_function): Declare.
7601
7602 2018-06-29  Pedro Alves  <palves@redhat.com>
7603
7604         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
7605         true if the the location has no symbol.
7606
7607 2018-06-28  Tom Tromey  <tom@tromey.com>
7608
7609         * NEWS: Mention --enable-codesign.
7610         * silent-rules.mk (ECHO_SIGN): New variable.
7611         * configure.ac: Add --enable-codesign.
7612         * configure: Rebuild.
7613         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
7614         (gdb$(EXEEXT)): Optionally invoke codesign.
7615
7616 2018-06-28  Pedro Alves  <palves@redhat.com>
7617
7618         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
7619         comments.
7620         (switch_to_thread_no_regs): Adjust comment.
7621         * infcmd.c (stop_pc): Delete.
7622         (post_create_inferior, info_program_command): Replace references
7623         to stop_pc with references to thread_info->suspend.stop_pc.
7624         * inferior.h (stop_pc): Delete declaration.
7625         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
7626         (handle_inferior_event_1, handle_signal_stop)
7627         (process_event_stop_test, keep_going_stepped_thread)
7628         (handle_step_into_function, handle_step_into_function_backward)
7629         (print_stop_location): Replace references to stop_pc with
7630         references to thread_info->suspend.stop_pc.
7631         (struct infcall_suspend_state) <stop_pc>: Delete field.
7632         (save_infcall_suspend_state, restore_infcall_suspend_state):
7633         Remove references to inf_stat->stop_pc.
7634         * linux-fork.c (fork_load_infrun_state): Likewise.
7635         * record-btrace.c (record_btrace_set_replay): Likewise.
7636         * record-full.c (record_full_goto_entry): Likewise.
7637         * remote.c (print_one_stopped_thread): Likewise.
7638         * target.c (target_resume): Extend comment.
7639         * thread.c (set_executing_thread): New.
7640         (set_executing): Use it.
7641         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
7642         Remove references to stop_pc.
7643
7644 2018-06-28  Pedro Alves  <palves@redhat.com>
7645
7646         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
7647         Moving fetching stop_pc until after ecs->event_thread is refreshed.
7648
7649 2018-06-28  Tom Tromey  <tom@tromey.com>
7650
7651         * coffread.c (coff_symfile_finish): Update.
7652         * xcoffread.c (xcoff_symfile_finish): Update.
7653         * elfread.c (elf_symfile_finish): Update.
7654         * symfile.h (dwarf2_free_objfile): Don't declare.
7655         * dwarf2read.c (_initialize_dwarf2_read): Use
7656         register_objfile_data_with_cleanup.
7657         (dwarf2_free_objfile): Now static.  Change signature.
7658
7659 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7660
7661         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
7662         option "-o" to add-symbol-file-load to add an offset to each
7663         section's load address.
7664         * symfile.c (set_objfile_default_section_offset): New function.
7665
7666 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7667
7668         * symfile.c (add_symbol_file_command): Make sure that sections
7669         with the same name are sorted in the same order.
7670
7671 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7672
7673         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
7674         require the second argument.  If omitted, load sections at the
7675         addresses specified in the file.
7676
7677 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7678
7679         * symfile.c (symbol_file_command, symbol_file_add_main_1)
7680         (_initialize_symfile): Add option "-o" to symbol-file to add an
7681         offset to each section of the symbol file.
7682
7683 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7684
7685         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
7686
7687 2018-06-27  Tom Tromey  <tom@tromey.com>
7688
7689         * stack.c (_initialize_stack): Update "func" help text.
7690
7691 2018-06-27  Tom Tromey  <tom@tromey.com>
7692
7693         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
7694         std::vector.
7695         (unwind_infopy_str, pyuw_create_unwind_info)
7696         (unwind_infopy_add_saved_register, pyuw_sniffer)
7697         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
7698         Update.
7699         (struct saved_reg): Add constructor.
7700         <value>: Now a gdbpy_ref<>.
7701
7702 2018-06-27  Tom Tromey  <tom@tromey.com>
7703
7704         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
7705
7706 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7707
7708         * gdb-gdb.py.in: Format using autopep8.
7709
7710 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7711
7712         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
7713         (type_lookup_function): Recognize CORE_ADDR values.
7714
7715 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7716
7717         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
7718         print tag_name.
7719
7720 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7721
7722         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
7723         <__lt__>: Add.
7724
7725 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7726
7727         * gdb-gdb.py: Move to...
7728         * gdb-gdb.py.in: ... here.
7729         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
7730         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
7731         dependencies.
7732         (distclean): Remove gdb-gdb.py when cleaning.
7733         (gdb-gdb.py, gdb-gdb.gdb): New rules.
7734         * configure: Re-generate.
7735
7736 2018-06-27  Pedro Alves  <palves@redhat.com>
7737
7738         * proc-service.c (get_ps_regcache): New.
7739         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
7740         (ps_lsetfpregs): Use it.
7741
7742 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
7743
7744         PR gdb/21695
7745         * dwarf2read.c (lnp_state_machine::check_line_address): Update
7746         declaration.
7747         (dwarf_decode_lines_1): Adjust.
7748
7749 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7750
7751         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
7752         override.
7753         <info_proc>: Likewise.
7754
7755 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
7756
7757         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
7758         to windows_fetch_one_register, and only handle the case of
7759         fetching one register.  Move the code that reloads the context
7760         and iterates over all registers if R is negative to...
7761         (windows_nat_target::fetch_registers): ... here.
7762         (do_windows_store_inferior_registers): Rename to
7763         windows_store_one_register, and only handle the case of storing
7764         one register.  Move the code that handles the case where r is
7765         negative to...
7766         (windows_nat_target::store_registers) ... here.
7767
7768 2018-06-26  Tom Tromey  <tom@tromey.com>
7769
7770         PR rust/22574:
7771         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
7772         * rust-lang.c (rust_print_struct_def): Add podata parameter.
7773         Update.
7774         (rust_internal_print_type): Add podata parameter.
7775         (rust_print_type): Update.
7776
7777 2018-06-26  Tom Tromey  <tom@tromey.com>
7778
7779         * typeprint.h (struct print_offset_data) <update, finish,
7780         maybe_print_hole>: New methods.
7781         <indentation>: New constant.
7782         * typeprint.c (print_offset_data::indentation): Define.
7783         (print_offset_data::maybe_print_hole, print_offset_data::update)
7784         (print_offset_data::finish): Move from c-typeprint.c and rename.
7785         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
7786         (print_spaces_filtered_with_print_options): Update.
7787         (c_print_type_union_field_offset, maybe_print_hole)
7788         (c_print_type_struct_field_offset): Move to typeprint.c and
7789         rename.
7790         (c_type_print_base_struct_union): Update.
7791
7792 2018-06-25  Pedro Alves  <palves@redhat.com>
7793
7794         * gdbthread.h (thread_info_ref, delete_thread)
7795         (delete_thread_silent, first_thread_of_inferior)
7796         (any_thread_of_inferior, switch_to_thread)
7797         (enable_thread_stack_temporaries)
7798         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7799         (get_last_thread_stack_temporary)
7800         (value_in_thread_stack_temporaries, can_access_registers_thread):
7801         Spell out "struct thread_info" instead of just "thread_info".
7802         * inferior.h (notice_new_inferior): Likewise.
7803
7804 2018-06-25  Pedro Alves  <palves@redhat.com>
7805
7806         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7807         pass thread_info pointer to delete_thread.
7808         (windows_nat_target::detach): Pass inferior pointer to
7809         detach_inferior.
7810         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
7811         delete_thread.
7812         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
7813         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
7814         and pass a thread_info pointer to delete_thread.
7815         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
7816         pass thread_info pointer to delete_thread.
7817         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
7818         delete_thread_silent call.
7819         * procfs.c (procfs_target::detach): Pass inferior pointer to
7820         detach_inferior.
7821         (procfs_target::wait): Pass thread_info pointer to delete_thread.
7822         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
7823         delete_thread_silent call.
7824         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7825         pass thread_info pointer to delete_thread.
7826         (windows_nat_target::detach): Pass inferior pointer to
7827         delete_inferior.
7828
7829 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7830
7831         * regcache.c (readable_regcache::read_part): Fix asserts.
7832         (reg_buffer::raw_collect_part): New function.
7833         (regcache::write_part): Fix asserts.
7834         (reg_buffer::raw_supply_part): New function.
7835         (regcache::transfer_regset_register): New helper function.
7836         (regcache::transfer_regset): Call new functions.
7837         (regcache_supply_regset): Use gdb_byte*.
7838         (regcache::supply_regset): Likewise.
7839         (regcache_collect_regset): Likewise.
7840         (regcache::collect_regset): Likewise.
7841         * regcache.h (reg_buffer::raw_collect_part): New declaration.
7842         (reg_buffer::raw_supply_part): Likewise.
7843         (regcache::transfer_regset_register): Likewise.
7844         (regcache::transfer_regset): Use gdb_byte*.
7845
7846 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7847
7848         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
7849
7850 2018-06-21  Pedro Alves  <palves@redhat.com>
7851
7852         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
7853         instead of a ptid_t.  All callers adjusted.
7854         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
7855         adjusted.
7856         (print_ada_task_info, display_current_task_id, task_command_1):
7857         Adjust.
7858         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
7859         inferior_thread.
7860         (breakpoint_kind): Adjust.
7861         (remove_breakpoints_pid): Rename to ...
7862         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
7863         pointer.  All callers adjusted.
7864         (bpstat_clear_actions): Use inferior_thread.
7865         (get_bpstat_thread): New.
7866         (bpstat_do_actions): Use it.
7867         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
7868         to take a thread_info pointer.  All callers adjusted.
7869         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
7870         (breakpoint_re_set_thread): Use inferior_thread.
7871         * breakpoint.h (struct inferior): Forward declare.
7872         (bpstat_stop_status): Update.
7873         (remove_breakpoints_pid): Delete.
7874         (remove_breakpoints_inf): New.
7875         * bsd-uthread.c (bsd_uthread_target::wait)
7876         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
7877         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
7878         (maint_btrace_packet_history_cmd)
7879         (maint_btrace_clear_packet_history_cmd): Adjust.
7880         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
7881         inferior_thread.
7882         * cli/cli-interp.c: Include "inferior.h".
7883         * common/refcounted-object.h (struct
7884         refcounted_object_ref_policy): New.
7885         * compile/compile-object-load.c: Include gdbthread.h.
7886         (store_regs): Use inferior_thread.
7887         * corelow.c (core_target::close): Use current_inferior.
7888         (core_target_open): Adjust to use first_thread_of_inferior and use
7889         the current inferior.
7890         * ctf.c (ctf_target::close): Adjust to use current_inferior.
7891         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
7892         <thread>: ... this new field.  All references adjusted.
7893         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
7894         Take a thread_info pointer instead of a ptid_t.
7895         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
7896         (dummy_frame_discard, register_dummy_frame_dtor): Take a
7897         thread_info pointer instead of a ptid_t.
7898         * elfread.c: Include "inferior.h".
7899         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
7900         Use inferior_thread.
7901         * eval.c (evaluate_subexp): Likewise.
7902         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
7903         inferior_thread.
7904         * gdb_proc_service.h (struct thread_info): Forward declare.
7905         (struct ps_prochandle) <ptid>: Delete, replaced by ...
7906         <thread>: ... this new field.  All references adjusted.
7907         * gdbarch.h, gdbarch.c: Regenerate.
7908         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
7909         'thread' parameter.  All implementations and callers adjusted.
7910         * gdbthread.h (thread_info) <set_running>: New method.
7911         (delete_thread, delete_thread_silent): Take a thread_info pointer
7912         instead of a ptid.
7913         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
7914         (first_thread_of_process): Delete, replaced by ...
7915         (first_thread_of_inferior): ... this new function.  All callers
7916         adjusted.
7917         (any_live_thread_of_process): Delete, replaced by ...
7918         (any_live_thread_of_inferior): ... this new function.  All callers
7919         adjusted.
7920         (switch_to_thread, switch_to_no_thread): Declare.
7921         (is_executing): Delete.
7922         (enable_thread_stack_temporaries): Update comment.
7923         <enable_thread_stack_temporaries>: Take a thread_info pointer
7924         instead of a ptid_t.  Incref the thread.
7925         <~enable_thread_stack_temporaries>: Decref the thread.
7926         <m_ptid>: Delete
7927         <m_thr>: New.
7928         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7929         (get_last_thread_stack_temporary)
7930         (value_in_thread_stack_temporaries, can_access_registers_thread):
7931         Take a thread_info pointer instead of a ptid_t.  All callers
7932         adjusted.
7933         * infcall.c (get_call_return_value): Use inferior_thread.
7934         (run_inferior_call): Work with thread pointers instead of ptid_t.
7935         (call_function_by_hand_dummy): Work with thread pointers instead
7936         of ptid_t.  Use thread_info_ref.
7937         * infcmd.c (proceed_thread_callback): Access thread's state
7938         directly.
7939         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
7940         access thread's state directly.
7941         (continue_command): Use inferior_thread.
7942         (info_program_command): Use find_thread_ptid and access thread
7943         state directly.
7944         (proceed_after_attach_callback): Use thread state directly.
7945         (notice_new_inferior): Take a thread_info pointer instead of a
7946         ptid_t.  All callers adjusted.
7947         (exit_inferior): Take an inferior pointer instead of a pid.  All
7948         callers adjusted.
7949         (exit_inferior_silent): New.
7950         (detach_inferior): Delete.
7951         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
7952         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
7953         (detach_inferior_command, kill_inferior_command): Use
7954         find_inferior_id instead of valid_gdb_inferior_id and
7955         gdb_inferior_id_to_pid.
7956         (inferior_command): Use inferior and thread pointers.
7957         * inferior.h (struct thread_info): Forward declare.
7958         (notice_new_inferior): Take a thread_info pointer instead of a
7959         ptid_t.  All callers adjusted.
7960         (detach_inferior): Delete declaration.
7961         (exit_inferior, exit_inferior_silent): Take an inferior pointer
7962         instead of a pid.  All callers adjusted.
7963         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
7964         (valid_gdb_inferior_id): Delete.
7965         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
7966         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
7967         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
7968         ...
7969         <inf>: ... this new field.
7970         <step_ptid>: Delete, replaced by ...
7971         <step_thread>: ... this new field.
7972         (get_displaced_stepping_state): Take an inferior pointer instead
7973         of a pid.  All callers adjusted.
7974         (displaced_step_in_progress_any_inferior): Adjust.
7975         (displaced_step_in_progress_thread): Take a thread pointer instead
7976         of a ptid_t.  All callers adjusted.
7977         (displaced_step_in_progress, add_displaced_stepping_state): Take
7978         an inferior pointer instead of a pid.  All callers adjusted.
7979         (get_displaced_step_closure_by_addr): Adjust.
7980         (remove_displaced_stepping_state): Take an inferior pointer
7981         instead of a pid.  All callers adjusted.
7982         (displaced_step_prepare_throw, displaced_step_prepare)
7983         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
7984         All callers adjusted.
7985         (start_step_over): Adjust.
7986         (infrun_thread_ptid_changed): Remove bit updating ptids in the
7987         displaced step queue.
7988         (do_target_resume): Adjust.
7989         (fetch_inferior_event): Use inferior_thread.
7990         (context_switch, get_inferior_stop_soon): Take an
7991         execution_control_state pointer instead of a ptid_t.  All callers
7992         adjusted.
7993         (switch_to_thread_cleanup): Delete.
7994         (stop_all_threads): Use scoped_restore_current_thread.
7995         * inline-frame.c: Include "gdbthread.h".
7996         (inline_state) <inline_state>: Take a thread pointer instead of a
7997         ptid_t.  All callers adjusted.
7998         <ptid>: Delete, replaced by ...
7999         <thread>: ... this new field.
8000         (find_inline_frame_state): Take a thread pointer instead of a
8001         ptid_t.  All callers adjusted.
8002         (skip_inline_frames, step_into_inline_frame)
8003         (inline_skipped_frames, inline_skipped_symbol): Take a thread
8004         pointer instead of a ptid_t.  All callers adjusted.
8005         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
8006         (inline_skipped_frames, inline_skipped_symbol): Likewise.
8007         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
8008         pointers directly.
8009         * linux-nat.c (get_detach_signal): Likewise.
8010         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
8011         (thread_db_notice_clone): Adjust.
8012         (thread_db_find_new_threads_silently)
8013         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
8014         a thread pointer instead of a ptid_t.  All callers adjusted.
8015         * mi/mi-cmd-var.c: Include "inferior.h".
8016         (mi_cmd_var_update_iter): Update to use thread pointers.
8017         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
8018         inferior directly.
8019         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
8020         out to ...
8021         (mi_output_running): ... this new function.
8022         (mi_on_resume_1): Adjust to use it.
8023         (mi_user_selected_context_changed): Adjust to use inferior_thread.
8024         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
8025         directly.
8026         (interrupt_thread_callback): : Adjust to use thread and inferior
8027         pointers.
8028         * proc-service.c: Include "gdbthread.h".
8029         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
8030         * progspace-and-thread.c: Include "inferior.h".
8031         * progspace.c: Include "inferior.h".
8032         * python/py-exitedevent.c (create_exited_event_object): Adjust to
8033         hold a reference to an inferior_object.
8034         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
8035         inferior_thread.
8036         * python/py-inferior.c (struct inferior_object): Give the type a
8037         tag name instead of a typedef.
8038         (python_on_normal_stop): No need to check if the current thread is
8039         listed.
8040         (inferior_to_inferior_object): Change return type to
8041         inferior_object.  All callers adjusted.
8042         (find_thread_object): Delete, bits factored out to ...
8043         (thread_to_thread_object): ... this new function.
8044         * python/py-infthread.c (create_thread_object): Use
8045         inferior_to_inferior_object.
8046         (thpy_is_stopped): Use thread pointer directly.
8047         (gdbpy_selected_thread): Use inferior_thread.
8048         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
8049         field, replaced with ...
8050         <thread>: ... this new field.  All users adjusted.
8051         (btpy_insn_or_gap_new): Drop const.
8052         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
8053         callers adjusted.
8054         * python/py-record.c: Include "gdbthread.h".
8055         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
8056         a ptid_t.  All callers adjusted.
8057         (gdbpy_current_recording): Use inferior_thread.
8058         * python/py-record.h (recpy_record_object) <ptid>: Delete
8059         field, replaced with ...
8060         <thread>: ... this new field.  All users adjusted.
8061         (recpy_element_object) <ptid>: Delete
8062         field, replaced with ...
8063         <thread>: ... this new field.  All users adjusted.
8064         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
8065         a ptid_t.  All callers adjusted.
8066         * python/py-threadevent.c: Include "gdbthread.h".
8067         (get_event_thread): Use thread_to_thread_object.
8068         * python/python-internal.h (struct inferior_object): Forward
8069         declare.
8070         (find_thread_object, find_inferior_object): Delete declarations.
8071         (thread_to_thread_object, inferior_to_inferior_object): New
8072         declarations.
8073         * record-btrace.c: Include "inferior.h".
8074         (require_btrace_thread): Use inferior_thread.
8075         (record_btrace_frame_sniffer)
8076         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
8077         (get_thread_current_frame): Use scoped_restore_current_thread and
8078         switch_to_thread.
8079         (get_thread_current_frame): Use thread pointer directly.
8080         (record_btrace_replay_at_breakpoint): Use thread's inferior
8081         pointer directly.
8082         * record-full.c: Include "inferior.h".
8083         * regcache.c: Include "gdbthread.h".
8084         (get_thread_arch_regcache): Use the inferior's address space
8085         directly.
8086         (get_thread_regcache, registers_changed_thread): New.
8087         * regcache.h (get_thread_regcache(thread_info *thread)): New
8088         overload.
8089         (registers_changed_thread): New.
8090         (remote_target) <remote_detach_1>: Swap order of parameters.
8091         (remote_add_thread): <remote_add_thread>: Return the new thread.
8092         (get_remote_thread_info(ptid_t)): New overload.
8093         (remote_target::remote_notice_new_inferior): Use thread pointers
8094         directly.
8095         (remote_target::process_initial_stop_replies): Use
8096         thread_info::set_running.
8097         (remote_target::remote_detach_1, remote_target::detach)
8098         (extended_remote_target::detach): Adjust.
8099         * stack.c (frame_show_address): Use inferior_thread.
8100         * target-debug.h (target_debug_print_thread_info_pp): New.
8101         * target-delegates.c: Regenerate.
8102         * target.c (default_thread_address_space): Delete.
8103         (memory_xfer_partial_1): Use current_inferior.
8104         (target_detach): Use current_inferior.
8105         (target_thread_address_space): Delete.
8106         (generic_mourn_inferior): Use current_inferior.
8107         * target.h (struct target_ops) <thread_address_space>: Delete.
8108         (target_thread_address_space): Delete.
8109         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
8110         pointers directly.
8111         (delete_thread_1, delete_thread, delete_thread_silent): Take a
8112         thread pointer instead of a ptid_t.  Adjust all callers.
8113         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
8114         (first_thread_of_process): Delete, replaced by ...
8115         (first_thread_of_inferior): ... this new function.  All callers
8116         adjusted.
8117         (any_thread_of_process): Rename to ...
8118         (any_thread_of_inferior): ... this, and take an inferior pointer.
8119         (any_live_thread_of_process): Rename to ...
8120         (any_live_thread_of_inferior): ... this, and take an inferior
8121         pointer.
8122         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
8123         (value_in_thread_stack_temporaries)
8124         (get_last_thread_stack_temporary): Take a thread pointer instead
8125         of a ptid_t.  Adjust all callers.
8126         (thread_info::set_running): New.
8127         (validate_registers_access): Use inferior_thread.
8128         (can_access_registers_ptid): Rename to ...
8129         (can_access_registers_thread): ... this, and take a thread
8130         pointer.
8131         (print_thread_info_1): Adjust to compare thread pointers instead
8132         of ptids.
8133         (switch_to_no_thread, switch_to_thread): Make extern.
8134         (scoped_restore_current_thread::~scoped_restore_current_thread):
8135         Use m_thread pointer directly.
8136         (scoped_restore_current_thread::scoped_restore_current_thread):
8137         Use inferior_thread.
8138         (thread_command): Use thread pointer directly.
8139         (thread_num_make_value_helper): Use inferior_thread.
8140         * top.c (execute_command): Use inferior_thread.
8141         * tui/tui-interp.c: Include "inferior.h".
8142         * varobj.c (varobj_create): Use inferior_thread.
8143         (value_of_root_1): Use find_thread_global_id instead of
8144         global_thread_id_to_ptid.
8145
8146 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
8147
8148         * regcache.c (readable_regcache::read_part): Avoid memcpy when
8149         possible.
8150         (regcache::write_part): Likewise.
8151         (readable_regcache::cooked_read_part): Update comment.
8152         (readable_regcache::cooked_write_part): Likewise.
8153         * regcache.h: (readable_regcache::read_part): Likewise.
8154         (regcache::write_part): Likewise.
8155
8156 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
8157             Dirk Schubert  <dirk.schubert@arm.com>
8158
8159         * aarch64-linux-nat.c (post_attach): New.
8160         (aarch64_linux_nat_target::post_attach): Override post_attach to
8161         record the number of hardware debug registers.
8162
8163 2018-06-20  Tom Tromey  <tom@tromey.com>
8164
8165         * python/py-param.c (add_setshow_generic): Make parameters const.
8166         (parmpy_init): Update.
8167
8168 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
8169
8170         * regcache.h (regcache_cooked_read_ftype): Rename to...
8171         (register_read_ftype): ...this, change type to function_view.
8172         (class reg_buffer) <save>: Remove src parameter.
8173         (readonly_detached_regcache) <readonly_detached_regcache>: Make
8174         parameter non-const in first overload.  Remove src parameter in
8175         second overload.
8176         * regcache.c (do_cooked_read): Remove.
8177         (readonly_detached_regcache::readonly_detached_regcache): Make
8178         parameter non-const, adjust call to other constructor.
8179         (reg_buffer::save): Remove src parameter.
8180         * frame.c (do_frame_register_read): Remove.
8181         (frame_save_as_regcache): Use lambda function.
8182         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
8183         parameter to ppu2spu_data *.
8184         (ppu2spu_sniffer): Use lambda function.
8185
8186 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
8187
8188         * record-full.c (record_full_target::insert_breakpoint): Remove
8189         "struct" keyword, add const.
8190
8191 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
8192
8193         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
8194         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
8195         * configure.ac: Remove AC_PREREQ, add missing quoting.
8196         * gnulib/configure.ac: Modernize usage of
8197         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
8198         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
8199         (AUTOMAKE_VERSION): Bump to 1.15.1.
8200         * configure: Re-generate.
8201         * config.in: Re-generate.
8202         * aclocal.m4: Re-generate.
8203         * gnulib/aclocal.m4: Re-generate.
8204         * gnulib/config.in: Re-generate.
8205         * gnulib/configure: Re-generate.
8206         * gnulib/import/Makefile.in: Re-generate.
8207
8208 2018-06-19  Pedro Alves  <palves@redhat.com>
8209
8210         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
8211         (lookup_minimal_symbol_by_pc_section): ... here with
8212         gdb_assert_not_reached added.
8213
8214 2018-06-19  Pedro Alves  <palves@redhat.com>
8215
8216         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
8217         parameter with a block parameter.  Compare location's block symbol
8218         with the frame's block instead of addresses.
8219         (skip_inline_frames): Pass the current block instead of the
8220         frame's address.  Break out as soon as we determine the frame
8221         should not be skipped.
8222
8223 2018-06-18  Tom Tromey  <tom@tromey.com>
8224
8225         * solib-aix.c (solib_aix_get_section_offsets): Return
8226         unique_xmalloc_ptr.
8227         (solib_aix_solib_create_inferior_hook): Update.
8228
8229 2018-06-18  Tom Tromey  <tom@tromey.com>
8230
8231         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
8232
8233 2018-06-18  Tom Tromey  <tom@tromey.com>
8234
8235         * solib-frv.c (frv_relocate_main_executable): Use
8236         unique_xmalloc_ptr.
8237         * solib-dsbt.c (dsbt_relocate_main_executable): Use
8238         unique_xmalloc_ptr.
8239
8240 2018-06-18  Tom Tromey  <tom@tromey.com>
8241
8242         * objfiles.h (inhibit_section_map_updates): Update.
8243         (resume_section_map_updates, resume_section_map_updates_cleanup):
8244         Remove.
8245         * solib-svr4.c (svr4_handle_solib_event): Update.
8246         * objfiles.c (inhibit_section_map_updates): Return
8247         scoped_restore_tmpl<int>.
8248         (resume_section_map_updates, resume_section_map_updates_cleanup):
8249         Remove.
8250
8251 2018-06-18  Tom Tromey  <tom@tromey.com>
8252
8253         * valprint.h (read_string): Update.
8254         * valprint.c (read_string): Change type of "buffer".
8255         (val_print_string): Update.
8256         * python/py-value.c (valpy_string): Update.
8257         * language.h (struct language_defn) <la_get_string>: Change
8258         type of "buffer".
8259         (default_get_string, c_get_string): Update.
8260         * language.c (default_get_string): Change type of "buffer".
8261         * guile/scm-value.c (gdbscm_value_to_string): Update.
8262         * c-lang.c (c_get_string): Change type of "buffer".
8263
8264 2018-06-18  Tom Tromey  <tom@tromey.com>
8265
8266         * ser-mingw.c (struct pipe_state_destroyer): New.
8267         (pipe_state_up): New typedef.
8268         (cleanup_pipe_state): Remove.
8269         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
8270
8271 2018-06-18  Tom Tromey  <tom@tromey.com>
8272
8273         * rust-lang.h (rust_yyerror): Don't declare.
8274         * rust-lang.c (rust_language_defn): Update.
8275         * rust-exp.y (yyerror): Now static.
8276         * parse.c (parse_exp_in_context_1): Update.
8277         * p-lang.h (p_yyerror): Don't declare.
8278         * p-lang.c (p_language_defn): Update.
8279         * p-exp.y (yyerror): Now static.
8280         * opencl-lang.c (opencl_language_defn): Update.
8281         * objc-lang.c (objc_language_defn): Update.
8282         * m2-lang.h (m2_yyerror): Don't declare.
8283         * m2-lang.c (m2_language_defn): Update.
8284         * m2-exp.y (yyerror): Now static.
8285         * language.h (struct language_defn) <la_error>: Remove.
8286         * language.c (unk_lang_error): Remove.
8287         (unknown_language_defn, auto_language_defn): Remove.
8288         * go-lang.h (go_yyerror): Don't declare.
8289         * go-lang.c (go_language_defn): Update.
8290         * go-exp.y (yyerror): Now static.
8291         * f-lang.h (f_yyerror): Don't declare.
8292         * f-lang.c (f_language_defn): Update.
8293         * f-exp.y (yyerror): Now static.
8294         * d-lang.h (d_yyerror): Don't declare.
8295         * d-lang.c (d_language_defn): Update.
8296         * d-exp.y (yyerror): Now static.
8297         * c-lang.h (c_yyerror): Don't declare.
8298         * c-lang.c (c_language_defn, cplus_language_defn)
8299         (asm_language_defn, minimal_language_defn): Update.
8300         * c-exp.y (yyerror): Now static.
8301         * ada-lang.h (ada_yyerror): Don't declare.
8302         * ada-lang.c (ada_language_defn): Update.
8303         * ada-exp.y (yyerror): Now static.
8304
8305 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
8306
8307         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
8308         (store_sveregs_to_thread): Likewise.
8309         (aarch64_linux_fetch_inferior_registers): Check for SVE.
8310         (aarch64_linux_store_inferior_registers): Likewise.
8311         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
8312         function.
8313         (aarch64_sve_regs_copy_to_regcache): Likewise.
8314         (aarch64_sve_regs_copy_from_regcache): Likewise.
8315         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
8316         declaration.
8317         (aarch64_sve_regs_copy_to_regcache): Likewise.
8318         (aarch64_sve_regs_copy_from_regcache): Likewise.
8319         (sve_context): Structure from Linux headers.
8320         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
8321         (SVE_SIG_ZREG_SIZE): Likewise.
8322         (SVE_SIG_PREG_SIZE): Likewise.
8323         (SVE_SIG_FFR_SIZE): Likewise.
8324         (SVE_SIG_REGS_OFFSET): Likewise.
8325         (SVE_SIG_ZREGS_OFFSET): Likewise.
8326         (SVE_SIG_ZREG_OFFSET): Likewise.
8327         (SVE_SIG_ZREGS_SIZE): Likewise.
8328         (SVE_SIG_PREGS_OFFSET): Likewise.
8329         (SVE_SIG_PREG_OFFSET): Likewise.
8330         (SVE_SIG_PREGS_SIZE): Likewise.
8331         (SVE_SIG_FFR_OFFSET): Likewise.
8332         (SVE_SIG_REGS_SIZE): Likewise.
8333         (SVE_SIG_CONTEXT_SIZE): Likewise.
8334         (SVE_PT_REGS_MASK): Likewise.
8335         (SVE_PT_REGS_FPSIMD): Likewise.
8336         (SVE_PT_REGS_SVE): Likewise.
8337         (SVE_PT_VL_INHERIT): Likewise.
8338         (SVE_PT_VL_ONEXEC): Likewise.
8339         (SVE_PT_REGS_OFFSET): Likewise.
8340         (SVE_PT_FPSIMD_OFFSET): Likewise.
8341         (SVE_PT_FPSIMD_SIZE): Likewise.
8342         (SVE_PT_SVE_ZREG_SIZE): Likewise.
8343         (SVE_PT_SVE_PREG_SIZE): Likewise.
8344         (SVE_PT_SVE_FFR_SIZE): Likewise.
8345         (SVE_PT_SVE_FPSR_SIZE): Likewise.
8346         (SVE_PT_SVE_FPCR_SIZE): Likewise.
8347         (__SVE_SIG_TO_PT): Likewise.
8348         (SVE_PT_SVE_OFFSET): Likewise.
8349         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
8350         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
8351         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
8352         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
8353         (SVE_PT_SVE_PREG_OFFSET): Likewise.
8354         (SVE_PT_SVE_PREGS_SIZE): Likewise.
8355         (SVE_PT_SVE_FFR_OFFSET): Likewise.
8356         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
8357         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
8358         (SVE_PT_SVE_SIZE): Likewise.
8359         (SVE_PT_SIZE): Likewise.
8360         (HAS_SVE_STATE): New define.
8361
8362 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
8363
8364         * nat/aarch64-sve-linux-sigcontext.h: New file.
8365         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
8366         new files.
8367         (SVE_VQ_MIN): Likewise.
8368         (SVE_VQ_MAX): Likewise.
8369         (SVE_VL_MIN): Likewise.
8370         (SVE_VL_MAX): Likewise.
8371         (SVE_NUM_ZREGS): Likewise.
8372         (SVE_NUM_PREGS): Likewise.
8373         (sve_vl_valid): Likewise.
8374         (struct user_sve_header): Likewise.
8375
8376 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
8377             Richard Bunt <Richard.Bunt@arm.com>
8378
8379         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
8380         was requested by GDB.
8381
8382 2018-06-15  Tom de Vries  <tdevries@suse.de>
8383
8384         * MAINTAINERS (Write After Approval): Add Tom de Vries.
8385
8386 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
8387
8388         * gnulib/update-gnulib.sh: Print expected versions of
8389         autoconf/aclocal.
8390
8391 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
8392
8393         * arch-utils.c (default_type_align): Use type_length_units.
8394         * gdbtypes.c (type_align): Use type_length_units.
8395
8396 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8397
8398         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
8399         of 'define' command.
8400
8401 2018-06-14  Tom de Vries  <tdevries@suse.de>
8402
8403         PR cli/22573
8404         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
8405         get_no_prettyformat_print_options.
8406
8407 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
8408
8409         * sparc-nat.h: Include target.h.
8410         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
8411         <fetch_registers>: Remove this argument in function call.
8412         <store_registers>: Remove this argument in function call, remove
8413         extra semicolon.
8414         <low_forget_process>: Call sparc64_forget_process instead of
8415         sparc_forget_process.
8416
8417 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
8418
8419         * procfs.c (_initialize_procfs): Use add_inf_child_target.
8420         (procfs_target::make_corefile_notes): Adjust to new
8421         target_read_alloc return type.
8422
8423 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8424             Stephen Roberts  <stephen.roberts@arm.com>
8425
8426         PR gdb/22882
8427         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
8428         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
8429         Move should_notify_stop local into more inner scope.
8430
8431 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8432             Stephen Roberts  <stephen.roberts@arm.com>
8433
8434         PR gdb/22882
8435         * infrun.c (resume_1): Add call to mark_async_event_handler.
8436
8437 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8438
8439         * infrun.c (do_target_wait): Change old version of $pc printed.
8440
8441 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
8442
8443         * dwarf2read.c (read_index_from_section): Rename to...
8444         (read_gdb_index_from_section): ... this, update all callers.
8445         (dwarf2_read_index): Rename to...
8446         (dwarf2_read_gdb_index): ... this, update all callers.
8447
8448 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
8449
8450         * hppa-linux-nat.c
8451         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
8452         hppa_linux_nat_target::fetch_registers.
8453
8454 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8455
8456         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
8457         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
8458         (AARCH64_DWARF_SVE_FFR): Likewise.
8459         (AARCH64_DWARF_SVE_P0): Likewise.
8460         (AARCH64_DWARF_SVE_Z0): Likewise.
8461
8462 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8463
8464         * common/common-regcache.h (raw_compare): New function.
8465         * regcache.c (regcache::raw_compare): Likewise.
8466         * regcache.h (regcache::raw_compare): New declaration.
8467
8468 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8469
8470         * common/common-regcache.h (reg_buffer_common): New structure.
8471         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
8472         (reg_buffer::raw_supply): Likewise.
8473         (reg_buffer::raw_supply_integer): Likewise.
8474         (reg_buffer::raw_supply_zeroed): Likewise.
8475         (reg_buffer::raw_collect): Likewise.
8476         (reg_buffer::raw_collect_integer): Likewise.
8477         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
8478         (reg_buffer::raw_supply): Likewise.
8479         (reg_buffer::raw_supply_integer): Likewise.
8480         (reg_buffer::raw_supply_zeroed): Likewise.
8481         (reg_buffer::raw_collect): Likewise.
8482         (reg_buffer::raw_collect_integer): Likewise.
8483
8484 2018-06-10  Tom Tromey  <tom@tromey.com>
8485
8486         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
8487         (class remote_state) <stop_reply_queue>: Now std::vector.
8488         (remote_state::~remote_state)
8489         (remote_target::stop_reply_queue_length): Update.
8490         (struct queue_iter_param, remove_child_of_pending_fork)
8491         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
8492         (check_pending_event_prevents_wildcard_vcont_callback)
8493         (remove_stop_reply_for_inferior)
8494         (remove_stop_reply_of_remote_state)
8495         (remote_notif_remove_once_on_match)
8496         (stop_reply_match_ptid_and_ws)
8497         (remote_kill_child_of_pending_fork): Remove.
8498         (remote_target::remove_new_fork_children)
8499         (remote_target::check_pending_events_prevent_wildcard_vcont)
8500         (remote_target::discard_pending_stop_replies)
8501         (remote_target::discard_pending_stop_replies_in_queue)
8502         (remote_target::remote_notif_remove_queued_reply)
8503         (remote_target::queued_stop_reply)
8504         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
8505         (remote_target::wait, remote_target::kill_new_fork_children)
8506         (remote_target::async): Update.
8507
8508 2018-06-10  Tom Tromey  <tom@tromey.com>
8509
8510         * record-full.c (record_full_arch_list_cleanups): Remove.
8511         (record_full_message): Use try/catch.
8512         (record_full_wait_cleanups): Remove.
8513         (record_full_wait_1): Use try/catch.
8514         (record_full_restore): Likewise.
8515
8516 2018-06-10  Tom Tromey  <tom@tromey.com>
8517
8518         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
8519         declare VEC.  Add constructor.
8520         <in_target_beneath>: Now bool.
8521         (record_full_breakpoints): Now a std::vector, static.
8522         (record_full_sync_record_breakpoints)
8523         (record_full_init_record_breakpoints)
8524         (record_full_target::insert_breakpoint)
8525         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
8526
8527 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
8528
8529         * dwarf2read.c (process_cu_includes): Remove struct keyword.
8530         * serial.c (serial_interface_lookup): Remove struct keyword.
8531
8532 2018-06-10  Tom Tromey  <tom@tromey.com>
8533
8534         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
8535         method.
8536         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
8537         a method.
8538         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
8539         method.
8540         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
8541         "beneath" as a method.
8542         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
8543         Use "beneath" as a method.
8544
8545 2018-06-10  Tom Tromey  <tom@tromey.com>
8546
8547         * tracefile.c (struct trace_file_writer_deleter): New.
8548         <operator()>: Rename from trace_file_writer_xfree.
8549         (trace_file_writer_up): New typedef.
8550         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
8551
8552 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8553
8554         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
8555         <m_registers, m_register_status>: Change type to
8556         std::unique_ptr.
8557         * regcache.c (reg_buffer::reg_buffer): Use new instead of
8558         XCNEWVEC.
8559
8560 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8561
8562         * common/common-regcache.h (enum register_status): Add
8563         underlying type "signed char".
8564         * regcache.h (reg_buffer) <m_register_status>: Change type to
8565         register_status *.
8566         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
8567         register_status instead of signed char.
8568         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
8569         (reg_buffer::get_register_status): Remove cast.
8570         (readable_regcache::raw_read): Remove cast.
8571         (readable_regcache::cooked_read): Remove cast.
8572
8573 2018-06-09  Tom Tromey  <tom@tromey.com>
8574
8575         * source.c (reverse_search_command, forward_search_command): Use
8576         scoped_fd.
8577
8578 2018-06-09  Tom Tromey  <tom@tromey.com>
8579
8580         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
8581         (serial_ops_list): Now static, std::vector.
8582         (serial_interface_lookup, serial_add_interface): Update.
8583
8584 2018-06-09  Tom Tromey  <tom@tromey.com>
8585
8586         * dwarf2read.c (process_cu_includes): Update.
8587         (process_full_comp_unit): Update.
8588         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
8589         std::vector.
8590
8591 2018-06-08  Paul Koning  <paul_koning@dell.com>
8592
8593         PR gdb/23252
8594
8595         * python/python.c (do_start_initialization):
8596         Avoid call to internal Python API.
8597         (init__gdb_module): New function.
8598
8599 2018-06-08  Gary Benson <gbenson@redhat.com>
8600
8601         * linux-thread-db.c (valprint.h): New include.
8602         (struct check_thread_db_info): New structure.
8603         (check_thread_db_on_load, tdb_testinfo): New static globals.
8604         (check_thread_db, check_thread_db_callback): New functions.
8605         (try_thread_db_load_1): Run integrity checks if requested.
8606         (maintenance_check_libthread_db): New function.
8607         (_initialize_thread_db): Register "maint check libthread-db"
8608         and "maint set/show check-libthread-db".
8609         * NEWS: Mention the above new commands.
8610
8611 2018-06-08  Tom Tromey  <tom@tromey.com>
8612
8613         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
8614         now a method.
8615
8616 2018-06-08  Tom Tromey  <tom@tromey.com>
8617
8618         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
8619
8620 2018-06-08  Tom Tromey  <tom@tromey.com>
8621
8622         * common/btrace-common.h (struct btrace_data): Add constructor,
8623         destructor, move assignment operator.
8624         <empty, clear, fini>: New methods.
8625         <format>: Initialize.
8626         (btrace_data_init, btrace_data_fini, btrace_data_clear)
8627         (btrace_data_empty): Don't declare.
8628         * common/btrace-common.c (btrace_data_init): Remove.
8629         (btrace_data::fini): Rename from btrace_data_fini.
8630         (btrace_data::empty): Rename from btrace_data_empty.
8631         (btrace_data::clear): Rename from btrace_data_clear.  Return
8632         bool.
8633         * btrace.h (make_cleanup_btrace_data): Don't declare.
8634         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
8635         (parse_xml_btrace): Update.
8636         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
8637         (maint_btrace_clear_packet_history_cmd): Update.
8638
8639 2018-06-07  Pedro Alves  <palves@redhat.com>
8640
8641         * target.h (target_ops) <beneath>: Now a method.  All references
8642         updated.
8643         (class target_stack): New.
8644         * target.c (g_target_stack): New.
8645         (g_current_top_target): Delete.
8646         (current_top_target): Get the top target out of g_target_stack.
8647         (target_stack::push, target_stack::unpush): New.
8648         (push_target, unpush_target): Reimplement.
8649         (target_is_pushed): Reimplement in terms of g_target_stack.
8650         (target_ops::beneath, target_stack::find_beneath): New.
8651
8652 2018-06-07  Pedro Alves  <palves@redhat.com>
8653
8654         * target.h (find_target_beneath): Delete declaration.
8655         * target.c (find_target_beneath): Delete definition.
8656         * aix-thread.c: All callers of find_target_beneath adjusted to
8657         call target_ops::beneath instead.
8658         * bsd-uthread.c: Likewise.
8659         * linux-thread-db.c: Likewise.
8660         * ravenscar-thread.c: Likewise.
8661         * sol-thread.c: Likewise.
8662         * spu-multiarch.c: Likewise.
8663
8664 2018-06-07  Pedro Alves  <palves@redhat.com>
8665
8666         * target.h (target_ops) <beneath>: Now a method.  All references
8667         updated.
8668         (target_ops) <m_beneath>: New.
8669         * target.c (target_ops::beneath): New.
8670         * corelow.c: Adjust all references to target_ops::beneath.
8671         * linux-thread-db.c: Likewise.
8672         * make-target-delegates: Likewise.
8673         * record-btrace.c: Likewise.
8674         * record-full.c: Likewise.
8675         * remote.c: Likewise.
8676         * target.c: Likewise.
8677         * target-delegates.c: Regenerate.
8678
8679 2018-06-07  Pedro Alves  <palves@redhat.com>
8680
8681         * target.h (target_stack): Delete.
8682         (current_top_target): Declare function.
8683         * target.c (target_stack): Delete.
8684         (g_current_top_target): New.
8685         (current_top_target): New function.
8686         * auxv.c: Use current_top_target instead of target_stack
8687         throughout.
8688         * avr-tdep.c: Likewise.
8689         * breakpoint.c: Likewise.
8690         * corefile.c: Likewise.
8691         * elfread.c: Likewise.
8692         * eval.c: Likewise.
8693         * exceptions.c: Likewise.
8694         * frame.c: Likewise.
8695         * gdbarch-selftests.c: Likewise.
8696         * gnu-v3-abi.c: Likewise.
8697         * ia64-tdep.c: Likewise.
8698         * ia64-vms-tdep.c: Likewise.
8699         * infcall.c: Likewise.
8700         * infcmd.c: Likewise.
8701         * infrun.c: Likewise.
8702         * linespec.c: Likewise.
8703         * linux-tdep.c: Likewise.
8704         * minsyms.c: Likewise.
8705         * ppc-linux-nat.c: Likewise.
8706         * ppc-linux-tdep.c: Likewise.
8707         * procfs.c: Likewise.
8708         * regcache.c: Likewise.
8709         * remote.c: Likewise.
8710         * rs6000-tdep.c: Likewise.
8711         * s390-linux-nat.c: Likewise.
8712         * s390-tdep.c: Likewise.
8713         * solib-aix.c: Likewise.
8714         * solib-darwin.c: Likewise.
8715         * solib-dsbt.c: Likewise.
8716         * solib-spu.c: Likewise.
8717         * solib-svr4.c: Likewise.
8718         * solib-target.c: Likewise.
8719         * sparc-tdep.c: Likewise.
8720         * sparc64-tdep.c: Likewise.
8721         * spu-tdep.c: Likewise.
8722         * symfile.c: Likewise.
8723         * symtab.c: Likewise.
8724         * target-descriptions.c: Likewise.
8725         * target-memory.c: Likewise.
8726         * target.c: Likewise.
8727         * target.h: Likewise.
8728         * tracefile-tfile.c: Likewise.
8729         * tracepoint.c: Likewise.
8730         * valops.c: Likewise.
8731         * valprint.c: Likewise.
8732         * value.c: Likewise.
8733         * windows-tdep.c: Likewise.
8734         * mi/mi-main.c: Likewise.
8735
8736 2018-06-07  Tom Tromey  <tom@tromey.com>
8737
8738         * valprint.h (build_address_symbolic): Declare.
8739         * printcmd.c (print_address_symbolic): Update.
8740         (build_address_symbolic): Change "name" and "filename" to
8741         std::string.
8742         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
8743         Update.
8744         * defs.h (build_address_symbolic): Remove declaration.
8745
8746 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
8747
8748         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
8749         (aarch64_vnv_type): Add function.
8750         (aarch64_pseudo_register_name): Add V regs for SVE.
8751         (aarch64_pseudo_register_type): Likewise.
8752         (aarch64_pseudo_register_reggroup_p): Likewise.
8753         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
8754         (aarch64_pseudo_read_value): Add V regs for SVE.
8755         (aarch64_pseudo_write_2): Use V0 offset for SVE
8756         (aarch64_pseudo_write): Add V regs for SVE.
8757         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
8758
8759 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
8760
8761         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
8762         (sve_vl_from_vq): Likewise.
8763
8764 2018-06-05  Tom Tromey  <tom@tromey.com>
8765
8766         * cli/cli-cmds.c (show_version): Update.
8767         * top.c (print_gdb_version): Add "interactive" parameter.
8768         Update.
8769         * main.c (captured_main_1): Update.
8770         * top.h (print_gdb_version): Add "interactive" parameter and a
8771         comment.
8772
8773 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
8774
8775         * common/enum-flags.h: Add trailing semicolon to example in
8776         comment.
8777
8778 2018-06-05  Tom Tromey  <tom@tromey.com>
8779
8780         PR cli/12326:
8781         * NEWS: Add entry about pager.
8782         * utils.c (pagination_disabled_for_command): New global.
8783         (prompt_for_continue): Allow "c" response to prompt.
8784         (reinitialize_more_filter): Clear
8785         pagination_disabled_for_command.
8786         (fputs_maybe_filtered): Check pagination_disabled_for_command.
8787
8788 2018-06-04  Tom Tromey  <tom@tromey.com>
8789
8790         * ada-lang.h (ada_lookup_symbol_list): Update.
8791         * ada-lang.c (resolve_subexp): Update.
8792         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
8793         parameter.
8794         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
8795         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
8796         results parameter to std::vector.
8797         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
8798         Update.
8799         * ada-exp.y (block_lookup): Update.
8800         (select_possible_type_sym): Change type of syms.  Remove nsyms
8801         parameter.
8802         (write_var_or_type, write_name_assoc): Update.
8803
8804 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
8805
8806         * windows-nat.c (windows_nat_target::xfer_partial): Return
8807         TARGET_XFER_E_IO if we need to delegate to the target beneath
8808         but BENEATH is NULL.
8809
8810 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
8811
8812         * Makefile.in (config.status): Add configure.nat as a
8813         dependency.
8814
8815 2018-06-04  Tom Tromey  <tom@tromey.com>
8816
8817         * cp-name-parser.y (cpname_state): Add method declarations.
8818         (HANDLE_QUAL): Update.
8819         (cpname_state::d_grab, cpname_state::fill_comp)
8820         (cpname_state::make_operator, cpname_state::make_dtor)
8821         (cpname_state::make_builtin_type, cpname_state::make_name)
8822         (cpname_state::d_qualify, cpname_state::d_int_type)
8823         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
8824         (%union): Move earlier.
8825
8826 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8827
8828         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
8829
8830 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8831
8832         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
8833         (aarch64_pseudo_write_1): Likewise.
8834         (aarch64_pseudo_read_value): Use helper.
8835         (aarch64_pseudo_write): Likewise.
8836
8837 2018-06-04  Pedro Alves  <palves@redhat.com>
8838
8839         * darwin-nat.c (darwin_ops): Delete.
8840         (darwin_attach_pid): Use get_native_target.
8841
8842 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8843
8844         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
8845         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
8846
8847 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8848
8849         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
8850         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
8851         (aarch64_gdbarch_init): Check for SVE.
8852         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
8853
8854 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8855
8856         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
8857         * aarch64-tdep.h (aarch64_read_description): Likewise.
8858         * arch/aarch64.c (aarch64_create_target_description): Likewise.
8859         * arch/aarch64.h (aarch64_create_target_description): Likewise.
8860         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
8861         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
8862         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
8863
8864 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
8865
8866         * value.c (value_fetch_lazy_bitfield): New.
8867         (value_fetch_lazy_memory): New.
8868         (value_fetch_lazy_register): New.
8869         (value_fetch_lazy): Factor out to smaller functions.
8870
8871 2018-06-01  Tom Tromey  <tom@tromey.com>
8872
8873         * cp-name-parser.y (backslashable, represented): Now const.
8874
8875 2018-06-01  Tom Tromey  <tom@tromey.com>
8876
8877         * cp-name-parser.y: Include parser-defs.h.
8878         (parser_fprintf): Remove declaration.
8879
8880 2018-06-01  Tom Tromey  <tom@tromey.com>
8881
8882         * cp-name-parser.y: Use %pure-parser, %lex-param, and
8883         %parse-param.
8884         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
8885         (global_result): Remove globals.
8886         (struct cpname_state): New.
8887         (yyparse): Don't declare.
8888         (yylex, yyerror): Move declarations after %union.
8889         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
8890         (make_name): Add state parameter.
8891         Update all callers.
8892         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
8893         parameter.
8894         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
8895         Update.
8896         (yylex): Add lvalp, state parameters.
8897         (yyerror): Add state parameter.
8898         (cp_demangled_name_to_comp): Update.
8899
8900 2018-06-01  Tom Tromey  <tom@tromey.com>
8901
8902         * cp-name-parser.y (parser_fprintf): Declare.
8903         (GDB_YY_REMAP_PREFIX): Define.
8904         Include yy-remap.h.  Don't redefine yy* identifiers.
8905
8906 2018-06-01  Tom Tromey  <tom@tromey.com>
8907
8908         * python/py-type.c (typy_legacy_template_argument): Update.
8909         * cp-support.h (cp_demangled_name_to_comp): Update.
8910         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
8911         parameter to be a "std::string *".
8912         (main): Update.
8913
8914 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
8915
8916         * ada-lex.l: Include "diagnostics.h" instead of
8917         "common/diagnostics.h".
8918         * unittests/environ-selftests.c: Likewise.
8919         * common/diagnostics.h: Moved to ../include.
8920
8921 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
8922
8923         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
8924         to language_mode_manual while calling breakpoint_re_set_one.
8925
8926 2018-06-01  Tom Tromey  <tom@tromey.com>
8927
8928         * valops.c (value_cast_structs, destructor_name_p): Update.
8929         * symtab.c (gdb_mangle_name): Update.
8930         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
8931         Update.
8932         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
8933         (pascal_object_print_value_fields, pascal_object_print_value):
8934         Update.
8935         * p-typeprint.c (pascal_type_print_derivation_info): Update.
8936         * linespec.c (find_methods): Update.
8937         * gdbtypes.h (type_name_no_tag): Remove.
8938         (type_name_or_error): Rename from type_name_no_tag_or_error.
8939         * gdbtypes.c (type_name_no_tag): Remove.
8940         (type_name_or_error): Rename from type_name_no_tag_or_error.
8941         (lookup_struct_elt_type, check_typedef): Update.
8942         * expprint.c (print_subexp_standard): Update.
8943         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
8944         * d-namespace.c (d_lookup_nested_symbol): Update.
8945         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
8946         (cp_print_class_member): Update.
8947         * cp-namespace.c (cp_lookup_nested_symbol): Update.
8948         * completer.c (add_struct_fields): Update.
8949         * c-typeprint.c (cp_type_print_derivation_info)
8950         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
8951         Update.
8952         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
8953         (ada_prefer_type, ada_is_exception_sym): Update.
8954
8955 2018-06-01  Tom Tromey  <tom@tromey.com>
8956
8957         * valops.c (enum_constant_from_type, value_namespace_elt)
8958         (value_maybe_namespace_elt): Update.
8959         * valarith.c (find_size_for_pointer_math): Update.
8960         * target-descriptions.c (make_gdb_type): Update.
8961         * symmisc.c (print_symbol): Update.
8962         * stabsread.c (define_symbol, read_type)
8963         (complain_about_struct_wipeout, add_undefined_type)
8964         (cleanup_undefined_types_1): Update.
8965         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
8966         (rust_range_type_p, val_print_struct, rust_print_struct_def)
8967         (rust_internal_print_type, rust_composite_type)
8968         (rust_evaluate_funcall, rust_evaluate_subexp)
8969         (rust_inclusive_range_type_p): Update.
8970         * python/py-type.c (typy_get_tag): Update.
8971         * p-typeprint.c (pascal_type_print_base): Update.
8972         * mdebugread.c (parse_symbol, parse_type): Update.
8973         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
8974         Update.
8975         * guile/scm-type.c (gdbscm_type_tag): Update.
8976         * go-lang.c (sixg_string_p): Update.
8977         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
8978         Update.
8979         * gdbtypes.h (struct main_type) <tag_name>: Remove.
8980         (TYPE_TAG_NAME): Remove.
8981         * gdbtypes.c (type_name_no_tag): Simplify.
8982         (check_typedef, check_types_equal, recursive_dump_type)
8983         (copy_type_recursive, arch_composite_type): Update.
8984         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
8985         in summary mode when needed.
8986         * eval.c (evaluate_funcall): Update.
8987         * dwarf2read.c (fixup_go_packaging, read_structure_type)
8988         (process_structure_scope, read_enumeration_type)
8989         (read_namespace_type, read_module_type, determine_prefix): Update.
8990         * cp-support.c (inspect_type): Update.
8991         * coffread.c (process_coff_symbol, decode_base_type): Update.
8992         * c-varobj.c (c_is_path_expr_parent): Update.
8993         * c-typeprint.c (c_type_print_base_struct_union): Update.
8994         (c_type_print_base_1): Update.  Print struct/class/union/enum in
8995         summary when using C language.
8996         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
8997         (gen_maybe_namespace_elt): Update.
8998         * ada-lang.c (ada_type_name): Simplify.
8999         (empty_record, ada_template_to_fixed_record_type_1)
9000         (template_to_static_fixed_type)
9001         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
9002
9003 2018-06-01  Tom Tromey  <tom@tromey.com>
9004
9005         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
9006         c_print_type.
9007         * c-typeprint.c (c_print_type_1): Add "language" parameter.
9008         (c_print_type): Update.
9009         (c_print_type): New overload.
9010         (c_type_print_varspec_prefix, c_type_print_args)
9011         (c_type_print_varspec_suffix, c_print_type_no_offsets)
9012         (c_type_print_base_struct_union, c_type_print_base_1)
9013         (cp_type_print_method_args): Add "language" parameter.
9014         (c_type_print_base): Update.
9015         * c-lang.h (c_print_type): Add new overload.
9016
9017 2018-06-01  Tom Tromey  <tom@tromey.com>
9018
9019         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
9020         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
9021
9022 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
9023
9024         * aarch64-tdep.c (aarch64_sve_register_names): New const
9025         var.
9026         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
9027         (AARCH64_SVE_Z_REGS_NUM): New define.
9028         (AARCH64_SVE_P_REGS_NUM): Likewise.
9029         (AARCH64_SVE_NUM_REGS): Likewise.
9030
9031 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
9032
9033         * nat/linux-ptrace.h [__alpha__]
9034         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
9035         definitions.
9036
9037 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
9038
9039         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
9040         the endianness selected.
9041         * NEWS: Document `set endian auto' mode operation update.
9042
9043 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
9044
9045         * Makefile.in: Add new header.
9046         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
9047         (sve_vl_from_vg): Likewise.
9048         (sve_vq_from_vl): Likewise.
9049         (sve_vl_from_vq): Likewise.
9050         (sve_vq_from_vg): Likewise.
9051         (sve_vg_from_vq): Likewise.
9052         * configure.nat: Add new c file.
9053         * nat/aarch64-sve-linux-ptrace.c: New file.
9054         * nat/aarch64-sve-linux-ptrace.h: New file.
9055
9056 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
9057
9058         * aarch64-linux-nat.c (aarch64_linux_read_description):
9059         Add parmeter zero.
9060         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
9061         Likewise.
9062         * aarch64-tdep.c (tdesc_aarch64_list): Add.
9063         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
9064         (aarch64_gdbarch_init): Add parmeter zero.
9065         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
9066         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
9067         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
9068         parmeter.
9069         * doc/gdb.texinfo: Describe SVE feature
9070         * features/aarch64-sve.c: New file.
9071
9072 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
9073
9074         PR gdb/23210
9075         * gdbarch.sh (significant_addr_bit): Default to zero when
9076         not set by target architecture.
9077         * gdbarch.c: Re-generated.
9078         * utils.c (address_significant): Update.
9079
9080 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
9081
9082         * stack.c (func_command): Remove trailing newline in call to error.
9083
9084 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9085
9086         * regcache.h (regcache_raw_collect): Remove, update callers to
9087         use regcache::raw_collect.
9088         * regcache.c (regcache_raw_collect): Remove.
9089
9090 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9091
9092         * regcache.h (regcache_raw_supply): Remove, update callers to
9093         use detached_regcache::raw_supply.
9094         * regcache.c (regcache_raw_supply): Remove.
9095
9096 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9097
9098         * regcache.h (regcache_cooked_write_part): Remove, update
9099         callers to use regcache::cooked_write_part.
9100         * regcache.c (regcache_cooked_write_part): Remove.
9101
9102 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9103
9104         * regcache.h (regcache_cooked_read_part): Remove, update callers
9105         to use readable_regcache::cooked_read_part.
9106         * regcache.c (regcache_cooked_read_part): Remove.
9107
9108 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9109
9110         * regcache.h (regcache_cooked_read_value): Remove, update
9111         callers to use readable_regcache::cooked_read_value.
9112         * regcache.c (regcache_cooked_read_value): Remove.
9113
9114 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9115
9116         * regcache.h (regcache_cooked_write): Remove, update callers to
9117         use regcache::cooked_write.
9118         * regcache.c (regcache_cooked_write): Remove.
9119
9120 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9121
9122         * regcache.h (regcache_invalidate): Remove, update callers to
9123         use detached_regcache::invalidate instead.
9124         * regcache.c (regcache_invalidate): Remove.
9125
9126 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9127
9128         * regcache.h (regcache_raw_write_part): Remove, update callers
9129         to use regcache::raw_write_part instead.
9130         * regcache.c (regcache_raw_write_part): Remove.
9131
9132 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9133
9134         * regcache.h (regcache_raw_read_part): Remove, update callers to
9135         use readable_regcache::raw_read_part instead.
9136         * regcache.c (regcache_raw_read_part): Remove.
9137
9138 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9139
9140         * regcache.h (regcache_cooked_read): Remove, update callers to
9141         use readable_regcache::cooked_read instead.
9142         * regcache.c (regcache_cooked_read): Remove.
9143
9144 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9145
9146         * regcache.h (regcache_raw_write): Remove, update callers to use
9147         regcache::raw_write instead.
9148         * regcache.c (regcache_raw_write): Remove.
9149
9150 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9151
9152         * regcache.h (regcache_raw_read): Remove, update callers to use
9153         readable_regcache::raw_read instead.
9154         * regcache.c (regcache_raw_read): Remove.
9155
9156 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9157
9158         * regcache.h (regcache_raw_update): Remove, update callers to
9159         use readable_regcache::raw_update instead.
9160         * regcache.c (regcache_raw_update): Remove.
9161
9162 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9163
9164         * regcache.h (regcache_register_status): Remove, update callers
9165         to use reg_buffer::get_register_status directly instead.
9166         * regcache.c (regcache_register_status): Remove.
9167
9168 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9169
9170         * regcache.h (regcache_get_ptid): Remove, update all callers to
9171         call regcache::ptid instead.
9172         * regcache.c (regcache_get_ptid): Remove.
9173
9174 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9175
9176         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
9177
9178 2018-05-30  Pedro Alves  <palves@redhat.com>
9179
9180         * common/common-exceptions.h (exception_rethrow): Use
9181         ATTRIBUTE_NORETURN.
9182
9183 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
9184
9185         * breakpoint.c (print_solib_event, check_status_catch_solib):
9186         Remove struct keyword in range-based for loops.
9187         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
9188         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
9189         Likewise.
9190         * linespec.c (find_superclass_methods, search_minsyms_for_name):
9191         Likewise.
9192         * symfile.c (addr_info_make_relative): Likewise.
9193         * thread.c (value_in_thread_stack_temporaries): Likewise.
9194
9195 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
9196
9197         PR gdb/16841
9198         * valops.c (value_struct_elt_for_reference): Call check_typedef on
9199         aggregate type to get its real type before accessing it.
9200
9201 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
9202
9203         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
9204         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
9205         * coff-pe-read.c (add_pe_forwarded_sym): Replace
9206         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
9207         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
9208         * jit.c (jit_breakpoint_re_set_internal): Likewise.
9209         * printcmd.c (info_address_command): Likewise.
9210
9211 2018-05-29  Tom Tromey  <tom@tromey.com>
9212
9213         * windows-nat.c (handle_exception): Update fall-through comment.
9214
9215 2018-05-29  Tom Tromey  <tom@tromey.com>
9216
9217         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
9218         (struct program_space) <added_solibs>: Now a std::vector.
9219         * breakpoint.c (print_solib_event): Update.
9220         (check_status_catch_solib): Update.
9221         * progspace.c (clear_program_space_solib_cache): Update.
9222         * solib.c (update_solib_list): Update.
9223
9224 2018-05-29  Tom Tromey  <tom@tromey.com>
9225
9226         * python/py-type.c (typy_richcompare): Update.
9227         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
9228         * gdbtypes.h (types_deeply_equal): Return bool.
9229         (types_equal): Likewise.
9230         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
9231         declare VEC.
9232         (check_types_equal): Change worklist to std::vector.  Return
9233         bool.
9234         (struct type_equality_entry): Add constructor.
9235         (compare_maybe_null_strings): Return bool.
9236         (check_types_worklist): Return bool.  Change worklist to
9237         std::vector.
9238         (types_deeply_equal): Use std::vector.
9239         (types_equal): Return bool.
9240         (compare_maybe_null_strings): Simplify.
9241
9242 2018-05-29  Tom Tromey  <tom@tromey.com>
9243
9244         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
9245
9246 2018-05-29  Tom Tromey  <tom@tromey.com>
9247
9248         * objc-lang.h: Don't include cp-support.h.
9249         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
9250         declare VEC.
9251
9252 2018-05-27  Tom Tromey  <tom@tromey.com>
9253
9254         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
9255
9256 2018-05-25  Tom Tromey  <tom@tromey.com>
9257
9258         * value.c (value::location): Initialize.
9259
9260 2018-05-25  Tom Tromey  <tom@tromey.com>
9261
9262         * dbxread.c (init_bincl_list): Remove.
9263         (bincl_list): Now a std::vector.
9264         (bincls_allocated, next_bincl): Remove.
9265         (free_bincl_list, do_free_bincl_list_cleanup)
9266         (make_cleanup_free_bincl_list): Remove.
9267         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
9268         unique_xmalloc_ptr.
9269         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
9270         (struct header_file_location): Add constructor.
9271         (add_bincl_to_list): Remove.
9272
9273 2018-05-25  Tom Tromey  <tom@tromey.com>
9274
9275         * tui/tui.c (tui_enable): Update.
9276         * mi/mi-interp.c (mi_interp::init): Update.
9277         * interps.h (class interp) <name>: New method.
9278         <m_name>: Rename from name.
9279         (~scoped_restore_interp): Update.
9280         * interps.c (interp::interp): Update.
9281         (interp_add, interp_set, interp_lookup_existing)
9282         (current_interp_named_p): Update.
9283
9284 2018-05-25  Tom Tromey  <tom@tromey.com>
9285
9286         * interps.c (interp_name): Remove.
9287         * mi/mi-interp.c (mi_interp::init): Update.
9288         * interps.h (interp_name): Remove.
9289         (~scoped_restore_interp): Update.
9290         * tui/tui.c (tui_enable): Update.
9291
9292 2018-05-25  Tom Tromey  <tom@tromey.com>
9293
9294         * utils.c (fputs_maybe_filtered): Update.
9295         * linespec.c (decode_line_full): Update.
9296         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
9297         (mi_print_breakpoint_for_event, mi_solib_loaded)
9298         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
9299         (mi_user_selected_context_changed): Update.
9300         * mi/mi-main.c (mi_execute_command): Update.
9301         * cli/cli-script.c (execute_control_command): Update.
9302         * python/python.c (execute_gdb_command): Update.
9303         * solib.c (info_sharedlibrary_command): Update.
9304         * interps.c (interp_ui_out): Remove.
9305         * interps.h (interp_ui_out): Remove.
9306
9307 2018-05-25  Tom Tromey  <tom@tromey.com>
9308
9309         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
9310         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
9311         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
9312
9313 2018-05-25  Tom Tromey  <tom@tromey.com>
9314
9315         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
9316         * interps.c (interp_exec): Use scoped_restore.
9317
9318 2018-05-25  Tom Tromey  <tom@tromey.com>
9319
9320         * remote.c (remote_target::remote_file_get): Use
9321         gdb::byte_vector.
9322         (remote_target::remote_file_put): Likewise.
9323
9324 2018-05-25  Tom Tromey  <tom@tromey.com>
9325
9326         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
9327         a std::string.
9328         (get_pe_section_index, add_pe_exported_sym): Update.
9329         (read_pe_exported_syms): Use gdb::def_vector.
9330
9331 2018-05-25  Tom Tromey  <tom@tromey.com>
9332
9333         * frame.c (remove_prev_frame): Remove.
9334         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
9335
9336 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
9337
9338         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
9339         Remove prototypes.
9340         * mips-linux-nat.c (supply_fpregset): Always call
9341         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
9342         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
9343         `mips_fill_fpregset'.
9344         * mips-linux-tdep.c (mips_supply_fpregset)
9345         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
9346         (mips_fill_fpregset_wrapper): Remove functions.
9347         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
9348         (mips_linux_fpregset): Remove variable.
9349         (mips_linux_iterate_over_regset_sections): Use
9350         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
9351         (mips_linux_o32_sigframe_init): Remove comment.
9352
9353 2018-05-25  Pedro Alves  <palves@redhat.com>
9354
9355         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
9356         (struct readahead_cache, struct packet_reg, struct
9357         remote_arch_state, class remote_state): Move higher up in the
9358         file.
9359         (remote_target::m_remote_state): Now an object instead of a pointer.
9360         (remote_target::get_remote_state): Adjust.
9361
9362 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
9363
9364         * stack.c (select_and_print_frame): Delete.
9365         (struct function_bounds): Move struct within function.
9366         (func_command): Most content moved into new function
9367         find_frame_for_function, use new function, print result, add
9368         function comment.
9369         (find_frame_for_function): New function, now returns a result.
9370
9371 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9372
9373         * stack.c (iterate_over_block_arg_vars): Fix comment.
9374         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
9375
9376 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
9377
9378         PR gdb/23203
9379         * frame.c
9380         (scoped_restore_selected_frame::scoped_restore_selected_frame):
9381         Define.
9382         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
9383         Define.
9384         * frame.h (class scoped_restore_selected_frame): New class.
9385         * stack.c (print_frame_local_vars): Remove catching and rethrowing
9386         of any exception, use scoped_restore_selected_frame to restore the
9387         frame instead.
9388
9389 2018-05-24  Pedro Alves  <palves@redhat.com>
9390
9391         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
9392         override.
9393
9394 2018-05-23  Tom Tromey  <tom@tromey.com>
9395
9396         * complaints.c (struct complaints): Remove.
9397         (symfile_complaint_book): Remove.
9398         (series): New global.
9399         (complaint_internal): Update.
9400         (clear_complaints): Update.
9401
9402 2018-05-23  Tom Tromey  <tom@tromey.com>
9403
9404         * complaints.c (counters): New global.
9405         (struct complain): Remove.
9406         (struct complaints) <root>: Remove.
9407         (complaint_sentinel): Remove.
9408         (symfile_complaint_book): Update.
9409         (find_complaint) Remove.
9410         (complaint_internal, clear_complaints): Update.
9411
9412 2018-05-23  Tom Tromey  <tom@tromey.com>
9413
9414         * complaints.c (struct complain) <file, line>: Remove.
9415         (find_complaint): Remove file, line parameters.
9416         (complaint_internal): Update.
9417
9418 2018-05-23  Tom Tromey  <tom@tromey.com>
9419
9420         * complaints.c (vcomplaint): Remove.
9421         (complaint_internal) Merge in contents of vcomplaint.
9422
9423 2018-05-23  Tom Tromey  <tom@tromey.com>
9424
9425         * complaints.c (struct complaints) <explanation>: Remove.
9426         (symfile_explanations): Remove.
9427         (symfile_complaint_book): Update.
9428         (vcomplaint): Update.
9429         (struct explanation): Remove.
9430
9431 2018-05-23  Tom Tromey  <tom@tromey.com>
9432
9433         * complaints.c (symfile_complaints): Remove.
9434         (complaint_internal): Remove "complaints" parameter.
9435         (clear_complaints, vcomplaint): Remove "c" parameter.
9436         (get_complaints): Remove.
9437         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
9438         (dwarf2_debug_line_missing_file_complaint)
9439         (dwarf2_debug_line_missing_end_sequence_complaint)
9440         (dwarf2_complex_location_expr_complaint)
9441         (dwarf2_const_value_length_mismatch_complaint)
9442         (dwarf2_section_buffer_overflow_complaint)
9443         (dwarf2_macro_malformed_definition_complaint)
9444         (dwarf2_invalid_attrib_class_complaint)
9445         (create_addrmap_from_index, dw2_symtab_iter_next)
9446         (dw2_expand_marked_cus)
9447         (dw2_debug_names_iterator::find_vec_in_debug_names)
9448         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
9449         (create_debug_type_hash_table, init_cutu_and_read_dies)
9450         (partial_die_parent_scope, add_partial_enumeration)
9451         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
9452         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
9453         (read_import_statement, read_file_scope, create_dwo_cu_reader)
9454         (create_cus_hash_table, create_dwp_hash_table)
9455         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
9456         (dwarf2_rnglists_process, dwarf2_ranges_process)
9457         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
9458         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
9459         (handle_struct_member_die, process_structure_scope)
9460         (read_array_type, read_common_block, read_module_type)
9461         (read_tag_pointer_type, read_typedef, read_base_type)
9462         (read_subrange_type, load_partial_dies, partial_die_info::read)
9463         (partial_die_info::read, partial_die_info::read)
9464         (partial_die_info::read, read_checked_initial_length_and_offset)
9465         (dwarf2_string_attr, read_formatted_entries)
9466         (dwarf_decode_line_header)
9467         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
9468         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
9469         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
9470         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
9471         (get_signatured_type, get_DW_AT_signature_type)
9472         (decode_locdesc, file_file_name, consume_improper_spaces)
9473         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
9474         (dwarf_decode_macro_bytes, dwarf_decode_macros)
9475         (dwarf2_symbol_mark_computed, set_die_type)
9476         (read_attribute_value): Update.
9477         * stap-probe.c (handle_stap_probe, get_stap_base_address):
9478         Update.
9479         * dbxread.c (unknown_symtype_complaint)
9480         (lbrac_mismatch_complaint, repeated_header_complaint)
9481         (set_namestring, function_outside_compilation_unit_complaint)
9482         (read_dbx_symtab, process_one_symbol): Update.
9483         * gdbtypes.c (stub_noname_complaint): Update.
9484         * windows-nat.c (handle_unload_dll): Update.
9485         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
9486         (decode_base_type): Update.
9487         * xcoffread.c (bf_notfound_complaint, ef_complaint)
9488         (eb_complaint, record_include_begin, record_include_end)
9489         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
9490         (process_xcoff_symbol, read_symbol)
9491         (function_outside_compilation_unit_complaint)
9492         (scan_xcoff_symtab): Update.
9493         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
9494         * buildsym.c (finish_block_internal, make_blockvector)
9495         (end_symtab_get_static_block, augment_type_symtab): Update.
9496         * dtrace-probe.c (dtrace_process_dof)
9497         (dtrace_static_probe_ops::get_probes): Update.
9498         * complaints.h (struct complaint): Don't declare.
9499         (symfile_complaints): Remove.
9500         (complaint_internal): Remove "complaints" parameter.
9501         (complaint): Likewise.
9502         (clear_complaints): Likewise.
9503         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9504         (reread_symbols): Update.
9505         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
9506         (dwarf2_frame_cache, decode_frame_entry): Update.
9507         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
9508         * objc-lang.c (lookup_objc_class, lookup_child_selector)
9509         (info_selectors_command): Update.
9510         * macrotab.c (macro_include, check_for_redefinition)
9511         (macro_undef): Update.
9512         * objfiles.c (filter_overlapping_sections): Update.
9513         * stabsread.c (invalid_cpp_abbrev_complaint)
9514         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
9515         (define_symbol, error_type, read_type, rs6000_builtin_type)
9516         (stabs_method_name_from_physname, read_member_functions)
9517         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
9518         (attach_fields_to_type, complain_about_struct_wipeout)
9519         (read_range_type, read_args, common_block_start)
9520         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
9521         Update.
9522         * mdebugread.c (index_complaint, unknown_ext_complaint)
9523         (basic_type_complaint, bad_tag_guess_complaint)
9524         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
9525         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
9526         (parse_procedure, parse_lines)
9527         (function_outside_compilation_unit_complaint)
9528         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
9529         (bad_tag_guess_complaint, reg_value_complaint): Update.
9530         * cp-support.c (demangled_name_complaint): Update.
9531         * macroscope.c (sal_macro_scope): Update.
9532         * dwarf-index-write.c (class debug_names): Update.
9533
9534 2018-05-23  Tom Tromey  <tom@tromey.com>
9535
9536         * complaints.c (clear_complaints): Remove "noisy" parameter.
9537         * complaints.h (clear_complaints): Update.
9538         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9539         (reread_symbols): Update.
9540
9541 2018-05-23  Tom Tromey  <tom@tromey.com>
9542
9543         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
9544         SUBSEQUENT_MESSAGE.
9545         (vcomplaint, clear_complaints): Update.
9546         (symfile_explanations): Remove some messages.
9547
9548 2018-05-23  Tom Tromey  <tom@tromey.com>
9549
9550         * complaints.c (internal_complaint): Remove.
9551         * complaints.h (internal_complaint): Remove.
9552
9553 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9554
9555         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
9556
9557 2018-05-22  Pedro Alves  <palves@redhat.com>
9558
9559         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
9560         (remote_fileio_badfd, remote_fileio_return_errno)
9561         (remote_fileio_return_success, remote_fileio_func_open)
9562         (remote_fileio_func_open, remote_fileio_func_close)
9563         (remote_fileio_func_read, remote_fileio_func_write)
9564         (remote_fileio_func_lseek, remote_fileio_func_rename)
9565         (remote_fileio_func_unlink, remote_fileio_func_stat)
9566         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
9567         (remote_fileio_func_isatty, remote_fileio_func_system): Add
9568         remote_target parameter.
9569         (remote_fio_func_map) <func>: Add remote_target parameter.
9570         (do_remote_fileio_request, remote_fileio_request):
9571         * remote-fileio.h (remote_fileio_request):
9572         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
9573         remote_target parameter.
9574         (remote_notif_process, handle_notification): Adjust to pass down
9575         the remote.
9576         (remote_notif_state_allocate): Add remote_target parameter.  Save
9577         it.
9578         * remote-notif.h (struct remote_target): Forward declare.
9579         (struct notif_client) <parse, ack, can_get_pending_events>: Add
9580         remote_target parameter.
9581         (struct remote_notif_state) <remote>: New field.
9582         (remote_notif_ack, remote_notif_parse): Add remote_target
9583         parameter.
9584         (remote_notif_state_allocate, remote_notif_state_allocate): Add
9585         remote_target parameter.
9586         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
9587         (threads_listing_context, rmt_thread_action, protocol_feature)
9588         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
9589         (packet_result, struct threads_listing_context, remote_state):
9590         Move definitions and declarations higher up.
9591         (remote_target) <~remote_target>: Declare.
9592         (remote_download_command_source, remote_file_put, remote_file_get)
9593         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
9594         (remote_hostio_pread_vFile, remote_hostio_send_command)
9595         (remote_hostio_set_filesystem, remote_hostio_open)
9596         (remote_hostio_close, remote_hostio_unlink, remote_state)
9597         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
9598         (get_memory_write_packet_size, get_memory_read_packet_size)
9599         (append_pending_thread_resumptions, remote_detach_1)
9600         (append_resumption, remote_resume_with_vcont)
9601         (add_current_inferior_and_thread, wait_ns, wait_as)
9602         (process_stop_reply, remote_notice_new_inferior)
9603         (process_initial_stop_replies, remote_add_thread)
9604         (btrace_sync_conf, remote_btrace_maybe_reopen)
9605         (remove_new_fork_children, kill_new_fork_children)
9606         (discard_pending_stop_replies, stop_reply_queue_length)
9607         (check_pending_events_prevent_wildcard_vcont)
9608         (discard_pending_stop_replies_in_queue, stop_reply)
9609         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
9610         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
9611         (remote_interrupt_as, remote_interrupt_ns)
9612         (remote_get_noisy_reply, remote_query_attached)
9613         (remote_add_inferior, remote_current_thread, get_current_thread)
9614         (set_thread, set_general_thread, set_continue_thread)
9615         (set_general_process, write_ptid)
9616         (remote_unpack_thread_info_response, remote_get_threadinfo)
9617         (parse_threadlist_response, remote_get_threadlist)
9618         (remote_threadlist_iterator, remote_get_threads_with_ql)
9619         (remote_get_threads_with_qxfer)
9620         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
9621         (get_offsets, remote_check_symbols, remote_supported_packet)
9622         (remote_query_supported, remote_packet_size)
9623         (remote_serial_quit_handler, remote_detach_pid)
9624         (remote_vcont_probe, remote_resume_with_hc)
9625         (send_interrupt_sequence, interrupt_query)
9626         (remote_notif_get_pending_events, fetch_register_using_p)
9627         (send_g_packet, process_g_packet, fetch_registers_using_g)
9628         (store_register_using_P, store_registers_using_G)
9629         (set_remote_traceframe, check_binary_download)
9630         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
9631         (remote_xfer_live_readonly_partial, remote_read_bytes)
9632         (remote_send_printf, remote_flash_write, readchar)
9633         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
9634         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
9635         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
9636         (extended_remote_disable_randomization, extended_remote_run)
9637         (send_environment_packet, extended_remote_environment_support)
9638         (extended_remote_set_inferior_cwd, remote_write_qxfer)
9639         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
9640         (packet_command): Now methods of ...
9641         (remote_target): ... this class.
9642         (m_remote_state) <remote_target>: New field.
9643         (struct remote_state) <stop_reply_queue,
9644         remote_async_inferior_event_token, wait_forever_enabled_p>: New
9645         fields.
9646         (remote_state::remote_state): Allocate stop_reply_queue.
9647         (remote_state): Delete global.
9648         (get_remote_state_raw): Delete.
9649         (remote_target::get_remote_state): Allocate m_remote_state on
9650         demand.
9651         (get_current_remote_target): New.
9652         (remote_ops, extended_remote_ops): Delete.
9653         (wait_forever_enabled_p, remote_async_inferior_event_token):
9654         Delete, moved to struct remote_state.
9655         (remote_target::close): Delete self.  Destruction bits split to
9656         ...
9657         (remote_target::~remote_target): ... this.
9658         (show_memory_packet_size): Adjust to use
9659         get_current_remote_target.
9660         (struct protocol_feature) <func>: Add remote_target parameter.
9661         All callers adjusted.
9662         (curr_quit_handler_target): New.
9663         (remote_serial_quit_handler): Reimplement.
9664         (remote_target::open_1): Adjust to use get_current_remote_target.
9665         Heap-allocate remote_target/extended_remote_target instances.
9666         (vcont_builder::vcont_builder): Add remote_target parameter, and
9667         save it in m_remote.  All callers adjusted.
9668         (vcont_builder::m_remote): New field.
9669         (vcont_builder::restart, vcont_builder::flush)
9670         (vcont_builder::push_action): Use it.
9671         (remote_target::commit_resume): Use it.
9672         (struct queue_iter_param) <remote>: New field.
9673         (remote_target::remove_new_fork_children): Fill in 'remote' field.
9674         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
9675         (check_pending_event_prevents_wildcard_vcont_callback)
9676         (remote_target::check_pending_events_prevent_wildcard_vcont)
9677         (remote_target::discard_pending_stop_replies)
9678         (remote_target::discard_pending_stop_replies_in_queue)
9679         (remote_target::remote_notif_remove_queued_reply): Fill in
9680         'remote' field.
9681         (remote_notif_get_pending_events): New.
9682         (remote_target::readchar, remote_target::remote_serial_write):
9683         Save/restore curr_quit_handler_target.
9684         (putpkt): New.
9685         (kill_new_fork_children): Fill in 'remote' field.
9686         (packet_command): Use get_current_remote_target, defer to
9687         remote_target method of same name.
9688         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
9689         parameter, and save it in m_remote.  All callers adjusted.
9690         (scoped_remote_fd::release): Use m_remote.
9691         (scoped_remote_fd::m_remote): New field.
9692         (remote_file_put, remote_file_get, remote_file_delete): Use
9693         get_current_remote_target, defer to remote_target method of same
9694         name.
9695         (remote_btrace_reset): Add remote_state paremeter.  Update all
9696         callers.
9697         (remote_async_inferior_event_handler). Pass down 'data'.
9698         (remote_new_objfile): Use get_current_remote_target.
9699         (remote_target::vcont_r_supported): New.
9700         (set_range_stepping): Use get_current_remote_target and
9701         remote_target::vcont_r_supported.
9702         (_initialize_remote): Don't allocate 'remote_state' and
9703         'stop_reply_queue' globals.
9704         * remote.h (struct remote_target): Forward declare.
9705         (getpkt, putpkt, remote_notif_get_pending_events): Add
9706         'remote_target' parameter.
9707
9708 2018-05-22  Pedro Alves  <palves@redhat.com>
9709
9710         * remote.c (vcont_builder): Now a class.  Make all data members
9711         private.
9712         (vcont_builder) <vcont_builder, restart, flush, push_action>:
9713         Declare methods.
9714         (vcont_builder_restart): Rename to ...
9715         (vcont_builder::restart): ... this.
9716         (vcont_builder_flush): Rename to ...
9717         (vcont_builder::flush): ... this.
9718         (vcont_builder_push_action): Rename to ...
9719         (vcont_builder::push_action): ... this.
9720         (remote_target::commit_resume): Adjust.
9721
9722 2018-05-22  Pedro Alves  <palves@redhat.com>
9723
9724         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
9725         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
9726         (get_fixed_memory_packet_size): New.
9727         (get_memory_packet_size): Use it.
9728         (set_memory_packet_size): Don't override the config size with
9729         DEFAULT_MAX_MEMORY_PACKET_SIZE.
9730         (show_memory_packet_size): Use get_fixed_memory_packet_size.
9731         Don't refer to get_memory_packet_size if not connected to a remote
9732         target.  Show "(default)" if configured size is 0.
9733
9734 2018-05-22  Pedro Alves  <palves@redhat.com>
9735
9736         * remote.c (remote_target::mourn_inferior): Move
9737         discard_pending_stop_replies call here from ...
9738         (_initialize_remote): ... here.
9739
9740 2018-05-22  Pedro Alves  <palves@redhat.com>
9741
9742         * remote.c (compare_section_command): Remove set_general_process
9743         call.
9744
9745 2018-05-22  Pedro Alves  <palves@redhat.com>
9746
9747         * remote.c (struct packet_reg, struct remote_arch_state):
9748         Move higher up in the file.
9749         (remote_state) <m_arch_states>: Store remote_arch_state values
9750         instead of remote_arch_state pointers.
9751         (remote_state::get_remote_arch_state): Adjust.
9752
9753 2018-05-22  Pedro Alves  <palves@redhat.com>
9754
9755         * remote.c: Include <unordered_map>.
9756         (remote_state): Now a class.
9757         (remote_state) <get_remote_arch_state>: Declare method.
9758         <get_remote_arch_state>: New field.
9759         (remote_arch_state) <remote_arch_state>: Declare ctor.
9760         <regs>: Now a unique_ptr.
9761         (remote_gdbarch_data_handle): Delete.
9762         (get_remote_arch_state): Delete.
9763         (remote_state::get_remote_arch_state): New.
9764         (get_remote_state): Adjust to call remote_state's
9765         get_remote_arch_state method.
9766         (init_remote_state): Delete, bits factored out to ...
9767         (remote_arch_state::remote_arch_state): ... this new method.
9768         (get_remote_packet_size, get_memory_packet_size)
9769         (process_g_packet, remote_target::fetch_registers)
9770         (remote_target::prepare_to_store, store_registers_using_G)
9771         (remote_target::store_registers, remote_target::get_trace_status):
9772         Adjust to call remote_state's method.
9773         (_initialize_remote): Remove reference to
9774         remote_gdbarch_data_handle.
9775
9776 2018-05-22  Pedro Alves  <palves@redhat.com>
9777
9778         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
9779         pread>: New method declarations.
9780         (remote_target::open_1): Adjust.
9781         (readahead_cache_invalidate): Rename to ...
9782         (readahead_cache::invalidate): ... this, and adjust to be a class
9783         method.
9784         (readahead_cache_invalidate_fd): Rename to ...
9785         (readahead_cache::invalidate_fd): ... this, and adjust to be a
9786         class method.
9787         (remote_hostio_pwrite): Adjust.
9788         (remote_hostio_pread_from_cache): Rename to ...
9789         (readahead_cache::pread): ... this, and adjust to be a class
9790         method.
9791         (remote_hostio_close): Adjust.
9792
9793 2018-05-22  Pedro Alves  <palves@redhat.com>
9794
9795         * remote.c (remote_hostio_close_cleanup): Delete.
9796         (class scoped_remote_fd): New.
9797         (remote_file_put, remote_file_get): Use it.
9798
9799 2018-05-22  Pedro Alves  <palves@redhat.com>
9800
9801         (struct vCont_action_support): Use bool and initialize all fields.
9802         (struct readahead_cache): Initialize all fields.
9803         (remote_state): Use bool and initialize all fields.
9804         (remote_state::remote_state, remote_state::~remote_state): New.
9805         (new_remote_state): Delete.
9806         (_initialize_remote): Use new to allocate remote_state.
9807
9808 2018-05-22  Pedro Alves  <palves@redhat.com>
9809             張俊芝  <zjz@zjz.name>
9810
9811         PR gdb/22973
9812         * c-exp.y: Include "c-support.h".
9813         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
9814         of tolower.  Use c_ident_is_alpha to scan names.
9815         * c-lang.c: Include "c-support.h".
9816         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
9817         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
9818         * c-support.h: New file, with bits factored out from ...
9819         * cp-name-parser.y: ... this file.
9820         Include "c-support.h".
9821         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
9822         c-support.h and renamed.
9823         (symbol_end, yylex): Adjust.
9824
9825 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9826
9827         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
9828         parameter type to CORE_ADDR.
9829         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
9830         parameter type in declaration to CORE_ADDR.
9831         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
9832         target_auxv_search to get AT_HWCAP and use the result to get the
9833         target description.
9834         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
9835         to CORE_ADDR. Remove the cast of the return value to unsigned
9836         long. Fix error predicate of target_auxv_search.
9837         (ppc_linux_nat_target::read_description): Change the type of the
9838         hwcap variable to CORE_ADDR.
9839
9840 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9841
9842         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
9843         if the size of fpscr is larger than 32 bits.
9844
9845 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9846
9847         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
9848         (ppc32_linux_vsxregmap): New global.
9849         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
9850         regcache_supply_regset, and regcache_collect_regset.
9851         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
9852         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
9853         (fetch_vsx_register, store_vsx_register): Remove.
9854         (fetch_vsx_registers): Add regno parameter. Get regset using
9855         ppc_linux_vsxregset. Use regset to supply registers.
9856         (store_vsx_registers): Add regno parameter. Get regset using
9857         ppc_linux_vsxregset. Use regset to collect registers.
9858         (fetch_register): Call fetch_vsx_registers instead of
9859         fetch_vsx_register.
9860         (store_register): Call store_vsx_registers instead of
9861         store_vsx_register.
9862         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
9863         new regno parameter.
9864         (store_ppc_registers): Call store_vsx_registers with -1 for the
9865         new regno parameter.
9866         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
9867         (ppc_collect_vsxregset): Remove.
9868
9869 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9870
9871         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
9872         offset fields.
9873         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
9874         for vector register offset fields.
9875         (ppc64_fbsd_reg_offsets): Likewise.
9876         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9877         to vector register offset fields.
9878         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9879         to vector register offset fields.
9880         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
9881         vector register offset fields.
9882         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
9883         initializers for vector register offset fields.
9884         (rs6000_aix64_reg_offsets): Likewise.
9885         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
9886         (ppc_supply_vrregset): Remove.
9887         (ppc_collect_vrregset): Remove.
9888         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
9889         (ppc_linux_vrregset) : New function.
9890         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
9891         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
9892         (ppc32_linux_vrregset): Remove.
9893         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
9894         and use result instead of ppc32_linux_vrregset.
9895         (ppc32_linux_reg_offsets): Remove initializers for vector register
9896         offset fields.
9897         (ppc64_linux_reg_offsets): Likewise.
9898         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
9899         * ppc-linux-nat.c: Include regset.h.
9900         (gdb_vrregset_t): Adjust comment to account for little-endian
9901         mode.
9902         (supply_vrregset, fill_vrregset): Remove.
9903         (fetch_altivec_register, store_altivec_register): Remove.
9904         (fetch_altivec_registers): Add regno parameter. Get regset using
9905         ppc_linux_vrregset. Use regset to supply registers.
9906         (store_altivec_registers): Add regno parameter. Get regset using
9907         ppc_linux_vrregset. Use regset to collect registers.
9908         (fetch_register): Call fetch_altivec_registers instead of
9909         fetch_altivec_register.
9910         (store_register): Call store_altivec_registers instead of
9911         store_altivec_register.
9912         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
9913         the new regno parameter.
9914         (store_ppc_registers): Call store_altivec_registers with -1 for
9915         the new regno parameter.
9916
9917 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9918
9919         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
9920         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
9921         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
9922         (gdb_vrregset_t): Change array type size to
9923         PPC_LINUX_SIZEOF_VRREGSET.
9924         (gdb_vsxregset_t): Change array type size to
9925         PPC_LINUX_SIZEOF_VSXREGSET.
9926         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
9927         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
9928         PPC_LINUX_SIZEOF_VSXREGSET.
9929
9930 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9931
9932         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
9933         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
9934         nat/ppc-linux.c.
9935         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
9936         ppc_linux_target_wordsize with tid.
9937         (ppc_linux_nat_target::read_description): Call ppc_linux_target
9938         wordsize with tid.
9939         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
9940         (ppc64_64bit_inferior_p): Add static and inline specifiers.
9941         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
9942         tid parameter. Remove static specifier.
9943         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
9944         (ppc_linux_target_wordsize): New declaration.
9945
9946 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9947
9948         * arch/ppc-linux-common.c: New file.
9949         * arch/ppc-linux-common.h: New file.
9950         * arch/ppc-linux-tdesc.h: New file.
9951         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
9952         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
9953         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
9954         arch/ppc-linux-tdesc.h.
9955         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
9956         arch/ppc-linux-tdesc.h.
9957         (ppc_linux_nat_target::read_description): Remove target
9958         description matching code. Fill a ppc_linux_features struct and
9959         call ppc_linux_match_description with it. Move comment about ISA
9960         2.05 to ppc-linux-common.c.
9961         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
9962         arch/ppc-linux-tdesc.h.
9963         (ppc_linux_core_read_description): Remove target description
9964         matching code. Fill a ppc_linux_features struct and call
9965         ppc_linux_match_description with it.
9966         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
9967         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
9968         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
9969         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
9970         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
9971         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
9972         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
9973         (tdesc_powerpc_e500l): Remove.
9974
9975 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
9976
9977         * ada-lang.c (catch_assert_command): Pass empty string instead
9978         of NULL for excep_string argument.
9979
9980 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9981
9982         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
9983         the width of the requested register exceeds the width of the
9984         `ptrace' data type.
9985
9986 2018-05-21  Tom Tromey  <tom@tromey.com>
9987
9988         * printcmd.c (output_command): Remove.
9989         (output_command_const): Rename to output_command.
9990         * valprint.h (output_command): Rename from output_command_const.
9991         * tracepoint.c (trace_dump_actions): Call output_command.
9992
9993 2018-05-21  Tom Tromey  <tom@tromey.com>
9994
9995         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
9996         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
9997         * ada-lang.h (create_ada_exception_catchpoint): Update.
9998         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
9999         std::string.
10000         (create_excep_cond_exprs, ~ada_catchpoint)
10001         (should_stop_exception, print_one_exception)
10002         (print_mention_exception, print_recreate_exception): Update.
10003         (ada_get_next_arg): Remove.
10004         (catch_ada_exception_command_split): Use std::string.  Change type
10005         of "excep_string", "cond_string".
10006         (catch_ada_exception_command): Update.
10007         (create_ada_exception_catchpoint): Change type of excep_string.
10008         (ada_exception_sal): Remove excep_string parameter.
10009         (~ada_catchpoint): Remove.
10010
10011 2018-05-21  Tom Tromey  <tom@tromey.com>
10012
10013         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
10014         cleanup.
10015
10016 2018-05-21  Tom Tromey  <tom@tromey.com>
10017
10018         * ada-lang.c (ada_exception_message_1, ada_exception_message):
10019         Return unique_xmalloc_ptr.
10020         (print_it_exception): Update.
10021
10022 2018-05-21  Tom Tromey  <tom@tromey.com>
10023
10024         * tracepoint.c (trace_dump_actions): Use std::string.
10025
10026 2018-05-21  Tom Tromey  <tom@tromey.com>
10027
10028         * symfile.c (reread_symbols): Use std::string for original_name.
10029
10030 2018-05-21  Tom Tromey  <tom@tromey.com>
10031
10032         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
10033         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
10034         constructor.
10035
10036 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
10037
10038         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
10039         instance to...
10040         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
10041         * objfiles.c (get_objfile_bfd_data): Allocate
10042         objfile_per_bfd_storage with obstack_new when allocating on
10043         obstack.
10044
10045 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
10046
10047         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
10048         OBSTACK_ZALLOC.
10049         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
10050         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
10051         * mdebugread.c (mdebug_build_psymtabs): Likewise.
10052         (add_pending): Likewise.
10053         (parse_symbol): Likewise.
10054         (parse_partial_symbols): Likewise.
10055         (psymtab_to_symtab_1): Likewise.
10056         (new_psymtab): Likewise.
10057         (elfmdebug_build_psymtabs): Likewise.
10058         * minsyms.c (terminate_minimal_symbol_table): Likewise.
10059         * objfiles.c (get_objfile_bfd_data): Likewise.
10060         (objfile_register_static_link): Likewise.
10061         * psymtab.c (allocate_psymtab): Likewise.
10062         * stabsread.c (read_member_functions): Likewise.
10063         * xcoffread.c (xcoff_end_psymtab): Likewise.
10064
10065 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
10066
10067         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
10068         compiler supports std::is_trivially_constructible.
10069         * common/poison.h: Include obstack.h.
10070         (IsMallocable): Define to is_trivially_constructible if the
10071         compiler supports it, define to true_type otherwise.
10072         (xobnew): New.
10073         (XOBNEW): Redefine.
10074         (xobnewvec): New.
10075         (XOBNEWVEC): Redefine.
10076         * gdb_obstack.h (obstack_zalloc): New.
10077         (OBSTACK_ZALLOC): Redefine.
10078         (obstack_calloc): New.
10079         (OBSTACK_CALLOC): Redefine.
10080         (obstack_new): New.
10081         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
10082         (gdbarch_obstack): New declaration in gdbarch.h, definition in
10083         gdbarch.c.
10084         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
10085         obstack_calloc/obstack_zalloc.
10086         (gdbarch_obstack_zalloc): Remove.
10087         * target-descriptions.c (tdesc_data_init): Use obstack_new.
10088
10089 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10090
10091         * stack.c (backtrace_command_1): Remove useless variable int i.
10092
10093 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10094
10095         * stack.c (print_frame_info): Fix comment.
10096
10097 2018-05-18  Tom Tromey  <tom@tromey.com>
10098
10099         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
10100         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
10101         (~dwarf2_per_objfile): Update
10102         (dwarf2_get_dwz_file): Use new.
10103         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
10104         unique_ptr.
10105
10106 2018-05-18  Tom Tromey  <tom@tromey.com>
10107
10108         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
10109         unique_ptr.
10110         * dwarf2read.c (struct dwp_file): Add constructor and
10111         initializers.
10112         (open_and_init_dwp_file): Return a unique_ptr.
10113         (dwarf2_per_objfile, create_dwp_hash_table)
10114         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
10115         (lookup_dwo_unit_in_dwp): Update.
10116         (open_and_init_dwp_file, get_dwp_file): Update.
10117
10118 2018-05-18  Tom Tromey  <tom@tromey.com>
10119
10120         * dwarf2read.c (dwarf2_per_objfile): Update.
10121         (struct mapped_index): Add initializers.
10122         (dwarf2_read_index): Use new.
10123         (dw2_symtab_iter_init): Update.
10124         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
10125         unique_ptr.
10126
10127 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
10128
10129         * dwarf2read.c (mapped_index) <total_size>: Remove.
10130
10131 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
10132
10133         * unittests/format_pieces-selftests.c (test_format_specifier):
10134         Add ARI comments.
10135
10136 2018-05-18  Tom Tromey  <tom@tromey.com>
10137
10138         * c-typeprint.c (maybe_print_hole): New function.
10139         (c_print_type_struct_field_offset): Update.
10140         (c_type_print_base_struct_union): Call maybe_print_hole.
10141
10142 2018-05-17  Keith Seitz  <keiths@redhat.com>
10143
10144         * breakpoint.c (build_bpstat_chain): New function, moved from
10145         bpstat_stop_status.
10146         (bpstat_stop_status): Add optional parameter, `stop_chain'.
10147         If no stop chain is passed, call build_bpstat_chain to build it.
10148         * breakpoint.h (build_bpstat_chain): Declare.
10149         (bpstat_stop_status): Move documentation here from breakpoint.c.
10150         * infrun.c (handle_signal_stop): Before eliding inlined frames,
10151         build the stop chain and pass it to skip_inline_frames.
10152         Pass this stop chain to bpstat_stop_status.
10153         * inline-frame.c: Include breakpoint.h.
10154         (stopped_by_user_bp_inline_frame): New function.
10155         (skip_inline_frames): Add parameter `stop_chain'.
10156         Move documention to inline-frame.h.
10157         If non-NULL, use stopped_by_user_bp_inline_frame to determine
10158         whether the frame should be elided.
10159         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
10160         Add moved documentation and update for new parameter.
10161
10162 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
10163
10164         PR cli/14975
10165         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10166         unittests/format_pieces-selftests.c.
10167         * common/format.h (format_piece) <operator==>: New.
10168         (format_pieces) <operator[]>: Remove.
10169         * common/format.c (format_pieces::format_pieces): Handle \e.
10170         * unittests/format_pieces-selftests.c: New.
10171
10172 2018-05-17  Tom Tromey  <tom@tromey.com>
10173
10174         PR symtab/23010:
10175         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
10176         (dw2_instantiate_symtab): Add skip_partial parameter.
10177         (dw2_find_last_source_symtab, dw2_map_expand_apply)
10178         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
10179         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
10180         (dw2_expand_symtabs_matching_one)
10181         (dw2_find_pc_sect_compunit_symtab)
10182         (dw2_debug_names_lookup_symbol)
10183         (dw2_debug_names_expand_symtabs_for_function): Update.
10184         (init_cutu_and_read_dies): Add skip_partial parameter.
10185         (process_psymtab_comp_unit, build_type_psymtabs_1)
10186         (process_skeletonless_type_unit, load_partial_comp_unit)
10187         (psymtab_to_symtab_1): Update.
10188         (load_full_comp_unit): Add skip_partial parameter.
10189         (process_imported_unit_die, dwarf2_read_addr_index)
10190         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
10191         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
10192         (read_signatured_type): Update.
10193
10194 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
10195
10196         * value.c (release_value): Remove unused variable.
10197         (record_latest_value): Likewise.
10198         (access_value_history): Likewise.
10199         (preserve_values): Likewise.
10200
10201 2018-05-17  Tom Tromey  <tom@tromey.com>
10202
10203         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
10204         Initialize.
10205
10206 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
10207
10208         PR gdb/22286
10209         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
10210         Also handle registers whose width is not a multiple of
10211         PTRACE_TYPE_RET.
10212         (linux_nat_trad_target::store_register): Likewise.
10213
10214 2018-05-16  Tom Tromey  <tom@tromey.com>
10215
10216         * gdbcore.h (core_bfd): Redefine.
10217         * corelow.c (core_target::close): Update.
10218         (core_target_open): Update.
10219         * progspace.h (struct program_space) <cbfd>: Now a
10220         gdb_bfd_ref_ptr.
10221
10222 2018-05-16  Tom Tromey  <tom@tromey.com>
10223
10224         PR cli/19551:
10225         * symfile-add-flags.h (enum symfile_add_flags)
10226         <SYMFILE_NOT_FILENAME>: New constant.
10227         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
10228         objfile name from BFD.
10229         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
10230         * minidebug.c (find_separate_debug_file_in_section): Put
10231         ".gnu_debugdata" into BFD's file name.
10232
10233 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
10234
10235         * regcache.c (regcache_read_ftype, regcache_write_ftype):
10236         Remove.
10237
10238 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
10239
10240         PR binutils/21446
10241         * aarch64-tdep.c (aarch64_analyze_prologue,
10242         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
10243         Indicate not interested in errors.
10244
10245 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
10246
10247         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
10248         Supply the MIPS_ZERO_REGNUM register.
10249
10250 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
10251
10252         * mips-tdep.c (mask_address_var): Make variable static.
10253
10254 2018-05-14  Tom Tromey  <tom@tromey.com>
10255
10256         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
10257
10258 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
10259
10260         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
10261         FXSAVE_ADDR for the mxcsr register.
10262
10263 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
10264
10265         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
10266
10267 2018-05-11  Pedro Alves  <palves@redhat.com>
10268
10269         * corelow.c (core_target) <core_target>: No longer inline.
10270         Initialize m_core_gdbarch, m_core_vec and build the section table
10271         here.
10272         <~core_target>: New.
10273         <core_gdbarch, get_core_register_section>: New methods.
10274         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
10275         factored out from ...
10276         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
10277         (core_ops): Delete.
10278         (sniff_core_bfd): Add gdbarch parameter.
10279         (core_close): Delete, merged into ...
10280         (core_target::close): ... here.  Delete self.
10281         (core_close_cleanup): Delete.
10282         (core_target_open): Allocate a core_target on the heap.  Use a
10283         unique_ptr instead of a cleanup.  Bits moved into the core_target
10284         ctor.  Adjust to use core_target methods instead of globals.
10285         (get_core_register_section): Rename to ...
10286         (core_target::get_core_register_section): ... this and adjust.
10287         (struct get_core_registers_cb_data): New.
10288         (get_core_registers_cb): Use it.  Use bool.
10289         (core_target::fetch_registers, core_target::files_info)
10290         (core_target::xfer_partial, core_target::read_description)
10291         (core_target::pid_to, core_target::thread_name): Adjust to
10292         reference class fields instead of globals.
10293         * target.h (struct target_ops_deleter, target_ops_up): New.
10294
10295 2018-05-11  Pedro Alves  <palves@redhat.com>
10296
10297         * corefile.c (core_file_command): Move to corelow.c.
10298         * corelow.c (the_core_target): Delete.
10299         (core_file_command): Moved from corefile.c.  Check exec_bfd
10300         instead of the_core_target.  Use target_detach instead of calling
10301         into the_core_target directly.
10302         (maybe_say_no_core_file_now): New.
10303         (core_target::detach): Use it.
10304         (_initialize_corelow): Remove references to the_core_target.
10305         * gdbcore.h (the_core_target): Delete.
10306
10307 2018-05-11  Tom Tromey  <tromey@redhat.com>
10308             Pedro Alves  <palves@redhat.com>
10309
10310         * corefile.c (core_bfd): Remove.
10311         * gdbcore.h (core_bfd): Now a macro.
10312         * progspace.h (struct program_space) <cbfd>: New field.
10313
10314 2018-05-11  Tom Tromey  <tom@tromey.com>
10315
10316         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
10317         gdb::def_vector.
10318
10319 2018-05-10  Tom Tromey  <tom@tromey.com>
10320
10321         * configure: Rebuild.
10322         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
10323
10324 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
10325
10326         PR server/23158:
10327         * regformats/regdat.sh: Adjust script, following the addition
10328         of the new expedite_regs parameter to init_target_desc.
10329
10330 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
10331     
10332         PR gdb/23127
10333         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
10334         set_gdbarch_significant_addr_bit.
10335         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
10336         set_gdbarch_significant_addr_bit.
10337         * utils.c (address_significant): Update to sign extend addr.
10338
10339 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
10340
10341         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
10342         (xtensa_linux_init_abi): Limit tdep->num_regs by
10343         tdep->num_nopriv_regs.
10344         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
10345         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
10346         not initialized.
10347
10348 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
10349
10350         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
10351
10352 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
10353
10354         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
10355         (I387_MXCSR_INIT_VAL): New constant.
10356         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
10357         buffer if it was supplied by the inferior.
10358         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
10359         (i387_xsave_get_clear_bv): New function.
10360         (i387_supply_xsave): Only read x87 control registers from the
10361         xsave buffer if the feature is enabled, and the state will have
10362         been written, otherwise, provide a suitable default.
10363         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
10364         including x87 control registers.  Update control registers if they
10365         have changed from the default value, and mark features as enabled
10366         as required.
10367         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
10368
10369 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
10370
10371         * spu-tdep.c (info_spu_event_command): Fix output formatting.
10372
10373 2018-05-07  Tom Tromey  <tom@tromey.com>
10374
10375         * configure: Rebuild.
10376         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
10377
10378 2018-05-07  Tom Tromey  <tom@tromey.com>
10379
10380         PR tdep/20362:
10381         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
10382         bit.  Use correct value for VDIV.
10383
10384 2018-05-04  Tom Tromey  <tom@tromey.com>
10385
10386         * configure: Rebuild.
10387         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
10388
10389 2018-05-04  Tom Tromey  <tom@tromey.com>
10390
10391         * linux-record.c (record_linux_system_call) <case
10392         RECORD_SYS_RECVFROM>: Add "break".
10393
10394 2018-05-04  Tom Tromey  <tom@tromey.com>
10395
10396         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
10397         Add missing "break".
10398         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
10399         Add missing "break".
10400
10401 2018-05-04  Tom Tromey  <tom@tromey.com>
10402
10403         * rs6000-tdep.c (ppc_process_record_op4)
10404         (ppc_process_record_op63): Add fall-through comment.
10405
10406 2018-05-04  Tom Tromey  <tom@tromey.com>
10407
10408         * i386-tdep.c (i386_process_record): Add fall-through comment.
10409
10410 2018-05-04  Tom Tromey  <tom@tromey.com>
10411
10412         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
10413         comment.
10414
10415 2018-05-04  Tom Tromey  <tom@tromey.com>
10416
10417         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
10418         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
10419         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
10420         comment.
10421         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
10422         comment.
10423         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
10424         comment.
10425
10426 2018-05-04  Tom Tromey  <tom@tromey.com>
10427
10428         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
10429
10430 2018-05-04  Tom Tromey  <tom@tromey.com>
10431
10432         * s390-tdep.c (s390_process_record): Fix fall-through comments.
10433         * xcoffread.c (scan_xcoff_symtab): Move comment later.
10434         * symfile.c (section_is_mapped): Fix fall-through comment.
10435         * stabsread.c (define_symbol, read_member_functions): Fix
10436         fall-through comment.
10437         * s390-linux-tdep.c (s390_process_record): Fix fall-through
10438         comment.
10439         * remote.c (remote_wait_as): Fix fall-through comment.
10440         * p-exp.y (yylex): Fix fall-through comment.
10441         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
10442         comment.
10443         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
10444         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
10445         * jv-exp.y (yylex): Fix fall-through comment.
10446         * go-exp.y (lex_one_token): Fix fall-through comment.
10447         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
10448         fall-through comment.
10449         * f-exp.y (yylex): Fix fall-through comment.
10450         * dwarf2read.c (process_die): Fix fall-through comments.
10451         * dbxread.c (process_one_symbol): Fix fall-through comment.
10452         * d-exp.y (lex_one_token): Fix fall-through comment.
10453         * cp-name-parser.y (yylex): Fix fall-through comment.
10454         * coffread.c (coff_symtab_read): Fix fall-through comment.
10455         * c-exp.y (lex_one_token): Fix fall-through comment.
10456         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
10457         comment.
10458         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
10459         comment.
10460
10461 2018-05-04  Tom Tromey  <tom@tromey.com>
10462
10463         PR python/22730:
10464         * NEWS: Mention gdb.execute change.
10465         * gdbcmd.h (execute_control_command): Don't declare.
10466         * python/python.c (execute_gdb_command): Use read_command_lines_1,
10467         execute_control_commands, execute_control_commands_to_string.
10468         * cli/cli-script.h (execute_control_commands)
10469         (execute_control_commands_to_string): Declare.
10470         (execute_control_command): Add from_tty parameter.
10471         * cli/cli-script.c (execute_control_commands)
10472         (execute_control_commands_to_string): New functions.
10473         (execute_user_command): Use execute_control_commands.
10474         (execute_control_command_1): Add "from_tty" parameter.  Update.
10475         (execute_control_command): Likewise.
10476
10477 2018-05-04  Tom Tromey  <tom@tromey.com>
10478
10479         PR python/22731:
10480         * NEWS: Mention that breakpoint commands are writable.
10481         * python/py-breakpoint.c (bppy_set_commands): New function.
10482         (breakpoint_object_getset) <"commands">: Use it.
10483
10484 2018-05-04  Tom Tromey  <tom@tromey.com>
10485
10486         * tracepoint.c (actions_command): Update.
10487         * mi/mi-cmd-break.c (mi_command_line_array)
10488         (mi_command_line_array_cnt, mi_command_line_array_ptr)
10489         (mi_read_next_line): Remove.
10490         (mi_cmd_break_commands): Update.
10491         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
10492         function_view.
10493         * cli/cli-script.c (get_command_line): Update.
10494         (process_next_line): Use function_view.  Constify.
10495         (recurse_read_control_structure, read_command_lines)
10496         (read_command_lines_1): Change argument types to function_view.
10497         (do_define_command, document_command): Update.
10498         * breakpoint.h (check_tracepoint_command): Don't declare.
10499         * breakpoint.c (check_tracepoint_command): Remove.
10500         (commands_command_1, create_tracepoint_from_upload): Update.
10501
10502 2018-05-04  Tom Tromey  <tom@tromey.com>
10503
10504         PR gdb/11750:
10505         * cli/cli-script.h (enum command_control_type) <define_control>:
10506         New constant.
10507         * cli/cli-script.c (multi_line_command_p): Handle define_control.
10508         (build_command_line, execute_control_command_1)
10509         (process_next_line): Likewise.
10510         (do_define_command): New function, extracted from define_command.
10511         (define_command): Use it.
10512
10513 2018-05-04  Tom Tromey  <tom@tromey.com>
10514
10515         * tracepoint.c (actions_command): Update.
10516         * cli/cli-script.h (read_command_lines): Update.
10517         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
10518         (MAX_TMPBUF): Remove define.
10519         (define_command): Use string_printf.
10520         (document_command): Likewise.
10521         * breakpoint.c (commands_command_1): Update.
10522
10523 2018-05-04  Tom Tromey  <tom@tromey.com>
10524
10525         * top.c (execute_command): Update.
10526         * cli/cli-script.h (print_command_lines): Now varargs.
10527         * cli/cli-script.c (print_command_lines): Now varargs.
10528         (execute_control_command_1) <case while_control, case if_control>:
10529         Update.
10530
10531 2018-05-04  Tom Tromey  <tom@tromey.com>
10532
10533         * tracepoint.c (all_tracepoint_actions): Rename from
10534         all_tracepoint_actions_and_cleanup.  Change return type.
10535         (actions_command, encode_actions_1, encode_actions)
10536         (trace_dump_actions, tdump_command): Update.
10537         * remote.c (remote_download_command_source): Update.
10538         * python/python.c (gdbpy_eval_from_control_command)
10539         (python_command, python_interactive_command): Update.
10540         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
10541         * guile/guile.c (guile_command)
10542         (gdbscm_eval_from_control_command, guile_command): Update.
10543         * compile/compile.c (compile_code_command)
10544         (compile_print_command, compile_to_object): Update.
10545         * cli/cli-script.h (struct command_lines_deleter): New.
10546         (counted_command_line): New typedef.
10547         (struct command_line): Add constructor, destructor.
10548         <body_list>: Remove.
10549         <body_list_0, body_list_1>: New members.
10550         (command_line_up): Remove typedef.
10551         (read_command_lines, read_command_lines_1, get_command_line):
10552         Update.
10553         (copy_command_lines): Don't declare.
10554         * cli/cli-script.c (build_command_line): Use "new".
10555         (get_command_line): Return counted_command_line.
10556         (print_command_lines, execute_user_command)
10557         (execute_control_command_1, while_command, if_command): Update.
10558         (realloc_body_list): Remove.
10559         (process_next_line, recurse_read_control_structure): Update.
10560         (read_command_lines, read_command_lines_1): Return counted_command_line.
10561         (free_command_lines): Use "delete".
10562         (copy_command_lines): Remove.
10563         (define_command, document_command, show_user_1): Update.
10564         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
10565         a counted_command_line.
10566         * breakpoint.h (counted_command_line): Remove typedef.
10567         (breakpoint_set_commands): Update.
10568         * breakpoint.c (check_no_tracepoint_commands)
10569         (validate_commands_for_breakpoint): Update.
10570         (breakpoint_set_commands): Change commands to be a
10571         counted_command_line.
10572         (commands_command_1, update_dprintf_command_list)
10573         (create_tracepoint_from_upload): Update.
10574
10575 2018-05-04  Tom Tromey  <tom@tromey.com>
10576
10577         * cli/cli-decode.h (cmd_list_element): New constructor.
10578         (~cmd_list_element): New destructor.
10579         (struct cmd_list_element): Add initializers.
10580         * cli/cli-decode.c (do_add_cmd): Use "new".
10581         (delete_cmd): Use "delete".
10582
10583 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
10584             Pedro Alves <palves@redhat.com>
10585
10586         PR breakpoints/19806 and support for PR external/20207.
10587         * NEWS: Mention Aarch64 watchpoint improvements.
10588         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
10589         watchpoints and PR external/20207 watchpoints.
10590         * nat/aarch64-linux-hw-point.c
10591         (kernel_supports_any_contiguous_range): New.
10592         (aarch64_watchpoint_offset): New.
10593         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
10594         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
10595         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
10596         (aarch64_align_watchpoint): New parameters aligned_offset_p and
10597         next_addr_orig_p.  Support PR external/20207 watchpoints.
10598         (aarch64_downgrade_regs): New.
10599         (aarch64_dr_state_insert_one_point): New parameters offset and
10600         addr_orig.
10601         (aarch64_dr_state_remove_one_point): Likewise.
10602         (aarch64_handle_breakpoint): Update caller.
10603         (aarch64_handle_aligned_watchpoint): Likewise.
10604         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
10605         aligned_offset.
10606         (aarch64_linux_set_debug_regs): Remove const from state.  Call
10607         aarch64_downgrade_regs.
10608         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
10609         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
10610         (DR_CONTROL_MASK): ... this.
10611         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
10612         (unsigned int aarch64_watchpoint_offset): New prototype.
10613         (aarch64_linux_set_debug_regs): Remove const from state.
10614         * utils.c (align_up, align_down): Move to ...
10615         * common/common-utils.c (align_up, align_down): ... here.
10616         * utils.h (align_up, align_down): Move to ...
10617         * common/common-utils.h (align_up, align_down): ... here.
10618
10619 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
10620
10621         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
10622         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
10623         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
10624         Re-implement to match the ABI as summarized in GCC's
10625         gcc/config/sparc/sparc.c.  All callers updated.
10626         (sparc32_store_arguments): Remove assertion.
10627
10628 2018-05-04  Tom Tromey  <tom@tromey.com>
10629
10630         * printcmd.c: Don't include tui.h.
10631         (decode_format): Use skip_spaces.
10632
10633 2018-05-04  Tom Tromey  <tom@tromey.com>
10634
10635         PR gdb/22619:
10636         * printcmd.c (last_count): New global.
10637         (x_command): Use saved count when repeating.
10638
10639 2018-05-04  Tom Tromey  <tom@tromey.com>
10640
10641         * nto-procfs.c (do_closedir_cleanup): Remove.
10642         (procfs_pidlist): Use gdb_dir_up.
10643         * procfs.c (do_closedir_cleanup): Remove.
10644         (proc_update_threads): Use gdb_dir_up.
10645         * common/filestuff.h (struct gdb_dir_deleter): New.
10646         (gdb_dir_up): New typedef.
10647
10648 2018-05-04  Tom Tromey  <tom@tromey.com>
10649
10650         * ada-lang.c (print_mention_exception): Use std::string.
10651
10652 2018-05-04  Tom Tromey  <tom@tromey.com>
10653
10654         * ada-lang.c (create_excep_cond_exprs): Update.
10655         (ada_exception_catchpoint_cond_string): Use std::string.
10656
10657 2018-05-04  Tom Tromey  <tom@tromey.com>
10658
10659         * ada-lang.c (xget_renaming_scope): Return std::string.
10660         (old_renaming_is_invisible): Update.
10661
10662 2018-05-04  Tom Tromey  <tom@tromey.com>
10663
10664         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
10665         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
10666
10667 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
10668
10669         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
10670
10671 2018-05-04  Tom Tromey  <tom@tromey.com>
10672
10673         * remote.c (remote_query_supported_append): Change type.
10674         (remote_check_symbols): Update.
10675
10676 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
10677
10678         PR gdb/11420
10679         * configure.ac: Prepend libpython.
10680         * python/python-config.py: Likewise.
10681         * configure: Regenerate.
10682
10683 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
10684
10685         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
10686
10687 2018-05-03  Pedro Alves  <palves@redhat.com>
10688
10689         * s390-linux-nat.c
10690         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
10691         override.  Write 'true' instead of '1'.
10692         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
10693         declaration.
10694
10695 2018-05-02  Pedro Alves  <palves@redhat.com>
10696
10697         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
10698         add_inf_child_target.
10699         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
10700         add_inf_child_target.
10701         * aix-thread.c (aix_thread_target_info): New.
10702         (aix_thread_target) <shortname, longname, doc>: Delete.
10703         <info>: New.
10704         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
10705         add_inf_child_target.
10706         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
10707         add_inf_child_target.
10708         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
10709         add_inf_child_target.
10710         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
10711         add_inf_child_target.
10712         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
10713         add_inf_child_target.
10714         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
10715         add_inf_child_target.
10716         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
10717         add_inf_child_target.
10718         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
10719         add_inf_child_target.
10720         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
10721         add_inf_child_target.
10722         * bfd-target.c (target_bfd_target_info): New.
10723         (target_bfd) <shortname, longname, doc>: Delete.
10724         <info>: New.
10725         * bsd-kvm.c (bsd_kvm_target_info): New.
10726         (bsd_kvm_target) <shortname, longname, doc>: Delete.
10727         <info>: New.
10728         (bsd_kvm_target::open): Rename to ...
10729         (bsd_kvm_target_open): ... this.  Adjust.
10730         * bsd-uthread.c (bsd_uthread_target_info): New.
10731         (bsd_uthread_target) <shortname, longname, doc>: Delete.
10732         <info>: New.
10733         * corefile.c (core_file_command): Adjust.
10734         * corelow.c (core_target_info): New.
10735         (core_target) <shortname, longname, doc>: Delete.
10736         <info>: New.
10737         (core_target::open): Rename to ...
10738         (core_target_open): ... this.  Adjust.
10739         * ctf.c (ctf_target_info): New.
10740         (ctf_target) <shortname, longname, doc>: Delete.
10741         <info>: New.
10742         (ctf_target::open): Rename to ...
10743         (ctf_target_open): ... this.
10744         (_initialize_ctf): Adjust.
10745         * exec.c (exec_target_info): New.
10746         (exec_target) <shortname, longname, doc>: Delete.
10747         <info>: New.
10748         (exec_target::open): Rename to ...
10749         (exec_target_open): ... this.
10750         * gdbcore.h (core_target_open): Declare.
10751         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
10752         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
10753         add_inf_child_target.
10754         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
10755         add_inf_child_target.
10756         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
10757         add_inf_child_target.
10758         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
10759         add_inf_child_target.
10760         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
10761         add_inf_child_target.
10762         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
10763         add_inf_child_target.
10764         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
10765         add_inf_child_target.
10766         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
10767         add_inf_child_target.
10768         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
10769         add_inf_child_target.
10770         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
10771         add_inf_child_target.
10772         * inf-child.c (inf_child_target_info): New.
10773         (inf_child_target::info): New.
10774         (inf_child_open_target): Remove 'target' parameter.  Use
10775         get_native_target instead.
10776         (inf_child_target::open): Delete.
10777         (add_inf_child_target): New.
10778         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
10779         Delete.
10780         <info>: New.
10781         (add_inf_child_target): Declare.
10782         (inf_child_open_target): Declare.
10783         * linux-thread-db.c (thread_db_target_info): New.
10784         (thread_db_target) <shortname, longname, doc>: Delete.
10785         <info>: New.
10786         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
10787         add_inf_child_target.
10788         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
10789         add_inf_child_target.
10790         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
10791         add_inf_child_target.
10792         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
10793         add_inf_child_target.
10794         * make-target-delegates (print_class): Adjust.
10795         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
10796         add_inf_child_target.
10797         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
10798         add_inf_child_target.
10799         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
10800         add_inf_child_target.
10801         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
10802         add_inf_child_target.
10803         * nto-procfs.c (nto_native_target_info): New.
10804         (nto_procfs_target_native) <shortname, longname, doc>:
10805         Delete.
10806         <info>: New.
10807         (nto_procfs_target_info): New.
10808         (nto_procfs_target_procfs) <shortname, longname, doc>:
10809         Delete.
10810         <info>: New.
10811         (init_procfs_targets): Adjust.
10812         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
10813         add_inf_child_target.
10814         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
10815         add_inf_child_target.
10816         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
10817         add_inf_child_target.
10818         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
10819         add_inf_child_target.
10820         * ravenscar-thread.c (ravenscar_target_info): New.
10821         (ravenscar_thread_target) <shortname, longname, doc>:
10822         Delete.
10823         <info>: New.
10824         * record-btrace.c (record_btrace_target_info):
10825         (record_btrace_target) <shortname, longname, doc>: Delete.
10826         <info>: New.
10827         (record_btrace_target::open): Rename to ...
10828         (record_btrace_target_open): ... this.  Adjust.
10829         * record-full.c (record_longname, record_doc): New.
10830         (record_full_base_target) <shortname, longname, doc>: Delete.
10831         <info>: New.
10832         (record_full_target_info): New.
10833         (record_full_target): <shortname>: Delete.
10834         <info>: New.
10835         (record_full_core_open_1, record_full_open_1): Update comments.
10836         (record_full_base_target::open): Rename to ...
10837         (record_full_open): ... this.
10838         (cmd_record_full_restore): Update.
10839         (_initialize_record_full): Update.
10840         * remote-sim.c (remote_sim_target_info): New.
10841         (gdbsim_target) <shortname, longname, doc>: Delete.
10842         <info>: New.
10843         (gdbsim_target::open): Rename to ...
10844         (gdbsim_target_open): ... this.
10845         (_initialize_remote_sim): Adjust.
10846         * remote.c (remote_doc): New.
10847         (remote_target_info): New.
10848         (remote_target) <shortname, longname, doc>: Delete.
10849         <info>: New.
10850         (extended_remote_target_info): New.
10851         (extended_remote_target) <shortname, longname, doc>: Delete.
10852         <info>: New.
10853         (remote_target::open_1): Make static.  Adjust.
10854         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
10855         * s390-linux-nat.c (_initialize_s390_nat): Use
10856         add_inf_child_target.
10857         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
10858         add_inf_child_target.
10859         * sol-thread.c (thread_db_target_info): New.
10860         (sol_thread_target) <shortname, longname, doc>: Delete.
10861         <info>: New.
10862         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
10863         add_inf_child_target.
10864         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
10865         add_inf_child_target.
10866         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
10867         add_inf_child_target.
10868         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
10869         add_inf_child_target.
10870         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
10871         add_inf_child_target.
10872         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
10873         add_inf_child_target.
10874         * spu-linux-nat.c (_initialize_spu_nat): Use
10875         add_inf_child_target.
10876         * spu-multiarch.c (spu_multiarch_target_info): New.
10877         (spu_multiarch_target) <shortname, longname, doc>: Delete.
10878         <info>: New.
10879         * target-delegates.c: Regenerate.
10880         * target.c: Include <unordered_map>.
10881         (target_ops_p): Delete.
10882         (DEF_VEC_P(target_ops_p)): Delete.
10883         (target_factories): New.
10884         (test_target_info): New.
10885         (test_target_ops::info): New.
10886         (open_target): Adjust to use target_factories.
10887         (add_target_with_completer): Rename to ...
10888         (add_target): ... this.  Change prototype.  Register target_info
10889         and open callback in target_factories.  Register target_info in
10890         command context instead of target_ops.
10891         (add_target): Delete old implementation.
10892         (add_deprecated_target_alias): Change prototype.  Adjust.
10893         (the_native_target): New.
10894         (set_native_target, get_native_target): New.
10895         (find_default_run_target): Use the_native_target.
10896         (find_attach_target, find_run_target): Simplify.
10897         (target_ops::open): Delete.
10898         (dummy_target_info): New.
10899         (dummy_target::shortname, dummy_target::longname)
10900         (dummy_target::doc): Delete.
10901         (dummy_target::info): New.
10902         (debug_target::shortname, debug_target::longname)
10903         (debug_target::doc): Delete.
10904         (debug_target::info): New.
10905         * target.h (struct target_info): New.
10906         (target_ops::~target_ops): Add comment.
10907         (target_ops::info): New.
10908         (target_ops::shortname, target_ops::longname, target_ops::doc): No
10909         longer virtual.  Implement in terms of target_info.
10910         (set_native_target, get_native_target): Declare.
10911         (target_open_ftype): New.
10912         (add_target, add_target_with_completer)
10913         (add_deprecated_target_alias): Change prototype.
10914         (test_target) <shortname, longname, doc>: Delete.
10915         <info>: New.
10916         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
10917         add_inf_child_target.
10918         * tracefile-tfile.c (tfile_target_info): New.
10919         (tfile_target) <shortname, longname, doc>: Delete.
10920         <info>: New.
10921         (tfile_target::open): Rename to ...
10922         (tfile_target_open): ... this.
10923         (_initialize_tracefile_tfile): Adjust.
10924         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
10925         add_inf_child_target.
10926         * windows-nat.c (_initialize_windows_nat): Use
10927         add_inf_child_target.
10928         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
10929         add_inf_child_target.
10930
10931 2018-05-02  Pedro Alves  <palves@redhat.com>
10932
10933         * linux-nat.h (linux_nat_target) <low_new_thread,
10934         low_delete_thread, low_new_fork, low_forget_process,
10935         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
10936         New virtual methods.
10937         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10938         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
10939         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
10940         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10941         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
10942         Delete.
10943         * linux-fork.c (delete_fork): Adjust to call low method.
10944         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
10945         (linux_nat_new_fork, linux_nat_forget_process_hook)
10946         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
10947         (linux_nat_status_is_event):
10948         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
10949         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
10950         to call low method.
10951         (sigtrap_is_event): Rename to ...
10952         (linux_nat_target::low_status_is_event): ... this.
10953         (linux_nat_set_status_is_event): Delete.
10954         (save_stop_reason, linux_nat_wait_1)
10955         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
10956         low methods.
10957         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10958         (linux_nat_set_new_fork, linux_nat_set_forget_process)
10959         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10960         (linux_nat_set_prepare_to_resume): Delete.
10961         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
10962         low virtual methods.
10963         * amd64-linux-nat.c: Likewise.
10964         * arm-linux-nat.c: Likewise.
10965         * i386-linux-nat.c: Likewise.
10966         * ia64-linux-nat.c: Likewise.
10967         * mips-linux-nat.c: Likewise.
10968         * ppc-linux-nat.c: Likewise.
10969         * s390-linux-nat.c: Likewise.
10970         * sparc64-linux-nat.c: Likewise.
10971         * x86-linux-nat.c: Likewise.
10972         * x86-linux-nat.h: Include "nat/x86-linux.h".
10973         (x86_linux_nat_target) <low_new_fork, low_forget_process,
10974         low_prepare_to_resume, low_new_thread, low_delete_thread>:
10975         Override methods.
10976
10977 2018-05-02  Pedro Alves  <palves@redhat.com>
10978
10979         * target.h (target_ops)
10980         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
10981         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
10982         stopped_by_watchpoint, have_continuable_watchpoint,
10983         stopped_data_address, watchpoint_addr_within_range,
10984         can_accel_watchpoint_condition, can_run, thread_alive,
10985         has_all_memory, has_memory, has_stack, has_registers,
10986         has_execution, can_async_p, is_async_p, supports_non_stop,
10987         always_non_stop_p, can_execute_reverse, supports_multi_process,
10988         supports_enable_disable_tracepoint,
10989         supports_disable_randomization, supports_string_tracing,
10990         supports_evaluation_of_breakpoint_conditions,
10991         can_run_breakpoint_commands, filesystem_is_local,
10992         can_download_tracepoint, get_trace_state_variable_value,
10993         set_trace_notes, get_tib_address, use_agent, can_use_agent,
10994         record_is_replaying, record_will_replay,
10995         augmented_libraries_svr4_read>: Adjust to return bool.
10996         * aarch64-linux-nat.c: All implementations adjusted.
10997         * aix-thread.c: All implementations adjusted.
10998         * arm-linux-nat.c: All implementations adjusted.
10999         * breakpoint.c: All implementations adjusted.
11000         * bsd-kvm.c: All implementations adjusted.
11001         * bsd-uthread.c: All implementations adjusted.
11002         * corelow.c: All implementations adjusted.
11003         * ctf.c: All implementations adjusted.
11004         * darwin-nat.c: All implementations adjusted.
11005         * darwin-nat.h: All implementations adjusted.
11006         * exec.c: All implementations adjusted.
11007         * fbsd-nat.c: All implementations adjusted.
11008         * fbsd-nat.h: All implementations adjusted.
11009         * gnu-nat.c: All implementations adjusted.
11010         * gnu-nat.h: All implementations adjusted.
11011         * go32-nat.c: All implementations adjusted.
11012         * ia64-linux-nat.c: All implementations adjusted.
11013         * inf-child.c: All implementations adjusted.
11014         * inf-child.h: All implementations adjusted.
11015         * inf-ptrace.c: All implementations adjusted.
11016         * inf-ptrace.h: All implementations adjusted.
11017         * linux-nat.c: All implementations adjusted.
11018         * linux-nat.h: All implementations adjusted.
11019         * mips-linux-nat.c: All implementations adjusted.
11020         * nto-procfs.c: All implementations adjusted.
11021         * ppc-linux-nat.c: All implementations adjusted.
11022         * procfs.c: All implementations adjusted.
11023         * ravenscar-thread.c: All implementations adjusted.
11024         * record-btrace.c: All implementations adjusted.
11025         * record-full.c: All implementations adjusted.
11026         * remote-sim.c: All implementations adjusted.
11027         * remote.c: All implementations adjusted.
11028         * s390-linux-nat.c: All implementations adjusted.
11029         * sol-thread.c: All implementations adjusted.
11030         * spu-multiarch.c: All implementations adjusted.
11031         * target-delegates.c: All implementations adjusted.
11032         * target.c: All implementations adjusted.
11033         * target.h: All implementations adjusted.
11034         * tracefile-tfile.c: All implementations adjusted.
11035         * tracefile.c: All implementations adjusted.
11036         * tracefile.h: All implementations adjusted.
11037         * windows-nat.c: All implementations adjusted.
11038         * x86-linux-nat.h: All implementations adjusted.
11039         * x86-nat.h: All implementations adjusted.
11040
11041 2018-05-02  Pedro Alves  <palves@redhat.com>
11042
11043         * make-target-delegates (scan_target_h): Don't trim lines here.
11044         Replace sequences of tabs and/or whitespace with a single
11045         whitespace.
11046         (top level, parsing methods): Trim each line before processing it
11047         here.
11048
11049 2018-05-02  Pedro Alves  <palves@redhat.com>
11050             John Baldwin  <jhb@freebsd.org>
11051
11052         * target.h (enum strata) <debug_stratum>: New.
11053         (struct target_ops) <all delegation methods>: Replace by C++
11054         virtual methods, and drop "to_" prefix.  All references updated
11055         throughout.
11056         <to_shortname, to_longname, to_doc, to_data,
11057         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
11058         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
11059         virtual methods.  All references updated throughout.
11060         <can_attach, supports_terminal_ours, can_create_inferior,
11061         get_thread_control_capabilities, attach_no_wait>: New
11062         virtual methods.
11063         <insert_breakpoint, remove_breakpoint>: Now
11064         TARGET_DEFAULT_NORETURN methods.
11065         <info_proc>: Now returns bool.
11066         <to_magic>: Delete.
11067         (OPS_MAGIC): Delete.
11068         (current_target): Delete.  All references replaced by references
11069         to ...
11070         (target_stack): ... this.  New.
11071         (target_shortname, target_longname): Adjust.
11072         (target_can_run): Now a function declaration.
11073         (default_child_has_all_memory, default_child_has_memory)
11074         (default_child_has_stack, default_child_has_registers)
11075         (default_child_has_execution): Remove target_ops parameter.
11076         (complete_target_initialization): Delete.
11077         (memory_breakpoint_target): New template class.
11078         (test_target_ops): Refactor as a C++ class with virtual methods.
11079         * make-target-delegates (NAME_PART): Tighten.
11080         (POINTER_PART, CP_SYMBOL): New.
11081         (SIMPLE_RETURN_PART): Reimplement.
11082         (VEC_RETURN_PART): Expect less.
11083         (RETURN_PART, VIRTUAL_PART): New.
11084         (METHOD): Adjust to C++ virtual methods.
11085         (scan_target_h): Remove reference to C99.
11086         (dname): Output "target_ops::" prefix.
11087         (write_function_header): Adjust to output a C++ class method.
11088         (write_declaration): New.
11089         (write_delegator): Adjust to output a C++ class method.
11090         (tdname): Output "dummy_target::" prefix.
11091         (write_tdefault, write_debugmethod): Adjust to output a C++ class
11092         method.
11093         (tdefault_names, debug_names): Delete.
11094         (return_types, tdefaults, styles, argtypes_array): New.
11095         (top level): All methods are delegators.
11096         (print_class): New.
11097         (top level): Print dummy_target and debug_target classes.
11098         * target-delegates.c: Regenerate.
11099         * target-debug.h (target_debug_print_enum_info_proc_what)
11100         (target_debug_print_thread_control_capabilities)
11101         (target_debug_print_thread_info_p): New.
11102         * target.c (dummy_target): Delete.
11103         (the_dummy_target, the_debug_target): New.
11104         (target_stack): Now extern.
11105         (set_targetdebug): Push/unpush debug target.
11106         (default_child_has_all_memory, default_child_has_memory)
11107         (default_child_has_stack, default_child_has_registers)
11108         (default_child_has_execution): Remove target_ops parameter.
11109         (complete_target_initialization): Delete.
11110         (add_target_with_completer): No longer call
11111         complete_target_initialization.
11112         (target_supports_terminal_ours): Use regular delegation.
11113         (update_current_target): Delete.
11114         (push_target): No longer check magic number.  Don't call
11115         update_current_target.
11116         (unpush_target): Don't call update_current_target.
11117         (target_is_pushed): No longer check magic number.
11118         (target_require_runnable): Skip for all stratums over
11119         process_stratum.
11120         (target_ops::info_proc): New.
11121         (target_info_proc): Use find_target_at and
11122         find_default_run_target.
11123         (target_supports_disable_randomization): Use regular delegation.
11124         (target_get_osdata): Use find_target_at.
11125         (target_ops::open, target_ops::close, target_ops::can_attach)
11126         (target_ops::attach, target_ops::can_create_inferior)
11127         (target_ops::create_inferior, target_ops::can_run)
11128         (target_can_run): New.
11129         (default_fileio_target): Use regular delegation.
11130         (target_ops::fileio_open, target_ops::fileio_pwrite)
11131         (target_ops::fileio_pread, target_ops::fileio_fstat)
11132         (target_ops::fileio_close, target_ops::fileio_unlink)
11133         (target_ops::fileio_readlink): New.
11134         (target_fileio_open_1, target_fileio_unlink)
11135         (target_fileio_readlink): Always call the target method.  Handle
11136         FILEIO_ENOSYS.
11137         (return_zero, return_zero_has_execution): Delete.
11138         (init_dummy_target): Delete.
11139         (dummy_target::dummy_target, dummy_target::shortname)
11140         (dummy_target::longname, dummy_target::doc)
11141         (debug_target::debug_target, debug_target::shortname)
11142         (debug_target::longname, debug_target::doc): New.
11143         (target_supports_delete_record): Use regular delegation.
11144         (setup_target_debug): Delete.
11145         (maintenance_print_target_stack): Skip debug_stratum.
11146         (initialize_targets): Instantiate the_dummy_target and
11147         the_debug_target.
11148         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
11149         use target_stack.
11150         (target_auxv_search, fprint_target_auxv): Adjust.
11151         (info_auxv_command): Adjust to use target_stack.
11152         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
11153         * exceptions.c (print_flush): Handle a NULL target_stack.
11154         * regcache.c (target_ops_no_register): Refactor as class with
11155         virtual methods.
11156
11157         * exec.c (exec_target): New class.
11158         (exec_ops): Now an exec_target.
11159         (exec_open, exec_close_1, exec_get_section_table)
11160         (exec_xfer_partial, exec_files_info, exec_has_memory)
11161         (exec_make_note_section): Refactor as exec_target methods.
11162         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
11163         Delete.
11164         (exec_target::find_memory_regions): New.
11165         (_initialize_exec): Don't call init_exec_ops.
11166         * gdbcore.h (exec_file_clear): Delete.
11167
11168         * corefile.c (core_target): Delete.
11169         (core_file_command): Adjust.
11170         * corelow.c (core_target): New class.
11171         (the_core_target): New.
11172         (core_close): Remove target_ops parameter.
11173         (core_close_cleanup): Adjust.
11174         (core_target::close): New.
11175         (core_open, core_detach, get_core_registers, core_files_info)
11176         (core_xfer_partial, core_thread_alive, core_read_description)
11177         (core_pid_to_str, core_thread_name, core_has_memory)
11178         (core_has_stack, core_has_registers, core_info_proc): Rework as
11179         core_target methods.
11180         (ignore, core_remove_breakpoint, init_core_ops): Delete.
11181         (_initialize_corelow): Initialize the_core_target.
11182         * gdbcore.h (core_target): Delete.
11183         (the_core_target): New.
11184
11185         * ctf.c: (ctf_target): New class.
11186         (ctf_ops): Now a ctf_target.
11187         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
11188         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
11189         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
11190         methods.
11191         (init_ctf_ops): Delete.
11192         (_initialize_ctf): Don't call it.
11193         * tracefile-tfile.c (tfile_target): New class.
11194         (tfile_ops): Now a tfile_target.
11195         (tfile_open, tfile_close, tfile_files_info)
11196         (tfile_get_tracepoint_status, tfile_trace_find)
11197         (tfile_fetch_registers, tfile_xfer_partial)
11198         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
11199         Refactor as tfile_target methods.
11200         (tfile_xfer_partial_features): Remove target_ops parameter.
11201         (init_tfile_ops): Delete.
11202         (_initialize_tracefile_tfile): Don't call it.
11203         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
11204         (tracefile_has_stack, tracefile_has_registers)
11205         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
11206         tracefile_target methods.
11207         (init_tracefile_ops): Delete.
11208         (tracefile_target::tracefile_target): New.
11209         * tracefile.h: Include "target.h".
11210         (tracefile_target): New class.
11211         (init_tracefile_ops): Delete.
11212
11213         * spu-multiarch.c (spu_multiarch_target): New class.
11214         (spu_ops): Now a spu_multiarch_target.
11215         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
11216         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
11217         (spu_search_memory, spu_mourn_inferior): Refactor as
11218         spu_multiarch_target methods.
11219         (init_spu_ops): Delete.
11220         (_initialize_spu_multiarch): Remove references to init_spu_ops,
11221         complete_target_initialization.
11222
11223         * ravenscar-thread.c (ravenscar_thread_target): New class.
11224         (ravenscar_ops): Now a ravenscar_thread_target.
11225         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
11226         (ravenscar_thread_alive, ravenscar_pid_to_str)
11227         (ravenscar_fetch_registers, ravenscar_store_registers)
11228         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
11229         (ravenscar_stopped_by_hw_breakpoint)
11230         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
11231         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
11232         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
11233         methods.
11234         (init_ravenscar_thread_ops): Delete.
11235         (_initialize_ravenscar): Remove references to
11236         init_ravenscar_thread_ops and complete_target_initialization.
11237
11238         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
11239         (bsd_uthread_target): New class.
11240         (bsd_uthread_ops): Now a bsd_uthread_target.
11241         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
11242         (bsd_uthread_close, bsd_uthread_mourn_inferior)
11243         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
11244         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
11245         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
11246         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
11247         (bsd_uthread_target): Delete function.
11248         (_initialize_bsd_uthread): Remove reference to
11249         complete_target_initialization.
11250
11251         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
11252         (target_bfd): ... this new class.
11253         (target_bfd_xfer_partial, target_bfd_get_section_table)
11254         (target_bfd_close): Refactor as target_bfd methods.
11255         (target_bfd::~target_bfd): New.
11256         (target_bfd_reopen): Adjust.
11257         (target_bfd::close): New.
11258
11259         * record-btrace.c (record_btrace_target): New class.
11260         (record_btrace_ops): Now a record_btrace_target.
11261         (record_btrace_open, record_btrace_stop_recording)
11262         (record_btrace_disconnect, record_btrace_close)
11263         (record_btrace_async, record_btrace_info)
11264         (record_btrace_insn_history, record_btrace_insn_history_range)
11265         (record_btrace_insn_history_from, record_btrace_call_history)
11266         (record_btrace_call_history_range)
11267         (record_btrace_call_history_from, record_btrace_record_method)
11268         (record_btrace_is_replaying, record_btrace_will_replay)
11269         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
11270         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
11271         (record_btrace_store_registers, record_btrace_prepare_to_store)
11272         (record_btrace_to_get_unwinder)
11273         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
11274         (record_btrace_commit_resume, record_btrace_wait)
11275         (record_btrace_stop, record_btrace_can_execute_reverse)
11276         (record_btrace_stopped_by_sw_breakpoint)
11277         (record_btrace_supports_stopped_by_sw_breakpoint)
11278         (record_btrace_stopped_by_hw_breakpoint)
11279         (record_btrace_supports_stopped_by_hw_breakpoint)
11280         (record_btrace_update_thread_list, record_btrace_thread_alive)
11281         (record_btrace_goto_begin, record_btrace_goto_end)
11282         (record_btrace_goto, record_btrace_stop_replaying_all)
11283         (record_btrace_execution_direction)
11284         (record_btrace_prepare_to_generate_core)
11285         (record_btrace_done_generating_core): Refactor as
11286         record_btrace_target methods.
11287         (init_record_btrace_ops): Delete.
11288         (_initialize_record_btrace): Remove reference to
11289         init_record_btrace_ops.
11290         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
11291         the execution_direction global.
11292         (record_full_base_target, record_full_target)
11293         (record_full_core_target): New classes.
11294         (record_full_ops): Now a record_full_target.
11295         (record_full_core_ops): Now a record_full_core_target.
11296         (record_full_target::detach, record_full_target::disconnect)
11297         (record_full_core_target::disconnect)
11298         (record_full_target::mourn_inferior, record_full_target::kill):
11299         New.
11300         (record_full_open, record_full_close, record_full_async): Refactor
11301         as methods of the record_full_base_target class.
11302         (record_full_resume, record_full_commit_resume): Refactor
11303         as methods of the record_full_target class.
11304         (record_full_wait, record_full_stopped_by_watchpoint)
11305         (record_full_stopped_data_address)
11306         (record_full_stopped_by_sw_breakpoint)
11307         (record_full_supports_stopped_by_sw_breakpoint)
11308         (record_full_stopped_by_hw_breakpoint)
11309         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
11310         methods of the record_full_base_target class.
11311         (record_full_store_registers, record_full_xfer_partial)
11312         (record_full_insert_breakpoint, record_full_remove_breakpoint):
11313         Refactor as methods of the record_full_target class.
11314         (record_full_can_execute_reverse, record_full_get_bookmark)
11315         (record_full_goto_bookmark, record_full_execution_direction)
11316         (record_full_record_method, record_full_info, record_full_delete)
11317         (record_full_is_replaying, record_full_will_replay)
11318         (record_full_goto_begin, record_full_goto_end, record_full_goto)
11319         (record_full_stop_replaying): Refactor as methods of the
11320         record_full_base_target class.
11321         (record_full_core_resume, record_full_core_kill)
11322         (record_full_core_fetch_registers)
11323         (record_full_core_prepare_to_store)
11324         (record_full_core_store_registers, record_full_core_xfer_partial)
11325         (record_full_core_insert_breakpoint)
11326         (record_full_core_remove_breakpoint)
11327         (record_full_core_has_execution): Refactor
11328         as methods of the record_full_core_target class.
11329         (record_full_base_target::supports_delete_record): New.
11330         (init_record_full_ops): Delete.
11331         (init_record_full_core_ops): Delete.
11332         (record_full_save): Refactor as method of the
11333         record_full_base_target class.
11334         (_initialize_record_full): Remove references to
11335         init_record_full_ops and init_record_full_core_ops.
11336
11337         * remote.c (remote_target, extended_remote_target): New classes.
11338         (remote_ops): Now a remote_target.
11339         (extended_remote_ops): Now an extended_remote_target.
11340         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
11341         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
11342         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
11343         (remote_pass_signals, remote_set_syscall_catchpoint)
11344         (remote_program_signals, )
11345         (remote_thread_always_alive): Remove target_ops parameter.
11346         (remote_thread_alive, remote_thread_name)
11347         (remote_update_thread_list, remote_threads_extra_info)
11348         (remote_static_tracepoint_marker_at)
11349         (remote_static_tracepoint_markers_by_strid)
11350         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
11351         (remote_open): Refactor as methods of remote_target.
11352         (extended_remote_open, extended_remote_detach)
11353         (extended_remote_attach, extended_remote_post_attach):
11354         (extended_remote_supports_disable_randomization)
11355         (extended_remote_create_inferior): : Refactor as method of
11356         extended_remote_target.
11357         (remote_set_permissions, remote_open_1, remote_detach)
11358         (remote_follow_fork, remote_follow_exec, remote_disconnect)
11359         (remote_resume, remote_commit_resume, remote_stop)
11360         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
11361         (remote_terminal_ours, remote_wait, remote_fetch_registers)
11362         (remote_prepare_to_store, remote_store_registers)
11363         (remote_flash_erase, remote_flash_done, remote_files_info)
11364         (remote_kill, remote_mourn, remote_insert_breakpoint)
11365         (remote_remove_breakpoint, remote_insert_watchpoint)
11366         (remote_watchpoint_addr_within_range)
11367         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
11368         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
11369         (remote_supports_stopped_by_sw_breakpoint)
11370         (remote_stopped_by_hw_breakpoint)
11371         (remote_supports_stopped_by_hw_breakpoint)
11372         (remote_stopped_by_watchpoint, remote_stopped_data_address)
11373         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
11374         (remote_verify_memory): Refactor as methods of remote_target.
11375         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
11376         parameter.
11377         (remote_xfer_partial, remote_get_memory_xfer_limit)
11378         (remote_search_memory, remote_rcmd, remote_memory_map)
11379         (remote_pid_to_str, remote_get_thread_local_address)
11380         (remote_get_tib_address, remote_read_description): Refactor as
11381         methods of remote_target.
11382         (remote_target::fileio_open, remote_target::fileio_pwrite)
11383         (remote_target::fileio_pread, remote_target::fileio_close): New.
11384         (remote_hostio_readlink, remote_hostio_fstat)
11385         (remote_filesystem_is_local, remote_can_execute_reverse)
11386         (remote_supports_non_stop, remote_supports_disable_randomization)
11387         (remote_supports_multi_process, remote_supports_cond_breakpoints)
11388         (remote_supports_enable_disable_tracepoint)
11389         (remote_supports_string_tracing)
11390         (remote_can_run_breakpoint_commands, remote_trace_init)
11391         (remote_download_tracepoint, remote_can_download_tracepoint)
11392         (remote_download_trace_state_variable, remote_enable_tracepoint)
11393         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
11394         (remote_trace_start, remote_get_trace_status)
11395         (remote_get_tracepoint_status, remote_trace_stop)
11396         (remote_trace_find, remote_get_trace_state_variable_value)
11397         (remote_save_trace_data, remote_get_raw_trace_data)
11398         (remote_set_disconnected_tracing, remote_core_of_thread)
11399         (remote_set_circular_trace_buffer, remote_traceframe_info)
11400         (remote_get_min_fast_tracepoint_insn_len)
11401         (remote_set_trace_buffer_size, remote_set_trace_notes)
11402         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
11403         (remote_disable_btrace, remote_teardown_btrace)
11404         (remote_read_btrace, remote_btrace_conf)
11405         (remote_augmented_libraries_svr4_read, remote_load)
11406         (remote_pid_to_exec_file, remote_can_do_single_step)
11407         (remote_execution_direction, remote_thread_handle_to_thread_info):
11408         Refactor as methods of remote_target.
11409         (init_remote_ops, init_extended_remote_ops): Delete.
11410         (remote_can_async_p, remote_is_async_p, remote_async)
11411         (remote_thread_events, remote_upload_tracepoints)
11412         (remote_upload_trace_state_variables): Refactor as methods of
11413         remote_target.
11414         (_initialize_remote): Remove references to init_remote_ops and
11415         init_extended_remote_ops.
11416
11417         * remote-sim.c (gdbsim_target): New class.
11418         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
11419         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
11420         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
11421         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
11422         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
11423         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
11424         Refactor as methods of gdbsim_target.
11425         (gdbsim_ops): Now a gdbsim_target.
11426         (init_gdbsim_ops): Delete.
11427         (gdbsim_cntrl_c): Adjust.
11428         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
11429
11430         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
11431         (the_amd64_linux_nat_target): New.
11432         (amd64_linux_fetch_inferior_registers)
11433         (amd64_linux_store_inferior_registers): Refactor as methods of
11434         amd64_linux_nat_target.
11435         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
11436         * i386-linux-nat.c: Don't include "linux-nat.h".
11437         (i386_linux_nat_target): New class.
11438         (the_i386_linux_nat_target): New.
11439         (i386_linux_fetch_inferior_registers)
11440         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
11441         as methods of i386_linux_nat_target.
11442         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
11443         * inf-child.c (inf_child_ops): Delete.
11444         (inf_child_fetch_inferior_registers)
11445         (inf_child_store_inferior_registers): Delete.
11446         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
11447         methods of inf_child_target.
11448         (inf_child_target::supports_terminal_ours)
11449         (inf_child_target::terminal_init)
11450         (inf_child_target::terminal_inferior)
11451         (inf_child_target::terminal_ours_for_output)
11452         (inf_child_target::terminal_ours, inf_child_target::interrupt)
11453         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
11454         New.
11455         (inf_child_open, inf_child_disconnect, inf_child_close)
11456         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
11457         (inf_child_post_startup_inferior, inf_child_can_run)
11458         (inf_child_pid_to_exec_file): Refactor as methods of
11459         inf_child_target.
11460         (inf_child_follow_fork): Delete.
11461         (inf_child_target::can_create_inferior)
11462         (inf_child_target::can_attach): New.
11463         (inf_child_target::has_all_memory, inf_child_target::has_memory)
11464         (inf_child_target::has_stack, inf_child_target::has_registers)
11465         (inf_child_target::has_execution): New.
11466         (inf_child_fileio_open, inf_child_fileio_pwrite)
11467         (inf_child_fileio_pread, inf_child_fileio_fstat)
11468         (inf_child_fileio_close, inf_child_fileio_unlink)
11469         (inf_child_fileio_readlink, inf_child_use_agent)
11470         (inf_child_can_use_agent): Refactor as methods of
11471         inf_child_target.
11472         (return_zero, inf_child_target): Delete.
11473         (inf_child_target::inf_child_target): New.
11474         * inf-child.h: Include "target.h".
11475         (inf_child_target): Delete function prototype.
11476         (inf_child_target): New class.
11477         (inf_child_open_target, inf_child_mourn_inferior)
11478         (inf_child_maybe_unpush_target): Delete.
11479         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
11480         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
11481         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
11482         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
11483         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
11484         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
11485         (inf_ptrace_wait, inf_ptrace_xfer_partial)
11486         (inf_ptrace_thread_alive, inf_ptrace_files_info)
11487         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
11488         methods of inf_ptrace_target.
11489         (inf_ptrace_target): Delete function.
11490         * inf-ptrace.h: Include "inf-child.h".
11491         (inf_ptrace_target): Delete function declaration.
11492         (inf_ptrace_target): New class.
11493         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
11494         * linux-nat.c (linux_target): New.
11495         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
11496         (linux_nat_target::~linux_nat_target): New.
11497         (linux_child_post_attach, linux_child_post_startup_inferior)
11498         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
11499         (linux_child_remove_fork_catchpoint)
11500         (linux_child_insert_vfork_catchpoint)
11501         (linux_child_remove_vfork_catchpoint)
11502         (linux_child_insert_exec_catchpoint)
11503         (linux_child_remove_exec_catchpoint)
11504         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
11505         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
11506         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
11507         (linux_nat_stopped_data_address)
11508         (linux_nat_stopped_by_sw_breakpoint)
11509         (linux_nat_supports_stopped_by_sw_breakpoint)
11510         (linux_nat_stopped_by_hw_breakpoint)
11511         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
11512         (linux_nat_kill, linux_nat_mourn_inferior)
11513         (linux_nat_xfer_partial, linux_nat_thread_alive)
11514         (linux_nat_update_thread_list, linux_nat_pid_to_str)
11515         (linux_nat_thread_name, linux_child_pid_to_exec_file)
11516         (linux_child_static_tracepoint_markers_by_strid)
11517         (linux_nat_is_async_p, linux_nat_can_async_p)
11518         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
11519         (linux_nat_supports_multi_process)
11520         (linux_nat_supports_disable_randomization, linux_nat_async)
11521         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
11522         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
11523         (linux_nat_fileio_open, linux_nat_fileio_readlink)
11524         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
11525         methods of linux_nat_target.
11526         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
11527         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
11528         parameter.
11529         (check_stopped_by_watchpoint): Adjust.
11530         (linux_xfer_partial): Delete.
11531         (linux_target_install_ops, linux_target, linux_nat_add_target):
11532         Delete.
11533         (linux_nat_target::linux_nat_target): New.
11534         * linux-nat.h: Include "inf-ptrace.h".
11535         (linux_nat_target): New.
11536         (linux_target, linux_target_install_ops, linux_nat_add_target):
11537         Delete function declarations.
11538         (linux_target): Declare global.
11539         * linux-thread-db.c (thread_db_target): New.
11540         (thread_db_target::thread_db_target): New.
11541         (thread_db_ops): Delete.
11542         (the_thread_db_target): New.
11543         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
11544         (thread_db_update_thread_list, thread_db_pid_to_str)
11545         (thread_db_extra_thread_info)
11546         (thread_db_thread_handle_to_thread_info)
11547         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
11548         (thread_db_resume): Refactor as methods of thread_db_target.
11549         (init_thread_db_ops): Delete.
11550         (_initialize_thread_db): Remove reference to init_thread_db_ops.
11551         * x86-linux-nat.c: Don't include "linux-nat.h".
11552         (super_post_startup_inferior): Delete.
11553         (x86_linux_nat_target::~x86_linux_nat_target): New.
11554         (x86_linux_child_post_startup_inferior)
11555         (x86_linux_read_description, x86_linux_enable_btrace)
11556         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
11557         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
11558         methods of x86_linux_nat_target.
11559         (x86_linux_create_target): Delete.  Bits folded ...
11560         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
11561         pointer.
11562         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
11563         (x86_linux_nat_target): New class.
11564         (x86_linux_create_target): Delete.
11565         (x86_linux_add_target): Now takes a linux_nat_target pointer.
11566         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
11567         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
11568         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
11569         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
11570         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
11571         make extern.
11572         (x86_use_watchpoints): Delete.
11573         * x86-nat.h: Include "breakpoint.h" and "target.h".
11574         (x86_use_watchpoints): Delete.
11575         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
11576         (x86_stopped_by_watchpoint, x86_stopped_data_address)
11577         (x86_insert_watchpoint, x86_remove_watchpoint)
11578         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
11579         (x86_stopped_by_hw_breakpoint): New declarations.
11580         (x86_nat_target): New template class.
11581
11582         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
11583         (the_ppc_linux_nat_target): New.
11584         (ppc_linux_fetch_inferior_registers)
11585         (ppc_linux_can_use_hw_breakpoint)
11586         (ppc_linux_region_ok_for_hw_watchpoint)
11587         (ppc_linux_ranged_break_num_registers)
11588         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
11589         (ppc_linux_insert_mask_watchpoint)
11590         (ppc_linux_remove_mask_watchpoint)
11591         (ppc_linux_can_accel_watchpoint_condition)
11592         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
11593         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
11594         (ppc_linux_watchpoint_addr_within_range)
11595         (ppc_linux_masked_watch_num_registers)
11596         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
11597         (ppc_linux_read_description): Refactor as methods of
11598         ppc_linux_nat_target.
11599         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
11600
11601         * procfs.c (procfs_xfer_partial): Delete forward declaration.
11602         (procfs_target): New class.
11603         (the_procfs_target): New.
11604         (procfs_target): Delete function.
11605         (procfs_auxv_parse, procfs_attach, procfs_detach)
11606         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
11607         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
11608         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
11609         (procfs_create_inferior, procfs_update_thread_list)
11610         (procfs_thread_alive, procfs_pid_to_str)
11611         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
11612         (procfs_stopped_data_address, procfs_insert_watchpoint)
11613         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
11614         (proc_find_memory_regions, procfs_info_proc)
11615         (procfs_make_note_section): Refactor as methods of procfs_target.
11616         (_initialize_procfs): Adjust.
11617         * sol-thread.c (sol_thread_target): New class.
11618         (sol_thread_ops): Now a sol_thread_target.
11619         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
11620         (sol_thread_fetch_registers, sol_thread_store_registers)
11621         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
11622         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
11623         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
11624         (init_sol_thread_ops): Delete.
11625         (_initialize_sol_thread): Adjust.  Remove references to
11626         init_sol_thread_ops and complete_target_initialization.
11627
11628         * windows-nat.c (windows_nat_target): New class.
11629         (windows_fetch_inferior_registers)
11630         (windows_store_inferior_registers, windows_resume, windows_wait)
11631         (windows_attach, windows_detach, windows_pid_to_exec_file)
11632         (windows_files_info, windows_create_inferior)
11633         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
11634         (windows_close, windows_pid_to_str, windows_xfer_partial)
11635         (windows_get_tib_address, windows_get_ada_task_ptid)
11636         (windows_thread_name, windows_thread_alive): Refactor as
11637         windows_nat_target methods.
11638         (do_initial_windows_stuff): Adjust.
11639         (windows_target): Delete function.
11640         (_initialize_windows_nat): Adjust.
11641
11642         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
11643         (darwin_mourn_inferior, darwin_kill_inferior)
11644         (darwin_create_inferior, darwin_attach, darwin_detach)
11645         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
11646         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
11647         (darwin_supports_multi_process): Refactor as darwin_nat_target
11648         methods.
11649         (darwin_resume_to, darwin_files_info): Delete.
11650         (_initialize_darwin_inferior): Rename to ...
11651         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
11652         * darwin-nat.h: Include "inf-child.h".
11653         (darwin_nat_target): New class.
11654         (darwin_complete_target): Delete.
11655         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
11656         (darwin_target): New.
11657         (i386_darwin_fetch_inferior_registers)
11658         (i386_darwin_store_inferior_registers): Refactor as methods of
11659         darwin_nat_target.
11660         (darwin_complete_target): Delete, with ...
11661         (_initialize_i386_darwin_nat): ... bits factored out here.
11662
11663         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
11664         (the_alpha_linux_nat_target): New.
11665         (alpha_linux_register_u_offset): Refactor as
11666         alpha_linux_nat_target method.
11667         (_initialize_alpha_linux_nat): Adjust.
11668         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
11669         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11670         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
11671         methods of linux_nat_trad_target.
11672         (linux_trad_target): Delete.
11673         * linux-nat-trad.h (linux_trad_target): Delete function.
11674         (linux_nat_trad_target): New class.
11675         * mips-linux-nat.c (mips_linux_nat_target): New class.
11676         (super_fetch_registers, super_store_registers, super_close):
11677         Delete.
11678         (the_mips_linux_nat_target): New.
11679         (mips64_linux_regsets_fetch_registers)
11680         (mips64_linux_regsets_store_registers)
11681         (mips64_linux_fetch_registers, mips64_linux_store_registers)
11682         (mips_linux_register_u_offset, mips_linux_read_description)
11683         (mips_linux_can_use_hw_breakpoint)
11684         (mips_linux_stopped_by_watchpoint)
11685         (mips_linux_stopped_data_address)
11686         (mips_linux_region_ok_for_hw_watchpoint)
11687         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
11688         (mips_linux_close): Refactor as methods of mips_linux_nat.
11689         (_initialize_mips_linux_nat): Adjust to C++ification.
11690
11691         * aix-thread.c (aix_thread_target): New class.
11692         (aix_thread_ops): Now an aix_thread_target.
11693         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
11694         (aix_thread_fetch_registers, aix_thread_store_registers)
11695         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
11696         (aix_thread_thread_alive, aix_thread_pid_to_str)
11697         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
11698         Refactor as methods of aix_thread_target.
11699         (init_aix_thread_ops): Delete.
11700         (_initialize_aix_thread): Remove references to init_aix_thread_ops
11701         and complete_target_initialization.
11702         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
11703         (rs6000_nat_target): New class.
11704         (the_rs6000_nat_target): New.
11705         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
11706         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
11707         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
11708         (super_create_inferior): Delete.
11709         (_initialize_rs6000_nat): Adjust to C++ification.
11710
11711         * arm-linux-nat.c (arm_linux_nat_target): New class.
11712         (the_arm_linux_nat_target): New.
11713         (arm_linux_fetch_inferior_registers)
11714         (arm_linux_store_inferior_registers, arm_linux_read_description)
11715         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
11716         (arm_linux_remove_hw_breakpoint)
11717         (arm_linux_region_ok_for_hw_watchpoint)
11718         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
11719         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
11720         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
11721         arm_linux_nat_target.
11722         (_initialize_arm_linux_nat): Adjust to C++ification.
11723
11724         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
11725         (the_aarch64_linux_nat_target): New.
11726         (aarch64_linux_fetch_inferior_registers)
11727         (aarch64_linux_store_inferior_registers)
11728         (aarch64_linux_child_post_startup_inferior)
11729         (aarch64_linux_read_description)
11730         (aarch64_linux_can_use_hw_breakpoint)
11731         (aarch64_linux_insert_hw_breakpoint)
11732         (aarch64_linux_remove_hw_breakpoint)
11733         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
11734         (aarch64_linux_region_ok_for_hw_watchpoint)
11735         (aarch64_linux_stopped_data_address)
11736         (aarch64_linux_stopped_by_watchpoint)
11737         (aarch64_linux_watchpoint_addr_within_range)
11738         (aarch64_linux_can_do_single_step): Refactor as methods of
11739         aarch64_linux_nat_target.
11740         (super_post_startup_inferior): Delete.
11741         (_initialize_aarch64_linux_nat): Adjust to C++ification.
11742
11743         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
11744         (the_hppa_linux_nat_target): New.
11745         (hppa_linux_fetch_inferior_registers)
11746         (hppa_linux_store_inferior_registers): Refactor as methods of
11747         hppa_linux_nat_target.
11748         (_initialize_hppa_linux_nat): Adjust to C++ification.
11749
11750         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
11751         (the_ia64_linux_nat_target): New.
11752         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
11753         (ia64_linux_stopped_data_address)
11754         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
11755         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
11756         ia64_linux_nat_target methods.
11757         (super_xfer_partial): Delete.
11758         (_initialize_ia64_linux_nat): Adjust to C++ification.
11759
11760         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
11761         (the_m32r_linux_nat_target): New.
11762         (m32r_linux_fetch_inferior_registers)
11763         (m32r_linux_store_inferior_registers): Refactor as
11764         m32r_linux_nat_target methods.
11765         (_initialize_m32r_linux_nat): Adjust to C++ification.
11766
11767         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
11768         (the_m68k_linux_nat_target): New.
11769         (m68k_linux_fetch_inferior_registers)
11770         (m68k_linux_store_inferior_registers): Refactor as
11771         m68k_linux_nat_target methods.
11772         (_initialize_m68k_linux_nat): Adjust to C++ification.
11773
11774         * s390-linux-nat.c (s390_linux_nat_target): New class.
11775         (the_s390_linux_nat_target): New.
11776         (s390_linux_fetch_inferior_registers)
11777         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
11778         (s390_insert_watchpoint, s390_remove_watchpoint)
11779         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
11780         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
11781         (s390_auxv_parse, s390_read_description): Refactor as methods of
11782         s390_linux_nat_target.
11783         (_initialize_s390_nat): Adjust to C++ification.
11784
11785         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
11786         (the_sparc_linux_nat_target): New.
11787         (_initialize_sparc_linux_nat): Adjust to C++ification.
11788         * sparc-nat.c (sparc_fetch_inferior_registers)
11789         (sparc_store_inferior_registers): Remove target_ops parameter.
11790         * sparc-nat.h (sparc_fetch_inferior_registers)
11791         (sparc_store_inferior_registers): Remove target_ops parameter.
11792         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
11793         (the_sparc64_linux_nat_target): New.
11794         (_initialize_sparc64_linux_nat): Adjust to C++ification.
11795
11796         * spu-linux-nat.c (spu_linux_nat_target): New class.
11797         (the_spu_linux_nat_target): New.
11798         (spu_child_post_startup_inferior, spu_child_post_attach)
11799         (spu_child_wait, spu_fetch_inferior_registers)
11800         (spu_store_inferior_registers, spu_xfer_partial)
11801         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
11802         methods.
11803         (_initialize_spu_nat): Adjust to C++ification.
11804
11805         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
11806         (the_tilegx_linux_nat_target): New.
11807         (fetch_inferior_registers, store_inferior_registers):
11808         Refactor as methods.
11809         (_initialize_tile_linux_nat): Adjust to C++ification.
11810
11811         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
11812         (the_xtensa_linux_nat_target): New.
11813         (xtensa_linux_fetch_inferior_registers)
11814         (xtensa_linux_store_inferior_registers): Refactor as
11815         xtensa_linux_nat_target methods.
11816         (_initialize_xtensa_linux_nat): Adjust to C++ification.
11817
11818         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
11819         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
11820         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
11821         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
11822         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
11823         (fbsd_stopped_by_sw_breakpoint)
11824         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
11825         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
11826         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
11827         (fbsd_post_startup_inferior, fbsd_post_attach)
11828         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
11829         (fbsd_set_syscall_catchpoint)
11830         (super_xfer_partial, super_resume, super_wait)
11831         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
11832         (fbsd_handle_debug_trap): Remove target_ops parameter.
11833         (fbsd_nat_add_target): Delete.
11834         * fbsd-nat.h: Include "inf-ptrace.h".
11835         (fbsd_nat_add_target): Delete.
11836         (USE_SIGTRAP_SIGINFO): Define.
11837         (fbsd_nat_target): New class.
11838
11839         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
11840         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
11841         (amd64bsd_target): Delete.
11842         * amd64-bsd-nat.h: New file.
11843         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
11844         "x86-bsd-nat.h".
11845         (amd64_fbsd_nat_target): New class.
11846         (the_amd64_fbsd_nat_target): New.
11847         (amd64fbsd_read_description): Refactor as method of
11848         amd64_fbsd_nat_target.
11849         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11850         (_initialize_amd64fbsd_nat): Adjust to C++ification.
11851         * amd64-nat.h (amd64bsd_target): Delete function declaration.
11852         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
11853         (i386bsd_store_inferior_registers): Remove target_ops parameter.
11854         (i386bsd_target): Delete.
11855         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
11856         (i386bsd_fetch_inferior_registers)
11857         (i386bsd_store_inferior_registers): Declare.
11858         (i386_bsd_nat_target): New class.
11859         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
11860         (the_i386_fbsd_nat_target): New.
11861         (i386fbsd_resume, i386fbsd_read_description): Refactor as
11862         i386_fbsd_nat_target methods.
11863         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11864         (_initialize_i386fbsd_nat): Adjust to C++ification.
11865         * x86-bsd-nat.c (super_mourn_inferior): Delete.
11866         (x86bsd_mourn_inferior, x86bsd_target): Delete.
11867         (_initialize_x86_bsd_nat): Adjust to C++ification.
11868         * x86-bsd-nat.h: Include "x86-nat.h".
11869         (x86bsd_target): Delete declaration.
11870         (x86bsd_nat_target): New class.
11871
11872         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
11873         (the_aarch64_fbsd_nat_target): New.
11874         (aarch64_fbsd_fetch_inferior_registers)
11875         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
11876         aarch64_fbsd_nat_target.
11877         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
11878         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
11879         (the_alpha_bsd_nat_target): New.
11880         (alphabsd_fetch_inferior_registers)
11881         (alphabsd_store_inferior_registers): Refactor as
11882         alpha_bsd_nat_target methods.
11883         (_initialize_alphabsd_nat): Refactor as methods of
11884         alpha_bsd_nat_target.
11885         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
11886         (the_amd64_nbsd_nat_target): New.
11887         (_initialize_amd64nbsd_nat): Adjust to C++ification.
11888         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
11889         (the_amd64_obsd_nat_target): New.
11890         (_initialize_amd64obsd_nat): Adjust to C++ification.
11891         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
11892         (the_arm_fbsd_nat_target): New.
11893         (arm_fbsd_fetch_inferior_registers)
11894         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
11895         (_initialize_arm_fbsd_nat): Refactor as methods of
11896         arm_fbsd_nat_target.
11897         (_initialize_arm_fbsd_nat): Adjust to C++ification.
11898         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
11899         (the_arm_netbsd_nat_target): New.
11900         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
11901         arm_netbsd_nat_target.
11902         (_initialize_arm_netbsd_nat): Adjust to C++ification.
11903         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
11904         (the_hppa_nbsd_nat_target): New.
11905         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
11906         hppa_nbsd_nat_target methods.
11907         (_initialize_hppanbsd_nat): Adjust to C++ification.
11908         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
11909         (the_hppa_obsd_nat_target): New.
11910         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
11911         methods of hppa_obsd_nat_target.
11912         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
11913         add_target.
11914         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
11915         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
11916         add_target.
11917         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
11918         (_initialize_i386obsd_nat): Use add_target.
11919         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
11920         (the_m68k_bsd_nat_target): New.
11921         (m68kbsd_fetch_inferior_registers)
11922         (m68kbsd_store_inferior_registers): Refactor as methods of
11923         m68k_bsd_nat_target.
11924         (_initialize_m68kbsd_nat): Adjust to C++ification.
11925         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
11926         (the_mips_fbsd_nat_target): New.
11927         (mips_fbsd_fetch_inferior_registers)
11928         (mips_fbsd_store_inferior_registers): Refactor as methods of
11929         mips_fbsd_nat_target.
11930         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
11931         add_target.
11932         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
11933         (the_mips_nbsd_nat_target): New.
11934         (mipsnbsd_fetch_inferior_registers)
11935         (mipsnbsd_store_inferior_registers): Refactor as methods of
11936         mips_nbsd_nat_target.
11937         (_initialize_mipsnbsd_nat): Adjust to C++ification.
11938         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
11939         (the_mips64_obsd_nat_target): New.
11940         (mips64obsd_fetch_inferior_registers)
11941         (mips64obsd_store_inferior_registers): Refactor as methods of
11942         mips64_obsd_nat_target.
11943         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
11944         add_target.
11945         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
11946         nbsd_nat_target.
11947         * nbsd-nat.h: Include "inf-ptrace.h".
11948         (nbsd_nat_target): New class.
11949         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
11950         (obsd_wait): Refactor as methods of obsd_nat_target.
11951         (obsd_add_target): Delete.
11952         * obsd-nat.h: Include "inf-ptrace.h".
11953         (obsd_nat_target): New class.
11954         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
11955         (the_ppc_fbsd_nat_target): New.
11956         (ppcfbsd_fetch_inferior_registers)
11957         (ppcfbsd_store_inferior_registers): Refactor as methods of
11958         ppc_fbsd_nat_target.
11959         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
11960         add_target.
11961         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
11962         (the_ppc_nbsd_nat_target): New.
11963         (ppcnbsd_fetch_inferior_registers)
11964         (ppcnbsd_store_inferior_registers): Refactor as methods of
11965         ppc_nbsd_nat_target.
11966         (_initialize_ppcnbsd_nat): Adjust to C++ification.
11967         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
11968         (the_ppc_obsd_nat_target): New.
11969         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
11970         methods of ppc_obsd_nat_target.
11971         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
11972         add_target.
11973         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
11974         (the_sh_nbsd_nat_target): New.
11975         (shnbsd_fetch_inferior_registers)
11976         (shnbsd_store_inferior_registers): Refactor as methods of
11977         sh_nbsd_nat_target.
11978         (_initialize_shnbsd_nat): Adjust to C++ification.
11979         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
11980         (inf_ptrace_xfer_partial): Delete.
11981         (sparc_xfer_partial, sparc_target): Delete.
11982         * sparc-nat.h (sparc_fetch_inferior_registers)
11983         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
11984         (sparc_target): Delete function declaration.
11985         (sparc_target): New template class.
11986         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
11987         (_initialize_sparcnbsd_nat): Adjust to C++ification.
11988         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
11989         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
11990         add_target.
11991         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
11992         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
11993         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
11994         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
11995         add_target.
11996         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
11997         (the_vax_bsd_nat_target): New.
11998         (vaxbsd_fetch_inferior_registers)
11999         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
12000         methods.
12001         (_initialize_vaxbsd_nat): Adjust to C++ification.
12002
12003         * bsd-kvm.c (bsd_kvm_target): New class.
12004         (bsd_kvm_ops): Now a bsd_kvm_target.
12005         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
12006         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
12007         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
12008         bsd_kvm_target.
12009         (bsd_kvm_return_one): Delete.
12010         (bsd_kvm_add_target): Adjust to C++ification.
12011
12012         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
12013         (nto_procfs_target_procfs): New classes.
12014         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
12015         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
12016         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
12017         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
12018         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
12019         (procfs_remove_hw_breakpoint, procfs_resume)
12020         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
12021         (procfs_kill_inferior, procfs_store_registers)
12022         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
12023         as methods of nto_procfs_target.
12024         (nto_procfs_ops): Now an nto_procfs_target_procfs.
12025         (nto_native_ops): Delete.
12026         (procfs_open, procfs_native_open): Delete.
12027         (nto_native_ops): Now an nto_procfs_target_native.
12028         (init_procfs_targets): Adjust to C++ification.
12029         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
12030         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
12031         Refactor as methods of nto_procfs_target.
12032
12033         * go32-nat.c (go32_nat_target): New class.
12034         (the_go32_nat_target): New.
12035         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
12036         (go32_store_registers, go32_xfer_partial, go32_files_info)
12037         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
12038         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
12039         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
12040         (go32_pid_to_str): Refactor as methods of go32_nat_target.
12041         (go32_target): Delete.
12042         (_initialize_go32_nat): Adjust to C++ification.
12043
12044         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
12045         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
12046         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
12047         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
12048         gnu_nat_target.
12049         (gnu_target): Delete.
12050         * gnu-nat.h (gnu_target): Delete.
12051         (gnu_nat_target): New class.
12052         * i386-gnu-nat.c (gnu_base_target): New.
12053         (i386_gnu_nat_target): New class.
12054         (the_i386_gnu_nat_target): New.
12055         (_initialize_i386gnu_nat): Adjust to C++ification.
12056
12057 2018-05-02  Pedro Alves  <palves@redhat.com>
12058
12059         * bfd-target.c (target_bfd_xclose): Rename to ...
12060         (target_bfd_close): ... this.
12061         (target_bfd_reopen): Adjust.
12062         * target.c (target_close): Remove references to to_xclose.
12063         * target.h (target_ops::to_xclose): Delete.
12064         (target_ops::to_close): Update comments.
12065
12066 2018-05-02  Pedro Alves  <palves@redhat.com>
12067
12068         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
12069         "linux-nat.h".
12070         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
12071         * inf-ptrace.c (inf_ptrace_register_u_offset)
12072         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
12073         (inf_ptrace_store_register, inf_ptrace_store_registers)
12074         (inf_ptrace_trad_target): Move to ...
12075         * linux-nat-trad.c: ... this new file.
12076         * linux-nat-trad.h: New file.
12077         * linux-nat.c (linux_target_install_ops): Make extern.
12078         (linux_trad_target): Delete.
12079         * linux-nat.h (linux_trad_target): Delete declaration.
12080         (linux_target_install_ops): Declare.
12081         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
12082         "linux-nat.h".
12083
12084 2018-05-02  Pedro Alves  <palves@redhat.com>
12085
12086         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
12087         procfs_target/add_target here.
12088         * procfs.c (procfs_target): Make static.
12089         (_initialize_procfs): Call add_target here.
12090         * procfs.h (struct target_ops): Remove forward declaration.
12091         (procfs_target): Remove declaration.
12092         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
12093
12094 2018-05-02  Pedro Alves  <palves@redhat.com>
12095
12096         * procfs.c (procfs_stopped_by_watchpoint)
12097         (procfs_insert_watchpoint, procfs_remove_watchpoint)
12098         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
12099         Forward declare.
12100         (procfs_use_watchpoints): Delete, move contents...
12101         (procfs_target): ... here.
12102         * procfs.h (procfs_use_watchpoints): Delete declaration.
12103         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
12104         procfs_use_watchpoints.
12105         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
12106         procfs_use_watchpoints.
12107
12108 2018-05-02  Tom Tromey  <tom@tromey.com>
12109
12110         PR python/20084:
12111         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
12112         and var_zuinteger_unlimited.
12113         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
12114         and PARAM_ZUINTEGER_UNLIMITED.
12115         (set_parameter_value): Handle var_zuinteger and
12116         var_zuinteger_unlimited.
12117         (add_setshow_generic): Likewise.
12118         (parmpy_init): Likewise.
12119
12120 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
12121
12122         PR rust/23124
12123         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
12124         pointer is not null before dereferencing it.
12125
12126 2018-04-30  Tom Tromey  <tom@tromey.com>
12127
12128         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
12129         is_mi_like_p.
12130
12131 2018-04-30  Tom Tromey  <tom@tromey.com>
12132
12133         * breakpoint.c (mention): Remove use of is_mi_like_p.
12134         (print_mention_ranged_breakpoint): Likewise.
12135         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
12136         of is_mi_like_p.
12137
12138 2018-04-30  Tom Tromey  <tom@tromey.com>
12139
12140         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
12141
12142 2018-04-30  Tom Tromey  <tom@tromey.com>
12143
12144         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
12145         (info_spu_event_command): Remove some uses of is_mi_like_p.
12146
12147 2018-04-30  Tom Tromey  <tom@tromey.com>
12148
12149         * python/py-framefilter.c (py_print_single_arg)
12150         (enumerate_locals, py_print_args, py_print_frame): Remove some
12151         uses of is_mi_like_p.
12152
12153 2018-04-30  Tom Tromey  <tom@tromey.com>
12154
12155         * ui-out.c: Update.
12156         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
12157         * ui-out.h (ui_out::is_mi_like_p): Now const.
12158         (ui_out::do_is_mi_like_p): Now const.
12159         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
12160
12161 2018-04-30  Tom Tromey  <tom@tromey.com>
12162
12163         * varobj.c (varobj_set_visualizer): Use new_reference.
12164         * python/python.c (gdbpy_decode_line): Use new_reference.
12165         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
12166         new_reference.
12167
12168 2018-04-30  Tom Tromey  <tom@tromey.com>
12169
12170         * varobj.c (install_new_value): Use new_reference.
12171         * value.h (value_incref): Return void.  Swap intro comment with
12172         value_decref.
12173         * value.c (set_value_parent): Use new_reference.
12174         (value_incref): Return void.  Update intro comment.
12175         (release_value): Use new_reference.
12176         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
12177
12178 2018-04-30  Tom Tromey  <tom@tromey.com>
12179
12180         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
12181         * gdb_bfd.h (new_bfd_ref): Remove.
12182         (gdb_bfd_open): Update comment.
12183         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
12184         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
12185         (gdb_bfd_fdopenr): Use new_reference.
12186         * exec.c (exec_file_attach): Use new_reference.
12187
12188 2018-04-30  Tom Tromey  <tom@tromey.com>
12189
12190         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
12191         method.
12192
12193 2018-04-30  Tom Tromey  <tom@tromey.com>
12194
12195         * jit.c (jit_read_code_entry): Use type_align.
12196         * i386-tdep.c (i386_gdbarch_init): Don't call
12197         set_gdbarch_long_long_align_bit.
12198         * gdbarch.sh: Remove long_long_align_bit.
12199         * gdbarch.c, gdbarch.h: Rebuild.
12200         * arc-tdep.c (arc_type_align): New function.
12201         (arc_gdbarch_init): Use arc_type_align.  Don't call
12202         set_gdbarch_long_long_align_bit.
12203
12204 2018-04-30  Tom Tromey  <tom@tromey.com>
12205
12206         * rust-lang.c (rust_type_alignment): Remove.
12207         (rust_composite_type): Use type_align.
12208
12209 2018-04-30  Tom Tromey  <tom@tromey.com>
12210
12211         * NEWS: Mention Type.align.
12212         * python/py-type.c (typy_get_alignof): New function.
12213         (type_object_getset): Add "alignof".
12214
12215 2018-04-30  Tom Tromey  <tom@tromey.com>
12216
12217         PR exp/17095:
12218         * NEWS: Update.
12219         * std-operator.def (UNOP_ALIGNOF): New operator.
12220         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
12221         New.
12222         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
12223         * c-lang.c (c_op_print_tab): Add alignof.
12224         * c-exp.y (ALIGNOF): New token.
12225         (exp): Add "ALIGNOF" production.
12226         (ident_tokens): Add _Alignof and alignof.
12227
12228 2018-04-30  Tom Tromey  <tom@tromey.com>
12229
12230         * i386-tdep.c (i386_type_align): New function.
12231         (i386_gdbarch_init): Update.
12232         * gdbarch.sh (type_align): New method.
12233         * gdbarch.c, gdbarch.h: Rebuild.
12234         * arch-utils.h (default_type_align): Declare.
12235         * arch-utils.c (default_type_align): New function.
12236         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
12237         (struct type) <align_log2>: New field.
12238         <instance_flags>: Now a bitfield.
12239         (TYPE_RAW_ALIGN): New macro.
12240         (type_align, type_raw_align, set_type_align): Declare.
12241         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
12242         functions.
12243         * dwarf2read.c (quirk_rust_enum): Set type alignment.
12244         (get_alignment, maybe_set_alignment): New functions.
12245         (read_structure_type, read_enumeration_type, read_array_type)
12246         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
12247         (read_subrange_type, read_base_type): Set type alignment.
12248
12249 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
12250
12251         * dwarf2read.c (read_index_from_section): Use bool.
12252
12253 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
12254
12255         PR gdb/22950
12256         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
12257         with #ifdef.
12258
12259 2018-04-29  John Reiser  <jreiser@BitWagon.com>
12260
12261         PR build/22873
12262         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
12263         last step, and do it atomically.
12264
12265 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
12266
12267         * compile/compile-c-types.c (convert_int, convert_float):
12268         Update for C FE v1.
12269
12270 2018-04-27  Tom Tromey  <tom@tromey.com>
12271
12272         PR rust/22545:
12273         * rust-lang.c (rust_inclusive_range_type_p): New function.
12274         (rust_range): Handle inclusive ranges.
12275         (rust_compute_range): Likewise.
12276         * rust-exp.y (struct rust_op) <inclusive>: New field.
12277         (DOTDOTEQ): New constant.
12278         (range_expr): Add "..=" productions.
12279         (operator_tokens): Add "..=" token.
12280         (ast_range): Add "inclusive" parameter.
12281         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
12282         ranges.
12283         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
12284         bounds values.
12285         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
12286         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
12287         Update comments.
12288         * expprint.c (print_subexp_standard): Handle new bounds values.
12289         (dump_subexp_body_standard): Likewise.
12290
12291 2018-04-27  Tom Tromey  <tom@tromey.com>
12292
12293         * configure: Rebuild.
12294         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
12295         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
12296         "OVERRIDE".
12297         (class symbol_needs_eval_context): Likewise.
12298         * dwarf2read.c (mock_mapped_index::symbol_name_count)
12299         (mock_mapped_index::symbol_name_at): Use "override".  Remove
12300         "virtual".
12301         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
12302         "override".
12303         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
12304         * aarch64-tdep.c (instruction_reader::read): Use "override".
12305         (instruction_reader_test::read): Likewise.
12306         * arm-tdep.c (instruction_reader::read): Use "override".
12307         (instruction_reader_thumb::read): Likewise.
12308
12309 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
12310
12311         PR remote/9665
12312         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
12313         instead of remote_send.
12314         (remote_send): Remove.
12315
12316 2018-04-26  Pedro Alves  <palves@redhat.com>
12317
12318         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
12319         find_function_start_sal instead of find_pc_line.
12320
12321 2018-04-26  Pedro Alves  <palves@redhat.com>
12322
12323         * breakpoint.c (set_breakpoint_location_function): Handle
12324         mst_data_gnu_ifunc.
12325         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
12326         * elfread.c (elf_symtab_read): Give data symbols with
12327         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
12328         (elf_rel_plt_read): Update comment.
12329         * linespec.c (convert_linespec_to_sals): Handle
12330         mst_data_gnu_ifunc.
12331         (minsym_found): Handle mst_data_gnu_ifunc.
12332         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
12333         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
12334         * parse.c (find_minsym_type_and_address): Handle
12335         mst_data_gnu_ifunc.
12336         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
12337         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
12338         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
12339         comment.
12340         <mst_data_gnu_ifunc>: New enumerator.
12341
12342 2018-04-26  Pedro Alves  <palves@redhat.com>
12343
12344         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
12345         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
12346         'want_trampoline' parameter by a lookup_msym_prefer parameter.
12347         Handle it.
12348         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
12349         (lookup_minimal_symbol_by_pc): Adjust.
12350         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
12351         (lookup_solib_trampoline_symbol_by_pc): Adjust.
12352         * minsyms.h (lookup_msym_prefer): New enum.
12353         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
12354         parameter by a lookup_msym_prefer parameter.
12355
12356 2018-04-26  Pedro Alves  <palves@redhat.com>
12357
12358         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
12359         ends in "@plt" instead of looking at the symbol's section.
12360
12361 2018-04-26  Pedro Alves  <palves@redhat.com>
12362
12363         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
12364         all references.
12365         (find_pc_partial_function_gnu_ifunc): Rename to ...
12366         (find_pc_partial_function): ... this, and remove references to
12367         'is_gnu_ifunc_p'.
12368         (find_pc_partial_function): Delete old implementation.
12369         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
12370
12371 2018-04-26  Pedro Alves  <palves@redhat.com>
12372
12373         * linespec.c (struct bound_minimal_symbol_search_key): New.
12374         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
12375         skip first line if we found a GNU ifunc minimal symbol by name.
12376         (compare_msymbols): Change parameters to work with a destructured
12377         lhs minsym.
12378         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
12379         functions.
12380
12381 2018-04-26  Pedro Alves  <palves@redhat.com>
12382
12383         * breakpoint.c (set_breakpoint_location_function): Don't resolve
12384         ifunc targets here.  Instead, if we have an ifunc minsym, use its
12385         address/name.
12386         (add_location_to_breakpoint): Store the minsym and the objfile in
12387         the breakpoint location.
12388         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
12389         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
12390         Record the minsym in the sal.
12391         * symtab.h (symtab_and_line) <msymbol>: New field.
12392
12393 2018-04-26  Pedro Alves  <palves@redhat.com>
12394
12395         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
12396         unless we actually resolved the ifunc.
12397
12398 2018-04-26  Pedro Alves  <palves@redhat.com>
12399
12400         * c-exp.y (variable production): Prefer ifunc minsyms over
12401         regular function symbols.
12402         * symtab.c (find_gnu_ifunc): New function.
12403         * minsyms.h (lookup_msym_prefer): New enum.
12404         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
12405         parameter by a lookup_msym_prefer parameter.
12406         * symtab.h (find_gnu_ifunc): New declaration.
12407
12408 2018-04-26  Pedro Alves  <palves@redhat.com>
12409
12410         * blockframe.c (find_gnu_ifunc_target_type): New function.
12411         (find_function_type): New.
12412         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
12413         return a value with a memory address.
12414         (eval_call): For calls to GNU ifunc functions, try to find the
12415         type of the target function from the type that the resolver
12416         returns.
12417         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
12418         symbols.
12419         * infcall.c (find_function_return_type): Delete.
12420         (find_function_addr): Add 'function_type' parameter.  For calls to
12421         GNU ifunc functions, try to find the type of the target function
12422         from the type that the resolver returns, and return it via
12423         FUNCTION_TYPE.
12424         (call_function_by_hand_dummy): Adjust to use the function type
12425         returned by find_function_addr.
12426         (find_function_addr): Add 'function_type' parameter and move
12427         description here.
12428         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
12429         declarations.
12430
12431 2018-04-26  Pedro Alves  <palves@redhat.com>
12432
12433         * c-exp.y (variable production): Skip finding an alias for ifunc
12434         symbols.
12435
12436 2018-04-26  Pedro Alves  <palves@redhat.com>
12437
12438         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
12439
12440 2018-04-25  Pedro Alves  <palves@redhat.com>
12441
12442         * infcmd.c (kill_command): Print the pid as string, not the whole
12443         thread's ptid.  Add comment.  s/has been killed/killed/ in output
12444         message.
12445         * remote.c (remote_detach_1): Print the pid as string, not the
12446         whole thread's ptid.
12447
12448 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
12449             Sergio Durigan Junior  <sergiodj@redhat.com>
12450             Pedro Alves  <palves@redhat.com>
12451
12452         * infcmd.c (kill_command): Print message when inferior has
12453         been killed.
12454         * inferior.c (print_inferior_events): Remove 'static'.  Set as
12455         '1'.
12456         (add_inferior): Improve message printed when
12457         'print_inferior_events' is on.
12458         (exit_inferior): Remove message printed when
12459         'print_inferior_events' is on.
12460         (detach_inferior): Improve message printed when
12461         'print_inferior_events' is on.
12462         (initialize_inferiors): Use 'add_inferior_silent' to set
12463         'current_inferior_'.
12464         * inferior.h (print_inferior_events): Declare here as
12465         'extern'.
12466         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
12467         '[Detaching...]' messages when 'print_inferior_events' is on.
12468         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
12469         as prefix/suffix for messages.  Remove periods.  Fix erroneous
12470         'Detaching after fork from child...', replace it by '... from
12471         parent...'.
12472         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
12473         prefix/suffix when printing 'Detaching...' messages.  Print
12474         them when 'print_inferior_events' is on.
12475         * remote.c (remote_detach_1): Print message when detaching
12476         from inferior and '!is_fork_parent'.
12477
12478 2018-04-24  Tom Tromey  <tom@tromey.com>
12479
12480         * cli-out.h: Reindent.
12481
12482 2018-04-24  Tom Tromey  <tom@tromey.com>
12483
12484         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
12485         (cli_ui_out::do_field_string): Use fputs_filtered.
12486         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
12487
12488 2018-04-23  Tom Tromey  <tom@tromey.com>
12489
12490         * guile/scm-frame.c (gdbscm_frame_read_var): Use
12491         gdb::unique_xmalloc_ptr.
12492
12493 2018-04-23  Tom Tromey  <tom@tromey.com>
12494
12495         * configure: Rebuild.
12496
12497 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
12498
12499         PR gdb/23095
12500         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
12501         prepare_for_testing.  Set normal_bp to r_debug_state if target
12502         is bsd.
12503
12504 2018-04-21  Pedro Alves  <palves@redhat.com>
12505             Rajendra SY  <rajendra.sy@gmail.com>
12506
12507         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
12508         * remote.c (extended_remote_attach): In all-stop mode, mark the
12509         thread as executing.
12510
12511 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
12512
12513         * thread.c (thread_apply_all_command): Fix comment.
12514         (thread_command): Fix comment.
12515
12516 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
12517
12518         * common/tdesc.h (tdesc_create_feature): Remove xml filename
12519         parameter.
12520         * features/aarch64-core.c (create_feature_aarch64_core):
12521         Regenerate.
12522         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
12523         Likewise.
12524         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
12525         Likewise.
12526         * features/i386/32bit-avx512.c
12527         (create_feature_i386_32bit_avx512): Likewise.
12528         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
12529         Likewise.
12530         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
12531         Likewise.
12532         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
12533         Likewise.
12534         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
12535         Likewise.
12536         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
12537         Likewise.
12538         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
12539         Likewise.
12540         * features/i386/64bit-avx512.c
12541         (create_feature_i386_64bit_avx512): Likewise.
12542         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
12543         Likewise.
12544         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
12545         Likewise.
12546         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
12547         Likewise.
12548         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
12549         Likewise.
12550         * features/i386/64bit-segments.c
12551         (create_feature_i386_64bit_segments): Likewise.
12552         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
12553         Likewise.
12554         * features/i386/x32-core.c
12555         (create_feature_i386_x32_core): Likewise.
12556         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
12557         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
12558         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
12559         * target-descriptions.c: In generated code, don't pass xml
12560         filename.
12561
12562 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12563
12564         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
12565         (print_xml_feature::visit_post): Likewise.
12566         (print_xml_feature::visit): Likewise.
12567         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
12568         (print_xml_feature): Add new class.
12569         * regformats/regdat.sh: Null xmltarget on feature targets.
12570         * target-descriptions.c (struct target_desc): Add xmltarget.
12571         (maintenance_check_tdesc_xml_convert): Add unittest function.
12572         (tdesc_get_features_xml): Add function to get xml.
12573         (maintenance_check_xml_descriptions): Test xml generation.
12574         * xml-tdesc.c (string_read_description_xml): Add function.
12575         * xml-tdesc.h (string_read_description_xml): Add declaration.
12576
12577 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12578
12579         * features/Makefile: Add feature marker to targets with new style
12580         target descriptions.
12581         * regformats/aarch64.dat: Regenerate.
12582         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
12583         * regformats/i386/amd64-avx-linux.dat: Likewise.
12584         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
12585         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
12586         * regformats/i386/amd64-linux.dat: Likewise.
12587         * regformats/i386/amd64-mpx-linux.dat: Likewise.
12588         * regformats/i386/amd64.dat: Likewise.
12589         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
12590         * regformats/i386/i386-avx-linux.dat: Likewise.
12591         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
12592         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
12593         * regformats/i386/i386-linux.dat: Likewise.
12594         * regformats/i386/i386-mmx-linux.dat: Likewise.
12595         * regformats/i386/i386-mpx-linux.dat: Likewise.
12596         * regformats/i386/i386.dat: Likewise.
12597         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
12598         * regformats/i386/x32-avx-linux.dat: Likewise.
12599         * regformats/i386/x32-linux.dat: Likewise.
12600         * regformats/tic6x-c62x-linux.dat: Likewise.
12601         * regformats/tic6x-c64x-linux.dat: Likewise.
12602         * regformats/tic6x-c64xp-linux.dat: Likewise.
12603         * regformats/regdat.sh: Parse feature marker.
12604
12605 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12606
12607         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
12608         (tdesc_osabi_name): Likewise.
12609         * target-descriptions.c (tdesc_architecture_name): Add new
12610         function.
12611         (tdesc_osabi_name): Likewise.
12612
12613 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12614
12615         * common/tdesc.c (tdesc_predefined_type): Move to here.
12616         (tdesc_named_type): Likewise.
12617         (tdesc_create_vector): Likewise.
12618         (tdesc_create_struct): Likewise.
12619         (tdesc_set_struct_size): Likewise.
12620         (tdesc_create_union): Likewise.
12621         (tdesc_create_flags): Likewise.
12622         (tdesc_create_enum): Likewise.
12623         (tdesc_add_field): Likewise.
12624         (tdesc_add_typed_bitfield): Likewise.
12625         (tdesc_add_bitfield): Likewise.
12626         (tdesc_add_flag): Likewise.
12627         (tdesc_add_enum_value): Likewise.
12628         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
12629         (struct tdesc_type_vector): Likewise.
12630         (struct tdesc_type_field): Likewise.
12631         (struct tdesc_type_with_fields): Likewise.
12632         (tdesc_create_enum): Add declaration.
12633         (tdesc_add_typed_bitfield): Likewise.
12634         (tdesc_add_enum_value): Likewise.
12635         * target-descriptions.c (tdesc_type_field): Move from here.
12636         (tdesc_type_builtin): Likewise.
12637         (tdesc_type_vector): Likewise.
12638         (tdesc_type_with_fields): Likewise.
12639         (tdesc_predefined_types): Likewise.
12640         (tdesc_named_type): Likewise.
12641         (tdesc_create_vector): Likewise.
12642         (tdesc_create_struct): Likewise.
12643         (tdesc_set_struct_size): Likewise.
12644         (tdesc_create_union): Likewise.
12645         (tdesc_create_flags): Likewise.
12646         (tdesc_create_enum): Likewise.
12647         (tdesc_add_field): Likewise.
12648         (tdesc_add_typed_bitfield): Likewise.
12649         (tdesc_add_bitfield): Likewise.
12650         (tdesc_add_flag): Likewise.
12651         (tdesc_add_enum_value): Likewise.
12652         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
12653         (tdesc_add_typed_bitfield): Likewise.
12654         (tdesc_add_enum_value): Likewise.
12655
12656 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12657
12658         * common/tdesc.c (tdesc_feature::accept): Move to here.
12659         (tdesc_feature::operator==): Likewise.
12660         (tdesc_create_reg): Likewise.
12661         * common/tdesc.h (tdesc_type_kind): Likewise.
12662         (struct tdesc_type): Likewise.
12663         (struct tdesc_feature): Likewise.
12664         * regformats/regdat.sh: Create a feature.
12665         * target-descriptions.c (tdesc_type_kind): Move from here.
12666         (tdesc_type): Likewise.
12667         (tdesc_type_up): Likewise.
12668         (tdesc_feature): Likewise.
12669         (tdesc_create_reg): Likewise.
12670
12671 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12672
12673         * Makefile.in: Add arch/tdesc.c
12674         * common/tdesc.c: New file.
12675         * common/tdesc.h (tdesc_element_visitor): Move to here.
12676         (tdesc_element): Likewise.
12677         (tdesc_reg): Likewise.
12678         (tdesc_reg_up): Likewise.
12679         * regformats/regdef.h (reg): Add offset to constructors.
12680         * target-descriptions.c (tdesc_element_visitor): Move from here.
12681         (tdesc_element): Likewise.
12682         (tdesc_reg): Likewise.
12683         (tdesc_reg_up): Likewise.
12684
12685 2018-04-17  Tom Tromey  <tom@tromey.com>
12686
12687         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
12688         discriminant field.
12689
12690 2018-04-17  Tom Tromey  <tom@tromey.com>
12691
12692         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
12693
12694 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12695
12696         * symtab.c (print_symbol_info): Skip printing filename and line
12697         number when `last' is NULL.
12698         (symtab_symbol_info): Use empty string instead of NULL for first
12699         invocation of print_symbol_info.
12700         (rbreak_command): Pass NULL to `last' parameter of
12701         print_symbol_info.
12702
12703 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
12704
12705         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
12706         instead of nullptr.
12707
12708 2018-04-16  Pedro Alves  <palves@redhat.com>
12709
12710         * MAINTAINERS (sh): Remove.
12711         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
12712         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
12713         (ALLDEPFILES): Remove sh64-tdep.c.
12714         * NEWS: Mentions that support for SH-5/SH64 is removed.
12715         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
12716         (sh*-*-openbsd*): Ditto.
12717         (sh64-*-elf*): Remove.
12718         (sh*): Remove.
12719         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
12720         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
12721         * sh-tdep.c: No longer include "sh64-tdep.h".
12722         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
12723         * sh64-tdep.c, sh64-tdep.h: Remove files.
12724
12725 2018-04-16  Pedro Alves  <palves@redhat.com>
12726
12727         * MAINTAINERS: Remove m88k.
12728         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
12729         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
12730         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
12731         * NEWS: Mention that support for m88k was removed.
12732         * configure.host (m88*-*-*): Remove support.
12733         * configure.nat (m88k-*-*): Remove support.
12734         * configure.tgt (m88*-*-openbsd*): Remove.
12735         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
12736
12737 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
12738
12739         * configure.tgt (x86_tobjs): New variable.
12740         (amd64_tobjs, i386_tobjs): Use it.
12741
12742 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12743
12744         * symtab.c (print_symbol_info): Precede the symbol definition by
12745         the line number when available.
12746         * NEWS: Advertise this enhancement.
12747
12748 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12749
12750         * NEWS (New options): announce set/show record btrace cpu.
12751         * btrace.c: Include record-btrace.h.
12752         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
12753         the vendor is unknown.
12754         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
12755         Maybe overwrite the btrace configuration's cpu.
12756         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
12757         (btrace_fetch): Add cpu parameter.  Update callers.
12758         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
12759         Maybe overwrite the btrace configuration's cpu.  Skip enabling
12760         errata workarounds if the vendor is unknown.
12761         * python/py-record-btrace.c: Include record-btrace.h.
12762         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
12763         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
12764         * record-btrace.c (record_btrace_cpu_state_kind): New.
12765         (record_btrace_cpu): New.
12766         (set_record_btrace_cpu_cmdlist): New.
12767         (record_btrace_get_cpu): New.
12768         (require_btrace_thread, record_btrace_info)
12769         (record_btrace_resume_thread): Call record_btrace_get_cpu.
12770         (cmd_set_record_btrace_cpu_none): New.
12771         (cmd_set_record_btrace_cpu_auto): New.
12772         (cmd_set_record_btrace_cpu): New.
12773         (cmd_show_record_btrace_cpu): New.
12774         (_initialize_record_btrace): Initialize set/show record btrace cpu
12775         commands.
12776         * record-btrace.h (record_btrace_get_cpu): New.
12777
12778 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12779
12780         * record.c (set_record_command): Fix typo in message.
12781
12782 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12783
12784         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
12785
12786 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12787
12788         * infrun.c (process_event_stop_test): Call
12789         gdbarch_in_indirect_branch_thunk.
12790         * gdbarch.sh (in_indirect_branch_thunk): New.
12791         * gdbarch.c: Regenerated.
12792         * gdbarch.h: Regenerated.
12793         * x86-tdep.h: New.
12794         * x86-tdep.c: New.
12795         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
12796         (HFILES_NO_SRCDIR): Add x86-tdep.h.
12797         (ALLDEPFILES): Add x86-tdep.c.
12798         * arch-utils.h (default_in_indirect_branch_thunk): New.
12799         * arch-utils.c (default_in_indirect_branch_thunk): New.
12800         * i386-tdep: Include x86-tdep.h.
12801         (i386_in_indirect_branch_thunk): New.
12802         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
12803         function.
12804         * amd64-tdep: Include x86-tdep.h.
12805         (amd64_in_indirect_branch_thunk): New.
12806         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
12807
12808 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
12809
12810         PR gdb/23053
12811         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
12812         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
12813         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
12814         regression.
12815
12816 2018-04-12  Tom Tromey  <tom@tromey.com>
12817
12818         * rust-lang.c (rust_print_struct_def): Remove univariant code.
12819         (rust_evaluate_subexp): Likewise.
12820
12821 2018-04-12  Pedro Alves  <palves@redhat.com>
12822
12823         * procfs.c (procfs_detach): Make forward declaration's prototype
12824         match definition's protototype.
12825         (proc_get_LDT_entry): Remove stale do_cleanups call.
12826
12827 2018-04-12  Pedro Alves  <palves@redhat.com>
12828
12829         * target.h (target_ops::to_has_exited): Delete.
12830         (target_has_exited): Delete.
12831         * target-delegates.c: Regenerate.
12832
12833 2018-04-11  Pedro Alves  <palves@redhat.com>
12834
12835         * target.c (fileio_fh_t::t): Add comment.
12836         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12837         (target_fileio_close): Handle a NULL target.
12838         (invalidate_fileio_fh): New.
12839         (target_close): Call it.
12840         * remote.c (remote_hostio_send_command): No longer check whether
12841         remote_desc is open.
12842
12843 2018-04-11  Pedro Alves  <palves@redhat.com>
12844
12845         * target.c (fileio_fh_t): Make it a named struct instead of a
12846         typedef.
12847         (fileio_fh_t::is_closed): New method.
12848         (DEF_VEC_O (fileio_fh_t)): Remove.
12849         (fileio_fhandles): Now a std::vector.
12850         (is_closed_fileio_fh): Delete.
12851         (acquire_fileio_fd): Adjust.  Rename parameters.
12852         (release_fileio_fd): Adjust.
12853         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
12854         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12855         (target_fileio_close): Adjust.
12856
12857 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
12858
12859         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
12860         index.
12861
12862 2018-04-10  Pedro Alves  <palves@redhat.com>
12863
12864         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
12865         (scoped_finish_thread_state): New class.
12866         * infcmd.c (run_command_1): Use it instead of finish_thread_state
12867         cleanup.
12868         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
12869         (fetch_inferior_event, normal_stop): Likewise.
12870         * thread.c (finish_thread_state_cleanup): Delete.
12871
12872 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12873             Pedro Alves  <palves@redhat.com>
12874
12875         * value.c: Include "selftest.h" and "common/array-view.h".
12876         (struct range) <operator ==>: New.
12877         (test_ranges_contain): New.
12878         (check_ranges_vector): New.
12879         (test_insert_into_bit_range_vector): New.
12880         (_initialize_values): Register selftests.
12881         * common/array-view.h (operator==, operator!=): New.
12882
12883 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12884
12885         * common/gdb_vecs.h (unordered_remove): Add overload that takes
12886         an iterator.
12887         * inline-frame.c: Include <algorithm>.
12888         (struct inline_state): Add constructor.
12889         (inline_state_s): Remove.
12890         (DEF_VEC_O(inline_state_s)): Remove.
12891         (inline_states): Change type to std::vector.
12892         (find_inline_frame_state): Adjust to std::vector.
12893         (allocate_inline_frame_state): Remove.
12894         (clear_inline_frame_state): Adjust to std::vector.
12895         (skip_inline_frames): Adjust to std::vector.
12896
12897 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12898
12899         * tracepoint.h (struct trace_state_variable): Add constructor.
12900         <name>: Change type to std::string.
12901         * tracepoint.c (tsv_s): Remove.
12902         (DEF_VEC_O(tsv_s)): Remove.
12903         (tvariables): Change to std::vector.
12904         (create_trace_state_variable): Adjust to std::vector.
12905         (find_trace_state_variable): Likewise.
12906         (find_trace_state_variable_by_number): Likewise.
12907         (delete_trace_state_variable): Likewise.
12908         (trace_variable_command): Adjust to std::string.
12909         (delete_trace_variable_command): Likewise.
12910         (tvariables_info_1): Adjust to std::vector.
12911         (save_trace_state_variables): Likewise.
12912         (start_tracing): Likewise.
12913         (merge_uploaded_trace_state_variables): Adjust to std::vector
12914         and std::string.
12915         * target.h (struct target_ops)
12916         <to_download_trace_state_variable>: Pass reference to
12917         trace_state_variable.
12918         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
12919         * target-delegates.c: Re-generate.
12920         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
12921         (mi_tsv_deleted): Likewise.
12922         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
12923         * remote.c (remote_download_trace_state_variable): Change
12924         pointer to reference and adjust.
12925         * make-target-delegates (parse_argtypes): Handle references.
12926         (write_function_header): Likewise.
12927         (munge_type): Likewise.
12928
12929 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12930
12931         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12932         string_view-selftests.c.
12933         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
12934         testsuite.
12935         * unittests/basic_string_view/cons/char/1.cc: Likewise.
12936         * unittests/basic_string_view/cons/char/2.cc: Likewise.
12937         * unittests/basic_string_view/cons/char/3.cc: Likewise.
12938         * unittests/basic_string_view/element_access/char/1.cc:
12939         Likewise.
12940         * unittests/basic_string_view/element_access/char/empty.cc:
12941         Likewise.
12942         * unittests/basic_string_view/element_access/char/front_back.cc:
12943         Likewise.
12944         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
12945         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
12946         Likewise.
12947         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
12948         Likewise.
12949         * unittests/basic_string_view/modifiers/swap/char/1.cc:
12950         Likewise.
12951         * unittests/basic_string_view/operations/compare/char/1.cc:
12952         Likewise.
12953         * unittests/basic_string_view/operations/compare/char/13650.cc:
12954         Likewise.
12955         * unittests/basic_string_view/operations/copy/char/1.cc:
12956         Likewise.
12957         * unittests/basic_string_view/operations/data/char/1.cc:
12958         Likewise.
12959         * unittests/basic_string_view/operations/find/char/1.cc:
12960         Likewise.
12961         * unittests/basic_string_view/operations/find/char/2.cc:
12962         Likewise.
12963         * unittests/basic_string_view/operations/find/char/3.cc:
12964         Likewise.
12965         * unittests/basic_string_view/operations/find/char/4.cc:
12966         Likewise.
12967         * unittests/basic_string_view/operations/rfind/char/1.cc:
12968         Likewise.
12969         * unittests/basic_string_view/operations/rfind/char/2.cc:
12970         Likewise.
12971         * unittests/basic_string_view/operations/rfind/char/3.cc:
12972         Likewise.
12973         * unittests/basic_string_view/operations/substr/char/1.cc:
12974         Likewise.
12975         * unittests/basic_string_view/operators/char/2.cc: Likewise.
12976         * unittests/string_view-selftests.c: New file.
12977
12978 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12979
12980         * unittests/basic_string_view/capacity/1.cc: New file.
12981         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
12982         * unittests/basic_string_view/cons/char/1.cc: New file.
12983         * unittests/basic_string_view/cons/char/2.cc: New file.
12984         * unittests/basic_string_view/cons/char/3.cc: New file.
12985         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
12986         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
12987         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
12988         * unittests/basic_string_view/element_access/char/1.cc: New file.
12989         * unittests/basic_string_view/element_access/char/2.cc: New file.
12990         * unittests/basic_string_view/element_access/char/empty.cc: New file.
12991         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
12992         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
12993         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
12994         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
12995         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
12996         * unittests/basic_string_view/include.cc: New file.
12997         * unittests/basic_string_view/inserters/char/1.cc: New file.
12998         * unittests/basic_string_view/inserters/char/2.cc: New file.
12999         * unittests/basic_string_view/inserters/char/3.cc: New file.
13000         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
13001         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
13002         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
13003         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
13004         * unittests/basic_string_view/literals/types.cc: New file.
13005         * unittests/basic_string_view/literals/values.cc: New file.
13006         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
13007         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
13008         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
13009         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
13010         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
13011         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
13012         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
13013         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
13014         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
13015         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
13016         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
13017         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
13018         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
13019         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
13020         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
13021         * unittests/basic_string_view/operations/data/char/1.cc: New file.
13022         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
13023         * unittests/basic_string_view/operations/find/char/1.cc: New file.
13024         * unittests/basic_string_view/operations/find/char/2.cc: New file.
13025         * unittests/basic_string_view/operations/find/char/3.cc: New file.
13026         * unittests/basic_string_view/operations/find/char/4.cc: New file.
13027         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
13028         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
13029         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
13030         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
13031         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
13032         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
13033         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
13034         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
13035         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
13036         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
13037         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
13038         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
13039         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
13040         * unittests/basic_string_view/operators/char/2.cc: New file.
13041         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
13042         * unittests/basic_string_view/range_access/char/1.cc: New file.
13043         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
13044         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
13045         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
13046         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
13047         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
13048         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
13049         * unittests/basic_string_view/requirements/typedefs.cc: New file.
13050         * unittests/basic_string_view/typedefs.cc: New file.
13051         * unittests/basic_string_view/types/1.cc: New file.
13052
13053 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
13054
13055         * common/gdb_string_view.h: Remove libstdc++ implementation
13056         details, adjust to gdb reality.
13057         * common/gdb_string_view.tcc: Likewise.
13058         * cli/cli-script.c (struct string_view): Remove.
13059         (user_args) <m_args>: Change element type to gdb::string_view.
13060         (user_args::insert_args): Adjust.
13061
13062 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
13063
13064         * common/gdb_string_view.h: New file.
13065         * common/gdb_string_view.tcc: New file.
13066
13067 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
13068
13069         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
13070         * configure: Re-generate.
13071
13072 2018-04-09  Pedro Alves  <palves@redhat.com>
13073
13074         * gdbarch.sh: Include "observable.h" instead of "observer.h".
13075         (set_target_gdbarch): Call
13076         gdb::observers::architecture_changed.notify instead of
13077         observer_notify_architecture_changed.
13078
13079 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13080
13081         * tracepoint.c (struct current_traceframe_cleanup): Remove.
13082         (do_restore_current_traceframe_cleanup): Remove.
13083         (restore_current_traceframe_cleanup_dtor): Remove.
13084         (make_cleanup_restore_current_traceframe): Remove.
13085         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
13086         New.
13087         * tracepoint.h (struct scoped_restore_current_traceframe): New.
13088         * infrun.c (fetch_inferior_event): Use
13089         scoped_restore_current_traceframe.
13090
13091 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13092
13093         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
13094         Remove.
13095         <n_allocated_type_units>: Remove.
13096         <all_type_units>: Change to std::vector.
13097         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
13098         to std::vector change.
13099         (dwarf2_per_objfile::get_cutu): Likewise.
13100         (dwarf2_per_objfile::get_tu): Likewise.
13101         (create_signatured_type_table_from_index): Likewise.
13102         (create_signatured_type_table_from_debug_names): Likewise.
13103         (dw2_symtab_iter_next): Likewise.
13104         (dw2_print_stats): Likewise.
13105         (dw2_expand_all_symtabs): Likewise.
13106         (dw2_expand_marked_cus): Likewise.
13107         (dw2_debug_names_iterator::next): Likewise.
13108         (dwarf2_initialize_objfile): Likewise.
13109         (add_signatured_type_cu_to_table): Likewise.
13110         (create_all_type_units): Likewise.
13111         (add_type_unit): Likewise.
13112         (struct tu_abbrev_offset): Add constructor.
13113         (build_type_psymtabs_1): Adjust to std::vector change.
13114         (print_tu_stats): Likewise.
13115         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
13116         (write_debug_names): Likewise.
13117
13118 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13119
13120         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
13121         Make an std::vector.
13122         <n_comp_units>: Remove.
13123         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
13124         to std::vector change.
13125         (dwarf2_per_objfile::get_cutu): Likewise.
13126         (dwarf2_per_objfile::get_cu): Likewise.
13127         (create_cus_from_index): Likewise.
13128         (create_addrmap_from_index): Likewise.
13129         (create_addrmap_from_aranges): Likewise.
13130         (dwarf2_read_index): Likewise.
13131         (dw2_find_last_source_symtab): Likewise.
13132         (dw2_map_symtabs_matching_filename): Likewise.
13133         (dw2_symtab_iter_next): Likewise.
13134         (dw2_print_stats): Likewise.
13135         (dw2_expand_all_symtabs): Likewise.
13136         (dw2_expand_symtabs_with_fullname): Likewise.
13137         (dw2_expand_marked_cus): Likewise.
13138         (dw2_map_symbol_filenames): Likewise.
13139         (create_cus_from_debug_names): Likewise.
13140         (dwarf2_read_debug_names): Likewise.
13141         (dw2_debug_names_iterator::next): Likewise.
13142         (dwarf2_initialize_objfile): Likewise.
13143         (set_partial_user): Likewise.
13144         (dwarf2_build_psymtabs_hard): Likewise.
13145         (read_comp_units_from_section): Remove arguments, adjust to
13146         std::vector change.
13147         (create_all_comp_units): Adjust to std::vector and
13148         read_comp_units_from_section changes.
13149         (dwarf2_find_containing_comp_unit): Adjust to std::vector
13150         change.
13151         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
13152         (psyms_seen_size): Likewise.
13153         (write_gdbindex): Likewise.
13154         (write_debug_names): Likewise.
13155
13156 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13157
13158         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
13159         with dwarf2_per_objfile.
13160         (create_cus_from_index): Likewise.
13161         (create_signatured_type_table_from_index): Likewise.
13162         (dwarf2_read_index): Likewise.
13163         (dwarf2_initialize_objfile): Likewise.
13164         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
13165         per_cu rather than get_dwarf2_per_objfile.
13166
13167 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13168
13169         * dwarf2read.h (struct signatured_type): Forward declare.
13170         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
13171         New methods.
13172         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
13173         (dw2_get_cutu): ...this.
13174         (dwarf2_per_objfile::get_cu): Rename from...
13175         (dw2_get_cu): ...this.
13176         (dwarf2_per_objfile::get_tu): New.
13177         (create_addrmap_from_index): Adjust.
13178         (create_addrmap_from_aranges): Adjust.
13179         (dw2_find_last_source_symtab): Adjust.
13180         (dw2_map_symtabs_matching_filename): Adjust.
13181         (dw2_symtab_iter_next): Adjust.
13182         (dw2_print_stats): Adjust.
13183         (dw2_expand_all_symtabs): Adjust.
13184         (dw2_expand_symtabs_with_fullname): Adjust.
13185         (dw2_expand_marked_cus): Adjust.
13186         (dw_expand_symtabs_matching_file_matcher): Adjust.
13187         (dw2_map_symbol_filenames): Adjust.
13188         (dw2_debug_names_iterator::next): Adjust.
13189         (dwarf2_initialize_objfile): Adjust.
13190         (set_partial_user): Adjust.
13191         (dwarf2_build_psymtabs_hard): Adjust.
13192
13193 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13194
13195         * dwarf2read.c (create_signatured_type_table_from_debug_names):
13196         Remove unused variables.
13197         (dw2_map_symtabs_matching_filename): Likewise.
13198         (dwarf2_record_block_ranges): Likewise.
13199         (dwarf2_read_addr_index): Likewise.
13200         (follow_die_offset): Likewise.
13201
13202 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13203
13204         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
13205         to symbol_file_add_main.
13206
13207 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13208
13209         PR mi/22299
13210         * mi/mi-console.c (do_fputc_async_safe): New.
13211         (mi_console_file::write_async_safe): New.
13212         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
13213         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
13214         New.
13215         * ui-file.c (ui_file::putstrn): Adjust call to
13216         fputstrn_unfiltered.
13217         * utils.c (printchar): Replace do_fputs and do_fprintf
13218         parameters by do_fputc.
13219         (fputstr_filtered): Adjust call to printchar.
13220         (fputstr_unfiltered): Likewise.
13221         (fputstrn_filtered): Likewise.
13222         (fputstrn_unfiltered): Add do_fputc parameter, pass to
13223         printchar.
13224         * utils.h (do_fputc_ftype): New typedef.
13225         (fputstrn_unfiltered): Add do_fputc parameter.
13226
13227 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13228
13229         * regformats/i386/i386-avx.dat: Remove.
13230
13231 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13232
13233         PR gdb/22979
13234         * amd64-tdep.c (amd64_none_init_abi): New function.
13235         (amd64_x32_none_init_abi): New function.
13236         (_initialize_amd64_tdep): Register handlers for x86-64 and
13237         x64_32 with GDB_OSABI_NONE.
13238         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
13239         GDB_OSABI_NONE osabi.
13240
13241 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13242
13243         PR gdb/22980
13244         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
13245         GDB_OSABI_NONE.
13246         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
13247         * osabi.c (gdb_osabi_names): Add "unknown" entry.
13248
13249 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13250
13251         * common/byte-vector.h (char_vector): New type.
13252         * target.h (target_read_alloc): Return
13253         gdb::optional<byte_vector>.
13254         (target_read_stralloc): Return gdb::optional<char_vector>.
13255         (target_get_osdata): Return gdb::optional<char_vector>.
13256         * target.c (target_read_alloc_1): Templatize.  Replacement
13257         manual memory management with vector.
13258         (target_read_alloc): Change return type, adjust.
13259         (target_read_stralloc): Change return type, adjust.
13260         (target_get_osdata): Change return type, adjust.
13261         * auxv.c (struct auxv_info) <length>: Remove.
13262         <data>: Change type to gdb::optional<byte_vector>.
13263         (auxv_inferior_data_cleanup): Free auxv_info with delete.
13264         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
13265         (target_auxv_search): Adjust.
13266         (fprint_target_auxv): Adjust.
13267         * avr-tdep.c (avr_io_reg_read_command): Adjust.
13268         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
13269         (linux_make_corefile_notes): Adjust.
13270         * osdata.c (get_osdata): Adjust.
13271         * remote.c (remote_get_threads_with_qxfer): Adjust.
13272         (remote_memory_map): Adjust.
13273         (remote_traceframe_info): Adjust.
13274         (btrace_read_config): Adjust.
13275         (remote_read_btrace): Adjust.
13276         (remote_pid_to_exec_file): Adjust.
13277         * solib-aix.c (solib_aix_get_library_list): Adjust.
13278         * solib-dsbt.c (decode_loadmap): Don't free buf.
13279         (dsbt_get_initial_loadmaps): Adjust.
13280         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
13281         * solib-target.c (solib_target_current_sos): Adjust.
13282         * tracepoint.c (sdata_make_value): Adjust.
13283         * xml-support.c (xinclude_start_include): Adjust.
13284         (xml_fetch_content_from_file): Adjust.
13285         * xml-support.h (xml_fetch_another): Change return type.
13286         (xml_fetch_content_from_file): Change return type.
13287         * xml-syscall.c (xml_init_syscalls_info): Adjust.
13288         * xml-tdesc.c (file_read_description_xml): Adjust.
13289         (fetch_available_features_from_target): Change return type.
13290         (target_fetch_description_xml): Adjust.
13291         (target_read_description_xml): Adjust.
13292
13293 2018-04-06  Tom Tromey  <tom@tromey.com>
13294
13295         * value.c (~value): Update.
13296         (struct value) <contents>: Now unique_xmalloc_ptr.
13297         (value_contents_bits_eq, allocate_value_contents)
13298         (value_contents_raw, value_contents_all_raw)
13299         (value_contents_for_printing, value_contents_for_printing_const)
13300         (set_value_enclosing_type): Update.
13301
13302 2018-04-06  Tom Tromey  <tom@tromey.com>
13303
13304         * value.c (range_s): Remove typedef, VEC.
13305         (struct range): Add operator<.
13306         (range_lessthan): Remove.
13307         (ranges_contain): Change type.
13308         (~value): Update.
13309         (struct value) <unavailable, optimized_out>: Now std::vector.
13310         (value_entirely_available)
13311         (value_entirely_covered_by_range_vector)
13312         (value_entirely_unavailable, value_entirely_optimized_out):
13313         Update.
13314         (insert_into_bit_range_vector): Change argument type.
13315         (find_first_range_overlap): Likewise.
13316         (struct ranges_and_idx, value_contents_bits_eq)
13317         (require_not_optimized_out, require_available): Update.
13318         (ranges_copy_adjusted): Change argument types.
13319         (value_optimized_out, value_copy, value_fetch_lazy): Update.
13320
13321 2018-04-06  Tom Tromey  <tom@tromey.com>
13322
13323         * value.c (~value): Update.
13324         (struct value) <parent>: Now a value_ref_ptr.
13325         (value_parent, set_value_parent, value_address, value_copy):
13326         Update.
13327
13328 2018-04-06  Tom Tromey  <tom@tromey.com>
13329
13330         * value.c (struct value): Add constructor, destructor, and member
13331         initializers.
13332         (allocate_value_lazy, value_decref): Update.
13333
13334 2018-04-06  Tom Tromey  <tom@tromey.com>
13335
13336         * value.c (struct value) <released, next>: Remove.
13337         (all_values): Now a std::vector.
13338         (allocate_value_lazy): Update.
13339         (value_next): Remove.
13340         (value_mark, value_free_to_mark, release_value)
13341         (value_release_to_mark): Update.
13342
13343 2018-04-06  Tom Tromey  <tom@tromey.com>
13344
13345         * value.h (fetch_subexp_value, value_release_to_mark): Update.
13346         (free_value_chain): Remove.
13347         * value.c (free_value_chain): Remove.
13348         (value_release_to_mark): Return a std::vector.
13349         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
13350         std::vector.
13351         (check_condition): Update.
13352         * eval.c (fetch_subexp_value): Change "val_chain" to a
13353         std::vector.
13354         * breakpoint.c (update_watchpoint): Update.
13355         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
13356
13357 2018-04-06  Tom Tromey  <tom@tromey.com>
13358
13359         * value.h (free_all_values): Remove.
13360         * value.c (free_all_values): Remove.
13361
13362 2018-04-06  Tom Tromey  <tom@tromey.com>
13363
13364         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
13365         (value_history_chain, value_history_count): Remove.
13366         (value_history): New global.
13367         (record_latest_value, access_value_history, show_values)
13368         (preserve_values): Update.
13369
13370 2018-04-06  Tom Tromey  <tom@tromey.com>
13371
13372         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
13373         * varobj.c (varobj_set_display_format, varobj_set_value)
13374         (install_default_visualizer, construct_visualizer)
13375         (install_new_value, ~varobj, varobj_get_value_type)
13376         (my_value_of_variable, varobj_editable_p): Update.
13377         * c-varobj.c (c_describe_child, c_value_of_variable)
13378         (cplus_number_of_children, cplus_describe_child): Update.
13379         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
13380         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
13381         (ada_value_of_variable, ada_value_is_changeable_p): Update.
13382
13383 2018-04-06  Tom Tromey  <tom@tromey.com>
13384
13385         * printcmd.c (last_examine_address): Change type to
13386         value_ref_ptr.
13387         (do_examine, x_command): Update.
13388
13389 2018-04-06  Tom Tromey  <tom@tromey.com>
13390
13391         * value.c (release_value): Update.
13392         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
13393         (struct bpstats) <val>: Now a value_ref_ptr.
13394         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
13395         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
13396         (~watchpoint, print_it_watchpoint, watch_command_1)
13397         (invalidate_bp_value_on_memory_change): Update.
13398
13399 2018-04-06  Tom Tromey  <tom@tromey.com>
13400
13401         * varobj.c (varobj_clear_saved_item)
13402         (update_dynamic_varobj_children, install_new_value, ~varobj):
13403         Update.
13404         * value.h (value_incref): Move declaration earlier.
13405         (value_decref): Rename from value_free.
13406         (struct value_ref_policy): New.
13407         (value_ref_ptr): New typedef.
13408         (struct value_deleter): Remove.
13409         (gdb_value_up): Remove typedef.
13410         (release_value): Change return type.
13411         (release_value_or_incref): Remove.
13412         * value.c (set_value_parent): Update.
13413         (value_incref): Change return type.
13414         (value_decref): Rename from value_free.
13415         (value_free_to_mark, free_all_values, free_value_chain): Update.
13416         (release_value): Return value_ref_ptr.
13417         (release_value_or_incref): Remove.
13418         (record_latest_value, set_internalvar, clear_internalvar):
13419         Update.
13420         * stack.c (info_frame_command): Don't call value_free.
13421         * python/py-value.c (valpy_dealloc, valpy_new)
13422         (value_to_value_object): Update.
13423         * printcmd.c (do_examine): Update.
13424         * opencl-lang.c (lval_func_free_closure): Update.
13425         * mi/mi-main.c (register_changed_p): Don't call value_free.
13426         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
13427         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
13428         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
13429         value_free.
13430         * guile/scm-value.c (vlscm_free_value_smob)
13431         (vlscm_scm_from_value): Update.
13432         * frame.c (frame_register_unwind, frame_unwind_register_signed)
13433         (frame_unwind_register_unsigned, get_frame_register_bytes)
13434         (put_frame_register_bytes): Don't call value_free.
13435         * findvar.c (address_from_register): Don't call value_free.
13436         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
13437         * dwarf2loc.c (entry_data_value_free_closure)
13438         (value_of_dwarf_reg_entry, free_pieced_value_closure)
13439         (dwarf2_evaluate_loc_desc_full): Update.
13440         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
13441         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
13442         (~watchpoint, watch_command_1)
13443         (invalidate_bp_value_on_memory_change): Update.
13444         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
13445
13446 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
13447
13448         PR gdb/23022
13449         * warning.m4: Add -Wno-error=deprecated-register.
13450         * configure: Re-generate.
13451
13452 2018-04-05  Tom Tromey  <tom@tromey.com>
13453
13454         * linespec.h: Remove include of "vec.h".
13455
13456 2018-04-05  Tom Tromey  <tom@tromey.com>
13457
13458         * linespec.c (typep): Remove typedef.
13459         (find_methods, find_superclass_methods): Take a std::vector.
13460         (find_method): Use std::vector.
13461
13462 2018-04-05  Tom Tromey  <tom@tromey.com>
13463
13464         * utils.c (compare_strings): Remove.
13465         * utils.h (compare_strings): Remove.
13466         * objc-lang.h (find_imps): Update.
13467         * objc-lang.c (find_methods): Take a std::vector.
13468         (uniquify_strings, find_imps): Likewise.
13469         * linespec.c (find_methods): Take a std::vector.
13470         (decode_objc): Use std::vector.
13471         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
13472         a std::vector.
13473         (find_method, find_function_symbols): Use std::vector.
13474
13475 2018-04-05  Tom Tromey  <tom@tromey.com>
13476
13477         * completer.c (completion_tracker::completion_tracker): Remove
13478         cast.
13479         (completion_tracker::discard_completions): Likewise.
13480         * breakpoint.c (ambiguous_names_p): Remove cast.
13481         * ada-lang.c (_initialize_ada_language): Remove cast.
13482         * utils.h (streq): Update.
13483         (streq_hash): Add new declaration.
13484         * utils.c (streq): Return bool.
13485         (streq_hash): New function.
13486
13487 2018-04-05  Tom Tromey  <tom@tromey.com>
13488
13489         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
13490         Remove a string copy.
13491
13492 2018-04-05  Tom Tromey  <tom@tromey.com>
13493
13494         * linespec.c (filter_results): Use std::vector.
13495         (decode_line_2, decode_line_full): Update.
13496
13497 2018-04-05  Tom Tromey  <tom@tromey.com>
13498
13499         * linespec.c (canonical_to_fullform): Return std::string.
13500         (filter_results): Update.
13501         (struct decode_line_2_item): Add constructor.
13502         <fullform, displayform>: Now std::string.
13503         (decode_line_2_compare_items): Now a std::sort comparator.
13504         (decode_line_2): Update.
13505
13506 2018-04-05  Tom Tromey  <tom@tromey.com>
13507
13508         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
13509         (unexpected_linespec_error): Update.
13510         (linespec_parse_basic, parse_linespec): Update.
13511
13512 2018-04-05  Tom Tromey  <tom@tromey.com>
13513
13514         * linespec.c (linespec_parse_basic): Reindent.
13515
13516 2018-04-05  Tom Tromey  <tom@tromey.com>
13517
13518         * minsyms.h (iterate_over_minimal_symbols): Update.
13519         * minsyms.c (iterate_over_minimal_symbols): Take a
13520         gdb::function_view.
13521         * linespec.c (struct collect_minsyms): Remove.
13522         (compare_msyms): Now a std::sort comparator.
13523         (add_minsym): Add parameters.
13524         (search_minsyms_for_name): Update.  Use std::vector.
13525
13526 2018-04-03  Tom Tromey  <tom@tromey.com>
13527
13528         * mipsread.c (read_alphacoff_dynamic_symtab): Use
13529         gdb::byte_vector.
13530
13531 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13532
13533         * MAINTAINERS (Write After Approval): Add Weimin Pan.
13534
13535 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13536
13537         PR gdb/16959
13538         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
13539         printing static type.
13540
13541 2018-04-01  Tom Tromey  <tom@tromey.com>
13542
13543         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
13544         (rs6000_xfer_shared_libraries): Update.
13545
13546 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
13547
13548         * common/gdb_vecs.h (char_ptr): Remove.
13549         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
13550
13551 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13552
13553         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
13554         with std::vector.
13555         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
13556
13557 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13558
13559         * tracepoint.h (struct uploaded_tp): Initialize fields.
13560         <actions, step_actions, cmd_strings>: Change type to
13561         std::vector<char *>.
13562         * tracepoint.c (get_uploaded_tp): Allocate with new.
13563         (free_uploaded_tps): Free with delete.
13564         (parse_tracepoint_definition): Adjust to std::vector change.
13565         * breakpoint.c (read_uploaded_action): Likewise.
13566         (create_tracepoint_from_upload): Likewise.
13567         * ctf.c (ctf_write_uploaded_tp): Likewise.
13568         (SET_ARRAY_FIELD): Likewise.
13569         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
13570
13571 2018-03-30  Tom Tromey  <tom@tromey.com>
13572
13573         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
13574         std::unique_ptr.
13575         (svr4_keep_data_in_core): Update.
13576         (svr4_read_so_list): Update.
13577
13578 2018-03-30  Tom Tromey  <tom@tromey.com>
13579
13580         * windows-nat.c (handle_output_debug_string, handle_exception):
13581         Update.
13582         * target.h (target_read_string): Update.
13583         * target.c (target_read_string): Change "string" to
13584         unique_xmalloc_ptr.
13585         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
13586         Update.
13587         * solib-frv.c (frv_current_sos): Update.
13588         * solib-dsbt.c (dsbt_current_sos): Update.
13589         * solib-darwin.c (darwin_current_sos): Update.
13590         * linux-thread-db.c (inferior_has_bug): Update.
13591         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
13592         Update.  Remove alloca.
13593         * ada-lang.c (ada_main_name): Update.
13594
13595 2018-03-30  Tom Tromey  <tom@tromey.com>
13596
13597         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
13598         (struct dwo_file_deleter): New.
13599         (dwo_file_up): New typedef.
13600         (open_and_init_dwo_file): Use dwo_file_up.
13601         (free_dwo_file_cleanup): Remove.
13602
13603 2018-03-30  Tom Tromey  <tom@tromey.com>
13604
13605         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
13606         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
13607
13608 2018-03-30  Tom Tromey  <tom@tromey.com>
13609
13610         * dwarf2read.c (class free_cached_comp_units): New class.
13611         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
13612         (free_cached_comp_units): Remove function.
13613
13614 2018-03-30  Tom Tromey  <tom@tromey.com>
13615
13616         * utils.h (make_cleanup_unpush_target): Remove.
13617         * inf-ptrace.c (struct target_unpusher): New.
13618         (target_unpush_up) New typedef.
13619         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
13620         target_unpush_up.
13621         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
13622
13623 2018-03-27  Tom Tromey  <tom@tromey.com>
13624
13625         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
13626
13627 2018-03-27  Pedro Alves  <palves@redhat.com>
13628             Tom Tromey  <tom@tromey.com>
13629
13630         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
13631         destructor.  Now a class.
13632         (gdb_readline_wrapper_cleanup): Remove function.
13633         (gdb_readline_wrapper): Remove cleanups.
13634
13635 2018-03-27  Tom Tromey  <tom@tromey.com>
13636
13637         * typeprint.h (struct type_print_options) <local_typedefs,
13638         global_typedefs>: Remove "struct" keyword.
13639         (class typedef_hash_table): New class.
13640         (recursively_update_typedef_hash, add_template_parameters)
13641         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
13642         (find_typedef_in_hash): Don't declare.
13643         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
13644         (typedef_hash_table::recursively_update): Rename from
13645         recursively_update_typedef_hash.  Now a member.
13646         (typedef_hash_table::add_template_parameters): Rename from
13647         add_template_parameters.  Now a member.
13648         (typedef_hash_table::typedef_hash_table): Now a constructor;
13649         rename from create_typedef_hash.
13650         (typedef_hash_table::~typedef_hash_table): Now a destructor;
13651         rename from free_typedef_hash.
13652         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
13653         (do_free_global_table): Remove.
13654         (typedef_hash_table::typedef_hash_table): New constructor; renamed
13655         from copy_type_recursive.
13656         (create_global_typedef_table): Remove.
13657         (typedef_hash_table::find_global_typedef): Now a member of
13658         typedef_hash_table.
13659         (typedef_hash_table::find_typedef): Rename from
13660         find_typedef_in_hash; now a member.
13661         (whatis_exp): Update.
13662         * extension.h (struct ext_lang_type_printers): Add constructor and
13663         destructor.
13664         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
13665         declare.
13666         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
13667         Now a constructor; rename from start_ext_lang_type_printers.
13668         (ext_lang_type_printers): Now a destructor; rename from
13669         free_ext_lang_type_printers.
13670         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
13671         Update.
13672         (c_type_print_base_struct_union): Update.  Remove cleanups.
13673
13674 2018-03-27  Tom Tromey  <tom@tromey.com>
13675
13676         * dwarf-index-write.c: Include <cmath>.
13677
13678 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13679
13680         * NEWS: Add entry describing new "set|show varsize-limit" command.
13681         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
13682         command.
13683         * printcmd.c (_initialize_printcmd): Add "set var" alias of
13684         "set variable".
13685
13686 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
13687
13688         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
13689         dwarf-index-write.c
13690         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
13691         * dwarf-index-common.c: New file.
13692         * dwarf-index-common.h: New file.
13693         * dwarf-index-write.c: New file.
13694         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
13695         (struct dwarf2_section_info): Move from here.
13696         (dwarf2_section_info_def): Likewise.
13697         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
13698         (offset_type): Likewise.
13699         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
13700         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
13701         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
13702         (byte_swap): Likewise.
13703         (MAYBE_SWAP): Likewise.
13704         (dwarf2_per_cu_ptr): Likewise.
13705         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
13706         (struct tu_stats): Likewise.
13707         (struct dwarf2_per_objfile): Likewise.
13708         (struct dwarf2_per_cu_data): Likewise.
13709         (struct signatured_type): Likewise.
13710         (sig_type_ptr): Likewise.
13711         (DEF_VEC_P (sig_type_ptr)): Likewise.
13712         (INDEX4_SUFFIX): Likewise.
13713         (INDEX5_SUFFIX): Likewise.
13714         (DEBUG_STR_SUFFIX): Likewise.
13715         (dwarf2_read_section): Make non-static.
13716         (mapped_index_string_hash): Move from here.
13717         (dwarf5_djb_hash): Likewise.
13718         (file_write): Likewise.
13719         (class data_buf): Likewise.
13720         (struct symtab_index_entry): Likewise.
13721         (struct mapped_symtab): Likewise.
13722         (find_slot): Likewise.
13723         (hash_expand): Likewise.
13724         (add_index_entry): Likewise.
13725         (uniquify_cu_indices): Likewise.
13726         (class c_str_view): Likewise.
13727         (class c_str_view_hasher): Likewise.
13728         (class vector_hasher): Likewise.
13729         (write_hash_table): Likewise.
13730         (psym_index_map): Likewise.
13731         (struct addrmap_index_data): Likewise.
13732         (add_address_entry): Likewise.
13733         (add_address_entry_worker): Likewise.
13734         (write_address_map): Likewise.
13735         (symbol_kind): Likewise.
13736         (write_psymbols): Likewise.
13737         (struct signatured_type_index_data): Likewise.
13738         (write_one_signatured_type): Likewise.
13739         (recursively_count_psymbols): Likewise.
13740         (recursively_write_psymbols): Likewise.
13741         (class debug_names): Likewise.
13742         (check_dwarf64_offsets): Likewise.
13743         (psyms_seen_size): Likewise.
13744         (write_gdbindex): Likewise.
13745         (write_debug_names): Likewise.
13746         (assert_file_size): Likewise.
13747         (write_psymtabs_to_index): Likewise.
13748         (save_gdb_index_command): Likewise.
13749         (_initialize_dwarf2_read): Don't register the "save gdb-index"
13750         command.
13751         * dwarf2read.h: New file.
13752
13753 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13754
13755         PR gdb/22670
13756         * dwarf2read.c (dwarf2_physname): Do not return the demangled
13757         symbol name if the CU's language stores symbol names in linkage
13758         format.
13759         * language.h (struct language_defn)
13760         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
13761         all instances of this struct.
13762
13763 2018-03-26  Tom Tromey  <tom@tromey.com>
13764
13765         * stack.c (backtrace_command_1): Remove verbose code.
13766
13767 2018-03-26  Tom Tromey  <tom@tromey.com>
13768
13769         * python/py-framefilter.c (py_print_type): Don't catch
13770         exceptions.  Return void.
13771         (py_print_value): Likewise.
13772         (py_print_single_arg): Likewise.
13773         (enumerate_args): Don't catch exceptions.
13774         (py_print_args): Likewise.
13775         (py_print_frame): Likewise.
13776         (gdbpy_apply_frame_filter): Catch exceptions here.
13777
13778 2018-03-26  Tom Tromey  <tom@tromey.com>
13779
13780         * stack.c (_initialize_stack): Remove trailing newlines from help
13781         text.  Add "Usage" line to "backtrace" help.
13782
13783 2018-03-26  Tom Tromey  <tom@tromey.com>
13784
13785         PR python/16486:
13786         * python/py-framefilter.c (py_print_args): Call wrap_hint.
13787
13788 2018-03-26  Tom Tromey  <tom@tromey.com>
13789
13790         * python/py-framefilter.c (py_print_single_arg): Return
13791         EXT_LANG_BT_ERROR from catch.
13792
13793 2018-03-26  Tom Tromey  <tom@tromey.com>
13794
13795         PR backtrace/15584:
13796         * stack.c (backtrace_command_1): Move some code into no-filters
13797         "if".
13798
13799 2018-03-26  Tom Tromey  <tom@tromey.com>
13800
13801         * python/py-framefilter.c (throw_quit_or_print_exception): New
13802         function.
13803         (gdbpy_apply_frame_filter): Use it.
13804
13805 2018-03-26  Tom Tromey  <tom@tromey.com>
13806
13807         PR cli/17716:
13808         * python/py-framefilter.c (py_print_type, py_print_value)
13809         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
13810         RETURN_MASK_ERROR.
13811
13812 2018-03-26  Tom Tromey  <tom@tromey.com>
13813
13814         * python/py-framefilter.c (enumerate_args): Use
13815         gdb::unique_xmalloc_ptr.
13816
13817 2018-03-26  Tom Tromey  <tom@tromey.com>
13818
13819         * python/py-framefilter.c (py_print_frame): Return
13820         EXT_LANG_BT_OK.
13821         (gdbpy_apply_frame_filter): Update comment.
13822         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
13823         Remove.
13824         <EXT_LANG_BT_NO_FILTERS>: Change value.
13825
13826 2018-03-26  Tom Tromey  <tom@tromey.com>
13827
13828         PR backtrace/15582:
13829         * stack.c (backtrace_command): Parse "hide" argument.
13830         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
13831         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
13832         constant.
13833
13834 2018-03-26  Tom Tromey  <tom@tromey.com>
13835
13836         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
13837         add "flags".
13838         (backtrace_command): Remove "fulltrace", add "flags".
13839
13840 2018-03-26  Tom Tromey  <tom@tromey.com>
13841
13842         * stack.c (backtrace_command): Rewrite command line parsing.
13843
13844 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13845
13846         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
13847
13848 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13849
13850         * filename-seen-cache.h: Add include guard.
13851
13852 2018-03-26  Keith Seitz  <keiths@redhat.com>
13853
13854         * symfile.c (place_section): Remove "struct" from section_addr_info
13855         in comment.
13856         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
13857         "struct" keyword from section_addr_info.
13858
13859 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
13860
13861         * regformats/regdef.h (reg): Add constructors.
13862
13863 2018-03-25  Pedro Alves  <palves@redhat.com>
13864
13865         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
13866         if then/else bodies in var_func_name extraction.
13867
13868 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
13869
13870         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
13871         lookup_minimal_symbol() to find symbol entry.
13872         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
13873
13874 2018-03-23  Keith Seitz  <keiths@redhat.com>
13875
13876         PR c++/22968
13877         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
13878         nested type definitions for C++, too.
13879
13880 2018-03-23  Tom Tromey  <tom@tromey.com>
13881
13882         * machoread.c (struct oso_el): Add a constructor.  Don't define as
13883         a typedef.
13884         (macho_register_oso): Remove.
13885         (macho_symtab_read): Take a std::vector.
13886         (oso_el_compare_name): Now a std::sort comparator.
13887         (macho_symfile_read_all_oso): Take a std::vector.
13888         (macho_symfile_read): Use std::vector.  Remove cleanups.
13889
13890 2018-03-22  Tom Tromey  <tom@tromey.com>
13891
13892         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
13893         (record_full_goto_bookmark): Use std::string.
13894
13895 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13896
13897         PR tdep/18295
13898         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
13899         a single mask.
13900
13901 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13902
13903         * rs6000-tdep.c (store_insn_p): New function.
13904         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
13905         and cr_reg to their unshifted values. Use store_insn_p to
13906         match LR saves using either R1 or fdata->alloca_reg. Use
13907         store_insn_p to match CR saves. Set alloca_reg_offset
13908         when alloca_reg and framep are set. Remove lr_reg shift
13909         when assigning to fdata->lr_register.
13910
13911 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13912
13913         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
13914         command line args instead of emitting a warning.
13915
13916 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13917
13918         * tracepoint.h (struct static_tracepoint_marker): Initialize
13919         fields, define default constructor, move constructor and move
13920         assignment, disable the rest.
13921         <str_id, extra>: Make std::string.
13922         (release_static_tracepoint_marker): Remove.
13923         (free_current_marker): Remove.
13924         * tracepoint.c (free_current_marker): Remove.
13925         (parse_static_tracepoint_marker_definition): Adjust to
13926         std::string, use new hex2str overload.
13927         (release_static_tracepoint_marker): Remove.
13928         (print_one_static_tracepoint_marker): Get marker by reference
13929         and adjust to std::string.
13930         (info_static_tracepoint_markers_command): Adjust to std::vector
13931         changes
13932         * target.h (static_tracepoint_marker_p): Remove typedef.
13933         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
13934         (struct target_ops) <to_static_tracepoint_marker_at>: Return
13935         bool.
13936         <to_static_tracepoint_markers_by_strid>: Return std::vector.
13937         * target-debug.h
13938         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
13939         (target_debug_print_std_vector_static_tracepoint_marker): New.
13940         (target_debug_print_struct_static_tracepoint_marker_p): Rename
13941         to...
13942         (target_debug_print_static_tracepoint_marker_p): ... this.
13943         * target-delegates.c: Re-generate.
13944         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
13945         Make std::string.
13946         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
13947         (decode_static_tracepoint_spec): Adjust to std::vector.
13948         (tracepoint_print_one_detail): Adjust to std::string.
13949         (strace_marker_decode_location): Adjust to std::string.
13950         (update_static_tracepoint): Adjust to std::string, remove call
13951         to release_static_tracepoint_marker.
13952         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
13953         Adjust to std::vector.
13954         * remote.c (remote_static_tracepoint_marker_at): Return bool.
13955         (remote_static_tracepoint_markers_by_strid): Adjust to
13956         std::vector.
13957         * common/rsp-low.h (hex2str): New overload with explicit count
13958         of bytes.
13959         * common/rsp-low.c (hex2str): New overload with explicit count
13960         of bytes.
13961         * unittests/rsp-low-selftests.c (test_hex2str): New function.
13962         (_initialize_rsp_low_selftests): Add test_hex2str test.
13963         * unittests/tracepoint-selftests.c
13964         (test_parse_static_tracepoint_marker_definition): Adjust to
13965         std::string.
13966
13967 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13968
13969         * tracepoint.c (parse_static_tracepoint_marker_definition):
13970         Consider case where the definition is followed by more
13971         definitions.
13972         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13973         tracepoint-selftests.c.
13974         * unittests/tracepoint-selftests.c: New.
13975
13976 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13977
13978         * MAINTAINERS (Write After Approval): Add Pedro Franco de
13979         Carvalho.
13980
13981 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13982
13983         * symtab.c (find_pc_sect_line): fixed indentation.
13984
13985 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13986
13987         * symtab.c (find_pc_sect_line): now uses binary search.
13988
13989 2018-03-19  Tom Tromey  <tom@tromey.com>
13990
13991         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
13992         "IDENT" production.
13993
13994 2018-03-19  Pedro Alves  <palves@redhat.com>
13995             Tom Tromey  <tom@tromey.com>
13996
13997         * unittests/observable-selftests.c: New file.
13998         * common/observable.h: New file.
13999         * observable.h: New file.
14000         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
14001         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
14002         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
14003         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
14004         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
14005         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
14006         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
14007         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
14008         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
14009         python/py-breakpoint.c, python/py-finishbreakpoint.c,
14010         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
14011         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
14012         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
14013         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
14014         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
14015         tui/tui-interp.c, valops.c: Update all users.
14016         * tui/tui-hooks.c (tui_bp_created_observer)
14017         (tui_bp_deleted_observer, tui_bp_modified_observer)
14018         (tui_inferior_exit_observer, tui_before_prompt_observer)
14019         (tui_normal_stop_observer, tui_register_changed_observer):
14020         Remove.
14021         (tui_observers_token): New global.
14022         (attach_or_detach, tui_attach_detach_observers): New functions.
14023         (tui_install_hooks, tui_remove_hooks): Use
14024         tui_attach_detach_observers.
14025         * record-btrace.c (record_btrace_thread_observer): Remove.
14026         (record_btrace_thread_observer_token): New global.
14027         * observer.sh: Remove.
14028         * observer.c: Rename to observable.c.
14029         * observable.c (namespace gdb_observers): Define new objects.
14030         (observer_debug): Move into gdb_observers namespace.
14031         (struct observer, struct observer_list, xalloc_observer_list_node)
14032         (xfree_observer_list_node, generic_observer_attach)
14033         (generic_observer_detach, generic_observer_notify): Remove.
14034         (_initialize_observer): Update.
14035         Don't include observer.inc.
14036         * Makefile.in (generated_files): Remove observer.h, observer.inc.
14037         (clean mostlyclean): Likewise.
14038         (observer.h, observer.inc): Remove targets.
14039         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
14040         (COMMON_SFILES): Use observable.c, not observer.c.
14041         * .gitignore: Remove observer.h.
14042
14043 2018-03-18  Tom Tromey  <tom@tromey.com>
14044
14045         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
14046         gdb::def_vector.
14047         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
14048
14049 2018-03-17  Tom Tromey  <tom@tromey.com>
14050
14051         * auto-load.c (auto_load_objfile_script_1): Use std::string.
14052
14053 2018-03-17  Tom Tromey  <tom@tromey.com>
14054
14055         * target.c (class scoped_target_fd): New.
14056         (target_fileio_close_cleanup): Remove.
14057         (target_fileio_read_alloc_1): Use scoped_target_fd.
14058
14059 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
14060
14061         * silent-rules.mk: New.
14062         * Makefile.in: Include silent-rules.mk
14063         (srcdir, VPATH, top_srcdir): Move up.
14064         (COMPILE): Add ECHO_CXX.
14065         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
14066         (init.c): Add ECHO_INIT_C.
14067         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
14068         (version.c): Add ECHO_GEN.
14069         (printcmd.o): Add ECHO_CXX.
14070         (target-float.o): Add ECHO_CXX.
14071         (ada-exp.o): Add ECHO_CXX.
14072         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
14073         (insight$(EXEEXT)): Add ECHO_CXXLD.
14074         * gnulib/configure.ac: Add AM_SILENT_RULES.
14075         * gnulib/aclocal.m4: Re-generate.
14076         * gnulib/configure: Re-generate.
14077         * gnulib/import/Makefile.in: Re-generate.
14078
14079 2018-03-16  Tom Tromey  <tom@tromey.com>
14080
14081         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
14082         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
14083         * utils.c (do_free_section_addr_info)
14084         (make_cleanup_free_section_addr_info): Remove.
14085         * symfile.h (struct other_sections): Add constructor.
14086         (struct section_addr_info): Remove.
14087         (section_addr_info): New typedef.
14088         (struct sym_fns) <sym_offsets>: Change type of parameter.
14089         (build_section_addr_info_from_objfile)
14090         (relative_addr_info_to_section_offsets, addr_info_make_relative)
14091         (default_symfile_offsets, symbol_file_add)
14092         (symbol_file_add_from_bfd)
14093         (build_section_addr_info_from_section_table): Update.
14094         (alloc_section_addr_info, free_section_addr_info): Don't declare.
14095         * symfile.c (alloc_section_addr_info): Remove.
14096         (build_section_addr_info_from_section_table): Change return type.
14097         Update.
14098         (build_section_addr_info_from_bfd)
14099         (build_section_addr_info_from_objfile): Likewise.
14100         (free_section_addr_info): Remove.
14101         (relative_addr_info_to_section_offsets): Change type of "addrs".
14102         (addrs_section_compar): Now a std::sort comparator.
14103         (addrs_section_sort): Change return type.
14104         (addr_info_make_relative): Change type of "addrs".  Update.
14105         (default_symfile_offsets, syms_from_objfile_1)
14106         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
14107         (symbol_file_add_separate): Update.
14108         (symbol_file_add): Change type of "addrs".  Update.
14109         (add_symbol_file_command): Update.  Remove cleanups.
14110         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
14111         cleanups.
14112         * symfile-debug.c (debug_sym_offsets): Change type of "info".
14113         * solib.c (solib_read_symbols): Update.
14114         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
14115         * machoread.c (macho_symfile_offsets): Update.
14116         * jit.c (jit_bfd_try_read_symtab): Update.
14117
14118 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
14119
14120         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14121         unittests/utils-selftests.c.
14122         * unittests/utils-selftests.c: New file.
14123
14124 2018-03-14  Tom Tromey  <tom@tromey.com>
14125
14126         PR cli/14977:
14127         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
14128         for NULL.
14129
14130 2018-03-14  Tom Tromey  <tom@tromey.com>
14131
14132         PR cli/19918:
14133         * printcmd.c (printf_pointer): Allow "-" in format.
14134
14135 2018-03-14  Tom Tromey  <tom@tromey.com>
14136
14137         * printcmd.c (_initialize_printcmd): Add usage to printf.
14138
14139 2018-03-14  Yao Qi  <qiyao@sourceware.org>
14140
14141         * MAINTAINERS: Update my email address.
14142
14143 2018-03-13  Tom Tromey  <tom@tromey.com>
14144
14145         * machoread.c (macho_check_dsym): Change filenamep to a
14146         std::string*.
14147         (macho_symfile_read): Update.
14148         * symfile.c (load_command): Use std::string.
14149
14150 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
14151
14152         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
14153         to error message string.
14154         (riscv_register_name): Use xsnprintf instead of sprintf.
14155         (riscv_insn::fetch_instruction): Use gdb_assert instead of
14156         internal_error.
14157         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
14158         error.
14159         (riscv_push_dummy_call): Likewise.
14160
14161 2018-03-12  Tom Tromey  <tom@tromey.com>
14162
14163         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
14164         Use gdb::byte_vector.
14165         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
14166
14167 2018-03-12  Yao Qi  <yao.qi@linaro.org>
14168
14169         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
14170         parameter type to readable_regcache.
14171         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
14172         the declaration.
14173
14174 2018-03-11  Tom Tromey  <tom@tromey.com>
14175
14176         * dwarf2read.c (struct nextfield): Add initializers.
14177         (struct nextfnfield): Remove.
14178         (struct fnfieldlist): Add initializers.  Remove "length" and
14179         "head", use std::vector.
14180         (struct decl_field_list): Remove.
14181         (struct field_info): Add initializers.
14182         <fields, baseclasses>: Now std::vector.
14183         <nbaseclasses, nfnfields, typedef_field_list_count,
14184         nested_types_list_count>: Remove.
14185         (dwarf2_add_field, dwarf2_add_type_defn)
14186         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
14187         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
14188         (process_structure_scope): Update.
14189
14190 2018-03-11  Tom Tromey  <tom@tromey.com>
14191
14192         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
14193         for use by std::sort.
14194         (build_type_psymtabs_1): Use std::vector.
14195
14196 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
14197
14198         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
14199         and LIBMPFR in the printed configuration.
14200
14201 2018-03-08  Tom Tromey  <tom@tromey.com>
14202
14203         * source.c (get_filename_and_charpos): Use scoped_fd.
14204         * nto-procfs.c (procfs_open_1): Use scoped_fd.
14205         (procfs_pidlist): Likewise.
14206         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
14207         (iterate_over_mappings): Likewise.
14208
14209 2018-03-08  Tom Tromey  <tom@tromey.com>
14210
14211         * infcall.c (struct call_return_meta_info)
14212         <stack_temporaries_enabled>: Remove.
14213         (get_call_return_value, call_function_by_hand_dummy): Update.
14214         * thread.c (disable_thread_stack_temporaries): Remove.
14215         (enable_thread_stack_temporaries): Remove.
14216         (thread_stack_temporaries_enabled_p): Return bool.
14217         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
14218         (get_last_thread_stack_temporary): Update.
14219         * eval.c (evaluate_subexp): Update.
14220         * gdbthread.h (class enable_thread_stack_temporaries): Now a
14221         class, not a function.
14222         (value_ptr, value_vec): Remove typedefs.
14223         (class thread_info) <stack_temporaries_enabled>: Now bool.
14224         <stack_temporaries>: Now a std::vector.
14225         (thread_stack_temporaries_enabled_p)
14226         (value_in_thread_stack_temporaries): Return bool.
14227
14228 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
14229
14230         * remote.c (putpkt_binary): Fix omitted bytes reporting.
14231         (getpkt_or_notif_sane_1): Likewise.
14232
14233 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14234
14235         * build-id.c (build_id_to_debug_bfd): Use std::string.
14236
14237 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14238
14239         * build-id.c (find_separate_debug_file_by_buildid): Return
14240         std::string.
14241         * build-id.h (find_separate_debug_file_by_buildid): Return
14242         std::string.
14243         * coffread.c (coff_symfile_read): Adjust to std::string.
14244         * elfread.c (elf_symfile_read): Adjust to std::string.
14245         * symfile.c (separate_debug_file_exists): Change parameter to
14246         std::string.
14247         (find_separate_debug_file): Return std::string.
14248         (find_separate_debug_file_by_debuglink): Return std::string.
14249         * symfile.h (find_separate_debug_file_by_debuglink): Return
14250         std::string.
14251
14252 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14253
14254         * common/xml-utils.c (xml_escape_text): Move code to...
14255         (xml_escape_text_append): ... this new function.
14256         * common/xml-utils.h (xml_escape_text_append): New declaration.
14257         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
14258         New function.
14259         (_initialize_xml_utils): register test_xml_escape_text_append as
14260         a selftest.
14261
14262 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
14263
14264         * defs.h: Remove MAX_REGISTER_SIZE.
14265         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
14266         asserts.
14267         * python/py-unwind.c (pyuw_sniffer): Likewise.
14268
14269 2018-03-07  Tom Tromey  <tom@tromey.com>
14270
14271         * linux-tdep.c (linux_info_proc): Update.
14272         * target.h (struct target_ops) <to_fileio_readlink>: Return
14273         optional<string>.
14274         (target_fileio_readlink): Return optional<string>.
14275         * remote.c (remote_hostio_readlink): Return optional<string>.
14276         * inf-child.c (inf_child_fileio_readlink): Return
14277         optional<string>.
14278         * target.c (target_fileio_readlink): Return optional<string>.
14279
14280 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
14281
14282         * regcache.c (cooked_read_test): Add riscv to the list of
14283         architectures that have a save_reggroup.
14284
14285 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14286
14287         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
14288         value is not a dynamic class object.
14289
14290 2018-03-06  Tom Tromey  <tom@tromey.com>
14291
14292         * rust-exp.y: Formatting fixes.
14293
14294 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14295
14296         * riscv-tdep.c (riscv_register_name): Remove target description
14297         support.
14298         (riscv_gdbarch_init): Remove target description check.
14299
14300 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14301
14302         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
14303         comment.
14304         * riscv-tdep.h: Likewise.
14305
14306 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14307
14308         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
14309         (riscv_pseudo_register_write): Delete.
14310         (riscv_gdbarch_init): Remove all use of pseudo registers.
14311
14312 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14313
14314         * record-btrace.c (btrace_print_lines): Replace cleanup
14315         parameter with RAII equivalents.
14316         (btrace_insn_history): Replace cleanup with RAII equivalents.
14317         * ui-out.h (make_cleanup_ui_out_list_begin_end,
14318         make_cleanup_ui_out_tuple_begin_end): Remove.
14319         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
14320         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
14321         make_cleanup_ui_out_list_begin_end): Remove.
14322
14323 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14324
14325         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
14326         parameter types to std::vector.  Use bool.
14327         (record_btrace_wait): Replace VEC(tp_t) with
14328         std::vector<thread_info *>.
14329         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
14330
14331 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14332
14333         * record-btrace.c (record_btrace_disable_callback): Remove.
14334         (struct scoped_btrace_disable): New.
14335         (record_btrace_open): Use scoped_btrace_disable.
14336
14337 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14338
14339         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
14340         reading values from registers.
14341
14342 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14343
14344         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
14345         where appropriate.
14346
14347 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14348
14349         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
14350         change parameter type.  Use GDB's print functions, and use
14351         core_addr_to_string where appropriate.
14352         (riscv_push_dummy_call): Use core_addr_to_string where
14353         appropriate, update call to riscv_print_arg_location, and reindent
14354         a few lines.
14355         (riscv_return_value): Update call to riscv_print_arg_location.
14356
14357 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14358             Tim Newsome <tim@sifive.com>
14359             Albert Ou <a0u@eecs.berkeley.edu>
14360             Darius Rad <darius@bluespec.com>
14361
14362         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
14363         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
14364         (ALLDEPFILES): Add riscv-tdep.c
14365         * configure.tgt: Add riscv support.
14366         * riscv-tdep.c: New file.
14367         * riscv-tdep.h: New file.
14368         * NEWS: Mention new target.
14369         * MAINTAINERS: Add entry for riscv.
14370
14371 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14372
14373         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
14374         fields within aggregates.
14375
14376 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
14377
14378         * record-btrace.c (btrace_print_lines): Change type of flags to
14379         gdb_disassembly_flags.
14380
14381 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14382
14383         * fbsd-nat.c: Include "inf-ptrace.h".
14384         (USE_SIGTRAP_SIGINFO): Conditionally define.
14385         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
14386         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
14387         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
14388         function.
14389         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
14390         Likewise.
14391         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
14392         Likewise.
14393         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
14394         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
14395         "supports_stopped_by_hw_breakpoint" target methods.
14396
14397 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14398
14399         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
14400         * fbsd-nat.c (debug_fbsd_nat): New variable.
14401         (show_fbsd_nat_debug): New function.
14402         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
14403         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
14404
14405 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14406
14407         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
14408         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
14409         prototype.
14410         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
14411         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
14412         method.
14413
14414 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14415
14416         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
14417         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
14418
14419 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14420
14421         * charset.c (struct charset_vector): New.
14422         (charsets): Change type to charset_vector.
14423         (find_charset_names): Adjust.
14424         (add_one): Adjust.
14425         (_initialize_charset): Adjust.
14426
14427 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14428
14429         * progspace.h (struct program_space) <deleted_solibs>: Change
14430         type to std::vector<std::string>.
14431         * progspace.c (clear_program_space_solib_cache): Adjust.
14432         * breakpoint.c (print_solib_event): Adjust.
14433         (check_status_catch_solib): Adjust.
14434         * solib.c (update_solib_list): Adjust.
14435         * ui-out.h (class ui_out) <field_string>: New overload.
14436         * ui-out.c (ui_out::field_string): New overload.
14437
14438 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14439
14440         * progspace.h (struct program_space): Add constructor and
14441         destructor, initialize fields.
14442         (add_program_space): Remove.
14443         * progspace.c (add_program_space): Rename to...
14444         (program_space::program_space): ... this.
14445         (release_program_space): Rename to...
14446         (program_space::~program_space): ... this.
14447         (delete_program_space): Use delete to delete program_space.
14448         (initialize_progspace): Use new to allocate program_space.
14449         * inferior.c (add_inferior_with_spaces): Likewise.
14450         (clone_inferior_command): Likewise.
14451         * infrun.c (follow_fork_inferior): Likewise.
14452         (handle_vfork_child_exec_or_exit): Likewise.
14453
14454 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14455
14456         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
14457         (delim_string_to_char_ptr_vec): Return std::vector of
14458         gdb::unique_xmalloc_ptr.
14459         (dirnames_to_char_ptr_vec_append): Take std::vector of
14460         gdb::unique_xmalloc_ptr.
14461         (dirnames_to_char_ptr_vec): Return std::vector of
14462         gdb::unique_xmalloc_ptr.
14463         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
14464         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
14465         (delim_string_to_char_ptr_vec): Return an std::vector of
14466         gdb::unique_xmalloc_ptr, adjust the code.
14467         (dirnames_to_char_ptr_vec_append): Take an std::vector of
14468         gdb::unique_xmalloc_ptr, adjust the code.
14469         (dirnames_to_char_ptr_vec): Return an std::vector of
14470         gdb::unique_xmalloc_ptr, adjust the code.
14471         * auto-load.c (auto_load_safe_path_vec): Change type to
14472         std::vector of gdb::unique_xmalloc_ptr.
14473         (auto_load_expand_dir_vars): Return an std::vector of
14474         gdb::unique_xmalloc_ptr, adjust the code.
14475         (auto_load_safe_path_vec_update): Adjust.
14476         (filename_is_in_auto_load_safe_path_vec): Adjust.
14477         (auto_load_objfile_script_1): Adjust.
14478         * build-id.c (build_id_to_debug_bfd): Adjust.
14479         * linux-thread-db.c (thread_db_load_search): Adjust.
14480         * source.c (add_path): Adjust.
14481         (openp): Adjust.
14482         * symfile.c (find_separate_debug_file): Adjust.
14483         * utils.c (do_free_char_ptr_vec): Remove.
14484         (make_cleanup_free_char_ptr_vec): Remove.
14485
14486 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
14487
14488         PR gdb/22907
14489         * common/pathstuff.c: Conditionally include "<windows.h>".
14490
14491 2018-03-01  Georg Sauthoff  <mail@georg.so>
14492
14493         PR gdb/22888
14494         * gcore.in: Quote variables and switch interpreter to bash.
14495
14496 2018-03-01  Tom Tromey  <tom@tromey.com>
14497
14498         * dwarf2read.c (alloc_discriminant_info): Fix default_index
14499         assertion.  Add assertion for discriminant_index.
14500         (quirk_rust_enum): Use correct base type name in univariant case.
14501
14502 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
14503
14504         * record.c (get_call_history_modifiers): Return a
14505         record_print_flags.
14506         (cmd_record_call_history): Adjust.
14507         * record-btrace.c (record_btrace_call_history): Adjust.
14508         (record_btrace_call_history_range): Adjust.
14509         (record_btrace_call_history_from): Adjust.
14510         * target-debug.h (target_debug_print_record_print_flags): New.
14511         * target-delegates.c: Re-generate.
14512         * target.c (target_call_history): Change flags type.
14513         (target_call_history_from): Likewise.
14514         (target_call_history_range): Likewise.
14515         * target.h (struct target_ops) <target_call_history>: Likewise.
14516         (target_call_history_from): Likewise.
14517         (target_call_history_range): Likewise.
14518
14519 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14520             Simon Marchi  <simon.marchi@polymtl.ca>
14521
14522         * common/common-utils.c: Include "sys/stat.h".
14523         (is_regular_file): Move here from "source.c"; change return
14524         type to "bool".
14525         * common/common-utils.h (is_regular_file): New prototype.
14526         * common/pathstuff.c (contains_dir_separator): New function.
14527         * common/pathstuff.h (contains_dir_separator): New prototype.
14528         * source.c: Don't include "sys/stat.h".
14529         (is_regular_file): Move to "common/common-utils.c".
14530
14531 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14532
14533         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
14534         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
14535         * auto-load.c: Include "common/pathstuff.h".
14536         * common/common-def.h (current_directory): Move here.
14537         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
14538         function.
14539         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
14540         prototype.
14541         * common/pathstuff.c: New file.
14542         * common/pathstuff.h: New file.
14543         * compile/compile.c: Include "common/pathstuff.h".
14544         * defs.h (current_directory): Move to "common/common-defs.h".
14545         * dwarf2read.c: Include "common/pathstuff.h".
14546         * exec.c: Likewise.
14547         * guile/scm-safe-call.c: Likewise.
14548         * linux-thread-db.c: Likewise.
14549         * main.c: Likewise.
14550         * nto-tdep.c: Likewise.
14551         * objfiles.c: Likewise.
14552         * source.c: Likewise.
14553         * symtab.c: Likewise.
14554         * utils.c: Include "common/pathstuff.h".
14555         (gdb_realpath): Move to "common/pathstuff.c".
14556         (gdb_realpath_keepfile): Likewise.
14557         (gdb_abspath): Likewise.
14558         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
14559         (gdb_realpath_keepfile): Likewise.
14560         (gdb_abspath): Likewise.
14561
14562 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
14563
14564         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
14565         wildcard process pid for super_resume for kernels with a
14566         specific bug.
14567
14568 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
14569
14570         * compile/compile.c (get_args): Add additional comments
14571         explaining function.
14572
14573 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
14574             Tom Tromey  <tom@tromey.com>
14575
14576         * target.h (memory_write_request_s): Remove typedef.  Don't define
14577         VEC.
14578         (target_write_memory_blocks): Change argument to std::vector.
14579         (struct memory_write_request): Add constructor.
14580         * target-memory.c (compare_block_starting_address): Return bool.
14581         Change argument types.
14582         (claim_memory): Change arguments to use std::vector.
14583         (split_regular_and_flash_blocks, blocks_to_erase)
14584         (compute_garbled_blocks): Likewise.
14585         (cleanup_request_data, cleanup_write_requests_vector): Remove.
14586         (target_write_memory_blocks): Change argument to std::vector.
14587         * symfile.c (struct load_section_data): Add constructor and
14588         destructor.  Use std::vector for "requests".
14589         (struct load_progress_data): Add initializers.
14590         (load_section_callback): Update.  Use "new".
14591         (clear_memory_write_data): Remove.
14592         (generic_load): Update.
14593
14594 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
14595
14596         * arch/aarch64.h: Use common/tdesc.h.
14597
14598 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14599
14600         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
14601         architecture with a 64-bit ABI.
14602
14603 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14604
14605         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
14606         ahead of target description loading.
14607
14608 2018-02-26  Tom Tromey  <tom@tromey.com>
14609
14610         * stack.c (backtrace_command_1): Update.
14611         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
14612         of "flags".
14613         * python/py-framefilter.c (py_print_frame)
14614         (gdbpy_apply_frame_filter): Change type of "flags".
14615         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
14616         of "flags".
14617         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
14618         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
14619         * extension.h (enum frame_filter_flag): Rename from
14620         frame_filter_flags.
14621         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
14622         (apply_ext_lang_frame_filter): Change type of "flags".
14623         * extension.c (apply_ext_lang_frame_filter): Change type of
14624         "flags".
14625         * extension-priv.h (struct extension_language_ops)
14626         <apply_frame_filter>: Change type of "flags".
14627
14628 2018-02-26  Tom Tromey  <tom@tromey.com>
14629
14630         PR python/16497:
14631         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
14632         off-by-one in py_end computation.
14633         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
14634         PRINT_MORE_FRAMES.
14635         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
14636         constant.
14637
14638 2018-02-26  Tom Tromey  <tom@tromey.com>
14639
14640         * dwarf2read.c (struct variant_field): New.
14641         (struct nextfield) <variant>: New field.
14642         (dwarf2_add_field): Handle DW_TAG_variant_part.
14643         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
14644         discriminated union.
14645         (read_structure_type): Handle DW_TAG_variant_part.
14646         (handle_struct_member_die): New function, extracted from
14647         process_structure_scope.  Handle DW_TAG_variant.
14648         (process_structure_scope): Handle discriminated unions.  Call
14649         handle_struct_member_die.
14650
14651 2018-02-26  Tom Tromey  <tom@tromey.com>
14652
14653         * rust-lang.h (rust_last_path_segment): Declare.
14654         * rust-lang.c (rust_last_path_segment): Now public.  Change
14655         contract.
14656         (struct disr_info): Remove.
14657         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
14658         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
14659         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
14660         (rust_enum_p, rust_enum_variant): New function.
14661         (rust_underscore_fields): Remove "offset" parameter.
14662         (rust_print_enum): New function.
14663         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
14664         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
14665         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
14666         enums.
14667         (rust_internal_print_type): New function, from rust_print_type.
14668         Remove enum code.
14669         (rust_print_type): Call rust_internal_print_type.
14670         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
14671         Update enum handling.
14672         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
14673         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
14674         (rust_union_quirks): New functions.
14675         (process_full_comp_unit, process_full_type_unit): Call
14676         rust_union_quirks.
14677         (process_structure_scope): Update rust_unions if necessary.
14678
14679 2018-02-26  Tom Tromey  <tom@tromey.com>
14680
14681         * value.h (value_union_variant): Declare.
14682         * valops.c (value_union_variant): New function.
14683         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
14684         (struct discriminant_info): New.
14685         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
14686         enumerator.
14687         (struct main_type) <flag_discriminated_union>: New field.
14688
14689 2018-02-26  Tom Tromey  <tom@tromey.com>
14690
14691         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14692         unittests/unpack-selftests.c.
14693         * unittests/unpack-selftests.c: New file.
14694         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
14695
14696 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14697
14698         * dwarf2read.c (struct partial_die_info) <read>: New method.
14699         (read_partial_die): Remove the declaration.
14700         (load_partial_dies): Update.
14701         (partial_die_info::partial_die_info):
14702         (read_partial_die): Change it to partial_die_info::read.
14703
14704 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14705
14706         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
14707         (fixup_partial_die): Remove declaration.
14708         (scan_partial_symbols): Update.
14709         (partial_die_parent_scope): Likewise.
14710         (partial_die_full_name): Likewise.
14711         (fixup_partial_die): Change it to partial_die_info::fixup.
14712
14713 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14714
14715         * dwarf2read.c (read_partial_die): Update the declaration.
14716         (load_partial_dies): Caller update.
14717         (read_partial_die): Remove one argument abbrev_len.
14718
14719 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14720
14721         * dwarf2read.c (struct partial_die_info): Add ctor, delete
14722         assignment operator.
14723         (load_partial_dies): Use ctor and copy ctor.
14724         (read_partial_die): Update.
14725         (dwarf2_cu::find_partial_die): Use ctor.
14726
14727 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14728
14729         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
14730         (find_partial_die_in_comp_unit): Change it to
14731         dwarf2_cu::find_partial_die.
14732         (find_partial_die): Update.
14733
14734 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14735
14736         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
14737         is NULL.
14738
14739 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14740
14741         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
14742
14743 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
14744
14745         * arch/amd64.h: Use common/tdesc.h.
14746         * arch/i386.c: Likewise.
14747         * arch/i386.h: Likewise.
14748         * arch/tic6x.c: Likewise.
14749         * arch/tdesc.h: Move file from here...
14750         * common/tdesc.h: ...to here.
14751         * features/aarch64-core.c: Regenerate.
14752         * features/aarch64-fpu.c: Regenerate.
14753         * features/i386/32bit-avx.c: Regenerate.
14754         * features/i386/32bit-avx512.c: Regenerate.
14755         * features/i386/32bit-core.c: Regenerate.
14756         * features/i386/32bit-linux.c: Regenerate.
14757         * features/i386/32bit-mpx.c: Regenerate.
14758         * features/i386/32bit-pkeys.c: Regenerate.
14759         * features/i386/32bit-sse.c: Regenerate.
14760         * features/i386/64bit-avx.c: Regenerate.
14761         * features/i386/64bit-avx512.c: Regenerate.
14762         * features/i386/64bit-core.c: Regenerate.
14763         * features/i386/64bit-linux.c: Regenerate.
14764         * features/i386/64bit-mpx.c: Regenerate.
14765         * features/i386/64bit-pkeys.c: Regenerate.
14766         * features/i386/64bit-segments.c: Regenerate.
14767         * features/i386/64bit-sse.c: Regenerate.
14768         * features/i386/x32-core.c: Regenerate.
14769         * features/tic6x-c6xp.c: Regenerate.
14770         * features/tic6x-core.c: Regenerate.
14771         * features/tic6x-gp.c: Regenerate.
14772         * target-descriptions.c: Use common/tdesc.h.
14773         * target-descriptions.h: Likewise.
14774
14775 2018-02-24  Tom Tromey  <tom@tromey.com>
14776
14777         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
14778         (try_thread_db_load_from_dir, thread_db_load_search): Use
14779         std::string.
14780         (info_auto_load_libthread_db_compare): Return bool.  Change
14781         argument types.
14782         (info_auto_load_libthread_db): Use std::vector, std::string.
14783         Remove cleanups.
14784
14785 2018-02-24  Tom Tromey  <tom@tromey.com>
14786
14787         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
14788         std::string.
14789         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
14790         std::string*.
14791         * gdbarch.c: Rebuild.
14792         * gdbarch.h: Rebuild.
14793         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
14794         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
14795         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
14796         std::string*.
14797
14798 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
14799
14800         * gdbtypes.h (sect_offset): Change type to uint64_t.
14801         (sect_offset_str): New function.
14802         * dwarf2read.c (create_addrmap_from_aranges): Use
14803         sect_offset_str.
14804         (error_check_comp_unit_head): Likewise.
14805         (create_debug_type_hash_table): Likewise.
14806         (read_cutu_die_from_dwo): Likewise.
14807         (init_cutu_and_read_dies): Likewise.
14808         (init_cutu_and_read_dies_no_follow): Likewise.
14809         (process_psymtab_comp_unit_reader): Likewise.
14810         (partial_die_parent_scope): Likewise.
14811         (peek_die_abbrev): Likewise.
14812         (process_queue): Likewise.
14813         (dwarf2_physname): Likewise.
14814         (read_namespace_alias): Likewise.
14815         (read_import_statement): Likewise.
14816         (create_dwo_cu_reader): Likewise.
14817         (create_cus_hash_table): Likewise.
14818         (lookup_dwo_cutu): Likewise.
14819         (inherit_abstract_dies): Likewise.
14820         (read_func_scope): Likewise.
14821         (read_call_site_scope): Likewise.
14822         (dwarf2_add_member_fn): Likewise.
14823         (read_common_block): Likewise.
14824         (read_module_type): Likewise.
14825         (read_typedef): Likewise.
14826         (read_subrange_type): Likewise.
14827         (load_partial_dies): Likewise.
14828         (read_partial_die): Likewise.
14829         (find_partial_die): Likewise.
14830         (read_str_index): Likewise.
14831         (dwarf2_string_attr): Likewise.
14832         (build_error_marker_type): Likewise.
14833         (lookup_die_type): Likewise.
14834         (dump_die_shallow): Likewise.
14835         (follow_die_ref): Likewise.
14836         (dwarf2_fetch_die_loc_sect_off): Likewise.
14837         (dwarf2_fetch_constant_bytes): Likewise.
14838         (follow_die_sig): Likewise.
14839         (get_signatured_type): Likewise.
14840         (get_DW_AT_signature_type): Likewise.
14841         (dwarf2_find_containing_comp_unit): Likewise.
14842         (set_die_type): Likewise.
14843
14844 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
14845
14846         * arch/aarch64.c: Include "common-defs.h".
14847         * arch/amd64.c: Likewise.
14848         * arch/i386.c: Likewise.
14849
14850 2018-02-21  Tom Tromey  <tom@tromey.com>
14851
14852         * value.h: (extract_field_op): Update.
14853         * eval.c (extract_field_op): Return a const char *.
14854         * expression.h (parse_expression_for_completion): Update.
14855         * completer.c (complete_expression): Update.
14856         (add_struct_fields): Make fieldname const.
14857         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
14858         (mark_completion_tag, parse_exp_in_context_1): Update.
14859         (parse_expression_for_completion): Change "name" to
14860         unique_xmalloc_ptr*.
14861
14862 2018-02-21  Tom Tromey  <tom@tromey.com>
14863
14864         * infcall.c (call_function_by_hand_dummy): Use std::vector.
14865
14866 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14867
14868         * avr-tdep.c (avr_read_pc): Change parameter type to
14869         readable_regcache.
14870         * gdbarch.sh (read_pc): Likewise.
14871         * gdbarch.c: Re-generated.
14872         * gdbarch.h: Re-generated.
14873         * hppa-tdep.c (hppa_read_pc): Change parameter type to
14874         readable_regcache.
14875         * ia64-tdep.c (ia64_read_pc): Likewise.
14876         * mips-tdep.c (mips_read_pc): Likewise.
14877         * spu-tdep.c (spu_read_pc): Likewise.
14878
14879 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14880
14881         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
14882         * regcache-dump.c: New file.
14883         * regcache.c: Move register_dump to regcache-dump.c.
14884         (maintenance_print_registers): Likewise.
14885         (maintenance_print_raw_registers): Likewise.
14886         (maintenance_print_cooked_registers): Likewise.
14887         (maintenance_print_register_groups): Likewise.
14888         (maintenance_print_remote_registers): Likewise.
14889         (_initialize_regcache): Likewise.
14890         * regcache.h (register_dump): Moved from regcache.c.
14891
14892 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14893
14894         * regcache.c (regcache::regcache): Update.
14895         (regcache::invalidate): Move it to detached_regcache::invalidate.
14896         (get_thread_arch_aspace_regcache): Update.
14897         (regcache::raw_update): Update.
14898         (regcache::cooked_read): Remove some code.
14899         (regcache::cooked_read_value): Likewise.
14900         (regcache::raw_write): Remove assert on m_readonly_p.
14901         (regcache::raw_supply_integer): Move it to
14902         detached_regcache::raw_supply_integer.
14903         (regcache::raw_supply_zeroed): Likewise.
14904         * regcache.h (detached_regcache) <raw_supply_integer>: New
14905         declaration.
14906         <raw_supply_zeroed, invalidate>: Likewise.
14907         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
14908         <invalidate>: Likewise.
14909         <m_readonly_p>: Removed.
14910
14911 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14912
14913         * infcmd.c (get_return_value): Let stop_regs point to
14914         get_current_regcache.
14915         * regcache.c (regcache::regcache): Remove.
14916         (register_dump_reg_buffer): New class.
14917         (regcache_print): Adjust.
14918         * regcache.h (regcache): Remove constructors.
14919
14920 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14921
14922         * regcache.c (class register_dump): New class.
14923         (register_dump_regcache, register_dump_none): New class.
14924         (register_dump_remote, register_dump_groups): New class.
14925         (regcache_print): Update.
14926         * regcache.h (regcache_dump_what): Move it to regcache.c.
14927         (regcache) <dump>: Remove.
14928
14929 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14930
14931         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
14932          reg_buffer_rw *.
14933         (jit_unwind_reg_set_impl): Call raw_supply.
14934         (jit_frame_sniffer): Use reg_buffer_rw.
14935         * record-full.c (record_full_core_regbuf): Change its type.
14936         (record_full_core_open_1): Use reg_buffer_rw.
14937         (record_full_close): Likewise.
14938         (record_full_core_fetch_registers): Use regcache->raw_supply.
14939         (record_full_core_store_registers): Likewise.
14940         * regcache.c (regcache::get_register_status): Move it to
14941         reg_buffer.
14942         (regcache_raw_set_cached_value): Remove.
14943         (regcache::raw_set_cached_value): Remove.
14944         (regcache::raw_write): Call raw_supply.
14945         (regcache::raw_supply): Move it to reg_buffer_rw.
14946         * regcache.h (regcache_raw_set_cached_value): Remove.
14947         (reg_buffer_rw): New class.
14948
14949 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14950
14951         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
14952         readonly_detached_regcache.
14953         (dummy_frame_prev_register): Use regcache->cooked_read.
14954         * frame.c (frame_save_as_regcache): Change return type.
14955         (frame_pop): Update.
14956         * frame.h (frame_save_as_regcache): Update declaration.
14957         * inferior.h (get_infcall_suspend_state_regcache): Update
14958         declaration.
14959         * infrun.c (infcall_suspend_state) <registers>: use
14960         readonly_detached_regcache.
14961         (save_infcall_suspend_state): Don't use regcache_dup.
14962         (get_infcall_suspend_state_regcache): Change return type.
14963         * linux-fork.c (struct fork_info) <savedregs>: Change to
14964         readonly_detached_regcache.
14965         <pc>: New field.
14966         (fork_save_infrun_state): Don't use regcache_dup.
14967         (info_checkpoints_command): Adjust.
14968         * mi/mi-main.c (register_changed_p): Update declaration.
14969         (mi_cmd_data_list_changed_registers): Use
14970         readonly_detached_regcache.
14971         (register_changed_p): Change parameter type to
14972         readonly_detached_regcache.
14973         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
14974         readonly_detached_regcache.
14975         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
14976         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
14977         New.
14978         (regcache::save): Move it to reg_buffer.
14979         (regcache::restore): Change parameter type.
14980         (regcache_dup): Remove.
14981         * regcache.h (reg_buffer) <save>: New method.
14982         (readonly_detached_regcache): New class.
14983         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
14984         readonly_detached_regcache.
14985         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
14986
14987 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14988
14989         * frame.c (frame_save_as_regcache): Use regcache method save.
14990         (frame_pop): Use regcache method restore.
14991         * infrun.c (restore_infcall_suspend_state): Likewise.
14992         * linux-fork.c (fork_load_infrun_state): Likewise.
14993         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
14994         save.
14995         * regcache.c (regcache_save): Remove.
14996         (regcache::restore): More asserts.
14997         (regcache_cpy): Remove.
14998         * regcache.h (regcache_save): Remove the declaration.
14999         (regcache::restore): Move from private to public.
15000         Remove the friend declaration of regcache_cpy.
15001         (regcache_cpy): Remove declaration.
15002
15003 2018-02-21  Yao Qi  <yao.qi@linaro.org>
15004
15005         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
15006         parameter type to 'readable_regcache *'.
15007         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
15008         * arm-tdep.c (arm_neon_quad_read): Likewise.
15009         (arm_pseudo_read): Likewise.
15010         * avr-tdep.c (avr_pseudo_register_read): Likewise.
15011         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
15012         * frv-tdep.c (frv_pseudo_register_read): Likewise.
15013         * gdbarch.c: Re-generated.
15014         * gdbarch.h: Re-generated.
15015         * gdbarch.sh (pseudo_register_read): Change parameter type to
15016         'readable_regcache *'.
15017         (pseudo_register_read_value): Likewise.
15018         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
15019         (h8300_pseudo_register_read): Likewise.
15020         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
15021         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
15022         (i386_pseudo_register_read_into_value): Likewise.
15023         (i386_pseudo_register_read_value): Likewise.
15024         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
15025         declaration.
15026         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
15027         * m32c-tdep.c (m32c_raw_read): Likewise.
15028         (m32c_read_flg): Likewise.
15029         (m32c_banked_register): Likewise.
15030         (m32c_banked_read): Likewise.
15031         (m32c_sb_read): Likewise.
15032         (m32c_part_read): Likewise.
15033         (m32c_cat_read): Likewise.
15034         (m32c_r3r2r1r0_read): Likewise.
15035         (m32c_pseudo_register_read): Likewise.
15036         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
15037         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
15038         (mep_pseudo_cr64_read): Likewise.
15039         (mep_pseudo_register_read): Likewise.
15040         * mips-tdep.c (mips_pseudo_register_read): Likewise.
15041         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
15042         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
15043         * regcache.c (regcache::raw_read): Move it to readable_regcache.
15044         (regcache::cooked_read): Likewise.
15045         (regcache::cooked_read_value): Likewise.
15046         (regcache_cooked_read_signed):
15047         (regcache::cooked_read): Likewise.
15048         * regcache.h (readable_regcache): New class.
15049         (regcache): Inherit readable_regcache.  Move some methods to
15050         readable_regcache.
15051         * rl78-tdep.c (rl78_pseudo_register_read): Change
15052         parameter type to 'readable_regcache *'.
15053         * rs6000-tdep.c (do_regcache_raw_read): Remove.
15054         (e500_pseudo_register_read): Change parameter type to
15055         'readable_regcache *'.
15056         (dfp_pseudo_register_read): Likewise.
15057         (vsx_pseudo_register_read): Likewise.
15058         (efpr_pseudo_register_read): Likewise.
15059         * s390-tdep.c (s390_pseudo_register_read): Likewise.
15060         * sh-tdep.c (sh_pseudo_register_read): Likewise.
15061         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
15062         (sh64_pseudo_register_read): Likewise.
15063         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
15064         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
15065         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
15066         (spu_pseudo_register_read): Likewise.
15067         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
15068         (xtensa_pseudo_register_read): Likewise.
15069
15070 2018-02-21  Yao Qi  <yao.qi@linaro.org>
15071
15072         * regcache.c (regcache::regcache): Call reg_buffer ctor.
15073         (regcache::arch): Move it to reg_buffer::arch.
15074         (regcache::register_buffer): Likewise.
15075         (regcache::assert_regnum): Likewise.
15076         (regcache::num_raw_registers): Likewise.
15077         * regcache.h (reg_buffer): New class.
15078         (regcache): Inherit reg_buffer.
15079
15080 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
15081
15082         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
15083         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
15084
15085 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
15086
15087         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
15088
15089 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
15090
15091         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
15092         (SFILES): Remove common/*.c files.
15093         (COMMON_OBS): Remove some *.o files built from common/*.c files.
15094         * common/common.host: Add common reference.
15095         * configure.ac: Likewise.
15096         * configure: Regenerate.
15097
15098 2018-02-16  Yao Qi  <yao.qi@linaro.org>
15099
15100         * block.c (block_namespace_info): Inherit allocate_on_obstack.
15101         (block_initialize_namespace): Use new.
15102         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
15103         (dwarf2_free_objfile): Use delete.
15104         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
15105         (copy_type_recursive): Use new.
15106         * gdb_obstack.h (allocate_on_obstack): New.
15107
15108 2018-02-15  Yao Qi  <yao.qi@linaro.org>
15109
15110         PR gdb/22849
15111         * inferior.c (exit_inferior_1): Reset inf->control.
15112
15113 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
15114
15115         * ada-lang.c (ada_to_fixed_value_create): Delete advance
15116         declaration.
15117
15118 2018-02-14  Pedro Alves  <palves@redhat.com>
15119
15120         * frame-unwind.c (frame_unwind_try_unwinder): Always call
15121         frame_cleanup_after_sniffer on exception.
15122
15123 2018-02-14  Tom Tromey  <tom@tromey.com>
15124
15125         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
15126         const.
15127         (solib_bfd_open): Make pathname const.
15128         * solib.c (solib_bfd_open): Make pathname const.
15129         * solib-spu.c (spu_bfd_fopen): Make name const.
15130         (spu_bfd_open): Make pathname const.
15131         * solib-darwin.c (darwin_bfd_open): Make pathname const.
15132         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
15133
15134 2018-02-14  Tom Tromey  <tom@tromey.com>
15135
15136         * symfile.c (symfile_bfd_open): Update.
15137         * source.h (openp, source_full_path_of, find_and_open_source):
15138         Change argument type to unique_xmalloc_ptr.
15139         * source.c (openp): Take a unique_xmalloc_ptr.
15140         (source_full_path_of, find_and_open_source): Likewise.
15141         (open_source_file, symtab_to_fullname): Update.
15142         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
15143         unique_xmalloc_ptr.
15144         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
15145         (exec_file_find): Update.
15146         * psymtab.c (psymtab_to_fullname): Update.
15147         * nto-tdep.h (nto_find_and_open_solib): Update.
15148         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
15149         unique_xmalloc_ptr.
15150         * exec.c (exec_file_attach): Update.
15151         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
15152         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
15153
15154 2018-02-14  Tom Tromey  <tom@tromey.com>
15155
15156         * solib.c: Include source.h.
15157         * nto-tdep.c: Include source.h.
15158         * mi/mi-cmd-env.c: Include source.h.
15159         * infcmd.c: Include source.h.
15160         * exec.c: Include source.h.
15161         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
15162         (add_path, directory_switch, source_path, init_source_path): Move
15163         declarations...
15164         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
15165         (add_path, directory_switch, source_path, init_source_path):
15166         ...here.
15167
15168 2018-02-14  Tom Tromey  <tom@tromey.com>
15169
15170         * solist.h (exec_file_find, solib_find): Return
15171         unique_xmalloc_ptr.
15172         (solib_bfd_fopen): Take a const char *.
15173         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
15174         (exec_file_find, solib_find): Likewise.
15175         (solib_bfd_fopen): Do not take ownership of "pathname".
15176         (solib_bfd_open): Use unique_xmalloc_ptr.
15177         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
15178         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
15179         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
15180         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
15181
15182 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
15183
15184         * ada-lang.c (name_match_type_from_name): Remove reference to
15185         ada_name_for_lookup in function's documentation.
15186         * ada-lang.h (ada_name_for_lookup): Delete declaration.
15187
15188 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
15189
15190         * defs.h (enum openp_flags): New enum.
15191         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
15192         Move to enum openp_flags.
15193         (openp_flags): New enum flags.
15194         (openp): Change parameter type to openp_flags.
15195         * source.c (openp): Change parameter type to openp_flags.
15196         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
15197         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
15198
15199 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
15200
15201         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
15202         per-command.
15203
15204 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
15205
15206         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
15207         into...
15208         (class dwarf2_queue_guard): ...the destructor of this new class.
15209         (dw2_do_instantiate_symtab): Create instance of the new class
15210         dwarf2_queue_guard, remove cleanup.
15211
15212 2018-02-09  Tom Tromey  <tom@tromey.com>
15213
15214         * source.c (find_source_lines): Don't reference past the end of
15215         the vector.
15216
15217 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15218
15219         * remote.c (remote_btrace_maybe_reopen): Change error message.
15220         * btrace.c (btrace_enable): Likewise.
15221         (parse_xml_btrace): Likewise.
15222         (parse_xml_btrace_conf): Likewise.
15223
15224 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15225
15226         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
15227         (linux_enable_pt, linux_enable_bts): Call
15228         diagnose_perf_event_open_fail.
15229
15230 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15231
15232         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
15233         Remove parameter and change return type.  Update callers.  Move it.
15234         (linux_enable_bts, linux_enable_pt): Improve error message.
15235         (linux_enable_pt): Remove zero buffer size check.
15236         (linux_enable_btrace): Improve error messages.  Remove NULL return
15237         check.
15238
15239 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15240
15241         * btrace.c (btrace_enable): Remove target_supports_btrace call.
15242         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
15243         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
15244         (linux_supports_pt, linux_supports_btrace): Remove.
15245         (linux_enable_bts): Call cpu_supports_bts.
15246         * nat/linux-btrace.h (linux_supports_btrace): Remove.
15247         * remote.c (remote_supports_btrace): Remove.
15248         (init_remote_ops): Remove remote_supports_btrace.
15249         * target-delegates.c: Regenerated.
15250         * target.c (target_supports_btrace): Remove.
15251         * target.h (target_ops) <to_supports_btrace>: Remove
15252         (target_supports_btrace): Remove.
15253         * x86-linux-nat.c (x86_linux_create_target): Remove
15254         linux_supports_btrace.
15255
15256 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15257
15258         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
15259         btrace failed.
15260         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
15261         exception and use message in own exception.
15262
15263 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15264
15265         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
15266         (perf_event_pt_event_type): Use gdb_file_up.
15267         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
15268         scoped_fd, and scoped_mmap.
15269
15270 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15271
15272         * common/scoped_mmap.h: New.
15273         * unittests/scoped_mmap-selftest.c: New.
15274         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
15275         unittests/scoped_mmap-selftest.c.
15276
15277 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15278
15279         * common/scoped_fd.h: New.
15280         * unittests/scoped_fd-selftest.c: New.
15281         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
15282         unittests/scoped_fd-selftest.c.
15283
15284 2018-02-09  Tom Tromey  <tom@tromey.com>
15285
15286         * auto-load.c (auto_load_section_scripts): Use
15287         gdb::unique_xmalloc_ptr.
15288
15289 2018-02-09  Tom Tromey  <tom@tromey.com>
15290
15291         * auto-load.c (execute_script_contents): Use std::string.
15292
15293 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
15294
15295         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
15296         Python function, rather than a new command.
15297
15298 2018-02-08  Tom Tromey  <tom@tromey.com>
15299
15300         * solib.c (solib_find_1): Use std::string.
15301         (solib_bfd_fopen): Use unique_xmalloc_ptr.
15302
15303 2018-02-08  Tom Tromey  <tom@tromey.com>
15304
15305         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
15306
15307 2018-02-08  Tom Tromey  <tom@tromey.com>
15308
15309         * source.c (find_source_lines): Use gdb::def_vector.
15310
15311 2018-02-08  Tom Tromey  <tom@tromey.com>
15312
15313         * macrocmd.c (struct temporary_macro_definition): New.
15314         (macro_define_command): Use temporary_macro_definition.  Remove
15315         cleanups.
15316         (free_macro_definition_ptr): Remove.
15317
15318 2018-02-08  Tom Tromey  <tom@tromey.com>
15319
15320         * macroexp.c (maybe_expand): Use std::string.
15321
15322 2018-02-08  Tom Tromey  <tom@tromey.com>
15323
15324         * macroexp.c (struct macro_buffer): Add initializers for some
15325         members.
15326         (init_buffer, init_shared_buffer, free_buffer)
15327         (free_buffer_return_text): Remove.
15328         (macro_buffer): New constructors.
15329         (~macro_buffer): New destructor.
15330         (macro_buffer::set_shared): New method.
15331         (macro_buffer::resize_buffer, macro_buffer::appendc)
15332         (macro_buffer::appendmem): Now methods, not free functions.
15333         (set_token, append_tokens_without_splicing, stringify)
15334         (macro_stringify): Update.
15335         (gather_arguments): Change return type.  Remove argc_p argument,
15336         add args_ptr argument.  Use std::vector.
15337         (substitute_args): Remove argc argument.  Accept std::vector.
15338         (expand): Update.  Use std::vector.
15339         (scan, macro_expand, macro_expand_next): Update.
15340
15341 2018-02-08  Tom Tromey  <tom@tromey.com>
15342
15343         * symtab.c (default_collect_symbol_completion_matches_break_on):
15344         Use unique_xmalloc_ptr.
15345         * macroscope.h: (sal_macro_scope, user_macro_scope)
15346         (default_macro_scope): Return unique_xmalloc_ptr.
15347         * macroscope.c (sal_macro_scope, user_macro_scope)
15348         (default_macro_scope): Return unique_xmalloc_ptr.
15349         * macroexp.h (macro_expand, macro_expand_once): Return
15350         unique_xmalloc_ptr.
15351         * macroexp.c (macro_expand, macro_expand_once): Return
15352         unique_xmalloc_ptr.
15353         * macrocmd.c (macro_expand_command, macro_expand_once_command)
15354         (info_macro_command, info_macros_command): Use
15355         unique_xmalloc_ptr.
15356         * compile/compile-c-support.c (write_macro_definitions): Use
15357         unique_xmalloc_ptr.
15358         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
15359
15360 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
15361
15362         * value.c (value_static_field): Assign field type instead of
15363         containing type when returning an optimized out value.
15364
15365 2018-02-06  Yao Qi  <yao.qi@linaro.org>
15366
15367         * ft32-tdep.c (ft32_read_pc): Remove.
15368         (ft32_write_pc): Remove.
15369         (ft32_gdbarch_init): Update.
15370         * m32r-tdep.c (m32r_read_pc): Remove.
15371         (m32r_gdbarch_init): Update.
15372         * mep-tdep.c (mep_read_pc): Remove.
15373         (mep_gdbarch_init): Update.
15374         * microblaze-tdep.c (microblaze_write_pc): Remove.
15375         (microblaze_gdbarch_init): Update.
15376         * mn10300-tdep.c (mn10300_read_pc): Remove.
15377         (mn10300_write_pc): Remove.
15378         (mn10300_gdbarch_init): Update.
15379         * moxie-tdep.c (moxie_read_pc): Remove.
15380         (moxie_write_pc): Remove.
15381         (moxie_gdbarch_init): Update.
15382
15383 2018-02-06  Yao Qi  <yao.qi@linaro.org>
15384
15385         * expprint.c (print_subexp_standard): Handle
15386         OP_F77_UNDETERMINED_ARGLIST.
15387         (dump_subexp_body_standard): Likewise.
15388
15389 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
15390
15391         * target-descriptions.c (tdesc_element_visitor) Add empty
15392         implementations.
15393         (tdesc_type): Move make_gdb_type from here.
15394         (tdesc_type_builtin): Likewise.
15395         (tdesc_type_vector): Likewise.
15396         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
15397         (make_gdb_type_struct): Move from tdesc_type_with_fields.
15398         (make_gdb_type_union): Likewise.
15399         (make_gdb_type_flags): Likewise.
15400         (make_gdb_type_enum): Likewise.
15401         (make_gdb_type): New function.
15402         (tdesc_register_type): Use static make_gdb_type.
15403
15404 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
15405
15406         * infcmd.c (default_print_one_register_info): Align natural-format
15407         column values consistently one under another.
15408         (pad_to_column): New function.
15409
15410 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
15411
15412         * dwarf2read.c (dwarf2_physname): Move commment.
15413
15414 2018-02-01  Leszek Swirski  <leszeks@google.com>
15415
15416         * varobj.c (varobj_formatted_print_options): Allow recursive
15417         pretty printing if pretty printing is enabled.
15418
15419 2018-02-01  Leszek Swirski  <leszeks@google.com>
15420
15421         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
15422         names after a structop as a filename.
15423
15424 2018-02-01  Yao Qi  <yao.qi@linaro.org>
15425
15426         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
15427         (arm_record_coproc_data_proc): Likewise.
15428
15429 2018-02-01  Yao Qi  <yao.qi@linaro.org>
15430
15431         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
15432
15433 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
15434
15435         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
15436         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
15437
15438 2018-01-31  Pedro Alves  <palves@redhat.com>
15439
15440         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
15441         * inflow.c (child_terminal_save_inferior): Wrap reference to
15442         tcgetpgrp in HAVE_TERMIOS_H.
15443         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
15444         _WIN32.
15445         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
15446         always iterate over all inferiors.
15447         (gdbsim_cntrl_c): Adjust.
15448         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
15449
15450 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15451
15452         * gdbtypes.c (lookup_array_range_type): Make sure the array's
15453         index type is objfile-owned if the element type is as well.
15454
15455 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15456
15457         GDB 8.1 released.
15458
15459 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15460
15461         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
15462         "features/s390x-linux64.c".
15463         (_initialize_s390_linux_tdep): Remove initialization of tdescs
15464         s390_linux32 and s390x_linux64.
15465         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
15466         default tdesc.
15467         * s390-tdep.c: Include "features/s390-linux32.c" and
15468         "features/s390x-linux64.c".
15469         (s390_tdesc_valid): Add check for tdesc_has_registers.
15470         (s390_gdbarch_init): Make sure there is always a valid tdesc.
15471         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
15472         tdesc_s390x_linux64.
15473         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
15474         tdesc_s390x_linux64 to...
15475         * s390-tdep.h: ...here.
15476
15477 2018-01-30  Pedro Alves  <palves@redhat.com>
15478
15479         PR gdb/13211
15480         * config.in, configure: Regenerate.
15481         * configure.ac: Check for getpgid.
15482         * go32-nat.c (go32_pass_ctrlc): New.
15483         (go32_target): Install it.
15484         * inf-child.c (inf_child_target): Install
15485         child_terminal_save_inferior, child_pass_ctrlc and
15486         child_interrupt.
15487         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
15488         (inf_ptrace_target): No longer install it.
15489         * infcmd.c (interrupt_target_1): Adjust.
15490         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
15491         (child_interrupt): Declare.
15492         (inferior::terminal_state): New.
15493         * inflow.c (struct terminal_info): Update comments.
15494         (inferior_process_group): Delete.
15495         (terminal_is_ours): Delete.
15496         (gdb_tty_state): New.
15497         (child_terminal_init): Adjust.
15498         (is_gdb_terminal, sharing_input_terminal_1)
15499         (sharing_input_terminal): New functions.
15500         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
15501         Set the process's actual process group in the foreground if
15502         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
15503         mark terminal as the inferior's if not sharing GDB's terminal.
15504         Don't check attach_flag.
15505         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
15506         pass down a target_terminal_state.
15507         (child_terminal_save_inferior): New, factored out from ...
15508         (child_terminal_ours_1): ... this.  Handle
15509         target_terminal_state::is_ours_for_output.
15510         (child_interrupt, child_pass_ctrlc): New.
15511         (inflow_inferior_exit): Clear the inferior's terminal_state.
15512         (copy_terminal_info): Copy the inferior's terminal state.
15513         (_initialize_inflow): Remove reference to terminal_is_ours.
15514         * inflow.h (inferior_process_group): Delete.
15515         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
15516         * procfs.c (procfs_target): Don't install procfs_interrupt.
15517         (procfs_interrupt): Delete.
15518         * remote.c (remote_serial_quit_handler): Adjust.
15519         (remote_interrupt): Remove ptid parameter.  Adjust.
15520         * target-delegates.c: Regenerate.
15521         * target.c: Include "terminal.h".
15522         (target_terminal::terminal_state): Rename to ...
15523         (target_terminal::m_terminal_state): ... this.
15524         (target_terminal::init): Adjust.
15525         (target_terminal::inferior): Adjust to per-inferior
15526         terminal_state.
15527         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
15528         (target_terminal::ours, target_terminal::ours_for_output): Use
15529         target_terminal_is_ours_kind.
15530         (target_interrupt): Remove ptid parameter.  Adjust.
15531         (default_target_pass_ctrlc): Adjust.
15532         * target.h (target_ops::to_terminal_save_inferior): New field.
15533         (target_ops::to_interrupt): Remove ptid_t parameter.
15534         (target_interrupt): Remove ptid_t parameter.  Update comment.
15535         (target_pass_ctrlc): Update comment.
15536         * target/target.h (target_terminal_state): New scoped enum,
15537         factored out of ...
15538         (target_terminal::terminal_state): ... here.
15539         (target_terminal::inferior): Update comments.
15540         (target_terminal::restore_inferior): New.
15541         (target_terminal::is_inferior, target_terminal::is_ours)
15542         (target_terminal::is_ours_for_output): Adjust.
15543         (target_terminal::scoped_restore_terminal_state): Adjust to
15544         rename, and call restore_inferior() instead of inferior().
15545         (target_terminal::scoped_restore_terminal_state::m_state): Change
15546         type.
15547         (target_terminal::terminal_state): Rename to ...
15548         (target_terminal::m_terminal_state): ... this and change type.
15549
15550 2018-01-30  Pedro Alves  <palves@redhat.com>
15551
15552         * linux-nat.c (wait_for_signal): New function.
15553         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
15554         directly.
15555         (async_terminal_is_ours)
15556         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
15557         (linux_nat_add_target): Don't override
15558         to_terminal_inferior/to_terminal_ours.
15559
15560 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
15561
15562         * remote.c (remote_follow_fork): Don't call "detach_inferior".
15563
15564 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
15565
15566         * dwarf2read.c (free_dwo_files): Add forward-declaration.
15567         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
15568         dwarf2_per_objfile_free here.
15569         (dwarf2_per_objfile_free): Remove.
15570         (_initialize_dwarf2_read): Don't register
15571         dwarf2_per_objfile_free as a registry cleanup.
15572
15573 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
15574
15575         Avoid compilation errors in MinGW native builds
15576
15577         The error is triggered by including python-internal.h, and the
15578         error message is:
15579
15580              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
15581                       from build-gnulib/import/math.h:27,
15582                       from d:/usr/Python26/include/pyport.h:235,
15583                       from d:/usr/Python26/include/Python.h:58,
15584                       from python/python-internal.h:94,
15585                       from python/py-arch.c:24:
15586              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
15587         using ::hypot;
15588                 ^~~~~
15589
15590         This happens because Python headers define 'hypot' to expand t
15591         '_hypot' in the Windows builds.
15592         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
15593         'hypoth'.  This avoids a compilation error.
15594
15595 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15596
15597         * MAINTAINERS (Write After Approval): Fix ordering.
15598
15599 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15600
15601         * MAINTAINERS (Write After Approval): Add Alan Hayward.
15602
15603 2018-01-26  Alan Modra  <amodra@gmail.com>
15604
15605         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
15606         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
15607         Remove nop.  Make const.  Comment.
15608         (powerpc32_plt_stub_so_2): New.
15609         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
15610         Correct count.  Update uses.
15611         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
15612         Move common code reading PLT entry word.  Correct
15613         powerpc32_plt_stub PLT address calculation.
15614         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
15615         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
15616         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
15617         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
15618         (ppc64_standard_linkage8): Likewise.
15619         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
15620         Correct insns description.
15621         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
15622
15623 2018-01-24  Pedro Alves  <palves@redhat.com>
15624
15625         GCC PR libstdc++/83906
15626         * gdbtypes.c (operator==(const dynamic_prop &,
15627         const dynamic_prop &)): New.
15628         (operator==(const range_bounds &, const range_bounds &)): New.
15629         (check_types_equal): Use them instead of memcmp.
15630         * gdbtypes.h (operator==(const dynamic_prop &,
15631         const dynamic_prop &)): Declare.
15632         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
15633         (operator==(const range_bounds &, const range_bounds &)): Declare.
15634         (operator!=(const range_bounds &, const range_bounds &)): Declare.
15635
15636 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15637
15638         * s390-linux-tdep.c (s390_record_address_mask)
15639         (s390_record_calc_disp_common, s390_record_calc_disp)
15640         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15641         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15642         (s390_process_record): Move to s390-tdep.c.
15643         (s390_linux_init_abi_any): Adjust.
15644         * s390-tdep.c (s390_record_address_mask)
15645         (s390_record_calc_disp_common, s390_record_calc_disp)
15646         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15647         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15648         (s390_process_record): Moved from s390-linux-tdep.c
15649         (s390_gdbarch_init): Adjust.
15650
15651 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15652
15653         * s390-linux-nat.c (s390-tdep.h): New include.
15654         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
15655         (HFILES_NO_SRCDIR): Add s390-tdep.h.
15656         (ALLDEPFILES): Add s390-tdep.c.
15657         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
15658         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
15659         * s390-tdep.h: ...this.  New file.
15660         * s390-linux-tdep.c (s390-tdep.h): New include.
15661         (_initialize_s390_tdep): Rename to...
15662         (_initialize_s390_linux_tdep): ...this and adjust.
15663         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
15664         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
15665         s390-tdep.h.
15666         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
15667         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
15668         (s390_is_partial_instruction, s390_software_single_step)
15669         (is_non_branch_ril, s390_displaced_step_copy_insn)
15670         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
15671         (s390_prologue_data, s390_addr, s390_store, s390_load)
15672         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
15673         (s390_register_call_saved, s390_guess_tracepoint_registers)
15674         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
15675         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
15676         (s390_pseudo_register_name, s390_pseudo_register_type)
15677         (s390_pseudo_register_read, s390_pseudo_register_write)
15678         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
15679         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
15680         (s390_addr_bits_remove, s390_address_class_type_flags)
15681         (s390_address_class_type_flags_to_name)
15682         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
15683         (s390_function_arg_float, s390_function_arg_vector)
15684         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
15685         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
15686         (s390_frame_align, s390_register_return_value, s390_return_value)
15687         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
15688         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
15689         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
15690         (s390_trad_frame_prev_register, s390_unwind_cache)
15691         (s390_prologue_frame_unwind_cache)
15692         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
15693         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
15694         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
15695         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
15696         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
15697         (s390_frame_base_address, s390_local_base_address)
15698         (s390_frame_base, s390_gcc_target_options)
15699         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
15700         (s390_validate_reg_range, s390_tdesc_valid)
15701         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
15702         * s390-tdep.c: ...this.  New file.
15703
15704 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15705
15706         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
15707         (s390_process_record, s390_gdbarch_tdep_alloc)
15708         (s390_linux_init_abi_any): Use/set new hook.
15709
15710 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15711
15712         * s390-linux-tdep.c (osabi.h): New include.
15713         (s390_linux_init_abi_31, s390_linux_init_abi_64)
15714         (s390_linux_init_abi_any): New functions.
15715         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
15716
15717 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15718
15719         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
15720         tdesc_has_registers check
15721
15722 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15723
15724         * s390-linux-tdep.c (s390_tdesc_valid): New function.
15725         (s390_validate_reg_range): New macro.
15726         (s390_gdbarch_init): Adjust.
15727
15728 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15729
15730         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
15731         (s390_gdbarch_tdep_alloc): Adjust.
15732         (s390_gdbarch_init): Adjust.
15733
15734 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15735
15736         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
15737         <have_tdb>: Change type to bool.
15738         (s390_gdbarch_tdep_alloc): Adjust.
15739         (s390_gdbarch_init): Adjust.
15740
15741 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15742
15743         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
15744         (gdbarch_tdep) <have_upper, have_vx>: New fields.
15745         (s390_gdbarch_tdep_alloc): New function.
15746         (s390_gdbarch_init): Allocate tdep at start and use its fields
15747         instead of separate variables.
15748
15749 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15750
15751         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
15752         when looking for cached gdbarch and add comment for remaining.
15753
15754 2018-01-22  Pedro Alves  <palves@redhat.com>
15755             Sergio Durigan Junior  <sergiodj@redhat.com>
15756
15757         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
15758         case.
15759
15760 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
15761
15762         * MAINTAINERS: Update my company e-mail address.
15763
15764 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15765
15766         * regcache.c (cooked_write_test): New function.
15767         (_initialize_regcache): Register the test.
15768
15769 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15770
15771         * ia64-tdep.c (ia64_pseudo_register_read): Call
15772         regcache->cooked_read instead of regcache_cooked_read_unsigned.
15773         * m32c-tdep.c (m32c_cat_read): Likewise.
15774         (m32c_r3r2r1r0_read): Likewise.
15775         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
15776         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
15777
15778 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15779
15780         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
15781         method raw_read instead of regcache_raw_read.
15782         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
15783         * arm-tdep.c (arm_neon_quad_read): Likewise.
15784         * avr-tdep.c (avr_pseudo_register_read): Likewise.
15785         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
15786         * frv-tdep.c (frv_pseudo_register_read): Likewise.
15787         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
15788         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
15789         (i386_pseudo_register_read_into_value): Likewise.
15790         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
15791         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
15792         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
15793         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
15794         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
15795         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
15796         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
15797         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
15798         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
15799
15800 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15801
15802         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
15803         * configure.tgt: Remove target mt.
15804         * mt-tdep.c: Remove.
15805         * regcache.c (cooked_read_test): Remove the check for mt.
15806
15807 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15808
15809         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
15810         instead of gdbarch_pseudo_register_read_value.
15811
15812 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15813
15814         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
15815         language is Ada.
15816
15817 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15818
15819         * linespec.c (create_sals_line_offset): Remove code that preserved
15820         the symtab_and_line's line number.
15821
15822 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15823
15824         * varobj.c (varobj_create): Don't set valid_block when creating a
15825         floating varobj.
15826
15827 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15828
15829         * varobj.c (varobj_create): Remove out of date comment.
15830
15831 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15832
15833         PR mi/20395
15834         * ada-exp.y (write_var_from_sym): Pass extra parameter when
15835         updating innermost block.
15836         * parse.c (innermost_block_tracker::update): Take extra type
15837         parameter, and check types match before updating innermost block.
15838         (write_dollar_variable): Update innermost block for registers.
15839         * parser-defs.h (enum innermost_block_tracker_type): New enum.
15840         (innermost_block_tracker::innermost_block_tracker): Initialise
15841         m_types member.
15842         (innermost_block_tracker::reset): Take type parameter.
15843         (innermost_block_tracker::update): Take type parameter, and pass
15844         type through as needed.
15845         (innermost_block_tracker::m_types): New member.
15846         * varobj.c (varobj_create): Pass type when reseting innermost
15847         block.
15848
15849 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15850
15851         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
15852         * ada-lang.c (resolve_subexp): Likewise.
15853         * breakpoint.c (set_breakpoint_condition) Likewise.
15854         (watch_command_1) Likewise.
15855         * c-exp.y (variable): Likewise.
15856         * d-exp.y (PrimaryExpression): Likewise.
15857         * f-exp.y (variable): Likewise.
15858         * go-exp.y (variable): Likewise.
15859         * m2-exp.y (variable): Likewise.
15860         * objfiles.c (objfile::~objfile): Likewise.
15861         * p-exp.y (variable): Likewise.
15862         * parse.c (innermost_block): Change type.
15863         * parser-defs.h (class innermost_block_tracker): New.
15864         (innermost_block): Change to innermost_block_tracker.
15865         * printcmd.c (display_command): Switch to innermost_block API.
15866         (do_one_display): Likewise.
15867         * rust-exp.y (do_one_display): Likewise.
15868         * symfile.c (clear_symtab_users): Likewise.
15869         * varobj.c (varobj_create): Switch to innermost_block API, replace
15870         use of innermost_block with block stored on varobj object.
15871
15872 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15873
15874         * expression.h (innermost_block): Remove declaration.
15875         * varobj.c: Add 'parser-defs.h' include.
15876
15877 2018-01-19  Tom Tromey  <tom@tromey.com>
15878
15879         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
15880         symbols in the static and global blocks.
15881
15882 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
15883
15884         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
15885         gdb_ptrace.h, and move including gdb_wait.h ...
15886         * nat/linux-ptrace.h: ... to here.
15887
15888 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15889
15890         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
15891         inf_ptrace_detach_success.
15892         (inf_ptrace_detach_success): Add inferior parameter, use it
15893         instead of inferior_ptid, pass it to detach_inferior.
15894         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
15895         parameter.
15896         * inferior.c (detach_inferior): Add overload that takes an
15897         inferior object.
15898         * inferior.h (detach_inferior): Likewise.
15899         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
15900         use inferior_ptid, adjust call to inf_ptrace_detach_success.
15901         * linux-thread-db.c (thread_db_detach): Use inf parameter.
15902
15903 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15904
15905         * target.h (struct target_ops) <to_detach>: Add inferior
15906         parameter.
15907         (target_detach): Likewise.
15908         * target.c (dispose_inferior): Pass inferior down.
15909         (target_detach): Pass inferior down.  Assert that it is equal to
15910         the current inferior.
15911         * aix-thread.c (aix_thread_detach): Pass inferior down.
15912         * corefile.c (core_file_command): Pass current_inferior() down.
15913         * corelow.c (core_detach): Add inferior parameter.
15914         * darwin-nat.c (darwin_detach): Likewise.
15915         * gnu-nat.c (gnu_detach): Likewise.
15916         * inf-ptrace.c (inf_ptrace_detach): Likewise.
15917         * infcmd.c (detach_command): Pass current_inferior() down to
15918         target_detach.
15919         * infrun.c (follow_fork_inferior): Pass parent_inf to
15920         target_detach.
15921         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
15922         target_detach.
15923         * linux-nat.c (linux_nat_detach): Add inferior parameter.
15924         * linux-thread-db.c (thread_db_detach): Likewise.
15925         * nto-procfs.c (procfs_detach): Likewise.
15926         * procfs.c (procfs_detach): Likewise.
15927         * record.c (record_detach): Likewise.
15928         * record.h (struct inferior): Forward-declare.
15929         (record_detach): Add inferior parameter.
15930         * remote-sim.c (gdbsim_detach): Likewise.
15931         * remote.c (remote_detach_1): Likewise.
15932         (remote_detach): Likewise.
15933         (extended_remote_detach): Likewise.
15934         * sol-thread.c (sol_thread_detach): Likewise.
15935         * target-debug.h (target_debug_print_inferior_p): New macro.
15936         * target-delegates.c: Re-generate.
15937         * top.c (kill_or_detach): Pass inferior down to target_detach.
15938         * windows-nat.c (windows_detach): Add inferior parameter.
15939
15940 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15941
15942         * target.h (struct target_ops) <to_detach>: Remove args
15943         parameter.
15944         (target_detach): Likewise.
15945         * target.c (dispose_inferior): Adjust.
15946         (target_detach): Remove args parameter, adjust.
15947         * aix-thread.c (aix_thread_detach): Adjust.
15948         * corefile.c (core_file_command): Adjust.
15949         * corelow.c (core_detach): Adjust.
15950         * darwin-nat.c (darwin_detach): Adjust.
15951         * gnu-nat.c (gnu_detach): Adjust.
15952         * inf-ptrace.c (inf_ptrace_detach): Adjust.
15953         * infcmd.c (detach_command): Adjust
15954         * infrun.c (follow_fork_inferior): Adjust.
15955         (handle_vfork_child_exec_or_exit): Adjust.
15956         * linux-fork.c (linux_fork_detach): Remove args parameter.
15957         * linux-fork.h (linux_fork_detach): Likewise.
15958         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
15959         * linux-thread-db.c (thread_db_detach): Likewise.
15960         * nto-procfs.c (procfs_detach): Likewise.
15961         * procfs.c (procfs_detach): Likewise.
15962         (do_detach): Remove signo parameter.
15963         * record.c (record_detach): Remove args parameter.
15964         * record.h (record_detach): Likewise.
15965         * remote-sim.c (gdbsim_detach): Likewise.
15966         * remote.c (remote_detach_1): Likewise.
15967         (remote_detach): Likewise.
15968         (extended_remote_detach): Likewise.
15969         * sol-thread.c (sol_thread_detach): Likewise.
15970         * target-delegates.c: Re-generate.
15971         * top.c (struct qt_args) <args>: Remove field.
15972         (kill_or_detach): Don't pass args.
15973         (quit_force): Don't set args.
15974         * windows-nat.c (windows_detach): Remove args parameter.
15975
15976 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15977
15978         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
15979         (arm_linux_init_abi): Install it.
15980
15981 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15982
15983         * osabi.c (gdb_osabi_names): Extend the regexp for
15984         arm-linux-gnueabihf.
15985
15986 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15987
15988         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
15989         m_abbrevs.
15990         (abbrev_table::add_abbrev): Update.
15991         (abbrev_table::lookup_abbrev): Update.
15992
15993 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15994
15995         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
15996
15997 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
15998
15999         * compile/compile.c (compile_to_object): Convert "triplet_rx"
16000         to "std::string".
16001
16002 2018-01-17  Tom Tromey  <tom@tromey.com>
16003
16004         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
16005
16006 2018-01-17  Tom Tromey  <tom@tromey.com>
16007
16008         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
16009         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
16010         (create_array_type_with_stride): Update.
16011         * dwarf2read.c (set_die_type): Update.
16012
16013 2018-01-17  Tom Tromey  <tom@tromey.com>
16014
16015         * dwarf2read.c (delayed_method_info): Remove typedef.
16016         (dwarf2_cu::method_info): Now a std::vector.
16017         (add_to_method_list): Update.
16018         (free_delayed_list): Remove.
16019         (compute_delayed_physnames): Update.
16020         (process_full_comp_unit, process_full_type_unit): Clear the method
16021         list.  Remove cleanups.
16022         (psymtab_include_file_name): Add name_holder parameter.  Use
16023         unique_xmalloc_ptr.
16024         (dwarf_decode_lines): Update.
16025
16026 2018-01-17  Tom Tromey  <tom@tromey.com>
16027             Simon Marchi  <simon.marchi@ericsson.com>
16028
16029         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
16030         (dwarf2_per_objfile::free_cached_comp_units)
16031         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
16032         (init_cutu_and_read_dies_no_follow): Update.
16033         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
16034         (dwarf2_cu::~dwarf2_cu): New.
16035         (free_heap_comp_unit, free_stack_comp_unit): Remove.
16036         (age_cached_comp_units, free_one_cached_comp_unit): Update.
16037
16038 2018-01-17  Tom Tromey  <tom@tromey.com>
16039             Simon Marchi  <simon.marchi@ericsson.com>
16040
16041         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
16042         (struct die_reader_specs) <abbrev_table>: New member.
16043         (struct abbrev_table): Add constructor.
16044         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
16045         <abbrev_obstack>: Now an auto_obstack.
16046         (abbrev_table_up): New typedef.
16047         (init_cu_die_reader): Add abbrev_table parameter.
16048         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
16049         Add result_dwo_abbrev_table.
16050         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
16051         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
16052         Update.
16053         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
16054         parameter.
16055         (skip_children): Update.
16056         (abbrev_table::alloc_abbrev): Rename from
16057         abbrev_table_alloc_abbrev.
16058         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
16059         (abbrev_table::lookup_abbrev): Rename from
16060         abbrev_table_lookup_abbrev.
16061         (abbrev_table_read_table): Return abbrev_table_up.
16062         (abbrev_table_free, abbrev_table_free_cleanup)
16063         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
16064         (load_partial_dies): Update.
16065
16066 2018-01-17  Tom Tromey  <tom@tromey.com>
16067
16068         * dwarf2read.c (dwarf2_compute_name): Update comment.
16069         (read_func_scope, read_variable): Update.
16070         (new_symbol): Remove.
16071         (new_symbol_full): Rename to new_symbol.
16072
16073 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
16074
16075         PR gdb/16577
16076         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
16077         a warning instead of throwing an error, set section size to 0 and return
16078         NULL.
16079         * gdb_bfd.h (gdb_bfd_map_section): Update description.
16080
16081 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
16082
16083         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
16084         std::string.
16085         (linux_ptrace_attach_fail_reason_string): Likewise.
16086         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
16087         Likewise.
16088         (linux_ptrace_attach_fail_reason_string): Likewise.
16089         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
16090
16091 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
16092
16093         * linux-nat.c (linux_nat_attach): Remove xstrdup.
16094
16095 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
16096
16097         PR gdb/21559
16098         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
16099         checking for fs_base/gs_base fields in struct user_regs_struct.
16100         * configure: Regenerate.
16101
16102 2018-01-17  Yao Qi  <yao.qi@linaro.org>
16103
16104         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
16105         function.
16106         (aarch64_linux_init_abi): Install it to gdbarch hook
16107         gcc_target_options.
16108
16109 2018-01-15  Pedro Alves  <palves@redhat.com>
16110
16111         * common/signals-state-save-restore.c
16112         (save_original_signals_state): Fix typos.
16113
16114 2017-01-12  Tom Tromey  <tom@tromey.com>
16115             Sergio Durigan Junior  <sergiodj@redhat.com>
16116
16117         * Makefile.in (install-only): Install gdb-add-index.
16118
16119 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
16120
16121         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
16122
16123 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
16124
16125         * infrun.c (keep_going_pass_signal): Clear step-over info when
16126         insert_breakpoints fails.
16127
16128 2018-01-11  Pedro Alves  <palves@redhat.com>
16129
16130         PR gdb/22583
16131         * infrun.c (resume): Rename to ...
16132         (resume_1): ... this.
16133         (resume): Reimplement as wrapper around resume_1.
16134
16135 2018-01-11  Pedro Alves  <palves@redhat.com>
16136
16137         PR remote/22597
16138         * remote.c (remote_parse_stop_reply): Default to the last-set
16139         general thread instead of to 'magic_null_ptid'.
16140
16141 2018-01-10  Pedro Alves  <palves@redhat.com>
16142
16143         * language.h (language_get_symbol_name_matcher): Rename ...
16144         (get_symbol_name_matcher): ... this.
16145         * language.c (language_get_symbol_name_matcher): Ditto.
16146         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
16147         callers adjusted.
16148
16149 2018-01-10  Pedro Alves  <palves@redhat.com>
16150
16151         PR gdb/22670
16152         * dwarf2read.c
16153         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
16154         Adjust to use language_get_symbol_name_matcher instead of
16155         language_defn::la_get_symbol_name_matcher.
16156         * language.c (language_get_symbol_name_matcher): If in Ada mode
16157         and the lookup name is a verbatim match, return Ada's matcher.
16158         * language.h (language_get_symbol_name_matcher): Adjust comment.
16159         (ada_lookup_name_info::verbatim_p):: New method.
16160
16161 2018-01-10  Pedro Alves  <palves@redhat.com>
16162
16163         PR gdb/22670
16164         * ada-lang.c (ada_collect_symbol_completion_matches): If the
16165         minsym's language is language_auto or language_cplus, pass down
16166         language_ada instead.
16167         * symtab.c (compare_symbol_name): Don't frob symbol language here.
16168
16169 2018-01-10  Pedro Alves  <palves@redhat.com>
16170
16171         PR gdb/22670
16172         * minsyms.c (linkage_name_str): New function.
16173         (iterate_over_minimal_symbols): Use it.
16174
16175 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16176
16177         * NEWS: Document that 'info proc' now works on FreeBSD.
16178
16179 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16180
16181         * configure.ac: Check for kinfo_getfile in libutil.
16182         * configure: Regenerate.
16183         * config.in: Regenerate.
16184         * fbsd-nat.c: Include "fbsd-tdep.h".
16185         (fbsd_fetch_cmdline): New.
16186         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
16187         rather than calling error.
16188         (fbsd_info_proc): New.
16189         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
16190         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
16191         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
16192
16193 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16194
16195         * fbsd-nat.c (struct free_deleter): Remove.
16196         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
16197
16198 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16199
16200         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
16201         NULL for an empty pathname.
16202
16203 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16204
16205         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
16206         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
16207         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
16208         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
16209         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
16210         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
16211         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
16212         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
16213         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
16214         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
16215         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
16216         (fbsd_core_fetch_timeval, fbsd_print_sigset)
16217         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
16218         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
16219         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
16220
16221 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
16222
16223         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
16224         (gnu_xfer_auxv): New function.
16225         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
16226         TARGET_OBJECT_AUXV.
16227
16228 2018-01-08  Yao Qi  <yao.qi@linaro.org>
16229             Simon Marchi  <simon.marchi@ericsson.com>
16230
16231         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
16232         common/selftest.c.
16233         (COMMON_OBS): Remove selftest.o.
16234         * configure.ac: Append selftest-arch.c and common/selftest.c to
16235         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
16236         * configure: Re-generated.
16237         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
16238         GDB_SELF_TEST.
16239         (maintenance_info_selftests): Likewise.
16240
16241 2018-01-08  Xavier Roirand  <roirand@adacore.com>
16242
16243         * ada-valprint.c (val_print_packed_array_elements): Use
16244         proper number of elements when printing an array indexed
16245         by an enumeration type.
16246
16247 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16248
16249         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
16250         (dw2_get_file_names_reader): Adjust.
16251         (lookup_dwo_signatured_type): Adjust.
16252         (lookup_dwp_signatured_type): Adjust.
16253         (lookup_signatured_type): Adjust.
16254         (create_type_unit_group): Adjust.
16255         (get_type_unit_group): Adjust.
16256         (process_psymtab_comp_unit_reader): Adjust.
16257         (build_type_psymtabs_reader): Adjust.
16258         (scan_partial_symbols): Adjust.
16259         (add_partial_symbol): Adjust.
16260         (add_partial_subprogram): Adjust.
16261         (peek_die_abbrev): Adjust.
16262         (fixup_go_packaging): Adjust.
16263         (process_imported_unit_die): Adjust.
16264         (dwarf2_compute_name): Adjust.
16265         (dwarf2_physname): Adjust.
16266         (read_import_statement): Adjust.
16267         (handle_DW_AT_stmt_list): Adjust.
16268         (read_file_scope): Adjust.
16269         (read_func_scope): Adjust.
16270         (read_lexical_block_scope): Adjust.
16271         (read_call_site_scope): Adjust.
16272         (read_variable): Adjust.
16273         (dwarf2_rnglists_process): Adjust.
16274         (dwarf2_ranges_process): Adjust.
16275         (dwarf2_ranges_read): Adjust.
16276         (dwarf2_get_pc_bounds): Adjust.
16277         (dwarf2_record_block_ranges): Adjust.
16278         (dwarf2_add_field): Adjust.
16279         (dwarf2_add_member_fn): Adjust.
16280         (read_structure_type): Adjust.
16281         (process_structure_scope): Adjust.
16282         (read_enumeration_type): Adjust.
16283         (read_array_type): Adjust.
16284         (mark_common_block_symbol_computed): Adjust.
16285         (read_common_block): Adjust.
16286         (read_namespace_type): Adjust.
16287         (read_namespace): Adjust.
16288         (read_module_type): Adjust.
16289         (read_tag_pointer_type): Adjust.
16290         (read_tag_ptr_to_member_type): Adjust.
16291         (read_tag_string_type): Adjust.
16292         (read_subroutine_type): Adjust.
16293         (read_typedef): Adjust.
16294         (read_base_type): Adjust.
16295         (attr_to_dynamic_prop): Adjust.
16296         (read_subrange_type): Adjust.
16297         (read_unspecified_type): Adjust.
16298         (dwarf2_read_abbrevs): Adjust.
16299         (load_partial_dies): Adjust.
16300         (read_partial_die): Adjust.
16301         (find_partial_die): Adjust.
16302         (guess_partial_die_structure_name): Adjust.
16303         (fixup_partial_die): Adjust.
16304         (read_attribute_value): Adjust.
16305         (read_addr_index): Adjust.
16306         (read_addr_index_from_leb128): Adjust.
16307         (read_str_index): Adjust.
16308         (dwarf2_string_attr): Adjust.
16309         (get_debug_line_section): Adjust.
16310         (dwarf_decode_line_header): Adjust.
16311         (lnp_state_machine::check_line_address): Adjust.
16312         (dwarf_decode_lines_1): Adjust.
16313         (dwarf_decode_lines): Adjust.
16314         (dwarf2_start_symtab): Adjust.
16315         (var_decode_location): Adjust.
16316         (new_symbol_full): Adjust.
16317         (dwarf2_const_value_data): Adjust.
16318         (dwarf2_const_value_attr): Adjust.
16319         (dwarf2_const_value): Adjust.
16320         (die_type): Adjust.
16321         (die_containing_type): Adjust.
16322         (build_error_marker_type): Adjust.
16323         (lookup_die_type): Adjust.
16324         (guess_full_die_structure_name): Adjust.
16325         (anonymous_struct_prefix): Adjust.
16326         (determine_prefix): Adjust.
16327         (dwarf2_name): Adjust.
16328         (follow_die_ref_or_sig): Adjust.
16329         (follow_die_offset): Adjust.
16330         (follow_die_ref): Adjust.
16331         (follow_die_sig_1): Adjust.
16332         (follow_die_sig): Adjust.
16333         (get_signatured_type): Adjust.
16334         (get_DW_AT_signature_type): Adjust.
16335         (decode_locdesc): Adjust.
16336         (dwarf_decode_macros): Adjust.
16337         (cu_debug_loc_section): Adjust.
16338         (fill_in_loclist_baton): Adjust.
16339         (dwarf2_symbol_mark_computed): Adjust.
16340         (init_one_comp_unit): Don't assign
16341         dwarf2_cu::dwarf2_per_objfile.
16342         (set_die_type): Adjust.
16343
16344 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16345
16346         * dwarf2read.c (struct mapped_debug_names): Add constructor.
16347         <dwarf2_per_objfile>: New field.
16348         (dwarf2_per_objfile): Remove global.
16349         (get_dwarf2_per_objfile): New function.
16350         (set_dwarf2_per_objfile): New function.
16351         (dwarf2_build_psymtabs_hard): Change objfile parameter to
16352         dwarf2_per_objfile.
16353         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16354         (read_abbrev_offset): Likewise.
16355         (read_indirect_string): Likewise.
16356         (read_indirect_line_string): Likewise.
16357         (read_indirect_string_at_offset): Likewise.
16358         (read_indirect_string_from_dwz): Likewise.
16359         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16360         dwarf2_per_objfile.
16361         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16362         (create_all_comp_units): Change objfile parameter to
16363         dwarf2_per_objfile.
16364         (create_all_type_units): Likewise.
16365         (process_queue): Add dwarf2_per_objfile parameter.
16366         (read_and_check_comp_unit_head): Likewise.
16367         (lookup_dwo_unit_in_dwp): Likewise.
16368         (get_dwp_file): Likewise.
16369         (process_cu_includes): Likewise.
16370         (struct free_dwo_file_cleanup_data): New struct.
16371         (dwarf2_has_info): Use get_dwarf2_per_objfile and
16372         set_dwarf2_per_objfile.
16373         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
16374         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
16375         context, adjust calls.
16376         (dw2_instantiate_symtab): Likewise.
16377         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
16378         (dw2_get_cu): Likewise.
16379         (create_cu_from_index_list): Change objfile parameter to
16380         dwarf2_per_objfile.
16381         (create_cus_from_index_list): Get dwarf2_per_objfile from
16382         context, adjust calls.
16383         (create_cus_from_index): Likewise.
16384         (create_signatured_type_table_from_index): Change objfile
16385         parameter to dwarf2_per_objfile.
16386         (create_signatured_type_table_from_debug_names): Change objfile
16387         parameter to dwarf2_per_objfile.
16388         (create_addrmap_from_index): Likewise.
16389         (create_addrmap_from_aranges): Likewise.
16390         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
16391         (dw2_setup): Remove.
16392         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
16393         context.
16394         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
16395         get_dwarf2_per_objfile.
16396         (dw2_forget_cached_source_info): Likewise.
16397         (dw2_map_symtabs_matching_filename): Likewise.
16398         (struct dw2_symtab_iterator) <index>: Remove.
16399         <dwarf2_per_objfile>: New field.
16400         (dw2_symtab_iter_init): Replace index parameter with
16401         dwarf2_per_objfile.
16402         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
16403         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
16404         (dw2_print_stats): Likewise.
16405         (dw2_dump): Likewise.
16406         (dw2_expand_symtabs_for_function): Likewise.
16407         (dw2_expand_all_symtabs): Likewise.
16408         (dw2_expand_symtabs_with_fullname): Likewise.
16409         (dw2_expand_marked_cus): Replace index and objfile parameters
16410         with dwarf2_per_objfile.
16411         (dw_expand_symtabs_matching_file_matcher): Add
16412         dwarf2_per_objfile parameter and adjust calls.
16413         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
16414         adjust calls.
16415         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
16416         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
16417         adjust calls.
16418         (create_cus_from_debug_names_list): Replace objfile parameter
16419         with dwarf2_per_objfile and adjust calls.
16420         (create_cus_from_debug_names): Likewise.
16421         (dwarf2_read_debug_names): Likewise.
16422         (mapped_debug_names::namei_to_name): Adjust call.
16423         (dw2_debug_names_iterator::next): Likewise.
16424         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
16425         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
16426         (dw2_debug_names_dump): Likewise.
16427         (dw2_debug_names_expand_symtabs_for_function): Likewise.
16428         (dw2_debug_names_expand_symtabs_matching): Likewise.
16429         (dwarf2_initialize_objfile): Likewise.
16430         (dwarf2_build_psymtabs): Likewise.
16431         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
16432         this_cu.
16433         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
16434         (read_and_check_comp_unit_head): Likewise.
16435         (read_abbrev_offset): Likewise.
16436         (create_debug_type_hash_table): Likewise.
16437         (create_debug_types_hash_table): Likewise.
16438         (create_all_type_units): Replace objfile parameter with
16439         dwarf2_per_objfile.
16440         (add_type_unit): Add dwarf2_per_objfile parameter.
16441         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
16442         with dwarf2_per_objfile.
16443         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
16444         (lookup_dwp_signatured_type): Likewise.
16445         (lookup_signatured_type): Likewise.
16446         (read_cutu_die_from_dwo): Likewise.
16447         (init_tu_and_read_dwo_dies): Likewise.
16448         (init_cutu_and_read_dies): Likewise.
16449         (init_cutu_and_read_dies_no_follow): Likewise.
16450         (allocate_type_unit_groups_table): Add objfile parameter.
16451         (create_type_unit_group): Use dwarf2_per_objfile from cu.
16452         (get_type_unit_group): Likewise.
16453         (process_psymtab_comp_unit): Update call.
16454         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
16455         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
16456         (print_tu_stats): Likewise.
16457         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
16458         in void* parameter.
16459         (build_type_psymtabs): Change objfile parameter to
16460         dwarf2_per_objfile.
16461         (process_skeletonless_type_unit): Use dwarf2_per_objfile
16462         passed in void* parameter.
16463         (process_skeletonless_type_units): Change objfile parameter to
16464         dwarf2_per_objfile.
16465         (set_partial_user): Likewise.
16466         (dwarf2_build_psymtabs_hard): Likewise.
16467         (read_comp_units_from_section): Likewise.
16468         (create_all_comp_units): Likewise.
16469         (scan_partial_symbols): Update calls.
16470         (add_partial_symbol): Likewise.
16471         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
16472         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
16473         (process_queue): Add dwarf2_per_objfile parameter.
16474         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
16475         (compute_compunit_symtab_includes): Likewise.
16476         (process_cu_includes): Add dwarf2_per_objfile parameter.
16477         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
16478         (process_full_type_unit): Likewise.
16479         (process_imported_unit_die): Update call.
16480         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
16481         (read_file_scope): Likewise.
16482         (allocate_dwo_file_hash_table): Add objfile parameter.
16483         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
16484         (create_cus_hash_table): Likewise.
16485         (create_dwp_hash_table): Likewise.
16486         (create_dwo_unit_in_dwp_v1): Likewise.
16487         (create_dwp_v2_section): Likewise.
16488         (create_dwo_unit_in_dwp_v2): Likewise.
16489         (lookup_dwo_unit_in_dwp): Likewise.
16490         (try_open_dwop_file): Likewise.
16491         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
16492         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
16493         cleanup to include a reference to dwarf2_per_objfile.
16494         (open_dwp_file): Add dwarf2_per_objfile parameter.
16495         (open_and_init_dwp_file): Likewise.
16496         (get_dwp_file): Likewise.
16497         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
16498         (queue_and_load_all_dwo_tus): Update call.
16499         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
16500         data.
16501         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
16502         (dwarf2_ranges_process): Likewise.
16503         (dwarf2_get_pc_bounds): Likewise.
16504         (mark_common_block_symbol_computed): Likewise.
16505         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16506         (dwarf2_read_abbrevs): Update call.
16507         (read_partial_die): Use dwarf2_per_objfile from cu.
16508         (find_partial_die): Likewise.
16509         (fixup_partial_die): Likewise.
16510         (read_attribute_value): Likewise.
16511         (read_indirect_string_at_offset_from): Add objfile parameter.
16512         (read_indirect_string_at_offset): Add dwarf2_per_objfile
16513         parameter.
16514         (read_indirect_string_from_dwz): Add objfile parameter.
16515         (read_indirect_string): Add objfile parameter.
16516         (read_addr_index_1): Add dwarf2_per_objfile parameter.
16517         (read_addr_index): Use dwarf2_per_objfile from cu.
16518         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
16519         call dw2_setup.
16520         (read_str_index): Use dwarf2_per_objfile from cu.
16521         (get_debug_line_section): Likewise.
16522         (read_formatted_entries): Add dwarf2_per_objfile parameter.
16523         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
16524         (new_symbol_full): Use dwarf2_per_objfile from cu.
16525         (build_error_marker_type): Likewise.
16526         (lookup_die_type): Likewise.
16527         (determine_prefix): Likewise.
16528         (follow_die_offset): Likewise.
16529         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
16530         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
16531         (dwarf2_fetch_die_type_sect_off): Likewise.
16532         (dwarf2_get_die_type): Likewise.
16533         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
16534         (get_signatured_type): Likewise.
16535         (get_DW_AT_signature_type): Likewise.
16536         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
16537         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
16538         (cu_debug_loc_section): Likewise.
16539         (fill_in_loclist_baton): Likewise.
16540         (dwarf2_symbol_mark_computed): Likewise.
16541         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16542         dwarf2_per_objfile.
16543         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
16544         parameter.
16545         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16546         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
16547         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
16548         (set_die_type): Use dwarf2_free_objfile from cu.
16549         (get_die_type_at_offset): Likewise.
16550         (dwarf2_per_objfile_free): Don't assign global variable.
16551         (debug_names) <constructor>: Add dwarf2_per_objfile
16552         parameter, update m_debugstrlookup construction.
16553         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
16554         parameter.
16555         <m_dwarf2_per_objfile>: New field.
16556         <lookup>: Use m_dwarf2_per_objfile.
16557         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
16558         (psyms_seen_size): Likewise.
16559         (write_gdbindex): Replace objfile parameter with
16560         dwarf2_per_objfile.
16561         (write_debug_names): Likewise.
16562         (write_psymtabs_to_index): Likewise.
16563         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
16564         calls.
16565
16566 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16567
16568         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
16569         <dwarf2_per_objfile>: New field.
16570         (struct dwarf2_per_cu_data) <objfile>: Remove.
16571         <dwarf2_per_objfile>: New field.
16572         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
16573         of objfile.
16574         (create_signatured_type_table_from_index): Likewise.
16575         (create_debug_type_hash_table): Likewise.
16576         (fill_in_sig_entry_from_dwo_entry): Likewise.
16577         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
16578         (create_type_unit_group): Assign dwarf2_per_objfile instead of
16579         objfile.
16580         (create_partial_symtab): Access objfile through
16581         dwarf2_per_objfile.
16582         (process_psymtab_comp_unit_reader): Likewise.
16583         (read_comp_units_from_section): Likewise.
16584         (scan_partial_symbols): Likewise.
16585         (add_partial_symbol): Likewise.
16586         (add_partial_subprogram): Likewise.
16587         (peek_die_abbrev): Likewise.
16588         (fixup_go_packaging): Likewise.
16589         (process_full_comp_unit): Likewise.
16590         (process_full_type_unit): Likewise.
16591         (process_imported_unit_die): Likewise.
16592         (dwarf2_compute_name): Likewise.
16593         (dwarf2_physname): Likewise.
16594         (read_import_statement): Likewise.
16595         (create_cus_hash_table): Assign dwarf2_physname instead of
16596         objfile.
16597         (read_func_scope): Access objfile through dwarf2_per_objfile.
16598         (read_lexical_block_scope): Likewise.
16599         (read_call_site_scope): Likewise.
16600         (read_variable): Likewise.
16601         (dwarf2_rnglists_process): Likewise.
16602         (dwarf2_ranges_process): Likewise.
16603         (dwarf2_ranges_read): Likewise.
16604         (dwarf2_record_block_ranges): Likewise.
16605         (dwarf2_add_field): Likewise.
16606         (dwarf2_add_member_fn): Likewise.
16607         (read_structure_type): Likewise.
16608         (process_structure_scope): Likewise.
16609         (read_enumeration_type): Likewise.
16610         (read_array_type): Likewise.
16611         (read_common_block): Likewise.
16612         (read_namespace_type): Likewise.
16613         (read_namespace): Likewise.
16614         (read_module_type): Likewise.
16615         (read_tag_pointer_type): Likewise.
16616         (read_tag_ptr_to_member_type): Likewise.
16617         (read_tag_string_type): Likewise.
16618         (read_subroutine_type): Likewise.
16619         (read_typedef): Likewise.
16620         (read_base_type): Likewise.
16621         (attr_to_dynamic_prop): Likewise.
16622         (read_subrange_type): Likewise.
16623         (read_unspecified_type): Likewise.
16624         (load_partial_dies): Likewise.
16625         (read_partial_die): Likewise.
16626         (find_partial_die): Likewise.
16627         (guess_partial_die_structure_name): Likewise.
16628         (fixup_partial_die): Likewise.
16629         (read_attribute_value): Likewise.
16630         (read_addr_index_from_leb128): Likewise.
16631         (dwarf2_read_addr_index): Likewise.
16632         (dwarf2_string_attr): Likewise.
16633         (lnp_state_machine::check_line_address): Likewise.
16634         (dwarf_decode_lines_1): Likewise.
16635         (dwarf_decode_lines): Likewise.
16636         (dwarf2_start_symtab): Likewise.
16637         (var_decode_location): Likewise.
16638         (new_symbol_full): Likewise.
16639         (dwarf2_const_value_data): Likewise.
16640         (dwarf2_const_value_attr): Likewise.
16641         (dwarf2_const_value): Likewise.
16642         (die_type): Likewise.
16643         (die_containing_type): Likewise.
16644         (lookup_die_type): Likewise.
16645         (guess_full_die_structure_name): Likewise.
16646         (anonymous_struct_prefix): Likewise.
16647         (dwarf2_name): Likewise.
16648         (follow_die_ref_or_sig): Likewise.
16649         (follow_die_offset): Likewise.
16650         (follow_die_ref): Likewise.
16651         (dwarf2_fetch_die_loc_sect_off): Likewise.
16652         (dwarf2_fetch_constant_bytes): Likewise.
16653         (dwarf2_fetch_die_type_sect_off): Likewise.
16654         (dwarf2_get_die_type): Likewise.
16655         (follow_die_sig): Likewise.
16656         (decode_locdesc): Likewise.
16657         (dwarf2_per_cu_objfile): Likewise.
16658         (dwarf2_per_cu_text_offset): Likewise.
16659         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
16660         objfile.
16661         (set_die_type): Access objfile through
16662         dwarf2_per_objfile.
16663
16664 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16665
16666         * valprint.c (converted_character_d): Remove typedef.
16667         (DEF_VEC_O (converted_character_d)): Remove.
16668         (count_next_character): Use std::vector.
16669         (print_converted_chars_to_obstack): Likewise.
16670         (generic_printstr): Likewise.
16671
16672 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16673
16674         * xml-support.h (struct gdb_xml_value): Add constructor.
16675         <value>: Change type to unique_xmalloc_ptr.
16676         (gdb_xml_value_s): Remove typedef.
16677         (DEF_VEC_O (gdb_xml_value_s)): Remove.
16678         (gdb_xml_element_start_handler): Change parameter type to
16679         std::vector.
16680         (xml_find_attribute): Likewise.
16681         * xml-support.c (xml_find_attribute): Change parameter type to
16682         std::vector and adjust.
16683         (gdb_xml_values_cleanup): Remove.
16684         (gdb_xml_parser::start_element): Adjust to std::vector.
16685         (xinclude_start_include): Change paraeter type to std::vector
16686         and adjust.
16687         * btrace.c (check_xml_btrace_version): Likewise.
16688         (parse_xml_btrace_block): Likewise.
16689         (parse_xml_btrace_pt_config_cpu): Likewise.
16690         (parse_xml_btrace_pt): Likewise.
16691         (parse_xml_btrace_conf_bts): Likewise.
16692         (parse_xml_btrace_conf_pt): Likewise.
16693         * memory-map.c (memory_map_start_memory): Likewise.
16694         (memory_map_start_property): Likewise.
16695         * osdata.c (osdata_start_osdata): Likewise.
16696         (osdata_start_item): Likewise.
16697         (osdata_start_column): Likewise.
16698         * remote.c (start_thread): Likewise.
16699         * solib-aix.c (library_list_start_library): Likewise.
16700         (library_list_start_list): Likewise.
16701         * solib-svr4.c (library_list_start_library): Likewise.
16702         (svr4_library_list_start_list): Likewise.
16703         * solib-target.c (library_list_start_segment): Likewise.
16704         (library_list_start_section): Likewise.
16705         (library_list_start_library): Likewise.
16706         (library_list_start_list): Likewise.
16707         * tracepoint.c (traceframe_info_start_memory): Likewise.
16708         (traceframe_info_start_tvar): Likewise.
16709         * xml-syscall.c (syscall_start_syscall): Likewise.
16710         * xml-tdesc.c (tdesc_start_target): Likewise.
16711         (tdesc_start_feature): Likewise.
16712         (tdesc_start_reg): Likewise.
16713         (tdesc_start_union): Likewise.
16714         (tdesc_start_struct): Likewise.
16715         (tdesc_start_flags): Likewise.
16716         (tdesc_start_enum): Likewise.
16717         (tdesc_start_field): Likewise.
16718         (tdesc_start_enum_value): Likewise.
16719         (tdesc_start_vector): Likewise.
16720
16721 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16722
16723         * extension.h (struct xmethod_worker) <clone>: Remove.
16724         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
16725         Remove.
16726         (python_xmethod_worker::clone): Remove.
16727         * valops.c (find_overload_match): Use std::move instead of
16728         clone.
16729
16730 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16731
16732         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
16733         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
16734         <free_xmethod_worker_data>: Remove.
16735         <get_matching_xmethod_workers>: Chance VEC to std::vector.
16736         <get_xmethod_arg_types>: Remove.
16737         <get_xmethod_result_type>: Remove.
16738         <invoke_xmethod>: Remove.
16739         * extension.c (new_xmethod_worker): Remove.
16740         (clone_xmethod_worker): Remove.
16741         (get_matching_xmethod_workers): Return void, pass std::vector by
16742         pointer.
16743         (get_xmethod_arg_types): Rename to...
16744         (xmethod_worker::get_arg_types): ... this, and adjust.
16745         (get_xmethod_result_type): Rename to...
16746         (xmethod_worker::get_result_type): ... this, and adjust.
16747         (invoke_xmethod): Remove.
16748         (free_xmethod_worker): Remove.
16749         (free_xmethod_worker_vec): Remove.
16750         * extension.h (enum ext_lang_rc): Move here from
16751         extension-priv.h.
16752         (struct xmethod_worker): Add constructor and destructor.
16753         <data>: Remove.
16754         <value>: Remove.
16755         <invoke, clone, do_get_result_type, do_get_arg_types>: New
16756         virtual pure methods.
16757         <get_arg_types, get_result_type>: New methods.
16758         (xmethod_worker_ptr): Remove typedef.
16759         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
16760         (xmethod_worker_vec): Remove typedef.
16761         (xmethod_worker_up): New typedef.
16762         (invoke_xmethod): Remove.
16763         (clone_xmethod_worker): Remove.
16764         (free_xmethod_worker): Remove.
16765         (free_xmethod_worker_vec): Remove.
16766         (get_xmethod_arg_types): Remove.
16767         (get_xmethod_result_type): Remove.
16768         * valops.c (find_method_list): Use std::vector, don't use
16769         intermediate vector.
16770         (value_find_oload_method_list): Use std::vector.
16771         (find_overload_match): Use std::vector.
16772         (find_oload_champ): Use std::vector.
16773         * value.c (value_free): Use operator delete.
16774         (value_of_xmethod): Rename to...
16775         (value_from_xmethod): ... this.  Don't assign
16776         xmethod_worker::value, take rvalue-reference.
16777         (result_type_of_xmethod): Adjust.
16778         (call_xmethod): Adjust.
16779         * value.h: Include extension.h.
16780         (struct xmethod_worker): Don't forward-declare.
16781         (value_of_xmethod): Rename to...
16782         (value_from_xmethod): ... this, take rvalue-reference.
16783         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
16784         (struct python_xmethod_worker): ... this, add constructor and
16785         destructor.
16786         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
16787         (gdbpy_free_xmethod_worker_data): Rename to...
16788         (python_xmethod_worker::~python_xmethod_worker): ... this and
16789         adjust.
16790         (gdbpy_clone_xmethod_worker_data): Rename to...
16791         (python_xmethod_worker::clone): ... this and adjust.
16792         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
16793         temporary vector.
16794         (gdbpy_get_xmethod_arg_types): Rename to...
16795         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
16796         (gdbpy_get_xmethod_result_type): Rename to...
16797         (python_xmethod_worker::do_get_result_type): ... this and
16798         adjust.
16799         (gdbpy_invoke_xmethod): Rename to...
16800         (python_xmethod_worker::invoke): ... this and adjust.
16801         (new_python_xmethod_worker): Rename to...
16802         (python_xmethod_worker::python_xmethod_worker): ... this and
16803         adjust.
16804         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
16805         Remove.
16806         (gdbpy_free_xmethod_worker_data): Remove.
16807         (gdbpy_get_matching_xmethod_workers): Use std::vector.
16808         (gdbpy_get_xmethod_arg_types): Remove.
16809         (gdbpy_get_xmethod_result_type): Remove.
16810         (gdbpy_invoke_xmethod): Remove.
16811         * python/python.c (python_extension_ops): Remove obsolete
16812         callbacks.
16813
16814 2018-01-05  Pedro Alves  <palves@redhat.com>
16815
16816         PR gdb/18653
16817         * common/signals-state-save-restore.c
16818         (save_original_signals_state): New parameter 'quiet'.  Warn if we
16819         find a custom handler preinstalled, instead of internal erroring.
16820         But only warn if !quiet.
16821         * common/signals-state-save-restore.h
16822         (save_original_signals_state): New parameter 'quiet'.
16823         * main.c (captured_main_1): Move save_original_signals_state call
16824         after option handling, and pass QUIET.
16825
16826 2018-01-05  Pedro Alves  <palves@redhat.com>
16827
16828         * spu-tdep.c (spu_catch_start): Pass
16829         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
16830
16831 2018-01-05  Pedro Alves  <palves@redhat.com>
16832
16833         PR gdb/22670
16834         * ada-lang.c (literal_symbol_name_matcher): New function.
16835         (ada_get_symbol_name_matcher): Use it for
16836         symbol_name_match_type::SEARCH_NAME.
16837         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
16838         it down instead of assuming symbol_name_match_type::FULL.
16839         * block.h (block_lookup_symbol): New parameter 'match_type'.
16840         * c-valprint.c (print_unpacked_pointer): Use
16841         lookup_symbol_search_name instead of lookup_symbol.
16842         * compile/compile-object-load.c (get_out_value_type): Pass down
16843         symbol_name_match_type::SEARCH_NAME.
16844         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
16845         symbol_name_match_type::FULL.
16846         * cp-support.c (cp_get_symbol_name_matcher): Handle
16847         symbol_name_match_type::SEARCH_NAME.
16848         * infrun.c (insert_exception_resume_breakpoint): Use
16849         lookup_symbol_search_name.
16850         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
16851         * psymtab.c (maintenance_check_psymtabs): Use
16852         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
16853         * stack.c (print_frame_args): Use lookup_symbol_search_name and
16854         SYMBOL_SEARCH_NAME.
16855         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
16856         if symbol_name_match_type::SEARCH_NAME.
16857         (lookup_symbol_in_language): Pass down
16858         symbol_name_match_type::FULL.
16859         (lookup_symbol_search_name): New.
16860         (lookup_language_this): Pass down
16861         symbol_name_match_type::SEARCH_NAME.
16862         (lookup_symbol_aux, lookup_local_symbol): New parameter
16863         'match_type'.  Pass it down.
16864         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
16865         (lookup_symbol_search_name): New declaration.
16866         (lookup_symbol_in_block): New 'match_type' parameter.
16867
16868 2018-01-05  Pedro Alves  <palves@redhat.com>
16869
16870         PR gdb/22670
16871         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
16872         ada_lookup_symbol.
16873         (ada_lookup_symbol): Reimplement in terms of
16874         ada_lookup_symbol_list, bits factored out from
16875         ada_lookup_encoded_symbol.
16876
16877 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16878
16879         * ada-exp.y (write_object_renaming): When subscripting an array
16880         using a symbol as the index, pass the block in call to
16881         ada_lookup_encoded_symbol when looking that symbol up.
16882
16883 2018-01-05  Jerome Guitton  <guitton@adacore.com>
16884
16885         * ada-lang.c (ada_array_length): Use ada_index_type instead of
16886         TYPE_INDEX_TYPE.
16887
16888 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16889
16890         * ada-lang.c (ada_to_fixed_value_create): Add handling of
16891         the case where VALUE_LVAL (val0) is not lval_memory.
16892
16893 2018-01-05  Xavier Roirand  <roirand@adacore.com>
16894
16895         * ada-valprint.c (print_optional_low_bound): Handle
16896         character-indexed array printing like boolean-indexed array
16897         printing.
16898
16899 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16900
16901         * NEWS: Create a new section for the next release branch.
16902         Rename the section of the current branch, now that it has
16903         been cut.
16904
16905 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16906
16907         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
16908         * version.in: Bump version to 8.1.50.DATE-git.
16909
16910 2018-01-03  Xavier Roirand  <roirand@adacore.com>
16911
16912         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
16913         Add field.
16914         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
16915         Add field.
16916         (default_exception_support_info) <catch_handlers_sym>: Add field.
16917         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
16918         (ada_exception_name_addr_1): Add "catch handlers" handling.
16919         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
16920         Update all callers.
16921         (create_excep_cond_exprs) <ex>: Add parameter.
16922         (re_set_exception): Update create_excep_cond_exprs call.
16923         (print_it_exception, print_one_exception, print_mention_exception)
16924         (print_recreate_exception): Add "catch handler" handling.
16925         (allocate_location_catch_handlers, re_set_catch_handlers)
16926         (check_status_catch_handlers, print_it_catch_handlers)
16927         (print_one_catch_handlers, print_mention_catch_handlers)
16928         (print_recreate_catch_handlers): New function.
16929         (catch_handlers_breakpoint_ops): New variable.
16930         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
16931         Add parameter.  Add "catch handler" handling.
16932         (ada_exception_sym_name, ada_exception_breakpoint_ops):
16933         Add "catch handler" handling.
16934         (ada_exception_catchpoint_cond_string): Add "catch handler"
16935         handling.
16936         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
16937         call.
16938         (catch_ada_handlers_command): New function.
16939         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
16940         operations structure.
16941         (_initialize_ada_language): Add "catch handlers" command entry.
16942         * NEWS: Document "catch handlers" feature.
16943
16944 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16945
16946         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
16947         account when creating the array type of the slice.
16948         (ada_value_slice): Likewise.
16949
16950 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16951
16952         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
16953         New enum value.
16954         (create_array_type_with_stride): Add byte_stride_prop parameter.
16955         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
16956         New parameter.  Update all callers in this file.
16957         (array_type_has_dynamic_stride): New function.
16958         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
16959         of arrays with dynamic byte strides.
16960         * dwarf2read.c (read_array_type): Add support for dynamic
16961         DW_AT_byte_stride attributes.
16962
16963 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16964
16965         * dwarf2read.c (read_unspecified_type): Treat
16966         DW_TAG_enumeration_type DIEs from Ada units as stubs.
16967
16968 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16969
16970         Update copyright year range in all GDB files.
16971
16972 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
16973
16974         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
16975         and gdb/testsuite/gdb.base/step-line.c.
16976
16977 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16978
16979         * copyright.py (main): Dump the contents of
16980         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
16981         even if BY_HAND is empty.
16982
16983 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16984
16985         * top.c (print_gdb_version): Update Copyright year in version
16986         message.
16987
16988 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16989
16990         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
16991
16992 For older changes see ChangeLog-2017.
16993 \f
16994 Local Variables:
16995 mode: change-log
16996 left-margin: 8
16997 fill-column: 74
16998 version-control: never
16999 coding: utf-8
17000 End: