Introduce ui_file_style
[external/binutils.git] / gdb / ChangeLog
1 2018-12-28  Tom Tromey  <tom@tromey.com>
2
3         * unittests/style-selftests.c: New file.
4         * ui-style.c: New file.
5         * ui-style.h: New file.
6         * ui-file.h: Include ui-style.h.
7         * Makefile.in (COMMON_SFILES): Add ui-style.c.
8         (HFILES_NO_SRCDIR): Add ui-style.h.
9         (SUBDIR_UNITTESTS_SRCS): Add style-selftests.c.
10
11 2018-12-28  Tom Tromey  <tom@tromey.com>
12
13         * command.h (add_setshow_enum_cmd): Add "context" argument.
14         * cli/cli-decode.c (add_setshow_enum_cmd): Add "context"
15         argument.  Call set_cmd_context.
16
17 2018-12-28  Tom Tromey  <tom@tromey.com>
18
19         * utils.c (filter_initialized): New global.
20         (wrap_buffer): Now a std::string.
21         (wrap_pointer): Remove.
22         (flush_wrap_buffer): New function.
23         (filtered_printing_initialized, set_width, wrap_here)
24         (fputs_maybe_filtered): Update.
25
26 2018-12-28  Eli Zaretskii  <eliz@gnu.org>
27
28         * coffread.c (coff_symtab_read): Don't record in minsyms symbols
29         that are unresolved.  This avoids triggering an internal error
30         when stepping outside of 'main' in MinGW programs.
31
32 2018-12-27  Tom Tromey  <tom@tromey.com>
33
34         * python/py-utils.c (gdbpy_handle_exception): Translate
35         PyExc_KeyboardInterrupt to quit.
36
37 2018-12-27  Tom Tromey  <tom@tromey.com>
38
39         * python/python-internal.h (gdbpy_print_stack_or_quit): Declare.
40         * python/py-unwind.c (pyuw_sniffer): Use
41         gdbpy_print_stack_or_quit.
42         * python/py-framefilter.c (throw_quit_or_print_exception):
43         Remove.
44         (gdbpy_apply_frame_filter): Use gdbpy_print_stack_or_quit.
45         * python/python.c (gdbpy_print_stack_or_quit): New function.
46
47 2018-12-27  Tom Tromey  <tom@tromey.com>
48
49         * python/py-value.c (convert_value_from_python): Use
50         gdbpy_convert_exception.
51         * python/py-param.c (parmpy_init): Use gdbpy_convert_exception.
52         * python/py-cmd.c (cmdpy_init): Use gdbpy_convert_exception.
53         * python/py-breakpoint.c (bppy_init): Use
54         gdbpy_convert_exception.
55
56 2018-12-27  Tom Tromey  <tom@tromey.com>
57
58         * configure.nat (NATDEPFILES): Use nat/ prefix.
59         * Makefile.in (CONFIG_SRC_SUBDIR): Add nat.
60         (%.o: ${srcdir}/nat/%.c): Remove rule.
61         (INIT_FILES): Do not filter out NATDEPFILES.
62
63 2018-12-27  Tom Tromey  <tom@tromey.com>
64
65         * Makefile.in (INIT_FILES): Redefine.
66         (stamp-init): Remove sed, tr invocations.  Use for loop.  Don't
67         set LANG or LC_ALL.
68
69 2018-12-27  Tom Tromey  <tom@tromey.com>
70
71         * Makefile.in (stamp-init): Remove gdbtypes special case.
72
73 2018-12-27  John Baldwin  <jhb@FreeBSD.org>
74
75         * config/i386/nm-fbsd.h: Remove file.
76         * Makefile.in (HFILES_NO_SRCDIR): Remove config/i386/nm-fbsd.h.
77         * configure.nat: Remove NAT_FILE for FreeBSD/i386.
78
79 2018-12-27  Tom Tromey  <tom@tromey.com>
80
81         * minsyms.h (class minimal_symbol_reader): Use
82         DISABLE_COPY_AND_ASSIGN.
83
84 2018-12-27  Tom Tromey  <tom@tromey.com>
85
86         * python/python.c (python_interactive_command): Use std::string.
87         (gdbpy_parameter): Likewise.
88         * python/py-utils.c (unicode_to_encoded_string): Update comment.
89         * python/py-symtab.c (salpy_str): Use PyString_FromFormat.
90         * python/py-record-btrace.c (recpy_bt_insn_data): Use
91         byte_vector.
92         * python/py-objfile.c (objfpy_get_build_id): Use
93         unique_xmalloc_ptr.
94         * python/py-inferior.c (infpy_read_memory): Use
95         unique_xmalloc_ptr.
96         * python/py-cmd.c (gdbpy_parse_command_name): Use std::string.
97
98 2018-12-26  Simon Marchi  <simon.marchi@polymtl.ca>
99
100         * target.c (target_terminal::restore_inferior): Remove struct keyword.
101
102 2018-12-26  Simon Marchi  <simon.marchi@ericsson.com>
103
104         * build-id.c (build_id_to_debug_bfd): Enhance debug output.
105         * symfile.c (separate_debug_file_exists): Likewise.
106
107 2018-12-24  Andrew Burgess  <andrew.burgess@embecosm.com>
108
109         * c-exp.y (field_name): Allow DOUBLE_KEYWORD, INT_KEYWORD, LONG,
110         SHORT, SIGNED_KEYWORD, and UNSIGNED tokens to act as a field
111         names.
112         (typename_stoken): New function.
113
114 2018-12-24  Andrew Burgess  <andrew.burgess@embecosm.com>
115
116         * c-exp.y (field_name): New %token, and new rule.
117         (exp): Replace uses of 'name' with 'field_name' where appropriate.
118
119 2018-12-24  Andrew Burgess  <andrew.burgess@embecosm.com>
120
121         PR gdb/13368
122         * c-exp.y (typebase): Extend the comment.
123         (ident_tokens): Likewise.
124
125 2018-12-18  Tom Tromey  <tom@tromey.com>
126
127         * dwarf2read.c (dwarf2_find_containing_comp_unit): Don't take
128         address of sect_off.
129
130 2018-12-23  Joel Brobecker  <brobecker@adacore.com>
131
132         GDB 8.2.1 released.
133
134 2018-12-22  Andrew Burgess  <andrew.burgess@embecosm.com>
135
136         * riscv-tdep.c (riscv_call_arg_struct): Don't adjust size before
137         assigning locations.
138         (riscv_return_value): Take more care not to read/write outside of
139         argument buffer.  Cast return value between the declared type and
140         the abi type.
141
142 2018-12-22  Andrew Burgess  <andrew.burgess@embecosm.com>
143
144         * riscv-tdep.c (riscv_register_reggroup_p): Save and restore fcsr,
145         fflags, and frm registers.
146
147 2018-12-22  Andrew Burgess  <andrew.burgess@embecosm.com>
148
149         * riscv-tdep.c (riscv_dwarf_reg_to_regnum): New function.
150         (riscv_gdbarch_init): Register new function with gdbarch.
151         * riscv-tdep.h: New enum to define RISC-V DWARF register numbers.
152
153 2018-12-21  Simon Marchi  <simon.marchi@ericsson.com>
154
155         * minsyms.c (mst_str): New.
156         (minimal_symbol_reader::record_full): Add debug output.
157
158 2018-12-21  John Baldwin  <jhb@FreeBSD.org>
159
160         * fbsd-nat.c (fbsd_handle_debug_trap): Require pl.pl_flags to
161         equal PL_FLAG_SI.
162         (fbsd_nat_target::stopped_by_sw_breakpoint): Likewise.
163
164 2018-12-21  Paul Marechal  <paul.marechal@ericsson.com>
165
166         PR gdb/23974
167         * target.c (target_read_stralloc): Check for empty vector.
168
169 2018-12-21  Дилян Палаузов  <dilyan.palauzov@aegee.org>
170
171         * top.c (print_gdb_configuration): Print "--without-python"
172         if GDB was configured without Python.
173
174 2018-12-21  Andrew Burgess  <andrew.burgess@embecosm.com>
175
176         * riscv-tdep.c (riscv_scan_prologue): Use plongest to format
177         a signed offset as a string.
178
179 2018-12-21  Dave Murphy  <davem@devkitpro.org>
180
181         * dtrace-probe.c (dtrace_static_probe_ops): Explicit zero
182         initialise.
183         * probe.c (any_static_probe_ops): Ditto.
184         * record-btrace.c (record_btrace_thread_observer_token): Ditto.
185         * stap-probe.c (stap_static_probe_ops): Ditto.
186         * tui/tui-hooks.c (tui_observers_token): Ditto.
187         * unittests/observable-selftests.c (token1, token2, token3): Ditto.
188
189 2018-12-19  Andrew Burgess  <andrew.burgess@embecosm.com>
190
191         * gdb/dummy-frame.c (default_dummy_id): Defined new function.
192         * gdb/dummy-frame.h (default_dummy_id): Declare new function.
193         * gdb/frame-unwind.c (default_unwind_pc): Define new function.
194         (default_unwind_sp): Define new function.
195         * gdb/frame-unwind.h (default_unwind_pc): Declare new function.
196         (default_unwind_sp): Declare new function.
197         * gdb/frame.c (frame_unwind_pc): Assume gdbarch_unwind_pc is
198         available.
199         (get_frame_sp): Assume that gdbarch_unwind_sp is available.
200         * gdb/gdbarch.c: Regenerate.
201         * gdb/gdbarch.h: Regenerate.
202         * gdb/gdbarch.sh: Update definition of dummy_id, unwind_pc, and
203         unwind_sp.  Add additional header files to be included in
204         generated file.
205
206 2018-12-19  Dimitar Dimitrov  <dimitar@dinux.eu>
207
208         * nat/linux-ptrace.c (linux_ptrace_test_ret_to_nx): Remove
209         sp clobbers.
210
211 2018-12-17  Andrew Burgess  <andrew.burgess@embecosm.com>
212
213         * dwarf2read.c (struct dwarf2_cu): Convert the fields 'mark',
214         'has_loclist', 'checked_producer', 'producer_is_gxx_lt_4_6',
215         'producer_is_gcc_lt_4_3', 'producer_is_icc_lt_14',
216         'processing_has_namespace_info' from unsigned int to bool.  Update
217         comments.
218         (producer_is_icc_lt_14): Update return type.
219         (producer_is_gcc_lt_4_3): Likewise.
220         (producer_is_gxx_lt_4_6): Likewise.
221         (process_die): Write true instead of 1 into predicate fields.
222         (dwarf2_start_symtab): Likewise.
223         (var_decode_location): Likewise.
224         (dwarf2_mark_helper): Likewise.
225         (dwarf2_mark): Likewise.
226         (dwarf2_clear_marks): Write false instead of 0 into predicate
227         field.
228         (dwarf2_cu::dwarf2_cu): Initialise predicate fields to false, not
229         0.
230
231 2018-12-17  Szabolcs Nagy  <szabolcs.nagy@arm.com>
232
233         * nat/aarch64-sve-linux-ptrace.h: Include signal.h instead of
234         asm/sigcontext.h.
235
236 2018-12-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
237
238         * nat/linux-ptrace.c (kill_child): Fix ARI warning by removing
239         warning trailing new line.
240
241 2018-12-16  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
242
243         * nat/linux-ptrace.c (kill_child): New function.
244         (linux_ptrace_test_ret_to_nx): Use kill_child instead of local code.
245         Add a call to kill_child in case of early return after fork.
246         (linux_check_ptrace_features): Use kill_child instead of local code.
247         (linux_test_for_tracefork): Likewise.
248
249 2018-12-14  Tom Tromey  <tom@tromey.com>
250
251         * Makefile.in: Remove "alloca" comment.
252         (INFOFILES): Remove.
253         (local-maintainer-clean): Don't use INFOFILES.
254
255 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
256
257         * syscalls/update-freebsd.sh: New file.
258         * syscalls/freebsd.xml: Regenerate.
259
260 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
261
262         * NEWS: Add entry documenting system call aliases.
263         * break-catch-syscall.c (catch_syscall_split_args): Pass 'result'
264         to get_syscalls_by_name.
265         * gdbarch.sh (UNKNOWN_SYSCALL): Remove.
266         * gdbarch.h: Regenerate.
267         * syscalls/gdb-syscalls.dtd (syscall): Add alias attribute.
268         * xml-syscall.c [!HAVE_LIBEXPAT] (get_syscalls_by_name): Rename
269         from get_syscall_by_name.  Now accepts a pointer to a vector of
270         integers and returns a bool.
271         [HAVE_LIBEXPAT] (struct syscall_desc): Add alias member.
272         (syscall_create_syscall_desc): Add alias parameter and pass it to
273         syscall_desc constructor.
274         (syscall_start_syscall): Handle alias attribute.
275         (syscall_attr): Add alias attribute.
276         (xml_get_syscalls_by_name): Rename from xml_get_syscall_number.
277         Now accepts a pointer to a vector of integers and returns a
278         bool.  Add syscalls whose alias or name matches the requested
279         name.
280         (get_syscalls_by_name): Rename from get_syscall_by_name.  Now
281         accepts a pointer to a vector of integers and returns a bool.
282         * xml-syscall.h (get_syscalls_by_name): Likewise.
283
284 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
285
286         * break-catch-syscall.c (catch_syscall_split_args): Pass 'result'
287         to get_syscalls_by_group.
288         * xml-syscall.c [!HAVE_LIBEXPAT] (get_syscalls_by_group): Return
289         false.
290         [HAVE_LIBEXPAT] (xml_list_syscalls_by_group): Append syscall
291         numbers to an existing vector of integers and return a bool.
292         (get_syscalls_by_group): Accept pointer to vector of integers
293         and change return type to bool.
294         * xml-syscall.h (get_syscalls_by_group): Likewise.
295
296 2018-12-13  Jim Wilson  <jimw@sifive.com>
297
298         * riscv-tdep.c (riscv_print_one_register_info): For MSTATUS, add
299         comment for SD field, and correct xlen calculation.  For MISA, add
300         comment for MXL field, add call to register_size, and correct base
301         calculation.
302
303 2018-12-13  Stafford Horne  <shorne@gmail.com>
304
305         * NEWS(New targets): Add or1k*-*-linux*.
306
307 2018-12-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
308
309         * nat/linux-osdata.c (linux_xfer_osdata_info_os_types): Forward
310         declare on one line to fix ARI warning.
311
312 2018-12-12  Andrew Burgess  <andrew.burgess@embecosm.com>
313
314         * infrun.c (infcall_suspend_state::infcall_suspend_state): New.
315         (infcall_suspend_state::registers): New.
316         (infcall_suspend_state::restore): New.
317         (infcall_suspend_state::thread_suspend): Rename to...
318         (infcall_suspend_state::m_thread_suspend): ...this.
319         (infcall_suspend_state::registers): Rename to...
320         (infcall_suspend_state::m_registers): ...this.
321         (infcall_suspend_state::siginfo_gdbarch): Rename to...
322         (infcall_suspend_state::m_siginfo_gdbarch): ...this.
323         (infcall_suspend_state::siginfo_data): Rename to...
324         (infcall_suspend_state::m_siginfo_data): ...this.
325         (save_infcall_suspend_state): Rewrite to use infcall_suspend_state
326         constructor.
327         (restore_infcall_suspend_state): Rewrite to use
328         infcall_suspend_state::restore method.
329         (get_infcall_suspend_state_regcache): Use
330         infcall_suspend_state::registers method.
331
332 2018-12-12  Andrew Burgess  <andrew.burgess@embecosm.com>
333
334         * riscv-tdep.c (riscv_call_arg_scalar_float): Unnamed (variadic)
335         arguments are passed in integer registers.
336         (riscv_call_arg_complex_float): Likewise.
337
338 2018-12-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
339
340         * nat/linux-osdata.c (common_getter): New function.
341         (struct osdata_type): Change getter to take_snapshot.
342         Add LONGEST len_avail and struct buffer buffer.
343         Change all elements in the initializer.
344         Add an element for the list of types.
345         (linux_xfer_osdata_info_os_types): New function.
346         (linux_common_xfer_osdata): Use common_getter for the list of types.
347         Replace getter call by common_getter.
348         (linux_xfer_osdata_cpus): Remove args READBUF, OFFSET, LEN.
349         Add arg BUFFER.  Only keep the code that adds data in BUFFER.
350         (linux_xfer_osdata_fds): Likewise.
351         (linux_xfer_osdata_modules): Likewise.
352         (linux_xfer_osdata_msg): Likewise.
353         (linux_xfer_osdata_processes): Likewise.
354         (linux_xfer_osdata_processgroups): Likewise.
355         (linux_xfer_osdata_sem): Likewise.
356         (linux_xfer_osdata_shm): Likewise.
357         (linux_xfer_osdata_isockets): Likewise.
358         (linux_xfer_osdata_threads): Likewise.
359
360 2018-12-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
361
362         * nat/linux-osdata.c: Removed various trailing spaces.
363
364 2018-12-10  Andrew Burgess  <andrew.burgess@embecosm.com>
365
366         * riscv-tdep.c (riscv_register_name): Fix ARI warning by removing
367         leading whitespace before #include line.
368
369 2018-12-08  Simon Marchi  <simon.marchi@ericsson.com>
370             Дилян Палаузов  <dilyan.palauzov@aegee.org>
371
372         PR gdb/23950
373         * configure.ac: Search for tgetent in libtinfow.
374         * configure: Re-generate.
375
376 2018-12-08  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
377
378         * linux-thread-db.c (struct thread_db_info): Add td_ta_delete_p.
379         (thread_db_err_str): Forward declare.
380         (delete_thread_db_info): Call td_ta_delete_p if available.
381         (try_thread_db_load_1): Acquire td_ta_delete address.
382         * nat/gdb_thread_db.h (td_ta_delete_ftype): Declare.
383
384 2018-12-08  Pedro Alves  <palves@redhat.com>
385
386         * source.c (forward_search_command): Rename to ...
387         (search_command_helper): ... this.  Add 'forward' parameter.
388         Tweak to use a gdb::def_vector<char> instead of a xrealloc'ed
389         buffer.  Handle backward searches too.
390         (forward_search_command, reverse_search_command): Reimplement by
391         calling search_command_helper.
392
393 2018-12-07  Andrew Burgess  <andrew.burgess@embecosm.com>
394
395         * .dir-locals.el: Copy most of the settings from c-mode over to
396         c++-mode.
397
398 2018-12-08  Stafford Horne  <shorne@gmail.com>
399
400         * Makefile.in (ALL_TARGET_OBS): Add or1k-linux-tdep.o.
401         * configure.tgt: Add or1k*-*-linux*.
402         * or1k-linux-tdep.c: New file.
403         * or1k-tdep.c (or1k_gdbarch_init): Call gdbarch_init_osabi.
404
405 2018-12-07  Pedro Alves  <palves@redhat.com>
406
407         * dwarf2read.c (get_gdb_index_contents_from_section): Use
408         gdb::make_array_view.
409
410 2018-12-05  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
411
412         * language.c (_initialize_language): Fix leak by assigning
413         a static string to language.  Same for range and case_sensitive,
414         even if no leak is detected for these variables.
415
416 2018-12-05  John Baldwin  <jhb@FreeBSD.org>
417
418         * configure: Re-generate.
419         * configure.ac: Use separate sed expressions to escape variables
420         in auto-load directories.
421
422 2018-12-05  Andrew Burgess  <andrew.burgess@embecosm.com>
423
424         * riscv-tdep.c (riscv_features_from_gdbarch_info): New function.
425         (riscv_find_default_target_description): Use new function to
426         extract feature from gdbarch_info.
427         (riscv_gdbarch_init): Add error checks for xlen and flen between
428         target description and bfd headers.  Be smarter about when we
429         think the hardware floating point abi should be used.
430
431 2018-12-05  Alan Hayward  <alan.hayward@arm.com>
432
433         * nat/aarch64-linux-hw-point.c
434         (aarch64_linux_any_set_debug_regs_state): New function.
435         * nat/aarch64-linux-hw-point.h
436         (aarch64_linux_any_set_debug_regs_state): New declaration.
437         * nat/aarch64-linux.c (aarch64_linux_new_thread): Check if any
438         BPs or WPs are set.
439
440 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
441
442         * common/filestuff.c [HAVE_KINFO_GETFILE]: Include headers.
443         (fdwalk) [HAVE_KINFO_GETFILE]: Use kinfo_getfile.
444
445 2018-11-30  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
446             Simon Marchi  <simon.marchi@ericsson.com>
447
448         * linespec.c (symtab_vector_up): Remove.
449         (symtabs_from_filename): Change return type to std::vector.
450         (collect_symtabs_from_filename): Likewise.
451         (create_sals_line_offset): Assign return value of
452         collect_symtabs_from_filename to *ls->file_symtabs.
453         (convert_explicit_location_to_linespec): Remove call to release.
454         (parse_linespec): Likewise.
455         (symtab_collector) <symtab_collector>: Remove initialization of
456         m_symtabs.
457         <release_symtabs>: Change return type to std::vector<symtab *>.
458         <operator ()>: Adjust.
459
460 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
461
462         * fbsd-nat.c [__FreeBSD_version >= 700009] (USE_SIGINFO): Macro
463         defined.
464         (union sigval32, struct siginfo32, fbsd_siginfo_size)
465         (fbsd_convert_siginfo): Make conditional on USE_SIGINFO instead
466         of KERN_PROC_AUXV and PT_LWPINFO.
467         (fbsd_nat_target::xfer_partial): Define method unconditionally.
468         Make TARGET_OBJECT_SIGNAL_INFO conditional on USE_SIGINFO.
469         Make TARGET_OBJECT_AUXV conditional on KERN_PROC_AUXV.
470         Make TARGET_OBJECT_FREEBSD_VMMAP and
471         TARGET_OBJECT_FREEBSD_PS_STRINGS conditional on KERN_PROC_VMMAP
472         and KERN_PROC_PS_STRINGS.
473         * fbsd-nat.h: Include <sys/proc.h>.
474         (fbsd_nat_target::xfer_partial): Declare method unconditionally.
475
476 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
477
478         * riscv-linux-nat.c: Add 'inferior.h' and 'target-descriptions.h'
479         header files.
480         (riscv_linux_nat_target::read_description): New method.
481
482 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
483
484         * arch/riscv.h (riscv_gdbarch_features::hash): New method.
485         * arch/riscv.c (struct riscv_gdbarch_features_hasher): New.
486         (riscv_tdesc_cache): New global.
487         (riscv_create_target_description): Look in the cache before
488         creating a new target description.
489
490 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
491
492         * arch/riscv.h (riscv_gdb_features::operator==): New.
493         (riscv_gdb_features::operator!=): New.
494         * riscv-tdep.c (riscv_gdbarch_init): Make use of the inequality
495         operator.
496
497 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
498
499         * arch/riscv.h (riscv_create_target_description): Make return type
500         const.
501         * arch/riscv.c (riscv_create_target_description): Likewise.
502         * riscv-tdep.c (riscv_find_default_target_description): Likewise.
503
504 2018-11-30  Jan Kratochvil  <jan.kratochvil@redhat.com>
505             Keith Seitz  <keiths@redhat.com>
506             Tom Tromey  <tom@tromey.com>
507             Sergio Durigan Junior  <sergiodj@redhat.com>
508
509         https://bugzilla.redhat.com/show_bug.cgi?id=1613614
510         * dwarf2read.c (dwarf2_find_containing_comp_unit): Add
511         'mid_cu->length' to '*cu_off' when checking if 'sect_off' is
512         inside the CU.
513
514 2018-11-30  Pedro Alves  <palves@redhat.com>
515
516         * aix-thread.c (aix_thread_target) <aix_thread_target>: Delete.
517         <stratum>: New override.
518         * bfd-target.c (aix_thread_target) <aix_thread_target>: Delete.
519         <stratum>: New override.
520         * bsd-uthread.c (bsd_uthread_target) <bsd_uthread_target>: Delete.
521         <stratum>: New override.
522         * exec.c (exec_target) <exec_target>: Delete.
523         <stratum>: New override.
524         * gdbarch-selftests.c (register_to_value_test): Adjust to use the
525         stratum method instead of the to_stratum field.
526         * linux-thread-db.c (thread_db_target) <thread_db_target>: Delete.
527         <stratum>: New override.
528         (thread_db_target::thread_db_target): Delete.
529         * make-target-delegates (print_class): Don't print a ctor
530         declaration.  Print a stratum method override declaration.
531         * process-stratum-target.h (process_stratum_target)
532         <process_stratum_target>: Delete.
533         <stratum>: New override.
534         * ravenscar-thread.c (ravenscar_thread_target)
535         <ravenscar_thread_target>: Delete.
536         <stratum>: New override.
537         * record-btrace.c (record_btrace_target)
538         <record_btrace_target>: Delete.
539         <stratum>: New override.
540         * record-full.c (record_full_base_target)
541         <record_full_base_target>: Delete.
542         <stratum>: New override.
543         * record.c (record_disconnect, record_detach)
544         (record_mourn_inferior, record_kill): Adjust to use the stratum
545         method instead of the to_stratum field.
546         * regcache.c (cooked_read_test, cooked_write_test): Likewise.
547         * sol-thread.c (sol_thread_target)
548         <sol_thread_target>: Delete.
549         <stratum>: New override.
550         * spu-multiarch.c (spu_multiarch_target)
551         <spu_multiarch_target>: Delete.
552         <stratum>: New override.
553         * target-delegates.c: Regenerate.
554         * target.c (target_stack::push, target_stack::unpush)
555         (pop_all_targets_above, pop_all_targets_at_and_above)
556         (info_target_command, target_require_runnable)
557         (target_stack::find_beneath): Adjust to use the stratum method
558         instead of the to_stratum field.
559         (dummy_target::dummy_target): Delete.
560         (dummy_target::stratum): New.
561         (debug_target::debug_target): Delete.
562         (debug_target::stratum): New.
563         (maintenance_print_target_stack): Adjust to use the stratum method
564         instead of the to_stratum field.
565         * target.h (struct target_ops) <stratum>: New method.
566         <to_stratum>: Delete.
567         <is_pushed>: Adjust to use the stratum method
568         instead of the to_stratum field.
569
570 2018-11-30  Pedro Alves  <palves@redhat.com>
571
572         * corelow.c (core_target) <has_all_memory, has_execution>: New
573         overrides.
574         * inf-child.c (inf_child_target::has_all_memory)
575         (inf_child_target::has_memory, inf_child_target::has_stack)
576         (inf_child_target::has_registers)
577         (inf_child_target::has_execution): Delete.
578         * inf-child.h (inf_child_target) <has_all_memory, has_memory,
579         has_stack, has_registers, has_execution>: Delete.
580         * process-stratum-target.c
581         (process_stratum_target::has_all_memory)
582         (process_stratum_target::has_memory)
583         (process_stratum_target::has_stack)
584         (process_stratum_target::has_registers)
585         (process_stratum_target::has_execution): New.
586         * process-stratum-target.h (process_stratum_target)
587         <has_all_memory, has_memory, has_stack, has_registers,
588         has_execution>: New method overrides.
589         * ravenscar-thread.c (ravenscar_thread_target) <has_all_memory,
590         has_memory, has_stack, has_registers, has_execution>: Delete.
591         * remote-sim.c (gdbsim_target) <has_stack, has_registers,
592         has_execution>: Delete.
593         * remote.c (remote_target) <has_all_memory, has_memory, has_stack,
594         has_registers, has_execution>: Delete.
595         * target.c (default_child_has_all_memory)
596         (default_child_has_memory, default_child_has_stack)
597         (default_child_has_registers, default_child_has_execution):
598         Delete.
599         * target.h (default_child_has_all_memory)
600         (default_child_has_memory, default_child_has_stack)
601         (default_child_has_registers, default_child_has_execution):
602         Delete.
603         * tracefile.h (tracefile_target) <has_execution>: New override.
604
605 2018-11-30  Pedro Alves  <palves@redhat.com>
606
607         * Makefile.in (COMMON_SFILES): Add process-stratum-target.c.
608         * bsd-kvm.c: Include "process-stratum-target.h".
609         (bsd_kvm_target): Now inherits from process_stratum_target.
610         (bsd_kvm_target::bsd_kvm_target): Default it.
611         * corelow.c: Include "process-stratum-target.h".
612         (core_target): Now inherits from process_stratum_target.
613         (core_target::core_target): Don't set to_stratum here.
614         * inf-child.c (inf_child_target::inf_child_target): Delete.
615         * inf-child.h: Include "process-stratum-target.h".
616         (inf_child_target): Inherit from process_stratum_target.
617         (inf_child_target) <inf_child_target>: Default it.
618         <can_async_p, supports_non_stop, supports_disable_randomization>:
619         Delete overrides.
620         * process-stratum-target.c: New file.
621         * process-stratum-target.h: New file.
622         * remote-sim.c: Include "process-stratum-target.h".
623         (gdbsim_target): Inherit from process_stratum_target.
624         <gdbsim_target>: Default it.
625         * remote.c: Include "process-stratum-target.h".
626         (remote_target): Inherit from process_stratum_target.
627         <remote_target>: Default it.
628         * target.c (default_thread_address_space)
629         (default_thread_architecture): Delete.
630         * target.h (target_ops) <thread_architecture>: Now returns NULL by
631         default.
632         <thread_address_space>: Ditto.
633         * test-target.h: Include "process-stratum-target.h" instead of
634         "target.h".
635         (test_target_ops): Inherit from process_stratum_target.
636         <test_target_ops>: Default it.
637         * tracefile.c (tracefile_target::tracefile_target): Delete.
638         * tracefile.h: Include "process-stratum-target.h".
639         (tracefile_target): Inherit from process_stratum_target.
640         <tracefile_target>: Default it.
641         * target-delegates.c: Regenerate.
642
643 2018-11-30  Pedro Alves  <palves@redhat.com>
644
645         * Makefile.in (COMMON_SFILES): Add test-target.c.
646         * gdbarch-selftests.c: Include "test-target.h".
647         * regcache.c: Include "test-target.h".
648         * target.c (test_target_info, test_target_ops::info): Move to ...
649         * test-target.c: ... this new file.
650         * target.h (test_target_ops): Move to ...
651         * test-target.h: ... this new file.
652
653 2018-11-29  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
654
655         * source.c (forward_search_command): Fix leak by using
656         xrealloc even for the first allocation in the loop, as buf
657         is static.
658
659 2018-11-29  Rajendra SY  <rajendra.sy@gmail.com>
660
661         PR gdb/23093
662         * gdb/fbsd-tdep.c (fbsd_gdb_signal_from_target)
663         (fbsd_gdb_signal_to_target): New.
664         (fbsd_init_abi): Install gdbarch "signal_from_target" and
665         "signal_to_target" methods.
666
667 2018-11-29  Tom Tromey  <tom@tromey.com>
668
669         * valarith.c (value_x_unop): Don't set argvec[3].
670
671 2018-11-26  Simon Marchi  <simon.marchi@ericsson.com>
672
673         PR gdb/23917
674         * sparc-linux-nat.c (sparc_linux_nat_target): Remove extraneous
675         semicolon.
676
677 2018-11-26  Pedro Alves  <palves@redhat.com>
678
679         * procfs.c (procfs_notice_thread): Replace uses of
680         in_thread_list/is_exited with find_thread_ptid/THREAD_EXITED.
681         * sol-thread.c (sol_thread_target::wait)
682         (sol_update_thread_list_callback): Likewise.
683
684 2018-11-25  Tom Tromey  <tom@tromey.com>
685
686         * ui-out.c (ui_out::field_fmt): Remove comment.
687         * tui/tui-out.c (tui_ui_out::do_field_fmt): Remove comment.
688         * mi/mi-out.c (mi_ui_out::do_field_fmt): Remove comment.
689
690 2018-11-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
691
692         * source.c (open_source_file): Leak fixed in '8e6a5953e1d Fix 4K
693         leak in open_source_file' has been partially undone by '2179fbc36d23
694         Return scoped_fd from open_source_file'. Re-add the transfer of
695         current s->fullname to the unique_xmalloc_ptr fullname given
696         to find_and_open_source.
697
698 2018-11-23  Pedro Alves  <palves@redhat.com>
699
700         * gdbthread.h (enum thread_state): Move comments here.
701         (is_running, is_stopped, is_exited): Remove declarations.
702
703 2018-11-22  Pedro Alves  <palves@redhat.com>
704
705         * Makefile.in (COMMON_SFILES): Add thread-iter.c.
706         * breakpoint.c (breakpoints_should_be_inserted_now): Replace
707         ALL_NON_EXITED_THREADS with all_non_exited_threads.
708         (print_one_breakpoint_location): Replace ALL_INFERIORS with
709         all_inferiors.
710         * bsd-kvm.c: Include inferior.h.
711         * btrace.c (btrace_free_objfile): Replace ALL_NON_EXITED_THREADS
712         with all_non_exited_threads.
713         * common/filtered-iterator.h: New.
714         * common/safe-iterator.h: New.
715         * corelow.c (core_target_open): Don't call init_thread_list here.
716         * darwin-nat.c (thread_info_from_private_thread_info): Replace
717         ALL_THREADS with all_threads.
718         * fbsd-nat.c (fbsd_nat_target::resume): Replace
719         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
720         * fbsd-tdep.c (fbsd_make_corefile_notes): Replace
721         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
722         * fork-child.c (postfork_hook): Don't call init_thread_list here.
723         * gdbarch-selftests.c (register_to_value_test): Adjust.
724         * gdbthread.h: Don't include "inferior.h" here.
725         (struct inferior): Forward declare.
726         (enum step_over_calls_kind): Moved here from inferior.h.
727         (thread_info::deletable): Definition moved to thread.c.
728         (find_thread_ptid (inferior *, ptid_t)): Declare.
729         (ALL_THREADS, ALL_THREADS_BY_INFERIOR, ALL_THREADS_SAFE): Delete.
730         Include "thread-iter.h".
731         (all_threads, all_non_exited_threads, all_threads_safe): New.
732         (any_thread_p): Declare.
733         (thread_list): Delete.
734         * infcmd.c (signal_command): Replace ALL_NON_EXITED_THREADS with
735         all_non_exited_threads.
736         (proceed_after_attach_callback): Delete.
737         (proceed_after_attach): Take an inferior pointer instead of an
738         integer PID.  Adjust to use range-for.
739         (attach_post_wait): Pass down inferior pointer instead of pid.
740         Use range-for instead of ALL_NON_EXITED_THREADS.
741         (detach_command): Remove init_thread_list call.
742         * inferior-iter.h: New.
743         * inferior.c (struct delete_thread_of_inferior_arg): Delete.
744         (delete_thread_of_inferior): Delete.
745         (delete_inferior, exit_inferior_1): Use range-for with
746         inf->threads_safe() instead of iterate_over_threads.
747         (inferior_appeared): Call init_thread_list here.
748         (discard_all_inferiors): Use all_non_exited_inferiors.
749         (find_inferior_id, find_inferior_pid): Use all_inferiors.
750         (iterate_over_inferiors): Use all_inferiors_safe.
751         (have_inferiors, number_of_live_inferiors): Use
752         all_non_exited_inferiors.
753         (number_of_inferiors): Use all_inferiors and std::distance.
754         (print_inferior): Use all_inferiors.
755         * inferior.h: Include gdbthread.h.
756         (enum step_over_calls_kind): Moved to gdbthread.h.
757         (struct inferior) <thread_list>: New field.
758         <threads, non_exited_threads, threads_safe>: New methods.
759         (ALL_INFERIORS): Delete.
760         Include "inferior-iter.h".
761         (ALL_NON_EXITED_INFERIORS): Delete.
762         (all_inferiors_safe, all_inferiors, all_non_exited_inferiors): New
763         functions.
764         * inflow.c (child_interrupt, child_pass_ctrlc): Replace
765         ALL_NON_EXITED_THREADS with all_non_exited_threads.
766         * infrun.c (follow_exec): Use all_threads_safe.
767         (clear_proceed_status, proceed): Use all_non_exited_threads.
768         (init_wait_for_inferior): Don't clear inline frame state here.
769         (infrun_thread_stop_requested, for_each_just_stopped_thread): Use
770         all_threads instead of ALL_NON_EXITED_THREADS.
771         (random_pending_event_thread): Use all_non_exited_threads instead
772         of ALL_NON_EXITED_THREADS.  Use a lambda for repeated code.
773         (clean_up_just_stopped_threads_fsms): Use all_non_exited_threads
774         instead of ALL_NON_EXITED_THREADS.
775         (handle_no_resumed): Use all_non_exited_threads instead of
776         ALL_NON_EXITED_THREADS.  Use all_inferiors instead of
777         ALL_INFERIORS.
778         (restart_threads, switch_back_to_stepped_thread): Use
779         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
780         * linux-nat.c (check_zombie_leaders): Replace ALL_INFERIORS with
781         all_inferiors.
782         (kill_unfollowed_fork_children): Use inf->non_exited_threads
783         instead of ALL_NON_EXITED_THREADS.
784         * linux-tdep.c (linux_make_corefile_notes): Use
785         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
786         * linux-thread-db.c (thread_db_target::update_thread_list):
787         Replace ALL_INFERIORS with all_inferiors.
788         (thread_db_target::thread_handle_to_thread_info): Use
789         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
790         * mi/mi-interp.c (multiple_inferiors_p): New.
791         (mi_on_resume_1): Simplify using all_non_exited_threads and
792         multiple_inferiors_p.
793         * mi/mi-main.c (mi_cmd_thread_list_ids): Use all_non_exited_threads
794         instead of ALL_NON_EXITED_THREADS.
795         * nto-procfs.c (nto_procfs_target::open): Don't call
796         init_thread_list here.
797         * record-btrace.c (record_btrace_target_open)
798         (record_btrace_target::stop_recording)
799         (record_btrace_target::close)
800         (record_btrace_target::record_is_replaying)
801         (record_btrace_target::resume, record_btrace_target::wait)
802         (record_btrace_target::record_stop_replaying): Use
803         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
804         * record-full.c (record_full_wait_1): Use all_non_exited_threads
805         instead of ALL_NON_EXITED_THREADS.
806         * regcache.c (cooked_read_test): Remove reference to global
807         thread_list.
808         * remote-sim.c (gdbsim_target::create_inferior): Don't call
809         init_thread_list here.
810         * remote.c (remote_target::update_thread_list): Use
811         all_threads_safe instead of ALL_NON_EXITED_THREADS.
812         (remote_target::process_initial_stop_replies): Replace
813         ALL_INFERIORS with all_non_exited_inferiors and use
814         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
815         (remote_target::open_1): Don't call init_thread_list here.
816         (remote_target::append_pending_thread_resumptions)
817         (remote_target::remote_resume_with_hc): Use all_non_exited_threads
818         instead of ALL_NON_EXITED_THREADS.
819         (remote_target::commit_resume)
820         (remote_target::remove_new_fork_children): Replace ALL_INFERIORS
821         with all_non_exited_inferiors and use all_non_exited_threads
822         instead of ALL_NON_EXITED_THREADS.
823         (remote_target::kill_new_fork_children): Use
824         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.  Remove
825         init_thread_list and init_wait_for_inferior calls.
826         (remote_target::remote_btrace_maybe_reopen)
827         (remote_target::thread_handle_to_thread_info): Use
828         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
829         * target.c (target_terminal::restore_inferior)
830         (target_terminal_is_ours_kind): Replace ALL_INFERIORS with
831         all_non_exited_inferiors.
832         * thread-iter.c: New file.
833         * thread-iter.h: New file.
834         * thread.c: Include "inline-frame.h".
835         (thread_list): Delete.
836         (clear_thread_inferior_resources): Call clear_inline_frame_state.
837         (init_thread_list): Use all_threads_safe instead of
838         ALL_THREADS_SAFE.  Adjust to per-inferior thread lists.
839         (new_thread): Adjust to per-inferior thread lists.
840         (add_thread_silent): Pass inferior to find_thread_ptid.
841         (thread_info::deletable): New, moved from the header.
842         (delete_thread_1): Adjust to per-inferior thread lists.
843         (find_thread_global_id): Use inf->threads().
844         (find_thread_ptid): Use find_inferior_ptid and pass inferior to
845         find_thread_ptid.
846         (find_thread_ptid(inferior*, ptid_t)): New overload.
847         (iterate_over_threads): Use all_threads_safe.
848         (any_thread_p): New.
849         (thread_count): Use all_threads and std::distance.
850         (live_threads_count): Use all_non_exited_threads and
851         std::distance.
852         (valid_global_thread_id): Use all_threads.
853         (in_thread_list): Use find_thread_ptid.
854         (first_thread_of_inferior): Adjust to per-inferior thread lists.
855         (any_thread_of_inferior, any_live_thread_of_inferior): Use
856         inf->non_exited_threads().
857         (prune_threads, delete_exited_threads): Use all_threads_safe.
858         (thread_change_ptid): Pass inferior pointer to find_thread_ptid.
859         (set_resumed, set_running): Use all_non_exited_threads.
860         (is_thread_state, is_stopped, is_exited, is_running)
861         (is_executing): Delete.
862         (set_executing, set_stop_requested, finish_thread_state): Use
863         all_non_exited_threads.
864         (print_thread_info_1): Use all_inferiors and all_threads.
865         (thread_apply_all_command): Use all_non_exited_threads.
866         (thread_find_command): Use all_threads.
867         (update_threads_executing): Use all_non_exited_threads.
868         * tid-parse.c (parse_thread_id): Use inf->threads.
869         * x86-bsd-nat.c (x86bsd_dr_set): Use inf->non_exited_threads ().
870
871 2018-11-22  Pedro Alves  <palves@redhat.com>
872
873         * infrun.c (follow_exec) <set follow-exec new>: Add thread and
874         switch to it before calling into try_open_exec_file.
875
876 2018-11-22  Pedro Alves  <palves@redhat.com>
877
878         * cli/cli-interp.c (cli_on_user_selected_context_changed): Use
879         inferior_thread instead of find_thread_ptid, and only when
880         inferior_ptid is not null_ptid.
881         * inferior.c (add_inferior): Don't include target_pid_to_str
882         output when the inferior is not started.
883         * python/py-inferior.c (python_on_normal_stop): Don't use
884         find_thread_ptid.
885         (tui_on_user_selected_context_changed): Use inferior_thread
886         instead of find_thread_ptid, and only when inferior_ptid is not
887         null_ptid.
888
889 2018-11-21  Benno Fünfstück  <benno.fuenfstueck@gmail.com>
890
891         PR python/23714
892         * gdb/python/python.c (execute_gdb_command): Call
893         prevent_dont_repeat earlier to avoid affecting dont_repeat.
894
895 2018-11-21  Andrew Burgess  <andrew.burgess@embecosm.com>
896
897         * Makefile.in (ALL_TARGET_OBS): Add arch/riscv.o.
898         (HFILES_NO_SRCDIR): Add arch/riscv.h.
899         * arch/riscv.c: New file.
900         * arch/riscv.h: New file.
901         * configure.tgt: Add cpu_obs list of riscv, move riscv-tdep.o into
902         this list, and add arch/riscv.o.
903         * features/Makefile: Add riscv features.
904         * features/riscv/32bit-cpu.c: New file.
905         * features/riscv/32bit-cpu.xml: New file.
906         * features/riscv/32bit-csr.c: New file.
907         * features/riscv/32bit-csr.xml: New file.
908         * features/riscv/32bit-fpu.c: New file.
909         * features/riscv/32bit-fpu.xml: New file.
910         * features/riscv/64bit-cpu.c: New file.
911         * features/riscv/64bit-cpu.xml: New file.
912         * features/riscv/64bit-csr.c: New file.
913         * features/riscv/64bit-csr.xml: New file.
914         * features/riscv/64bit-fpu.c: New file.
915         * features/riscv/64bit-fpu.xml: New file.
916         * features/riscv/rebuild-csr-xml.sh: New file.
917         * riscv-tdep.c: Add 'arch/riscv.h' include.
918         (riscv_gdb_reg_names): Delete.
919         (csr_reggroup): New global.
920         (struct riscv_register_alias): Delete.
921         (struct riscv_register_feature): New structure.
922         (riscv_register_aliases): Delete.
923         (riscv_xreg_feature): New global.
924         (riscv_freg_feature): New global.
925         (riscv_virtual_feature): New global.
926         (riscv_csr_feature): New global.
927         (riscv_create_csr_aliases): New function.
928         (riscv_read_misa_reg): Delete.
929         (riscv_has_feature): Delete.
930         (riscv_isa_xlen): Simplify, just return cached xlen.
931         (riscv_isa_flen): Simplify, just return cached flen.
932         (riscv_has_fp_abi): Update for changes in struct gdbarch_tdep.
933         (riscv_register_name): Update to make use of tdesc_register_name.
934         Look up xreg and freg names in the new globals riscv_xreg_feature
935         and riscv_freg_feature.  Don't supply csr aliases here.
936         (riscv_fpreg_q_type): Delete.
937         (riscv_register_type): Use tdesc_register_type in almost all
938         cases, override the returned type in a few specific cases only.
939         (riscv_print_one_register_info): Handle errors reading registers.
940         (riscv_register_reggroup_p): Use tdesc_register_in_reggroup_p for
941         registers that are otherwise unknown to GDB.  Also check the
942         csr_reggroup.
943         (riscv_print_registers_info): Remove assert about upper register
944         number, and use gdbarch_register_reggroup_p instead of
945         short-cutting.
946         (riscv_find_default_target_description): New function.
947         (riscv_check_tdesc_feature): New function.
948         (riscv_add_reggroups): New function.
949         (riscv_setup_register_aliases): New function.
950         (riscv_init_reggroups): New function.
951         (_initialize_riscv_tdep): Add calls to setup CSR aliases, and
952         setup register groups.  Register new riscv debug variable.
953         * riscv-tdep.h: Add 'arch/riscv.h' include.
954         (struct gdbarch_tdep): Remove abi union, and add
955         riscv_gdbarch_features field.  Remove cached quad floating point
956         type, and provide initialisation for double type field.
957         * target-descriptions.c (maint_print_c_tdesc_cmd): Add riscv to
958         the list of targets using the feature based target descriptions.
959         * NEWS: Mention target description support.
960
961 2018-11-21  Pedro Alves  <palves@redhat.com>
962
963         * valops.c (find_method_list, value_find_oload_method_list)
964         (find_overload_match, find_oload_champ): Rename parameters and
965         locals.
966
967 2018-11-21  Pedro Alves  <palves@redhat.com>
968
969         * valops.c (find_method_list): Replace pointer and length
970         parameters with an gdb::array_view.  Adjust.
971         (value_find_oload_method_list): Likewise.
972         (find_overload_match): Use gdb::array_view for methods list.
973         Adjust to find_oload_champ interface change.
974         (find_oload_champ): 'xm_worker_vec' parameter now a pointer/array.
975         'num_fns' parameter now a size_t.  Eliminate 'fn_count' local.
976
977 2018-11-21  Pedro Alves  <palves@redhat.com>
978
979         * gdbtypes.c (compare_badness): Change type of parameters to const
980         reference.  Adjust to badness_vector being a std::vector now.
981         (rank_function): Adjust to badness_vector being a std::vector now.
982         * gdbtypes.h (badness_vector): Now a typedef to std::vector.
983         (LENGTH_MATCH): Delete.
984         (compare_badness): Change type of parameters to const reference.
985         (rank_function): Return a badness_vector by value now.
986         (find_overload_match): Adjust to badness_vector being a
987         std::vector now.  Remove cleanups.
988         (find_oload_champ_namespace): 'oload_champ_bv' parameter now a
989         badness_vector pointer.
990         (find_oload_champ_namespace_loop): 'oload_champ_bv' parameter now
991         a badness_vector pointer.  Adjust to badness_vector being a
992         std::vector now.  Remove cleanups.
993         (find_oload_champ): 'oload_champ_bv' parameter now
994         a badness_vector pointer.  Adjust to badness_vector being a
995         std::vector now.  Remove cleanups.
996
997 2018-11-21  Pedro Alves  <palves@redhat.com>
998
999         * cp-support.c (sym_return_val_size, sym_return_val_index)
1000         (sym_return_val): Delete.
1001         (overload_list_add_symbol): Add std::vector parameter.  Adjust to
1002         add to the vector.
1003         (make_symbol_overload_list): Adjust to return a std::vector
1004         instead of maintaining a global open coded vector.
1005         (make_symbol_overload_list_block): Add std::vector parameter.
1006         (make_symbol_overload_list_block): Rename to ...
1007         (add_symbol_overload_list_block): ... this and add std::vector
1008         parameter.
1009         (make_symbol_overload_list_namespace): Rename to ...
1010         (add_symbol_overload_list_namespace): ... this and add std::vector
1011         parameter.
1012         (make_symbol_overload_list_adl_namespace): Rename to ...
1013         (add_symbol_overload_list_adl_namespace): ... this and add
1014         std::vector parameter.
1015         (make_symbol_overload_list_adl): Delete.
1016         (add_symbol_overload_list_adl): New.
1017         (make_symbol_overload_list_using): Rename to ...
1018         (add_symbol_overload_list_using): ... this and add std::vector
1019         parameter.
1020         (make_symbol_overload_list_qualified): Rename to ...
1021         (add_symbol_overload_list_qualified): ... this and add std::vector
1022         parameter.
1023         * cp-support.h: Include "common/array-view.h" and <vector>.
1024         (make_symbol_overload_list): Change return type to std::vector.
1025         (make_symbol_overload_list_adl): Delete declaration.
1026         (add_symbol_overload_list_adl): New declaration.
1027         * valops.c (find_overload_match): Local 'oload_syms' now a
1028         std::vector.
1029         (find_oload_champ_namespace): 'oload_syms' parameter now a
1030         std::vector pointer.
1031         (find_oload_champ_namespace_loop): 'oload_syms' parameter now a
1032         std::vector pointer.  Adjust to new make_symbol_overload_list
1033         interface.
1034
1035 2018-11-21  Pedro Alves  <palves@redhat.com>
1036
1037         * common/array-view.h (array_view::splice(size_type, size_t)): New.
1038         (array_view::splice(size_type)): New.
1039         * eval.c (eval_call, evaluate_funcall): Adjust to use array_view.
1040         * extension.c (xmethod_worker::get_arg_types): Adjust to return an
1041         std::vector.
1042         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
1043         * extension.h: Include "common/array-view.h".
1044         (xmethod_worker::invoke): Adjust to use gdb::array_view.
1045         (xmethod_worker::get_arg_types): Adjust to return an std::vector.
1046         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
1047         (xmethod_worker::do_get_arg_types): Adjust to use std::vector.
1048         (xmethod_worker::do_get_result_type): Adjust to use
1049         gdb::array_view.
1050         * gdbtypes.c (rank_function): Adjust to use gdb::array_view.
1051         * gdbtypes.h: Include "common/array-view.h".
1052         (rank_function): Adjust to use gdb::array_view.
1053         * python/py-xmethods.c (python_xmethod_worker::invoke)
1054         (python_xmethod_worker::do_get_arg_types)
1055         (python_xmethod_worker::do_get_result_type)
1056         (python_xmethod_worker::invoke): Adjust to new interfaces.
1057         * valarith.c (value_user_defined_cpp_op, value_user_defined_op)
1058         (value_x_binop, value_x_unop): Adjust to use gdb::array_view.
1059         * valops.c (find_overload_match, find_oload_champ_namespace)
1060         (find_oload_champ_namespace_loop, find_oload_champ): Adjust to use
1061         gdb:array_view and the new xmethod_worker interfaces.
1062         * value.c (result_type_of_xmethod, call_xmethod): Adjust to use
1063         gdb::array_view.
1064         * value.h (find_overload_match, result_type_of_xmethod)
1065         (call_xmethod): Adjust to use gdb::array_view.
1066         * unittests/array-view-selftests.c: Add slicing tests.
1067
1068 2018-11-21  Pedro Alves  <palves@redhat.com>
1069
1070         * ada-lang.c (ada_evaluate_subexp): Adjust to pass an array_view.
1071         * common/array-view.h (make_array_view): New.
1072         * compile/compile-object-run.c (compile_object_run): Adjust to
1073         pass an array_view.
1074         * elfread.c (elf_gnu_ifunc_resolve_addr): Adjust.
1075         * eval.c (eval_call): Adjust to pass an array_view.
1076         (evaluate_subexp_standard): Adjust to pass an array_view.
1077         * gcore.c (call_target_sbrk): Adjust to pass an array_view.
1078         * guile/scm-value.c (gdbscm_value_call): Likewise.
1079         * infcall.c (push_dummy_code): Replace pointer + size parameters
1080         with an array_view parameter.
1081         (call_function_by_hand, call_function_by_hand_dummy): Likewise and
1082         adjust.
1083         * infcall.h: Include "common/array-view.h".
1084         (call_function_by_hand, call_function_by_hand_dummy): Replace
1085         pointer + size parameters with an array_view parameter.
1086         * linux-fork.c (inferior_call_waitpid): Adjust to use array_view.
1087         * linux-tdep.c (linux_infcall_mmap): Likewise.
1088         * objc-lang.c (lookup_objc_class, lookup_child_selector)
1089         (value_nsstring, print_object_command): Likewise.
1090         * python/py-value.c (valpy_call): Likewise.
1091         * rust-lang.c (rust_evaluate_funcall): Likewise.
1092         * spu-tdep.c (flush_ea_cache): Likewise.
1093         * valarith.c (value_x_binop, value_x_unop): Likewise.
1094         * valops.c (value_allocate_space_in_inferior): Likewise.
1095         * unittests/array-view-selftests.c (run_tests): Add
1096         gdb::make_array_view test.
1097
1098 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
1099
1100         * cli-out.c (cli_ui_out::do_field_int): Use string_printf rather
1101         than a fixed size buffer.
1102
1103 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
1104
1105         * breakpoint.c (print_one_breakpoint_location): Reduce whitespace,
1106         and remove insertion of extra spaces in GDB's output.
1107         * cli-out.c (cli_ui_out::do_field_fmt): Update header comment.
1108         Layout field into a temporary buffer, and then output it as a
1109         string field.
1110
1111 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1112
1113         * NEWS: Document the language choice done by
1114         'info [types|functions|variables]|rbreak'.
1115
1116 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1117
1118         * symtab.c (treg_matches_sym_type_name): Use
1119         scoped_switch_to_sym_language_if_auto instead of local logic.
1120         (print_symbol_info): Use scoped_switch_to_sym_language_if_auto
1121         to switch to SYM language when language mode is auto.
1122
1123 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1124
1125         * language.h (scoped_switch_to_sym_language_if_auto): New class.
1126
1127 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1128
1129         * symtab.c (search_symbols): Properly check absence of type regexp
1130         before entering the loop scanning the minimal symbols.
1131
1132 2018-11-20  John Darrington  <john@darrington.wattle.id.au>
1133
1134         * s12z-tdep.c (s12z_extract_return_value): New function.
1135         (inv_reg_perm) New array.
1136         (s12z_return_value): Populate readbuf if non-null.
1137
1138 2018-11-20  Eli Zaretskii  <eliz@gnu.org>
1139
1140         * common/filestuff.c (gdb_fopen_cloexec): Disable use of "e" mode
1141         with 'fopen' also if O_CLOEXEC is equal to O_NOINHERIT, to cater
1142         to MinGW fixed by Gnulib.
1143         (O_NOINHERIT): Define if not defined.
1144
1145 2018-11-19  John Darrington  <john@darrington.wattle.id.au>
1146
1147         * s12z-tdep.c (s12z_frame_cache): Add an assertion.
1148
1149 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
1150
1151         * infrun.c (displaced_step_inferior_state) <next>: Remove.
1152
1153 2018-11-19  Tom Tromey  <tom@tromey.com>
1154
1155         * source.c (get_filename_and_charpos): Return void.
1156
1157 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
1158
1159         * skip.c (_initialize_step_skip): Fix "info skip" help.
1160
1161 2018-11-16  Tom Tromey  <tom@tromey.com>
1162
1163         PR rust/23625:
1164         * rust-lang.c (rust_internal_print_type): Handle TYPE_CODE_PTR.
1165
1166 2018-11-19  Simon Marchi  <simon.marchi@ericsson.com>
1167
1168         * infrun.c (displaced_step_inferior_states): Change type to
1169         std::forward_list.
1170         (get_displaced_stepping_state): Adjust.
1171         (displaced_step_in_progress_any_inferior): Adjust.
1172         (add_displaced_stepping_state): Adjust.
1173         (remove_displaced_stepping_state): Adjust.
1174
1175 2018-11-18  Tom Tromey  <tom@tromey.com>
1176
1177         PR build/23814:
1178         * target-delegates.c: Rebuild.
1179         * ia64-linux-nat.c (class ia64_linux_nat_target)
1180         <have_steppable_watchpoint>: Use override.  Return true, not 1.
1181         (ia64_linux_nat_target::can_use_hw_breakpoint): Rename.  Remove
1182         "self" argument.
1183         (ia64_linux_nat_target::low_new_thread): Rename.
1184         (class ia64_linux_nat_target) <read_description>: Don't declare.
1185         * target.h (struct target_ops) <have_steppable_watchpoint>: Return
1186         bool.
1187
1188 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1189
1190         PR gdb/22736:
1191         * aarch64-tdep.c (aarch64_push_dummy_call): Remove
1192         lang_struct_return code.
1193
1194 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1195
1196         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
1197         return_method.
1198         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
1199         * amd64-tdep.c (amd64_push_arguments): Likewise.
1200         (amd64_push_dummy_call): Likewise.
1201         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
1202         * arc-tdep.c (arc_push_dummy_call): Likewise.
1203         * arm-tdep.c (arm_push_dummy_call): Likewise.
1204         * avr-tdep.c (avr_push_dummy_call): Likewise.
1205         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
1206         * cris-tdep.c (cris_push_dummy_call): Likewise.
1207         * csky-tdep.c (csky_push_dummy_call): Likewise.
1208         * frv-tdep.c (frv_push_dummy_call): Likewise.
1209         * gdbarch.c: Regenerate.
1210         * gdbarch.h: Regenerate.
1211         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
1212         return_method.
1213         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
1214         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
1215         (hppa64_push_dummy_call): Likewise.
1216         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
1217         * i386-tdep.c (i386_push_dummy_call): Likewise.
1218         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
1219         * infcall.c (call_function_by_hand_dummy): Likewise.
1220         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
1221         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
1222         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
1223         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
1224         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
1225         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
1226         * mep-tdep.c (mep_push_dummy_call): Likewise.
1227         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
1228         (mips_n32n64_push_dummy_call): Likewise.
1229         (mips_o32_push_dummy_call): Likewise.
1230         (mips_o64_push_dummy_call): Likewise.
1231         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
1232         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
1233         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
1234         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
1235         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
1236         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
1237         (ppc64_sysv_abi_push_dummy_call): Likewise.
1238         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
1239         (ppc64_sysv_abi_push_dummy_call): Likewise.
1240         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
1241         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
1242         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
1243         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
1244         * rx-tdep.c (rx_push_dummy_call): Likewise.
1245         * s390-tdep.c (s390_push_dummy_call): Likewise.
1246         * score-tdep.c (score_push_dummy_call): Likewise.
1247         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
1248         (sh_push_dummy_call_nofpu): Likewise.
1249         * sparc-tdep.c (sparc32_store_arguments): Likewise.
1250         (sparc32_push_dummy_call): Likewise.
1251         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
1252         (sparc64_push_dummy_call): Likewise.
1253         * spu-tdep.c (spu_push_dummy_call): Likewise.
1254         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
1255         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
1256         * v850-tdep.c (v850_push_dummy_call): Likewise.
1257         * vax-tdep.c (vax_push_dummy_call): Likewise.
1258         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
1259         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
1260
1261 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1262
1263         * gdbarch.sh (enum function_call_return_method): Add enum.
1264         * gdbarch.h: Regenerate.
1265         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
1266
1267 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
1268
1269         * unittests/copy_bitwise-selftests.c: New file.
1270         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
1271         (selftests::copy_bitwise_tests): Delete, moving this code to
1272         unittests/copy_bitwise-selftests.c instead.
1273         (_initialize_utils): Do not register copy_bitwise tests.
1274         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1275         unittests/copy_bitwise-selftests.c.
1276
1277 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
1278
1279         * ada-lang.c (move_bits): Delete. Update all callers to use
1280         copy_bitwise instead.
1281         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
1282         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
1283         Move from here to utils.c.
1284         (_initialize_dwarf2loc): Remove call to register copy_bitwise
1285         selftests.
1286         * utils.h (copy_bitwise): Add declaration.
1287         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
1288         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
1289         Moved here from dwarf2loc.c.
1290         (_initialize_utils): Register copy_bitwise selftests.
1291
1292 2018-11-14  Jim Wilson  <jimw@sifive.com>
1293
1294         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
1295         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
1296         then increment next_regnum if odd.
1297         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
1298         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
1299         function type.  Pass new arg to riscv_arg_location based on function
1300         type.
1301         (riscv_return_value): Pass new arg to riscv_arg_location.
1302
1303         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
1304         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
1305         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
1306
1307         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
1308         setting len.  New local align, set to max of arg align and xlen,
1309         and pass to first riscv_assign_stack_location call.
1310
1311 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
1312
1313         * skip.c (complete_skip_number): New function.
1314         (_initialize_step_skip): Add completers to some skip commands.
1315
1316 2018-11-09  Tom Tromey  <tom@tromey.com>
1317
1318         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
1319         (struct remote_g_packet_data): Derive from allocate_on_obstack.
1320         <guesses>: Now a std::vector.
1321         (remote_g_packet_data_init, register_remote_g_packet_guess):
1322         Update.
1323         (remote_read_description_p): Update.  Return bool.
1324         (remote_target::read_description): Update.
1325         (struct remote_g_packet_guess): Add constructor.
1326
1327 2018-11-09  Tom Tromey  <tom@tromey.com>
1328
1329         * common/scoped_fd.h (class scoped_fd): Add move constructor and
1330         move assignment operator.
1331         * psymtab.c (psymtab_to_fullname): Update.
1332         * source.h (open_source_file): Return scoped_fd.
1333         (find_and_open_source): Likewise.
1334         * source.c (open_source_file): Return scoped_fd.
1335         (get_filename_and_charpos): Update.
1336         (print_source_lines_base): Update.  Use scoped_fd::to_file.
1337         (forward_search_command): Likewise.
1338         (reverse_search_command): Likewise.
1339         (find_and_open_source): Return scoped_fd.
1340         * tui/tui-source.c (tui_set_source_content): Update.  Use
1341         gdb_file_up.
1342
1343 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
1344
1345         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
1346         overflow.
1347
1348 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1349
1350         * configure: Regenerate.
1351
1352 2018-11-09  Tom de Vries  <tdevries@suse.de>
1353
1354         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
1355         unconditionally, to set the language of the symbol.  Manage freeing
1356         returned pointer using gdb::unique_xmalloc_ptr.
1357
1358 2018-11-08  Tom Tromey  <tom@tromey.com>
1359
1360         * record.c (require_record_target): Upper-case "<TAB>".
1361
1362 2018-11-08  Tom Tromey  <tom@tromey.com>
1363
1364         * python/lib/gdb/command/pretty_printers.py
1365         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
1366
1367 2018-11-08  Tom Tromey  <tom@tromey.com>
1368
1369         PR gdb/23555:
1370         PR gdb/23838:
1371         * target.h (target_supports_terminal_ours): Return bool.
1372         * target.c (target_supports_terminal_ours): Handle case where
1373         current_top_target returns nullptr.  Return bool.
1374
1375 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
1376
1377         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
1378         return the correct count for potential HFAs.
1379
1380 2018-11-08  Jan Beulich  <jbeulich@suse.com>
1381
1382         * i387-tdep.c (i387_supply_xsave): Split handling of
1383         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
1384         (i387_collect_xsave): Likewise.
1385
1386 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
1387
1388         * riscv-tdep.c (riscv_insn::decode): Update header comment.
1389         (riscv_frame_this_id): Catch errors thrown while building the
1390         frame cache, leave the frame id as the default, which is the outer
1391         frame id.
1392
1393 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
1394
1395         * ada-lang.c (read_atcb): Only set task_info->called_task if
1396         task_info->state == Entry_Caller_Sleep.
1397         (print_ada_task_info): Do not check task_info->state before
1398         checking task_info->called_task.
1399         (info_task): Likewise.
1400
1401 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
1402
1403         * ada-tasks.c (read_atcb): Clear task_info before computing
1404         the value of each of its fields.
1405
1406 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
1407
1408         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
1409         NULL before dereferencing it.
1410
1411 2018-11-06  Tom de Vries  <tdevries@suse.de>
1412
1413         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
1414         program headers.
1415
1416 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
1417
1418         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
1419         so that it applies to uclinux as well.
1420
1421 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
1422
1423         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
1424         when on AAPCS.
1425
1426 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
1427
1428         * riscv-fbsd-nat.c (getregs_supplies): Return true for
1429         RISCV_CSR_SSTATUS_REGNUM.
1430
1431 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1432
1433         * source.c (open_source_file): Fix leak by transferring the
1434         current s->fullname to the unique_xmalloc_ptr fullname given
1435         to find_and_open_source.
1436
1437 2018-11-04  Tom Tromey  <tom@tromey.com>
1438
1439         * varobj.c (install_default_visualizer): Update.
1440         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
1441         Return gdbpy_ref.
1442         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
1443         (find_pretty_printer_from_progspace)
1444         (find_pretty_printer_from_gdb, find_pretty_printer)
1445         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
1446         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
1447         Update.
1448
1449 2018-11-04  Tom Tromey  <tom@tromey.com>
1450
1451         * python/python.c (gdbpy_parameter_value): Update.
1452         * python/python-internal.h (python_string_to_unicode)
1453         (python_string_to_target_python_string)
1454         (host_string_to_python_string): Return gdbpy_ref.
1455         * python/py-utils.c (python_string_to_unicode)
1456         (unicode_to_encoded_python_string)
1457         (unicode_to_target_python_string)
1458         (python_string_to_target_string)
1459         (python_string_to_target_python_string): Return gdbpy_ref.
1460         (python_string_to_host_string): Update.
1461         (host_string_to_python_string): Return gdbpy_ref.
1462         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
1463         (stpy_fullname): Update.
1464         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
1465         Update.
1466         * python/py-prettyprint.c (print_string_repr): Update.
1467         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
1468         (objfpy_get_build_id): Update.
1469         * python/py-breakpoint.c (bppy_get_location)
1470         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
1471         Update.
1472
1473 2018-11-04  Tom Tromey  <tom@tromey.com>
1474
1475         * python/python-internal.h (gdb_py_object_from_longest)
1476         (gdb_py_object_from_ulongest): Return gdbpy_ref.
1477         * python/py-value.c (valpy_int): Update.
1478         * python/py-utils.c (gdb_py_object_from_longest): Return
1479         gdbpy_ref.
1480         (gdb_py_object_from_ulongest): Likewise.
1481         * python/py-type.c (typy_get_alignof): Update.
1482         * python/py-linetable.c (ltpy_get_all_source_lines)
1483         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
1484         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
1485
1486 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1487
1488         * ada-lang.c (_initialize_ada_language): Fix typo.
1489
1490 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1491
1492         * language.c (type): Remove.
1493         (_initialize_language): Remove assignment to type.
1494
1495 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
1496
1497         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
1498         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
1499         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
1500         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
1501         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
1502         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
1503         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
1504         and aarch64-ravenscar-thread.o.
1505         * NEWS: Add entry documenting Ravenscar tasking support
1506         on AArch64 ELF.
1507
1508 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
1509
1510         * symtab.c (info_functions_command): Initialize quiet flag.
1511         * stack.c (info_args_command): Likewise.
1512
1513 2018-11-01  Jim Wilson  <jimw@sifive.com>
1514
1515         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
1516         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
1517         debugging messages.
1518
1519 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1520
1521         * ada-lang.c (ada_watch_location_expression): New function.
1522         (ada_language_defn): Set la_watch_location_expression to
1523         ada_watch_location_expression.
1524
1525 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1526
1527         * print-utils.c (int_string): Remove unnecessary trailing spaces.
1528
1529 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1530
1531         * rs6000-tdep.c (skip_prologue): Fix potential negative left
1532         shifting.
1533
1534 2018-11-01  Jerome Guitton  <guitton@adacore.com>
1535             Joel Brobecker  <brobecker@adacore.com>
1536
1537         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
1538         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
1539         * arm-pikeos-tdep.c: New file.
1540         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
1541         embedded system.
1542         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
1543
1544 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
1545
1546         * common/pathstuff.c (get_standard_temp_dir): New.
1547         * common/pathstuff.h (get_standard_temp_dir): New.
1548         * config.in: Re-generate.
1549         * configure: Re-generate.
1550         * configure.ac: Don't check for mkdtemp.
1551         * gnulib/aclocal-m4-deps.mk: Re-generate.
1552         * gnulib/aclocal.m4: Re-generate.
1553         * gnulib/config.in: Re-generate.
1554         * gnulib/configure: Re-generate.
1555         * gnulib/import/Makefile.am: Re-generate.
1556         * gnulib/import/Makefile.in: Re-generate.
1557         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1558         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1559         * gnulib/import/m4/mkdtemp.m4: New file.
1560         * gnulib/import/mkdtemp.c: New file.
1561         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
1562         Add mkdtemp module.
1563         * unittests/mkdir-recursive-selftests.c (test): Use
1564         get_standard_temp_dir.
1565         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
1566         ifdef.
1567         * compile/compile.c (get_compile_file_tempdir): Likewise.
1568
1569 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1570
1571         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
1572         (SIG_FRAME_LR_OFFSET64): New define.
1573         (SIG_FRAME_FP_OFFSET64): New define.
1574         (aix_sighandle_frame_cache): New Function.
1575         (aix_sighandle_frame_this_id): New Function.
1576         (aix_sighandle_frame_prev_register): New Function.
1577         (aix_sighandle_frame_sniffer): New Function.
1578         (aix_sighandle_frame_unwind): New global variable.
1579         (rs6000_aix_init_osabi): Install new frame unwinder.
1580
1581 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
1582
1583         PR gdb/23835
1584         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
1585         already defined.
1586
1587 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1588
1589         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
1590
1591 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
1592
1593         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
1594         (producer_is_icc): New function.
1595         (check_producer): Set producer_is_icc field on dwarf2_cu.
1596         (dwarf2_init_integer_type): New function.
1597         (read_base_type): Call dwarf2_init_integer_type instead of
1598         init_integer_type in all cases.
1599         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
1600         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
1601         LEN is greater than 0.
1602
1603 2018-10-30  Tom Tromey  <tom@tromey.com>
1604
1605         * main.c (captured_main_1): Check return value of bfd_init.
1606
1607 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1608
1609         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
1610         Adjust comments.
1611
1612 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1613
1614         * procfs.c: Include common/pathstuff.h.
1615
1616 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1617
1618         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1619         Add missing braces.  No functional change.
1620
1621 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1622
1623         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
1624         to report a bad option and fix indentation.
1625         * demangle.c (demangle_command): Use report_unrecognized_option_error
1626         to report a bad option and correctly report the bad option.
1627
1628 2018-10-27  Tom Tromey  <tom@tromey.com>
1629
1630         PR cli/23364:
1631         * darwin-nat.c (copied_shell): New global.
1632         (may_have_sip): Rename from should_disable_startup_with_shell.
1633         (copy_shell_to_cache, maybe_cache_shell): New functions.
1634         (darwin_nat_target::create_inferior): Update.  Use
1635         copied_shell.
1636
1637 2018-10-27  Tom Tromey  <tom@tromey.com>
1638
1639         * unittests/scoped_fd-selftests.c (test_to_file): New function.
1640         (run_tests): Call test_to_file.
1641         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
1642         temporary files.
1643         * common/scoped_fd.h (scoped_fd::to_file): New method.
1644
1645 2018-10-27  Tom Tromey  <tom@tromey.com>
1646
1647         * unittests/scoped_mmap-selftests.c (test_normal): Use
1648         gdb_mkostemp_cloexec.
1649         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
1650         Use gdb_mkostemp_cloexec.
1651         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
1652         gnulib/config.in, gnulib/configure,
1653         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
1654         gnulib/import/m4/gnulib-cache.m4,
1655         gnulib/import/m4/gnulib-comp.m4: Update.
1656         * gnulib/import/m4/mkostemp.m4: New file.
1657         * gnulib/import/m4/mkstemp.m4: Remove.
1658         * gnulib/import/mkostemp.c: New file.
1659         * gnulib/import/mkstemp.m4: Remove.
1660         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
1661         mkstemp, add mkostemp.  Apply new patch.
1662         * gnulib/import/stdlib.in.h: Apply patch.
1663         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
1664         New file.
1665         * dwarf-index-write.c (write_psymtabs_to_index): Use
1666         gdb_mkostemp_cloexec.
1667         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
1668
1669 2018-10-27  Tom Tromey  <tom@tromey.com>
1670
1671         * unittests/mkdir-recursive-selftests.c: New file.
1672         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1673         unittests/mkdir-recursive-selftests.c.
1674         * dwarf-index-cache.c (mkdir_recursive): Move to
1675         common/filestuff.c.
1676         (index_cache::store): Check return value of mkdir_recursive.
1677         (create_dir_and_check, test_mkdir_recursive): Move to new file.
1678         (_initialize_index_cache): Don't register test.
1679         * common/filestuff.h (mkdir_recursive): Declare.
1680         * common/filestuff.c (mkdir_recursive): Move from
1681         dwarf-index-cache.c.  Return bool.
1682
1683 2018-10-27  Tom Tromey  <tom@tromey.com>
1684
1685         * dwarf-index-write.c (write_psymtabs_to_index): Move
1686         make_temp_filename to common/pathstuff.c.
1687         * common/pathstuff.h (make_temp_filename): Declare.
1688         * common/pathstuff.c (make_temp_filename): New function, moved
1689         from dwarf-index-write.c.
1690
1691 2018-10-27  Tom Tromey  <tom@tromey.com>
1692
1693         * procfs.c (procfs_target::create_inferior): Use get_shell.
1694         * cli/cli-cmds.c (shell_escape): Use get_shell.
1695         * windows-nat.c (windows_nat_target::create_inferior): Use
1696         get_shell.
1697         * common/pathstuff.c (get_shell): New function.
1698         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
1699         (fork_inferior): Use get_shell.
1700         * common/pathstuff.h (get_shell): Declare.
1701
1702 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1703
1704         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
1705
1706 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1707
1708         * stack.c (print_variable_and_value_data): Add preg and treg.
1709         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
1710         and update callers.
1711         (print_frame_arg_vars): Likewise.
1712         (prepare_reg): New function.
1713         (info_locals_command): Extract info print args and use them.
1714         (info_args_command): Likewise.
1715         (_initialize_stack): Modify on-line help.
1716         * symtab.c (treg_matches_sym_type_name): New function.
1717         (search_symbols): New arg t_regexp.
1718         (symtab_symbol_info): New args quiet, regexp, t_regexp.
1719         (info_variables_command): Extract info print args and use them.
1720         (info_functions_command): Likewise.
1721         (info_types_command): Update call to symtab_symbol_info.
1722         (_initialize_symtab): Modify on-line help.
1723         * symtab.h (treg_matches_sym_type_name): New function.
1724         (search_symbols): New t_regexp arg.
1725
1726 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1727
1728         * cli-utils.c (extract_arg_maybe_quoted): New function.
1729         (extract_info_print_args): New function.
1730         (info_print_args_help): New function.
1731         (report_unrecognized_option_error): New function.
1732         * cli-utils.h (extract_arg_maybe_quoted): New function.
1733         (extract_info_print_args): New function.
1734         (info_print_args_help): New function.
1735         (report_unrecognized_option_error): New function.
1736
1737 2018-10-26  Tom Tromey  <tom@tromey.com>
1738
1739         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
1740         (compute_compunit_symtab_includes): Update.
1741         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
1742         (compunit_symtab_ptr): Likewise.
1743
1744 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1745
1746         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
1747         default_print_auxv_entry for specific tag values.
1748
1749 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1750
1751         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
1752
1753 2018-10-26  Jim Wilson  <jimw@sifive.com>
1754
1755         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
1756         (riscv_linux_sigframe_init): Declare.
1757         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
1758         (riscv_linux_sigframe): New.
1759         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
1760         (riscv_linux_sigframe_init): Define.
1761         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
1762
1763         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
1764         (riscv_isa_flen): Likewise.  Drop static.
1765         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
1766         (riscv_isa_flen): Likewise.  Declare.
1767
1768 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1769             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1770
1771         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
1772         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
1773         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
1774         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
1775         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
1776         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
1777         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
1778         Define.
1779         (struct ppc_linux_features) <htm>: New field.
1780         (ppc_linux_no_features): Add initializer for htm field.
1781         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1782         new tdescs.
1783         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
1784         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
1785         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
1786         Define if not already defined.
1787         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
1788         and rs6000/powerpc-isa207-htm-vsx64l.
1789         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
1790         rs6000/powerpc-isa207-htm-vsx64l.xml.
1791         * features/rs6000/power-htm-spr.xml: New file.
1792         * features/rs6000/power-htm-core.xml: New file.
1793         * features/rs6000/power64-htm-core.xml: New file.
1794         * features/rs6000/power-htm-fpu.xml: New file.
1795         * features/rs6000/power-htm-altivec.xml: New file.
1796         * features/rs6000/power-htm-vsx.xml: New file.
1797         * features/rs6000/power-htm-ppr.xml: New file.
1798         * features/rs6000/power-htm-dscr.xml: New file.
1799         * features/rs6000/power-htm-tar.xml: New file.
1800         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
1801         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
1802         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
1803         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
1804         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
1805         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
1806         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1807         fetch_regset with HTM regsets.
1808         (store_register, store_ppc_registers): Call store_regset with HTM
1809         regsets.
1810         (ppc_linux_nat_target::read_description): Set htm field in the
1811         features struct if needed.
1812         * ppc-linux-tdep.c: Include
1813         features/rs6000/powerpc-isa207-htm-vsx32l.c and
1814         features/rs6000/powerpc-isa207-htm-vsx64l.c.
1815         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
1816         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
1817         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
1818         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
1819         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
1820         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
1821         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
1822         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
1823         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
1824         (ppc32_linux_ctarregset): New globals.
1825         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
1826         (ppc_linux_collect_core_cpgrregset): New function.
1827         (ppc_linux_iterate_over_regset_sections): Call back with the htm
1828         regsets.
1829         (ppc_linux_core_read_description): Check if the tm spr section is
1830         present and set htm in the features struct.
1831         (_initialize_ppc_linux_tdep): Call
1832         initialize_tdesc_powerpc_isa207_htm_vsx32l and
1833         initialize_tdesc_powerpc_isa207_htm_vsx64l.
1834         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
1835         Declare.
1836         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
1837         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
1838         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
1839         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
1840         New fields.
1841         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
1842         Likewise.
1843         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
1844         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
1845         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
1846         New enum fields.
1847         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
1848         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
1849         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
1850         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
1851         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
1852         <PPC_CTAR_REGNUM>: Likewise.
1853         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
1854         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
1855         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
1856         (IS_CEFP_PSEUDOREG): Define.
1857         (rs6000_register_name): Hide the upper halves of checkpointed VSX
1858         registers.  Return names for the checkpointed DFP, VSX, and EFP
1859         pseudo registers.
1860         (rs6000_pseudo_register_type): Remove initial assert and raise an
1861         internal error in the else clause instead.  Return types for the
1862         checkpointed DFP, VSX, and EFP pseudo registers.
1863         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
1864         checkpointed DFP pseudo registers.
1865         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
1866         checkpointed VSX pseudo registers.
1867         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
1868         from efpr_pseudo_register_read and
1869         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
1870         registers.
1871         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
1872         Handle checkpointed DFP, VSX, and EFP registers.
1873         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
1874         (efp_ax_pseudo_register_collect): New functions.
1875         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
1876         register logic to new functions.  Handle checkpointed DFP, VSX,
1877         and EFP pseudo registers.
1878         (rs6000_gdbarch_init): Look for and validate the htm features.
1879         Include checkpointed DFP, VSX and EFP pseudo-registers.
1880         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
1881         HTM registers.
1882
1883 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1884
1885         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
1886         without altivec or fpu.
1887
1888 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1889             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1890
1891         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
1892         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
1893         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
1894         Define if not already defined.
1895         * features/rs6000/power-ebb.xml: New file.
1896         * features/rs6000/power-linux-pmu.xml: New file.
1897         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
1898         features.
1899         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
1900         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
1901         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
1902         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
1903         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
1904         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1905         fetch_regset with ebb and pmu regsets.
1906         (store_register, store_ppc_registers): Call store_regset with ebb
1907         and pmu regsets.
1908         (ppc_linux_nat_target::read_description): Set isa207 field in the
1909         features struct if ebb and pmu are avaiable.
1910         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
1911         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
1912         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
1913         and pmu regsets.
1914         (ppc_linux_core_read_description): Check if the pmu section is
1915         present and set isa207 in the features struct.
1916         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
1917         (ppc32_linux_pmuregset): Declare.
1918         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
1919         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
1920         <ppc_sier_regnum>: New field.
1921         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
1922         New enum values.
1923         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
1924         values.
1925         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
1926         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
1927         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
1928         ebb and pmu features.
1929
1930 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1931             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1932
1933         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
1934         (tdesc_powerpc_isa207_vsx64l): Declare.
1935         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
1936         (struct ppc_linux_features) <isa207>: New field.
1937         (ppc_linux_no_features): Add initializer for isa207 field.
1938         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1939         new tdescs.
1940         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
1941         (NT_PPC_TAR): Define if not already defined.
1942         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
1943         rs6000/powerpc-isa207-vsx64l.
1944         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
1945         rs6000/powerpc-isa207-vsx64l.xml.
1946         * features/rs6000/power-tar.xml: New file.
1947         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
1948         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
1949         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
1950         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
1951         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
1952         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
1953         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1954         fetch_regset with the TAR regset.
1955         (store_register, store_ppc_registers): Call store_regset with the
1956         TAR regset.
1957         (ppc_linux_nat_target::read_description): Set isa207 field in the
1958         features struct if needed.
1959         * ppc-linux-tdep.c: Include
1960         features/rs6000/powerpc-isa207-vsx32l.c and
1961         features/rs6000/powerpc-isa207-vsx64l.c.
1962         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
1963         (ppc_linux_iterate_over_regset_sections): Call back with the tar
1964         regset.
1965         (ppc_linux_core_read_description): Check if the tar section is
1966         present and set isa207 in the features struct.
1967         (_initialize_ppc_linux_tdep): Call
1968         initialize_tdesc_powerpc_isa207_vsx32l and
1969         initialize_tdesc_powerpc_isa207_vsx64l.
1970         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
1971         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
1972         (enum) <PPC_TAR_REGNUM>: New enum value.
1973         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
1974         feature.
1975         (ppc_process_record_op31): Record changes to TAR.
1976
1977 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1978             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1979
1980         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
1981         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
1982         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
1983         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
1984         (struct ppc_linux_features) <ppr_dscr>: New field.
1985         (ppc_linux_no_features): Add initializer for ppr_dscr field.
1986         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1987         new tdescs.
1988         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
1989         Define if not already defined.
1990         * features/Makefile (WHICH): Add
1991         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
1992         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
1993         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
1994         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
1995         * features/rs6000/power-dscr.xml: New file.
1996         * features/rs6000/power-ppr.xml: New file.
1997         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
1998         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
1999         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
2000         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
2001         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
2002         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
2003         * ppc-linux-nat.c: Include <sys/uio.h>.
2004         (fetch_regset, store_regset, check_regset): New functions.
2005         (fetch_register, fetch_ppc_registers): Call fetch_regset with
2006         DSCR and PPR regsets.
2007         (store_register, store_ppc_registers): Call store_regset with
2008         DSCR and PPR regsets.
2009         (ppc_linux_get_hwcap2): New function.
2010         (ppc_linux_nat_target::read_description): Call
2011         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
2012         features struct if needed.
2013         * ppc-linux-tdep.c: Include
2014         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
2015         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
2016         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
2017         (ppc32_linux_dscrregset): New globals.
2018         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
2019         and dscr regsets.
2020         (ppc_linux_core_read_description): Check if the ppr and dscr
2021         sections are present and set ppr_dscr in the features struct.
2022         (_initialize_ppc_linux_tdep): Call
2023         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
2024         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
2025         * ppc-linux-tdep.h (ppc32_linux_pprregset)
2026         (ppc32_linux_dscrregset): Declare.
2027         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
2028         <ppc_dscr_regnum>: New field.
2029         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
2030         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
2031         and dscr features.
2032         (ppc_process_record_op31): Record changes to PPR and DSCR.
2033
2034 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2035
2036         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
2037         second initializer line for the have_* variables.  Initialize
2038         have_fpu to 0 instead of 1.
2039
2040 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2041
2042         * arch/ppc-linux-common.c (ppc_linux_match_description):
2043         Parenthesize tdesc assignements and indent them properly.
2044
2045 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2046
2047         * ppc-linux-nat.c (fetch_register): Change if statement to else
2048         if.
2049         (store_register): Likewise.
2050
2051 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2052
2053         * rs6000-tdep.c: Remove reggroups.h include.
2054         (rs6000_pseudo_register_reggroup_p): Remove.
2055         (rs6000_gdbarch_init): Remove call to
2056         set_tdesc_pseudo_register_reggroup_p.
2057
2058 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2059
2060         * reggroups.c (default_register_reggroup_p): Return true for
2061         decfloat registers and float_reggroup.
2062
2063 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2064
2065         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
2066         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
2067         ppc_linux_collect_vrregset by regcache_collect_regset.
2068
2069 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2070
2071         * linux-tdep.c (linux_collect_regset_section_cb): Use
2072         std::vector<gdb_byte> instead of char * and malloc for buf.
2073         Remove xfree.
2074
2075 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
2076
2077         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
2078         symtab_start instead of always using language_unknown.
2079
2080 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2081
2082         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
2083         READ_P parameter, catch and ignore register access errors from
2084         either the old or new MISA location.
2085         (riscv_has_feature): Update call to riscv_read_misa_reg.
2086
2087 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
2088
2089         * python/py-function.c (convert_values_to_python): Return
2090         gdbpy_ref<>.  Add header comment.
2091         (fnpy_call): Adjust.
2092
2093 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
2094
2095         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
2096         (cmdpy_completer_handle_brkchars): Adjust.
2097         (cmdpy_completer): Adjust.
2098
2099 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
2100
2101         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
2102         Pass correct regnum to raw_supply_zeroed.
2103
2104 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
2105
2106         * regcache.c (cooked_read_test): Add CSKY to the list of
2107         architectures with a save_reggroup
2108
2109 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
2110
2111         PR gdb/23368
2112         * infrun.c (follow_exec): In the follow_exec_mode_new case,
2113         transfer terminal state from old new new inferior.
2114         * terminal.h (swap_terminal_info): New function.
2115         * inflow.c (swap_terminal_info): New function.
2116
2117 2018-10-23  Tom Tromey  <tom@tromey.com>
2118
2119         * record-btrace.c (get_thread_current_frame_id): Rename from
2120         get_thread_current_frame.  Return a frame_id.
2121         (record_btrace_start_replaying): Update.
2122
2123 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
2124
2125         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
2126         for CSRs.
2127
2128 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
2129
2130         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
2131         have_nonsteppable_watchpoint attribute to 1.
2132
2133 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
2134
2135         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
2136         register names.
2137         (struct register_alias): Rename to...
2138         (struct riscv_register_alias): ...this, and update comment.
2139         (riscv_register_aliases): Update type, and alias names.  Remove
2140         CSR names from this list.
2141         (riscv_register_name): Use riscv_gdb_reg_names for int and float
2142         register names.  Add an extra assertion.
2143         (riscv_is_regnum_a_named_csr): New function.
2144         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
2145
2146 2018-10-23  John Darrington  <john@darrington.wattle.id.au>
2147
2148         * configure.tgt: Add configuration for s12z.
2149         * s12z-tdep.c:  New file.
2150         * NEWS: Mention new target.
2151
2152 2018-10-22  Jim Wilson  <jimw@sifive.com>
2153
2154         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
2155         FP reg smaller than FP reg size, and fill with -1 instead of 0.
2156
2157         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
2158         (riscv_register_type): Use them.
2159         (riscv_print_one_register_info): Handle union of floats same as float.
2160         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
2161         riscv_fpreg_q_type fields.
2162
2163 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
2164
2165         * gdbarch.sh (gdbarch_num_cooked_regs): New.
2166         * gdbarch.h: Re-generate.
2167         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
2168         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
2169         * eval.c (evaluate_subexp_standard): Likewise.
2170         * findvar.c (value_of_register): Likewise.
2171         (value_of_register_lazy): Likewise.
2172         (address_from_register): Likewise.
2173         * frame.c (get_frame_register_bytes): Likewise.
2174         * gdbarch-selftests.c (register_to_value_test): Likewise.
2175         * h8300-tdep.c (h8300_register_type): Likewise.
2176         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
2177         (i386_svr4_reg_to_regnum): Likewise.
2178         * infcmd.c (default_print_registers_info): Likewise.
2179         (registers_info): Likewise.
2180         (print_vector_info): Likewise.
2181         (default_print_float_info): Likewise.
2182         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
2183         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
2184         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
2185         (mi_cmd_data_list_changed_registers): Likewise.
2186         (mi_cmd_data_list_register_values): Likewise.
2187         (mi_cmd_data_write_register_values): Likewise.
2188         (mi_cmd_trace_frame_collected): Likewise.
2189         * mips-tdep.c (print_gp_register_row): Likewise.
2190         (mips_print_registers_info): Likewise.
2191         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
2192         * regcache.c (init_regcache_descr): Likewise.
2193         (register_size): Likewise.
2194         (register_dump::dump): Likewise.
2195         (cooked_read_test): Likewise.
2196         (cooked_write_test): Likewise.
2197         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
2198         (rs6000_gdbarch_init): Likewise.
2199         * stabsread.c (stab_reg_to_regnum): Likewise.
2200         * stack.c (info_frame_command): Likewise.
2201         * target-descriptions.c (tdesc_register_name): Likewise.
2202         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
2203         * tui/tui-regs.c (tui_show_register_group): Likewise.
2204         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
2205         (user_reg_map_regnum_to_name): Likewise.
2206         (value_of_user_reg): Likewise.
2207         (maintenance_print_user_registers): Likewise.
2208         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
2209         (xtensa_register_name): Likewise.
2210         (xtensa_register_type): Likewise.
2211         (xtensa_reg_to_regnum): Likewise.
2212         (xtensa_pseudo_register_read): Likewise.
2213         (xtensa_pseudo_register_write): Likewise.
2214
2215 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
2216
2217         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
2218         correctly-sized buffer with raw_read.
2219         (amd64_pseudo_register_write): Use correctly-sized buffer for
2220         raw_read/raw_write.
2221
2222 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2223
2224         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
2225         in add_prefix_cmd of set print type.
2226
2227 2018-10-19  Tom Tromey  <tom@tromey.com>
2228
2229         PR tui/18388:
2230         * NEWS: Mention tabset deprecation.
2231         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
2232         (update_tab_width): New function.
2233         (tui_set_tab_width, tui_show_tab_width): New functions.
2234         (tui_set_tab_width_command): Use update_tab_width.
2235         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
2236         Add new "set tui tab-width" command.
2237         * tui/tui-source.c (tui_set_source_content): Update.
2238         * tui/tui-disasm.c (tui_set_disassem_content): Update.
2239         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
2240         Don't declare.
2241         (tui_tab_width): Declare.
2242         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
2243         (tui_set_default_tab_len): Remove.
2244
2245 2018-10-19  Tom Tromey  <tom@tromey.com>
2246
2247         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
2248         (key_is_backspace, tui_getc): Don't declare.
2249         * tui/tui-io.c (key_is_start_sequence): Now static.
2250         (key_is_end_sequence, key_is_backspace): Remove.
2251         (tui_getc): Now static.
2252
2253 2018-10-19  Tom Tromey  <tom@tromey.com>
2254
2255         * symfile.c (reread_symbols): Clear "static_links".
2256
2257 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
2258
2259         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
2260         define.
2261         (aarch64_linux_sigframe_init): Extra boundary checks.
2262
2263 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
2264
2265         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
2266         the possibly non-existent tdesc type 'vec128', but the type of raw
2267         register v16 instead.
2268
2269 2018-10-19  Gary Benson <gbenson@redhat.com>
2270
2271         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
2272
2273 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
2274
2275         PR cli/23785
2276         * cli/cli-dump.c (restore_binary_file): Check if "file" is
2277         NULL.
2278
2279 2018-10-17  Paul Koning  <paul_koning@dell.com>
2280
2281         * charset.c (convert_between_encodings): Fix unsigned overflow.
2282
2283 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
2284
2285         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
2286         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
2287         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
2288         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
2289         New functions.
2290         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
2291         and fbsd_info_proc_mappings_header.
2292         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
2293         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
2294         New.
2295
2296 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
2297
2298         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
2299         Solaris Maintainer.
2300
2301 2018-10-15  Tom Tromey  <tom@tromey.com>
2302
2303         * tui/tui.c (strcat_to_buf): Remove casts.
2304         * tui/tui-winsource.c (tui_show_source_line)
2305         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
2306         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
2307         * tui/tui-windata.c (tui_first_data_item_displayed)
2308         (tui_delete_data_content_windows, tui_erase_data_content)
2309         (tui_display_all_data, tui_display_data_from)
2310         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
2311         * tui/tui-win.c (tui_set_win_height)
2312         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
2313         casts.
2314         * tui/tui-win.c (tui_resize_all): Remove casts.
2315         (tui_scroll_backward_command, tui_set_focus)
2316         (tui_set_tab_width_command): Likewise.
2317         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
2318         * tui/tui-regs.c (tui_show_register_group): Remove cast.
2319         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
2320         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
2321         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
2322         Remove casts.
2323
2324 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
2325
2326         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
2327         AArch64/ARM maintainer.
2328
2329 2018-10-11  Gary Benson <gbenson@redhat.com>
2330
2331         * interps.h (interp::m_name): Make private and mutable.
2332         * interps.c (interp::~interp): Free m_name.
2333
2334 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2335             Simon Marchi <simark@simark.ca>
2336
2337         * README (`configure' options): Add documentation for new
2338         "--enable-unit-tests" option.
2339         * acinclude.m4: Include "selftest.m4".
2340         * configure: Regenerate.
2341         * configure.ac: Use "GDB_AC_SELFTEST".
2342         * maint.c (maintenance_selftest): Update message informing
2343         that selftests have been disabled.
2344         (maintenance_info_selftests): Likewise.
2345         * selftest.m4: New file.
2346
2347 2018-10-10  Gary Benson <gbenson@redhat.com>
2348
2349         * remote.c (remote_target::remote_send_printf): Add
2350         missing va_end found by Coverity.
2351
2352 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
2353
2354         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
2355
2356 2018-10-09  Tom Tromey  <tom@tromey.com>
2357
2358         * configure: Rebuild.
2359         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
2360         * NEWS: Update --enable-ubsan documentation.
2361
2362 2018-10-09  Gary Benson <gbenson@redhat.com>
2363
2364         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
2365         found by Coverity.
2366
2367 2018-10-08  Tom Tromey  <tom@tromey.com>
2368
2369         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
2370         variable.
2371         (riscv_fbsd_init_abi): Likewise.
2372
2373 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
2374         * valops.c (value_struct_elt_for_reference): Rename local variable
2375         to work around the shadowing a previous local warning.
2376
2377 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2378
2379         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
2380         * NEWS: Mention new FreeBSD/riscv native configuration.
2381         * configure.host: Add riscv*-*-freebsd*.
2382         * configure.nat: Likewise.
2383         * riscv-fbsd-nat.c: New file.
2384
2385 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2386
2387         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
2388         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
2389         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
2390         * NEWS: Mention new FreeBSD/riscv target.
2391         * configure.tgt: Add riscv*-*-freebsd*.
2392         * riscv-fbsd-tdep.c: New file.
2393         * riscv-fbsd-tdep.h: New file.
2394
2395 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2396
2397         * regcache.h (struct regcache_map_entry): Note that this type can
2398         be used with traditional frame caches.
2399         * trad-frame.c (trad_frame_set_reg_regmap): New.
2400         * trad-frame.h (trad_frame_set_reg_regmap): New.
2401
2402 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
2403
2404         PR c++/16841
2405         * valops.c (get_virtual_base_offset): New function.
2406         (value_struct_elt_for_reference): Use it to get virtual base offset
2407         and add it in calculating class member address.
2408
2409 2018-10-08  John Darrington  <john@darrington.wattle.id.au>
2410
2411         * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
2412         (check_producer): Check if the producer is codewarrior.
2413         (producer_is_codewarrior): New function.
2414         (lnp_state_machine::record_line): Ignore is_stmt flag for records
2415         produced by codewarrior.
2416         (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
2417
2418 2018-10-06  Tom Tromey  <tom@tromey.com>
2419
2420         PR python/19399:
2421         * python/py-inferior.c: Add "architecture" entry.
2422         (infpy_architecture): New function.
2423
2424 2018-10-06  Tom Tromey  <tom@tromey.com>
2425
2426         PR python/21765:
2427         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
2428         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
2429         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
2430         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
2431
2432 2018-10-06  Tom Tromey  <tom@tromey.com>
2433
2434         PR build/17077:
2435         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
2436         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
2437         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
2438         #include.
2439
2440 2018-10-06  Tom Tromey  <tom@tromey.com>
2441
2442         * python/py-breakpoint.c (bppy_get_location): Handle a
2443         bp_breakpoint without a location.
2444
2445 2018-10-06  Tom Tromey  <tom@tromey.com>
2446
2447         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
2448         (_RegEx): Reformat help text.
2449         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
2450         (AnyCallerIs, AnyCallerMatches): Reformat help text.
2451         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
2452         text.
2453         * python/lib/gdb/command/xmethods.py (InfoXMethod)
2454         (EnableXMethod, DisableXMethod): Remove help indentation.
2455         Capitalize meta-syntactic variables.
2456         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
2457         (EnableUnwinder, DisableUnwinder): Remove help indentation.
2458         Capitalize meta-syntactic variables.
2459         * python/lib/gdb/command/explore.py (ExploreCommand)
2460         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
2461         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
2462         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
2463         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
2464         Remove help indentation.
2465         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
2466         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
2467         (DisableFrameFilter, SetFrameFilterPriority)
2468         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
2469
2470 2018-10-06  Tom Tromey  <tom@tromey.com>
2471
2472         PR tui/28819:
2473         * tui/tui-io.c (gdb_wgetch): New function.
2474         (tui_mld_getc, tui_getc): Use it.
2475
2476 2018-10-05  Tom Tromey  <tom@tromey.com>
2477
2478         * sol-thread.c (sol_thread_target::wait): Rename inner
2479         "save_ptid".
2480
2481 2018-10-04  Tom Tromey  <tom@tromey.com>
2482
2483         * configure: Rebuild.
2484         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
2485
2486 2018-10-04  Tom Tromey  <tom@tromey.com>
2487
2488         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
2489         declaration of "block".
2490
2491 2018-10-04  Tom Tromey  <tom@tromey.com>
2492
2493         * common/filestuff.c (fdwalk): Remove inner declaration of
2494         "result".
2495
2496 2018-10-04  Tom Tromey  <tom@tromey.com>
2497
2498         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
2499         "structs_addr" and hoist declaration.
2500
2501 2018-10-04  Tom Tromey  <tom@tromey.com>
2502
2503         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
2504         variable "size".
2505
2506 2018-10-04  Tom Tromey  <tom@tromey.com>
2507
2508         * mdebugread.c (parse_partial_symbols): Use std::string.
2509
2510 2018-10-04  Tom Tromey  <tom@tromey.com>
2511
2512         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
2513         * p-valprint.c (pascal_val_print): Split inner "i" variable.
2514         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
2515         header.
2516         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
2517         more inner scope.
2518         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
2519         * varobj.c (varobj_update): Rename inner "newobj",
2520         "type_changed".
2521         * valprint.c (generic_emit_char): Rename inner "buf".
2522         * valops.c (find_overload_match): Rename inner "temp".
2523         (value_struct_elt_for_reference): Declare "v" in more inner
2524         scope.
2525         * v850-tdep.c (v850_push_dummy_call): Rename "len".
2526         * unittests/array-view-selftests.c (run_tests): Rename inner
2527         "vec".
2528         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
2529         header.
2530         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
2531         "tsv" in more inner scope.
2532         (print_one_static_tracepoint_marker): Rename inner
2533         "tuple_emitter".
2534         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
2535         (tic6x_push_dummy_call): Don't redeclare "addr".
2536         * target-float.c: Declare "dto" lower.
2537         * symtab.c (lookup_local_symbol): Rename inner "sym".
2538         (find_pc_sect_line): Rename inner "pc".
2539         * stack.c (print_frame): Don't redeclare "gdbarch".
2540         (return_command): Rename inner "gdbarch".
2541         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
2542         "sp".
2543         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
2544         header.
2545         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
2546         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
2547         scope.
2548         * remote.c (remote_target::update_thread_list): Don't redeclare
2549         "tp".
2550         (remote_target::process_initial_stop_replies): Rename inner
2551         "thread".
2552         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
2553         (remote_target::wait_as): Don't redeclare "stop_reply".
2554         (remote_target::get_thread_local_address): Rename inner
2555         "result".
2556         (remote_target::get_tib_address): Likewise.
2557
2558         * regcache.c (cooked_read_test): Rename "regnum".
2559         * record-btrace.c (cmd_record_btrace_start): Rename inner
2560         "exception".
2561         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
2562         loop header.
2563         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
2564         header.
2565         (ppu2spu_sniffer): Rename inner "buf".
2566         * parse.c (operator_check_standard): Rename inner "type",
2567         "objfile".
2568         * p-valprint.c (pascal_val_print): Introduce new scope for
2569         "low_bound", "high_bound".
2570         * p-exp.y (yylex): Declare "i" in loop header.
2571         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
2572         Lower declaration of "s".
2573         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
2574         header.
2575         (nios2_push_dummy_call): Rename "len".
2576         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
2577         "buf".
2578         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
2579         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
2580         (linux_xfer_osdata_modules): Likewise.
2581         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
2582         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
2583         (mips_o64_push_dummy_call): Likewise.
2584         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
2585         "op".
2586         * mi/mi-main.c (list_available_thread_groups): Rename inner
2587         "tuple_emitter".
2588         (mi_cmd_data_read_memory): Rename inner "opts".
2589         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
2590         "tuple_emitter".
2591         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
2592         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
2593         more inner scope.
2594         (parse_partial_symbols): Rename inner "pst", "p", "name"
2595         * main.c (captured_main_1): Rename inner "i"s.
2596         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
2597         "oso2".
2598         * linux-tdep.c (linux_info_proc): Rename inner "filename".
2599         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
2600         * infrun.c (handle_no_resumed): Don't redeclare "thread".
2601         (handle_signal_stop): Rename inner "gdbarch".
2602         (handle_command): Declare "signum" in loop header.
2603         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
2604         "status".
2605         (examine_prologue): Rename inner "sol" and "sof".
2606         (ia64_extract_return_value): Rename inner "val".  Declare another
2607         "val" in a more inner scope.
2608         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
2609         inner scope.
2610         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
2611         "except".
2612         * findvar.c (default_read_var_value): Don't redeclare "addr".
2613         * f-exp.y (yylex): Declare "i" in loop header.
2614         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
2615         Rename inner "type", "expect_type".
2616         (evaluate_subexp_for_sizeof): Rename inner "pc".
2617         * elfread.c (elf_symfile_read): Rename inner "abfd".
2618         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
2619         "bytes_read".
2620         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
2621         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
2622         (dwarf_decode_line_header): Rename inner "lh".
2623         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
2624         "offset".  Declare "i" in loop header.
2625         (disassemble_dwarf_expression): Rename inner "addr_size".
2626         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
2627         inner "result".
2628         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
2629         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
2630         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
2631         "inner_list_emitter".
2632         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
2633         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
2634         declaration in a block.
2635         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
2636         * cp-valprint.c (cp_print_value_fields): Don't redeclare
2637         "obstack_final_size".
2638         * cp-support.c (inspect_type): Declare "i" in loop header.
2639         * compile/compile.c (compile_instance::insert_symbol_error):
2640         Rename inner "e".
2641         * common/agent.c (agent_run_command): Remove inner "ret"
2642         declaration.
2643         * coffread.c (coff_symfile_read): Rename inner "name".
2644         (coff_symfile_read): Rename inner "abfd".
2645         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
2646         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
2647         "high".
2648         * c-exp.y (lex_one_token): Move "len" declaration lower.
2649         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
2650         "gdbarch".
2651         (create_exception_master_breakpoint): Likewise.  Don't redeclare
2652         "b".
2653         (watch_command_1): Declare "mark" later.
2654         (clear_command): Don't shadow "a" or "b".
2655         (delete_command): Rename inner "b".
2656         (delete_trace_command): Likewise.
2657         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
2658         "op".
2659         (arm_gdbarch_init): Remove inner "e_flags".
2660         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
2661         "offset" in inner blocks.
2662
2663 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
2664
2665         * dwarf-index-write.c (file_write): Don't write if the vector is
2666         empty.
2667
2668 2018-10-05  Tom de Vries  <tdevries@suse.de>
2669
2670         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
2671         PyArg_ParseTuple call.
2672
2673 2018-10-05  Tom de Vries  <tdevries@suse.de>
2674
2675         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
2676         PyArg_ParseTuple call.
2677
2678 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
2679
2680         * psymtab.c (recursively_search_psymtabs): Reformat parameters
2681         to avoid exceeding 80 characters per line limit.
2682
2683 2018-10-04  Tom Tromey  <tom@tromey.com>
2684
2685         * symfile.c (syms_from_objfile_1, finish_new_objfile)
2686         (reread_symbols): Update.
2687         * complaints.h (clear_complaints): Remove argument.
2688         * complaints.c (enum complaint_series): Remove.
2689         (series): Remove global.
2690         (complaint_internal): Update.
2691         (clear_complaints): Remove argument.
2692
2693 2018-10-04  Tom Tromey  <tom@tromey.com>
2694
2695         * symfile.c (symbol_file_add_with_addrs): Do not print "no
2696         debugging symbols" message if there is a separate debug objfile.
2697
2698 2018-10-04  Tom Tromey  <tom@tromey.com>
2699
2700         PR cli/19551:
2701         * symfile.c (symbol_file_add_with_addrs): Update output.
2702         * psymtab.c (require_partial_symbols): Update output.
2703
2704 2018-10-04  Tom Tromey  <tom@tromey.com>
2705
2706         PR cli/22234:
2707         * complaints.c: Emit \n.
2708
2709 2018-10-04  Tom Tromey  <tom@tromey.com>
2710
2711         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
2712         (separate_debug_file_exists, find_separate_debug_file)
2713         (add_symbol_file_command, reread_symbols, allocate_symtab)
2714         (allocate_compunit_symtab): Use filtered printing, not
2715         unfiltered.
2716         * psymtab.c (require_partial_symbols, dump_psymtab)
2717         (allocate_psymtab): Use filtered printing, not unfiltered.
2718
2719 2018-10-04  Tom Tromey  <tom@tromey.com>
2720
2721         * complaints.c (complaint_internal): Correctly check complaint
2722         count.
2723
2724 2018-10-04  Tom Tromey  <tom@tromey.com>
2725
2726         * complaints.h (struct complaints): Remove declaration.
2727         * complaints.c (clear_complaints): Remove an unused variable.
2728
2729 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2730
2731         * MAINTAINERS (Write After Approval): Add self.
2732
2733 2018-10-03  Tom Tromey  <tom@tromey.com>
2734
2735         * guile/scm-value.c (gdbscm_value_to_string): Initialize
2736         "buffer_contents".
2737         * coffread.c (coff_symtab_read): Initialize "newobj".
2738
2739 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
2740
2741         * dwarf2read.c (read_func_scope): Remove struct keyword in
2742         range-based for.
2743
2744 2018-10-03  Tom Tromey  <tom@tromey.com>
2745
2746         * README: Mention --enable-ubsan.
2747         * NEWS: Mention --enable-ubsan.
2748         * acinclude.m4: Include sanitize.m4.
2749         * configure: Rebuild.
2750         * configure.ac: Call AM_GDB_UBSAN.
2751         * sanitize.m4: New file.
2752
2753 2018-10-03  Tom Tromey  <tom@tromey.com>
2754
2755         * expression.h (enum exp_opcode): Use uint8_t as base type.
2756         * expprint.c (op_name): Handle invalid opcodes.
2757
2758 2018-10-03  Tom Tromey  <tom@tromey.com>
2759
2760         * parse.c (prefixify_expression): Add assert.
2761         (parse_exp_in_context_1): Throw exception if the expression is
2762         empty.
2763
2764 2018-10-03  Tom Tromey  <tom@tromey.com>
2765
2766         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
2767
2768 2018-10-03  Tom Tromey  <tom@tromey.com>
2769
2770         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
2771
2772 2018-10-03  Tom Tromey  <tom@tromey.com>
2773
2774         * dwarf2read.c (read_subrange_type): Make "negative_mask"
2775         unsigned.
2776
2777 2018-10-03  Tom Tromey  <tom@tromey.com>
2778
2779         * findvar.c (extract_integer): Do work in an unsigned type.
2780
2781 2018-10-03  Tom Tromey  <tom@tromey.com>
2782
2783         * common/enum-flags.h (enum_flags::operator~): Add static assert.
2784         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
2785         base type.
2786         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
2787         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
2788         type.
2789         * c-lang.h (enum c_string_type_values): Use unsigned as base
2790         type.
2791         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
2792
2793 2018-10-03  Tom Tromey  <tom@tromey.com>
2794
2795         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
2796         <~dwarf2_frame_state_reg_info>: Update.
2797         <dwarf2_frame_state_reg_info>: Update.
2798         <alloc_regs>: Add assertion.  Update.
2799         <reg>: Now a std::vector.
2800         <num_regs>: Remove.
2801         <swap>: Update.
2802         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
2803         (execute_cfa_program_test, dwarf2_frame_cache): Update.
2804
2805 2018-10-03  Tom Tromey  <tom@tromey.com>
2806
2807         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
2808
2809 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2810
2811         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
2812
2813 2018-10-02  Tom Tromey  <tom@tromey.com>
2814
2815         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
2816
2817 2018-10-02  John Darrington  <john@darrington.wattle.id.au>
2818
2819         * NEWS: Mention changed commands.
2820         * ser-uds.c: New file.
2821         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
2822         * configure: Regenerate.
2823         * Makefile.in: Add new file.
2824         * serial.c (serial_open): Check if filename is a socket
2825         and lookup the appropriate interface accordingly.
2826
2827 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2828
2829         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
2830         define.
2831         (AARCH64_EXTRA_MAGIC): Likewise.
2832         (AARCH64_FPSIMD_MAGIC): Likewise.
2833         (AARCH64_SVE_MAGIC): Likewise.
2834         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
2835         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
2836         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
2837         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
2838         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
2839         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
2840         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
2841         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
2842         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
2843         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
2844         (read_aarch64_ctx): Add function.
2845         (aarch64_linux_sigframe_init): Detect FP registers.
2846
2847 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2848
2849         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
2850         (AARCH64_D0_REGNUM): Likewise.
2851         (AARCH64_S0_REGNUM): Likewise.
2852         (AARCH64_H0_REGNUM): Likewise.
2853         (AARCH64_B0_REGNUM): Likewise.
2854         (AARCH64_SVE_V0_REGNUM): Likewise.
2855         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
2856         (AARCH64_D0_REGNUM): Likewise.
2857         (AARCH64_S0_REGNUM): Likewise.
2858         (AARCH64_H0_REGNUM): Likewise.
2859         (AARCH64_B0_REGNUM): Likewise.
2860         (AARCH64_SVE_V0_REGNUM): Likewise.
2861
2862 2018-10-01  Gary Benson <gbenson@redhat.com>
2863
2864         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
2865         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
2866         prfpregset_t instead of gdb_prfpregset_t.
2867         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
2868         * configure, config.in: Rebuild.
2869
2870 2018-10-01  Gary Benson <gbenson@redhat.com>
2871
2872         * common/gdb_proc_service.h: New file, factored out from...
2873         * gdb_proc_service.h: Moved common code to the above file.
2874         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
2875
2876 2018-10-01  Gary Benson <gbenson@redhat.com>
2877
2878         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
2879         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
2880
2881 2018-10-01  Gary Benson <gbenson@redhat.com>
2882
2883         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
2884         (AC_CHECK_HEADERS): Check for linux/elf.h.
2885         * configure, config.in: Rebuild.
2886         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
2887         doesn't define elf_fpregset_t.
2888
2889 2018-10-01  Gary Benson <gbenson@redhat.com>
2890
2891         * gdb_proc_service.h: Whitespace change.
2892
2893 2018-10-01  Tom Tromey  <tom@tromey.com>
2894
2895         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
2896         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
2897         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
2898
2899 2018-10-01  Tom Tromey  <tom@tromey.com>
2900
2901         * README: Minor change.
2902
2903 2018-09-30  Pedro Alves  <palves@redhat.com>
2904
2905         * darwin-nat-info.c (darwin_debug_regions_recurse)
2906         (info_mach_exceptions_command): Remove unused local variables.
2907         * darwin-nat.c (darwin_decode_notify_message)
2908         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
2909         (darwin_stop_inferior, darwin_setup_exceptions)
2910         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
2911         (darwin_nat_target::attach, darwin_nat_target::detach)
2912         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
2913         local variables.
2914         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
2915         variables.
2916
2917 2018-09-29  Tom Tromey  <tom@tromey.com>
2918
2919         * README: Remove some leftover text.
2920
2921 2018-09-29  Tom Tromey  <tom@tromey.com>
2922
2923         * PROBLEMS: Rewrite.
2924         * README: Update.
2925
2926 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
2927
2928         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
2929         case with explicit breakpoint kind.
2930         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
2931         'additional_info' and related logic.
2932         (riscv_debug_breakpoints): New variable.
2933         (riscv_breakpoint_kind_from_pc): Use the length of the existing
2934         instruction to determine the breakpoint kind.
2935         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
2936         flag.  Update description of 'set/show riscv
2937         use-compressed-breakpoints' flag.
2938
2939 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
2940
2941         (NEWS): Mention changes to frame related commands.
2942         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
2943         (add_prefix_cmd_suppress_notification): New function.
2944         (add_com_suppress_notification): Call
2945         add_cmd_suppress_notification.
2946         * command.h (add_cmd_suppress_notification): Declare.
2947         (add_prefix_cmd_suppress_notification): Declare.
2948         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
2949         (parse_frame_specification): Moved from stack.c, with
2950         simplification to handle a single argument.
2951         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
2952         switch to the selected frame.  Add a header comment.
2953         * stack.c: Remove 'safe-ctype.h' include.
2954         (find_frame_for_function): Add declaration.
2955         (find_frame_for_address): New function.
2956         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
2957         (frame_selection_by_function_completer): New function.
2958         (info_frame_command): Rename to...
2959         (info_frame_command_core): ...this, and update parameter types.
2960         (select_frame_command): Rename to...
2961         (select_frame_command_core): ...this, and update parameter types.
2962         (frame_command): Rename to...
2963         (frame_command_core): ...this, and update parameter types.
2964         (class frame_command_helper): New class to wrap implementations of
2965         frame related sub-commands.
2966         (frame_apply_cmd_list): New static global.
2967         (frame_cmd_list): Make static.
2968         (select_frame_cmd_list): New global for sub-commands.
2969         (info_frame_cmd_list): New global for sub-commands.
2970         (_initialize_stack): Register sub-commands for 'frame',
2971         'select-frame', and 'info frame'.  Update 'frame apply' commands
2972         to use frame_apply_cmd_list.  Move function local static
2973         frame_apply_list to file static frame_apply_cmd_list for
2974         consistency.
2975         * stack.h (select_frame_command): Delete declarationn.
2976         (select_frame_for_mi): Declare new function.
2977
2978 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2979
2980         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
2981         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
2982         and NOP.
2983
2984 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
2985
2986         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
2987
2988 2018-09-26  Tom Tromey  <tom@tromey.com>
2989
2990         * valops.c (auto_abandon): Remove dead code.
2991
2992 2018-09-26  Tom Tromey  <tom@tromey.com>
2993
2994         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
2995
2996 2018-09-24  Tom Tromey  <tom@tromey.com>
2997
2998         * common/pathstuff.c (get_standard_cache_dir): Make
2999         "xdg_cache_home" and "home" const.
3000         * top.c (init_history): Make "tmpenv" const.
3001         * main.c (get_init_files): Make "homedir" const.
3002
3003 2018-09-23  Tom Tromey  <tom@tromey.com>
3004
3005         PR python/18852:
3006         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
3007
3008 2018-09-23  Tom Tromey  <tom@tromey.com>
3009
3010         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
3011         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
3012         * python/python-internal.h (gdbpy_handle_exception): Declare.
3013         * python/py-utils.c (gdbpy_handle_exception): New function.
3014
3015 2018-09-23  Tom Tromey  <tom@tromey.com>
3016
3017         PR python/17284:
3018         * python/py-type.c (typy_template_argument): Check for negative
3019         argument number.
3020
3021 2018-09-23  Tom Tromey  <tom@tromey.com>
3022
3023         PR python/14062:
3024         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
3025
3026 2018-09-23  Tom Tromey  <tom@tromey.com>
3027
3028         PR python/18170:
3029         * python/py-value.c (valpy_int): Allow conversion from pointer
3030         type.
3031
3032 2018-09-23  Tom Tromey  <tom@tromey.com>
3033
3034         PR python/20126:
3035         * python/py-value.c (valpy_int): Respect type sign.
3036
3037 2018-09-23  Tom Tromey  <tom@tromey.com>
3038
3039         PR python/18352;
3040         * python/py-value.c (valpy_float): Allow conversions from int or
3041         char.
3042         (valpy_int, valpy_long): Allow conversions from float.
3043
3044 2018-09-23  Tom Tromey  <tom@tromey.com>
3045
3046         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
3047         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
3048
3049 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3050
3051         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
3052         __sighndlr.
3053         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
3054
3055 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
3056
3057         * windows-nat.c (windows_nat_target::wait): Remove a spurious
3058         target_terminal::ours().
3059
3060 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
3061
3062         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
3063         of vl to ULONGEST.
3064
3065 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
3066
3067         * breakpoint.c (update_inserted_breakpoint_locations): Remove
3068         redundant condition.
3069
3070 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3071
3072         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
3073
3074         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
3075         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
3076         * sol-thread.c (ps_pdmodel): Don't guard definition.
3077
3078         * procfs.c: Fix formatting.
3079
3080         * procfs.c (sysset_t_alloc): Remove.
3081         (create_procinfo): Use XNEW instead of sysset_t_alloc.
3082         (procfs_debug_inferior): Likewise.
3083         (procfs_set_exec_trap): Likewise.
3084         (proc_set_traced_sysentry): Don't allocate argp dynamically.
3085         (proc_set_traced_sysexit): Likewise.
3086
3087         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
3088         (dead_procinfo): Likewise.
3089         (proc_warn): Likewise.
3090         (proc_error): Likewise.
3091         (proc_get_LDT_entry): Likewise.
3092         (do_attach): Likewise.
3093         (procfs_target::pid_to_str): Likewise.
3094         (iterate_over_mappings): Likewise.
3095
3096         * procfs.c (create_procinfo): Fix ARI warning.
3097         (proc_get_status): Likewise.
3098         (proc_stop_process): Likewise.
3099         (proc_run_process): Likewise.
3100         (proc_kill): Likewise.
3101         (proc_get_LDT_entry): Likewise.
3102         (procfs_find_LDT_entry): Likewise.
3103         (proc_update_threads): Likewise.
3104         (proc_iterate_over_threads): Likewise.
3105         (do_attach): Likewise.
3106         (procfs_xfer_memory): Likewise.
3107         (invalidate_cache): Likewise.
3108         (procfs_target::resume): Likewise.
3109         (procfs_init_inferior): Likewise.
3110         (procfs_set_exec_trap): Likewise.
3111         (procfs_target::thread_alive): Likewise.
3112         (procfs_target::pid_to_exec_file): Likewise.
3113         (iterate_over_mappings): Likewise.
3114         (procfs_target::make_corefile_notes): Likewise.
3115         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
3116
3117         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
3118         (procfs_find_LDT_entry): Likewise.
3119         * sol-thread.c (ps_lgetLDT): Likewise.
3120
3121 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3122
3123         PR tdep/17903
3124         * procfs.c (procfs_target): Declare pid_to_exec_file.
3125         (procfs_target::pid_to_exec_file): New.
3126
3127 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3128
3129         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
3130         renaming.
3131         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
3132         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
3133
3134 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3135
3136         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
3137         (supply_fpregset, fill_fpregset): Move ...
3138         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
3139         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
3140         Remove references to ioctl-based procfs.
3141         Include <sys/reg.h>.
3142         Remove PR_MODEL_NATIVE guards.
3143         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
3144         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
3145
3146 2018-09-19  Xavier Roirand  <roirand@adacore.com>
3147
3148         PR gdb/20981:
3149         * solib-darwin.c (darwin_get_dyld_bfd): New function.
3150         (darwin_solib_get_all_image_info_addr_at_init): Update call.
3151         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
3152
3153 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
3154
3155         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
3156         (fbsd_print_sockaddr_in6): Likewise.
3157
3158 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
3159             Chris January  <chris.january@arm.com>
3160
3161         * eval.c (skip_undetermined_arglist): Skip argument list helper.
3162         (evaluate_subexp_standard): Return a dummy type when
3163         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
3164         OP_F77_UNDETERMINED_ARGLIST case.
3165         * expression.h (enum noside): Update comment.
3166
3167 2018-09-19  George Vasick <george.vasick@oracle.com>
3168
3169         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
3170
3171 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
3172             April Chin <april.chin@oracle.com>
3173             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3174
3175         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
3176         uint_t lwpid_t.
3177         (create_procinfo): Print pids in /proc without leading zeros.
3178
3179 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
3180
3181         * nios2-tdep.c (nios2_gcc_target_options): New.
3182         (nios2_gdb_arch_init): Install new hook.
3183
3184 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
3185
3186         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
3187         New file.
3188         * update-gnulib.sh: Apply patch.
3189         * configure: Re-generate.
3190
3191 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3192
3193         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
3194         description.  Make "info proc" command descriptions more
3195         consistent.
3196
3197 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3198
3199         * NEWS: Mention 'info proc files' command.
3200
3201 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3202
3203         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
3204         descriptors for IP_FILES and IP_ALL.
3205
3206 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3207
3208         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
3209         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
3210         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
3211         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
3212         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
3213         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
3214         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
3215         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
3216         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
3217         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
3218         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
3219         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
3220         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
3221         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
3222         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
3223         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
3224         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
3225         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
3226         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
3227         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
3228         (struct fbsd_sockaddr_un): New types.
3229         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
3230         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
3231         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
3232         (fbsd_core_info_proc_files): New functions.
3233         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
3234         IP_ALL.
3235         * fbsd-tdep.h (fbsd_info_proc_files_header)
3236         (fbsd_info_proc_files_entry): New.
3237
3238 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3239
3240         * defs.h (enum info_proc_what) [IP_FILES]: New value.
3241         * infcmd.c (info_proc_cmd_files): New function.
3242         (_initialize_infcmd): Register 'info proc files' command.
3243
3244 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3245
3246         * gnulib/aclocal-m4-deps.mk: Re-generate.
3247         * gnulib/aclocal.m4: Re-generate.
3248         * gnulib/config.in: Re-generate.
3249         * gnulib/configure: Re-generate.
3250         * gnulib/import/Makefile.am: Re-generate.
3251         * gnulib/import/Makefile.in: Re-generate.
3252         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3253         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3254         * gnulib/import/arpa_inet.in.h: New file.
3255         * gnulib/import/inet_ntop.c: New file.
3256         * gnulib/import/m4/arpa_inet_h.m4: New file.
3257         * gnulib/import/m4/inet_ntop.m4: New file.
3258         * gnulib/import/m4/netinet_in_h.m4: New file.
3259         * gnulib/import/m4/socklen.m4: New file.
3260         * gnulib/import/m4/sockpfaf.m4: New file.
3261         * gnulib/import/m4/stdalign.m4: New file.
3262         * gnulib/import/m4/sys_uio_h.m4: New file.
3263         * gnulib/import/netinet_in.in.h: New file.
3264         * gnulib/import/stdalign.in.h: New file.
3265         * gnulib/import/sys_socket.c: New file.
3266         * gnulib/import/sys_socket.in.h: New file.
3267         * gnulib/import/sys_uio.in.h: New file.
3268         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
3269         module.
3270
3271 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3272
3273         * gnulib/aclocal-m4-deps.mk: New file.
3274         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
3275         deterministically.
3276
3277 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3278
3279         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
3280         KVE_PATH.
3281
3282 2018-09-18  Tom Tromey  <tom@tromey.com>
3283
3284         * compile/compile-object-load.c (struct
3285         link_hash_table_cleanup_data): Add constructor and destructor.
3286         Use DISABLE_COPY_AND_ASSIGN.
3287         (~link_hash_table_cleanup_data): Rename from
3288         link_hash_table_free.  Now a destructor.
3289         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
3290
3291 2018-09-18  Tom Tromey  <tom@tromey.com>
3292
3293         * compile/compile-object-run.c (do_module_cleanup): Use delete.
3294         * compile/compile-object-load.c (struct munmap_list): Move to
3295         header file.
3296         (munmap_list::add): Rename from munmap_list_add; rewrite.
3297         (munmap_list::~munmap_list): Rename from munmap_list_free.
3298         (munmap_listp_free_cleanup): Remove.
3299         (compile_object_load): Update.
3300         * compile/compile-object-load.h (struct munmap_list): Move from
3301         compile-object-load.c.  Rewrite.
3302
3303 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
3304
3305         * aarch64-tdep.c (pass_in_v): Use register size.
3306         (aarch64_extract_return_value): Likewise.
3307         (aarch64_store_return_value): Likewise.
3308
3309 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3310
3311         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
3312         rlim_t.
3313
3314 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3315
3316         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
3317         Fix short help line.
3318
3319 2018-09-17  Tom Tromey  <tom@tromey.com>
3320
3321         PR python/20445:
3322         * configure: Rebuild.
3323         * configure.ac: Conditionally use -DNDEBUG for Python.
3324
3325 2018-09-17  Tom Tromey  <tom@tromey.com>
3326
3327         * configure: Rebuild.
3328         * configure.ac: Use gmp as a library dependency when checking for
3329         mpfr.
3330
3331 2018-09-17  Pedro Alves  <palves@redhat.com>
3332
3333         * python/py-inferior.c (find_inferior_object): Delete.
3334
3335 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
3336
3337         * compile/compile-cplus-types.c
3338         (compile_cplus_instance::enter_scope): Don't use new_scope after
3339         std::move.
3340
3341 2018-09-17  Tom Tromey  <tom@tromey.com>
3342
3343         * common/pathstuff.c (get_standard_cache_dir): Use
3344         ~/Library/Caches on macOS.
3345         * common/pathstuff.h (get_standard_cache_dir): Update comment.
3346
3347 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
3348
3349         PR python/23669
3350         * breakpoint.c (commands_cmd_element): New.
3351         (_initialize_breakpoint): Assign commands_cmd_element.
3352         * breakpoint.h (commands_cmd_element): New.
3353         * cli/cli-script.c (while_cmd_element, if_command,
3354         define_cmd_element): New.
3355         (command_name_equals): Remove.
3356         (process_next_line): Compare commands by pointer, not by name.
3357         (_initialize_cli_script): Assign the various cmd_list_element
3358         variables.
3359         * compile/compile.c (compile_cmd_element): New.
3360         (_initialize_compile): Assign compile_cmd_element.
3361         * compile/compile.h (compile_cmd_element): New.
3362         * guile/guile.c (guile_cmd_element): New.
3363         (install_gdb_commands): Assign guile_cmd_element.
3364         * guile/guile.h (guile_cmd_element): New.
3365         * python/python.c (python_cmd_element): New.
3366         (_initialize_python): Assign python_cmd_element.
3367         * python/python.h (python_cmd_element): New.
3368         * tracepoint.c (while_stepping_cmd_element): New.
3369         (_initialize_tracepoint): Assign while_stepping_cmd_element.
3370         * tracepoint.h (while_stepping_cmd_element): New.
3371
3372 2018-09-17  Tom Tromey  <tom@tromey.com>
3373
3374         * infrun.c (save_infcall_suspend_state): Return
3375         infcall_suspend_state_up.
3376         (save_infcall_control_state): Return infcall_control_state_up.
3377         * inferior.h (save_infcall_suspend_state)
3378         (save_infcall_control_state): Declare later.  Return unique
3379         pointers.
3380
3381 2018-09-17  Tom Tromey  <tom@tromey.com>
3382
3383         * infrun.c (struct stop_context): Declare constructor,
3384         destructor, "changed" method.
3385         (stop_context::stop_context): Rename from save_stop_context.
3386         (stop_context::~stop_context): Rename from
3387         release_stop_context_cleanup.
3388         (normal_stop): Update.
3389         (stop_context::changed): Rename from stop_context_changed.  Return
3390         bool.
3391
3392 2018-09-17  Tom Tromey  <tom@tromey.com>
3393
3394         * inferior.h (struct infcall_suspend_state_deleter): New.
3395         (infcall_suspend_state_up): New typedef.
3396         (struct infcall_control_state_deleter): New.
3397         (infcall_control_state_up): New typedef.
3398         (make_cleanup_restore_infcall_suspend_state)
3399         (make_cleanup_restore_infcall_control_state): Don't declare.
3400         * infcall.c (call_function_by_hand_dummy): Update.
3401         * infrun.c (do_restore_infcall_suspend_state_cleanup)
3402         (make_cleanup_restore_infcall_suspend_state): Remove.
3403         (do_restore_infcall_control_state_cleanup)
3404         (make_cleanup_restore_infcall_control_state): Remove.
3405
3406 2018-09-17  Tom Tromey  <tom@tromey.com>
3407
3408         * gdbthread.h (struct thread_control_state): Add initializer.
3409         (class thread_info) <control>: Remove initializer.
3410         * inferior.h (struct inferior_control_state): Add initializer.
3411         (class inferior) <control>: Remove initializer.
3412         (exit_inferior_1): Update.
3413         * infrun.c (struct infcall_control_state): Add constructors.
3414         (save_infcall_control_state): Use new.
3415         (restore_infcall_control_state, discard_infcall_control_state):
3416         Use delete.
3417
3418 2018-09-17  Tom Tromey  <tom@tromey.com>
3419
3420         * infrun.c (struct infcall_suspend_state) <registers>: Now a
3421         unique_ptr.
3422         <siginfo_data>: Now a unique_xmalloc_ptr.
3423         (save_infcall_suspend_state, restore_infcall_suspend_state)
3424         (discard_infcall_suspend_state)
3425         (get_infcall_suspend_state_regcache): Update.
3426
3427 2018-09-17  Tom Tromey  <tom@tromey.com>
3428
3429         * gdbthread.h (struct thread_suspend_state): Add initializers.
3430         (class thread_info) <suspend>: Remove initializer.
3431         * infrun.c (struct infcall_suspend_state): Add initializers.
3432         (save_infcall_suspend_state): Use new.
3433         (discard_infcall_suspend_state): Use delete.
3434
3435 2018-09-16  Tom Tromey  <tom@tromey.com>
3436
3437         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
3438         Remove.
3439         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
3440         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
3441         (py_varobj_iter_new): Likewise.
3442         (py_varobj_get_iterator): Use gdbpy_ref.
3443
3444 2018-09-16  Tom Tromey  <tom@tromey.com>
3445
3446         * python/py-threadevent.c (py_get_event_thread): Simplify.
3447         * python/py-inferior.c (infpy_thread_from_thread_handle):
3448         Return immediately after calling thread_to_thread_object.  Use
3449         Py_RETURN_NONE.
3450         (thread_to_thread_object): Set the exception on a NULL return.
3451
3452 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
3453
3454         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
3455
3456 2018-09-16  Tom Tromey  <tom@tromey.com>
3457
3458         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
3459         Remove.
3460
3461 2018-09-16  Tom Tromey  <tom@tromey.com>
3462
3463         * python/python-internal.h (thread_to_thread_object): Change
3464         return type.
3465         * python/py-inferior.c (thread_to_thread_object): Return a new
3466         reference.
3467         (infpy_thread_from_thread_handle): Update.
3468         * python/py-infthread.c (gdbpy_selected_thread): Update.
3469         * python/py-stopevent.c (create_stop_event_object): Update.
3470         * python/py-threadevent.c (py_get_event_thread): Return a new
3471         reference.
3472         (py_get_event_thread): Update.
3473         * python/py-event.h (py_get_event_thread): Change return type.
3474         * python/py-continueevent.c (create_continue_event_object):
3475         Update.
3476
3477 2018-09-16  Tom Tromey  <tom@tromey.com>
3478
3479         * python/py-progspace.c (pspy_get_objfiles): Update.
3480         * python/python-internal.h (objfile_to_objfile_object): Change
3481         return type.
3482         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3483         Update.
3484         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3485         Update.
3486         * python/python.c (gdbpy_get_current_objfile): Update.
3487         (gdbpy_objfiles): Update.
3488         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
3489         Update.
3490         (objfile_to_objfile_object): Return a new reference.
3491         * python/py-symtab.c (stpy_get_objfile): Update.
3492         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
3493         Update.
3494
3495 2018-09-16  Tom Tromey  <tom@tromey.com>
3496
3497         * python/py-inferior.c (infpy_get_progspace): Update.
3498         * python/python-internal.h (pspace_to_pspace_object): Change
3499         return type.
3500         * python/py-newobjfileevent.c
3501         (create_clear_objfiles_event_object): Update.
3502         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3503         Update.
3504         * python/python.c (gdbpy_get_current_progspace): Update.
3505         (gdbpy_progspaces): Update.
3506         * python/py-progspace.c (pspace_to_pspace_object): Return a new
3507         reference.
3508         * python/py-objfile.c (objfpy_get_progspace): Update.
3509         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
3510         Update.
3511
3512 2018-09-16  Tom Tromey  <tom@tromey.com>
3513
3514         * python/lib/gdb/__init__.py (current_progspace, objfiles)
3515         (solib_name, block_for_pc, find_pc_line): New functions.
3516         (execute_unwinders): Update.
3517         * python/py-block.c (gdbpy_block_for_pc): Remove.
3518         * python/py-inferior.c (infpy_get_progspace): New function.
3519         (inferior_object_getset) <progspace>: Add.
3520         * python/py-progspace.c (pspy_objfiles): Rewrite.
3521         (pspy_solib_name, pspy_block_for_pc)
3522         (pspy_find_pc_line, pspy_is_valid): New functions.
3523         (progspace_object_methods): Add entries for solib_name,
3524         block_for_pc, find_pc_line, is_valid.
3525         * python/python-internal.h (gdbpy_block_for_pc)
3526         (build_objfiles_list): Don't declare.
3527         * python/python.c: Don't include solib.h.
3528         (gdbpy_solib_name, gdbpy_find_pc_line)
3529         (gdbpy_get_current_progspace, build_objfiles_list)
3530         (gdbpy_objfiles): Remove.
3531         (GdbMethods) <current_progspace, objfiles, block_for_pc,
3532         solib_name, find_pc_line>: Remove entries.
3533
3534 2018-09-16  Tom Tromey  <tom@tromey.com>
3535
3536         * top.c (new_ui_command): Use GNU style for metasyntactic
3537         variables.
3538         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
3539         variables.
3540         * maint.c (maintenance_translate_address): Remove "<>" around
3541         text.
3542         * interps.c (interpreter_exec_cmd): Use GNU style for
3543         metasyntactic variables.
3544         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
3545         metasyntactic variables.
3546         * tracepoint.c (tfind_range_command): Use GNU style for
3547         metasyntactic variables.
3548         (tfind_outside_command): Likewise.
3549         (_initialize_tracepoint): Likewise.
3550         * remote.c (extended_remote_target::create_inferior): Use GNU
3551         style for metasyntactic variables.
3552         * sparc64-tdep.c (adi_examine_command): Use GNU style for
3553         metasyntactic variables.
3554         (adi_assign_command): Likewise.
3555
3556 2018-09-16  Tom Tromey  <tom@tromey.com>
3557
3558         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
3559         metasyntactic variables.  Print message if no disassembler options
3560         are available.
3561
3562 2018-09-15  Tom Tromey  <tom@tromey.com>
3563
3564         * infcmd.c (get_inferior_args): Return const char *.
3565         * inferior.h (get_inferior_args): Return type now const.
3566         * linux-tdep.c (linux_fill_prpsinfo): Update.
3567         * procfs.c (procfs_target::make_corefile_notes): Update.
3568
3569 2018-09-07  Tom Tromey  <tom@tromey.com>
3570
3571         * python/python.c (execute_gdb_command): Call bpstat_do_actions
3572         inside the TRY.
3573
3574 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
3575
3576         * nios2-tdep.c (nios2_type_align): New.
3577         (nios2_gdb_arch_init): Install type_align hook.
3578
3579 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
3580
3581         * eval.c (fake_method::fake_method): Call xzalloc directly for a
3582         type that is neither object file owned, nor gdbarch owned.
3583         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
3584         gdbarch is non-NULL.
3585         (alloc_type_instance): Allocate non-objfile owned types on the
3586         gdbarch obstack.
3587         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
3588         using TYPE_ALLOC to ensure memory is allocated on the correct
3589         obstack.
3590         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
3591         obstack, or the gdbarch obstack.
3592         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
3593
3594 2018-09-14  Tom Tromey  <tom@tromey.com>
3595
3596         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
3597         block.
3598
3599 2018-09-14  Tom Tromey  <tom@tromey.com>
3600
3601         * nat/fork-inferior.c (get_startup_shell): Remove "static".
3602
3603 2018-09-13  Tom Tromey  <tom@tromey.com>
3604
3605         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
3606         static.
3607
3608 2018-09-13  Tom Tromey  <tom@tromey.com>
3609
3610         * exec.c (try_open_exec_file): Use std::string.
3611
3612 2018-09-13  Tom Tromey  <tom@tromey.com>
3613
3614         * utils.h (gdb_bfd_errmsg): Return std::string.
3615         * exec.c (exec_file_attach): Update.
3616         * compile/compile-object-load.c (compile_object_load): Update.
3617         * utils.c (gdb_bfd_errmsg): Return std::string.
3618
3619 2018-09-13  Tom Tromey  <tom@tromey.com>
3620
3621         * procfs.c (struct procinfo_deleter): New.
3622         (procinfo_up): New typedef.
3623         (do_destroy_procinfo_cleanup): Remove.
3624         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
3625
3626 2018-09-13  Tom Tromey  <tom@tromey.com>
3627
3628         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
3629
3630 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3631 2018-09-13  Tom Tromey  <tom@tromey.com>
3632
3633         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
3634         (pspy_get_objfiles): New function.
3635         (progspace_object_methods): New.
3636         (pspace_object_type): Add tp_methods callback.
3637         * python/python-internal.h (build_objfiles_list): New
3638         declaration.
3639         * python/python.c (build_objfiles_list): New function.
3640         (gdbpy_objfiles): Implement using build_objfiles_list.
3641         * NEWS: Mention the Progspace.objfiles method.
3642
3643 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3644
3645         * python/py-inferior.c (infpy_get_progspace): New function.
3646         (inferior_object_getset): Add progspace property.
3647         * NEWS: Mention the new property.
3648
3649 2018-09-13  Tom Tromey  <tom@tromey.com>
3650
3651         PR rust/23650:
3652         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
3653
3654 2018-09-13  Tom Tromey  <tom@tromey.com>
3655
3656         PR rust/23626:
3657         * rust-lang.c (rust_enum_variant): Now static.
3658         (rust_empty_enum_p): New function.
3659         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
3660         Handle empty enum.
3661
3662 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3663
3664         * python/py-inferior.c (infpy_repr): New.
3665         (inferior_object_type): Register infpy_repr.
3666         * python/py-objfile.c (objfpy_repr): New.
3667         (objfile_object_type): Register objfpy_repr.
3668
3669 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3670
3671         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
3672
3673 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3674
3675         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
3676         typo.
3677
3678 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
3679
3680         * common/common-utils.c: Don't include '<sys/stat.h>'.
3681         (is_regular_file): Move to...
3682         * common/filestuff.c (is_regular_file): ... here.
3683         * common/common-utils.h (is_regular_file): Move to...
3684         * common/filestuff.h (is_regular_file): ... here.
3685
3686 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
3687
3688         * skip.c (debug_skip): New variable.
3689         (skiplist_entry::do_skip_file_p): Add debug output.
3690         (skiplist_entry::do_skip_gfile_p): Likewise.
3691         (skiplist_entry::skip_function_p): Likewise.
3692         (_initialize_step_skip): Create debug command.
3693         * NEWS: Mention set/show debug skip.
3694
3695 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3696
3697         * darwin-nat.c (should_disable_startup_with_shell):
3698         New function.
3699         (darwin_nat_target::create_inferior): Add call.
3700
3701 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3702
3703         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
3704         inf_port, msg_state>: Initialize.
3705         (struct darwin_thread_info) <signaled, single_step>: Change
3706         type and initialize.
3707         (struct darwin_thread_info) <event>: Initialize.
3708
3709 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3710
3711         PR gdb/23555
3712         PR gdb/23558
3713         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
3714         guesses.
3715
3716 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3717
3718         Revert:
3719         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3720
3721         PR gdb/23555
3722         PR gdb/23558
3723         * gnulib/aclocal.m4: Regenerate.
3724         * gnulib/config.in: Regenerate.
3725         * gnulib/configure: Regenerate.
3726         * gnulib/import/Makefile.am: Update.
3727         * gnulib/import/Makefile.in: Update.
3728         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3729         * gnulib/import/_Noreturn.h: ... this.
3730         * gnulib/import/alloca.in.h: Update.
3731         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3732         * gnulib/import/arg-nonnull.h: ... this.
3733         * gnulib/import/assure.h: Update.
3734         * gnulib/import/at-func.c: Update.
3735         * gnulib/import/basename-lgpl.c: Update.
3736         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3737         * gnulib/import/c++defs.h: ... this.
3738         * gnulib/import/canonicalize-lgpl.c: Update.
3739         * gnulib/import/cdefs.h: Update.
3740         * gnulib/import/chdir-long.c: Update.
3741         * gnulib/import/chdir-long.h: Update.
3742         * gnulib/import/cloexec.c: Update.
3743         * gnulib/import/cloexec.h: Update.
3744         * gnulib/import/close.c: Update.
3745         * gnulib/import/closedir.c: Update.
3746         * gnulib/import/config.charset: Update.
3747         * gnulib/import/dirent-private.h: Update.
3748         * gnulib/import/dirent.in.h: Update.
3749         * gnulib/import/dirfd.c: Update.
3750         * gnulib/import/dirname-lgpl.c: Update.
3751         * gnulib/import/dirname.h: Update.
3752         * gnulib/import/dosname.h: Update.
3753         * gnulib/import/dup-safer-flag.c: Update.
3754         * gnulib/import/dup-safer.c: Update.
3755         * gnulib/import/dup.c: Update.
3756         * gnulib/import/dup2.c: Update.
3757         * gnulib/import/errno.in.h: Update.
3758         * gnulib/import/error.c: Update.
3759         * gnulib/import/error.h: Update.
3760         * gnulib/import/exitfail.c: Update.
3761         * gnulib/import/exitfail.h: Update.
3762         * gnulib/import/extra/update-copyright: Update.
3763         * gnulib/import/fchdir.c: Update.
3764         * gnulib/import/fcntl.c: Update.
3765         * gnulib/import/fcntl.in.h: Update.
3766         * gnulib/import/fd-hook.c: Update.
3767         * gnulib/import/fd-hook.h: Update.
3768         * gnulib/import/fd-safer-flag.c: Update.
3769         * gnulib/import/fd-safer.c: Update.
3770         * gnulib/import/fdopendir.c: Update.
3771         * gnulib/import/filename.h: Update.
3772         * gnulib/import/filenamecat-lgpl.c: Update.
3773         * gnulib/import/filenamecat.h: Update.
3774         * gnulib/import/flexmember.h: Update.
3775         * gnulib/import/float+.h: Update.
3776         * gnulib/import/float.c: Update.
3777         * gnulib/import/float.in.h: Update.
3778         * gnulib/import/fnmatch.c: Update.
3779         * gnulib/import/fnmatch.in.h: Update.
3780         * gnulib/import/fnmatch_loop.c: Update.
3781         * gnulib/import/fpucw.h: Update.
3782         * gnulib/import/frexp.c: Update.
3783         * gnulib/import/frexpl.c: Update.
3784         * gnulib/import/fstat.c: Update.
3785         * gnulib/import/fstatat.c: Update.
3786         * gnulib/import/getcwd-lgpl.c: Update.
3787         * gnulib/import/getcwd.c: Update.
3788         * gnulib/import/getdtablesize.c: Update.
3789         * gnulib/import/getlogin_r.c: Update.
3790         * gnulib/import/getprogname.c: Update.
3791         * gnulib/import/getprogname.h: Update.
3792         * gnulib/import/gettext.h: Update.
3793         * gnulib/import/gettimeofday.c: Update.
3794         * gnulib/import/glob-libc.h: Update.
3795         * gnulib/import/glob.c: Update.
3796         * gnulib/import/glob.in.h: Update.
3797         * gnulib/import/glob_internal.h: Update.
3798         * gnulib/import/glob_pattern_p.c: Update.
3799         * gnulib/import/globfree.c: Update.
3800         * gnulib/import/hard-locale.c: Update.
3801         * gnulib/import/hard-locale.h: Update.
3802         * gnulib/import/intprops.h: Update.
3803         * gnulib/import/inttypes.in.h: Update.
3804         * gnulib/import/isnan.c: Update.
3805         * gnulib/import/isnand-nolibm.h: Update.
3806         * gnulib/import/isnand.c: Update.
3807         * gnulib/import/isnanl-nolibm.h: Update.
3808         * gnulib/import/isnanl.c: Update.
3809         * gnulib/import/itold.c: Update.
3810         * gnulib/import/libc-config.h: Update.
3811         * gnulib/import/limits.in.h: Update.
3812         * gnulib/import/localcharset.c: Update.
3813         * gnulib/import/localcharset.h: Update.
3814         * gnulib/import/localtime-buffer.c: Update.
3815         * gnulib/import/localtime-buffer.h: Update.
3816         * gnulib/import/lstat.c: Update.
3817         * gnulib/import/m4/00gnulib.m4: Update.
3818         * gnulib/import/m4/__inline.m4: Update.
3819         * gnulib/import/m4/absolute-header.m4: Update.
3820         * gnulib/import/m4/alloca.m4: Update.
3821         * gnulib/import/m4/builtin-expect.m4: Update.
3822         * gnulib/import/m4/canonicalize.m4: Update.
3823         * gnulib/import/m4/chdir-long.m4: Update.
3824         * gnulib/import/m4/close.m4: Update.
3825         * gnulib/import/m4/closedir.m4: Update.
3826         * gnulib/import/m4/configmake.m4: Update.
3827         * gnulib/import/m4/d-ino.m4: Update.
3828         * gnulib/import/m4/d-type.m4: Update.
3829         * gnulib/import/m4/dirent_h.m4: Update.
3830         * gnulib/import/m4/dirfd.m4: Update.
3831         * gnulib/import/m4/dirname.m4: Update.
3832         * gnulib/import/m4/double-slash-root.m4: Update.
3833         * gnulib/import/m4/dup.m4: Update.
3834         * gnulib/import/m4/dup2.m4: Update.
3835         * gnulib/import/m4/eealloc.m4: Update.
3836         * gnulib/import/m4/environ.m4: Update.
3837         * gnulib/import/m4/errno_h.m4: Update.
3838         * gnulib/import/m4/error.m4: Update.
3839         * gnulib/import/m4/exponentd.m4: Update.
3840         * gnulib/import/m4/exponentl.m4: Update.
3841         * gnulib/import/m4/extensions.m4: Update.
3842         * gnulib/import/m4/extern-inline.m4: Update.
3843         * gnulib/import/m4/fchdir.m4: Update.
3844         * gnulib/import/m4/fcntl-o.m4: Update.
3845         * gnulib/import/m4/fcntl.m4: Update.
3846         * gnulib/import/m4/fcntl_h.m4: Update.
3847         * gnulib/import/m4/fdopendir.m4: Update.
3848         * gnulib/import/m4/filenamecat.m4: Update.
3849         * gnulib/import/m4/flexmember.m4: Update.
3850         * gnulib/import/m4/float_h.m4: Update.
3851         * gnulib/import/m4/fnmatch.m4: Update.
3852         * gnulib/import/m4/fnmatch_h.m4: Update.
3853         * gnulib/import/m4/fpieee.m4: Update.
3854         * gnulib/import/m4/frexp.m4: Update.
3855         * gnulib/import/m4/frexpl.m4: Update.
3856         * gnulib/import/m4/fstat.m4: Update.
3857         * gnulib/import/m4/fstatat.m4: Update.
3858         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3859         * gnulib/import/m4/getcwd-path-max.m4: Update.
3860         * gnulib/import/m4/getcwd.m4: Update.
3861         * gnulib/import/m4/getdtablesize.m4: Update.
3862         * gnulib/import/m4/getlogin.m4: Update.
3863         * gnulib/import/m4/getlogin_r.m4: Update.
3864         * gnulib/import/m4/getpagesize.m4: Update.
3865         * gnulib/import/m4/getprogname.m4: Update.
3866         * gnulib/import/m4/gettimeofday.m4: Update.
3867         * gnulib/import/m4/glibc21.m4: Update.
3868         * gnulib/import/m4/glob.m4: Update.
3869         * gnulib/import/m4/glob_h.m4: Update.
3870         * gnulib/import/m4/gnulib-cache.m4: Update.
3871         * gnulib/import/m4/gnulib-common.m4: Update.
3872         * gnulib/import/m4/gnulib-comp.m4: Update.
3873         * gnulib/import/m4/gnulib-tool.m4: Update.
3874         * gnulib/import/m4/hard-locale.m4: Update.
3875         * gnulib/import/m4/include_next.m4: Update.
3876         * gnulib/import/m4/inttypes-pri.m4: Update.
3877         * gnulib/import/m4/inttypes.m4: Update.
3878         * gnulib/import/m4/isnand.m4: Update.
3879         * gnulib/import/m4/isnanl.m4: Update.
3880         * gnulib/import/m4/largefile.m4: Update.
3881         * gnulib/import/m4/limits-h.m4: Update.
3882         * gnulib/import/m4/localcharset.m4: Update.
3883         * gnulib/import/m4/locale-fr.m4: Update.
3884         * gnulib/import/m4/locale-ja.m4: Update.
3885         * gnulib/import/m4/locale-zh.m4: Update.
3886         * gnulib/import/m4/localtime-buffer.m4: Update.
3887         * gnulib/import/m4/longlong.m4: Update.
3888         * gnulib/import/m4/lstat.m4: Update.
3889         * gnulib/import/m4/malloc.m4: Update.
3890         * gnulib/import/m4/malloca.m4: Update.
3891         * gnulib/import/m4/math_h.m4: Update.
3892         * gnulib/import/m4/mbrtowc.m4: Update.
3893         * gnulib/import/m4/mbsinit.m4: Update.
3894         * gnulib/import/m4/mbsrtowcs.m4: Update.
3895         * gnulib/import/m4/mbstate_t.m4: Update.
3896         * gnulib/import/m4/memchr.m4: Update.
3897         * gnulib/import/m4/memmem.m4: Update.
3898         * gnulib/import/m4/mempcpy.m4: Update.
3899         * gnulib/import/m4/memrchr.m4: Update.
3900         * gnulib/import/m4/mkdir.m4: Update.
3901         * gnulib/import/m4/mkstemp.m4: Update.
3902         * gnulib/import/m4/mmap-anon.m4: Update.
3903         * gnulib/import/m4/mode_t.m4: Update.
3904         * gnulib/import/m4/msvc-inval.m4: Update.
3905         * gnulib/import/m4/msvc-nothrow.m4: Update.
3906         * gnulib/import/m4/multiarch.m4: Update.
3907         * gnulib/import/m4/nocrash.m4: Update.
3908         * gnulib/import/m4/off_t.m4: Update.
3909         * gnulib/import/m4/onceonly.m4: Update.
3910         * gnulib/import/m4/open-cloexec.m4: Update.
3911         * gnulib/import/m4/open.m4: Update.
3912         * gnulib/import/m4/openat.m4: Update.
3913         * gnulib/import/m4/opendir.m4: Update.
3914         * gnulib/import/m4/pathmax.m4: Update.
3915         * gnulib/import/m4/rawmemchr.m4: Update.
3916         * gnulib/import/m4/readdir.m4: Update.
3917         * gnulib/import/m4/readlink.m4: Update.
3918         * gnulib/import/m4/realloc.m4: Update.
3919         * gnulib/import/m4/rename.m4: Update.
3920         * gnulib/import/m4/rewinddir.m4: Update.
3921         * gnulib/import/m4/rmdir.m4: Update.
3922         * gnulib/import/m4/save-cwd.m4: Update.
3923         * gnulib/import/m4/secure_getenv.m4: Update.
3924         * gnulib/import/m4/setenv.m4: Update.
3925         * gnulib/import/m4/signal_h.m4: Update.
3926         * gnulib/import/m4/ssize_t.m4: Update.
3927         * gnulib/import/m4/stat-time.m4: Update.
3928         * gnulib/import/m4/stat.m4: Update.
3929         * gnulib/import/m4/std-gnu11.m4: Update.
3930         * gnulib/import/m4/stdbool.m4: Update.
3931         * gnulib/import/m4/stddef_h.m4: Update.
3932         * gnulib/import/m4/stdint.m4: Update.
3933         * gnulib/import/m4/stdio_h.m4: Update.
3934         * gnulib/import/m4/stdlib_h.m4: Update.
3935         * gnulib/import/m4/strchrnul.m4: Update.
3936         * gnulib/import/m4/strdup.m4: Update.
3937         * gnulib/import/m4/strerror.m4: Update.
3938         * gnulib/import/m4/string_h.m4: Update.
3939         * gnulib/import/m4/strstr.m4: Update.
3940         * gnulib/import/m4/strtok_r.m4: Update.
3941         * gnulib/import/m4/sys_socket_h.m4: Update.
3942         * gnulib/import/m4/sys_stat_h.m4: Update.
3943         * gnulib/import/m4/sys_time_h.m4: Update.
3944         * gnulib/import/m4/sys_types_h.m4: Update.
3945         * gnulib/import/m4/tempname.m4: Update.
3946         * gnulib/import/m4/time_h.m4: Update.
3947         * gnulib/import/m4/unistd-safer.m4: Update.
3948         * gnulib/import/m4/unistd_h.m4: Update.
3949         * gnulib/import/m4/warn-on-use.m4: Update.
3950         * gnulib/import/m4/wchar_h.m4: Update.
3951         * gnulib/import/m4/wchar_t.m4: Update.
3952         * gnulib/import/m4/wctype_h.m4: Update.
3953         * gnulib/import/m4/wint_t.m4: Update.
3954         * gnulib/import/malloc.c: Update.
3955         * gnulib/import/malloc/scratch_buffer.h: Update.
3956         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3957         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3958         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3959         * gnulib/import/malloca.c: Update.
3960         * gnulib/import/malloca.h: Update.
3961         * gnulib/import/malloca.valgrind: Update.
3962         * gnulib/import/math.in.h: Update.
3963         * gnulib/import/mbrtowc.c: Update.
3964         * gnulib/import/mbsinit.c: Update.
3965         * gnulib/import/mbsrtowcs-impl.h: Update.
3966         * gnulib/import/mbsrtowcs-state.c: Update.
3967         * gnulib/import/mbsrtowcs.c: Update.
3968         * gnulib/import/memchr.c: Update.
3969         * gnulib/import/memmem.c: Update.
3970         * gnulib/import/mempcpy.c: Update.
3971         * gnulib/import/memrchr.c: Update.
3972         * gnulib/import/mkdir.c: Update.
3973         * gnulib/import/mkstemp.c: Update.
3974         * gnulib/import/msvc-inval.c: Update.
3975         * gnulib/import/msvc-inval.h: Update.
3976         * gnulib/import/msvc-nothrow.c: Update.
3977         * gnulib/import/msvc-nothrow.h: Update.
3978         * gnulib/import/open.c: Update.
3979         * gnulib/import/openat-die.c: Update.
3980         * gnulib/import/openat-priv.h: Update.
3981         * gnulib/import/openat-proc.c: Update.
3982         * gnulib/import/openat.c: Update.
3983         * gnulib/import/openat.h: Update.
3984         * gnulib/import/opendir.c: Update.
3985         * gnulib/import/pathmax.h: Update.
3986         * gnulib/import/pipe-safer.c: Update.
3987         * gnulib/import/rawmemchr.c: Update.
3988         * gnulib/import/readdir.c: Update.
3989         * gnulib/import/readlink.c: Update.
3990         * gnulib/import/realloc.c: Update.
3991         * gnulib/import/ref-add.sin: Update.
3992         * gnulib/import/ref-del.sin: Update.
3993         * gnulib/import/rename.c: Update.
3994         * gnulib/import/rewinddir.c: Update.
3995         * gnulib/import/rmdir.c: Update.
3996         * gnulib/import/same-inode.h: Update.
3997         * gnulib/import/save-cwd.c: Update.
3998         * gnulib/import/save-cwd.h: Update.
3999         * gnulib/import/scratch_buffer.h: Update.
4000         * gnulib/import/secure_getenv.c: Update.
4001         * gnulib/import/setenv.c: Update.
4002         * gnulib/import/signal.in.h: Update.
4003         * gnulib/import/stat-time.c: Update.
4004         * gnulib/import/stat-time.h: Update.
4005         * gnulib/import/stat-w32.c: Update.
4006         * gnulib/import/stat-w32.h: Update.
4007         * gnulib/import/stat.c: Update.
4008         * gnulib/import/stdbool.in.h: Update.
4009         * gnulib/import/stddef.in.h: Update.
4010         * gnulib/import/stdint.in.h: Update.
4011         * gnulib/import/stdio.in.h: Update.
4012         * gnulib/import/stdlib.in.h: Update.
4013         * gnulib/import/str-two-way.h: Update.
4014         * gnulib/import/strchrnul.c: Update.
4015         * gnulib/import/strdup.c: Update.
4016         * gnulib/import/streq.h: Update.
4017         * gnulib/import/strerror-override.c: Update.
4018         * gnulib/import/strerror-override.h: Update.
4019         * gnulib/import/strerror.c: Update.
4020         * gnulib/import/string.in.h: Update.
4021         * gnulib/import/stripslash.c: Update.
4022         * gnulib/import/strnlen1.c: Update.
4023         * gnulib/import/strnlen1.h: Update.
4024         * gnulib/import/strstr.c: Update.
4025         * gnulib/import/strtok_r.c: Update.
4026         * gnulib/import/sys_stat.in.h: Update.
4027         * gnulib/import/sys_time.in.h: Update.
4028         * gnulib/import/sys_types.in.h: Update.
4029         * gnulib/import/tempname.c: Update.
4030         * gnulib/import/tempname.h: Update.
4031         * gnulib/import/time.in.h: Update.
4032         * gnulib/import/unistd--.h: Update.
4033         * gnulib/import/unistd-safer.h: Update.
4034         * gnulib/import/unistd.in.h: Update.
4035         * gnulib/import/unsetenv.c: Update.
4036         * gnulib/import/verify.h: Update.
4037         * gnulib/import/extra/snippet/warn-on-use.h: Update.
4038         * gnulib/import/wchar.in.h: Update.
4039         * gnulib/import/wctype.in.h: Update.
4040         * gnulib/import/xalloc-oversized.h: Update.
4041         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
4042         "53e2c179f26a890fa6685af4b6c1397ee370433b".
4043
4044 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
4045
4046         * record-btrace.c (get_thread_current_frame): Remove
4047         old_inferior_ptid.
4048
4049 2018-09-10  Jerome Guitton  <guitton@adacore.com>
4050
4051         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
4052         with check_tag to 1 if and only if the type is tagged and the
4053         component being searched cannot been found in the current
4054         view. Otherwise, always call ada_to_fixed_type with
4055         check_tag to 0.
4056
4057 2018-09-10  Xavier Roirand  <roirand@adacore.com>
4058
4059         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
4060         declaration.
4061         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
4062         * ada-varobj.c (ada_varobj_get_number_of_children,
4063         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
4064
4065 2018-09-10  Xavier Roirand  <roirand@adacore.com>
4066
4067         * ada-valprint.c (ada_value_print): Use type instead of
4068         enclosing type.
4069
4070 2018-09-10  Xavier Roirand  <roirand@adacore.com>
4071
4072         * ada-lang.c (ada_value_subscript): Handle case when parameter is
4073         an array of access to unconstrained array.
4074
4075 2018-09-10  Xavier Roirand  <roirand@adacore.com>
4076
4077         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
4078         (ada_check_typedef): Use it.
4079
4080 2018-09-10  Xavier Roirand  <roirand@adacore.com>
4081
4082         * ada-varobj.c (ada_varobj_describe_struct_child)
4083         (ada_varobj_describe_child): Handle union case like struct one.
4084
4085 2018-09-10  Tom Tromey  <tom@tromey.com>
4086
4087         PR python/18380:
4088         * python/python.c (_initialize_python): Make example in "python"
4089         help work in Python 3.
4090
4091 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
4092
4093         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
4094         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
4095         $(EXEEXT) to the script, as it is not a program.
4096
4097 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
4098
4099         * python/py-prettyprint.c (pretty_print_one_value): Return
4100         gdbpy_ref<>.
4101         (print_string_repr): Adjust.
4102         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
4103         * python/python-internal.h (apply_varobj_pretty_printer): Return
4104         gdbpy_ref<>.
4105         * varobj.c (varobj_value_get_print_value): Adjust.
4106
4107 2018-09-08  Tom Tromey  <tom@tromey.com>
4108
4109         PR python/16047:
4110         * python/py-prettyprint.c (pretty_print_one_value): Check for
4111         to_string method.
4112
4113 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4114
4115         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
4116         replace_operator_with_call.
4117
4118 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4119
4120         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
4121
4122 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4123
4124         * ada-typeprint.c (print_range): Print the bounds using TYPE
4125         rather than its TYPE_TARGET_TYPE.
4126
4127 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4128
4129         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
4130         call to ada_to_fixed_value_create.
4131
4132 2018-09-08  Jerome Guitton  <guitton@adacore.com>
4133
4134         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
4135
4136 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4137
4138         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
4139         by calls to error.
4140
4141 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4142
4143         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
4144         Move update of loop variable "fi".
4145
4146 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4147
4148         * ada-lang.c (value_assign_to_component): In the case of
4149         big-endian targets, extract the bits of the given VAL
4150         using an src_offset of zero if container is not a scalar.
4151
4152 2018-09-06  Simon Ser  <contact@emersion.fr>
4153
4154         PR gdb/23105
4155         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
4156         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
4157         * fbsd-tdep.c (fbsd_make_note_desc): New.
4158         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
4159         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
4160         * target.h (enum target_object) Add FreeBSD-specific
4161         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
4162
4163 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
4164
4165         * compile/compile-c.h (generate_c_for_variable_locations):
4166         Change reference to pointer.
4167         * compile/compile-c-support.c (compile_program) <compute>:
4168         Likewise.
4169         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
4170         (generate_c_for_for_one_variable): Likewise
4171         (generate_c_for_variable_locations): Likewise
4172         * compile/compile-c-types.c (compile_c_instance::convert_type):
4173         Likewise
4174         * compile/compile-cplus-symbols.c (convert_one_symbol):
4175         std::move the scope passed to enter_scope.
4176         * compile/compile-cplus-types.c
4177         (compile_cplus_instance::enter_scope): Make parameter
4178         rvalue-reference.
4179         (compile_cplus_instance::new_scope): Change reference to
4180         pointer.
4181         (compile_cplus_instance::convert_type): Likewise
4182         (compile_cplus_convert_typedef): std::move the scope passed to
4183         enter_scope.
4184         (compile_cplus_convert_struct_or_union): Likewise.
4185         (compile_cplus_convert_enum): Likewise.
4186         (compile_cplus_convert_namespace): Likewise.
4187         * compile/compile-cplus.h (compile_cplus_instance)
4188         <enter_scope>: Make parameter rvalue-reference.
4189         * compile/compile-internal.h (compile_instance)
4190         <get_cached_type>: Likewise
4191         * compile/compile-loc2c.c (push): Likewise
4192         (pushf): Likewise
4193         (unary): Likewise
4194         (binary): Likewise
4195         (print_label): Likewise
4196         (pushf_register_address): Likewise
4197         (pushf_register): Likewise
4198         (do_compile_dwarf_expr_to_c): Likewise
4199         (compile_dwarf_expr_to_c): Likewise
4200         (compile_dwarf_bounds_to_c): Likewise
4201         * compile/compile.c (compile_instance::get_cached_type):
4202         Likewise
4203         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
4204         (compile_dwarf_bounds_to_c): Likewise
4205         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
4206         (dwarf2_compile_property_to_c): Likewise
4207         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
4208         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
4209         Likewise
4210
4211 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
4212
4213         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
4214         * tui/tui-data.c (init_content_element): Don't initialize it.
4215
4216 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
4217
4218         * tui/tui-data.h (struct tui_win_info)
4219         <detail::opaque>: Remove.
4220         * tui/tui-data.c (init_win_info): Remove assignment.
4221
4222 2018-09-05  Tom Tromey  <tom@tromey.com>
4223
4224         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
4225         -Wformat-nonliteral.
4226         * target-float.c (host_float_ops<T>::to_string)
4227         (host_float_ops<T>::from_string): Use
4228         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
4229         * configure: Rebuild.
4230
4231 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
4232
4233         * printcmd.c (printf_c_string): Use
4234         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
4235         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
4236
4237 2018-09-05  Tom Tromey  <tom@tromey.com>
4238
4239         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
4240
4241 2018-09-05  Tom de Vries  <tdevries@suse.de>
4242
4243         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
4244         with resolve_abstract_p == true.
4245         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
4246         defaulting to false. Propagate resolve_abstract_p to
4247         dwarf2_fetch_die_loc_sect_off.
4248         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
4249         parameter, defaulting to false.
4250         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
4251         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
4252         parameter.
4253         * dwarf2read.h (struct die_info): Forward-declare.
4254         (die_info_ptr): New typedef.
4255         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
4256
4257 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
4258
4259         GDB 8.2 released.
4260
4261 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
4262             Pedro Alves  <palves@redhat.com>
4263
4264         * gnulib/Makefile.in (aclocal_m4_deps): Move to
4265         "aclocal-m4-deps.mk".  Include file here.
4266         $(srcdir)/aclocal.m4: Add "configure.ac".
4267         * gnulib/aclocal-m4-deps.mk: New file.
4268         * gnulib/update-gnulib.sh: Automatically update
4269         "aclocal-m4-deps.mk".
4270
4271 2018-09-04  Tom Tromey  <tom@tromey.com>
4272
4273         * configure: Rebuild.
4274         * configure.ac: Remove multi-ice code.
4275
4276 2018-09-04  Tom Tromey  <tom@tromey.com>
4277
4278         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
4279         (ada-exp.o): Update.
4280
4281 2018-09-04  Tom Tromey  <tom@tromey.com>
4282
4283         * Makefile.in (printcmd.o, target-float.o): Remove.
4284         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
4285
4286 2018-09-04  Tom Tromey  <tom@tromey.com>
4287
4288         * gnulib/Makefile.in: Remove obsolete comment.
4289         * Makefile.in: Remove obsolete comment.
4290
4291 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
4292
4293         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
4294         line with '+'.
4295
4296 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4297
4298         * riscv-tdep.c: Add 'prologue-value.h' include.
4299         (struct riscv_unwind_cache): New struct.
4300         (riscv_debug_unwinder): New global.
4301         (riscv_scan_prologue): Update arguments, capture register details
4302         from prologue scan.
4303         (riscv_skip_prologue): Reformat arguments line, move end of
4304         prologue calculation into riscv_scan_prologue.
4305         (riscv_frame_cache): Update return type, create
4306         riscv_unwind_cache, scan the prologue, and fill in remaining cache
4307         details.
4308         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
4309         (riscv_frame_prev_register): Use the trad_frame within the
4310         riscv_unwind_cache.
4311         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
4312         flag.
4313
4314 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4315
4316         * trad-frame.h (trad_frame_set_realreg): Declare.
4317         (trad_frame_set_addr): Declare.
4318         * trad-frame.c (trad_frame_set_realreg): Define new function.
4319         (trad_frame_set_addr): Define new function.
4320         (trad_frame_set_reg_realreg): Use new function.
4321         (trad_frame_set_reg_addr): Use new function.
4322
4323 2018-09-01  Keith Seitz  <keiths@redhat.com>
4324
4325         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
4326         pulongest instead of "%lld".
4327         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
4328         ATTRIBUTE_UNUSED.
4329
4330 2018-08-31  Tom Tromey  <tom@tromey.com>
4331
4332         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
4333         variant part type.
4334
4335 2018-08-31  Pedro Alves  <palves@redhat.com>
4336
4337         * gdbarch.h: Regenerate.
4338
4339 2018-08-31  Pedro Alves  <palves@redhat.com>
4340
4341         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
4342         * target.h (Hardware watchpoint interfaces): Describe
4343         continuable/steppable/non-steppable watchpoints.
4344         * gdbarch.h, gdbarch.c: Regenerate.
4345
4346 2018-08-31  Pedro Alves  <palves@redhat.com>
4347
4348         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
4349         Delete.
4350         * s390-linux-nat.c
4351         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
4352         * target.h (target_ops::have_continuable_watchpoint): Delete.
4353         (target_have_continuable_watchpoint): Delete.
4354         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
4355         * target-delegates.c: Regenerate.
4356
4357 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
4358
4359         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
4360         the files present in "gnulib/import/m4/".
4361
4362 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4363
4364         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
4365         c.sw, c.swsp, and c.sdsp.
4366
4367 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4368
4369         * riscv-tdep.c (struct riscv_inferior_data): Delete.
4370         (riscv_read_misa_reg): Don't cache value read into inferior data.
4371         (riscv_new_inferior_data): Delete.
4372         (riscv_inferior_data_cleanup): Delete.
4373         (riscv_inferior_data): Delete.
4374         (riscv_invalidate_inferior_data): Delete.
4375         (_initialize_riscv_tdep): Remove initialisation of inferior data.
4376
4377 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
4378
4379         * compile/compile-cplus-types.c
4380         (compile_cplus_instance::leave_scope): Take the address of scope
4381         object.
4382         (compile_cplus_instance::convert_qualified_base): Compare quals
4383         to 0.
4384
4385 2018-08-30  Keith Seitz  <keiths@redhat.com>
4386
4387         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
4388         Use "%s" and host_address_to_string instead of "%p" in printf.
4389
4390 2018-08-29  Keith Seitz  <keiths@redhat.com>
4391
4392         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
4393         and compile-cplus-types.c.
4394         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
4395         * c-lang.c (cplus_language_defn): Set C++ compile functions.
4396         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
4397         Declare.
4398         * compile/compile-c-support.c: Include compile-cplus.h.
4399         (load_libcompile): Templatize.
4400         (get_compile_context): "New" function.
4401         (c_get_compile_context): Use get_compile_context.
4402         (cplus_get_compile_context): New function.
4403         (cplus_push_user_expression, cplus_pop_user_expression)
4404         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
4405         (cplus_compute_program): Define new structs/functions.
4406         * compile/compile-cplus-symmbols.c: New file.
4407         * compile/compile-cplus-types.c: New file.
4408         * compile/compile-cplus.h: New file.
4409         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
4410         Declare.
4411         * compile/compile-object-load.c (get_out_value_type): Use
4412         strncmp_iw when comparing symbol names.
4413         (compile_object_load): Add mst_bss and mst_data.
4414         * compile/compile.c (_initialize_compile): Remove
4415         -Wno-implicit-function-declaration from `compile_args'.
4416         * compile/gcc-cp-plugin.h: New file.
4417         * NEWS: Mention C++ compile support and new debug options.
4418
4419 2018-08-29  Keith Seitz  <keiths@redhat.com>
4420
4421         * linespec.c (collect_info::add_symbol): Make virtual.
4422         (struct symbol_searcher_collect_info): New struct.
4423         (symbol_searcher::find_all_symbols): New method.
4424         * symtab.h (class symbol_searcher): New class.
4425
4426 2018-08-29  Keith Seitz  <keiths@redhat.com>
4427
4428         * linespec.c (struct linespec) <function_symbols, label_symbols>:
4429         Change to vector of block_symbol.  Update all users.
4430         (struct collect_info) <symbols>: Likewise.
4431         (collect_info::add_symbol): Take block_symbol as argument.
4432         Update all callers.
4433         (decode_compound_collector) <m_symbols>: Change type to vector
4434         of block_symbol.  Update all users.
4435         (decode_compound_collector::operator ()): Change parameter type
4436         to block_symbol.
4437         (find_method, find_function_symbols, find_linespec_symbols)
4438         (find_label_symbols_in_block, find_label_symbols): Change symbol
4439         vectors to block_symbol vectors.
4440         * symtab.h (symbol_found_callback_ftype): Change parameter type to
4441         block_symbol.
4442
4443 2018-08-29  Keith Seitz  <keiths@redhat.com>
4444
4445         * linespec.c (symbolp): Remove typedef and VEC definitions.
4446         (bound_minimal_symbol_d): Likewise.
4447
4448 2018-08-29  Keith Seitz  <keiths@redhat.com>
4449
4450         * linespec.c (decode_compound_collector::decode_compound_collector):
4451         Remove initialization for `m_symtabs'.
4452         (decode_compound_collector::release_symbols): Change return type
4453         to std::vector.  Update all callers.
4454         (class decode_compound_collector) <m_symbols>: Change type to
4455         std::vector.
4456         (lookup_prefix_sym): Change return type to std::vector.  Update all
4457         callers.
4458         (compare_symbols): Remove.
4459         (std_compare_symbols): Rename to `compare_symbols'.
4460         (find_method): Change `sym_classes' parameter to std::vector.
4461         Update all callers.  Use std::sort to sort sym_classes.
4462         (find_linespec_symbols): Remove cleanup.
4463
4464 2018-08-29  Keith Seitz  <keiths@redhat.com>
4465
4466         * linespec.c (struct linespec) <minimal_symbols>: Change type to
4467         std::vector.  Update all users.
4468         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
4469         (struct collect_info) <minimal_symbols>: Likewise.
4470         (compare_msymbols): Return bool.  Change parameters to const
4471         bound_minimal_symbol references.
4472         (find_method, find_function_symbols, find_linespec_symbols): Change
4473         `minsyms' parameter to std::vector.  Update all callers.
4474
4475 2018-08-29  Keith Seitz  <keiths@redhat.com>
4476
4477         * linespec.c (struct linespec) <label_symbols>: Change type to
4478         std::vector.  Update all users.
4479         (find_label_symbols_in_block): Change `result' parameter to
4480         std::vector.  Update all callers.
4481         (find_label_symbols): Return std::vector.  Update all callers.
4482
4483 2018-08-29  Keith Seitz  <keiths@redhat.com>
4484
4485         * linespec.c (struct linespec) <function_symbols>: Change type to
4486         std::vector.  Update all users.
4487         (struct collect_info) <function_symbols>: Likewise.
4488         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
4489         (std_compare_symbols): New function.
4490         (find_method, find_function_symbols, find_linespec_symbols)
4491         (find_label_symbols_in_block): Change `symbols' parameter to
4492         std::vector.  Update all callers.
4493         (find_label_symbols): Likewise for `function_symbols' and
4494         `label_funcs_ret'.
4495
4496 2018-08-29  Keith Seitz  <keiths@redhat.com>
4497
4498         * linespec.c (symtab_vector_up): Define.
4499         (struct linespec) <file_symtabs>: Change type to std::vector *.
4500         Update all uses.
4501         (struct collect_info) <file_symtabs>: Likewise.
4502         (collect_symtabs_from_filename): Return symtab_vector_up.
4503         Update all callers.
4504         (decode_objc): Remove cleanup.
4505         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
4506         (symtab_collector::release_symtabs): Return symtab_vector_up.
4507         Update all callers.
4508         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
4509         Update all users.
4510         (collect_symtabs_from_filename, symtabs_from_filename): Return
4511         symtab_vector_up.  Update all callers.
4512
4513 2018-08-29  Tom Tromey  <tom@tromey.com>
4514
4515         * csky-tdep.c (csky_analyze_prologue): Use
4516         core_addr_to_string_nz.
4517
4518 2018-08-29  Tom Tromey  <tom@tromey.com>
4519
4520         * windows-nat.c (struct xlate_exception) <them>: Change type to
4521         DWORD.
4522         (xlate): Fix formatting.  Remove last entry.
4523         (struct xlate_exception, xlate): Comment out.
4524         (windows_nat_target::resume): Use ranged for.
4525
4526 2018-08-29  Jim Wilson  <jimw@sifive.com>
4527
4528         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
4529         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
4530         of NT_PRFPREG.
4531         (riscv_linux_nat_target::store_registers): Likewise.
4532
4533 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
4534
4535         PR gdb/23555
4536         PR gdb/23558
4537         * gnulib/aclocal.m4: Regenerate.
4538         * gnulib/config.in: Regenerate.
4539         * gnulib/configure: Regenerate.
4540         * gnulib/import/Makefile.am: Update.
4541         * gnulib/import/Makefile.in: Update.
4542         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
4543         * gnulib/import/_Noreturn.h: ... this.
4544         * gnulib/import/alloca.in.h: Update.
4545         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
4546         * gnulib/import/arg-nonnull.h: ... this.
4547         * gnulib/import/assure.h: Update.
4548         * gnulib/import/at-func.c: Update.
4549         * gnulib/import/basename-lgpl.c: Update.
4550         * gnulib/import/extra/snippet/c++defs.h: Rename to...
4551         * gnulib/import/c++defs.h: ... this.
4552         * gnulib/import/canonicalize-lgpl.c: Update.
4553         * gnulib/import/cdefs.h: Update.
4554         * gnulib/import/chdir-long.c: Update.
4555         * gnulib/import/chdir-long.h: Update.
4556         * gnulib/import/cloexec.c: Update.
4557         * gnulib/import/cloexec.h: Update.
4558         * gnulib/import/close.c: Update.
4559         * gnulib/import/closedir.c: Update.
4560         * gnulib/import/config.charset: Update.
4561         * gnulib/import/dirent-private.h: Update.
4562         * gnulib/import/dirent.in.h: Update.
4563         * gnulib/import/dirfd.c: Update.
4564         * gnulib/import/dirname-lgpl.c: Update.
4565         * gnulib/import/dirname.h: Update.
4566         * gnulib/import/dosname.h: Update.
4567         * gnulib/import/dup-safer-flag.c: Update.
4568         * gnulib/import/dup-safer.c: Update.
4569         * gnulib/import/dup.c: Update.
4570         * gnulib/import/dup2.c: Update.
4571         * gnulib/import/errno.in.h: Update.
4572         * gnulib/import/error.c: Update.
4573         * gnulib/import/error.h: Update.
4574         * gnulib/import/exitfail.c: Update.
4575         * gnulib/import/exitfail.h: Update.
4576         * gnulib/import/extra/update-copyright: Update.
4577         * gnulib/import/fchdir.c: Update.
4578         * gnulib/import/fcntl.c: Update.
4579         * gnulib/import/fcntl.in.h: Update.
4580         * gnulib/import/fd-hook.c: Update.
4581         * gnulib/import/fd-hook.h: Update.
4582         * gnulib/import/fd-safer-flag.c: Update.
4583         * gnulib/import/fd-safer.c: Update.
4584         * gnulib/import/fdopendir.c: Update.
4585         * gnulib/import/filename.h: Update.
4586         * gnulib/import/filenamecat-lgpl.c: Update.
4587         * gnulib/import/filenamecat.h: Update.
4588         * gnulib/import/flexmember.h: Update.
4589         * gnulib/import/float+.h: Update.
4590         * gnulib/import/float.c: Update.
4591         * gnulib/import/float.in.h: Update.
4592         * gnulib/import/fnmatch.c: Update.
4593         * gnulib/import/fnmatch.in.h: Update.
4594         * gnulib/import/fnmatch_loop.c: Update.
4595         * gnulib/import/fpucw.h: Update.
4596         * gnulib/import/frexp.c: Update.
4597         * gnulib/import/frexpl.c: Update.
4598         * gnulib/import/fstat.c: Update.
4599         * gnulib/import/fstatat.c: Update.
4600         * gnulib/import/getcwd-lgpl.c: Update.
4601         * gnulib/import/getcwd.c: Update.
4602         * gnulib/import/getdtablesize.c: Update.
4603         * gnulib/import/getlogin_r.c: Update.
4604         * gnulib/import/getprogname.c: Update.
4605         * gnulib/import/getprogname.h: Update.
4606         * gnulib/import/gettext.h: Update.
4607         * gnulib/import/gettimeofday.c: Update.
4608         * gnulib/import/glob-libc.h: Update.
4609         * gnulib/import/glob.c: Update.
4610         * gnulib/import/glob.in.h: Update.
4611         * gnulib/import/glob_internal.h: Update.
4612         * gnulib/import/glob_pattern_p.c: Update.
4613         * gnulib/import/globfree.c: Update.
4614         * gnulib/import/hard-locale.c: Update.
4615         * gnulib/import/hard-locale.h: Update.
4616         * gnulib/import/intprops.h: Update.
4617         * gnulib/import/inttypes.in.h: Update.
4618         * gnulib/import/isnan.c: Update.
4619         * gnulib/import/isnand-nolibm.h: Update.
4620         * gnulib/import/isnand.c: Update.
4621         * gnulib/import/isnanl-nolibm.h: Update.
4622         * gnulib/import/isnanl.c: Update.
4623         * gnulib/import/itold.c: Update.
4624         * gnulib/import/libc-config.h: Update.
4625         * gnulib/import/limits.in.h: Update.
4626         * gnulib/import/localcharset.c: Update.
4627         * gnulib/import/localcharset.h: Update.
4628         * gnulib/import/localtime-buffer.c: Update.
4629         * gnulib/import/localtime-buffer.h: Update.
4630         * gnulib/import/lstat.c: Update.
4631         * gnulib/import/m4/00gnulib.m4: Update.
4632         * gnulib/import/m4/__inline.m4: Update.
4633         * gnulib/import/m4/absolute-header.m4: Update.
4634         * gnulib/import/m4/alloca.m4: Update.
4635         * gnulib/import/m4/builtin-expect.m4: Update.
4636         * gnulib/import/m4/canonicalize.m4: Update.
4637         * gnulib/import/m4/chdir-long.m4: Update.
4638         * gnulib/import/m4/close.m4: Update.
4639         * gnulib/import/m4/closedir.m4: Update.
4640         * gnulib/import/m4/configmake.m4: Update.
4641         * gnulib/import/m4/d-ino.m4: Update.
4642         * gnulib/import/m4/d-type.m4: Update.
4643         * gnulib/import/m4/dirent_h.m4: Update.
4644         * gnulib/import/m4/dirfd.m4: Update.
4645         * gnulib/import/m4/dirname.m4: Update.
4646         * gnulib/import/m4/double-slash-root.m4: Update.
4647         * gnulib/import/m4/dup.m4: Update.
4648         * gnulib/import/m4/dup2.m4: Update.
4649         * gnulib/import/m4/eealloc.m4: Update.
4650         * gnulib/import/m4/environ.m4: Update.
4651         * gnulib/import/m4/errno_h.m4: Update.
4652         * gnulib/import/m4/error.m4: Update.
4653         * gnulib/import/m4/exponentd.m4: Update.
4654         * gnulib/import/m4/exponentl.m4: Update.
4655         * gnulib/import/m4/extensions.m4: Update.
4656         * gnulib/import/m4/extern-inline.m4: Update.
4657         * gnulib/import/m4/fchdir.m4: Update.
4658         * gnulib/import/m4/fcntl-o.m4: Update.
4659         * gnulib/import/m4/fcntl.m4: Update.
4660         * gnulib/import/m4/fcntl_h.m4: Update.
4661         * gnulib/import/m4/fdopendir.m4: Update.
4662         * gnulib/import/m4/filenamecat.m4: Update.
4663         * gnulib/import/m4/flexmember.m4: Update.
4664         * gnulib/import/m4/float_h.m4: Update.
4665         * gnulib/import/m4/fnmatch.m4: Update.
4666         * gnulib/import/m4/fnmatch_h.m4: Update.
4667         * gnulib/import/m4/fpieee.m4: Update.
4668         * gnulib/import/m4/frexp.m4: Update.
4669         * gnulib/import/m4/frexpl.m4: Update.
4670         * gnulib/import/m4/fstat.m4: Update.
4671         * gnulib/import/m4/fstatat.m4: Update.
4672         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
4673         * gnulib/import/m4/getcwd-path-max.m4: Update.
4674         * gnulib/import/m4/getcwd.m4: Update.
4675         * gnulib/import/m4/getdtablesize.m4: Update.
4676         * gnulib/import/m4/getlogin.m4: Update.
4677         * gnulib/import/m4/getlogin_r.m4: Update.
4678         * gnulib/import/m4/getpagesize.m4: Update.
4679         * gnulib/import/m4/getprogname.m4: Update.
4680         * gnulib/import/m4/gettimeofday.m4: Update.
4681         * gnulib/import/m4/glibc21.m4: Update.
4682         * gnulib/import/m4/glob.m4: Update.
4683         * gnulib/import/m4/glob_h.m4: Update.
4684         * gnulib/import/m4/gnulib-cache.m4: Update.
4685         * gnulib/import/m4/gnulib-common.m4: Update.
4686         * gnulib/import/m4/gnulib-comp.m4: Update.
4687         * gnulib/import/m4/gnulib-tool.m4: Update.
4688         * gnulib/import/m4/hard-locale.m4: Update.
4689         * gnulib/import/m4/include_next.m4: Update.
4690         * gnulib/import/m4/inttypes-pri.m4: Update.
4691         * gnulib/import/m4/inttypes.m4: Update.
4692         * gnulib/import/m4/isnand.m4: Update.
4693         * gnulib/import/m4/isnanl.m4: Update.
4694         * gnulib/import/m4/largefile.m4: Update.
4695         * gnulib/import/m4/limits-h.m4: Update.
4696         * gnulib/import/m4/localcharset.m4: Update.
4697         * gnulib/import/m4/locale-fr.m4: Update.
4698         * gnulib/import/m4/locale-ja.m4: Update.
4699         * gnulib/import/m4/locale-zh.m4: Update.
4700         * gnulib/import/m4/localtime-buffer.m4: Update.
4701         * gnulib/import/m4/longlong.m4: Update.
4702         * gnulib/import/m4/lstat.m4: Update.
4703         * gnulib/import/m4/malloc.m4: Update.
4704         * gnulib/import/m4/malloca.m4: Update.
4705         * gnulib/import/m4/math_h.m4: Update.
4706         * gnulib/import/m4/mbrtowc.m4: Update.
4707         * gnulib/import/m4/mbsinit.m4: Update.
4708         * gnulib/import/m4/mbsrtowcs.m4: Update.
4709         * gnulib/import/m4/mbstate_t.m4: Update.
4710         * gnulib/import/m4/memchr.m4: Update.
4711         * gnulib/import/m4/memmem.m4: Update.
4712         * gnulib/import/m4/mempcpy.m4: Update.
4713         * gnulib/import/m4/memrchr.m4: Update.
4714         * gnulib/import/m4/mkdir.m4: Update.
4715         * gnulib/import/m4/mkstemp.m4: Update.
4716         * gnulib/import/m4/mmap-anon.m4: Update.
4717         * gnulib/import/m4/mode_t.m4: Update.
4718         * gnulib/import/m4/msvc-inval.m4: Update.
4719         * gnulib/import/m4/msvc-nothrow.m4: Update.
4720         * gnulib/import/m4/multiarch.m4: Update.
4721         * gnulib/import/m4/nocrash.m4: Update.
4722         * gnulib/import/m4/off_t.m4: Update.
4723         * gnulib/import/m4/onceonly.m4: Update.
4724         * gnulib/import/m4/open-cloexec.m4: Update.
4725         * gnulib/import/m4/open.m4: Update.
4726         * gnulib/import/m4/openat.m4: Update.
4727         * gnulib/import/m4/opendir.m4: Update.
4728         * gnulib/import/m4/pathmax.m4: Update.
4729         * gnulib/import/m4/rawmemchr.m4: Update.
4730         * gnulib/import/m4/readdir.m4: Update.
4731         * gnulib/import/m4/readlink.m4: Update.
4732         * gnulib/import/m4/realloc.m4: Update.
4733         * gnulib/import/m4/rename.m4: Update.
4734         * gnulib/import/m4/rewinddir.m4: Update.
4735         * gnulib/import/m4/rmdir.m4: Update.
4736         * gnulib/import/m4/save-cwd.m4: Update.
4737         * gnulib/import/m4/secure_getenv.m4: Update.
4738         * gnulib/import/m4/setenv.m4: Update.
4739         * gnulib/import/m4/signal_h.m4: Update.
4740         * gnulib/import/m4/ssize_t.m4: Update.
4741         * gnulib/import/m4/stat-time.m4: Update.
4742         * gnulib/import/m4/stat.m4: Update.
4743         * gnulib/import/m4/std-gnu11.m4: Update.
4744         * gnulib/import/m4/stdbool.m4: Update.
4745         * gnulib/import/m4/stddef_h.m4: Update.
4746         * gnulib/import/m4/stdint.m4: Update.
4747         * gnulib/import/m4/stdio_h.m4: Update.
4748         * gnulib/import/m4/stdlib_h.m4: Update.
4749         * gnulib/import/m4/strchrnul.m4: Update.
4750         * gnulib/import/m4/strdup.m4: Update.
4751         * gnulib/import/m4/strerror.m4: Update.
4752         * gnulib/import/m4/string_h.m4: Update.
4753         * gnulib/import/m4/strstr.m4: Update.
4754         * gnulib/import/m4/strtok_r.m4: Update.
4755         * gnulib/import/m4/sys_socket_h.m4: Update.
4756         * gnulib/import/m4/sys_stat_h.m4: Update.
4757         * gnulib/import/m4/sys_time_h.m4: Update.
4758         * gnulib/import/m4/sys_types_h.m4: Update.
4759         * gnulib/import/m4/tempname.m4: Update.
4760         * gnulib/import/m4/time_h.m4: Update.
4761         * gnulib/import/m4/unistd-safer.m4: Update.
4762         * gnulib/import/m4/unistd_h.m4: Update.
4763         * gnulib/import/m4/warn-on-use.m4: Update.
4764         * gnulib/import/m4/wchar_h.m4: Update.
4765         * gnulib/import/m4/wchar_t.m4: Update.
4766         * gnulib/import/m4/wctype_h.m4: Update.
4767         * gnulib/import/m4/wint_t.m4: Update.
4768         * gnulib/import/malloc.c: Update.
4769         * gnulib/import/malloc/scratch_buffer.h: Update.
4770         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
4771         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
4772         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
4773         * gnulib/import/malloca.c: Update.
4774         * gnulib/import/malloca.h: Update.
4775         * gnulib/import/malloca.valgrind: Update.
4776         * gnulib/import/math.in.h: Update.
4777         * gnulib/import/mbrtowc.c: Update.
4778         * gnulib/import/mbsinit.c: Update.
4779         * gnulib/import/mbsrtowcs-impl.h: Update.
4780         * gnulib/import/mbsrtowcs-state.c: Update.
4781         * gnulib/import/mbsrtowcs.c: Update.
4782         * gnulib/import/memchr.c: Update.
4783         * gnulib/import/memmem.c: Update.
4784         * gnulib/import/mempcpy.c: Update.
4785         * gnulib/import/memrchr.c: Update.
4786         * gnulib/import/mkdir.c: Update.
4787         * gnulib/import/mkstemp.c: Update.
4788         * gnulib/import/msvc-inval.c: Update.
4789         * gnulib/import/msvc-inval.h: Update.
4790         * gnulib/import/msvc-nothrow.c: Update.
4791         * gnulib/import/msvc-nothrow.h: Update.
4792         * gnulib/import/open.c: Update.
4793         * gnulib/import/openat-die.c: Update.
4794         * gnulib/import/openat-priv.h: Update.
4795         * gnulib/import/openat-proc.c: Update.
4796         * gnulib/import/openat.c: Update.
4797         * gnulib/import/openat.h: Update.
4798         * gnulib/import/opendir.c: Update.
4799         * gnulib/import/pathmax.h: Update.
4800         * gnulib/import/pipe-safer.c: Update.
4801         * gnulib/import/rawmemchr.c: Update.
4802         * gnulib/import/readdir.c: Update.
4803         * gnulib/import/readlink.c: Update.
4804         * gnulib/import/realloc.c: Update.
4805         * gnulib/import/ref-add.sin: Update.
4806         * gnulib/import/ref-del.sin: Update.
4807         * gnulib/import/rename.c: Update.
4808         * gnulib/import/rewinddir.c: Update.
4809         * gnulib/import/rmdir.c: Update.
4810         * gnulib/import/same-inode.h: Update.
4811         * gnulib/import/save-cwd.c: Update.
4812         * gnulib/import/save-cwd.h: Update.
4813         * gnulib/import/scratch_buffer.h: Update.
4814         * gnulib/import/secure_getenv.c: Update.
4815         * gnulib/import/setenv.c: Update.
4816         * gnulib/import/signal.in.h: Update.
4817         * gnulib/import/stat-time.c: Update.
4818         * gnulib/import/stat-time.h: Update.
4819         * gnulib/import/stat-w32.c: Update.
4820         * gnulib/import/stat-w32.h: Update.
4821         * gnulib/import/stat.c: Update.
4822         * gnulib/import/stdbool.in.h: Update.
4823         * gnulib/import/stddef.in.h: Update.
4824         * gnulib/import/stdint.in.h: Update.
4825         * gnulib/import/stdio.in.h: Update.
4826         * gnulib/import/stdlib.in.h: Update.
4827         * gnulib/import/str-two-way.h: Update.
4828         * gnulib/import/strchrnul.c: Update.
4829         * gnulib/import/strdup.c: Update.
4830         * gnulib/import/streq.h: Update.
4831         * gnulib/import/strerror-override.c: Update.
4832         * gnulib/import/strerror-override.h: Update.
4833         * gnulib/import/strerror.c: Update.
4834         * gnulib/import/string.in.h: Update.
4835         * gnulib/import/stripslash.c: Update.
4836         * gnulib/import/strnlen1.c: Update.
4837         * gnulib/import/strnlen1.h: Update.
4838         * gnulib/import/strstr.c: Update.
4839         * gnulib/import/strtok_r.c: Update.
4840         * gnulib/import/sys_stat.in.h: Update.
4841         * gnulib/import/sys_time.in.h: Update.
4842         * gnulib/import/sys_types.in.h: Update.
4843         * gnulib/import/tempname.c: Update.
4844         * gnulib/import/tempname.h: Update.
4845         * gnulib/import/time.in.h: Update.
4846         * gnulib/import/unistd--.h: Update.
4847         * gnulib/import/unistd-safer.h: Update.
4848         * gnulib/import/unistd.in.h: Update.
4849         * gnulib/import/unsetenv.c: Update.
4850         * gnulib/import/verify.h: Update.
4851         * gnulib/import/extra/snippet/warn-on-use.h: Update.
4852         * gnulib/import/wchar.in.h: Update.
4853         * gnulib/import/wctype.in.h: Update.
4854         * gnulib/import/xalloc-oversized.h: Update.
4855         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
4856         "53e2c179f26a890fa6685af4b6c1397ee370433b".
4857
4858 2018-08-16  Gary Benson <gbenson@redhat.com>
4859
4860         PR gdb/13000:
4861         * gdb/main.c (captured_main_1): Exit with nonzero status
4862         in batch mode if the last command to be executed failed.
4863         * NEWS: Mention the above.
4864
4865 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
4866
4867         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
4868         end of warning message.
4869
4870 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4871
4872         PR gdb/22943:
4873         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
4874         (aarch64_extract_return_value): Use
4875         aapcs_is_vfp_call_or_return_candidate.
4876         (aarch64_return_in_memory): Likewise.
4877         (aarch64_store_return_value): Likewise.
4878
4879 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4880
4881         * aarch64-tdep.c
4882         (aapcs_is_vfp_call_or_return_candidate): Make static
4883         (pass_in_v_or_stack): Remove function.
4884         (pass_in_v_vfp_candidate): New function.
4885         (aarch64_push_dummy_call): Check for float register candidates.
4886
4887 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4888
4889         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
4890         (aapcs_is_vfp_call_or_return_candidate_1): New function.
4891         (aapcs_is_vfp_call_or_return_candidate): Likewise.
4892
4893 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
4894
4895         PR build/23399
4896         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
4897         (struct ipa_sym_addresses): Rename to...
4898         (struct ipa_sym_addresses_common): ... this.
4899         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
4900
4901 2018-08-28  Tom Tromey  <tom@tromey.com>
4902
4903         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4904         (token_fifo): Now a std::vector.
4905         (yylex, c_parse): Update.
4906         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4907         (token_fifo): Now a std::vector.
4908         (yylex, d_parse): Update.
4909         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4910         (token_fifo): Now a std::vector.
4911         (yylex, go_parse): Update.
4912
4913 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
4914
4915         * parser-defs.h (struct type_stack) <elements>: Change type to
4916         std::vector<union type_stack_elt>.
4917         <depth, size>: Remove.
4918         * parse.c (parse_exp_in_context_1): Adjust.
4919         (type_stack_reserve): Remove.
4920         (check_type_stack_depth): Remove.
4921         (insert_into_type_stack): Adjust to std::vector.
4922         (insert_type): Likewise.
4923         (push_type): Likewise.
4924         (push_type_int): Likewise.
4925         (insert_type_address_space): Likewise.
4926         (pop_type): Likewise.
4927         (pop_type_int): Likewise.
4928         (pop_typelist): Likewise.
4929         (pop_type_stack): Likewise.
4930         (append_type_stack): Likewise.
4931         (push_type_stack): Likewise.
4932         (get_type_stack): Likewise.
4933         (type_stack_cleanup): Likewise.
4934         (push_typelist): Likewise.
4935         (follow_types): Likewise.
4936         (_initialize_parse): Likewise.
4937
4938 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
4939
4940         * NEWS: Mention csky target.
4941
4942 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
4943             Hafiz Abid Qadeer  <abidh@codesourcery.com>
4944             Don Breazeal  <donb@codesourcery.com>
4945
4946         * csky-linux-tdep.c: New file.
4947         * csky-tdep.c: Likewise.
4948         * csky-tdep.h: Likewise.
4949         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
4950         csky-tdep.o.
4951         (HFILES_NO_SRCDIR): Add csky-tdep.h.
4952         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
4953         * configure.tgt: Add csky support.
4954
4955 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
4956
4957         * python/py-framefilter.c (py_print_frame): Print frame architecture
4958         when printing on an MI output.
4959
4960 2018-08-27  Tom Tromey  <tom@tromey.com>
4961
4962         PR build/23087:
4963         * configure: Rebuild.
4964         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
4965
4966 2018-08-27  Tom Tromey  <tom@tromey.com>
4967
4968         * aarch64-linux-tdep.c
4969         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
4970         casts to int.
4971
4972 2018-08-27  Tom Tromey  <tom@tromey.com>
4973
4974         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
4975         unsigned.
4976         (ppc64_standard_linkage1, ppc64_standard_linkage2)
4977         (ppc64_standard_linkage3, ppc64_standard_linkage4)
4978         (ppc64_standard_linkage5, ppc64_standard_linkage6)
4979         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
4980         unsigned.
4981
4982 2018-08-27  Tom Tromey  <tom@tromey.com>
4983
4984         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
4985         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
4986
4987 2018-08-27  Tom Tromey  <tom@tromey.com>
4988
4989         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
4990         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
4991         ULONGEST_MAX.
4992         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
4993         ULONGEST_MAX.
4994         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
4995         ULONGEST_MAX.
4996         * sparc-linux-tdep.c (sparc32_linux_sigframe)
4997         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
4998         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
4999         ULONGEST_MAX.
5000         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
5001         (ppc64_linux_sigaction_tramp_frame)
5002         (ppc32_linux_sighandler_tramp_frame)
5003         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
5004         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
5005         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
5006         * mn10300-linux-tdep.c (am33_linux_sigframe)
5007         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
5008         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
5009         * mips-linux-tdep.c (mips_linux_o32_sigframe)
5010         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
5011         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
5012         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
5013         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
5014         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
5015         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
5016         * microblaze-linux-tdep.c
5017         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
5018         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
5019         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
5020         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
5021         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
5022         * common/common-types.h (ULONGEST_MAX): New define.
5023         (CORE_ADDR_MAX): Fix formatting.
5024         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
5025         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
5026         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
5027         (arm_linux_rt_sigreturn_tramp_frame)
5028         (arm_eabi_linux_sigreturn_tramp_frame)
5029         (arm_eabi_linux_rt_sigreturn_tramp_frame)
5030         (thumb2_eabi_linux_sigreturn_tramp_frame)
5031         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
5032         (arm_linux_restart_syscall_tramp_frame)
5033         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
5034         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
5035         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
5036         ULONGEST_MAX.
5037         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
5038
5039 2018-08-27  Tom Tromey  <tom@tromey.com>
5040
5041         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
5042         CORE_ADDR_MAX.
5043         * mips-tdep.c (mips_deal_with_atomic_sequence)
5044         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
5045         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
5046         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
5047         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
5048         CORE_ADDR_MAX.
5049         * aarch64-tdep.c (aarch64_software_single_step): Use
5050         CORE_ADDR_MAX.
5051
5052 2018-08-27  Tom Tromey  <tom@tromey.com>
5053
5054         * linespec.c (complete_linespec_component): Add cast to "char".
5055         * completer.c (completion_tracker::build_completion_result): Add
5056         cast to "char".
5057
5058 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
5059
5060         * solist.h (struct solist, struct target_so_ops): Fix
5061         indentation.
5062
5063 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
5064
5065         * ada-tasks.c (ada_task_info_s): Remove typedef.
5066         (DEF_VEC_O(ada_task_info_s)): Remove.
5067         (struct ada_tasks_inferior_data): Initialize fields.
5068         <task_list>: Make an std::vector.
5069         (get_ada_tasks_inferior_data): Allocate with new.
5070         (ada_get_task_number): Adjust.
5071         (get_task_number_from_id): Likewise.
5072         (valid_task_id): Likewise.
5073         (ada_get_task_info_from_ptid): Likewise.
5074         (iterate_over_live_ada_tasks): Likewise.
5075         (add_ada_task): Likewise.
5076         (read_known_tasks): Likewise.
5077         (ada_build_task_list): Likewise.
5078         (print_ada_task_info): Likewise.
5079         (info_task): Likewise.
5080         (task_command_1): Likewise.
5081
5082 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
5083
5084         * ada-lang.c (add_angle_brackets): Return std::string.
5085
5086 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
5087
5088         * python/py-threadevent.c (py_get_event_thread): Initialize
5089         pythread.
5090
5091 2018-08-24  Pedro Alves  <palves@redhat.com>
5092
5093         * python/py-bpevent.c (create_breakpoint_event_object): Use
5094         copy-initialization.
5095         * python/py-continueevent.c (emit_continue_event): Use
5096         copy-initialization.
5097         * python/py-exitedevent.c (create_exited_event_object): Return a
5098         gdbpy_ref<>.
5099         (emit_exited_event): Use copy-initialization.
5100         * python/py-inferior.c (python_new_inferior)
5101         (python_inferior_deleted, add_thread_object): Use
5102         copy-initialization.
5103         * python/py-infevents.c (create_inferior_call_event_object)
5104         (create_register_changed_event_object)
5105         (create_memory_changed_event_object): Return a gdbpy_ref<>.
5106         (emit_inferior_call_event, emit_memory_changed_event)
5107         (emit_register_changed_event): Use copy-initialization.
5108         * python/py-newobjfileevent.c (create_new_objfile_event_object):
5109         Return a gdbpy_ref<>.
5110         (emit_new_objfile_event): Use copy-initialization.
5111         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
5112         (emit_clear_objfiles_event): Use copy-initialization.
5113         * python/py-signalevent.c (create_signal_event_object): Use
5114         copy-initialization.
5115         * python/py-threadevent.c (create_thread_event_object): Use
5116         copy-initialization.
5117
5118 2018-08-24  Pedro Alves  <palves@redhat.com>
5119             Simon Marchi  <simon.marchi@ericsson.com>
5120
5121         PR gdb/23379
5122         * python/py-continueevent.c: Include "gdbthread.h".
5123         (create_continue_event_object): Add intro comment.  Add 'ptid'
5124         parameter.  Use it to find thread to pass to
5125         create_thread_event_object.
5126         (emit_continue_event): Pass PTID down to
5127         create_continue_event_object.
5128         * python/py-event.h (py_get_event_thread): Declare.
5129         (create_thread_event_object): Remove default from 'thread'
5130         parameter.
5131         * python/py-stopevent.c (create_stop_event_object): Use
5132         py_get_event_thread.
5133         * python/py-threadevent.c (get_event_thread): Rename to ...
5134         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
5135         and use it to find the thread.
5136         (create_thread_event_object): Assert that THREAD isn't null.
5137         Don't find the event thread here.
5138
5139 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
5140
5141         * block.h (blockrange, blockranges): New struct declarations.
5142         (struct block): Add new field named `ranges'.
5143         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
5144         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
5145         macros for accessing ranges in struct block.
5146         (make_blockranges): New declaration.
5147         block.c (make_blockranges): New function.
5148         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
5149         for block.
5150         * symtab.h (find_pc_partial_function): Add new parameter `block'.
5151         * blockframe.c (cache_pc_function_block): New static global.
5152         (clear_pc_function_cache): Clear cache_pc_function_block.
5153         (find_pc_partial_function): Move comment to symtab.h.  Add
5154         support for non-contiguous blocks.
5155         * cli/cli-cmds.c (block.h): Include.
5156         (print_disassembly): Handle printing of non-contiguous blocks.
5157         (disassemble_current_function): Likewise.
5158         (disassemble_command): Likewise.
5159
5160         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
5161         BLOCK_START.
5162         * blockframe.c (get_pc_function_start): Likewise.
5163         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
5164         (gcc_symbol_address): Likewise.
5165         * compile/compile-object-run.c (compile_object_run): Likewise.
5166         * compile/compile.c (get_expr_block_and_pc): Likewise.
5167         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
5168         (func_addr_to_tail_call_list): Likewise.
5169         * findvar.c (default_read_var_value): Likewise.
5170         * inline-frame.c (inline_frame_this_id): Likewise.
5171         (skip-inline_frames): Likewise.
5172         * infcmd.c (until_next_command): Likewise.
5173         * linespec.c (convert_linespec_to_sals): Likewise.
5174         * parse.c (parse_exp_in_context_1): Likewise.
5175         * printcmd.c (build_address_symbolic): likewise.
5176         (info_address_command): Likewise.
5177         symtab.c (find_function_start_sal): Likewise.
5178         (skip_prologue_sal): Likewise.
5179         (find_function_alias_target): Likewise.
5180         (find_gnu_ifunc): Likewise.
5181         * stack.c (find_frame_funname): Likewise.
5182         * symtab.c (fixup_symbol_section): Likewise.
5183         (find_function_start_sal): Likewise.
5184         (skip_prologue_sal): Likewsie.
5185         (find_function_alias_target): Likewise.
5186         (find_gnu_ifunc): Likewise.
5187         * tracepoint.c (info_scope_command): Likewise.
5188         * value.c (value_fn_field): Likewise.
5189
5190         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
5191         in place of find_pc_partial_function.
5192         * blockframe.c (find_function_entry_range_from_pc): New function.
5193         * symtab.h (find_function_entry_range_from_pc): Declare and document.
5194         * objfiles.c (objfile_relocate1): Relocate start and end addresses
5195         for each range in a block.
5196
5197
5198 2018-08-23  Xavier Roirand  <roirand@adacore.com>
5199
5200         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
5201         incrementation.
5202
5203 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5204
5205         * solib-svr4.c (read_program_headers_from_bfd): Return
5206         gdb::optional<gdb::byte_vector>.
5207         (svr4_exec_displacement): Adjust.
5208
5209 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5210
5211         * solib-svr4.c (read_program_header): Return
5212         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
5213         (find_program_interpreter): Return
5214         gdb::optional<gdb::byte_vector>.
5215         (scan_dyntag_auxv): Adjust.
5216         (enable_break): Adjust.
5217         (svr4_exec_displacement): Adjust.
5218
5219 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5220
5221         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
5222         * inf-child.c (inf_child_target::terminal_save_inferior): New.
5223
5224 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5225
5226         * guile/scm-string.c (gdbscm_scm_from_printf): Use
5227         string_vprintf.
5228         * guile/scm-utils.c (gdbscm_printf): Likewise.
5229         * serial.c (serial_printf): Likewise.
5230         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
5231
5232 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
5233
5234         * stack.c (print_frame): Print frame architecture when printing on
5235         an MI output.
5236         * NEWS: Mention new "arch" attribute in frame output.
5237
5238 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
5239
5240         * arch/aarch64.h (aarch64_regnum): Update comment.
5241
5242 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
5243
5244         * NEWS: Add SVE to 8.2 section.
5245
5246 2018-08-21  Pedro Alves  <palves@redhat.com>
5247
5248         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
5249         out from gdbscm_parse_function_args.
5250         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
5251         gdbscm_parse_function_args_1.
5252
5253 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
5254
5255         PR gdb/17816
5256         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
5257         operator.
5258
5259 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
5260
5261         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
5262
5263 2018-08-19  Michael Spang  <spang@google.com>
5264
5265         PR gdb/11786
5266         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
5267         for PT_TLS segments.
5268
5269 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
5270
5271         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
5272         dwarf_variable_value.
5273         * dwarf2-frame.c (class dwarf_expr_executor):
5274         Add override for dwarf_variable_value.
5275         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
5276         (class symbol_needs_eval_context): Likewise.
5277         (indirect_synthetic_pointer): Add forward declaration.
5278         (sect_variable_value): New function.
5279         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
5280         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
5281         for DW_OP_GNU_variable_value.
5282
5283 2018-08-16  Tom Tromey  <tom@tromey.com>
5284
5285         * top.c (read_command_file): Update.
5286         (command_line_input): Remove "repeat" argument.
5287         * ada-lang.c (get_selections): Update.
5288         * linespec.c (decode_line_2): Update.
5289         * defs.h (command_line_input): Remove argument.
5290         * cli/cli-script.c (read_next_line): Update.
5291         * python/py-gdb-readline.c: Update.
5292
5293 2018-08-17  Tom Tromey  <tom@tromey.com>
5294
5295         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
5296         command_line_input.
5297
5298 2018-08-15  Tom Tromey  <tom@tromey.com>
5299
5300         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
5301
5302 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
5303
5304         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
5305         If used, use find_pc_partial_function to find address range
5306         to disassemble.
5307         * mi/mi-main.c (mi_cmd_list_features): Report
5308         "data-disassemble-a-option" feature.
5309         * NEWS: Mention new -data-disassemble option -a.
5310
5311 2018-08-13  Tom Tromey  <tom@tromey.com>
5312
5313         * common/common-defs.h (_FORTIFY_SOURCE): Define.
5314
5315 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5316
5317         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
5318         (aarch64_linux_collect_sve_regset): Likewise.
5319         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
5320         * regcache.h (regcache_map_entry_size): New function.
5321
5322 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5323
5324         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
5325         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
5326         (SVE_HEADER_VL_LENGTH): Likewise.
5327         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
5328         (SVE_HEADER_FLAGS_LENGTH): Likewise.
5329         (SVE_HEADER_RESERVED_LENGTH): Likewise.
5330         (SVE_HEADER_SIZE_OFFSET): Likewise.
5331         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
5332         (SVE_HEADER_VL_OFFSET): Likewise.
5333         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
5334         (SVE_HEADER_FLAGS_OFFSET): Likewise.
5335         (SVE_HEADER_RESERVED_OFFSET): Likewise.
5336         (SVE_HEADER_SIZE): Likewise.
5337         (aarch64_linux_core_read_vq): Add function.
5338         (aarch64_linux_core_read_description): Check for SVE section.
5339
5340 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5341
5342         * aarch64-fbsd-tdep.c
5343         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
5344         collect_size.
5345         * aarch64-linux-tdep.c
5346         (aarch64_linux_iterate_over_regset_sections): Likewise.
5347         * alpha-linux-tdep.c
5348         (alpha_linux_iterate_over_regset_sections):
5349         * alpha-nbsd-tdep.c
5350         (alphanbsd_iterate_over_regset_sections): Likewise.
5351         * amd64-fbsd-tdep.c
5352         (amd64fbsd_iterate_over_regset_sections): Likewise.
5353         * amd64-linux-tdep.c
5354         (amd64_linux_iterate_over_regset_sections): Likewise.
5355         * arm-bsd-tdep.c
5356         (armbsd_iterate_over_regset_sections): Likewise.
5357         * arm-fbsd-tdep.c
5358         (arm_fbsd_iterate_over_regset_sections): Likewise.
5359         * arm-linux-tdep.c
5360         (arm_linux_iterate_over_regset_sections): Likewise.
5361         * corelow.c (get_core_registers_cb): Likewise.
5362         (core_target::fetch_registers): Likewise.
5363         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
5364         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
5365         * gdbarch.h (void): Regenerate.
5366         * gdbarch.sh: Add supply_size and collect_size.
5367         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
5368         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
5369         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
5370         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
5371         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
5372         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
5373         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
5374         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
5375         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
5376         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
5377         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
5378         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
5379         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
5380         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
5381         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections):
5382         Likewise.
5383         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
5384         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
5385         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
5386         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
5387         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
5388         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
5389         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections):
5390         Likewise.
5391         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
5392         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
5393         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
5394         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
5395         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
5396         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
5397         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
5398         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
5399
5400 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
5401
5402         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
5403         with string_printf.
5404
5405 2018-08-10  Keith Seitz  <keiths@redhat.com>
5406
5407         * compile/compile-c-support.c (add_code_header, add_code_footer):
5408         Move into policy class.
5409         (c_push_user_expression, pop_user_expression_nop)
5410         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
5411         (compile_program): New host class.
5412         (c_compile_program): New typedef.
5413         (c_compute_porgram): Use c_compile_program.
5414
5415 2018-08-10  Keith Seitz  <keiths@redhat.com>
5416
5417         * compile/compile-internal.h (compile_instance::~compile_instance):
5418         Remove calls to htab_delete.
5419         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
5420         * compile.c (compile_instance::compile_instance): Initialize
5421         htab unique pointers.
5422         (compile_instance::get_cached_type, compile_instance::insert_type)
5423         (compile_instance::error_symbol_once): Update for unique_ptr.
5424
5425 2018-08-10  Keith Seitz  <keiths@redhat.com>
5426
5427         * compile/compile-c-symbols.c (struct symbol_error)
5428         (hash_symbol_error, eq_symbol_error, del_symbol_error)
5429         (compile_instance::insert_symbol_error)
5430         (compile_instance::error_symbol_once): Move to ...
5431         * compile/compile.c: ... here.
5432
5433 2018-08-10  Keith Seitz  <keiths@redhat.com>
5434
5435         * compile/compile-c-support.c (c_get_compile_context): Use `new'
5436         instead of `new_compile_instance'.
5437         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
5438         Update description.
5439         If the symbol error map is not initialized, create it.
5440         (generate_c_for_for_one_symbol): Do not check/initialize
5441         the symbol error map.
5442         * compile/compile-c-types.c (compile_c_instance): Make a class.
5443         Update all callers.
5444         (compile_instance::compile_instance): Initialize the type cache.
5445         (get_cached_type): New function.
5446         (insert_type): Update description.
5447         (compile_c_instance::m_default_cflags): Define.
5448         (convert_type): Update description.  Use get_cached_type.
5449         (delete_instance): Moved to destructor.
5450         (new_compile_instance): Moved to constructor.
5451         * compile/compile-c.h (compile_c_instance): Make class inheriting
5452         from compile_instance.
5453         <base>: Remove field.
5454         <type_map, symbol_err_map>: Move to base class.
5455         <c_plugin>: Rename to `m_plugin' and remove pointer type.
5456         * compile/compile-internal.h (compile_instance): Make class.
5457         <type_map_t, symbol_err_map_t>: Define.
5458         <fe>: Rename to `m_gcc_fe'.
5459         <scope, block, gcc_target_options>: Add `m_' prefix.
5460         <m_type_map, m_symbol_err_map>: New fields, moved from
5461         compile_c_instance.
5462         <destroy>: Remove.
5463         (convert_type, new_compile_instance): Remove.
5464         * compile/compile.c (cleanup_compile_instance): Remove.
5465         (compile_to_object): Use unique_ptr to eliminate cleanups.
5466         (compile_instance::set_print_callback, compile_instance::version)
5467         (compile_instance::set_verbose)
5468         (compile_instance::set_driver_filename)
5469         (compile_instance::set_triplet_regexp)
5470         (compile_instance::set_arguments)
5471         (compile_instance::set_source_file)
5472         (compile_instance::compile): Define.
5473
5474 2018-08-10  Keith Seitz  <keiths@redhat.com>
5475
5476         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
5477         * compile/compile-c-types.c: Define GCC_METHODN macros and include
5478         gcc-c-fe.def to define C plugin.
5479         (delete_instance): Delete `c_plugin'.
5480         (new_compile_instance): Initialize `c_plugin'.
5481         * compile/compile-c.h: Include gcc_c_plugin.h.
5482         (struct compile_c_instance) <c_plugin>: New member.
5483         * gcc-c-plugin.h: New file.
5484         Update all callers with API change.
5485
5486 2018-08-10  Keith Seitz  <keiths@redhat.com>
5487
5488         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
5489         (HFILES_NO_SRCDIR): ... to here.
5490         Add compile-internal.h and compile-c.h.
5491         * compile/compile-c-support.c: Include compile-c.h.
5492         * compile/compile-c-symbols.c: Include compile-c.h.
5493         (generate_c_for_variable_locations): Update comment.
5494         * compile/compile-c-types.c: Include compile-c.h.
5495         * compile/compile-c.h: New file -- moved C language declarations
5496         from other files here.
5497         * compile/compile-internal.h: Do not include hashtab.h or
5498         common/enum-flags.h.
5499         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
5500         (gcc_convert_symbol, gcc_symbol_address)
5501         (generate_c_for_variable_locations, c_get_mode_for_size)
5502         (c_get_range_decl_name): Definitions moved to compile-c.h.
5503         * compile/compile-loc2c.c: Include compile-c.h.
5504
5505 2018-08-10  Keith Seitz  <keiths@redhat.com>
5506
5507         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
5508         (c_symbol_substitution_name): ... this.
5509         Update all callers.
5510
5511 2018-08-10  Keith Seitz  <keiths@redhat.com>
5512
5513         * compile/compile-c-support.c (c_compute_program): Use
5514         unique_xmalloc_ptr to eliminate cleanup.
5515         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
5516         Return a unique_xmalloc_ptr and eliminate cleanup.
5517         * compile/compile-internal.h (generate_c_for_variable_locations):
5518         Return unique_xmalloc_ptr and update description.
5519
5520 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
5521
5522         * corelow.c (core_target::get_core_register_section): Rename
5523         min_size to section_min_size.
5524
5525 2018-08-09  Jim Wilson  <jimw@sifive.com>
5526
5527         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
5528         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
5529         * NEWS: Mention new GNU/Linux RISC-V target.
5530         * configure.host: Add riscv*-*-linux*.
5531         * configure.nat: Add riscv*.
5532         * configure.tgt: Add riscv*-*-linux*.
5533         * riscv-linux-nat.c: New file.
5534         * riscv-linux-tdep.c: New file.
5535
5536 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5537
5538         * infrun.c (resume): Make static, add forward declaration.
5539         (proceed): Update header comment.
5540         * infrun.h (resume): Delete declaration.
5541
5542 2018-08-09  Tom Tromey  <tom@tromey.com>
5543
5544         * riscv-tdep.h: Minor formatting fixes.
5545
5546 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
5547
5548         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
5549         * dwarf-index-cache.c (create_dir_and_check): Likewise.
5550         (test_mkdir_recursive): Likewise.
5551         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
5552
5553 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5554
5555         * valarith.c (value_subscripted_rvalue): If an array is not in
5556         memory, and we don't know the upper bound, then we can't know that
5557         the requested element exists or not.
5558
5559 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
5560
5561         * target.c (str_comma_list_concat_elem): Fix typo in comment.
5562         (target_options_to_string): Add comment.
5563
5564 2018-08-08  Tom Tromey  <tom@tromey.com>
5565
5566         * unittests/scoped_mmap-selftests.c: Check result of "write".
5567
5568 2018-08-08  Jim Wilson  <jimw@sifive.com>
5569
5570         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
5571         (decode_register_index_short): New.
5572         (decode_j_type_insn, decode_cj_type_insn): New.
5573         (decode_b_type_insn, decode_cb_type_insn): New.
5574         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
5575         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
5576         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
5577         is_c_sw_insn instead of is_sw_insn.
5578         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
5579         (riscv_software_single_step): New.
5580         * riscv-tdep.h (riscv_software_single_step): Declare.
5581
5582         * riscv-tdep.c (riscv_isa_xlen): Drop static.
5583         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
5584
5585 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
5586
5587         PR gdb/18050:
5588         * target.c (dispose_inferior): Don't dispose of inferiors that are
5589         already killed.
5590
5591 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
5592
5593         * remote.c (remote_target::download_tracepoint): Change char* to
5594         const char*.
5595
5596 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
5597
5598         * target.h (target_options_to_string): Return an std::string.
5599         * target.c (str_comma_list_concat_elem): Return void, use
5600         std::string.
5601         (do_option): Likewise.
5602         (target_options_to_string): Return an std::string.
5603         * linux-nat.c (linux_nat_target::wait): Adjust.
5604         * target-debug.h (target_debug_print_options): Adjust.
5605
5606 2018-08-07  Tom Tromey  <tom@tromey.com>
5607
5608         * Makefile.in (CPPFLAGS): New variable.
5609         (INTERNAL_CPPFLAGS): Use it.
5610
5611 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5612
5613         * NEWS: Mention the index cache.
5614
5615 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5616
5617         * common/pathstuff.h (get_standard_cache_dir): New.
5618         * common/pathstuff.c (get_standard_cache_dir): New.
5619         * build-id.h (build_id_to_string): New.
5620         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
5621         DEBUG_STR_SUFFIX): Move to here.
5622         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
5623         DEBUG_STR_SUFFIX): Move from there.
5624         (write_psymtabs_to_index): Make non-static, add basename
5625         parameter.  Write to temporary files, rename when done.
5626         (save_gdb_index_command): Adjust call to
5627         write_psymtabs_to_index.
5628         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
5629         field.
5630         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
5631         (get_gdb_index_contents_from_cache): New.
5632         (get_gdb_index_contents_from_cache_dwz): New.
5633         (dwarf2_initialize_objfile): Read index from cache.
5634         (dwarf2_build_psymtabs): Save to index.
5635         * dwarf-index-cache.h: New file.
5636         * dwarf-index-cache.c: New file.
5637         * dwarf-index-write.h: New file.
5638
5639 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5640
5641         * gnulib/aclocal.m4: Re-generate.
5642         * gnulib/config.in: Re-generate.
5643         * gnulib/configure: Re-generate.
5644         * gnulib/import/Makefile.am: Re-generate.
5645         * gnulib/import/Makefile.in: Re-generate.
5646         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
5647         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5648         * gnulib/import/m4/mkdir.m4: New file.
5649         * gnulib/import/mkdir.c: New file.
5650         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
5651         module.
5652
5653 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5654
5655         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
5656         * common/scoped_mmap.c: New file.
5657         * common/scoped_mmap.h (destroy): New method.
5658         (~scoped_mmap, reset): Use destroy.
5659         (scoped_mmap): New move constructor.
5660         (mmap_file): New declaration.
5661         * unittests/scoped_mmap-selftests.c (test_normal,
5662         test_invalid_filename, run_tests): New functions.
5663         (_initialize_scoped_mmap_selftests): Register selftest.
5664
5665 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5666
5667         * dwarf2read.c (read_gdb_index_from_section): Rename to...
5668         (read_gdb_index_from_buffer): ... this.  Remove section
5669         parameter, add buffer parameter.
5670         (get_gdb_index_contents_ftype,
5671         get_gdb_index_contents_dwz_ftype): New typedefs.
5672         (dwarf2_read_gdb_index): Add callback parameters to get the
5673         index contents.
5674         (get_gdb_index_contents_from_section): New.
5675         (dwarf2_initialize_objfile): Update call to
5676         dwarf2_read_gdb_index.
5677
5678 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5679
5680         * common/filestuff.h (gdb_fopen_cloexec): New overload.
5681         (gdb_open_cloexec): Likewise.
5682         * nat/linux-osdata.c (command_from_pid): Use string_printf.
5683         (commandline_from_pid): Likewise.
5684         (linux_xfer_osdata_threads): Likewise.
5685         (linux_xfer_osdata_fds): Likewise.
5686         * ada-lang.c (is_package_name): Likewise.
5687         * auxv.c (procfs_xfer_auxv): Likewise.
5688         * breakpoint.c (print_one_breakpoint_location): Use
5689         uiout::field_fmt.
5690         (print_one_catch_solib): Use string_printf.
5691         * coff-pe-read.c (add_pe_exported_sym): Likewise.
5692         (add_pe_forwarded_sym): Likewise.
5693         * dwarf2read.c (create_type_unit_group): Likewise.
5694         (build_error_marker_type): Likewise.
5695         * infcall.c (get_function_name): Likewise.
5696         * valprint.c (print_converted_chars_to_obstack): Likewise.
5697         * xtensa-tdep.c (xtensa_register_type): Likewise.
5698
5699 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
5700
5701         * remote.c (remote_target::download_tracepoint): Fix format
5702         string errors.
5703
5704 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5705
5706         * tracefile.c: Include common/byte-vector.h.
5707         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
5708         with trace_regblock_size if needed.  Update uses of buf.
5709
5710 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5711
5712         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
5713         std::vector<unsigned char>.
5714         * tracepoint.c (collection_list::collection_list): Remove
5715         m_regs_mask initializer from initializer list.  Resize
5716         m_regs_mask using the largest remote register number.
5717         (collection_list::add_remote_register): Remove size check on
5718         m_regs_mask.  Use at to access element.
5719         (collection_list::stringify): Change type of temp_buf to
5720         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
5721         stringify the register mask.  Use pack_hex_byte for the register
5722         mask.
5723
5724 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5725
5726         * tracepoint.h (class collection_list) <add_register>: Remove.
5727         <add_remote_register, add_ax_registers, add_local_register>:
5728         Declare.
5729         <add_memrange>: Add scope parameter.
5730         * tracepoint.c (encode_actions_1): Likewise.
5731         (collection_list::add_register): Rename to ...
5732         (collection_list::add_remote_register): ... this.  Update
5733         comment.
5734         (collection_list::add_ax_registers, add_local_register): New
5735         methods.
5736         (collection_list::add_memrange): Add scope parameter.  Call
5737         add_local_register instead of add_register.
5738         (finalize_tracepoint_aexpr): New function.
5739         (collection_list::collect_symbol): Update calls to add_memrange.
5740         Call add_local_register instead of add_register.  Call
5741         add_ax_registers.  Call finalize_tracepoint_aexpr.
5742         (encode_actions_1): Get remote regnos for $reg action.  Call
5743         add_remote_register, add_ax_registers, and add_local_register.
5744         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
5745         (validate_actionline): Call finalize_tracepoint_aexpr.
5746
5747 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5748
5749         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
5750         Replace array buf with gdb::char_vector buf, of size
5751         get_remote_packet_size ().  Replace references to buf and
5752         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
5753         and xsnprintf with snprintf.  Raise errors if the buffer is too
5754         small.
5755
5756 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5757
5758         * remote.c (remote_target::download_tracepoint): Fix the has_more
5759         predicate in the QTDP action list iteration.
5760
5761 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5762
5763         * remote.c (remote_target::download_tracepoint): Fix indentation
5764         in for block.
5765
5766 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5767
5768         * proc-api.c (_initialize_proc_api): Remove c, unused.
5769         * procfs.c (procfs_init_inferior): Remove signals, unused.
5770         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
5771         unused.
5772
5773 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
5774             Andrew Burgess  <andrew.burgess@embecosm.com>
5775
5776         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
5777         'W_STOPCODE (0)' as this could be ambiguous.
5778
5779 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
5780
5781         * ser-tcp.c (net_open): Fix thinko when deciding whether to
5782         disable TCP's Nagle algorithm (use "ai_protocol" instead of
5783         "ai_socktype").
5784
5785 2018-08-02  Tom Tromey  <tom@tromey.com>
5786
5787         PR symtab/16842.
5788         * dwarf2read.c (read_func_scope): Set symtab on template parameter
5789         symbols.
5790         (process_structure_scope): Likewise.
5791
5792 2018-08-02  Xavier Roirand  <roirand@adacore.com>
5793
5794         PR gdb/22629:
5795         * darwin-nat.c (darwin_kill_inferior): Fix handling of
5796         kill inferior.
5797
5798 2018-08-02  Tom Tromey  <tom@tromey.com>
5799
5800         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
5801         (darwin_suspend_inferior, darwin_resume_inferior)
5802         (darwin_decode_notify_message, darwin_resume_inferior_threads)
5803         (darwin_check_new_threads): Check result of get_darwin_inferior.
5804
5805 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
5806
5807         GDB 8.1.1 released.
5808
5809 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
5810
5811         * varobj.c (varobj_get_path_expr_parent): Report an error if
5812         parent is a dynamic varobj.
5813
5814 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5815
5816         * gnulib/aclocal.m4: Re-generate.
5817         * gnulib/config.in: Re-generate.
5818         * gnulib/configure: Re-generate.
5819         * gnulib/import/Makefile.in: Re-generate.
5820         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5821         * gnulib/import/m4/onceonly.m4: Re-generate.
5822
5823 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5824
5825         * target-descriptions.c (struct xml_test_tdesc): New.
5826         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
5827         (record_xml_tdesc): Update.
5828         (maintenance_check_xml_descriptions): Update.
5829         * target-descriptions.h (record_xml_tdesc): Update comment.
5830
5831 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
5832
5833         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
5834         checking array bounds are defined.
5835
5836 2018-07-30  Tom Tromey  <tom@tromey.com>
5837
5838         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
5839         irreflexivity violation.
5840
5841 2018-07-30  Tom Tromey  <tom@tromey.com>
5842
5843         * cli/cli-decode.c (lookup_cmd): Remove lint code.
5844         * value.c (unpack_long): Remove lint code.
5845         * valops.c (value_ind): Remove lint code.
5846         * valarith.c (value_x_binop, value_x_unop, value_equal)
5847         (value_pos): Remove lint code.
5848
5849 2018-07-28  Tom de Vries  <tdevries@suse.de>
5850
5851         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
5852         with undefined upper bound as <optimized out>.
5853
5854 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
5855
5856         * gcore.in: Rename variable "name" to "prefix".  Expand
5857         "usage" text.
5858
5859 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
5860
5861         * windows-nat.c (windows_nat_target::create_inferior): Update to
5862         call close() in global namespace.
5863
5864 2018-07-26  Tom Tromey  <tom@tromey.com>
5865
5866         * dwarf-index-write.c (add_address_entry): Don't add objfile
5867         offsets.
5868         * dbxread.c (find_stab_function): Rename from
5869         find_stab_function_addr.  Return a bound_minimal_symbol.
5870         (read_dbx_symtab): Use raw_text_low, raw_text_high.
5871         Don't add objfile offsets.
5872         (end_psymtab): Use raw_text_low, raw_text_high,
5873         MSYMBOL_VALUE_RAW_ADDRESS.
5874         (read_ofile_symtab): Update.
5875         (process_one_symbol): Update.
5876         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
5877         offsets.
5878         (dw2_relocate): Remove.
5879         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
5880         searching addrmap.
5881         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
5882         Update.
5883         (process_psymtab_comp_unit_reader, add_partial_symbol)
5884         (add_partial_subprogram, dwarf2_ranges_read): Update.
5885         (load_partial_dies): Update.
5886         (add_address_entry): Don't add objfile offsets.
5887         (dwarf2_build_include_psymtabs): Update.
5888         (create_addrmap_from_aranges): Don't add objfile offsets.
5889         (dw2_find_pc_sect_compunit_symtab): Update.
5890         * mdebugread.c (parse_symbol): Don't add objfile offsets.
5891         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
5892         Update.
5893         (parse_partial_symbols): Don't add objfile offsets.  Use
5894         raw_text_low, raw_text_high.  Update.
5895         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
5896         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
5897         or call 'relocate' quick function.  Clear psymbol_map.
5898         * psympriv.h (struct partial_symbol) <address>: Add section
5899         offset.
5900         <set_unrelocated_address>: Rename from set_address.
5901         <raw_text_low, raw_text_high>: New methods.
5902         <text_low, text_high>: Add objfile parameter.
5903         (add_psymbol_to_bcache): Add 'section' parameter.  Call
5904         set_unrelocated_address.
5905         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5906         (find_pc_psymbol): Update.
5907         (fixup_psymbol_section, relocate_psymtabs): Remove.
5908         (dump_psymtab, psym_functions): Update.
5909         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
5910         parameter.
5911         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
5912         (start_psymtab_common): Update.
5913         * symfile-debug.c (debug_qf_relocate): Remove.
5914         (debug_sym_quick_functions): Update.
5915         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
5916         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
5917         Update.
5918
5919 2018-07-26  Tom Tromey  <tromey@redhat.com>
5920
5921         * dbxread.c (end_psymtab): Use text_high_valid and
5922         text_low_valid.
5923         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
5924         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
5925         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5926         Update comment.
5927         <text_low_valid, text_high_valid>: New fields.
5928         <set_text_low, set_text_high>: Update.
5929         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
5930
5931 2018-07-26  Tom Tromey  <tom@tromey.com>
5932
5933         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
5934         Update.
5935         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
5936         textlow and texthigh fields.
5937         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
5938         Update.
5939         * mdebugread.c (parse_lines, parse_partial_symbols)
5940         (psymtab_to_symtab_1): Update.
5941         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5942         Rename fields.  Update comment.  Now private.
5943         <text_low, text_high, set_text_low, set_text_high>: New methods.
5944         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5945         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
5946         (start_psymtab_common, maintenance_info_psymtabs)
5947         (maintenance_check_psymtabs): Update.
5948         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
5949         texthigh fields.
5950         (scan_xcoff_symtab): Update.
5951
5952 2018-07-26  Tom Tromey  <tromey@redhat.com>
5953
5954         * psympriv.h (struct partial_symbol) <unrelocated_address,
5955         address, set_address>: New methods.
5956         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
5957         (fixup_psymbol_section, relocate_psymtabs): Update.
5958         (print_partial_symbols): Add 'objfile' parameter.  Update.
5959         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
5960         Update.
5961
5962 2018-07-26  Tom Tromey  <tom@tromey.com>
5963
5964         * dwarf-index-write.c (write_psymbols, debug_names::insert)
5965         (debug_names::write_psymbols): Update.
5966         * psympriv.h (struct partial_symbol): Derive from
5967         general_symbol_info.
5968         <obj_section>: New method.
5969         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
5970         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5971         (find_pc_sect_psymbol, fixup_psymbol_section)
5972         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
5973         (print_partial_symbols, recursively_search_psymtabs)
5974         (compare_psymbols, psymbol_hash, psymbol_compare)
5975         (add_psymbol_to_bcache, maintenance_check_psymtabs)
5976         (psymbol_name_matches, psym_fill_psymbol_map): Update.
5977
5978 2018-07-26  Tom Tromey  <tromey@redhat.com>
5979
5980         * dbxread.c (end_psymtab): Remove dead code.
5981
5982 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
5983
5984         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
5985         DWARF unwinders are disabled.
5986         * dwarf2-frame.c: Add dwarf2read.h include.
5987         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
5988         disabled.
5989         (dwarf2_frame_unwinders_enabled_p): Define.
5990         (show_dwarf_unwinders_enabled_p): New function.
5991         (_initialize_dwarf2_frame): Register switch to control DWARF
5992         unwinder use.
5993         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
5994         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
5995         (show_dwarf_cmdlist): Remove static keyword.
5996         * dwarf2read.h (set_dwarf_cmdlist): Declare.
5997         (show_dwarf_cmdlist): Declare.
5998         * NEWS: Document new feature.
5999
6000 2018-07-26  Tom de Vries  <tdevries@suse.de>
6001
6002         PR breakpoints/23366
6003         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
6004
6005 2018-07-26  Tom de Vries  <tdevries@suse.de>
6006
6007         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
6008         DW_AT_count can't be translated to a dynamic prop.
6009
6010 2018-07-25  Tom de Vries  <tdevries@suse.de>
6011
6012         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
6013         try/catch.
6014
6015 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
6016
6017         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
6018
6019 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
6020
6021         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
6022
6023 2018-07-24  Keith Seitz  <keiths@redhat.comt
6024
6025         PR symtab/23010
6026         * dwarf2read.c (dw2_add_symbol_to_list): New function.
6027         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
6028         instead of add_symbol_to_list.
6029         (read_file_scope): Call prepare_one_comp_unit before reading
6030         any other DIEs.
6031
6032 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
6033
6034         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
6035
6036 2018-07-24  Tom Tromey  <tom@tromey.com>
6037
6038         * utils.c (malloc, realloc, free): Don't declare.
6039         * configure, config.in: Rebuild.
6040         * configure.ac: Don't check for declarations of free, malloc, or
6041         realloc.
6042
6043 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
6044
6045         * aarch64-linux-nat.c
6046         (aarch64_linux_nat_target::stopped_data_address): Remove unused
6047         variable.
6048         * arm-linux-nat.c (fetch_regs): Likewise.
6049         (store_regs): Likewise.
6050         (fetch_vfp_regs): Likewise.
6051         (store_vfp_regs): Likewise.
6052         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
6053         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
6054         (arm_linux_nat_target::insert_watchpoint): Likewise.
6055         (arm_linux_nat_target::remove_watchpoint): Likewise.
6056         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
6057         Likewise.
6058         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
6059         Likewise.
6060         * ppc-linux-nat.c (fetch_register): Likewise.
6061         (fetch_all_gp_regs): Likewise.
6062         (fetch_ppc_registers): Likewise.
6063         (store_all_gp_regs): Likewise.
6064         (store_ppc_registers): Likewise.
6065         (hwdebug_insert_point): Likewise.
6066         (can_use_watchpoint_cond_accel): Likewise.
6067         * remote-sim.c (gdb_os_write_stdout): Likewise.
6068
6069 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
6070             Tom Tromey  <tom@tromey.com>
6071
6072         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
6073         test for it.
6074         * configure: Rebuild.
6075
6076 2018-07-22  Tom Tromey  <tom@tromey.com>
6077
6078         * regformats/regdat.sh: Define xmltarget_${name} inside
6079         #ifndef IN_PROCESS_AGENT.
6080
6081 2018-07-22  Tom Tromey  <tom@tromey.com>
6082
6083         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
6084
6085 2018-07-22  Tom Tromey  <tom@tromey.com>
6086
6087         * symfile.c (reread_symbols): Notify iter, not objfile.
6088
6089 2018-07-22  Tom Tromey  <tom@tromey.com>
6090
6091         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
6092         Use arch_ops.
6093         (ravenscar_thread_target::prepare_to_store): Likewise.
6094
6095 2018-07-22  Tom Tromey  <tom@tromey.com>
6096
6097         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
6098         unused variable.  Call value_fetch_lazy when needed.
6099         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
6100         Remove unused variable.  Call value_fetch_lazy when needed.
6101
6102 2018-07-22  Tom Tromey  <tom@tromey.com>
6103
6104         * m32c-tdep.c (mark_dma): Return void.
6105         (make_regs): Remove unused declarations.
6106
6107 2018-07-22  Tom Tromey  <tom@tromey.com>
6108
6109         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
6110         cmdscm_get_valid_command_smob_arg_unsafe for effect.
6111         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
6112         bkscm_get_valid_block_smob_arg_unsafe for effect.
6113
6114 2018-07-22  Tom Tromey  <tom@tromey.com>
6115
6116         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
6117         value_type.
6118
6119 2018-07-22  Tom Tromey  <tom@tromey.com>
6120
6121         * windows-nat.c (saved_context): Conditionally define.
6122         * remote.c (remote_target::remote_btrace_maybe_reopen):
6123         Conditionally declare "warned".
6124         * inflow.c (sigquit_ours): Conditionally define.
6125         (new_tty): Move "tty" declaration inside #if.
6126         * guile/guile.c (guile_datadir): Conditionally define.
6127         * charset.c (set_be_le_names): Move some declarations inside #if.
6128         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
6129         #if.
6130         (parse_xml_btrace_conf): Likewise.
6131
6132 2018-07-22  Tom Tromey  <tom@tromey.com>
6133
6134         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
6135
6136 2018-07-22  Tom Tromey  <tom@tromey.com>
6137
6138         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
6139         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
6140         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
6141         * buildsym-legacy.c (get_macro_table): Remove unused variable.
6142         * stack.c (frame_apply_level_command): Remove unused variable.
6143         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
6144         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
6145         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
6146         unused variable.
6147         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
6148         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
6149         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
6150         variable.
6151         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
6152         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
6153         variable.
6154         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
6155         Remove unused variable.
6156         * cli/cli-script.c (recurse_read_control_structure): Remove unused
6157         variable.
6158         * common/tdesc.c (print_xml_feature::visit): Remove unused
6159         variable.
6160         * compile/compile-object-load.c (store_regs): Remove unused
6161         variables.
6162         * complaints.c (clear_complaints): Remove unused variable.
6163         * corelow.c (core_target_open): Remove unused variable.
6164         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
6165         variable.
6166         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
6167         variable.
6168         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
6169         variable.
6170         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
6171         variable.
6172         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
6173         variable.
6174         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
6175         variable.
6176         * ia64-tdep.c (examine_prologue): Remove unused variable.
6177         * infcall.c (run_inferior_call): Remove unused variable.
6178         * inferior.c (exit_inferior): Remove unused variable.
6179         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
6180         * linespec.c (decode_line_2): Remove unused variable.
6181         * linux-nat.c (super_close): Remove.
6182         * linux-tdep.c (linux_info_proc): Remove unused variable.
6183         * mi/mi-main.c (mi_execute_command): Remove unused variable.
6184         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
6185         Remove unused variable.
6186         * parse.c (find_minsym_type_and_address): Remove unused variable.
6187         * printcmd.c (info_symbol_command, printf_floating): Remove unused
6188         variable.
6189         * python/py-breakpoint.c (bppy_set_commands): Remove unused
6190         variable.
6191         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
6192         variables.
6193         * record-btrace.c (record_btrace_target::store_registers): Remove
6194         unused variable.
6195         (cmd_show_record_btrace_cpu): Remove unused variable.
6196         * riscv-tdep.c (riscv_register_reggroup_p)
6197         (riscv_push_dummy_call, riscv_return_value): Remove unused
6198         variable.
6199         * rust-exp.y (literal): Remove unused variable.
6200         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
6201         unused variable.
6202         <STRUCTOP_ANONYMOUS>: Likewise.
6203         * s390-linux-tdep.c (s390_linux_init_abi_31)
6204         (s390_linux_init_abi_64): Remove unused variable.
6205         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
6206         (file_select_thread, net_windows_open, _initialize_ser_windows):
6207         Remove unused variables.
6208         * symtab.c (find_pc_sect_line): Remove unused variable.
6209         * target-memory.c (compute_garbled_blocks): Remove unused
6210         variable.
6211         (target_write_memory_blocks): Remove unused variable.
6212         * target.c (target_stack::unpush): Remove unused variables.
6213         * tracepoint.c (start_tracing, all_tracepoint_actions)
6214         (merge_uploaded_trace_state_variables)
6215         (print_one_static_tracepoint_marker): Remove unused variable.
6216         * unittests/basic_string_view/element_access/char/1.cc (test01):
6217         Remove unused variable.
6218         * windows-nat.c (windows_continue, windows_add_all_dlls)
6219         (do_initial_windows_stuff, windows_nat_target::create_inferior):
6220         Remove unused variables.
6221
6222 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
6223
6224         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
6225         attr_profile in HAVE_ELF.
6226         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
6227         HAVE_ELF.
6228
6229 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
6230
6231         * frame.c (frame_register_unwind): Change parameter name.
6232         (frame_unwind_register): Likewise.
6233         (frame_unwind_register_value): Likewise.
6234         (frame_unwind_register_signed): Likewise.
6235         (frame_unwind_register_unsigned): Likewise.
6236         * frame.h (frame_register_unwind): Likewise.
6237         (frame_unwind_register): Likewise.
6238         (frame_unwind_register_value): Likewise.
6239         (frame_unwind_register_signed): Likewise.
6240         (frame_unwind_register_unsigned): Likewise.
6241         (frame_unwind_arch): Likewise.
6242
6243 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
6244
6245         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
6246         ISA maintenance.
6247
6248 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
6249
6250         * mips-linux-nat.c (mips_linux_nat_target::read_description):
6251         Call `get_ptrace_pid' rather than extracting the ptrace PID by
6252         hand.
6253
6254 2018-07-20  Keith Seitz  <keiths@redhat.com>
6255
6256         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
6257         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
6258         m_compunit_symtab, m_language>: Add "m_" prefix.
6259         Update all uses.
6260         * buildsym.c: Update all uses.
6261
6262 2018-07-20  Tom Tromey  <tom@tromey.com>
6263
6264         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
6265         * buildsym.h (record_line_ftype): Remove typedef.
6266
6267 2018-07-20  Tom Tromey  <tom@tromey.com>
6268
6269         * buildsym-legacy.h (augment_type_symtab): Don't declare.
6270         (end_expandable_symtab): Likewise.
6271         (end_symtab_get_static_block): Likewise.
6272         (end_symtab_from_static_block): Likewise.
6273         * buildsym-legacy.c (augment_type_symtab): Remove.
6274         (end_expandable_symtab): Remove.
6275         (end_symtab_get_static_block): Remove.
6276         (end_symtab_from_static_block): Remove.
6277
6278 2018-07-20  Tom Tromey  <tom@tromey.com>
6279
6280         * dwarf2read.c: Include buildsym.h.
6281         (struct dwarf2_cu) <builder>: New method.
6282         (fixup_go_packaging): Update.
6283         (process_full_comp_unit, process_full_type_unit): Update.  Don't
6284         use scoped_free_pendings.
6285         (using_directives): Add "cu" parameter, remove "language".
6286         (read_import_statement, setup_type_unit_groups, )
6287         (read_func_scope, read_lexical_block_scope)
6288         (dwarf2_record_block_ranges, read_namespace): Update.
6289         (lnp_state_machine::lnp_state_machine): Add cu parameter.
6290         (lnp_state_machine::handle_end_sequence): Update.
6291         (class lnp_state_machine) <m_cu>: New member.
6292         <m_record_line_callback>: Remove.
6293         <m_currently_recording_lines>: New member.
6294         (lnp_state_machine::handle_set_file): Update.
6295         (noop_record_line): Remove.
6296         (dwarf_record_line_p): Add cu parameter.
6297         (dwarf_record_line_1, dwarf_finish_line): Likewise.
6298         (lnp_state_machine::record_line)
6299         (lnp_state_machine::lnp_state_machine)
6300         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
6301         (dwarf_decode_lines): Update.
6302         (dwarf2_start_subfile): Add cu parameter.
6303         (dwarf2_start_symtab, new_symbol): Update.
6304         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
6305         Remove dwarf2_per_objfile parameter.
6306         (dwarf_decode_macros): Update.
6307
6308 2018-07-20  Tom Tromey  <tom@tromey.com>
6309
6310         * stabsread.c (define_symbol): Update.
6311         * buildsym-legacy.h (get_buildsym_compunit): Declare.
6312         * dwarf2read.c (new_symbol): Update.
6313         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
6314         * cp-namespace.c: Include buildsym.h.
6315         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
6316         * buildsym-legacy.c (get_buildsym_compunit): New function.
6317
6318 2018-07-20  Tom Tromey  <tom@tromey.com>
6319
6320         * xcoffread.c: Include buildsym-legacy.h.
6321         * windows-nat.c: Include buildsym-legacy.h.
6322         * stabsread.c: Include buildsym-legacy.h.
6323         * mdebugread.c: Include buildsym-legacy.h.
6324         * buildsym-legacy.h: New file.
6325         * buildsym-legacy.c: New file, from buildsym.c.
6326         * go32-nat.c: Include buildsym-legacy.h.
6327         * dwarf2read.c: Include buildsym-legacy.h.
6328         * dbxread.c: Include buildsym-legacy.h.
6329         * cp-namespace.c: Include buildsym-legacy.h.
6330         * coffread.c: Include buildsym-legacy.h.
6331         * buildsym.h: Move some contents to buildsym-legacy.h.
6332         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
6333         buildsym-legacy.c.
6334         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
6335
6336 2018-07-20  Tom Tromey  <tom@tromey.com>
6337
6338         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
6339         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
6340         (buildsym_compunit::buildsym_compunit)
6341         (buildsym_compunit::~buildsym_compunit)
6342         (buildsym_compunit::get_macro_table): Define.
6343
6344 2018-07-20  Tom Tromey  <tom@tromey.com>
6345
6346         * buildsym.c (reset_symtab_globals): Remove.
6347         (buildsym_compunit::end_symtab_from_static_block): Update.
6348         (buildsym_compunit::augment_type_symtab): Update.
6349         (end_symtab_from_static_block): Call free_buildsym_compunit.
6350         (augment_type_symtab, end_symtab, end_expandable_symtab):
6351         Likewise.
6352
6353 2018-07-20  Tom Tromey  <tom@tromey.com>
6354
6355         * arch-utils.c: Do not include buildsym.h.
6356         * mipsread.c: Do not include buildsym.h.
6357         * machoread.c: Do not include buildsym.h.
6358         * elfread.c: Do not include buildsym.h.
6359
6360 2018-07-20  Tom Tromey  <tom@tromey.com>
6361
6362         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
6363         initialization.
6364         (buildsym_compunit): Add new constructor.
6365         (struct buildsym_compunit) <get_last_source_file, finish_block,
6366         record_block_range, start_subfile, patch_subfile_names,
6367         push_subfile, pop_subfile, record_line, get_compunit_symtab,
6368         set_last_source_start_addr, get_last_source_start_addr,
6369         get_local_using_directives, set_local_using_directives,
6370         get_global_using_directives, outermost_context_p,
6371         get_current_context_stack, get_context_stack_depth,
6372         get_current_subfile, get_local_symbols, get_file_symbols,
6373         get_global_symbols, record_debugformat, record_producer,
6374         push_context, pop_context, end_symtab_get_static_block,
6375         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
6376         New public methods.
6377         <record_pending_block, finish_block_internal, make_blockvector,
6378         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
6379         private methods.
6380         Update all users.
6381
6382 2018-05-22  Tom Tromey  <tom@tromey.com>
6383
6384         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
6385         parameter.
6386         (finish_block_internal): Update.
6387
6388 2018-07-20  Tom Tromey  <tom@tromey.com>
6389
6390         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
6391         parameter.
6392         (finish_block_internal): Update.
6393
6394 2018-07-20  Tom Tromey  <tom@tromey.com>
6395
6396         * buildsym.h (EXTERN): Don't define or undef.
6397         * buildsym.c (EXTERN): Don't define.
6398
6399 2018-07-20  Tom Tromey  <tom@tromey.com>
6400
6401         * buildsym.c: Remove TODO comment.
6402
6403 2018-07-20  Tom Tromey  <tom@tromey.com>
6404
6405         * coffread.c (coff_symtab_read): Update.
6406         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
6407         (xcoff_new_init): Update.
6408         * mipsread.c (mipscoff_new_init): Update.
6409         * mdebugread.c (mdebug_build_psymtabs): Update.
6410         * elfread.c (elf_new_init): Update.
6411         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
6412         Update.
6413         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
6414         (coffstab_build_psymtabs, elfstab_build_psymtabs)
6415         (stabsect_build_psymtabs): Update.
6416         * buildsym.h (buildsym_init): Don't declare.
6417         * buildsym.c: Update comment.
6418         (prepare_for_building): Remove.
6419         (start_symtab, restart_symtab): Update.
6420         (reset_symtab_globals): Update comment.
6421         (buildsym_init): Remove.
6422
6423 2018-07-20  Tom Tromey  <tom@tromey.com>
6424
6425         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
6426         * stabsread.c (patch_block_stabs, define_symbol, read_type)
6427         (read_enum_type, common_block_start, common_block_end)
6428         (cleanup_undefined_types_1, finish_global_stabs): Update.
6429         * mdebugread.c (psymtab_to_symtab_1): Update.
6430         * dwarf2read.c (fixup_go_packaging, read_func_scope)
6431         (read_lexical_block_scope, new_symbol): Update.
6432         * dbxread.c (process_one_symbol): Update.
6433         * coffread.c (coff_symtab_read, process_coff_symbol)
6434         (coff_read_enum_type): Update.
6435         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
6436         declare.
6437         (get_local_symbols, get_file_symbols, get_global_symbols): New
6438         functions.
6439         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
6440         m_global_symbols.
6441         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
6442         (~scoped_free_pendings): Update.
6443         (finish_block, prepare_for_building, reset_symtab_globals)
6444         (end_symtab_get_static_block, end_symtab_with_blockvector)
6445         (augment_type_symtab, push_context): Update.
6446         (get_local_symbols, get_file_symbols, get_global_symbols): New
6447         functions.
6448         (buildsym_init): Update.
6449
6450 2018-07-20  Tom Tromey  <tom@tromey.com>
6451
6452         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
6453         (process_full_type_unit): Likewise.
6454         (dwarf2_start_symtab): Set list_in_scope.
6455
6456 2018-07-20  Tom Tromey  <tom@tromey.com>
6457
6458         * dwarf2read.c (process_psymtab_comp_unit_reader)
6459         (build_type_psymtabs_reader): Do not set list_in_scope.
6460
6461 2018-07-20  Tom Tromey  <tom@tromey.com>
6462
6463         * buildsym.c (free_pendings): Remove.
6464         (add_symbol_to_list, scoped_free_pendings)
6465         (finish_block_internal, buildsym_init): Update.
6466
6467 2018-07-20  Tom Tromey  <tom@tromey.com>
6468
6469         * xcoffread.c (read_xcoff_symtab): Update.
6470         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
6471         Update.
6472         * dbxread.c (process_one_symbol): Update.
6473         * coffread.c (coff_symtab_read): Update.
6474         * buildsym.h (finish_block): Update.
6475         * buildsym.c (finish_block): Remove "listhead" argument.
6476         (end_symtab_get_static_block): Update.
6477
6478 2018-07-20  Tom Tromey  <tom@tromey.com>
6479
6480         * buildsym.h (class scoped_free_pendings): Remove constructor.
6481         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
6482         method.
6483         <m_pending_block_obstack, m_pending_blocks>: New members.
6484         (pending_block_obstack, pending_blocks): Remove.
6485         (scoped_free_pendings::scoped_free_pendings): Default.
6486         (~scoped_free_pendings): Update.
6487         (free_pending_blocks): Remove.
6488         (finish_block_internal, record_pending_block, make_blockvector)
6489         (end_symtab_get_static_block, augment_type_symtab, push_context)
6490         (buildsym_init): Update.
6491
6492 2018-07-20  Tom Tromey  <tom@tromey.com>
6493
6494         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
6495         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
6496         members.
6497         (pending_addrmap, pending_addrmap_obstack)
6498         (pending_addrmap_interesting): Remove.
6499         (scoped_free_pendings, record_block_range, make_blockvector)
6500         (prepare_for_building, reset_symtab_globals, buildsym_init):
6501         Update.
6502
6503 2018-07-20  Tom Tromey  <tom@tromey.com>
6504
6505         * xcoffread.c (process_linenos): Update.
6506         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
6507         * mdebugread.c (psymtab_to_symtab_1): Update.
6508         * dwarf2read.c (setup_type_unit_groups)
6509         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
6510         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
6511         * dbxread.c (process_one_symbol): Update.
6512         * coffread.c (coff_symtab_read, enter_linenos)
6513         (process_coff_symbol): Update.
6514         * buildsym.h (current_subfile): Don't declare.
6515         (get_current_subfile): Declare.
6516         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
6517         member.
6518         (start_subfile, free_buildsym_compunit, push_subfile)
6519         (prepare_for_building, start_symtab): Update.
6520         (get_current_subfile): New function.
6521
6522 2018-07-20  Tom Tromey  <tom@tromey.com>
6523
6524         * coffread.c (coff_symtab_read): Update.
6525         * xcoffread.c (read_xcoff_symtab): Update.
6526         * dwarf2read.c (new_symbol): Update.
6527         (read_func_scope, read_lexical_block_scope): Update.
6528         * dbxread.c (process_one_symbol): Update.
6529         * buildsym.h (context_stack, context_stack_depth): Don't declare.
6530         (outermost_context_p): Remove macro.
6531         (outermost_context_p, get_current_context_stack)
6532         (get_context_stack_depth): Declare.
6533         (pop_context): Return struct context_stack.
6534         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
6535         member.
6536         (context_stack_size): Remove.
6537         (INITIAL_CONTEXT_STACK_SIZE): Remove.
6538         (prepare_for_building, end_symtab_get_static_block)
6539         (augment_type_symtab, push_context): Update.
6540         (pop_context): Return struct context_stack.
6541         (outermost_context_p, get_current_context_stack)
6542         (get_context_stack_depth): New functions.
6543         (buildsym_init): Update.
6544
6545 2018-07-20  Tom Tromey  <tom@tromey.com>
6546
6547         * rust-exp.y: Now a pure parser.  Update all rules.
6548         (%union): Move earlier.
6549         (current_parser, work_obstack): Remove globals.
6550         (rust_parser, ~rust_parser): Update.
6551         (class rust_parser) <copy_name, concat3, crate_name, super_name,
6552         lex_character, lex_number, lex_string, lex_identifier,
6553         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
6554         convert_name, convert_params_to_expression,
6555         convert_ast_to_expression, ast_basic_type, ast_operation,
6556         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
6557         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
6558         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
6559         ast_array_type, ast_slice_type, ast_reference_type,
6560         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
6561         (rust_parse): Update.
6562         (rustyyerror, rustyylex): Add parser parameter.
6563         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
6564         (rust_lex_stringish_test, rust_lex_test_sequence)
6565         (rust_lex_test_trailing_dot, rust_lex_test_completion)
6566         (rust_lex_test_push_back, rust_lex_tests): Update.
6567
6568 2018-07-19  Pedro Alves  <palves@redhat.com>
6569
6570         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
6571         gdb::unique_xmalloc_ptr.
6572         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
6573         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
6574         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
6575         copy-initialization.
6576         * guile/scm-pretty-print.c (ppscm_print_children): Use
6577         gdb::unique_xmalloc_ptr instead of cleanups.
6578         (gdbscm_apply_val_pretty_printer): Remove cleanups.
6579         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
6580         gdb::unique_xmalloc_ptr.
6581         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6582         Adjust to use gdb::unique_xmalloc_ptr.
6583         * guile/scm-utils.c (extract_arg): Adjust.
6584         * guile/scm-value.c (gdbscm_value_field): Adjust to use
6585         gdb::unique_xmalloc_ptr instead of a cleanup.
6586
6587 2018-07-19  Tom Tromey  <tom@tromey.com>
6588
6589         * utils.c (do_value_free_to_mark)
6590         (make_cleanup_value_free_to_mark): Remove.
6591         * utils.h (make_cleanup_value_free_to_mark): Remove.
6592
6593 2018-07-19  Pedro Alves  <palves@redhat.com>
6594
6595         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
6596         forwarding reference.
6597
6598 2018-07-18  Pedro Alves  <palves@redhat.com>
6599
6600         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
6601         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
6602         cleanup.
6603
6604 2018-07-18  Pedro Alves  <palves@redhat.com>
6605
6606         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
6607         exceptions.
6608         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
6609         (gdbscm_wrap): New.
6610         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
6611         directly instead of a cleanup.
6612         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
6613         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
6614         (vlscm_binop_gdbthrow): New, factored out from ...
6615         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
6616         (vlscm_rich_compare): Use gdbscm_wrap.
6617         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
6618         instead of a cleanup.
6619         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
6620         cleanup.
6621         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6622         Use xfree directly instead of a cleanup.
6623         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
6624         Adjust to use gdbscm_wrap and scoped_value_mark.
6625         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
6626         (gdbscm_value_address, gdbscm_value_dereference)
6627         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
6628         scoped_value_mark.
6629         (gdbscm_value_dynamic_type): Use scoped_value_mark.
6630         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
6631         scoped_value_mark.
6632         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
6633         gdbscm_wrap and scoped_value_mark.
6634         (gdbscm_value_to_string): Use xfree directly instead of a
6635         cleanup.  Move 'buffer' unique_ptr to TRY scope.
6636         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
6637         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
6638         scoped_value_mark.
6639         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
6640         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
6641         scoped_value_mark.
6642         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
6643         gdbscm_wrap.
6644
6645 2018-07-18  Tom de Vries  <tdevries@suse.de>
6646
6647         * findvar.c (default_read_var_value): Also resolve dynamic type for
6648         LOC_OPTIMIZED_OUT vars.
6649
6650 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
6651
6652         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
6653         decoding.
6654
6655 2018-07-17  Tom Tromey  <tom@tromey.com>
6656
6657         * guile/scm-param.c (pascm_set_func, pascm_show_func)
6658         (compute_enum_list, pascm_set_param_value_x)
6659         (gdbscm_parameter_value): Update.
6660         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
6661         (gdbscm_scm_to_host_string): Update.
6662         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
6663         Update.
6664         * guile/scm-cmd.c (cmdscm_add_completion): Update.
6665         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
6666         * guile/scm-string.c (gdbscm_scm_to_string): Return
6667         unique_xmalloc_ptr.
6668         (gdbscm_scm_to_host_string): Likewise.
6669
6670 2018-07-17  Tom Tromey  <tom@tromey.com>
6671
6672         * guile/guile.c (gdbscm_eval_from_control_command): Update.
6673         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
6674         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
6675         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
6676         unique_xmalloc_ptr.
6677
6678 2018-07-17  Tom Tromey  <tom@tromey.com>
6679
6680         * guile/scm-param.c (pascm_signal_setshow_error): Update.
6681         * guile/guile-internal.h (gdbscm_exception_message_to_string):
6682         Update.
6683         * guile/scm-cmd.c (cmdscm_function): Update.
6684         * guile/scm-pretty-print.c
6685         (ppscm_print_exception_unless_memory_error): Update.
6686         * guile/scm-exception.c (gdbscm_exception_message_to_string):
6687         Return unique_xmalloc_ptr.
6688
6689 2018-07-17  Tom Tromey  <tom@tromey.com>
6690
6691         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
6692         Use string_printf.
6693
6694 2018-07-17  Jim Wilson  <jimw@sifive.com>
6695
6696         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
6697         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
6698         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
6699         unecessary braces after EF_RISCV_RVC test.  Delete call to
6700         set_gdbarch_decr_pc_after_break.
6701
6702         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
6703         RISCV_LAST_FP_REGNUM + 1.
6704         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
6705
6706 2018-07-17  Tom Tromey  <tom@tromey.com>
6707
6708         * configure.ac: Remove --disable-gdbcli.
6709         * configure: Rebuild.
6710         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
6711         (SUBDIR_CLI_CFLAGS): Remove.
6712         (SFILES): Use SUBDIR_CLI_SRCS.
6713         (COMMON_OBS): Use SUBDIR_CLI_OBS.
6714
6715 2018-07-17  Tom Tromey  <tom@tromey.com>
6716
6717         PR gdb/18624:
6718         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
6719
6720 2018-07-16  Jim Wilson  <jimw@sifive.com>
6721
6722         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
6723
6724 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6725
6726         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
6727         variable.
6728         (libunwind_frame_sniffer): Likewise.
6729         (libunwind_frame_prev_register): Likewise.
6730         (libunwind_sigtramp_frame_sniffer): Likewise.
6731         * ia64-tdep.c (ia64_access_reg): Likewise.
6732         (ia64_access_rse_reg): Likewise.
6733         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
6734         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
6735
6736 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6737
6738         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
6739
6740 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6741
6742         * remote-sim.c (gdbsim_target::close,
6743         gdbsim_target::mourn_inferior): Remove unused variables.
6744
6745 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
6746
6747         * ia64-tdep.c (ktab_buf): New global.
6748         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
6749         (get_kernel_table): Adjust.
6750
6751 2018-07-16  Tom Tromey  <tom@tromey.com>
6752
6753         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
6754         * dwarf2read.c (using_directives, new_symbol): Use
6755         outermost_context_p.
6756         * dbxread.c (process_one_symbol): Use outermost_context_p.
6757         * coffread.c (coff_symtab_read): Use outermost_context_p.
6758
6759 2018-07-16  Tom Tromey  <tom@tromey.com>
6760
6761         * dwarf2read.c (using_directives, read_func_scope)
6762         (read_lexical_block_scope): Update.
6763         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
6764         * buildsym.h (local_using_directives, global_using_directives):
6765         Don't declare.
6766         (get_local_using_directives, set_local_using_directives)
6767         (get_global_using_directives): Declare.
6768         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
6769         m_global_using_directives>: New members.
6770         (finish_block_internal, prepare_for_building)
6771         (reset_symtab_globals, end_symtab_get_static_block)
6772         (push_context): Update.
6773         (get_local_using_directives, set_local_using_directives)
6774         (get_global_using_directives): New functions.
6775         (buildsym_init): Update.
6776
6777 2018-07-16  Tom Tromey  <tom@tromey.com>
6778
6779         * xcoffread.c (xcoff_initial_scan): Don't call
6780         free_pending_blocks.
6781         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
6782         * buildsym.h (class scoped_free_pendings): Add constructor.
6783         (free_pending_blocks): Don't declare.
6784         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
6785         (free_pending_blocks): Now static.
6786
6787 2018-07-16  Tom Tromey  <tom@tromey.com>
6788
6789         * buildsym.h (push_subfile, pop_subfile): Update declarations.
6790         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
6791         member.
6792         (struct subfile_stack): Remove.
6793         (subfile_stack): Remove.
6794         (push_subfile, pop_subfile, buildsym_init): Update.
6795
6796 2018-07-16  Tom Tromey  <tom@tromey.com>
6797
6798         * buildsym.c (push_subfile): Use gdb_assert.
6799         (pop_subfile): Use gdb_assert.
6800
6801 2018-07-16  Tom Tromey  <tom@tromey.com>
6802
6803         * buildsym.h (merge_symbol_lists): Remove.
6804         * buildsym.c (merge_symbol_lists): Remove.
6805
6806 2018-07-16  Tom Tromey  <tom@tromey.com>
6807
6808         * stabsread.c (scan_file_globals): Update comment.
6809         * stabsread.h (scan_file_globals): Move from buildsym.h.
6810         * buildsym.h (scan_file_globals): Move to stabsread.h.
6811
6812 2018-07-16  Tom Tromey  <tom@tromey.com>
6813
6814         * xcoffread.c (xcoff_new_init): Update.
6815         * mipsread.c (mipscoff_new_init): Update.
6816         * mdebugread.c (mdebug_build_psymtabs): Update.
6817         * elfread.c (elf_new_init): Update.
6818         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
6819         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
6820         * buildsym.h (buildsym_new_init): Don't declare.
6821         * buildsym.c (buildsym_new_init): Remove.
6822
6823 2018-07-16  Tom Tromey  <tom@tromey.com>
6824
6825         * stabsread.h (within_function): Move from buildsym.h.
6826         * stabsread.c (start_stabs): Clear within_function.
6827         * coffread.c (coff_start_symtab): Clear within_function.
6828         * buildsym.h (within_function): Move to stabsread.h.
6829         * buildsym.c (prepare_for_building): Update.
6830
6831 2018-07-16  Tom Tromey  <tom@tromey.com>
6832
6833         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
6834         * dwarf2read.c (dwarf2_start_symtab): Don't set
6835         processing_gcc_compilation.
6836         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
6837
6838 2018-07-16  Tom Tromey  <tom@tromey.com>
6839
6840         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
6841         (next_symbol_text_func): Move from buildsym.h.
6842         * stabsread.c (hashname): Move from buildsym.c.
6843         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
6844         (next_symbol_text_func, hashname): Move to stabsread.h.
6845         * buildsym.c: Don't include bcache.h
6846         (hashname): Move to stasbread.c.
6847
6848 2018-07-16  Tom Tromey  <tom@tromey.com>
6849
6850         * buildsym.h (context_stack_size): Don't declare.
6851         * buildsym.c (context_stack_size): New global.
6852
6853 2018-07-16  Tom Tromey  <tom@tromey.com>
6854
6855         * dbxread.c (processing_acc_compilation): New global.
6856         * buildsym.h (processing_acc_compilation): Don't declare.
6857
6858 2018-07-16  Tom Tromey  <tom@tromey.com>
6859
6860         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
6861         * dbxread.c (read_ofile_symtab): Update.
6862         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
6863         * buildsym.h (last_source_start_addr): Remove.
6864         (set_last_source_start_addr, get_last_source_start_addr):
6865         Declare.
6866         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
6867         parameter.
6868         (struct buildsym_compunit) <m_last_source_start_addr>: New
6869         member.
6870         (prepare_for_building): Remove start_addr parameter.
6871         (start_symtab, restart_symtab, end_symtab_get_static_block)
6872         (end_symtab_with_blockvector): Update.
6873         (set_last_source_start_addr, get_last_source_start_addr): New
6874         functions.
6875
6876 2018-07-16  Tom Tromey  <tom@tromey.com>
6877
6878         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
6879         member.
6880         (have_line_numbers): Remove.
6881         (record_line, prepare_for_building, end_symtab_get_static_block)
6882         (augment_type_symtab): Update.
6883
6884 2018-07-16  Tom Tromey  <tom@tromey.com>
6885
6886         * buildsym.c (~buildsym_compunit): Free the macro table.
6887         (struct buildsym_compunit) <get_macro_table, release_macros>: New
6888         methods.
6889         <m_pending_macros>: New member.
6890         (pending_macros): Remove.
6891         (~scoped_free_pendings, get_macro_table, prepare_for_building)
6892         (reset_symtab_globals, end_symtab_get_static_block)
6893         (end_symtab_with_blockvector, augment_type_symtab)
6894         (buildsym_init): Update.
6895
6896 2018-07-16  Tom Tromey  <tom@tromey.com>
6897
6898         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
6899         parameter.
6900         (buildsym_compunit::set_last_source_file): New method.
6901         <m_last_source_file>: New member.
6902         (prepare_for_building): Remove "name" parameter.
6903         (start_symtab, restart_symtab, reset_symtab_globals): Update.
6904         (last_source_file): Remove.
6905         (set_last_source_file, get_last_source_file): Update.
6906
6907 2018-07-16  Tom Tromey  <tom@tromey.com>
6908
6909         * buildsym.c (prepare_for_building): Add assert.
6910
6911 2018-07-16  Tom Tromey  <tom@tromey.com>
6912
6913         * buildsym.c (~buildsym_compunit): Update.
6914         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
6915         (start_subfile, patch_subfile_names)
6916         (end_symtab_with_blockvector): Update.
6917
6918 2018-07-16  Tom Tromey  <tom@tromey.com>
6919
6920         * buildsym.c (struct buildsym_compunit): Add constructor,
6921         destructor, initializers.
6922         (start_buildsym_compunit): Remove.
6923         (free_buildsym_compunit): Use "delete".
6924         (start_symtab, restart_symtab): Use "new".
6925
6926 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
6927
6928         * symfile.c (set_objfile_default_section_offset): Remove struct
6929         keyword.
6930
6931 2018-07-14  Stafford Horne  <shorne@gmail.com>
6932
6933         * (Responsible Maintainers): Add myself as or1k maintainer.
6934
6935 2018-07-13  Tom Tromey  <tom@tromey.com>
6936
6937         * symfile.c (set_objfile_default_section_offset): Use extra braces
6938         around initializer.
6939
6940 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
6941
6942         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
6943         non-branching basr.
6944
6945 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6946
6947         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6948         unittests/cli-utils-selftests.c
6949         * unittests/cli-utils-selftests.c: New file.
6950
6951 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6952
6953         * NEWS: Mention new commands. Mention change to 'thread apply'.
6954
6955 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6956
6957         * thread.c (thr_try_catch_cmd): New function.
6958         (thread_apply_all_command): Handle qcs flags.
6959         (thread_apply_command): Handle qcs flags.
6960         (taas_command): New function.
6961         (tfaas_command): New function.
6962         (_initialize_thread): Update to setup the new commands 'taas
6963         and 'tfaas'. Change doc string for 'thread apply'.
6964
6965 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6966
6967         * stack.c: (trailing_outermost_frame): New function, mostly
6968         extracted from backtrace_command_1.
6969         (leading_innermost_frame): New function.
6970         (backtrace_command_1): Update to call trailing_outermost_frame.
6971         (frame_apply_command_count): New function.
6972         (frame_apply_level_command): New function.
6973         (frame_apply_all_command): New function.
6974         (frame_apply_command): New function.
6975         (faas_command): New function.
6976         (frame_cmd_list): New variable.
6977         (_initialize_stack): Update to setup the new commands 'frame apply'
6978         and 'faas'.
6979
6980 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6981
6982         * cli-utils.c (number_or_range_parser::get_number): Only handle
6983         numbers or convenience var as numbers.
6984         (parse_flags): New function.
6985         (parse_flags_qcs): New function.
6986         (number_or_range_parser::finished): Ensure parsing end is detected
6987         before end of string.
6988         * cli-utils.h (parse_flags): New function.
6989         (parse_flags_qcs): New function.
6990         (number_or_range_parser): Remove m_finished bool.
6991         (number_or_range_parser::skip_range): Set m_in_range to false.
6992
6993 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
6994
6995         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
6996         on Windows.
6997
6998 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6999             Jan Kratochvil  <jan.kratochvil@redhat.com>
7000             Paul Fertser  <fercerpav@gmail.com>
7001             Tsutomu Seki  <sekiriki@gmail.com>
7002             Pedro Alves  <palves@redhat.com>
7003
7004         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
7005         'unittests/parse-connection-spec-selftests.c'.
7006         (COMMON_SFILES): Add 'common/netstuff.c'.
7007         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
7008         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
7009         * common/netstuff.c: New file.
7010         * common/netstuff.h: New file.
7011         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
7012         (wait_for_connect): Update comment.  New parameter
7013         'gdb::optional<int> sock' instead of 'struct serial *scb'.
7014         Use 'sock' directly instead of 'scb->fd'.
7015         (try_connect): New function, with code from 'net_open'.
7016         (net_open): Rewrite main loop to deal with multiple
7017         sockets/addresses.  Handle IPv6-style hostnames; implement
7018         support for IPv6 connections.
7019         * unittests/parse-connection-spec-selftests.c: New file.
7020
7021 2018-07-11  Pedro Alves  <palves@redhat.com>
7022
7023         PR gdb/23377
7024         * remote.c (remote_target::remote_detach_pid): Call
7025         set_current_process.
7026
7027 2018-07-11  Pedro Alves  <palves@redhat.com>
7028
7029         * h8300-tdep.c (h8300_gdbarch_init): Remove
7030         set_gdbarch_ecoff_reg_to_regnum calls.
7031
7032 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
7033
7034         PR c++/23373
7035         * c-typeprint.c (c_type_print_base_struct_union): Don't print
7036         offsets/sizes for static members of a class/struct.
7037
7038 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
7039
7040         * target-descriptions.c (tdesc_register_bitsize): Rename.
7041         * target-descriptions.h (tdesc_register_bitsize): Likewise.
7042         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
7043         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
7044
7045 2018-07-10  Tom Tromey  <tom@tromey.com>
7046
7047         * breakpoint.c (moribund_locations): Now static and a
7048         std::vector.
7049         (breakpoint_init_inferior, moribund_breakpoint_here_p)
7050         (build_bpstat_chain, update_global_location_list)
7051         (breakpoint_retire_moribund): Update.
7052         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
7053         VEC.
7054
7055 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
7056
7057         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
7058         (riscv_register_reggroup_p): Use new function, remove unneeded
7059         parenthesis.
7060         (riscv_push_dummy_call): Extend assert to compare against xlen or
7061         flen based on register type.
7062
7063 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
7064
7065         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
7066
7067 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
7068
7069         * remote.c (show_hardware_watchpoint_limit): New function.
7070         (show_hardware_watchpoint_length_limit): New function.
7071         (show_hardware_breakpoint_limit): New function.
7072         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
7073         where appropriate, update help text.
7074
7075 2018-07-09  Tom Tromey  <tom@tromey.com>
7076
7077         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
7078         (CLIBS): Don't mention NAT_CLIBS.
7079
7080 2018-07-09  Tom Tromey  <tom@tromey.com>
7081
7082         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
7083         (LIBGDB_OBS, clean mostlyclean): Update.
7084         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
7085
7086 2018-07-09  Tom Tromey  <tom@tromey.com>
7087
7088         * Makefile.in (%.c: %.y): Use ECHO_YACC.
7089         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
7090         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
7091
7092 2018-07-09  Tom Tromey  <tom@tromey.com>
7093
7094         * Makefile.in (ALLDEPFILES): Remove exec.c.
7095         (COMMON_OBS): Remove exec.o.
7096         (COMMON_SFILES): Add exec.c.
7097
7098 2018-07-09  Tom Tromey  <tom@tromey.com>
7099
7100         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
7101
7102 2018-07-09  Tom Tromey  <tom@tromey.com>
7103
7104         * Makefile.in (clean mostlyclean): Remove stamp-version.
7105         (version.c): Depend on stamp-version.
7106         (stamp-version): New rule, from version.c rule.
7107
7108 2018-07-09  Tom Tromey  <tom@tromey.com>
7109
7110         * Makefile.in (init.c): Depend on stamp-init.
7111         (stamp-init): New rule, from init.c rule.
7112         (clean mostlyclean): Remove stamp-init.
7113
7114 2018-07-09  Tom Tromey  <tom@tromey.com>
7115
7116         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
7117         SUBDIR_GCC_COMPILE_SRCS.
7118
7119 2018-07-09  Tom Tromey  <tom@tromey.com>
7120
7121         * Makefile.in (init.c): Remove some unused sed rules.
7122
7123 2018-07-09  Tom Tromey  <tom@tromey.com>
7124
7125         * Makefile.in (TSOBS): Remove.
7126         (INIT_FILES): Update.
7127         (LIBGDB_OBS): Update.
7128         (COMMON_SFILES): Add inflow.c.
7129         (SFILES): Remove inflow.c.
7130
7131 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
7132
7133         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
7134
7135 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
7136
7137         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
7138         get_saveloc_name, is_signal_frame_name, step_name,
7139         init_remote_name, create_addr_space_name,
7140         destroy_addr_space_name, search_unwind_table_name,
7141         find_dyn_list_name): Constify.
7142
7143 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
7144
7145         * darwin-nat.c (darwin_pthread_kill): New function.
7146         (darwin_resume_thread): Use darwin_pthread_kill.
7147
7148 2018-07-05  Tom de Vries  <tdevries@suse.de>
7149
7150         * macroexp.c (macro_buffer) <operator=>: New member function.
7151
7152 2018-07-04  Tom Tromey  <tom@tromey.com>
7153
7154         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
7155
7156 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
7157
7158         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
7159         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
7160         * maint.c: Likewise.
7161         * top.c: Likewise.
7162
7163 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
7164
7165         * NEWS: Create a new section for the next release branch.
7166         Rename the section of the current branch, now that it has
7167         been cut.
7168
7169 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
7170
7171         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
7172         * version.in: Bump version to 8.2.50.DATE-git.
7173
7174 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
7175             Pedro Alves  <palves@redhat.com>
7176
7177         * linux-nat.c (linux_init_ptrace): Rename to ...
7178         (linux_init_ptrace_procfs): ... this.  Call
7179         linux_proc_init_warnings.
7180         (linux_nat_target::post_attach)
7181         (linux_nat_target::post_startup_inferior): Adjust.
7182         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
7183         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
7184
7185 2018-07-04  Tom de Vries  <tdevries@suse.de>
7186
7187         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
7188         check ...
7189         (read_comp_unit_head): ... here.
7190
7191 2018-07-03  Tom Tromey  <tom@tromey.com>
7192
7193         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
7194         (stop_tracing, tstatus_command)
7195         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
7196         (print_one_static_tracepoint_marker): Update.
7197         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
7198         std::vector.
7199         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
7200         VEC.
7201         (all_tracepoints, static_tracepoints_here): Return std::vector.
7202
7203 2018-07-03  Tom Tromey  <tom@tromey.com>
7204
7205         * common/ptid.c (ptid_equal): Remove.
7206         * common/ptid.h (ptid_equal): Don't declare.
7207         * ada-tasks.c: Update.
7208         * breakpoint.c: Update.
7209         * common/agent.c: Update.
7210         * corelow.c: Update.
7211         * darwin-nat-info.c: Update.
7212         * darwin-nat.c: Update.
7213         * dcache.c: Update.
7214         * dtrace-probe.c: Update.
7215         * dummy-frame.c: Update.
7216         * fbsd-nat.c: Update.
7217         * frame.c: Update.
7218         * gdbthread.h: Update.
7219         * gnu-nat.c: Update.
7220         * go32-nat.c: Update.
7221         * inf-loop.c: Update.
7222         * inf-ptrace.c: Update.
7223         * infcall.c: Update.
7224         * infcmd.c: Update.
7225         * inflow.c: Update.
7226         * infrun.c: Update.
7227         * linux-fork.c: Update.
7228         * linux-nat.c: Update.
7229         * linux-thread-db.c: Update.
7230         * mi/mi-cmd-var.c: Update.
7231         * mi/mi-interp.c: Update.
7232         * mi/mi-main.c: Update.
7233         * nto-procfs.c: Update.
7234         * ppc-linux-tdep.c: Update.
7235         * procfs.c: Update.
7236         * python/py-inferior.c: Update.
7237         * python/py-record-btrace.c: Update.
7238         * python/py-record.c: Update.
7239         * ravenscar-thread.c: Update.
7240         * regcache.c: Update.
7241         * remote-sim.c: Update.
7242         * remote.c: Update.
7243         * sol-thread.c: Update.
7244         * solib.c: Update.
7245         * target.c: Update.
7246         * tui/tui-stack.c: Update.
7247         * varobj.c: Update.
7248         * windows-nat.c: Update.
7249         * windows-tdep.c: Update.
7250
7251 2018-07-03  Tom Tromey  <tom@tromey.com>
7252
7253         * common/ptid.c (ptid_match): Remove.
7254         * common/ptid.h (ptid_match): Don't declare.
7255         * fbsd-nat.c: Update.
7256         * infcmd.c: Update.
7257         * infrun.c: Update.
7258         * linux-nat.c: Update.
7259         * record-btrace.c: Update.
7260         * regcache.c: Update.
7261         * remote.c: Update.
7262
7263 2018-07-03  Tom Tromey  <tom@tromey.com>
7264
7265         * common/ptid.c (ptid_tid_p): Remove.
7266         * common/ptid.h (ptid_tid_p): Don't declare.
7267         * sol-thread.c: Update.
7268
7269 2018-07-03  Tom Tromey  <tom@tromey.com>
7270
7271         * common/ptid.c (ptid_lwp_p): Remove.
7272         * common/ptid.h (ptid_lwp_p): Don't declare.
7273         * fbsd-nat.c: Update.
7274         * linux-nat.c: Update.
7275         * nat/linux-procfs.c: Update.
7276         * nat/x86-linux-dregs.c: Update.
7277         * sol-thread.c: Update.
7278
7279 2018-07-03  Tom Tromey  <tom@tromey.com>
7280
7281         * common/ptid.c (ptid_is_pid): Remove.
7282         * common/ptid.h (ptid_is_pid): Don't declare.
7283         * infrun.c: Update.
7284         * linux-nat.c: Update.
7285         * mi/mi-interp.c: Update.
7286         * remote.c: Update.
7287         * thread.c: Update.
7288
7289 2018-07-03  Tom Tromey  <tom@tromey.com>
7290
7291         * common/ptid.c (ptid_get_tid): Remove.
7292         * common/ptid.h (ptid_get_tid): Don't declare.
7293         * ada-tasks.c: Update.
7294         * aix-thread.c: Update.
7295         * bsd-uthread.c: Update.
7296         * darwin-nat.c: Update.
7297         * fbsd-nat.c: Update.
7298         * i386-darwin-nat.c: Update.
7299         * infrun.c: Update.
7300         * linux-tdep.c: Update.
7301         * nto-procfs.c: Update.
7302         * ppc-ravenscar-thread.c: Update.
7303         * python/py-infthread.c: Update.
7304         * ravenscar-thread.c: Update.
7305         * sol-thread.c: Update.
7306         * sparc-ravenscar-thread.c: Update.
7307         * windows-nat.c: Update.
7308
7309 2018-07-03  Tom Tromey  <tom@tromey.com>
7310
7311         * common/ptid.c (ptid_get_lwp): Remove.
7312         * common/ptid.h (ptid_get_lwp): Don't declare.
7313         * aarch64-linux-nat.c: Update.
7314         * ada-tasks.c: Update.
7315         * aix-thread.c: Update.
7316         * amd64-linux-nat.c: Update.
7317         * arm-linux-nat.c: Update.
7318         * corelow.c: Update.
7319         * fbsd-nat.c: Update.
7320         * fbsd-tdep.c: Update.
7321         * gnu-nat.c: Update.
7322         * i386-cygwin-tdep.c: Update.
7323         * i386-gnu-nat.c: Update.
7324         * i386-linux-nat.c: Update.
7325         * ia64-linux-nat.c: Update.
7326         * inf-ptrace.c: Update.
7327         * infrun.c: Update.
7328         * linux-fork.c: Update.
7329         * linux-nat.c: Update.
7330         * linux-tdep.c: Update.
7331         * linux-thread-db.c: Update.
7332         * mips-linux-nat.c: Update.
7333         * nat/aarch64-linux-hw-point.c: Update.
7334         * nat/aarch64-linux.c: Update.
7335         * nat/linux-btrace.c: Update.
7336         * nat/linux-osdata.c: Update.
7337         * nat/linux-procfs.c: Update.
7338         * nat/x86-linux-dregs.c: Update.
7339         * obsd-nat.c: Update.
7340         * ppc-fbsd-nat.c: Update.
7341         * ppc-linux-nat.c: Update.
7342         * procfs.c: Update.
7343         * python/py-infthread.c: Update.
7344         * ravenscar-thread.c: Update.
7345         * remote.c: Update.
7346         * s390-linux-nat.c: Update.
7347         * sol-thread.c: Update.
7348         * sol2-tdep.c: Update.
7349         * spu-linux-nat.c: Update.
7350         * x86-linux-nat.c: Update.
7351         * xtensa-linux-nat.c: Update.
7352
7353 2018-07-03  Tom Tromey  <tom@tromey.com>
7354
7355         * common/ptid.c (ptid_get_pid): Remove.
7356         * common/ptid.h (ptid_get_pid): Don't declare.
7357         * aarch64-linux-nat.c: Update.
7358         * ada-lang.c: Update.
7359         * aix-thread.c: Update.
7360         * alpha-bsd-nat.c: Update.
7361         * amd64-fbsd-nat.c: Update.
7362         * amd64-linux-nat.c: Update.
7363         * arm-linux-nat.c: Update.
7364         * arm-nbsd-nat.c: Update.
7365         * auxv.c: Update.
7366         * break-catch-syscall.c: Update.
7367         * breakpoint.c: Update.
7368         * bsd-uthread.c: Update.
7369         * corelow.c: Update.
7370         * ctf.c: Update.
7371         * darwin-nat.c: Update.
7372         * fbsd-nat.c: Update.
7373         * fbsd-tdep.c: Update.
7374         * gcore.c: Update.
7375         * gnu-nat.c: Update.
7376         * hppa-nbsd-nat.c: Update.
7377         * hppa-obsd-nat.c: Update.
7378         * i386-fbsd-nat.c: Update.
7379         * ia64-linux-nat.c: Update.
7380         * inf-ptrace.c: Update.
7381         * infcmd.c: Update.
7382         * inferior.c: Update.
7383         * inferior.h: Update.
7384         * inflow.c: Update.
7385         * infrun.c: Update.
7386         * linux-fork.c: Update.
7387         * linux-nat.c: Update.
7388         * linux-tdep.c: Update.
7389         * linux-thread-db.c: Update.
7390         * m68k-bsd-nat.c: Update.
7391         * mi/mi-interp.c: Update.
7392         * mi/mi-main.c: Update.
7393         * mips-linux-nat.c: Update.
7394         * mips-nbsd-nat.c: Update.
7395         * mips64-obsd-nat.c: Update.
7396         * nat/aarch64-linux-hw-point.c: Update.
7397         * nat/aarch64-linux.c: Update.
7398         * nat/linux-btrace.c: Update.
7399         * nat/linux-osdata.c: Update.
7400         * nat/linux-procfs.c: Update.
7401         * nat/x86-linux-dregs.c: Update.
7402         * nto-procfs.c: Update.
7403         * obsd-nat.c: Update.
7404         * ppc-linux-nat.c: Update.
7405         * ppc-nbsd-nat.c: Update.
7406         * ppc-obsd-nat.c: Update.
7407         * proc-service.c: Update.
7408         * procfs.c: Update.
7409         * python/py-inferior.c: Update.
7410         * python/py-infthread.c: Update.
7411         * ravenscar-thread.c: Update.
7412         * record.c: Update.
7413         * remote-sim.c: Update.
7414         * remote.c: Update.
7415         * rs6000-nat.c: Update.
7416         * s390-linux-nat.c: Update.
7417         * sh-nbsd-nat.c: Update.
7418         * sol-thread.c: Update.
7419         * sparc-nat.c: Update.
7420         * sparc64-tdep.c: Update.
7421         * spu-linux-nat.c: Update.
7422         * spu-tdep.c: Update.
7423         * target-debug.h: Update.
7424         * target.c: Update.
7425         * thread.c: Update.
7426         * tid-parse.c: Update.
7427         * tracefile-tfile.c: Update.
7428         * vax-bsd-nat.c: Update.
7429         * windows-nat.c: Update.
7430         * x86-linux-nat.c: Update.
7431         * x86-nat.c: Update.
7432
7433 2018-07-03  Tom Tromey  <tom@tromey.com>
7434
7435         * common/ptid.c (pid_to_ptid): Remove.
7436         * common/ptid.h (pid_to_ptid): Don't declare.
7437         * aix-thread.c: Update.
7438         * arm-linux-nat.c: Update.
7439         * common/ptid.c: Update.
7440         * common/ptid.h: Update.
7441         * corelow.c: Update.
7442         * ctf.c: Update.
7443         * darwin-nat.c: Update.
7444         * fbsd-nat.c: Update.
7445         * fork-child.c: Update.
7446         * gnu-nat.c: Update.
7447         * go32-nat.c: Update.
7448         * inf-ptrace.c: Update.
7449         * infcmd.c: Update.
7450         * inferior.c: Update.
7451         * infrun.c: Update.
7452         * linux-fork.c: Update.
7453         * linux-nat.c: Update.
7454         * nat/aarch64-linux-hw-point.c: Update.
7455         * nat/fork-inferior.c: Update.
7456         * nat/x86-linux-dregs.c: Update.
7457         * nto-procfs.c: Update.
7458         * obsd-nat.c: Update.
7459         * procfs.c: Update.
7460         * progspace.c: Update.
7461         * remote.c: Update.
7462         * rs6000-nat.c: Update.
7463         * s390-linux-nat.c: Update.
7464         * sol-thread.c: Update.
7465         * spu-linux-nat.c: Update.
7466         * target.c: Update.
7467         * top.c: Update.
7468         * tracefile-tfile.c: Update.
7469         * windows-nat.c: Update.
7470
7471 2018-07-03  Tom Tromey  <tom@tromey.com>
7472
7473         * common/ptid.h (ptid_build): Don't declare.
7474         * common/ptid.c (ptid_build): Remove.
7475         * aix-thread.c: Update.
7476         * bsd-kvm.c: Update.
7477         * bsd-uthread.c: Update.
7478         * common/agent.c: Update.
7479         * common/ptid.c: Update.
7480         * common/ptid.h: Update.
7481         * corelow.c: Update.
7482         * darwin-nat.c: Update.
7483         * fbsd-nat.c: Update.
7484         * gnu-nat.c: Update.
7485         * linux-fork.c: Update.
7486         * linux-nat.c: Update.
7487         * linux-thread-db.c: Update.
7488         * nat/linux-osdata.c: Update.
7489         * nat/linux-procfs.c: Update.
7490         * nto-procfs.c: Update.
7491         * obsd-nat.c: Update.
7492         * proc-service.c: Update.
7493         * procfs.c: Update.
7494         * ravenscar-thread.c: Update.
7495         * remote-sim.c: Update.
7496         * remote.c: Update.
7497         * sol-thread.c: Update.
7498         * target.c: Update.
7499         * windows-nat.c: Update.
7500
7501 2018-07-03  Tom Tromey  <tom@tromey.com>
7502
7503         * infrun.c (follow_exec): Use exit_inferior_silent.
7504         * inferior.c (exit_inferior_num_silent): Remove.
7505         * inferior.h (exit_inferior_num_silent): Don't declare.
7506
7507 2018-07-03  Tom Tromey  <tom@tromey.com>
7508
7509         PR cli/23340:
7510         * darwin-nat.c (darwin_attach_pid): Reset inferior and
7511         inferior_ptid on error.
7512
7513 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
7514             Simon Marchi  <simon.marchi@polymtl.ca>
7515
7516         PR tdep/8282
7517         * disasm.h (gdb_disassembler): Add
7518         `m_disassembler_options_holder'. member
7519         * disasm.c (get_all_disassembler_options): New function.
7520         (gdb_disassembler::gdb_disassembler): Use it.
7521         (gdb_buffered_insn_length_init_dis): Likewise.
7522         (gdb_buffered_insn_length): Adjust accordingly.
7523         (set_disassembler_options): Handle options with arguments.
7524         (show_disassembler_options_sfunc): Likewise.  Add a leading new
7525         line if showing options with descriptions.
7526         (disassembler_options_completer): Adapt to using the
7527         `disasm_options_and_args_t' structure.
7528         * mips-tdep.c (mips_disassembler_options): New variable.
7529         (mips_disassembler_options_o32): Likewise.
7530         (mips_disassembler_options_n32): Likewise.
7531         (mips_disassembler_options_n64): Likewise.
7532         (gdb_print_insn_mips): Don't set `disassembler_options'.
7533         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
7534         functions.
7535         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
7536         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
7537         `gdbarch_disassembler_options_implicit' and
7538         `gdbarch_valid_disassembler_options'.
7539         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
7540         `disasm_options_and_args_t' structure.
7541         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
7542         method.
7543         (valid_disassembler_options): Switch from `disasm_options_t' to
7544         the `disasm_options_and_args_t' structure.
7545         * NEWS: Document `set disassembler-options' support for the MIPS
7546         target.
7547         * gdbarch.h: Regenerate.
7548         * gdbarch.c: Regenerate.
7549
7550 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
7551
7552         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
7553
7554 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
7555
7556         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
7557         parameter in call to amd64_target_description.
7558         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
7559         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
7560         (amd64fbsd_init_abi): Likewise.
7561         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
7562         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
7563         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
7564         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
7565
7566 2018-06-29  Pedro Alves  <palves@redhat.com>
7567
7568         * gdb/amd64-tdep.h (amd64_create_target_description): Add
7569         "segments" parameter.
7570         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
7571         (_initialize_amd64_tdep): Update call to
7572         amd64_create_target_description.
7573         (amd64_target_description): Add "segments" parameter.  Adjust
7574         the implementation to use it.
7575         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
7576         call to amd64_create_target_description.
7577         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
7578         * gdb/arch/amd64.h (amd64_create_target_description): Add
7579         "segments" register.
7580         * gdb/arch/amd64.c (amd64_create_target_description): Add
7581         "segments" parameter.  Call create_feature_i386_64bit_segments
7582         only if SEGMENTS is true.
7583         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
7584         call to amd64_create_target_description.
7585
7586 2018-06-29  Pedro Alves  <palves@redhat.com>
7587
7588         * thread.c (thread_target_id_str): New, factored out from ...
7589         (print_thread_info_1): ... here.  Use it to compute the max
7590         "Target Id" column width.
7591
7592 2018-06-29  Pedro Alves  <palves@redhat.com>
7593
7594         * remote.c (remote_target::extra_thread_info): Delete
7595         'display_buf' and 'n' locals.  from the cache, regardless of
7596         packet mechanims is in use.  Use cache for qThreadExtra and qP
7597         methods too.
7598
7599 2018-06-29  Pedro Alves  <palves@redhat.com>
7600
7601         * blockframe.c (find_pc_sect_containing_function): New function.
7602         * breakpoint.c (print_breakpoint_location): Don't call
7603         find_pc_sect_function.
7604         * linespec.c (create_sals_line_offset): Record the location's
7605         symbol in the sal.
7606         * linespec.c (convert_address_location_to_sals): Fill in sal's
7607         symbol with find_pc_sect_containing_function.
7608         * symtab.c (find_function_start_sal): Rename to ...
7609         (find_function_start_sal_1): ... this.
7610         (find_function_start_sal): Reimplement as wrapper around
7611         find_function_start_sal_1, and use
7612         find_pc_sect_containing_function to fill in the sal's symbol.
7613         (find_function_start_sal(symbol*, bool)): Adjust.
7614         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
7615         comments.
7616         (find_pc_sect_containing_function): Declare.
7617
7618 2018-06-29  Pedro Alves  <palves@redhat.com>
7619
7620         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
7621         true if the the location has no symbol.
7622
7623 2018-06-28  Tom Tromey  <tom@tromey.com>
7624
7625         * NEWS: Mention --enable-codesign.
7626         * silent-rules.mk (ECHO_SIGN): New variable.
7627         * configure.ac: Add --enable-codesign.
7628         * configure: Rebuild.
7629         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
7630         (gdb$(EXEEXT)): Optionally invoke codesign.
7631
7632 2018-06-28  Pedro Alves  <palves@redhat.com>
7633
7634         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
7635         comments.
7636         (switch_to_thread_no_regs): Adjust comment.
7637         * infcmd.c (stop_pc): Delete.
7638         (post_create_inferior, info_program_command): Replace references
7639         to stop_pc with references to thread_info->suspend.stop_pc.
7640         * inferior.h (stop_pc): Delete declaration.
7641         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
7642         (handle_inferior_event_1, handle_signal_stop)
7643         (process_event_stop_test, keep_going_stepped_thread)
7644         (handle_step_into_function, handle_step_into_function_backward)
7645         (print_stop_location): Replace references to stop_pc with
7646         references to thread_info->suspend.stop_pc.
7647         (struct infcall_suspend_state) <stop_pc>: Delete field.
7648         (save_infcall_suspend_state, restore_infcall_suspend_state):
7649         Remove references to inf_stat->stop_pc.
7650         * linux-fork.c (fork_load_infrun_state): Likewise.
7651         * record-btrace.c (record_btrace_set_replay): Likewise.
7652         * record-full.c (record_full_goto_entry): Likewise.
7653         * remote.c (print_one_stopped_thread): Likewise.
7654         * target.c (target_resume): Extend comment.
7655         * thread.c (set_executing_thread): New.
7656         (set_executing): Use it.
7657         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
7658         Remove references to stop_pc.
7659
7660 2018-06-28  Pedro Alves  <palves@redhat.com>
7661
7662         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
7663         Moving fetching stop_pc until after ecs->event_thread is refreshed.
7664
7665 2018-06-28  Tom Tromey  <tom@tromey.com>
7666
7667         * coffread.c (coff_symfile_finish): Update.
7668         * xcoffread.c (xcoff_symfile_finish): Update.
7669         * elfread.c (elf_symfile_finish): Update.
7670         * symfile.h (dwarf2_free_objfile): Don't declare.
7671         * dwarf2read.c (_initialize_dwarf2_read): Use
7672         register_objfile_data_with_cleanup.
7673         (dwarf2_free_objfile): Now static.  Change signature.
7674
7675 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7676
7677         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
7678         option "-o" to add-symbol-file-load to add an offset to each
7679         section's load address.
7680         * symfile.c (set_objfile_default_section_offset): New function.
7681
7682 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7683
7684         * symfile.c (add_symbol_file_command): Make sure that sections
7685         with the same name are sorted in the same order.
7686
7687 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7688
7689         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
7690         require the second argument.  If omitted, load sections at the
7691         addresses specified in the file.
7692
7693 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7694
7695         * symfile.c (symbol_file_command, symbol_file_add_main_1)
7696         (_initialize_symfile): Add option "-o" to symbol-file to add an
7697         offset to each section of the symbol file.
7698
7699 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7700
7701         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
7702
7703 2018-06-27  Tom Tromey  <tom@tromey.com>
7704
7705         * stack.c (_initialize_stack): Update "func" help text.
7706
7707 2018-06-27  Tom Tromey  <tom@tromey.com>
7708
7709         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
7710         std::vector.
7711         (unwind_infopy_str, pyuw_create_unwind_info)
7712         (unwind_infopy_add_saved_register, pyuw_sniffer)
7713         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
7714         Update.
7715         (struct saved_reg): Add constructor.
7716         <value>: Now a gdbpy_ref<>.
7717
7718 2018-06-27  Tom Tromey  <tom@tromey.com>
7719
7720         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
7721
7722 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7723
7724         * gdb-gdb.py.in: Format using autopep8.
7725
7726 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7727
7728         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
7729         (type_lookup_function): Recognize CORE_ADDR values.
7730
7731 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7732
7733         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
7734         print tag_name.
7735
7736 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7737
7738         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
7739         <__lt__>: Add.
7740
7741 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7742
7743         * gdb-gdb.py: Move to...
7744         * gdb-gdb.py.in: ... here.
7745         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
7746         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
7747         dependencies.
7748         (distclean): Remove gdb-gdb.py when cleaning.
7749         (gdb-gdb.py, gdb-gdb.gdb): New rules.
7750         * configure: Re-generate.
7751
7752 2018-06-27  Pedro Alves  <palves@redhat.com>
7753
7754         * proc-service.c (get_ps_regcache): New.
7755         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
7756         (ps_lsetfpregs): Use it.
7757
7758 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
7759
7760         PR gdb/21695
7761         * dwarf2read.c (lnp_state_machine::check_line_address): Update
7762         declaration.
7763         (dwarf_decode_lines_1): Adjust.
7764
7765 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7766
7767         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
7768         override.
7769         <info_proc>: Likewise.
7770
7771 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
7772
7773         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
7774         to windows_fetch_one_register, and only handle the case of
7775         fetching one register.  Move the code that reloads the context
7776         and iterates over all registers if R is negative to...
7777         (windows_nat_target::fetch_registers): ... here.
7778         (do_windows_store_inferior_registers): Rename to
7779         windows_store_one_register, and only handle the case of storing
7780         one register.  Move the code that handles the case where r is
7781         negative to...
7782         (windows_nat_target::store_registers) ... here.
7783
7784 2018-06-26  Tom Tromey  <tom@tromey.com>
7785
7786         PR rust/22574:
7787         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
7788         * rust-lang.c (rust_print_struct_def): Add podata parameter.
7789         Update.
7790         (rust_internal_print_type): Add podata parameter.
7791         (rust_print_type): Update.
7792
7793 2018-06-26  Tom Tromey  <tom@tromey.com>
7794
7795         * typeprint.h (struct print_offset_data) <update, finish,
7796         maybe_print_hole>: New methods.
7797         <indentation>: New constant.
7798         * typeprint.c (print_offset_data::indentation): Define.
7799         (print_offset_data::maybe_print_hole, print_offset_data::update)
7800         (print_offset_data::finish): Move from c-typeprint.c and rename.
7801         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
7802         (print_spaces_filtered_with_print_options): Update.
7803         (c_print_type_union_field_offset, maybe_print_hole)
7804         (c_print_type_struct_field_offset): Move to typeprint.c and
7805         rename.
7806         (c_type_print_base_struct_union): Update.
7807
7808 2018-06-25  Pedro Alves  <palves@redhat.com>
7809
7810         * gdbthread.h (thread_info_ref, delete_thread)
7811         (delete_thread_silent, first_thread_of_inferior)
7812         (any_thread_of_inferior, switch_to_thread)
7813         (enable_thread_stack_temporaries)
7814         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7815         (get_last_thread_stack_temporary)
7816         (value_in_thread_stack_temporaries, can_access_registers_thread):
7817         Spell out "struct thread_info" instead of just "thread_info".
7818         * inferior.h (notice_new_inferior): Likewise.
7819
7820 2018-06-25  Pedro Alves  <palves@redhat.com>
7821
7822         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7823         pass thread_info pointer to delete_thread.
7824         (windows_nat_target::detach): Pass inferior pointer to
7825         detach_inferior.
7826         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
7827         delete_thread.
7828         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
7829         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
7830         and pass a thread_info pointer to delete_thread.
7831         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
7832         pass thread_info pointer to delete_thread.
7833         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
7834         delete_thread_silent call.
7835         * procfs.c (procfs_target::detach): Pass inferior pointer to
7836         detach_inferior.
7837         (procfs_target::wait): Pass thread_info pointer to delete_thread.
7838         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
7839         delete_thread_silent call.
7840         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7841         pass thread_info pointer to delete_thread.
7842         (windows_nat_target::detach): Pass inferior pointer to
7843         delete_inferior.
7844
7845 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7846
7847         * regcache.c (readable_regcache::read_part): Fix asserts.
7848         (reg_buffer::raw_collect_part): New function.
7849         (regcache::write_part): Fix asserts.
7850         (reg_buffer::raw_supply_part): New function.
7851         (regcache::transfer_regset_register): New helper function.
7852         (regcache::transfer_regset): Call new functions.
7853         (regcache_supply_regset): Use gdb_byte*.
7854         (regcache::supply_regset): Likewise.
7855         (regcache_collect_regset): Likewise.
7856         (regcache::collect_regset): Likewise.
7857         * regcache.h (reg_buffer::raw_collect_part): New declaration.
7858         (reg_buffer::raw_supply_part): Likewise.
7859         (regcache::transfer_regset_register): Likewise.
7860         (regcache::transfer_regset): Use gdb_byte*.
7861
7862 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7863
7864         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
7865
7866 2018-06-21  Pedro Alves  <palves@redhat.com>
7867
7868         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
7869         instead of a ptid_t.  All callers adjusted.
7870         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
7871         adjusted.
7872         (print_ada_task_info, display_current_task_id, task_command_1):
7873         Adjust.
7874         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
7875         inferior_thread.
7876         (breakpoint_kind): Adjust.
7877         (remove_breakpoints_pid): Rename to ...
7878         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
7879         pointer.  All callers adjusted.
7880         (bpstat_clear_actions): Use inferior_thread.
7881         (get_bpstat_thread): New.
7882         (bpstat_do_actions): Use it.
7883         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
7884         to take a thread_info pointer.  All callers adjusted.
7885         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
7886         (breakpoint_re_set_thread): Use inferior_thread.
7887         * breakpoint.h (struct inferior): Forward declare.
7888         (bpstat_stop_status): Update.
7889         (remove_breakpoints_pid): Delete.
7890         (remove_breakpoints_inf): New.
7891         * bsd-uthread.c (bsd_uthread_target::wait)
7892         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
7893         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
7894         (maint_btrace_packet_history_cmd)
7895         (maint_btrace_clear_packet_history_cmd): Adjust.
7896         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
7897         inferior_thread.
7898         * cli/cli-interp.c: Include "inferior.h".
7899         * common/refcounted-object.h (struct
7900         refcounted_object_ref_policy): New.
7901         * compile/compile-object-load.c: Include gdbthread.h.
7902         (store_regs): Use inferior_thread.
7903         * corelow.c (core_target::close): Use current_inferior.
7904         (core_target_open): Adjust to use first_thread_of_inferior and use
7905         the current inferior.
7906         * ctf.c (ctf_target::close): Adjust to use current_inferior.
7907         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
7908         <thread>: ... this new field.  All references adjusted.
7909         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
7910         Take a thread_info pointer instead of a ptid_t.
7911         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
7912         (dummy_frame_discard, register_dummy_frame_dtor): Take a
7913         thread_info pointer instead of a ptid_t.
7914         * elfread.c: Include "inferior.h".
7915         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
7916         Use inferior_thread.
7917         * eval.c (evaluate_subexp): Likewise.
7918         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
7919         inferior_thread.
7920         * gdb_proc_service.h (struct thread_info): Forward declare.
7921         (struct ps_prochandle) <ptid>: Delete, replaced by ...
7922         <thread>: ... this new field.  All references adjusted.
7923         * gdbarch.h, gdbarch.c: Regenerate.
7924         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
7925         'thread' parameter.  All implementations and callers adjusted.
7926         * gdbthread.h (thread_info) <set_running>: New method.
7927         (delete_thread, delete_thread_silent): Take a thread_info pointer
7928         instead of a ptid.
7929         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
7930         (first_thread_of_process): Delete, replaced by ...
7931         (first_thread_of_inferior): ... this new function.  All callers
7932         adjusted.
7933         (any_live_thread_of_process): Delete, replaced by ...
7934         (any_live_thread_of_inferior): ... this new function.  All callers
7935         adjusted.
7936         (switch_to_thread, switch_to_no_thread): Declare.
7937         (is_executing): Delete.
7938         (enable_thread_stack_temporaries): Update comment.
7939         <enable_thread_stack_temporaries>: Take a thread_info pointer
7940         instead of a ptid_t.  Incref the thread.
7941         <~enable_thread_stack_temporaries>: Decref the thread.
7942         <m_ptid>: Delete
7943         <m_thr>: New.
7944         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7945         (get_last_thread_stack_temporary)
7946         (value_in_thread_stack_temporaries, can_access_registers_thread):
7947         Take a thread_info pointer instead of a ptid_t.  All callers
7948         adjusted.
7949         * infcall.c (get_call_return_value): Use inferior_thread.
7950         (run_inferior_call): Work with thread pointers instead of ptid_t.
7951         (call_function_by_hand_dummy): Work with thread pointers instead
7952         of ptid_t.  Use thread_info_ref.
7953         * infcmd.c (proceed_thread_callback): Access thread's state
7954         directly.
7955         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
7956         access thread's state directly.
7957         (continue_command): Use inferior_thread.
7958         (info_program_command): Use find_thread_ptid and access thread
7959         state directly.
7960         (proceed_after_attach_callback): Use thread state directly.
7961         (notice_new_inferior): Take a thread_info pointer instead of a
7962         ptid_t.  All callers adjusted.
7963         (exit_inferior): Take an inferior pointer instead of a pid.  All
7964         callers adjusted.
7965         (exit_inferior_silent): New.
7966         (detach_inferior): Delete.
7967         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
7968         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
7969         (detach_inferior_command, kill_inferior_command): Use
7970         find_inferior_id instead of valid_gdb_inferior_id and
7971         gdb_inferior_id_to_pid.
7972         (inferior_command): Use inferior and thread pointers.
7973         * inferior.h (struct thread_info): Forward declare.
7974         (notice_new_inferior): Take a thread_info pointer instead of a
7975         ptid_t.  All callers adjusted.
7976         (detach_inferior): Delete declaration.
7977         (exit_inferior, exit_inferior_silent): Take an inferior pointer
7978         instead of a pid.  All callers adjusted.
7979         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
7980         (valid_gdb_inferior_id): Delete.
7981         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
7982         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
7983         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
7984         ...
7985         <inf>: ... this new field.
7986         <step_ptid>: Delete, replaced by ...
7987         <step_thread>: ... this new field.
7988         (get_displaced_stepping_state): Take an inferior pointer instead
7989         of a pid.  All callers adjusted.
7990         (displaced_step_in_progress_any_inferior): Adjust.
7991         (displaced_step_in_progress_thread): Take a thread pointer instead
7992         of a ptid_t.  All callers adjusted.
7993         (displaced_step_in_progress, add_displaced_stepping_state): Take
7994         an inferior pointer instead of a pid.  All callers adjusted.
7995         (get_displaced_step_closure_by_addr): Adjust.
7996         (remove_displaced_stepping_state): Take an inferior pointer
7997         instead of a pid.  All callers adjusted.
7998         (displaced_step_prepare_throw, displaced_step_prepare)
7999         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
8000         All callers adjusted.
8001         (start_step_over): Adjust.
8002         (infrun_thread_ptid_changed): Remove bit updating ptids in the
8003         displaced step queue.
8004         (do_target_resume): Adjust.
8005         (fetch_inferior_event): Use inferior_thread.
8006         (context_switch, get_inferior_stop_soon): Take an
8007         execution_control_state pointer instead of a ptid_t.  All callers
8008         adjusted.
8009         (switch_to_thread_cleanup): Delete.
8010         (stop_all_threads): Use scoped_restore_current_thread.
8011         * inline-frame.c: Include "gdbthread.h".
8012         (inline_state) <inline_state>: Take a thread pointer instead of a
8013         ptid_t.  All callers adjusted.
8014         <ptid>: Delete, replaced by ...
8015         <thread>: ... this new field.
8016         (find_inline_frame_state): Take a thread pointer instead of a
8017         ptid_t.  All callers adjusted.
8018         (skip_inline_frames, step_into_inline_frame)
8019         (inline_skipped_frames, inline_skipped_symbol): Take a thread
8020         pointer instead of a ptid_t.  All callers adjusted.
8021         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
8022         (inline_skipped_frames, inline_skipped_symbol): Likewise.
8023         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
8024         pointers directly.
8025         * linux-nat.c (get_detach_signal): Likewise.
8026         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
8027         (thread_db_notice_clone): Adjust.
8028         (thread_db_find_new_threads_silently)
8029         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
8030         a thread pointer instead of a ptid_t.  All callers adjusted.
8031         * mi/mi-cmd-var.c: Include "inferior.h".
8032         (mi_cmd_var_update_iter): Update to use thread pointers.
8033         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
8034         inferior directly.
8035         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
8036         out to ...
8037         (mi_output_running): ... this new function.
8038         (mi_on_resume_1): Adjust to use it.
8039         (mi_user_selected_context_changed): Adjust to use inferior_thread.
8040         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
8041         directly.
8042         (interrupt_thread_callback): : Adjust to use thread and inferior
8043         pointers.
8044         * proc-service.c: Include "gdbthread.h".
8045         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
8046         * progspace-and-thread.c: Include "inferior.h".
8047         * progspace.c: Include "inferior.h".
8048         * python/py-exitedevent.c (create_exited_event_object): Adjust to
8049         hold a reference to an inferior_object.
8050         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
8051         inferior_thread.
8052         * python/py-inferior.c (struct inferior_object): Give the type a
8053         tag name instead of a typedef.
8054         (python_on_normal_stop): No need to check if the current thread is
8055         listed.
8056         (inferior_to_inferior_object): Change return type to
8057         inferior_object.  All callers adjusted.
8058         (find_thread_object): Delete, bits factored out to ...
8059         (thread_to_thread_object): ... this new function.
8060         * python/py-infthread.c (create_thread_object): Use
8061         inferior_to_inferior_object.
8062         (thpy_is_stopped): Use thread pointer directly.
8063         (gdbpy_selected_thread): Use inferior_thread.
8064         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
8065         field, replaced with ...
8066         <thread>: ... this new field.  All users adjusted.
8067         (btpy_insn_or_gap_new): Drop const.
8068         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
8069         callers adjusted.
8070         * python/py-record.c: Include "gdbthread.h".
8071         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
8072         a ptid_t.  All callers adjusted.
8073         (gdbpy_current_recording): Use inferior_thread.
8074         * python/py-record.h (recpy_record_object) <ptid>: Delete
8075         field, replaced with ...
8076         <thread>: ... this new field.  All users adjusted.
8077         (recpy_element_object) <ptid>: Delete
8078         field, replaced with ...
8079         <thread>: ... this new field.  All users adjusted.
8080         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
8081         a ptid_t.  All callers adjusted.
8082         * python/py-threadevent.c: Include "gdbthread.h".
8083         (get_event_thread): Use thread_to_thread_object.
8084         * python/python-internal.h (struct inferior_object): Forward
8085         declare.
8086         (find_thread_object, find_inferior_object): Delete declarations.
8087         (thread_to_thread_object, inferior_to_inferior_object): New
8088         declarations.
8089         * record-btrace.c: Include "inferior.h".
8090         (require_btrace_thread): Use inferior_thread.
8091         (record_btrace_frame_sniffer)
8092         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
8093         (get_thread_current_frame): Use scoped_restore_current_thread and
8094         switch_to_thread.
8095         (get_thread_current_frame): Use thread pointer directly.
8096         (record_btrace_replay_at_breakpoint): Use thread's inferior
8097         pointer directly.
8098         * record-full.c: Include "inferior.h".
8099         * regcache.c: Include "gdbthread.h".
8100         (get_thread_arch_regcache): Use the inferior's address space
8101         directly.
8102         (get_thread_regcache, registers_changed_thread): New.
8103         * regcache.h (get_thread_regcache(thread_info *thread)): New
8104         overload.
8105         (registers_changed_thread): New.
8106         (remote_target) <remote_detach_1>: Swap order of parameters.
8107         (remote_add_thread): <remote_add_thread>: Return the new thread.
8108         (get_remote_thread_info(ptid_t)): New overload.
8109         (remote_target::remote_notice_new_inferior): Use thread pointers
8110         directly.
8111         (remote_target::process_initial_stop_replies): Use
8112         thread_info::set_running.
8113         (remote_target::remote_detach_1, remote_target::detach)
8114         (extended_remote_target::detach): Adjust.
8115         * stack.c (frame_show_address): Use inferior_thread.
8116         * target-debug.h (target_debug_print_thread_info_pp): New.
8117         * target-delegates.c: Regenerate.
8118         * target.c (default_thread_address_space): Delete.
8119         (memory_xfer_partial_1): Use current_inferior.
8120         (target_detach): Use current_inferior.
8121         (target_thread_address_space): Delete.
8122         (generic_mourn_inferior): Use current_inferior.
8123         * target.h (struct target_ops) <thread_address_space>: Delete.
8124         (target_thread_address_space): Delete.
8125         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
8126         pointers directly.
8127         (delete_thread_1, delete_thread, delete_thread_silent): Take a
8128         thread pointer instead of a ptid_t.  Adjust all callers.
8129         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
8130         (first_thread_of_process): Delete, replaced by ...
8131         (first_thread_of_inferior): ... this new function.  All callers
8132         adjusted.
8133         (any_thread_of_process): Rename to ...
8134         (any_thread_of_inferior): ... this, and take an inferior pointer.
8135         (any_live_thread_of_process): Rename to ...
8136         (any_live_thread_of_inferior): ... this, and take an inferior
8137         pointer.
8138         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
8139         (value_in_thread_stack_temporaries)
8140         (get_last_thread_stack_temporary): Take a thread pointer instead
8141         of a ptid_t.  Adjust all callers.
8142         (thread_info::set_running): New.
8143         (validate_registers_access): Use inferior_thread.
8144         (can_access_registers_ptid): Rename to ...
8145         (can_access_registers_thread): ... this, and take a thread
8146         pointer.
8147         (print_thread_info_1): Adjust to compare thread pointers instead
8148         of ptids.
8149         (switch_to_no_thread, switch_to_thread): Make extern.
8150         (scoped_restore_current_thread::~scoped_restore_current_thread):
8151         Use m_thread pointer directly.
8152         (scoped_restore_current_thread::scoped_restore_current_thread):
8153         Use inferior_thread.
8154         (thread_command): Use thread pointer directly.
8155         (thread_num_make_value_helper): Use inferior_thread.
8156         * top.c (execute_command): Use inferior_thread.
8157         * tui/tui-interp.c: Include "inferior.h".
8158         * varobj.c (varobj_create): Use inferior_thread.
8159         (value_of_root_1): Use find_thread_global_id instead of
8160         global_thread_id_to_ptid.
8161
8162 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
8163
8164         * regcache.c (readable_regcache::read_part): Avoid memcpy when
8165         possible.
8166         (regcache::write_part): Likewise.
8167         (readable_regcache::cooked_read_part): Update comment.
8168         (readable_regcache::cooked_write_part): Likewise.
8169         * regcache.h: (readable_regcache::read_part): Likewise.
8170         (regcache::write_part): Likewise.
8171
8172 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
8173             Dirk Schubert  <dirk.schubert@arm.com>
8174
8175         * aarch64-linux-nat.c (post_attach): New.
8176         (aarch64_linux_nat_target::post_attach): Override post_attach to
8177         record the number of hardware debug registers.
8178
8179 2018-06-20  Tom Tromey  <tom@tromey.com>
8180
8181         * python/py-param.c (add_setshow_generic): Make parameters const.
8182         (parmpy_init): Update.
8183
8184 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
8185
8186         * regcache.h (regcache_cooked_read_ftype): Rename to...
8187         (register_read_ftype): ...this, change type to function_view.
8188         (class reg_buffer) <save>: Remove src parameter.
8189         (readonly_detached_regcache) <readonly_detached_regcache>: Make
8190         parameter non-const in first overload.  Remove src parameter in
8191         second overload.
8192         * regcache.c (do_cooked_read): Remove.
8193         (readonly_detached_regcache::readonly_detached_regcache): Make
8194         parameter non-const, adjust call to other constructor.
8195         (reg_buffer::save): Remove src parameter.
8196         * frame.c (do_frame_register_read): Remove.
8197         (frame_save_as_regcache): Use lambda function.
8198         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
8199         parameter to ppu2spu_data *.
8200         (ppu2spu_sniffer): Use lambda function.
8201
8202 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
8203
8204         * record-full.c (record_full_target::insert_breakpoint): Remove
8205         "struct" keyword, add const.
8206
8207 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
8208
8209         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
8210         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
8211         * configure.ac: Remove AC_PREREQ, add missing quoting.
8212         * gnulib/configure.ac: Modernize usage of
8213         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
8214         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
8215         (AUTOMAKE_VERSION): Bump to 1.15.1.
8216         * configure: Re-generate.
8217         * config.in: Re-generate.
8218         * aclocal.m4: Re-generate.
8219         * gnulib/aclocal.m4: Re-generate.
8220         * gnulib/config.in: Re-generate.
8221         * gnulib/configure: Re-generate.
8222         * gnulib/import/Makefile.in: Re-generate.
8223
8224 2018-06-19  Pedro Alves  <palves@redhat.com>
8225
8226         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
8227         (lookup_minimal_symbol_by_pc_section): ... here with
8228         gdb_assert_not_reached added.
8229
8230 2018-06-19  Pedro Alves  <palves@redhat.com>
8231
8232         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
8233         parameter with a block parameter.  Compare location's block symbol
8234         with the frame's block instead of addresses.
8235         (skip_inline_frames): Pass the current block instead of the
8236         frame's address.  Break out as soon as we determine the frame
8237         should not be skipped.
8238
8239 2018-06-18  Tom Tromey  <tom@tromey.com>
8240
8241         * solib-aix.c (solib_aix_get_section_offsets): Return
8242         unique_xmalloc_ptr.
8243         (solib_aix_solib_create_inferior_hook): Update.
8244
8245 2018-06-18  Tom Tromey  <tom@tromey.com>
8246
8247         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
8248
8249 2018-06-18  Tom Tromey  <tom@tromey.com>
8250
8251         * solib-frv.c (frv_relocate_main_executable): Use
8252         unique_xmalloc_ptr.
8253         * solib-dsbt.c (dsbt_relocate_main_executable): Use
8254         unique_xmalloc_ptr.
8255
8256 2018-06-18  Tom Tromey  <tom@tromey.com>
8257
8258         * objfiles.h (inhibit_section_map_updates): Update.
8259         (resume_section_map_updates, resume_section_map_updates_cleanup):
8260         Remove.
8261         * solib-svr4.c (svr4_handle_solib_event): Update.
8262         * objfiles.c (inhibit_section_map_updates): Return
8263         scoped_restore_tmpl<int>.
8264         (resume_section_map_updates, resume_section_map_updates_cleanup):
8265         Remove.
8266
8267 2018-06-18  Tom Tromey  <tom@tromey.com>
8268
8269         * valprint.h (read_string): Update.
8270         * valprint.c (read_string): Change type of "buffer".
8271         (val_print_string): Update.
8272         * python/py-value.c (valpy_string): Update.
8273         * language.h (struct language_defn) <la_get_string>: Change
8274         type of "buffer".
8275         (default_get_string, c_get_string): Update.
8276         * language.c (default_get_string): Change type of "buffer".
8277         * guile/scm-value.c (gdbscm_value_to_string): Update.
8278         * c-lang.c (c_get_string): Change type of "buffer".
8279
8280 2018-06-18  Tom Tromey  <tom@tromey.com>
8281
8282         * ser-mingw.c (struct pipe_state_destroyer): New.
8283         (pipe_state_up): New typedef.
8284         (cleanup_pipe_state): Remove.
8285         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
8286
8287 2018-06-18  Tom Tromey  <tom@tromey.com>
8288
8289         * rust-lang.h (rust_yyerror): Don't declare.
8290         * rust-lang.c (rust_language_defn): Update.
8291         * rust-exp.y (yyerror): Now static.
8292         * parse.c (parse_exp_in_context_1): Update.
8293         * p-lang.h (p_yyerror): Don't declare.
8294         * p-lang.c (p_language_defn): Update.
8295         * p-exp.y (yyerror): Now static.
8296         * opencl-lang.c (opencl_language_defn): Update.
8297         * objc-lang.c (objc_language_defn): Update.
8298         * m2-lang.h (m2_yyerror): Don't declare.
8299         * m2-lang.c (m2_language_defn): Update.
8300         * m2-exp.y (yyerror): Now static.
8301         * language.h (struct language_defn) <la_error>: Remove.
8302         * language.c (unk_lang_error): Remove.
8303         (unknown_language_defn, auto_language_defn): Remove.
8304         * go-lang.h (go_yyerror): Don't declare.
8305         * go-lang.c (go_language_defn): Update.
8306         * go-exp.y (yyerror): Now static.
8307         * f-lang.h (f_yyerror): Don't declare.
8308         * f-lang.c (f_language_defn): Update.
8309         * f-exp.y (yyerror): Now static.
8310         * d-lang.h (d_yyerror): Don't declare.
8311         * d-lang.c (d_language_defn): Update.
8312         * d-exp.y (yyerror): Now static.
8313         * c-lang.h (c_yyerror): Don't declare.
8314         * c-lang.c (c_language_defn, cplus_language_defn)
8315         (asm_language_defn, minimal_language_defn): Update.
8316         * c-exp.y (yyerror): Now static.
8317         * ada-lang.h (ada_yyerror): Don't declare.
8318         * ada-lang.c (ada_language_defn): Update.
8319         * ada-exp.y (yyerror): Now static.
8320
8321 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
8322
8323         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
8324         (store_sveregs_to_thread): Likewise.
8325         (aarch64_linux_fetch_inferior_registers): Check for SVE.
8326         (aarch64_linux_store_inferior_registers): Likewise.
8327         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
8328         function.
8329         (aarch64_sve_regs_copy_to_regcache): Likewise.
8330         (aarch64_sve_regs_copy_from_regcache): Likewise.
8331         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
8332         declaration.
8333         (aarch64_sve_regs_copy_to_regcache): Likewise.
8334         (aarch64_sve_regs_copy_from_regcache): Likewise.
8335         (sve_context): Structure from Linux headers.
8336         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
8337         (SVE_SIG_ZREG_SIZE): Likewise.
8338         (SVE_SIG_PREG_SIZE): Likewise.
8339         (SVE_SIG_FFR_SIZE): Likewise.
8340         (SVE_SIG_REGS_OFFSET): Likewise.
8341         (SVE_SIG_ZREGS_OFFSET): Likewise.
8342         (SVE_SIG_ZREG_OFFSET): Likewise.
8343         (SVE_SIG_ZREGS_SIZE): Likewise.
8344         (SVE_SIG_PREGS_OFFSET): Likewise.
8345         (SVE_SIG_PREG_OFFSET): Likewise.
8346         (SVE_SIG_PREGS_SIZE): Likewise.
8347         (SVE_SIG_FFR_OFFSET): Likewise.
8348         (SVE_SIG_REGS_SIZE): Likewise.
8349         (SVE_SIG_CONTEXT_SIZE): Likewise.
8350         (SVE_PT_REGS_MASK): Likewise.
8351         (SVE_PT_REGS_FPSIMD): Likewise.
8352         (SVE_PT_REGS_SVE): Likewise.
8353         (SVE_PT_VL_INHERIT): Likewise.
8354         (SVE_PT_VL_ONEXEC): Likewise.
8355         (SVE_PT_REGS_OFFSET): Likewise.
8356         (SVE_PT_FPSIMD_OFFSET): Likewise.
8357         (SVE_PT_FPSIMD_SIZE): Likewise.
8358         (SVE_PT_SVE_ZREG_SIZE): Likewise.
8359         (SVE_PT_SVE_PREG_SIZE): Likewise.
8360         (SVE_PT_SVE_FFR_SIZE): Likewise.
8361         (SVE_PT_SVE_FPSR_SIZE): Likewise.
8362         (SVE_PT_SVE_FPCR_SIZE): Likewise.
8363         (__SVE_SIG_TO_PT): Likewise.
8364         (SVE_PT_SVE_OFFSET): Likewise.
8365         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
8366         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
8367         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
8368         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
8369         (SVE_PT_SVE_PREG_OFFSET): Likewise.
8370         (SVE_PT_SVE_PREGS_SIZE): Likewise.
8371         (SVE_PT_SVE_FFR_OFFSET): Likewise.
8372         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
8373         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
8374         (SVE_PT_SVE_SIZE): Likewise.
8375         (SVE_PT_SIZE): Likewise.
8376         (HAS_SVE_STATE): New define.
8377
8378 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
8379
8380         * nat/aarch64-sve-linux-sigcontext.h: New file.
8381         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
8382         new files.
8383         (SVE_VQ_MIN): Likewise.
8384         (SVE_VQ_MAX): Likewise.
8385         (SVE_VL_MIN): Likewise.
8386         (SVE_VL_MAX): Likewise.
8387         (SVE_NUM_ZREGS): Likewise.
8388         (SVE_NUM_PREGS): Likewise.
8389         (sve_vl_valid): Likewise.
8390         (struct user_sve_header): Likewise.
8391
8392 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
8393             Richard Bunt <Richard.Bunt@arm.com>
8394
8395         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
8396         was requested by GDB.
8397
8398 2018-06-15  Tom de Vries  <tdevries@suse.de>
8399
8400         * MAINTAINERS (Write After Approval): Add Tom de Vries.
8401
8402 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
8403
8404         * gnulib/update-gnulib.sh: Print expected versions of
8405         autoconf/aclocal.
8406
8407 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
8408
8409         * arch-utils.c (default_type_align): Use type_length_units.
8410         * gdbtypes.c (type_align): Use type_length_units.
8411
8412 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8413
8414         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
8415         of 'define' command.
8416
8417 2018-06-14  Tom de Vries  <tdevries@suse.de>
8418
8419         PR cli/22573
8420         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
8421         get_no_prettyformat_print_options.
8422
8423 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
8424
8425         * sparc-nat.h: Include target.h.
8426         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
8427         <fetch_registers>: Remove this argument in function call.
8428         <store_registers>: Remove this argument in function call, remove
8429         extra semicolon.
8430         <low_forget_process>: Call sparc64_forget_process instead of
8431         sparc_forget_process.
8432
8433 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
8434
8435         * procfs.c (_initialize_procfs): Use add_inf_child_target.
8436         (procfs_target::make_corefile_notes): Adjust to new
8437         target_read_alloc return type.
8438
8439 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8440             Stephen Roberts  <stephen.roberts@arm.com>
8441
8442         PR gdb/22882
8443         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
8444         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
8445         Move should_notify_stop local into more inner scope.
8446
8447 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8448             Stephen Roberts  <stephen.roberts@arm.com>
8449
8450         PR gdb/22882
8451         * infrun.c (resume_1): Add call to mark_async_event_handler.
8452
8453 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8454
8455         * infrun.c (do_target_wait): Change old version of $pc printed.
8456
8457 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
8458
8459         * dwarf2read.c (read_index_from_section): Rename to...
8460         (read_gdb_index_from_section): ... this, update all callers.
8461         (dwarf2_read_index): Rename to...
8462         (dwarf2_read_gdb_index): ... this, update all callers.
8463
8464 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
8465
8466         * hppa-linux-nat.c
8467         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
8468         hppa_linux_nat_target::fetch_registers.
8469
8470 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8471
8472         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
8473         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
8474         (AARCH64_DWARF_SVE_FFR): Likewise.
8475         (AARCH64_DWARF_SVE_P0): Likewise.
8476         (AARCH64_DWARF_SVE_Z0): Likewise.
8477
8478 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8479
8480         * common/common-regcache.h (raw_compare): New function.
8481         * regcache.c (regcache::raw_compare): Likewise.
8482         * regcache.h (regcache::raw_compare): New declaration.
8483
8484 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8485
8486         * common/common-regcache.h (reg_buffer_common): New structure.
8487         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
8488         (reg_buffer::raw_supply): Likewise.
8489         (reg_buffer::raw_supply_integer): Likewise.
8490         (reg_buffer::raw_supply_zeroed): Likewise.
8491         (reg_buffer::raw_collect): Likewise.
8492         (reg_buffer::raw_collect_integer): Likewise.
8493         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
8494         (reg_buffer::raw_supply): Likewise.
8495         (reg_buffer::raw_supply_integer): Likewise.
8496         (reg_buffer::raw_supply_zeroed): Likewise.
8497         (reg_buffer::raw_collect): Likewise.
8498         (reg_buffer::raw_collect_integer): Likewise.
8499
8500 2018-06-10  Tom Tromey  <tom@tromey.com>
8501
8502         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
8503         (class remote_state) <stop_reply_queue>: Now std::vector.
8504         (remote_state::~remote_state)
8505         (remote_target::stop_reply_queue_length): Update.
8506         (struct queue_iter_param, remove_child_of_pending_fork)
8507         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
8508         (check_pending_event_prevents_wildcard_vcont_callback)
8509         (remove_stop_reply_for_inferior)
8510         (remove_stop_reply_of_remote_state)
8511         (remote_notif_remove_once_on_match)
8512         (stop_reply_match_ptid_and_ws)
8513         (remote_kill_child_of_pending_fork): Remove.
8514         (remote_target::remove_new_fork_children)
8515         (remote_target::check_pending_events_prevent_wildcard_vcont)
8516         (remote_target::discard_pending_stop_replies)
8517         (remote_target::discard_pending_stop_replies_in_queue)
8518         (remote_target::remote_notif_remove_queued_reply)
8519         (remote_target::queued_stop_reply)
8520         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
8521         (remote_target::wait, remote_target::kill_new_fork_children)
8522         (remote_target::async): Update.
8523
8524 2018-06-10  Tom Tromey  <tom@tromey.com>
8525
8526         * record-full.c (record_full_arch_list_cleanups): Remove.
8527         (record_full_message): Use try/catch.
8528         (record_full_wait_cleanups): Remove.
8529         (record_full_wait_1): Use try/catch.
8530         (record_full_restore): Likewise.
8531
8532 2018-06-10  Tom Tromey  <tom@tromey.com>
8533
8534         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
8535         declare VEC.  Add constructor.
8536         <in_target_beneath>: Now bool.
8537         (record_full_breakpoints): Now a std::vector, static.
8538         (record_full_sync_record_breakpoints)
8539         (record_full_init_record_breakpoints)
8540         (record_full_target::insert_breakpoint)
8541         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
8542
8543 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
8544
8545         * dwarf2read.c (process_cu_includes): Remove struct keyword.
8546         * serial.c (serial_interface_lookup): Remove struct keyword.
8547
8548 2018-06-10  Tom Tromey  <tom@tromey.com>
8549
8550         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
8551         method.
8552         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
8553         a method.
8554         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
8555         method.
8556         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
8557         "beneath" as a method.
8558         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
8559         Use "beneath" as a method.
8560
8561 2018-06-10  Tom Tromey  <tom@tromey.com>
8562
8563         * tracefile.c (struct trace_file_writer_deleter): New.
8564         <operator()>: Rename from trace_file_writer_xfree.
8565         (trace_file_writer_up): New typedef.
8566         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
8567
8568 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8569
8570         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
8571         <m_registers, m_register_status>: Change type to
8572         std::unique_ptr.
8573         * regcache.c (reg_buffer::reg_buffer): Use new instead of
8574         XCNEWVEC.
8575
8576 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8577
8578         * common/common-regcache.h (enum register_status): Add
8579         underlying type "signed char".
8580         * regcache.h (reg_buffer) <m_register_status>: Change type to
8581         register_status *.
8582         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
8583         register_status instead of signed char.
8584         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
8585         (reg_buffer::get_register_status): Remove cast.
8586         (readable_regcache::raw_read): Remove cast.
8587         (readable_regcache::cooked_read): Remove cast.
8588
8589 2018-06-09  Tom Tromey  <tom@tromey.com>
8590
8591         * source.c (reverse_search_command, forward_search_command): Use
8592         scoped_fd.
8593
8594 2018-06-09  Tom Tromey  <tom@tromey.com>
8595
8596         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
8597         (serial_ops_list): Now static, std::vector.
8598         (serial_interface_lookup, serial_add_interface): Update.
8599
8600 2018-06-09  Tom Tromey  <tom@tromey.com>
8601
8602         * dwarf2read.c (process_cu_includes): Update.
8603         (process_full_comp_unit): Update.
8604         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
8605         std::vector.
8606
8607 2018-06-08  Paul Koning  <paul_koning@dell.com>
8608
8609         PR gdb/23252
8610
8611         * python/python.c (do_start_initialization):
8612         Avoid call to internal Python API.
8613         (init__gdb_module): New function.
8614
8615 2018-06-08  Gary Benson <gbenson@redhat.com>
8616
8617         * linux-thread-db.c (valprint.h): New include.
8618         (struct check_thread_db_info): New structure.
8619         (check_thread_db_on_load, tdb_testinfo): New static globals.
8620         (check_thread_db, check_thread_db_callback): New functions.
8621         (try_thread_db_load_1): Run integrity checks if requested.
8622         (maintenance_check_libthread_db): New function.
8623         (_initialize_thread_db): Register "maint check libthread-db"
8624         and "maint set/show check-libthread-db".
8625         * NEWS: Mention the above new commands.
8626
8627 2018-06-08  Tom Tromey  <tom@tromey.com>
8628
8629         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
8630         now a method.
8631
8632 2018-06-08  Tom Tromey  <tom@tromey.com>
8633
8634         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
8635
8636 2018-06-08  Tom Tromey  <tom@tromey.com>
8637
8638         * common/btrace-common.h (struct btrace_data): Add constructor,
8639         destructor, move assignment operator.
8640         <empty, clear, fini>: New methods.
8641         <format>: Initialize.
8642         (btrace_data_init, btrace_data_fini, btrace_data_clear)
8643         (btrace_data_empty): Don't declare.
8644         * common/btrace-common.c (btrace_data_init): Remove.
8645         (btrace_data::fini): Rename from btrace_data_fini.
8646         (btrace_data::empty): Rename from btrace_data_empty.
8647         (btrace_data::clear): Rename from btrace_data_clear.  Return
8648         bool.
8649         * btrace.h (make_cleanup_btrace_data): Don't declare.
8650         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
8651         (parse_xml_btrace): Update.
8652         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
8653         (maint_btrace_clear_packet_history_cmd): Update.
8654
8655 2018-06-07  Pedro Alves  <palves@redhat.com>
8656
8657         * target.h (target_ops) <beneath>: Now a method.  All references
8658         updated.
8659         (class target_stack): New.
8660         * target.c (g_target_stack): New.
8661         (g_current_top_target): Delete.
8662         (current_top_target): Get the top target out of g_target_stack.
8663         (target_stack::push, target_stack::unpush): New.
8664         (push_target, unpush_target): Reimplement.
8665         (target_is_pushed): Reimplement in terms of g_target_stack.
8666         (target_ops::beneath, target_stack::find_beneath): New.
8667
8668 2018-06-07  Pedro Alves  <palves@redhat.com>
8669
8670         * target.h (find_target_beneath): Delete declaration.
8671         * target.c (find_target_beneath): Delete definition.
8672         * aix-thread.c: All callers of find_target_beneath adjusted to
8673         call target_ops::beneath instead.
8674         * bsd-uthread.c: Likewise.
8675         * linux-thread-db.c: Likewise.
8676         * ravenscar-thread.c: Likewise.
8677         * sol-thread.c: Likewise.
8678         * spu-multiarch.c: Likewise.
8679
8680 2018-06-07  Pedro Alves  <palves@redhat.com>
8681
8682         * target.h (target_ops) <beneath>: Now a method.  All references
8683         updated.
8684         (target_ops) <m_beneath>: New.
8685         * target.c (target_ops::beneath): New.
8686         * corelow.c: Adjust all references to target_ops::beneath.
8687         * linux-thread-db.c: Likewise.
8688         * make-target-delegates: Likewise.
8689         * record-btrace.c: Likewise.
8690         * record-full.c: Likewise.
8691         * remote.c: Likewise.
8692         * target.c: Likewise.
8693         * target-delegates.c: Regenerate.
8694
8695 2018-06-07  Pedro Alves  <palves@redhat.com>
8696
8697         * target.h (target_stack): Delete.
8698         (current_top_target): Declare function.
8699         * target.c (target_stack): Delete.
8700         (g_current_top_target): New.
8701         (current_top_target): New function.
8702         * auxv.c: Use current_top_target instead of target_stack
8703         throughout.
8704         * avr-tdep.c: Likewise.
8705         * breakpoint.c: Likewise.
8706         * corefile.c: Likewise.
8707         * elfread.c: Likewise.
8708         * eval.c: Likewise.
8709         * exceptions.c: Likewise.
8710         * frame.c: Likewise.
8711         * gdbarch-selftests.c: Likewise.
8712         * gnu-v3-abi.c: Likewise.
8713         * ia64-tdep.c: Likewise.
8714         * ia64-vms-tdep.c: Likewise.
8715         * infcall.c: Likewise.
8716         * infcmd.c: Likewise.
8717         * infrun.c: Likewise.
8718         * linespec.c: Likewise.
8719         * linux-tdep.c: Likewise.
8720         * minsyms.c: Likewise.
8721         * ppc-linux-nat.c: Likewise.
8722         * ppc-linux-tdep.c: Likewise.
8723         * procfs.c: Likewise.
8724         * regcache.c: Likewise.
8725         * remote.c: Likewise.
8726         * rs6000-tdep.c: Likewise.
8727         * s390-linux-nat.c: Likewise.
8728         * s390-tdep.c: Likewise.
8729         * solib-aix.c: Likewise.
8730         * solib-darwin.c: Likewise.
8731         * solib-dsbt.c: Likewise.
8732         * solib-spu.c: Likewise.
8733         * solib-svr4.c: Likewise.
8734         * solib-target.c: Likewise.
8735         * sparc-tdep.c: Likewise.
8736         * sparc64-tdep.c: Likewise.
8737         * spu-tdep.c: Likewise.
8738         * symfile.c: Likewise.
8739         * symtab.c: Likewise.
8740         * target-descriptions.c: Likewise.
8741         * target-memory.c: Likewise.
8742         * target.c: Likewise.
8743         * target.h: Likewise.
8744         * tracefile-tfile.c: Likewise.
8745         * tracepoint.c: Likewise.
8746         * valops.c: Likewise.
8747         * valprint.c: Likewise.
8748         * value.c: Likewise.
8749         * windows-tdep.c: Likewise.
8750         * mi/mi-main.c: Likewise.
8751
8752 2018-06-07  Tom Tromey  <tom@tromey.com>
8753
8754         * valprint.h (build_address_symbolic): Declare.
8755         * printcmd.c (print_address_symbolic): Update.
8756         (build_address_symbolic): Change "name" and "filename" to
8757         std::string.
8758         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
8759         Update.
8760         * defs.h (build_address_symbolic): Remove declaration.
8761
8762 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
8763
8764         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
8765         (aarch64_vnv_type): Add function.
8766         (aarch64_pseudo_register_name): Add V regs for SVE.
8767         (aarch64_pseudo_register_type): Likewise.
8768         (aarch64_pseudo_register_reggroup_p): Likewise.
8769         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
8770         (aarch64_pseudo_read_value): Add V regs for SVE.
8771         (aarch64_pseudo_write_2): Use V0 offset for SVE
8772         (aarch64_pseudo_write): Add V regs for SVE.
8773         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
8774
8775 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
8776
8777         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
8778         (sve_vl_from_vq): Likewise.
8779
8780 2018-06-05  Tom Tromey  <tom@tromey.com>
8781
8782         * cli/cli-cmds.c (show_version): Update.
8783         * top.c (print_gdb_version): Add "interactive" parameter.
8784         Update.
8785         * main.c (captured_main_1): Update.
8786         * top.h (print_gdb_version): Add "interactive" parameter and a
8787         comment.
8788
8789 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
8790
8791         * common/enum-flags.h: Add trailing semicolon to example in
8792         comment.
8793
8794 2018-06-05  Tom Tromey  <tom@tromey.com>
8795
8796         PR cli/12326:
8797         * NEWS: Add entry about pager.
8798         * utils.c (pagination_disabled_for_command): New global.
8799         (prompt_for_continue): Allow "c" response to prompt.
8800         (reinitialize_more_filter): Clear
8801         pagination_disabled_for_command.
8802         (fputs_maybe_filtered): Check pagination_disabled_for_command.
8803
8804 2018-06-04  Tom Tromey  <tom@tromey.com>
8805
8806         * ada-lang.h (ada_lookup_symbol_list): Update.
8807         * ada-lang.c (resolve_subexp): Update.
8808         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
8809         parameter.
8810         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
8811         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
8812         results parameter to std::vector.
8813         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
8814         Update.
8815         * ada-exp.y (block_lookup): Update.
8816         (select_possible_type_sym): Change type of syms.  Remove nsyms
8817         parameter.
8818         (write_var_or_type, write_name_assoc): Update.
8819
8820 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
8821
8822         * windows-nat.c (windows_nat_target::xfer_partial): Return
8823         TARGET_XFER_E_IO if we need to delegate to the target beneath
8824         but BENEATH is NULL.
8825
8826 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
8827
8828         * Makefile.in (config.status): Add configure.nat as a
8829         dependency.
8830
8831 2018-06-04  Tom Tromey  <tom@tromey.com>
8832
8833         * cp-name-parser.y (cpname_state): Add method declarations.
8834         (HANDLE_QUAL): Update.
8835         (cpname_state::d_grab, cpname_state::fill_comp)
8836         (cpname_state::make_operator, cpname_state::make_dtor)
8837         (cpname_state::make_builtin_type, cpname_state::make_name)
8838         (cpname_state::d_qualify, cpname_state::d_int_type)
8839         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
8840         (%union): Move earlier.
8841
8842 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8843
8844         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
8845
8846 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8847
8848         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
8849         (aarch64_pseudo_write_1): Likewise.
8850         (aarch64_pseudo_read_value): Use helper.
8851         (aarch64_pseudo_write): Likewise.
8852
8853 2018-06-04  Pedro Alves  <palves@redhat.com>
8854
8855         * darwin-nat.c (darwin_ops): Delete.
8856         (darwin_attach_pid): Use get_native_target.
8857
8858 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8859
8860         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
8861         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
8862
8863 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8864
8865         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
8866         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
8867         (aarch64_gdbarch_init): Check for SVE.
8868         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
8869
8870 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8871
8872         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
8873         * aarch64-tdep.h (aarch64_read_description): Likewise.
8874         * arch/aarch64.c (aarch64_create_target_description): Likewise.
8875         * arch/aarch64.h (aarch64_create_target_description): Likewise.
8876         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
8877         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
8878         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
8879
8880 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
8881
8882         * value.c (value_fetch_lazy_bitfield): New.
8883         (value_fetch_lazy_memory): New.
8884         (value_fetch_lazy_register): New.
8885         (value_fetch_lazy): Factor out to smaller functions.
8886
8887 2018-06-01  Tom Tromey  <tom@tromey.com>
8888
8889         * cp-name-parser.y (backslashable, represented): Now const.
8890
8891 2018-06-01  Tom Tromey  <tom@tromey.com>
8892
8893         * cp-name-parser.y: Include parser-defs.h.
8894         (parser_fprintf): Remove declaration.
8895
8896 2018-06-01  Tom Tromey  <tom@tromey.com>
8897
8898         * cp-name-parser.y: Use %pure-parser, %lex-param, and
8899         %parse-param.
8900         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
8901         (global_result): Remove globals.
8902         (struct cpname_state): New.
8903         (yyparse): Don't declare.
8904         (yylex, yyerror): Move declarations after %union.
8905         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
8906         (make_name): Add state parameter.
8907         Update all callers.
8908         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
8909         parameter.
8910         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
8911         Update.
8912         (yylex): Add lvalp, state parameters.
8913         (yyerror): Add state parameter.
8914         (cp_demangled_name_to_comp): Update.
8915
8916 2018-06-01  Tom Tromey  <tom@tromey.com>
8917
8918         * cp-name-parser.y (parser_fprintf): Declare.
8919         (GDB_YY_REMAP_PREFIX): Define.
8920         Include yy-remap.h.  Don't redefine yy* identifiers.
8921
8922 2018-06-01  Tom Tromey  <tom@tromey.com>
8923
8924         * python/py-type.c (typy_legacy_template_argument): Update.
8925         * cp-support.h (cp_demangled_name_to_comp): Update.
8926         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
8927         parameter to be a "std::string *".
8928         (main): Update.
8929
8930 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
8931
8932         * ada-lex.l: Include "diagnostics.h" instead of
8933         "common/diagnostics.h".
8934         * unittests/environ-selftests.c: Likewise.
8935         * common/diagnostics.h: Moved to ../include.
8936
8937 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
8938
8939         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
8940         to language_mode_manual while calling breakpoint_re_set_one.
8941
8942 2018-06-01  Tom Tromey  <tom@tromey.com>
8943
8944         * valops.c (value_cast_structs, destructor_name_p): Update.
8945         * symtab.c (gdb_mangle_name): Update.
8946         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
8947         Update.
8948         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
8949         (pascal_object_print_value_fields, pascal_object_print_value):
8950         Update.
8951         * p-typeprint.c (pascal_type_print_derivation_info): Update.
8952         * linespec.c (find_methods): Update.
8953         * gdbtypes.h (type_name_no_tag): Remove.
8954         (type_name_or_error): Rename from type_name_no_tag_or_error.
8955         * gdbtypes.c (type_name_no_tag): Remove.
8956         (type_name_or_error): Rename from type_name_no_tag_or_error.
8957         (lookup_struct_elt_type, check_typedef): Update.
8958         * expprint.c (print_subexp_standard): Update.
8959         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
8960         * d-namespace.c (d_lookup_nested_symbol): Update.
8961         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
8962         (cp_print_class_member): Update.
8963         * cp-namespace.c (cp_lookup_nested_symbol): Update.
8964         * completer.c (add_struct_fields): Update.
8965         * c-typeprint.c (cp_type_print_derivation_info)
8966         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
8967         Update.
8968         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
8969         (ada_prefer_type, ada_is_exception_sym): Update.
8970
8971 2018-06-01  Tom Tromey  <tom@tromey.com>
8972
8973         * valops.c (enum_constant_from_type, value_namespace_elt)
8974         (value_maybe_namespace_elt): Update.
8975         * valarith.c (find_size_for_pointer_math): Update.
8976         * target-descriptions.c (make_gdb_type): Update.
8977         * symmisc.c (print_symbol): Update.
8978         * stabsread.c (define_symbol, read_type)
8979         (complain_about_struct_wipeout, add_undefined_type)
8980         (cleanup_undefined_types_1): Update.
8981         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
8982         (rust_range_type_p, val_print_struct, rust_print_struct_def)
8983         (rust_internal_print_type, rust_composite_type)
8984         (rust_evaluate_funcall, rust_evaluate_subexp)
8985         (rust_inclusive_range_type_p): Update.
8986         * python/py-type.c (typy_get_tag): Update.
8987         * p-typeprint.c (pascal_type_print_base): Update.
8988         * mdebugread.c (parse_symbol, parse_type): Update.
8989         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
8990         Update.
8991         * guile/scm-type.c (gdbscm_type_tag): Update.
8992         * go-lang.c (sixg_string_p): Update.
8993         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
8994         Update.
8995         * gdbtypes.h (struct main_type) <tag_name>: Remove.
8996         (TYPE_TAG_NAME): Remove.
8997         * gdbtypes.c (type_name_no_tag): Simplify.
8998         (check_typedef, check_types_equal, recursive_dump_type)
8999         (copy_type_recursive, arch_composite_type): Update.
9000         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
9001         in summary mode when needed.
9002         * eval.c (evaluate_funcall): Update.
9003         * dwarf2read.c (fixup_go_packaging, read_structure_type)
9004         (process_structure_scope, read_enumeration_type)
9005         (read_namespace_type, read_module_type, determine_prefix): Update.
9006         * cp-support.c (inspect_type): Update.
9007         * coffread.c (process_coff_symbol, decode_base_type): Update.
9008         * c-varobj.c (c_is_path_expr_parent): Update.
9009         * c-typeprint.c (c_type_print_base_struct_union): Update.
9010         (c_type_print_base_1): Update.  Print struct/class/union/enum in
9011         summary when using C language.
9012         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
9013         (gen_maybe_namespace_elt): Update.
9014         * ada-lang.c (ada_type_name): Simplify.
9015         (empty_record, ada_template_to_fixed_record_type_1)
9016         (template_to_static_fixed_type)
9017         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
9018
9019 2018-06-01  Tom Tromey  <tom@tromey.com>
9020
9021         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
9022         c_print_type.
9023         * c-typeprint.c (c_print_type_1): Add "language" parameter.
9024         (c_print_type): Update.
9025         (c_print_type): New overload.
9026         (c_type_print_varspec_prefix, c_type_print_args)
9027         (c_type_print_varspec_suffix, c_print_type_no_offsets)
9028         (c_type_print_base_struct_union, c_type_print_base_1)
9029         (cp_type_print_method_args): Add "language" parameter.
9030         (c_type_print_base): Update.
9031         * c-lang.h (c_print_type): Add new overload.
9032
9033 2018-06-01  Tom Tromey  <tom@tromey.com>
9034
9035         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
9036         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
9037
9038 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
9039
9040         * aarch64-tdep.c (aarch64_sve_register_names): New const
9041         var.
9042         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
9043         (AARCH64_SVE_Z_REGS_NUM): New define.
9044         (AARCH64_SVE_P_REGS_NUM): Likewise.
9045         (AARCH64_SVE_NUM_REGS): Likewise.
9046
9047 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
9048
9049         * nat/linux-ptrace.h [__alpha__]
9050         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
9051         definitions.
9052
9053 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
9054
9055         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
9056         the endianness selected.
9057         * NEWS: Document `set endian auto' mode operation update.
9058
9059 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
9060
9061         * Makefile.in: Add new header.
9062         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
9063         (sve_vl_from_vg): Likewise.
9064         (sve_vq_from_vl): Likewise.
9065         (sve_vl_from_vq): Likewise.
9066         (sve_vq_from_vg): Likewise.
9067         (sve_vg_from_vq): Likewise.
9068         * configure.nat: Add new c file.
9069         * nat/aarch64-sve-linux-ptrace.c: New file.
9070         * nat/aarch64-sve-linux-ptrace.h: New file.
9071
9072 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
9073
9074         * aarch64-linux-nat.c (aarch64_linux_read_description):
9075         Add parmeter zero.
9076         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
9077         Likewise.
9078         * aarch64-tdep.c (tdesc_aarch64_list): Add.
9079         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
9080         (aarch64_gdbarch_init): Add parmeter zero.
9081         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
9082         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
9083         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
9084         parmeter.
9085         * doc/gdb.texinfo: Describe SVE feature
9086         * features/aarch64-sve.c: New file.
9087
9088 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
9089
9090         PR gdb/23210
9091         * gdbarch.sh (significant_addr_bit): Default to zero when
9092         not set by target architecture.
9093         * gdbarch.c: Re-generated.
9094         * utils.c (address_significant): Update.
9095
9096 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
9097
9098         * stack.c (func_command): Remove trailing newline in call to error.
9099
9100 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9101
9102         * regcache.h (regcache_raw_collect): Remove, update callers to
9103         use regcache::raw_collect.
9104         * regcache.c (regcache_raw_collect): Remove.
9105
9106 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9107
9108         * regcache.h (regcache_raw_supply): Remove, update callers to
9109         use detached_regcache::raw_supply.
9110         * regcache.c (regcache_raw_supply): Remove.
9111
9112 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9113
9114         * regcache.h (regcache_cooked_write_part): Remove, update
9115         callers to use regcache::cooked_write_part.
9116         * regcache.c (regcache_cooked_write_part): Remove.
9117
9118 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9119
9120         * regcache.h (regcache_cooked_read_part): Remove, update callers
9121         to use readable_regcache::cooked_read_part.
9122         * regcache.c (regcache_cooked_read_part): Remove.
9123
9124 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9125
9126         * regcache.h (regcache_cooked_read_value): Remove, update
9127         callers to use readable_regcache::cooked_read_value.
9128         * regcache.c (regcache_cooked_read_value): Remove.
9129
9130 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9131
9132         * regcache.h (regcache_cooked_write): Remove, update callers to
9133         use regcache::cooked_write.
9134         * regcache.c (regcache_cooked_write): Remove.
9135
9136 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9137
9138         * regcache.h (regcache_invalidate): Remove, update callers to
9139         use detached_regcache::invalidate instead.
9140         * regcache.c (regcache_invalidate): Remove.
9141
9142 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9143
9144         * regcache.h (regcache_raw_write_part): Remove, update callers
9145         to use regcache::raw_write_part instead.
9146         * regcache.c (regcache_raw_write_part): Remove.
9147
9148 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9149
9150         * regcache.h (regcache_raw_read_part): Remove, update callers to
9151         use readable_regcache::raw_read_part instead.
9152         * regcache.c (regcache_raw_read_part): Remove.
9153
9154 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9155
9156         * regcache.h (regcache_cooked_read): Remove, update callers to
9157         use readable_regcache::cooked_read instead.
9158         * regcache.c (regcache_cooked_read): Remove.
9159
9160 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9161
9162         * regcache.h (regcache_raw_write): Remove, update callers to use
9163         regcache::raw_write instead.
9164         * regcache.c (regcache_raw_write): Remove.
9165
9166 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9167
9168         * regcache.h (regcache_raw_read): Remove, update callers to use
9169         readable_regcache::raw_read instead.
9170         * regcache.c (regcache_raw_read): Remove.
9171
9172 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9173
9174         * regcache.h (regcache_raw_update): Remove, update callers to
9175         use readable_regcache::raw_update instead.
9176         * regcache.c (regcache_raw_update): Remove.
9177
9178 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9179
9180         * regcache.h (regcache_register_status): Remove, update callers
9181         to use reg_buffer::get_register_status directly instead.
9182         * regcache.c (regcache_register_status): Remove.
9183
9184 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9185
9186         * regcache.h (regcache_get_ptid): Remove, update all callers to
9187         call regcache::ptid instead.
9188         * regcache.c (regcache_get_ptid): Remove.
9189
9190 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9191
9192         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
9193
9194 2018-05-30  Pedro Alves  <palves@redhat.com>
9195
9196         * common/common-exceptions.h (exception_rethrow): Use
9197         ATTRIBUTE_NORETURN.
9198
9199 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
9200
9201         * breakpoint.c (print_solib_event, check_status_catch_solib):
9202         Remove struct keyword in range-based for loops.
9203         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
9204         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
9205         Likewise.
9206         * linespec.c (find_superclass_methods, search_minsyms_for_name):
9207         Likewise.
9208         * symfile.c (addr_info_make_relative): Likewise.
9209         * thread.c (value_in_thread_stack_temporaries): Likewise.
9210
9211 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
9212
9213         PR gdb/16841
9214         * valops.c (value_struct_elt_for_reference): Call check_typedef on
9215         aggregate type to get its real type before accessing it.
9216
9217 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
9218
9219         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
9220         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
9221         * coff-pe-read.c (add_pe_forwarded_sym): Replace
9222         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
9223         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
9224         * jit.c (jit_breakpoint_re_set_internal): Likewise.
9225         * printcmd.c (info_address_command): Likewise.
9226
9227 2018-05-29  Tom Tromey  <tom@tromey.com>
9228
9229         * windows-nat.c (handle_exception): Update fall-through comment.
9230
9231 2018-05-29  Tom Tromey  <tom@tromey.com>
9232
9233         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
9234         (struct program_space) <added_solibs>: Now a std::vector.
9235         * breakpoint.c (print_solib_event): Update.
9236         (check_status_catch_solib): Update.
9237         * progspace.c (clear_program_space_solib_cache): Update.
9238         * solib.c (update_solib_list): Update.
9239
9240 2018-05-29  Tom Tromey  <tom@tromey.com>
9241
9242         * python/py-type.c (typy_richcompare): Update.
9243         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
9244         * gdbtypes.h (types_deeply_equal): Return bool.
9245         (types_equal): Likewise.
9246         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
9247         declare VEC.
9248         (check_types_equal): Change worklist to std::vector.  Return
9249         bool.
9250         (struct type_equality_entry): Add constructor.
9251         (compare_maybe_null_strings): Return bool.
9252         (check_types_worklist): Return bool.  Change worklist to
9253         std::vector.
9254         (types_deeply_equal): Use std::vector.
9255         (types_equal): Return bool.
9256         (compare_maybe_null_strings): Simplify.
9257
9258 2018-05-29  Tom Tromey  <tom@tromey.com>
9259
9260         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
9261
9262 2018-05-29  Tom Tromey  <tom@tromey.com>
9263
9264         * objc-lang.h: Don't include cp-support.h.
9265         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
9266         declare VEC.
9267
9268 2018-05-27  Tom Tromey  <tom@tromey.com>
9269
9270         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
9271
9272 2018-05-25  Tom Tromey  <tom@tromey.com>
9273
9274         * value.c (value::location): Initialize.
9275
9276 2018-05-25  Tom Tromey  <tom@tromey.com>
9277
9278         * dbxread.c (init_bincl_list): Remove.
9279         (bincl_list): Now a std::vector.
9280         (bincls_allocated, next_bincl): Remove.
9281         (free_bincl_list, do_free_bincl_list_cleanup)
9282         (make_cleanup_free_bincl_list): Remove.
9283         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
9284         unique_xmalloc_ptr.
9285         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
9286         (struct header_file_location): Add constructor.
9287         (add_bincl_to_list): Remove.
9288
9289 2018-05-25  Tom Tromey  <tom@tromey.com>
9290
9291         * tui/tui.c (tui_enable): Update.
9292         * mi/mi-interp.c (mi_interp::init): Update.
9293         * interps.h (class interp) <name>: New method.
9294         <m_name>: Rename from name.
9295         (~scoped_restore_interp): Update.
9296         * interps.c (interp::interp): Update.
9297         (interp_add, interp_set, interp_lookup_existing)
9298         (current_interp_named_p): Update.
9299
9300 2018-05-25  Tom Tromey  <tom@tromey.com>
9301
9302         * interps.c (interp_name): Remove.
9303         * mi/mi-interp.c (mi_interp::init): Update.
9304         * interps.h (interp_name): Remove.
9305         (~scoped_restore_interp): Update.
9306         * tui/tui.c (tui_enable): Update.
9307
9308 2018-05-25  Tom Tromey  <tom@tromey.com>
9309
9310         * utils.c (fputs_maybe_filtered): Update.
9311         * linespec.c (decode_line_full): Update.
9312         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
9313         (mi_print_breakpoint_for_event, mi_solib_loaded)
9314         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
9315         (mi_user_selected_context_changed): Update.
9316         * mi/mi-main.c (mi_execute_command): Update.
9317         * cli/cli-script.c (execute_control_command): Update.
9318         * python/python.c (execute_gdb_command): Update.
9319         * solib.c (info_sharedlibrary_command): Update.
9320         * interps.c (interp_ui_out): Remove.
9321         * interps.h (interp_ui_out): Remove.
9322
9323 2018-05-25  Tom Tromey  <tom@tromey.com>
9324
9325         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
9326         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
9327         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
9328
9329 2018-05-25  Tom Tromey  <tom@tromey.com>
9330
9331         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
9332         * interps.c (interp_exec): Use scoped_restore.
9333
9334 2018-05-25  Tom Tromey  <tom@tromey.com>
9335
9336         * remote.c (remote_target::remote_file_get): Use
9337         gdb::byte_vector.
9338         (remote_target::remote_file_put): Likewise.
9339
9340 2018-05-25  Tom Tromey  <tom@tromey.com>
9341
9342         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
9343         a std::string.
9344         (get_pe_section_index, add_pe_exported_sym): Update.
9345         (read_pe_exported_syms): Use gdb::def_vector.
9346
9347 2018-05-25  Tom Tromey  <tom@tromey.com>
9348
9349         * frame.c (remove_prev_frame): Remove.
9350         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
9351
9352 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
9353
9354         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
9355         Remove prototypes.
9356         * mips-linux-nat.c (supply_fpregset): Always call
9357         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
9358         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
9359         `mips_fill_fpregset'.
9360         * mips-linux-tdep.c (mips_supply_fpregset)
9361         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
9362         (mips_fill_fpregset_wrapper): Remove functions.
9363         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
9364         (mips_linux_fpregset): Remove variable.
9365         (mips_linux_iterate_over_regset_sections): Use
9366         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
9367         (mips_linux_o32_sigframe_init): Remove comment.
9368
9369 2018-05-25  Pedro Alves  <palves@redhat.com>
9370
9371         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
9372         (struct readahead_cache, struct packet_reg, struct
9373         remote_arch_state, class remote_state): Move higher up in the
9374         file.
9375         (remote_target::m_remote_state): Now an object instead of a pointer.
9376         (remote_target::get_remote_state): Adjust.
9377
9378 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
9379
9380         * stack.c (select_and_print_frame): Delete.
9381         (struct function_bounds): Move struct within function.
9382         (func_command): Most content moved into new function
9383         find_frame_for_function, use new function, print result, add
9384         function comment.
9385         (find_frame_for_function): New function, now returns a result.
9386
9387 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9388
9389         * stack.c (iterate_over_block_arg_vars): Fix comment.
9390         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
9391
9392 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
9393
9394         PR gdb/23203
9395         * frame.c
9396         (scoped_restore_selected_frame::scoped_restore_selected_frame):
9397         Define.
9398         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
9399         Define.
9400         * frame.h (class scoped_restore_selected_frame): New class.
9401         * stack.c (print_frame_local_vars): Remove catching and rethrowing
9402         of any exception, use scoped_restore_selected_frame to restore the
9403         frame instead.
9404
9405 2018-05-24  Pedro Alves  <palves@redhat.com>
9406
9407         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
9408         override.
9409
9410 2018-05-23  Tom Tromey  <tom@tromey.com>
9411
9412         * complaints.c (struct complaints): Remove.
9413         (symfile_complaint_book): Remove.
9414         (series): New global.
9415         (complaint_internal): Update.
9416         (clear_complaints): Update.
9417
9418 2018-05-23  Tom Tromey  <tom@tromey.com>
9419
9420         * complaints.c (counters): New global.
9421         (struct complain): Remove.
9422         (struct complaints) <root>: Remove.
9423         (complaint_sentinel): Remove.
9424         (symfile_complaint_book): Update.
9425         (find_complaint) Remove.
9426         (complaint_internal, clear_complaints): Update.
9427
9428 2018-05-23  Tom Tromey  <tom@tromey.com>
9429
9430         * complaints.c (struct complain) <file, line>: Remove.
9431         (find_complaint): Remove file, line parameters.
9432         (complaint_internal): Update.
9433
9434 2018-05-23  Tom Tromey  <tom@tromey.com>
9435
9436         * complaints.c (vcomplaint): Remove.
9437         (complaint_internal) Merge in contents of vcomplaint.
9438
9439 2018-05-23  Tom Tromey  <tom@tromey.com>
9440
9441         * complaints.c (struct complaints) <explanation>: Remove.
9442         (symfile_explanations): Remove.
9443         (symfile_complaint_book): Update.
9444         (vcomplaint): Update.
9445         (struct explanation): Remove.
9446
9447 2018-05-23  Tom Tromey  <tom@tromey.com>
9448
9449         * complaints.c (symfile_complaints): Remove.
9450         (complaint_internal): Remove "complaints" parameter.
9451         (clear_complaints, vcomplaint): Remove "c" parameter.
9452         (get_complaints): Remove.
9453         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
9454         (dwarf2_debug_line_missing_file_complaint)
9455         (dwarf2_debug_line_missing_end_sequence_complaint)
9456         (dwarf2_complex_location_expr_complaint)
9457         (dwarf2_const_value_length_mismatch_complaint)
9458         (dwarf2_section_buffer_overflow_complaint)
9459         (dwarf2_macro_malformed_definition_complaint)
9460         (dwarf2_invalid_attrib_class_complaint)
9461         (create_addrmap_from_index, dw2_symtab_iter_next)
9462         (dw2_expand_marked_cus)
9463         (dw2_debug_names_iterator::find_vec_in_debug_names)
9464         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
9465         (create_debug_type_hash_table, init_cutu_and_read_dies)
9466         (partial_die_parent_scope, add_partial_enumeration)
9467         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
9468         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
9469         (read_import_statement, read_file_scope, create_dwo_cu_reader)
9470         (create_cus_hash_table, create_dwp_hash_table)
9471         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
9472         (dwarf2_rnglists_process, dwarf2_ranges_process)
9473         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
9474         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
9475         (handle_struct_member_die, process_structure_scope)
9476         (read_array_type, read_common_block, read_module_type)
9477         (read_tag_pointer_type, read_typedef, read_base_type)
9478         (read_subrange_type, load_partial_dies, partial_die_info::read)
9479         (partial_die_info::read, partial_die_info::read)
9480         (partial_die_info::read, read_checked_initial_length_and_offset)
9481         (dwarf2_string_attr, read_formatted_entries)
9482         (dwarf_decode_line_header)
9483         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
9484         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
9485         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
9486         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
9487         (get_signatured_type, get_DW_AT_signature_type)
9488         (decode_locdesc, file_file_name, consume_improper_spaces)
9489         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
9490         (dwarf_decode_macro_bytes, dwarf_decode_macros)
9491         (dwarf2_symbol_mark_computed, set_die_type)
9492         (read_attribute_value): Update.
9493         * stap-probe.c (handle_stap_probe, get_stap_base_address):
9494         Update.
9495         * dbxread.c (unknown_symtype_complaint)
9496         (lbrac_mismatch_complaint, repeated_header_complaint)
9497         (set_namestring, function_outside_compilation_unit_complaint)
9498         (read_dbx_symtab, process_one_symbol): Update.
9499         * gdbtypes.c (stub_noname_complaint): Update.
9500         * windows-nat.c (handle_unload_dll): Update.
9501         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
9502         (decode_base_type): Update.
9503         * xcoffread.c (bf_notfound_complaint, ef_complaint)
9504         (eb_complaint, record_include_begin, record_include_end)
9505         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
9506         (process_xcoff_symbol, read_symbol)
9507         (function_outside_compilation_unit_complaint)
9508         (scan_xcoff_symtab): Update.
9509         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
9510         * buildsym.c (finish_block_internal, make_blockvector)
9511         (end_symtab_get_static_block, augment_type_symtab): Update.
9512         * dtrace-probe.c (dtrace_process_dof)
9513         (dtrace_static_probe_ops::get_probes): Update.
9514         * complaints.h (struct complaint): Don't declare.
9515         (symfile_complaints): Remove.
9516         (complaint_internal): Remove "complaints" parameter.
9517         (complaint): Likewise.
9518         (clear_complaints): Likewise.
9519         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9520         (reread_symbols): Update.
9521         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
9522         (dwarf2_frame_cache, decode_frame_entry): Update.
9523         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
9524         * objc-lang.c (lookup_objc_class, lookup_child_selector)
9525         (info_selectors_command): Update.
9526         * macrotab.c (macro_include, check_for_redefinition)
9527         (macro_undef): Update.
9528         * objfiles.c (filter_overlapping_sections): Update.
9529         * stabsread.c (invalid_cpp_abbrev_complaint)
9530         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
9531         (define_symbol, error_type, read_type, rs6000_builtin_type)
9532         (stabs_method_name_from_physname, read_member_functions)
9533         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
9534         (attach_fields_to_type, complain_about_struct_wipeout)
9535         (read_range_type, read_args, common_block_start)
9536         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
9537         Update.
9538         * mdebugread.c (index_complaint, unknown_ext_complaint)
9539         (basic_type_complaint, bad_tag_guess_complaint)
9540         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
9541         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
9542         (parse_procedure, parse_lines)
9543         (function_outside_compilation_unit_complaint)
9544         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
9545         (bad_tag_guess_complaint, reg_value_complaint): Update.
9546         * cp-support.c (demangled_name_complaint): Update.
9547         * macroscope.c (sal_macro_scope): Update.
9548         * dwarf-index-write.c (class debug_names): Update.
9549
9550 2018-05-23  Tom Tromey  <tom@tromey.com>
9551
9552         * complaints.c (clear_complaints): Remove "noisy" parameter.
9553         * complaints.h (clear_complaints): Update.
9554         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9555         (reread_symbols): Update.
9556
9557 2018-05-23  Tom Tromey  <tom@tromey.com>
9558
9559         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
9560         SUBSEQUENT_MESSAGE.
9561         (vcomplaint, clear_complaints): Update.
9562         (symfile_explanations): Remove some messages.
9563
9564 2018-05-23  Tom Tromey  <tom@tromey.com>
9565
9566         * complaints.c (internal_complaint): Remove.
9567         * complaints.h (internal_complaint): Remove.
9568
9569 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9570
9571         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
9572
9573 2018-05-22  Pedro Alves  <palves@redhat.com>
9574
9575         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
9576         (remote_fileio_badfd, remote_fileio_return_errno)
9577         (remote_fileio_return_success, remote_fileio_func_open)
9578         (remote_fileio_func_open, remote_fileio_func_close)
9579         (remote_fileio_func_read, remote_fileio_func_write)
9580         (remote_fileio_func_lseek, remote_fileio_func_rename)
9581         (remote_fileio_func_unlink, remote_fileio_func_stat)
9582         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
9583         (remote_fileio_func_isatty, remote_fileio_func_system): Add
9584         remote_target parameter.
9585         (remote_fio_func_map) <func>: Add remote_target parameter.
9586         (do_remote_fileio_request, remote_fileio_request):
9587         * remote-fileio.h (remote_fileio_request):
9588         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
9589         remote_target parameter.
9590         (remote_notif_process, handle_notification): Adjust to pass down
9591         the remote.
9592         (remote_notif_state_allocate): Add remote_target parameter.  Save
9593         it.
9594         * remote-notif.h (struct remote_target): Forward declare.
9595         (struct notif_client) <parse, ack, can_get_pending_events>: Add
9596         remote_target parameter.
9597         (struct remote_notif_state) <remote>: New field.
9598         (remote_notif_ack, remote_notif_parse): Add remote_target
9599         parameter.
9600         (remote_notif_state_allocate, remote_notif_state_allocate): Add
9601         remote_target parameter.
9602         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
9603         (threads_listing_context, rmt_thread_action, protocol_feature)
9604         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
9605         (packet_result, struct threads_listing_context, remote_state):
9606         Move definitions and declarations higher up.
9607         (remote_target) <~remote_target>: Declare.
9608         (remote_download_command_source, remote_file_put, remote_file_get)
9609         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
9610         (remote_hostio_pread_vFile, remote_hostio_send_command)
9611         (remote_hostio_set_filesystem, remote_hostio_open)
9612         (remote_hostio_close, remote_hostio_unlink, remote_state)
9613         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
9614         (get_memory_write_packet_size, get_memory_read_packet_size)
9615         (append_pending_thread_resumptions, remote_detach_1)
9616         (append_resumption, remote_resume_with_vcont)
9617         (add_current_inferior_and_thread, wait_ns, wait_as)
9618         (process_stop_reply, remote_notice_new_inferior)
9619         (process_initial_stop_replies, remote_add_thread)
9620         (btrace_sync_conf, remote_btrace_maybe_reopen)
9621         (remove_new_fork_children, kill_new_fork_children)
9622         (discard_pending_stop_replies, stop_reply_queue_length)
9623         (check_pending_events_prevent_wildcard_vcont)
9624         (discard_pending_stop_replies_in_queue, stop_reply)
9625         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
9626         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
9627         (remote_interrupt_as, remote_interrupt_ns)
9628         (remote_get_noisy_reply, remote_query_attached)
9629         (remote_add_inferior, remote_current_thread, get_current_thread)
9630         (set_thread, set_general_thread, set_continue_thread)
9631         (set_general_process, write_ptid)
9632         (remote_unpack_thread_info_response, remote_get_threadinfo)
9633         (parse_threadlist_response, remote_get_threadlist)
9634         (remote_threadlist_iterator, remote_get_threads_with_ql)
9635         (remote_get_threads_with_qxfer)
9636         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
9637         (get_offsets, remote_check_symbols, remote_supported_packet)
9638         (remote_query_supported, remote_packet_size)
9639         (remote_serial_quit_handler, remote_detach_pid)
9640         (remote_vcont_probe, remote_resume_with_hc)
9641         (send_interrupt_sequence, interrupt_query)
9642         (remote_notif_get_pending_events, fetch_register_using_p)
9643         (send_g_packet, process_g_packet, fetch_registers_using_g)
9644         (store_register_using_P, store_registers_using_G)
9645         (set_remote_traceframe, check_binary_download)
9646         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
9647         (remote_xfer_live_readonly_partial, remote_read_bytes)
9648         (remote_send_printf, remote_flash_write, readchar)
9649         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
9650         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
9651         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
9652         (extended_remote_disable_randomization, extended_remote_run)
9653         (send_environment_packet, extended_remote_environment_support)
9654         (extended_remote_set_inferior_cwd, remote_write_qxfer)
9655         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
9656         (packet_command): Now methods of ...
9657         (remote_target): ... this class.
9658         (m_remote_state) <remote_target>: New field.
9659         (struct remote_state) <stop_reply_queue,
9660         remote_async_inferior_event_token, wait_forever_enabled_p>: New
9661         fields.
9662         (remote_state::remote_state): Allocate stop_reply_queue.
9663         (remote_state): Delete global.
9664         (get_remote_state_raw): Delete.
9665         (remote_target::get_remote_state): Allocate m_remote_state on
9666         demand.
9667         (get_current_remote_target): New.
9668         (remote_ops, extended_remote_ops): Delete.
9669         (wait_forever_enabled_p, remote_async_inferior_event_token):
9670         Delete, moved to struct remote_state.
9671         (remote_target::close): Delete self.  Destruction bits split to
9672         ...
9673         (remote_target::~remote_target): ... this.
9674         (show_memory_packet_size): Adjust to use
9675         get_current_remote_target.
9676         (struct protocol_feature) <func>: Add remote_target parameter.
9677         All callers adjusted.
9678         (curr_quit_handler_target): New.
9679         (remote_serial_quit_handler): Reimplement.
9680         (remote_target::open_1): Adjust to use get_current_remote_target.
9681         Heap-allocate remote_target/extended_remote_target instances.
9682         (vcont_builder::vcont_builder): Add remote_target parameter, and
9683         save it in m_remote.  All callers adjusted.
9684         (vcont_builder::m_remote): New field.
9685         (vcont_builder::restart, vcont_builder::flush)
9686         (vcont_builder::push_action): Use it.
9687         (remote_target::commit_resume): Use it.
9688         (struct queue_iter_param) <remote>: New field.
9689         (remote_target::remove_new_fork_children): Fill in 'remote' field.
9690         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
9691         (check_pending_event_prevents_wildcard_vcont_callback)
9692         (remote_target::check_pending_events_prevent_wildcard_vcont)
9693         (remote_target::discard_pending_stop_replies)
9694         (remote_target::discard_pending_stop_replies_in_queue)
9695         (remote_target::remote_notif_remove_queued_reply): Fill in
9696         'remote' field.
9697         (remote_notif_get_pending_events): New.
9698         (remote_target::readchar, remote_target::remote_serial_write):
9699         Save/restore curr_quit_handler_target.
9700         (putpkt): New.
9701         (kill_new_fork_children): Fill in 'remote' field.
9702         (packet_command): Use get_current_remote_target, defer to
9703         remote_target method of same name.
9704         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
9705         parameter, and save it in m_remote.  All callers adjusted.
9706         (scoped_remote_fd::release): Use m_remote.
9707         (scoped_remote_fd::m_remote): New field.
9708         (remote_file_put, remote_file_get, remote_file_delete): Use
9709         get_current_remote_target, defer to remote_target method of same
9710         name.
9711         (remote_btrace_reset): Add remote_state paremeter.  Update all
9712         callers.
9713         (remote_async_inferior_event_handler). Pass down 'data'.
9714         (remote_new_objfile): Use get_current_remote_target.
9715         (remote_target::vcont_r_supported): New.
9716         (set_range_stepping): Use get_current_remote_target and
9717         remote_target::vcont_r_supported.
9718         (_initialize_remote): Don't allocate 'remote_state' and
9719         'stop_reply_queue' globals.
9720         * remote.h (struct remote_target): Forward declare.
9721         (getpkt, putpkt, remote_notif_get_pending_events): Add
9722         'remote_target' parameter.
9723
9724 2018-05-22  Pedro Alves  <palves@redhat.com>
9725
9726         * remote.c (vcont_builder): Now a class.  Make all data members
9727         private.
9728         (vcont_builder) <vcont_builder, restart, flush, push_action>:
9729         Declare methods.
9730         (vcont_builder_restart): Rename to ...
9731         (vcont_builder::restart): ... this.
9732         (vcont_builder_flush): Rename to ...
9733         (vcont_builder::flush): ... this.
9734         (vcont_builder_push_action): Rename to ...
9735         (vcont_builder::push_action): ... this.
9736         (remote_target::commit_resume): Adjust.
9737
9738 2018-05-22  Pedro Alves  <palves@redhat.com>
9739
9740         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
9741         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
9742         (get_fixed_memory_packet_size): New.
9743         (get_memory_packet_size): Use it.
9744         (set_memory_packet_size): Don't override the config size with
9745         DEFAULT_MAX_MEMORY_PACKET_SIZE.
9746         (show_memory_packet_size): Use get_fixed_memory_packet_size.
9747         Don't refer to get_memory_packet_size if not connected to a remote
9748         target.  Show "(default)" if configured size is 0.
9749
9750 2018-05-22  Pedro Alves  <palves@redhat.com>
9751
9752         * remote.c (remote_target::mourn_inferior): Move
9753         discard_pending_stop_replies call here from ...
9754         (_initialize_remote): ... here.
9755
9756 2018-05-22  Pedro Alves  <palves@redhat.com>
9757
9758         * remote.c (compare_section_command): Remove set_general_process
9759         call.
9760
9761 2018-05-22  Pedro Alves  <palves@redhat.com>
9762
9763         * remote.c (struct packet_reg, struct remote_arch_state):
9764         Move higher up in the file.
9765         (remote_state) <m_arch_states>: Store remote_arch_state values
9766         instead of remote_arch_state pointers.
9767         (remote_state::get_remote_arch_state): Adjust.
9768
9769 2018-05-22  Pedro Alves  <palves@redhat.com>
9770
9771         * remote.c: Include <unordered_map>.
9772         (remote_state): Now a class.
9773         (remote_state) <get_remote_arch_state>: Declare method.
9774         <get_remote_arch_state>: New field.
9775         (remote_arch_state) <remote_arch_state>: Declare ctor.
9776         <regs>: Now a unique_ptr.
9777         (remote_gdbarch_data_handle): Delete.
9778         (get_remote_arch_state): Delete.
9779         (remote_state::get_remote_arch_state): New.
9780         (get_remote_state): Adjust to call remote_state's
9781         get_remote_arch_state method.
9782         (init_remote_state): Delete, bits factored out to ...
9783         (remote_arch_state::remote_arch_state): ... this new method.
9784         (get_remote_packet_size, get_memory_packet_size)
9785         (process_g_packet, remote_target::fetch_registers)
9786         (remote_target::prepare_to_store, store_registers_using_G)
9787         (remote_target::store_registers, remote_target::get_trace_status):
9788         Adjust to call remote_state's method.
9789         (_initialize_remote): Remove reference to
9790         remote_gdbarch_data_handle.
9791
9792 2018-05-22  Pedro Alves  <palves@redhat.com>
9793
9794         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
9795         pread>: New method declarations.
9796         (remote_target::open_1): Adjust.
9797         (readahead_cache_invalidate): Rename to ...
9798         (readahead_cache::invalidate): ... this, and adjust to be a class
9799         method.
9800         (readahead_cache_invalidate_fd): Rename to ...
9801         (readahead_cache::invalidate_fd): ... this, and adjust to be a
9802         class method.
9803         (remote_hostio_pwrite): Adjust.
9804         (remote_hostio_pread_from_cache): Rename to ...
9805         (readahead_cache::pread): ... this, and adjust to be a class
9806         method.
9807         (remote_hostio_close): Adjust.
9808
9809 2018-05-22  Pedro Alves  <palves@redhat.com>
9810
9811         * remote.c (remote_hostio_close_cleanup): Delete.
9812         (class scoped_remote_fd): New.
9813         (remote_file_put, remote_file_get): Use it.
9814
9815 2018-05-22  Pedro Alves  <palves@redhat.com>
9816
9817         (struct vCont_action_support): Use bool and initialize all fields.
9818         (struct readahead_cache): Initialize all fields.
9819         (remote_state): Use bool and initialize all fields.
9820         (remote_state::remote_state, remote_state::~remote_state): New.
9821         (new_remote_state): Delete.
9822         (_initialize_remote): Use new to allocate remote_state.
9823
9824 2018-05-22  Pedro Alves  <palves@redhat.com>
9825             張俊芝  <zjz@zjz.name>
9826
9827         PR gdb/22973
9828         * c-exp.y: Include "c-support.h".
9829         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
9830         of tolower.  Use c_ident_is_alpha to scan names.
9831         * c-lang.c: Include "c-support.h".
9832         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
9833         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
9834         * c-support.h: New file, with bits factored out from ...
9835         * cp-name-parser.y: ... this file.
9836         Include "c-support.h".
9837         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
9838         c-support.h and renamed.
9839         (symbol_end, yylex): Adjust.
9840
9841 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9842
9843         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
9844         parameter type to CORE_ADDR.
9845         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
9846         parameter type in declaration to CORE_ADDR.
9847         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
9848         target_auxv_search to get AT_HWCAP and use the result to get the
9849         target description.
9850         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
9851         to CORE_ADDR. Remove the cast of the return value to unsigned
9852         long. Fix error predicate of target_auxv_search.
9853         (ppc_linux_nat_target::read_description): Change the type of the
9854         hwcap variable to CORE_ADDR.
9855
9856 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9857
9858         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
9859         if the size of fpscr is larger than 32 bits.
9860
9861 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9862
9863         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
9864         (ppc32_linux_vsxregmap): New global.
9865         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
9866         regcache_supply_regset, and regcache_collect_regset.
9867         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
9868         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
9869         (fetch_vsx_register, store_vsx_register): Remove.
9870         (fetch_vsx_registers): Add regno parameter. Get regset using
9871         ppc_linux_vsxregset. Use regset to supply registers.
9872         (store_vsx_registers): Add regno parameter. Get regset using
9873         ppc_linux_vsxregset. Use regset to collect registers.
9874         (fetch_register): Call fetch_vsx_registers instead of
9875         fetch_vsx_register.
9876         (store_register): Call store_vsx_registers instead of
9877         store_vsx_register.
9878         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
9879         new regno parameter.
9880         (store_ppc_registers): Call store_vsx_registers with -1 for the
9881         new regno parameter.
9882         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
9883         (ppc_collect_vsxregset): Remove.
9884
9885 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9886
9887         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
9888         offset fields.
9889         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
9890         for vector register offset fields.
9891         (ppc64_fbsd_reg_offsets): Likewise.
9892         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9893         to vector register offset fields.
9894         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9895         to vector register offset fields.
9896         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
9897         vector register offset fields.
9898         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
9899         initializers for vector register offset fields.
9900         (rs6000_aix64_reg_offsets): Likewise.
9901         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
9902         (ppc_supply_vrregset): Remove.
9903         (ppc_collect_vrregset): Remove.
9904         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
9905         (ppc_linux_vrregset) : New function.
9906         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
9907         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
9908         (ppc32_linux_vrregset): Remove.
9909         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
9910         and use result instead of ppc32_linux_vrregset.
9911         (ppc32_linux_reg_offsets): Remove initializers for vector register
9912         offset fields.
9913         (ppc64_linux_reg_offsets): Likewise.
9914         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
9915         * ppc-linux-nat.c: Include regset.h.
9916         (gdb_vrregset_t): Adjust comment to account for little-endian
9917         mode.
9918         (supply_vrregset, fill_vrregset): Remove.
9919         (fetch_altivec_register, store_altivec_register): Remove.
9920         (fetch_altivec_registers): Add regno parameter. Get regset using
9921         ppc_linux_vrregset. Use regset to supply registers.
9922         (store_altivec_registers): Add regno parameter. Get regset using
9923         ppc_linux_vrregset. Use regset to collect registers.
9924         (fetch_register): Call fetch_altivec_registers instead of
9925         fetch_altivec_register.
9926         (store_register): Call store_altivec_registers instead of
9927         store_altivec_register.
9928         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
9929         the new regno parameter.
9930         (store_ppc_registers): Call store_altivec_registers with -1 for
9931         the new regno parameter.
9932
9933 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9934
9935         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
9936         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
9937         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
9938         (gdb_vrregset_t): Change array type size to
9939         PPC_LINUX_SIZEOF_VRREGSET.
9940         (gdb_vsxregset_t): Change array type size to
9941         PPC_LINUX_SIZEOF_VSXREGSET.
9942         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
9943         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
9944         PPC_LINUX_SIZEOF_VSXREGSET.
9945
9946 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9947
9948         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
9949         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
9950         nat/ppc-linux.c.
9951         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
9952         ppc_linux_target_wordsize with tid.
9953         (ppc_linux_nat_target::read_description): Call ppc_linux_target
9954         wordsize with tid.
9955         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
9956         (ppc64_64bit_inferior_p): Add static and inline specifiers.
9957         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
9958         tid parameter. Remove static specifier.
9959         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
9960         (ppc_linux_target_wordsize): New declaration.
9961
9962 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9963
9964         * arch/ppc-linux-common.c: New file.
9965         * arch/ppc-linux-common.h: New file.
9966         * arch/ppc-linux-tdesc.h: New file.
9967         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
9968         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
9969         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
9970         arch/ppc-linux-tdesc.h.
9971         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
9972         arch/ppc-linux-tdesc.h.
9973         (ppc_linux_nat_target::read_description): Remove target
9974         description matching code. Fill a ppc_linux_features struct and
9975         call ppc_linux_match_description with it. Move comment about ISA
9976         2.05 to ppc-linux-common.c.
9977         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
9978         arch/ppc-linux-tdesc.h.
9979         (ppc_linux_core_read_description): Remove target description
9980         matching code. Fill a ppc_linux_features struct and call
9981         ppc_linux_match_description with it.
9982         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
9983         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
9984         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
9985         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
9986         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
9987         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
9988         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
9989         (tdesc_powerpc_e500l): Remove.
9990
9991 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
9992
9993         * ada-lang.c (catch_assert_command): Pass empty string instead
9994         of NULL for excep_string argument.
9995
9996 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9997
9998         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
9999         the width of the requested register exceeds the width of the
10000         `ptrace' data type.
10001
10002 2018-05-21  Tom Tromey  <tom@tromey.com>
10003
10004         * printcmd.c (output_command): Remove.
10005         (output_command_const): Rename to output_command.
10006         * valprint.h (output_command): Rename from output_command_const.
10007         * tracepoint.c (trace_dump_actions): Call output_command.
10008
10009 2018-05-21  Tom Tromey  <tom@tromey.com>
10010
10011         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
10012         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
10013         * ada-lang.h (create_ada_exception_catchpoint): Update.
10014         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
10015         std::string.
10016         (create_excep_cond_exprs, ~ada_catchpoint)
10017         (should_stop_exception, print_one_exception)
10018         (print_mention_exception, print_recreate_exception): Update.
10019         (ada_get_next_arg): Remove.
10020         (catch_ada_exception_command_split): Use std::string.  Change type
10021         of "excep_string", "cond_string".
10022         (catch_ada_exception_command): Update.
10023         (create_ada_exception_catchpoint): Change type of excep_string.
10024         (ada_exception_sal): Remove excep_string parameter.
10025         (~ada_catchpoint): Remove.
10026
10027 2018-05-21  Tom Tromey  <tom@tromey.com>
10028
10029         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
10030         cleanup.
10031
10032 2018-05-21  Tom Tromey  <tom@tromey.com>
10033
10034         * ada-lang.c (ada_exception_message_1, ada_exception_message):
10035         Return unique_xmalloc_ptr.
10036         (print_it_exception): Update.
10037
10038 2018-05-21  Tom Tromey  <tom@tromey.com>
10039
10040         * tracepoint.c (trace_dump_actions): Use std::string.
10041
10042 2018-05-21  Tom Tromey  <tom@tromey.com>
10043
10044         * symfile.c (reread_symbols): Use std::string for original_name.
10045
10046 2018-05-21  Tom Tromey  <tom@tromey.com>
10047
10048         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
10049         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
10050         constructor.
10051
10052 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
10053
10054         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
10055         instance to...
10056         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
10057         * objfiles.c (get_objfile_bfd_data): Allocate
10058         objfile_per_bfd_storage with obstack_new when allocating on
10059         obstack.
10060
10061 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
10062
10063         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
10064         OBSTACK_ZALLOC.
10065         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
10066         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
10067         * mdebugread.c (mdebug_build_psymtabs): Likewise.
10068         (add_pending): Likewise.
10069         (parse_symbol): Likewise.
10070         (parse_partial_symbols): Likewise.
10071         (psymtab_to_symtab_1): Likewise.
10072         (new_psymtab): Likewise.
10073         (elfmdebug_build_psymtabs): Likewise.
10074         * minsyms.c (terminate_minimal_symbol_table): Likewise.
10075         * objfiles.c (get_objfile_bfd_data): Likewise.
10076         (objfile_register_static_link): Likewise.
10077         * psymtab.c (allocate_psymtab): Likewise.
10078         * stabsread.c (read_member_functions): Likewise.
10079         * xcoffread.c (xcoff_end_psymtab): Likewise.
10080
10081 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
10082
10083         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
10084         compiler supports std::is_trivially_constructible.
10085         * common/poison.h: Include obstack.h.
10086         (IsMallocable): Define to is_trivially_constructible if the
10087         compiler supports it, define to true_type otherwise.
10088         (xobnew): New.
10089         (XOBNEW): Redefine.
10090         (xobnewvec): New.
10091         (XOBNEWVEC): Redefine.
10092         * gdb_obstack.h (obstack_zalloc): New.
10093         (OBSTACK_ZALLOC): Redefine.
10094         (obstack_calloc): New.
10095         (OBSTACK_CALLOC): Redefine.
10096         (obstack_new): New.
10097         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
10098         (gdbarch_obstack): New declaration in gdbarch.h, definition in
10099         gdbarch.c.
10100         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
10101         obstack_calloc/obstack_zalloc.
10102         (gdbarch_obstack_zalloc): Remove.
10103         * target-descriptions.c (tdesc_data_init): Use obstack_new.
10104
10105 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10106
10107         * stack.c (backtrace_command_1): Remove useless variable int i.
10108
10109 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10110
10111         * stack.c (print_frame_info): Fix comment.
10112
10113 2018-05-18  Tom Tromey  <tom@tromey.com>
10114
10115         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
10116         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
10117         (~dwarf2_per_objfile): Update
10118         (dwarf2_get_dwz_file): Use new.
10119         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
10120         unique_ptr.
10121
10122 2018-05-18  Tom Tromey  <tom@tromey.com>
10123
10124         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
10125         unique_ptr.
10126         * dwarf2read.c (struct dwp_file): Add constructor and
10127         initializers.
10128         (open_and_init_dwp_file): Return a unique_ptr.
10129         (dwarf2_per_objfile, create_dwp_hash_table)
10130         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
10131         (lookup_dwo_unit_in_dwp): Update.
10132         (open_and_init_dwp_file, get_dwp_file): Update.
10133
10134 2018-05-18  Tom Tromey  <tom@tromey.com>
10135
10136         * dwarf2read.c (dwarf2_per_objfile): Update.
10137         (struct mapped_index): Add initializers.
10138         (dwarf2_read_index): Use new.
10139         (dw2_symtab_iter_init): Update.
10140         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
10141         unique_ptr.
10142
10143 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
10144
10145         * dwarf2read.c (mapped_index) <total_size>: Remove.
10146
10147 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
10148
10149         * unittests/format_pieces-selftests.c (test_format_specifier):
10150         Add ARI comments.
10151
10152 2018-05-18  Tom Tromey  <tom@tromey.com>
10153
10154         * c-typeprint.c (maybe_print_hole): New function.
10155         (c_print_type_struct_field_offset): Update.
10156         (c_type_print_base_struct_union): Call maybe_print_hole.
10157
10158 2018-05-17  Keith Seitz  <keiths@redhat.com>
10159
10160         * breakpoint.c (build_bpstat_chain): New function, moved from
10161         bpstat_stop_status.
10162         (bpstat_stop_status): Add optional parameter, `stop_chain'.
10163         If no stop chain is passed, call build_bpstat_chain to build it.
10164         * breakpoint.h (build_bpstat_chain): Declare.
10165         (bpstat_stop_status): Move documentation here from breakpoint.c.
10166         * infrun.c (handle_signal_stop): Before eliding inlined frames,
10167         build the stop chain and pass it to skip_inline_frames.
10168         Pass this stop chain to bpstat_stop_status.
10169         * inline-frame.c: Include breakpoint.h.
10170         (stopped_by_user_bp_inline_frame): New function.
10171         (skip_inline_frames): Add parameter `stop_chain'.
10172         Move documention to inline-frame.h.
10173         If non-NULL, use stopped_by_user_bp_inline_frame to determine
10174         whether the frame should be elided.
10175         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
10176         Add moved documentation and update for new parameter.
10177
10178 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
10179
10180         PR cli/14975
10181         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10182         unittests/format_pieces-selftests.c.
10183         * common/format.h (format_piece) <operator==>: New.
10184         (format_pieces) <operator[]>: Remove.
10185         * common/format.c (format_pieces::format_pieces): Handle \e.
10186         * unittests/format_pieces-selftests.c: New.
10187
10188 2018-05-17  Tom Tromey  <tom@tromey.com>
10189
10190         PR symtab/23010:
10191         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
10192         (dw2_instantiate_symtab): Add skip_partial parameter.
10193         (dw2_find_last_source_symtab, dw2_map_expand_apply)
10194         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
10195         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
10196         (dw2_expand_symtabs_matching_one)
10197         (dw2_find_pc_sect_compunit_symtab)
10198         (dw2_debug_names_lookup_symbol)
10199         (dw2_debug_names_expand_symtabs_for_function): Update.
10200         (init_cutu_and_read_dies): Add skip_partial parameter.
10201         (process_psymtab_comp_unit, build_type_psymtabs_1)
10202         (process_skeletonless_type_unit, load_partial_comp_unit)
10203         (psymtab_to_symtab_1): Update.
10204         (load_full_comp_unit): Add skip_partial parameter.
10205         (process_imported_unit_die, dwarf2_read_addr_index)
10206         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
10207         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
10208         (read_signatured_type): Update.
10209
10210 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
10211
10212         * value.c (release_value): Remove unused variable.
10213         (record_latest_value): Likewise.
10214         (access_value_history): Likewise.
10215         (preserve_values): Likewise.
10216
10217 2018-05-17  Tom Tromey  <tom@tromey.com>
10218
10219         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
10220         Initialize.
10221
10222 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
10223
10224         PR gdb/22286
10225         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
10226         Also handle registers whose width is not a multiple of
10227         PTRACE_TYPE_RET.
10228         (linux_nat_trad_target::store_register): Likewise.
10229
10230 2018-05-16  Tom Tromey  <tom@tromey.com>
10231
10232         * gdbcore.h (core_bfd): Redefine.
10233         * corelow.c (core_target::close): Update.
10234         (core_target_open): Update.
10235         * progspace.h (struct program_space) <cbfd>: Now a
10236         gdb_bfd_ref_ptr.
10237
10238 2018-05-16  Tom Tromey  <tom@tromey.com>
10239
10240         PR cli/19551:
10241         * symfile-add-flags.h (enum symfile_add_flags)
10242         <SYMFILE_NOT_FILENAME>: New constant.
10243         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
10244         objfile name from BFD.
10245         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
10246         * minidebug.c (find_separate_debug_file_in_section): Put
10247         ".gnu_debugdata" into BFD's file name.
10248
10249 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
10250
10251         * regcache.c (regcache_read_ftype, regcache_write_ftype):
10252         Remove.
10253
10254 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
10255
10256         PR binutils/21446
10257         * aarch64-tdep.c (aarch64_analyze_prologue,
10258         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
10259         Indicate not interested in errors.
10260
10261 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
10262
10263         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
10264         Supply the MIPS_ZERO_REGNUM register.
10265
10266 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
10267
10268         * mips-tdep.c (mask_address_var): Make variable static.
10269
10270 2018-05-14  Tom Tromey  <tom@tromey.com>
10271
10272         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
10273
10274 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
10275
10276         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
10277         FXSAVE_ADDR for the mxcsr register.
10278
10279 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
10280
10281         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
10282
10283 2018-05-11  Pedro Alves  <palves@redhat.com>
10284
10285         * corelow.c (core_target) <core_target>: No longer inline.
10286         Initialize m_core_gdbarch, m_core_vec and build the section table
10287         here.
10288         <~core_target>: New.
10289         <core_gdbarch, get_core_register_section>: New methods.
10290         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
10291         factored out from ...
10292         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
10293         (core_ops): Delete.
10294         (sniff_core_bfd): Add gdbarch parameter.
10295         (core_close): Delete, merged into ...
10296         (core_target::close): ... here.  Delete self.
10297         (core_close_cleanup): Delete.
10298         (core_target_open): Allocate a core_target on the heap.  Use a
10299         unique_ptr instead of a cleanup.  Bits moved into the core_target
10300         ctor.  Adjust to use core_target methods instead of globals.
10301         (get_core_register_section): Rename to ...
10302         (core_target::get_core_register_section): ... this and adjust.
10303         (struct get_core_registers_cb_data): New.
10304         (get_core_registers_cb): Use it.  Use bool.
10305         (core_target::fetch_registers, core_target::files_info)
10306         (core_target::xfer_partial, core_target::read_description)
10307         (core_target::pid_to, core_target::thread_name): Adjust to
10308         reference class fields instead of globals.
10309         * target.h (struct target_ops_deleter, target_ops_up): New.
10310
10311 2018-05-11  Pedro Alves  <palves@redhat.com>
10312
10313         * corefile.c (core_file_command): Move to corelow.c.
10314         * corelow.c (the_core_target): Delete.
10315         (core_file_command): Moved from corefile.c.  Check exec_bfd
10316         instead of the_core_target.  Use target_detach instead of calling
10317         into the_core_target directly.
10318         (maybe_say_no_core_file_now): New.
10319         (core_target::detach): Use it.
10320         (_initialize_corelow): Remove references to the_core_target.
10321         * gdbcore.h (the_core_target): Delete.
10322
10323 2018-05-11  Tom Tromey  <tromey@redhat.com>
10324             Pedro Alves  <palves@redhat.com>
10325
10326         * corefile.c (core_bfd): Remove.
10327         * gdbcore.h (core_bfd): Now a macro.
10328         * progspace.h (struct program_space) <cbfd>: New field.
10329
10330 2018-05-11  Tom Tromey  <tom@tromey.com>
10331
10332         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
10333         gdb::def_vector.
10334
10335 2018-05-10  Tom Tromey  <tom@tromey.com>
10336
10337         * configure: Rebuild.
10338         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
10339
10340 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
10341
10342         PR server/23158:
10343         * regformats/regdat.sh: Adjust script, following the addition
10344         of the new expedite_regs parameter to init_target_desc.
10345
10346 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
10347     
10348         PR gdb/23127
10349         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
10350         set_gdbarch_significant_addr_bit.
10351         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
10352         set_gdbarch_significant_addr_bit.
10353         * utils.c (address_significant): Update to sign extend addr.
10354
10355 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
10356
10357         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
10358         (xtensa_linux_init_abi): Limit tdep->num_regs by
10359         tdep->num_nopriv_regs.
10360         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
10361         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
10362         not initialized.
10363
10364 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
10365
10366         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
10367
10368 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
10369
10370         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
10371         (I387_MXCSR_INIT_VAL): New constant.
10372         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
10373         buffer if it was supplied by the inferior.
10374         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
10375         (i387_xsave_get_clear_bv): New function.
10376         (i387_supply_xsave): Only read x87 control registers from the
10377         xsave buffer if the feature is enabled, and the state will have
10378         been written, otherwise, provide a suitable default.
10379         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
10380         including x87 control registers.  Update control registers if they
10381         have changed from the default value, and mark features as enabled
10382         as required.
10383         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
10384
10385 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
10386
10387         * spu-tdep.c (info_spu_event_command): Fix output formatting.
10388
10389 2018-05-07  Tom Tromey  <tom@tromey.com>
10390
10391         * configure: Rebuild.
10392         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
10393
10394 2018-05-07  Tom Tromey  <tom@tromey.com>
10395
10396         PR tdep/20362:
10397         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
10398         bit.  Use correct value for VDIV.
10399
10400 2018-05-04  Tom Tromey  <tom@tromey.com>
10401
10402         * configure: Rebuild.
10403         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
10404
10405 2018-05-04  Tom Tromey  <tom@tromey.com>
10406
10407         * linux-record.c (record_linux_system_call) <case
10408         RECORD_SYS_RECVFROM>: Add "break".
10409
10410 2018-05-04  Tom Tromey  <tom@tromey.com>
10411
10412         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
10413         Add missing "break".
10414         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
10415         Add missing "break".
10416
10417 2018-05-04  Tom Tromey  <tom@tromey.com>
10418
10419         * rs6000-tdep.c (ppc_process_record_op4)
10420         (ppc_process_record_op63): Add fall-through comment.
10421
10422 2018-05-04  Tom Tromey  <tom@tromey.com>
10423
10424         * i386-tdep.c (i386_process_record): Add fall-through comment.
10425
10426 2018-05-04  Tom Tromey  <tom@tromey.com>
10427
10428         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
10429         comment.
10430
10431 2018-05-04  Tom Tromey  <tom@tromey.com>
10432
10433         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
10434         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
10435         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
10436         comment.
10437         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
10438         comment.
10439         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
10440         comment.
10441
10442 2018-05-04  Tom Tromey  <tom@tromey.com>
10443
10444         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
10445
10446 2018-05-04  Tom Tromey  <tom@tromey.com>
10447
10448         * s390-tdep.c (s390_process_record): Fix fall-through comments.
10449         * xcoffread.c (scan_xcoff_symtab): Move comment later.
10450         * symfile.c (section_is_mapped): Fix fall-through comment.
10451         * stabsread.c (define_symbol, read_member_functions): Fix
10452         fall-through comment.
10453         * s390-linux-tdep.c (s390_process_record): Fix fall-through
10454         comment.
10455         * remote.c (remote_wait_as): Fix fall-through comment.
10456         * p-exp.y (yylex): Fix fall-through comment.
10457         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
10458         comment.
10459         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
10460         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
10461         * jv-exp.y (yylex): Fix fall-through comment.
10462         * go-exp.y (lex_one_token): Fix fall-through comment.
10463         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
10464         fall-through comment.
10465         * f-exp.y (yylex): Fix fall-through comment.
10466         * dwarf2read.c (process_die): Fix fall-through comments.
10467         * dbxread.c (process_one_symbol): Fix fall-through comment.
10468         * d-exp.y (lex_one_token): Fix fall-through comment.
10469         * cp-name-parser.y (yylex): Fix fall-through comment.
10470         * coffread.c (coff_symtab_read): Fix fall-through comment.
10471         * c-exp.y (lex_one_token): Fix fall-through comment.
10472         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
10473         comment.
10474         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
10475         comment.
10476
10477 2018-05-04  Tom Tromey  <tom@tromey.com>
10478
10479         PR python/22730:
10480         * NEWS: Mention gdb.execute change.
10481         * gdbcmd.h (execute_control_command): Don't declare.
10482         * python/python.c (execute_gdb_command): Use read_command_lines_1,
10483         execute_control_commands, execute_control_commands_to_string.
10484         * cli/cli-script.h (execute_control_commands)
10485         (execute_control_commands_to_string): Declare.
10486         (execute_control_command): Add from_tty parameter.
10487         * cli/cli-script.c (execute_control_commands)
10488         (execute_control_commands_to_string): New functions.
10489         (execute_user_command): Use execute_control_commands.
10490         (execute_control_command_1): Add "from_tty" parameter.  Update.
10491         (execute_control_command): Likewise.
10492
10493 2018-05-04  Tom Tromey  <tom@tromey.com>
10494
10495         PR python/22731:
10496         * NEWS: Mention that breakpoint commands are writable.
10497         * python/py-breakpoint.c (bppy_set_commands): New function.
10498         (breakpoint_object_getset) <"commands">: Use it.
10499
10500 2018-05-04  Tom Tromey  <tom@tromey.com>
10501
10502         * tracepoint.c (actions_command): Update.
10503         * mi/mi-cmd-break.c (mi_command_line_array)
10504         (mi_command_line_array_cnt, mi_command_line_array_ptr)
10505         (mi_read_next_line): Remove.
10506         (mi_cmd_break_commands): Update.
10507         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
10508         function_view.
10509         * cli/cli-script.c (get_command_line): Update.
10510         (process_next_line): Use function_view.  Constify.
10511         (recurse_read_control_structure, read_command_lines)
10512         (read_command_lines_1): Change argument types to function_view.
10513         (do_define_command, document_command): Update.
10514         * breakpoint.h (check_tracepoint_command): Don't declare.
10515         * breakpoint.c (check_tracepoint_command): Remove.
10516         (commands_command_1, create_tracepoint_from_upload): Update.
10517
10518 2018-05-04  Tom Tromey  <tom@tromey.com>
10519
10520         PR gdb/11750:
10521         * cli/cli-script.h (enum command_control_type) <define_control>:
10522         New constant.
10523         * cli/cli-script.c (multi_line_command_p): Handle define_control.
10524         (build_command_line, execute_control_command_1)
10525         (process_next_line): Likewise.
10526         (do_define_command): New function, extracted from define_command.
10527         (define_command): Use it.
10528
10529 2018-05-04  Tom Tromey  <tom@tromey.com>
10530
10531         * tracepoint.c (actions_command): Update.
10532         * cli/cli-script.h (read_command_lines): Update.
10533         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
10534         (MAX_TMPBUF): Remove define.
10535         (define_command): Use string_printf.
10536         (document_command): Likewise.
10537         * breakpoint.c (commands_command_1): Update.
10538
10539 2018-05-04  Tom Tromey  <tom@tromey.com>
10540
10541         * top.c (execute_command): Update.
10542         * cli/cli-script.h (print_command_lines): Now varargs.
10543         * cli/cli-script.c (print_command_lines): Now varargs.
10544         (execute_control_command_1) <case while_control, case if_control>:
10545         Update.
10546
10547 2018-05-04  Tom Tromey  <tom@tromey.com>
10548
10549         * tracepoint.c (all_tracepoint_actions): Rename from
10550         all_tracepoint_actions_and_cleanup.  Change return type.
10551         (actions_command, encode_actions_1, encode_actions)
10552         (trace_dump_actions, tdump_command): Update.
10553         * remote.c (remote_download_command_source): Update.
10554         * python/python.c (gdbpy_eval_from_control_command)
10555         (python_command, python_interactive_command): Update.
10556         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
10557         * guile/guile.c (guile_command)
10558         (gdbscm_eval_from_control_command, guile_command): Update.
10559         * compile/compile.c (compile_code_command)
10560         (compile_print_command, compile_to_object): Update.
10561         * cli/cli-script.h (struct command_lines_deleter): New.
10562         (counted_command_line): New typedef.
10563         (struct command_line): Add constructor, destructor.
10564         <body_list>: Remove.
10565         <body_list_0, body_list_1>: New members.
10566         (command_line_up): Remove typedef.
10567         (read_command_lines, read_command_lines_1, get_command_line):
10568         Update.
10569         (copy_command_lines): Don't declare.
10570         * cli/cli-script.c (build_command_line): Use "new".
10571         (get_command_line): Return counted_command_line.
10572         (print_command_lines, execute_user_command)
10573         (execute_control_command_1, while_command, if_command): Update.
10574         (realloc_body_list): Remove.
10575         (process_next_line, recurse_read_control_structure): Update.
10576         (read_command_lines, read_command_lines_1): Return counted_command_line.
10577         (free_command_lines): Use "delete".
10578         (copy_command_lines): Remove.
10579         (define_command, document_command, show_user_1): Update.
10580         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
10581         a counted_command_line.
10582         * breakpoint.h (counted_command_line): Remove typedef.
10583         (breakpoint_set_commands): Update.
10584         * breakpoint.c (check_no_tracepoint_commands)
10585         (validate_commands_for_breakpoint): Update.
10586         (breakpoint_set_commands): Change commands to be a
10587         counted_command_line.
10588         (commands_command_1, update_dprintf_command_list)
10589         (create_tracepoint_from_upload): Update.
10590
10591 2018-05-04  Tom Tromey  <tom@tromey.com>
10592
10593         * cli/cli-decode.h (cmd_list_element): New constructor.
10594         (~cmd_list_element): New destructor.
10595         (struct cmd_list_element): Add initializers.
10596         * cli/cli-decode.c (do_add_cmd): Use "new".
10597         (delete_cmd): Use "delete".
10598
10599 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
10600             Pedro Alves <palves@redhat.com>
10601
10602         PR breakpoints/19806 and support for PR external/20207.
10603         * NEWS: Mention Aarch64 watchpoint improvements.
10604         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
10605         watchpoints and PR external/20207 watchpoints.
10606         * nat/aarch64-linux-hw-point.c
10607         (kernel_supports_any_contiguous_range): New.
10608         (aarch64_watchpoint_offset): New.
10609         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
10610         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
10611         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
10612         (aarch64_align_watchpoint): New parameters aligned_offset_p and
10613         next_addr_orig_p.  Support PR external/20207 watchpoints.
10614         (aarch64_downgrade_regs): New.
10615         (aarch64_dr_state_insert_one_point): New parameters offset and
10616         addr_orig.
10617         (aarch64_dr_state_remove_one_point): Likewise.
10618         (aarch64_handle_breakpoint): Update caller.
10619         (aarch64_handle_aligned_watchpoint): Likewise.
10620         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
10621         aligned_offset.
10622         (aarch64_linux_set_debug_regs): Remove const from state.  Call
10623         aarch64_downgrade_regs.
10624         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
10625         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
10626         (DR_CONTROL_MASK): ... this.
10627         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
10628         (unsigned int aarch64_watchpoint_offset): New prototype.
10629         (aarch64_linux_set_debug_regs): Remove const from state.
10630         * utils.c (align_up, align_down): Move to ...
10631         * common/common-utils.c (align_up, align_down): ... here.
10632         * utils.h (align_up, align_down): Move to ...
10633         * common/common-utils.h (align_up, align_down): ... here.
10634
10635 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
10636
10637         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
10638         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
10639         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
10640         Re-implement to match the ABI as summarized in GCC's
10641         gcc/config/sparc/sparc.c.  All callers updated.
10642         (sparc32_store_arguments): Remove assertion.
10643
10644 2018-05-04  Tom Tromey  <tom@tromey.com>
10645
10646         * printcmd.c: Don't include tui.h.
10647         (decode_format): Use skip_spaces.
10648
10649 2018-05-04  Tom Tromey  <tom@tromey.com>
10650
10651         PR gdb/22619:
10652         * printcmd.c (last_count): New global.
10653         (x_command): Use saved count when repeating.
10654
10655 2018-05-04  Tom Tromey  <tom@tromey.com>
10656
10657         * nto-procfs.c (do_closedir_cleanup): Remove.
10658         (procfs_pidlist): Use gdb_dir_up.
10659         * procfs.c (do_closedir_cleanup): Remove.
10660         (proc_update_threads): Use gdb_dir_up.
10661         * common/filestuff.h (struct gdb_dir_deleter): New.
10662         (gdb_dir_up): New typedef.
10663
10664 2018-05-04  Tom Tromey  <tom@tromey.com>
10665
10666         * ada-lang.c (print_mention_exception): Use std::string.
10667
10668 2018-05-04  Tom Tromey  <tom@tromey.com>
10669
10670         * ada-lang.c (create_excep_cond_exprs): Update.
10671         (ada_exception_catchpoint_cond_string): Use std::string.
10672
10673 2018-05-04  Tom Tromey  <tom@tromey.com>
10674
10675         * ada-lang.c (xget_renaming_scope): Return std::string.
10676         (old_renaming_is_invisible): Update.
10677
10678 2018-05-04  Tom Tromey  <tom@tromey.com>
10679
10680         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
10681         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
10682
10683 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
10684
10685         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
10686
10687 2018-05-04  Tom Tromey  <tom@tromey.com>
10688
10689         * remote.c (remote_query_supported_append): Change type.
10690         (remote_check_symbols): Update.
10691
10692 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
10693
10694         PR gdb/11420
10695         * configure.ac: Prepend libpython.
10696         * python/python-config.py: Likewise.
10697         * configure: Regenerate.
10698
10699 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
10700
10701         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
10702
10703 2018-05-03  Pedro Alves  <palves@redhat.com>
10704
10705         * s390-linux-nat.c
10706         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
10707         override.  Write 'true' instead of '1'.
10708         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
10709         declaration.
10710
10711 2018-05-02  Pedro Alves  <palves@redhat.com>
10712
10713         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
10714         add_inf_child_target.
10715         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
10716         add_inf_child_target.
10717         * aix-thread.c (aix_thread_target_info): New.
10718         (aix_thread_target) <shortname, longname, doc>: Delete.
10719         <info>: New.
10720         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
10721         add_inf_child_target.
10722         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
10723         add_inf_child_target.
10724         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
10725         add_inf_child_target.
10726         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
10727         add_inf_child_target.
10728         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
10729         add_inf_child_target.
10730         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
10731         add_inf_child_target.
10732         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
10733         add_inf_child_target.
10734         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
10735         add_inf_child_target.
10736         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
10737         add_inf_child_target.
10738         * bfd-target.c (target_bfd_target_info): New.
10739         (target_bfd) <shortname, longname, doc>: Delete.
10740         <info>: New.
10741         * bsd-kvm.c (bsd_kvm_target_info): New.
10742         (bsd_kvm_target) <shortname, longname, doc>: Delete.
10743         <info>: New.
10744         (bsd_kvm_target::open): Rename to ...
10745         (bsd_kvm_target_open): ... this.  Adjust.
10746         * bsd-uthread.c (bsd_uthread_target_info): New.
10747         (bsd_uthread_target) <shortname, longname, doc>: Delete.
10748         <info>: New.
10749         * corefile.c (core_file_command): Adjust.
10750         * corelow.c (core_target_info): New.
10751         (core_target) <shortname, longname, doc>: Delete.
10752         <info>: New.
10753         (core_target::open): Rename to ...
10754         (core_target_open): ... this.  Adjust.
10755         * ctf.c (ctf_target_info): New.
10756         (ctf_target) <shortname, longname, doc>: Delete.
10757         <info>: New.
10758         (ctf_target::open): Rename to ...
10759         (ctf_target_open): ... this.
10760         (_initialize_ctf): Adjust.
10761         * exec.c (exec_target_info): New.
10762         (exec_target) <shortname, longname, doc>: Delete.
10763         <info>: New.
10764         (exec_target::open): Rename to ...
10765         (exec_target_open): ... this.
10766         * gdbcore.h (core_target_open): Declare.
10767         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
10768         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
10769         add_inf_child_target.
10770         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
10771         add_inf_child_target.
10772         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
10773         add_inf_child_target.
10774         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
10775         add_inf_child_target.
10776         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
10777         add_inf_child_target.
10778         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
10779         add_inf_child_target.
10780         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
10781         add_inf_child_target.
10782         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
10783         add_inf_child_target.
10784         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
10785         add_inf_child_target.
10786         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
10787         add_inf_child_target.
10788         * inf-child.c (inf_child_target_info): New.
10789         (inf_child_target::info): New.
10790         (inf_child_open_target): Remove 'target' parameter.  Use
10791         get_native_target instead.
10792         (inf_child_target::open): Delete.
10793         (add_inf_child_target): New.
10794         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
10795         Delete.
10796         <info>: New.
10797         (add_inf_child_target): Declare.
10798         (inf_child_open_target): Declare.
10799         * linux-thread-db.c (thread_db_target_info): New.
10800         (thread_db_target) <shortname, longname, doc>: Delete.
10801         <info>: New.
10802         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
10803         add_inf_child_target.
10804         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
10805         add_inf_child_target.
10806         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
10807         add_inf_child_target.
10808         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
10809         add_inf_child_target.
10810         * make-target-delegates (print_class): Adjust.
10811         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
10812         add_inf_child_target.
10813         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
10814         add_inf_child_target.
10815         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
10816         add_inf_child_target.
10817         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
10818         add_inf_child_target.
10819         * nto-procfs.c (nto_native_target_info): New.
10820         (nto_procfs_target_native) <shortname, longname, doc>:
10821         Delete.
10822         <info>: New.
10823         (nto_procfs_target_info): New.
10824         (nto_procfs_target_procfs) <shortname, longname, doc>:
10825         Delete.
10826         <info>: New.
10827         (init_procfs_targets): Adjust.
10828         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
10829         add_inf_child_target.
10830         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
10831         add_inf_child_target.
10832         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
10833         add_inf_child_target.
10834         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
10835         add_inf_child_target.
10836         * ravenscar-thread.c (ravenscar_target_info): New.
10837         (ravenscar_thread_target) <shortname, longname, doc>:
10838         Delete.
10839         <info>: New.
10840         * record-btrace.c (record_btrace_target_info):
10841         (record_btrace_target) <shortname, longname, doc>: Delete.
10842         <info>: New.
10843         (record_btrace_target::open): Rename to ...
10844         (record_btrace_target_open): ... this.  Adjust.
10845         * record-full.c (record_longname, record_doc): New.
10846         (record_full_base_target) <shortname, longname, doc>: Delete.
10847         <info>: New.
10848         (record_full_target_info): New.
10849         (record_full_target): <shortname>: Delete.
10850         <info>: New.
10851         (record_full_core_open_1, record_full_open_1): Update comments.
10852         (record_full_base_target::open): Rename to ...
10853         (record_full_open): ... this.
10854         (cmd_record_full_restore): Update.
10855         (_initialize_record_full): Update.
10856         * remote-sim.c (remote_sim_target_info): New.
10857         (gdbsim_target) <shortname, longname, doc>: Delete.
10858         <info>: New.
10859         (gdbsim_target::open): Rename to ...
10860         (gdbsim_target_open): ... this.
10861         (_initialize_remote_sim): Adjust.
10862         * remote.c (remote_doc): New.
10863         (remote_target_info): New.
10864         (remote_target) <shortname, longname, doc>: Delete.
10865         <info>: New.
10866         (extended_remote_target_info): New.
10867         (extended_remote_target) <shortname, longname, doc>: Delete.
10868         <info>: New.
10869         (remote_target::open_1): Make static.  Adjust.
10870         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
10871         * s390-linux-nat.c (_initialize_s390_nat): Use
10872         add_inf_child_target.
10873         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
10874         add_inf_child_target.
10875         * sol-thread.c (thread_db_target_info): New.
10876         (sol_thread_target) <shortname, longname, doc>: Delete.
10877         <info>: New.
10878         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
10879         add_inf_child_target.
10880         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
10881         add_inf_child_target.
10882         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
10883         add_inf_child_target.
10884         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
10885         add_inf_child_target.
10886         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
10887         add_inf_child_target.
10888         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
10889         add_inf_child_target.
10890         * spu-linux-nat.c (_initialize_spu_nat): Use
10891         add_inf_child_target.
10892         * spu-multiarch.c (spu_multiarch_target_info): New.
10893         (spu_multiarch_target) <shortname, longname, doc>: Delete.
10894         <info>: New.
10895         * target-delegates.c: Regenerate.
10896         * target.c: Include <unordered_map>.
10897         (target_ops_p): Delete.
10898         (DEF_VEC_P(target_ops_p)): Delete.
10899         (target_factories): New.
10900         (test_target_info): New.
10901         (test_target_ops::info): New.
10902         (open_target): Adjust to use target_factories.
10903         (add_target_with_completer): Rename to ...
10904         (add_target): ... this.  Change prototype.  Register target_info
10905         and open callback in target_factories.  Register target_info in
10906         command context instead of target_ops.
10907         (add_target): Delete old implementation.
10908         (add_deprecated_target_alias): Change prototype.  Adjust.
10909         (the_native_target): New.
10910         (set_native_target, get_native_target): New.
10911         (find_default_run_target): Use the_native_target.
10912         (find_attach_target, find_run_target): Simplify.
10913         (target_ops::open): Delete.
10914         (dummy_target_info): New.
10915         (dummy_target::shortname, dummy_target::longname)
10916         (dummy_target::doc): Delete.
10917         (dummy_target::info): New.
10918         (debug_target::shortname, debug_target::longname)
10919         (debug_target::doc): Delete.
10920         (debug_target::info): New.
10921         * target.h (struct target_info): New.
10922         (target_ops::~target_ops): Add comment.
10923         (target_ops::info): New.
10924         (target_ops::shortname, target_ops::longname, target_ops::doc): No
10925         longer virtual.  Implement in terms of target_info.
10926         (set_native_target, get_native_target): Declare.
10927         (target_open_ftype): New.
10928         (add_target, add_target_with_completer)
10929         (add_deprecated_target_alias): Change prototype.
10930         (test_target) <shortname, longname, doc>: Delete.
10931         <info>: New.
10932         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
10933         add_inf_child_target.
10934         * tracefile-tfile.c (tfile_target_info): New.
10935         (tfile_target) <shortname, longname, doc>: Delete.
10936         <info>: New.
10937         (tfile_target::open): Rename to ...
10938         (tfile_target_open): ... this.
10939         (_initialize_tracefile_tfile): Adjust.
10940         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
10941         add_inf_child_target.
10942         * windows-nat.c (_initialize_windows_nat): Use
10943         add_inf_child_target.
10944         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
10945         add_inf_child_target.
10946
10947 2018-05-02  Pedro Alves  <palves@redhat.com>
10948
10949         * linux-nat.h (linux_nat_target) <low_new_thread,
10950         low_delete_thread, low_new_fork, low_forget_process,
10951         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
10952         New virtual methods.
10953         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10954         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
10955         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
10956         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10957         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
10958         Delete.
10959         * linux-fork.c (delete_fork): Adjust to call low method.
10960         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
10961         (linux_nat_new_fork, linux_nat_forget_process_hook)
10962         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
10963         (linux_nat_status_is_event):
10964         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
10965         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
10966         to call low method.
10967         (sigtrap_is_event): Rename to ...
10968         (linux_nat_target::low_status_is_event): ... this.
10969         (linux_nat_set_status_is_event): Delete.
10970         (save_stop_reason, linux_nat_wait_1)
10971         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
10972         low methods.
10973         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10974         (linux_nat_set_new_fork, linux_nat_set_forget_process)
10975         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10976         (linux_nat_set_prepare_to_resume): Delete.
10977         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
10978         low virtual methods.
10979         * amd64-linux-nat.c: Likewise.
10980         * arm-linux-nat.c: Likewise.
10981         * i386-linux-nat.c: Likewise.
10982         * ia64-linux-nat.c: Likewise.
10983         * mips-linux-nat.c: Likewise.
10984         * ppc-linux-nat.c: Likewise.
10985         * s390-linux-nat.c: Likewise.
10986         * sparc64-linux-nat.c: Likewise.
10987         * x86-linux-nat.c: Likewise.
10988         * x86-linux-nat.h: Include "nat/x86-linux.h".
10989         (x86_linux_nat_target) <low_new_fork, low_forget_process,
10990         low_prepare_to_resume, low_new_thread, low_delete_thread>:
10991         Override methods.
10992
10993 2018-05-02  Pedro Alves  <palves@redhat.com>
10994
10995         * target.h (target_ops)
10996         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
10997         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
10998         stopped_by_watchpoint, have_continuable_watchpoint,
10999         stopped_data_address, watchpoint_addr_within_range,
11000         can_accel_watchpoint_condition, can_run, thread_alive,
11001         has_all_memory, has_memory, has_stack, has_registers,
11002         has_execution, can_async_p, is_async_p, supports_non_stop,
11003         always_non_stop_p, can_execute_reverse, supports_multi_process,
11004         supports_enable_disable_tracepoint,
11005         supports_disable_randomization, supports_string_tracing,
11006         supports_evaluation_of_breakpoint_conditions,
11007         can_run_breakpoint_commands, filesystem_is_local,
11008         can_download_tracepoint, get_trace_state_variable_value,
11009         set_trace_notes, get_tib_address, use_agent, can_use_agent,
11010         record_is_replaying, record_will_replay,
11011         augmented_libraries_svr4_read>: Adjust to return bool.
11012         * aarch64-linux-nat.c: All implementations adjusted.
11013         * aix-thread.c: All implementations adjusted.
11014         * arm-linux-nat.c: All implementations adjusted.
11015         * breakpoint.c: All implementations adjusted.
11016         * bsd-kvm.c: All implementations adjusted.
11017         * bsd-uthread.c: All implementations adjusted.
11018         * corelow.c: All implementations adjusted.
11019         * ctf.c: All implementations adjusted.
11020         * darwin-nat.c: All implementations adjusted.
11021         * darwin-nat.h: All implementations adjusted.
11022         * exec.c: All implementations adjusted.
11023         * fbsd-nat.c: All implementations adjusted.
11024         * fbsd-nat.h: All implementations adjusted.
11025         * gnu-nat.c: All implementations adjusted.
11026         * gnu-nat.h: All implementations adjusted.
11027         * go32-nat.c: All implementations adjusted.
11028         * ia64-linux-nat.c: All implementations adjusted.
11029         * inf-child.c: All implementations adjusted.
11030         * inf-child.h: All implementations adjusted.
11031         * inf-ptrace.c: All implementations adjusted.
11032         * inf-ptrace.h: All implementations adjusted.
11033         * linux-nat.c: All implementations adjusted.
11034         * linux-nat.h: All implementations adjusted.
11035         * mips-linux-nat.c: All implementations adjusted.
11036         * nto-procfs.c: All implementations adjusted.
11037         * ppc-linux-nat.c: All implementations adjusted.
11038         * procfs.c: All implementations adjusted.
11039         * ravenscar-thread.c: All implementations adjusted.
11040         * record-btrace.c: All implementations adjusted.
11041         * record-full.c: All implementations adjusted.
11042         * remote-sim.c: All implementations adjusted.
11043         * remote.c: All implementations adjusted.
11044         * s390-linux-nat.c: All implementations adjusted.
11045         * sol-thread.c: All implementations adjusted.
11046         * spu-multiarch.c: All implementations adjusted.
11047         * target-delegates.c: All implementations adjusted.
11048         * target.c: All implementations adjusted.
11049         * target.h: All implementations adjusted.
11050         * tracefile-tfile.c: All implementations adjusted.
11051         * tracefile.c: All implementations adjusted.
11052         * tracefile.h: All implementations adjusted.
11053         * windows-nat.c: All implementations adjusted.
11054         * x86-linux-nat.h: All implementations adjusted.
11055         * x86-nat.h: All implementations adjusted.
11056
11057 2018-05-02  Pedro Alves  <palves@redhat.com>
11058
11059         * make-target-delegates (scan_target_h): Don't trim lines here.
11060         Replace sequences of tabs and/or whitespace with a single
11061         whitespace.
11062         (top level, parsing methods): Trim each line before processing it
11063         here.
11064
11065 2018-05-02  Pedro Alves  <palves@redhat.com>
11066             John Baldwin  <jhb@freebsd.org>
11067
11068         * target.h (enum strata) <debug_stratum>: New.
11069         (struct target_ops) <all delegation methods>: Replace by C++
11070         virtual methods, and drop "to_" prefix.  All references updated
11071         throughout.
11072         <to_shortname, to_longname, to_doc, to_data,
11073         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
11074         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
11075         virtual methods.  All references updated throughout.
11076         <can_attach, supports_terminal_ours, can_create_inferior,
11077         get_thread_control_capabilities, attach_no_wait>: New
11078         virtual methods.
11079         <insert_breakpoint, remove_breakpoint>: Now
11080         TARGET_DEFAULT_NORETURN methods.
11081         <info_proc>: Now returns bool.
11082         <to_magic>: Delete.
11083         (OPS_MAGIC): Delete.
11084         (current_target): Delete.  All references replaced by references
11085         to ...
11086         (target_stack): ... this.  New.
11087         (target_shortname, target_longname): Adjust.
11088         (target_can_run): Now a function declaration.
11089         (default_child_has_all_memory, default_child_has_memory)
11090         (default_child_has_stack, default_child_has_registers)
11091         (default_child_has_execution): Remove target_ops parameter.
11092         (complete_target_initialization): Delete.
11093         (memory_breakpoint_target): New template class.
11094         (test_target_ops): Refactor as a C++ class with virtual methods.
11095         * make-target-delegates (NAME_PART): Tighten.
11096         (POINTER_PART, CP_SYMBOL): New.
11097         (SIMPLE_RETURN_PART): Reimplement.
11098         (VEC_RETURN_PART): Expect less.
11099         (RETURN_PART, VIRTUAL_PART): New.
11100         (METHOD): Adjust to C++ virtual methods.
11101         (scan_target_h): Remove reference to C99.
11102         (dname): Output "target_ops::" prefix.
11103         (write_function_header): Adjust to output a C++ class method.
11104         (write_declaration): New.
11105         (write_delegator): Adjust to output a C++ class method.
11106         (tdname): Output "dummy_target::" prefix.
11107         (write_tdefault, write_debugmethod): Adjust to output a C++ class
11108         method.
11109         (tdefault_names, debug_names): Delete.
11110         (return_types, tdefaults, styles, argtypes_array): New.
11111         (top level): All methods are delegators.
11112         (print_class): New.
11113         (top level): Print dummy_target and debug_target classes.
11114         * target-delegates.c: Regenerate.
11115         * target-debug.h (target_debug_print_enum_info_proc_what)
11116         (target_debug_print_thread_control_capabilities)
11117         (target_debug_print_thread_info_p): New.
11118         * target.c (dummy_target): Delete.
11119         (the_dummy_target, the_debug_target): New.
11120         (target_stack): Now extern.
11121         (set_targetdebug): Push/unpush debug target.
11122         (default_child_has_all_memory, default_child_has_memory)
11123         (default_child_has_stack, default_child_has_registers)
11124         (default_child_has_execution): Remove target_ops parameter.
11125         (complete_target_initialization): Delete.
11126         (add_target_with_completer): No longer call
11127         complete_target_initialization.
11128         (target_supports_terminal_ours): Use regular delegation.
11129         (update_current_target): Delete.
11130         (push_target): No longer check magic number.  Don't call
11131         update_current_target.
11132         (unpush_target): Don't call update_current_target.
11133         (target_is_pushed): No longer check magic number.
11134         (target_require_runnable): Skip for all stratums over
11135         process_stratum.
11136         (target_ops::info_proc): New.
11137         (target_info_proc): Use find_target_at and
11138         find_default_run_target.
11139         (target_supports_disable_randomization): Use regular delegation.
11140         (target_get_osdata): Use find_target_at.
11141         (target_ops::open, target_ops::close, target_ops::can_attach)
11142         (target_ops::attach, target_ops::can_create_inferior)
11143         (target_ops::create_inferior, target_ops::can_run)
11144         (target_can_run): New.
11145         (default_fileio_target): Use regular delegation.
11146         (target_ops::fileio_open, target_ops::fileio_pwrite)
11147         (target_ops::fileio_pread, target_ops::fileio_fstat)
11148         (target_ops::fileio_close, target_ops::fileio_unlink)
11149         (target_ops::fileio_readlink): New.
11150         (target_fileio_open_1, target_fileio_unlink)
11151         (target_fileio_readlink): Always call the target method.  Handle
11152         FILEIO_ENOSYS.
11153         (return_zero, return_zero_has_execution): Delete.
11154         (init_dummy_target): Delete.
11155         (dummy_target::dummy_target, dummy_target::shortname)
11156         (dummy_target::longname, dummy_target::doc)
11157         (debug_target::debug_target, debug_target::shortname)
11158         (debug_target::longname, debug_target::doc): New.
11159         (target_supports_delete_record): Use regular delegation.
11160         (setup_target_debug): Delete.
11161         (maintenance_print_target_stack): Skip debug_stratum.
11162         (initialize_targets): Instantiate the_dummy_target and
11163         the_debug_target.
11164         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
11165         use target_stack.
11166         (target_auxv_search, fprint_target_auxv): Adjust.
11167         (info_auxv_command): Adjust to use target_stack.
11168         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
11169         * exceptions.c (print_flush): Handle a NULL target_stack.
11170         * regcache.c (target_ops_no_register): Refactor as class with
11171         virtual methods.
11172
11173         * exec.c (exec_target): New class.
11174         (exec_ops): Now an exec_target.
11175         (exec_open, exec_close_1, exec_get_section_table)
11176         (exec_xfer_partial, exec_files_info, exec_has_memory)
11177         (exec_make_note_section): Refactor as exec_target methods.
11178         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
11179         Delete.
11180         (exec_target::find_memory_regions): New.
11181         (_initialize_exec): Don't call init_exec_ops.
11182         * gdbcore.h (exec_file_clear): Delete.
11183
11184         * corefile.c (core_target): Delete.
11185         (core_file_command): Adjust.
11186         * corelow.c (core_target): New class.
11187         (the_core_target): New.
11188         (core_close): Remove target_ops parameter.
11189         (core_close_cleanup): Adjust.
11190         (core_target::close): New.
11191         (core_open, core_detach, get_core_registers, core_files_info)
11192         (core_xfer_partial, core_thread_alive, core_read_description)
11193         (core_pid_to_str, core_thread_name, core_has_memory)
11194         (core_has_stack, core_has_registers, core_info_proc): Rework as
11195         core_target methods.
11196         (ignore, core_remove_breakpoint, init_core_ops): Delete.
11197         (_initialize_corelow): Initialize the_core_target.
11198         * gdbcore.h (core_target): Delete.
11199         (the_core_target): New.
11200
11201         * ctf.c: (ctf_target): New class.
11202         (ctf_ops): Now a ctf_target.
11203         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
11204         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
11205         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
11206         methods.
11207         (init_ctf_ops): Delete.
11208         (_initialize_ctf): Don't call it.
11209         * tracefile-tfile.c (tfile_target): New class.
11210         (tfile_ops): Now a tfile_target.
11211         (tfile_open, tfile_close, tfile_files_info)
11212         (tfile_get_tracepoint_status, tfile_trace_find)
11213         (tfile_fetch_registers, tfile_xfer_partial)
11214         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
11215         Refactor as tfile_target methods.
11216         (tfile_xfer_partial_features): Remove target_ops parameter.
11217         (init_tfile_ops): Delete.
11218         (_initialize_tracefile_tfile): Don't call it.
11219         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
11220         (tracefile_has_stack, tracefile_has_registers)
11221         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
11222         tracefile_target methods.
11223         (init_tracefile_ops): Delete.
11224         (tracefile_target::tracefile_target): New.
11225         * tracefile.h: Include "target.h".
11226         (tracefile_target): New class.
11227         (init_tracefile_ops): Delete.
11228
11229         * spu-multiarch.c (spu_multiarch_target): New class.
11230         (spu_ops): Now a spu_multiarch_target.
11231         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
11232         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
11233         (spu_search_memory, spu_mourn_inferior): Refactor as
11234         spu_multiarch_target methods.
11235         (init_spu_ops): Delete.
11236         (_initialize_spu_multiarch): Remove references to init_spu_ops,
11237         complete_target_initialization.
11238
11239         * ravenscar-thread.c (ravenscar_thread_target): New class.
11240         (ravenscar_ops): Now a ravenscar_thread_target.
11241         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
11242         (ravenscar_thread_alive, ravenscar_pid_to_str)
11243         (ravenscar_fetch_registers, ravenscar_store_registers)
11244         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
11245         (ravenscar_stopped_by_hw_breakpoint)
11246         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
11247         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
11248         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
11249         methods.
11250         (init_ravenscar_thread_ops): Delete.
11251         (_initialize_ravenscar): Remove references to
11252         init_ravenscar_thread_ops and complete_target_initialization.
11253
11254         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
11255         (bsd_uthread_target): New class.
11256         (bsd_uthread_ops): Now a bsd_uthread_target.
11257         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
11258         (bsd_uthread_close, bsd_uthread_mourn_inferior)
11259         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
11260         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
11261         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
11262         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
11263         (bsd_uthread_target): Delete function.
11264         (_initialize_bsd_uthread): Remove reference to
11265         complete_target_initialization.
11266
11267         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
11268         (target_bfd): ... this new class.
11269         (target_bfd_xfer_partial, target_bfd_get_section_table)
11270         (target_bfd_close): Refactor as target_bfd methods.
11271         (target_bfd::~target_bfd): New.
11272         (target_bfd_reopen): Adjust.
11273         (target_bfd::close): New.
11274
11275         * record-btrace.c (record_btrace_target): New class.
11276         (record_btrace_ops): Now a record_btrace_target.
11277         (record_btrace_open, record_btrace_stop_recording)
11278         (record_btrace_disconnect, record_btrace_close)
11279         (record_btrace_async, record_btrace_info)
11280         (record_btrace_insn_history, record_btrace_insn_history_range)
11281         (record_btrace_insn_history_from, record_btrace_call_history)
11282         (record_btrace_call_history_range)
11283         (record_btrace_call_history_from, record_btrace_record_method)
11284         (record_btrace_is_replaying, record_btrace_will_replay)
11285         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
11286         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
11287         (record_btrace_store_registers, record_btrace_prepare_to_store)
11288         (record_btrace_to_get_unwinder)
11289         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
11290         (record_btrace_commit_resume, record_btrace_wait)
11291         (record_btrace_stop, record_btrace_can_execute_reverse)
11292         (record_btrace_stopped_by_sw_breakpoint)
11293         (record_btrace_supports_stopped_by_sw_breakpoint)
11294         (record_btrace_stopped_by_hw_breakpoint)
11295         (record_btrace_supports_stopped_by_hw_breakpoint)
11296         (record_btrace_update_thread_list, record_btrace_thread_alive)
11297         (record_btrace_goto_begin, record_btrace_goto_end)
11298         (record_btrace_goto, record_btrace_stop_replaying_all)
11299         (record_btrace_execution_direction)
11300         (record_btrace_prepare_to_generate_core)
11301         (record_btrace_done_generating_core): Refactor as
11302         record_btrace_target methods.
11303         (init_record_btrace_ops): Delete.
11304         (_initialize_record_btrace): Remove reference to
11305         init_record_btrace_ops.
11306         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
11307         the execution_direction global.
11308         (record_full_base_target, record_full_target)
11309         (record_full_core_target): New classes.
11310         (record_full_ops): Now a record_full_target.
11311         (record_full_core_ops): Now a record_full_core_target.
11312         (record_full_target::detach, record_full_target::disconnect)
11313         (record_full_core_target::disconnect)
11314         (record_full_target::mourn_inferior, record_full_target::kill):
11315         New.
11316         (record_full_open, record_full_close, record_full_async): Refactor
11317         as methods of the record_full_base_target class.
11318         (record_full_resume, record_full_commit_resume): Refactor
11319         as methods of the record_full_target class.
11320         (record_full_wait, record_full_stopped_by_watchpoint)
11321         (record_full_stopped_data_address)
11322         (record_full_stopped_by_sw_breakpoint)
11323         (record_full_supports_stopped_by_sw_breakpoint)
11324         (record_full_stopped_by_hw_breakpoint)
11325         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
11326         methods of the record_full_base_target class.
11327         (record_full_store_registers, record_full_xfer_partial)
11328         (record_full_insert_breakpoint, record_full_remove_breakpoint):
11329         Refactor as methods of the record_full_target class.
11330         (record_full_can_execute_reverse, record_full_get_bookmark)
11331         (record_full_goto_bookmark, record_full_execution_direction)
11332         (record_full_record_method, record_full_info, record_full_delete)
11333         (record_full_is_replaying, record_full_will_replay)
11334         (record_full_goto_begin, record_full_goto_end, record_full_goto)
11335         (record_full_stop_replaying): Refactor as methods of the
11336         record_full_base_target class.
11337         (record_full_core_resume, record_full_core_kill)
11338         (record_full_core_fetch_registers)
11339         (record_full_core_prepare_to_store)
11340         (record_full_core_store_registers, record_full_core_xfer_partial)
11341         (record_full_core_insert_breakpoint)
11342         (record_full_core_remove_breakpoint)
11343         (record_full_core_has_execution): Refactor
11344         as methods of the record_full_core_target class.
11345         (record_full_base_target::supports_delete_record): New.
11346         (init_record_full_ops): Delete.
11347         (init_record_full_core_ops): Delete.
11348         (record_full_save): Refactor as method of the
11349         record_full_base_target class.
11350         (_initialize_record_full): Remove references to
11351         init_record_full_ops and init_record_full_core_ops.
11352
11353         * remote.c (remote_target, extended_remote_target): New classes.
11354         (remote_ops): Now a remote_target.
11355         (extended_remote_ops): Now an extended_remote_target.
11356         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
11357         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
11358         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
11359         (remote_pass_signals, remote_set_syscall_catchpoint)
11360         (remote_program_signals, )
11361         (remote_thread_always_alive): Remove target_ops parameter.
11362         (remote_thread_alive, remote_thread_name)
11363         (remote_update_thread_list, remote_threads_extra_info)
11364         (remote_static_tracepoint_marker_at)
11365         (remote_static_tracepoint_markers_by_strid)
11366         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
11367         (remote_open): Refactor as methods of remote_target.
11368         (extended_remote_open, extended_remote_detach)
11369         (extended_remote_attach, extended_remote_post_attach):
11370         (extended_remote_supports_disable_randomization)
11371         (extended_remote_create_inferior): : Refactor as method of
11372         extended_remote_target.
11373         (remote_set_permissions, remote_open_1, remote_detach)
11374         (remote_follow_fork, remote_follow_exec, remote_disconnect)
11375         (remote_resume, remote_commit_resume, remote_stop)
11376         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
11377         (remote_terminal_ours, remote_wait, remote_fetch_registers)
11378         (remote_prepare_to_store, remote_store_registers)
11379         (remote_flash_erase, remote_flash_done, remote_files_info)
11380         (remote_kill, remote_mourn, remote_insert_breakpoint)
11381         (remote_remove_breakpoint, remote_insert_watchpoint)
11382         (remote_watchpoint_addr_within_range)
11383         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
11384         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
11385         (remote_supports_stopped_by_sw_breakpoint)
11386         (remote_stopped_by_hw_breakpoint)
11387         (remote_supports_stopped_by_hw_breakpoint)
11388         (remote_stopped_by_watchpoint, remote_stopped_data_address)
11389         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
11390         (remote_verify_memory): Refactor as methods of remote_target.
11391         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
11392         parameter.
11393         (remote_xfer_partial, remote_get_memory_xfer_limit)
11394         (remote_search_memory, remote_rcmd, remote_memory_map)
11395         (remote_pid_to_str, remote_get_thread_local_address)
11396         (remote_get_tib_address, remote_read_description): Refactor as
11397         methods of remote_target.
11398         (remote_target::fileio_open, remote_target::fileio_pwrite)
11399         (remote_target::fileio_pread, remote_target::fileio_close): New.
11400         (remote_hostio_readlink, remote_hostio_fstat)
11401         (remote_filesystem_is_local, remote_can_execute_reverse)
11402         (remote_supports_non_stop, remote_supports_disable_randomization)
11403         (remote_supports_multi_process, remote_supports_cond_breakpoints)
11404         (remote_supports_enable_disable_tracepoint)
11405         (remote_supports_string_tracing)
11406         (remote_can_run_breakpoint_commands, remote_trace_init)
11407         (remote_download_tracepoint, remote_can_download_tracepoint)
11408         (remote_download_trace_state_variable, remote_enable_tracepoint)
11409         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
11410         (remote_trace_start, remote_get_trace_status)
11411         (remote_get_tracepoint_status, remote_trace_stop)
11412         (remote_trace_find, remote_get_trace_state_variable_value)
11413         (remote_save_trace_data, remote_get_raw_trace_data)
11414         (remote_set_disconnected_tracing, remote_core_of_thread)
11415         (remote_set_circular_trace_buffer, remote_traceframe_info)
11416         (remote_get_min_fast_tracepoint_insn_len)
11417         (remote_set_trace_buffer_size, remote_set_trace_notes)
11418         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
11419         (remote_disable_btrace, remote_teardown_btrace)
11420         (remote_read_btrace, remote_btrace_conf)
11421         (remote_augmented_libraries_svr4_read, remote_load)
11422         (remote_pid_to_exec_file, remote_can_do_single_step)
11423         (remote_execution_direction, remote_thread_handle_to_thread_info):
11424         Refactor as methods of remote_target.
11425         (init_remote_ops, init_extended_remote_ops): Delete.
11426         (remote_can_async_p, remote_is_async_p, remote_async)
11427         (remote_thread_events, remote_upload_tracepoints)
11428         (remote_upload_trace_state_variables): Refactor as methods of
11429         remote_target.
11430         (_initialize_remote): Remove references to init_remote_ops and
11431         init_extended_remote_ops.
11432
11433         * remote-sim.c (gdbsim_target): New class.
11434         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
11435         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
11436         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
11437         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
11438         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
11439         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
11440         Refactor as methods of gdbsim_target.
11441         (gdbsim_ops): Now a gdbsim_target.
11442         (init_gdbsim_ops): Delete.
11443         (gdbsim_cntrl_c): Adjust.
11444         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
11445
11446         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
11447         (the_amd64_linux_nat_target): New.
11448         (amd64_linux_fetch_inferior_registers)
11449         (amd64_linux_store_inferior_registers): Refactor as methods of
11450         amd64_linux_nat_target.
11451         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
11452         * i386-linux-nat.c: Don't include "linux-nat.h".
11453         (i386_linux_nat_target): New class.
11454         (the_i386_linux_nat_target): New.
11455         (i386_linux_fetch_inferior_registers)
11456         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
11457         as methods of i386_linux_nat_target.
11458         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
11459         * inf-child.c (inf_child_ops): Delete.
11460         (inf_child_fetch_inferior_registers)
11461         (inf_child_store_inferior_registers): Delete.
11462         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
11463         methods of inf_child_target.
11464         (inf_child_target::supports_terminal_ours)
11465         (inf_child_target::terminal_init)
11466         (inf_child_target::terminal_inferior)
11467         (inf_child_target::terminal_ours_for_output)
11468         (inf_child_target::terminal_ours, inf_child_target::interrupt)
11469         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
11470         New.
11471         (inf_child_open, inf_child_disconnect, inf_child_close)
11472         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
11473         (inf_child_post_startup_inferior, inf_child_can_run)
11474         (inf_child_pid_to_exec_file): Refactor as methods of
11475         inf_child_target.
11476         (inf_child_follow_fork): Delete.
11477         (inf_child_target::can_create_inferior)
11478         (inf_child_target::can_attach): New.
11479         (inf_child_target::has_all_memory, inf_child_target::has_memory)
11480         (inf_child_target::has_stack, inf_child_target::has_registers)
11481         (inf_child_target::has_execution): New.
11482         (inf_child_fileio_open, inf_child_fileio_pwrite)
11483         (inf_child_fileio_pread, inf_child_fileio_fstat)
11484         (inf_child_fileio_close, inf_child_fileio_unlink)
11485         (inf_child_fileio_readlink, inf_child_use_agent)
11486         (inf_child_can_use_agent): Refactor as methods of
11487         inf_child_target.
11488         (return_zero, inf_child_target): Delete.
11489         (inf_child_target::inf_child_target): New.
11490         * inf-child.h: Include "target.h".
11491         (inf_child_target): Delete function prototype.
11492         (inf_child_target): New class.
11493         (inf_child_open_target, inf_child_mourn_inferior)
11494         (inf_child_maybe_unpush_target): Delete.
11495         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
11496         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
11497         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
11498         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
11499         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
11500         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
11501         (inf_ptrace_wait, inf_ptrace_xfer_partial)
11502         (inf_ptrace_thread_alive, inf_ptrace_files_info)
11503         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
11504         methods of inf_ptrace_target.
11505         (inf_ptrace_target): Delete function.
11506         * inf-ptrace.h: Include "inf-child.h".
11507         (inf_ptrace_target): Delete function declaration.
11508         (inf_ptrace_target): New class.
11509         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
11510         * linux-nat.c (linux_target): New.
11511         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
11512         (linux_nat_target::~linux_nat_target): New.
11513         (linux_child_post_attach, linux_child_post_startup_inferior)
11514         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
11515         (linux_child_remove_fork_catchpoint)
11516         (linux_child_insert_vfork_catchpoint)
11517         (linux_child_remove_vfork_catchpoint)
11518         (linux_child_insert_exec_catchpoint)
11519         (linux_child_remove_exec_catchpoint)
11520         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
11521         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
11522         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
11523         (linux_nat_stopped_data_address)
11524         (linux_nat_stopped_by_sw_breakpoint)
11525         (linux_nat_supports_stopped_by_sw_breakpoint)
11526         (linux_nat_stopped_by_hw_breakpoint)
11527         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
11528         (linux_nat_kill, linux_nat_mourn_inferior)
11529         (linux_nat_xfer_partial, linux_nat_thread_alive)
11530         (linux_nat_update_thread_list, linux_nat_pid_to_str)
11531         (linux_nat_thread_name, linux_child_pid_to_exec_file)
11532         (linux_child_static_tracepoint_markers_by_strid)
11533         (linux_nat_is_async_p, linux_nat_can_async_p)
11534         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
11535         (linux_nat_supports_multi_process)
11536         (linux_nat_supports_disable_randomization, linux_nat_async)
11537         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
11538         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
11539         (linux_nat_fileio_open, linux_nat_fileio_readlink)
11540         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
11541         methods of linux_nat_target.
11542         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
11543         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
11544         parameter.
11545         (check_stopped_by_watchpoint): Adjust.
11546         (linux_xfer_partial): Delete.
11547         (linux_target_install_ops, linux_target, linux_nat_add_target):
11548         Delete.
11549         (linux_nat_target::linux_nat_target): New.
11550         * linux-nat.h: Include "inf-ptrace.h".
11551         (linux_nat_target): New.
11552         (linux_target, linux_target_install_ops, linux_nat_add_target):
11553         Delete function declarations.
11554         (linux_target): Declare global.
11555         * linux-thread-db.c (thread_db_target): New.
11556         (thread_db_target::thread_db_target): New.
11557         (thread_db_ops): Delete.
11558         (the_thread_db_target): New.
11559         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
11560         (thread_db_update_thread_list, thread_db_pid_to_str)
11561         (thread_db_extra_thread_info)
11562         (thread_db_thread_handle_to_thread_info)
11563         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
11564         (thread_db_resume): Refactor as methods of thread_db_target.
11565         (init_thread_db_ops): Delete.
11566         (_initialize_thread_db): Remove reference to init_thread_db_ops.
11567         * x86-linux-nat.c: Don't include "linux-nat.h".
11568         (super_post_startup_inferior): Delete.
11569         (x86_linux_nat_target::~x86_linux_nat_target): New.
11570         (x86_linux_child_post_startup_inferior)
11571         (x86_linux_read_description, x86_linux_enable_btrace)
11572         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
11573         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
11574         methods of x86_linux_nat_target.
11575         (x86_linux_create_target): Delete.  Bits folded ...
11576         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
11577         pointer.
11578         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
11579         (x86_linux_nat_target): New class.
11580         (x86_linux_create_target): Delete.
11581         (x86_linux_add_target): Now takes a linux_nat_target pointer.
11582         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
11583         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
11584         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
11585         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
11586         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
11587         make extern.
11588         (x86_use_watchpoints): Delete.
11589         * x86-nat.h: Include "breakpoint.h" and "target.h".
11590         (x86_use_watchpoints): Delete.
11591         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
11592         (x86_stopped_by_watchpoint, x86_stopped_data_address)
11593         (x86_insert_watchpoint, x86_remove_watchpoint)
11594         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
11595         (x86_stopped_by_hw_breakpoint): New declarations.
11596         (x86_nat_target): New template class.
11597
11598         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
11599         (the_ppc_linux_nat_target): New.
11600         (ppc_linux_fetch_inferior_registers)
11601         (ppc_linux_can_use_hw_breakpoint)
11602         (ppc_linux_region_ok_for_hw_watchpoint)
11603         (ppc_linux_ranged_break_num_registers)
11604         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
11605         (ppc_linux_insert_mask_watchpoint)
11606         (ppc_linux_remove_mask_watchpoint)
11607         (ppc_linux_can_accel_watchpoint_condition)
11608         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
11609         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
11610         (ppc_linux_watchpoint_addr_within_range)
11611         (ppc_linux_masked_watch_num_registers)
11612         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
11613         (ppc_linux_read_description): Refactor as methods of
11614         ppc_linux_nat_target.
11615         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
11616
11617         * procfs.c (procfs_xfer_partial): Delete forward declaration.
11618         (procfs_target): New class.
11619         (the_procfs_target): New.
11620         (procfs_target): Delete function.
11621         (procfs_auxv_parse, procfs_attach, procfs_detach)
11622         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
11623         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
11624         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
11625         (procfs_create_inferior, procfs_update_thread_list)
11626         (procfs_thread_alive, procfs_pid_to_str)
11627         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
11628         (procfs_stopped_data_address, procfs_insert_watchpoint)
11629         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
11630         (proc_find_memory_regions, procfs_info_proc)
11631         (procfs_make_note_section): Refactor as methods of procfs_target.
11632         (_initialize_procfs): Adjust.
11633         * sol-thread.c (sol_thread_target): New class.
11634         (sol_thread_ops): Now a sol_thread_target.
11635         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
11636         (sol_thread_fetch_registers, sol_thread_store_registers)
11637         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
11638         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
11639         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
11640         (init_sol_thread_ops): Delete.
11641         (_initialize_sol_thread): Adjust.  Remove references to
11642         init_sol_thread_ops and complete_target_initialization.
11643
11644         * windows-nat.c (windows_nat_target): New class.
11645         (windows_fetch_inferior_registers)
11646         (windows_store_inferior_registers, windows_resume, windows_wait)
11647         (windows_attach, windows_detach, windows_pid_to_exec_file)
11648         (windows_files_info, windows_create_inferior)
11649         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
11650         (windows_close, windows_pid_to_str, windows_xfer_partial)
11651         (windows_get_tib_address, windows_get_ada_task_ptid)
11652         (windows_thread_name, windows_thread_alive): Refactor as
11653         windows_nat_target methods.
11654         (do_initial_windows_stuff): Adjust.
11655         (windows_target): Delete function.
11656         (_initialize_windows_nat): Adjust.
11657
11658         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
11659         (darwin_mourn_inferior, darwin_kill_inferior)
11660         (darwin_create_inferior, darwin_attach, darwin_detach)
11661         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
11662         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
11663         (darwin_supports_multi_process): Refactor as darwin_nat_target
11664         methods.
11665         (darwin_resume_to, darwin_files_info): Delete.
11666         (_initialize_darwin_inferior): Rename to ...
11667         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
11668         * darwin-nat.h: Include "inf-child.h".
11669         (darwin_nat_target): New class.
11670         (darwin_complete_target): Delete.
11671         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
11672         (darwin_target): New.
11673         (i386_darwin_fetch_inferior_registers)
11674         (i386_darwin_store_inferior_registers): Refactor as methods of
11675         darwin_nat_target.
11676         (darwin_complete_target): Delete, with ...
11677         (_initialize_i386_darwin_nat): ... bits factored out here.
11678
11679         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
11680         (the_alpha_linux_nat_target): New.
11681         (alpha_linux_register_u_offset): Refactor as
11682         alpha_linux_nat_target method.
11683         (_initialize_alpha_linux_nat): Adjust.
11684         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
11685         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11686         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
11687         methods of linux_nat_trad_target.
11688         (linux_trad_target): Delete.
11689         * linux-nat-trad.h (linux_trad_target): Delete function.
11690         (linux_nat_trad_target): New class.
11691         * mips-linux-nat.c (mips_linux_nat_target): New class.
11692         (super_fetch_registers, super_store_registers, super_close):
11693         Delete.
11694         (the_mips_linux_nat_target): New.
11695         (mips64_linux_regsets_fetch_registers)
11696         (mips64_linux_regsets_store_registers)
11697         (mips64_linux_fetch_registers, mips64_linux_store_registers)
11698         (mips_linux_register_u_offset, mips_linux_read_description)
11699         (mips_linux_can_use_hw_breakpoint)
11700         (mips_linux_stopped_by_watchpoint)
11701         (mips_linux_stopped_data_address)
11702         (mips_linux_region_ok_for_hw_watchpoint)
11703         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
11704         (mips_linux_close): Refactor as methods of mips_linux_nat.
11705         (_initialize_mips_linux_nat): Adjust to C++ification.
11706
11707         * aix-thread.c (aix_thread_target): New class.
11708         (aix_thread_ops): Now an aix_thread_target.
11709         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
11710         (aix_thread_fetch_registers, aix_thread_store_registers)
11711         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
11712         (aix_thread_thread_alive, aix_thread_pid_to_str)
11713         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
11714         Refactor as methods of aix_thread_target.
11715         (init_aix_thread_ops): Delete.
11716         (_initialize_aix_thread): Remove references to init_aix_thread_ops
11717         and complete_target_initialization.
11718         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
11719         (rs6000_nat_target): New class.
11720         (the_rs6000_nat_target): New.
11721         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
11722         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
11723         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
11724         (super_create_inferior): Delete.
11725         (_initialize_rs6000_nat): Adjust to C++ification.
11726
11727         * arm-linux-nat.c (arm_linux_nat_target): New class.
11728         (the_arm_linux_nat_target): New.
11729         (arm_linux_fetch_inferior_registers)
11730         (arm_linux_store_inferior_registers, arm_linux_read_description)
11731         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
11732         (arm_linux_remove_hw_breakpoint)
11733         (arm_linux_region_ok_for_hw_watchpoint)
11734         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
11735         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
11736         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
11737         arm_linux_nat_target.
11738         (_initialize_arm_linux_nat): Adjust to C++ification.
11739
11740         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
11741         (the_aarch64_linux_nat_target): New.
11742         (aarch64_linux_fetch_inferior_registers)
11743         (aarch64_linux_store_inferior_registers)
11744         (aarch64_linux_child_post_startup_inferior)
11745         (aarch64_linux_read_description)
11746         (aarch64_linux_can_use_hw_breakpoint)
11747         (aarch64_linux_insert_hw_breakpoint)
11748         (aarch64_linux_remove_hw_breakpoint)
11749         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
11750         (aarch64_linux_region_ok_for_hw_watchpoint)
11751         (aarch64_linux_stopped_data_address)
11752         (aarch64_linux_stopped_by_watchpoint)
11753         (aarch64_linux_watchpoint_addr_within_range)
11754         (aarch64_linux_can_do_single_step): Refactor as methods of
11755         aarch64_linux_nat_target.
11756         (super_post_startup_inferior): Delete.
11757         (_initialize_aarch64_linux_nat): Adjust to C++ification.
11758
11759         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
11760         (the_hppa_linux_nat_target): New.
11761         (hppa_linux_fetch_inferior_registers)
11762         (hppa_linux_store_inferior_registers): Refactor as methods of
11763         hppa_linux_nat_target.
11764         (_initialize_hppa_linux_nat): Adjust to C++ification.
11765
11766         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
11767         (the_ia64_linux_nat_target): New.
11768         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
11769         (ia64_linux_stopped_data_address)
11770         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
11771         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
11772         ia64_linux_nat_target methods.
11773         (super_xfer_partial): Delete.
11774         (_initialize_ia64_linux_nat): Adjust to C++ification.
11775
11776         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
11777         (the_m32r_linux_nat_target): New.
11778         (m32r_linux_fetch_inferior_registers)
11779         (m32r_linux_store_inferior_registers): Refactor as
11780         m32r_linux_nat_target methods.
11781         (_initialize_m32r_linux_nat): Adjust to C++ification.
11782
11783         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
11784         (the_m68k_linux_nat_target): New.
11785         (m68k_linux_fetch_inferior_registers)
11786         (m68k_linux_store_inferior_registers): Refactor as
11787         m68k_linux_nat_target methods.
11788         (_initialize_m68k_linux_nat): Adjust to C++ification.
11789
11790         * s390-linux-nat.c (s390_linux_nat_target): New class.
11791         (the_s390_linux_nat_target): New.
11792         (s390_linux_fetch_inferior_registers)
11793         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
11794         (s390_insert_watchpoint, s390_remove_watchpoint)
11795         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
11796         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
11797         (s390_auxv_parse, s390_read_description): Refactor as methods of
11798         s390_linux_nat_target.
11799         (_initialize_s390_nat): Adjust to C++ification.
11800
11801         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
11802         (the_sparc_linux_nat_target): New.
11803         (_initialize_sparc_linux_nat): Adjust to C++ification.
11804         * sparc-nat.c (sparc_fetch_inferior_registers)
11805         (sparc_store_inferior_registers): Remove target_ops parameter.
11806         * sparc-nat.h (sparc_fetch_inferior_registers)
11807         (sparc_store_inferior_registers): Remove target_ops parameter.
11808         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
11809         (the_sparc64_linux_nat_target): New.
11810         (_initialize_sparc64_linux_nat): Adjust to C++ification.
11811
11812         * spu-linux-nat.c (spu_linux_nat_target): New class.
11813         (the_spu_linux_nat_target): New.
11814         (spu_child_post_startup_inferior, spu_child_post_attach)
11815         (spu_child_wait, spu_fetch_inferior_registers)
11816         (spu_store_inferior_registers, spu_xfer_partial)
11817         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
11818         methods.
11819         (_initialize_spu_nat): Adjust to C++ification.
11820
11821         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
11822         (the_tilegx_linux_nat_target): New.
11823         (fetch_inferior_registers, store_inferior_registers):
11824         Refactor as methods.
11825         (_initialize_tile_linux_nat): Adjust to C++ification.
11826
11827         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
11828         (the_xtensa_linux_nat_target): New.
11829         (xtensa_linux_fetch_inferior_registers)
11830         (xtensa_linux_store_inferior_registers): Refactor as
11831         xtensa_linux_nat_target methods.
11832         (_initialize_xtensa_linux_nat): Adjust to C++ification.
11833
11834         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
11835         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
11836         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
11837         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
11838         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
11839         (fbsd_stopped_by_sw_breakpoint)
11840         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
11841         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
11842         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
11843         (fbsd_post_startup_inferior, fbsd_post_attach)
11844         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
11845         (fbsd_set_syscall_catchpoint)
11846         (super_xfer_partial, super_resume, super_wait)
11847         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
11848         (fbsd_handle_debug_trap): Remove target_ops parameter.
11849         (fbsd_nat_add_target): Delete.
11850         * fbsd-nat.h: Include "inf-ptrace.h".
11851         (fbsd_nat_add_target): Delete.
11852         (USE_SIGTRAP_SIGINFO): Define.
11853         (fbsd_nat_target): New class.
11854
11855         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
11856         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
11857         (amd64bsd_target): Delete.
11858         * amd64-bsd-nat.h: New file.
11859         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
11860         "x86-bsd-nat.h".
11861         (amd64_fbsd_nat_target): New class.
11862         (the_amd64_fbsd_nat_target): New.
11863         (amd64fbsd_read_description): Refactor as method of
11864         amd64_fbsd_nat_target.
11865         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11866         (_initialize_amd64fbsd_nat): Adjust to C++ification.
11867         * amd64-nat.h (amd64bsd_target): Delete function declaration.
11868         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
11869         (i386bsd_store_inferior_registers): Remove target_ops parameter.
11870         (i386bsd_target): Delete.
11871         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
11872         (i386bsd_fetch_inferior_registers)
11873         (i386bsd_store_inferior_registers): Declare.
11874         (i386_bsd_nat_target): New class.
11875         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
11876         (the_i386_fbsd_nat_target): New.
11877         (i386fbsd_resume, i386fbsd_read_description): Refactor as
11878         i386_fbsd_nat_target methods.
11879         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11880         (_initialize_i386fbsd_nat): Adjust to C++ification.
11881         * x86-bsd-nat.c (super_mourn_inferior): Delete.
11882         (x86bsd_mourn_inferior, x86bsd_target): Delete.
11883         (_initialize_x86_bsd_nat): Adjust to C++ification.
11884         * x86-bsd-nat.h: Include "x86-nat.h".
11885         (x86bsd_target): Delete declaration.
11886         (x86bsd_nat_target): New class.
11887
11888         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
11889         (the_aarch64_fbsd_nat_target): New.
11890         (aarch64_fbsd_fetch_inferior_registers)
11891         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
11892         aarch64_fbsd_nat_target.
11893         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
11894         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
11895         (the_alpha_bsd_nat_target): New.
11896         (alphabsd_fetch_inferior_registers)
11897         (alphabsd_store_inferior_registers): Refactor as
11898         alpha_bsd_nat_target methods.
11899         (_initialize_alphabsd_nat): Refactor as methods of
11900         alpha_bsd_nat_target.
11901         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
11902         (the_amd64_nbsd_nat_target): New.
11903         (_initialize_amd64nbsd_nat): Adjust to C++ification.
11904         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
11905         (the_amd64_obsd_nat_target): New.
11906         (_initialize_amd64obsd_nat): Adjust to C++ification.
11907         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
11908         (the_arm_fbsd_nat_target): New.
11909         (arm_fbsd_fetch_inferior_registers)
11910         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
11911         (_initialize_arm_fbsd_nat): Refactor as methods of
11912         arm_fbsd_nat_target.
11913         (_initialize_arm_fbsd_nat): Adjust to C++ification.
11914         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
11915         (the_arm_netbsd_nat_target): New.
11916         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
11917         arm_netbsd_nat_target.
11918         (_initialize_arm_netbsd_nat): Adjust to C++ification.
11919         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
11920         (the_hppa_nbsd_nat_target): New.
11921         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
11922         hppa_nbsd_nat_target methods.
11923         (_initialize_hppanbsd_nat): Adjust to C++ification.
11924         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
11925         (the_hppa_obsd_nat_target): New.
11926         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
11927         methods of hppa_obsd_nat_target.
11928         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
11929         add_target.
11930         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
11931         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
11932         add_target.
11933         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
11934         (_initialize_i386obsd_nat): Use add_target.
11935         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
11936         (the_m68k_bsd_nat_target): New.
11937         (m68kbsd_fetch_inferior_registers)
11938         (m68kbsd_store_inferior_registers): Refactor as methods of
11939         m68k_bsd_nat_target.
11940         (_initialize_m68kbsd_nat): Adjust to C++ification.
11941         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
11942         (the_mips_fbsd_nat_target): New.
11943         (mips_fbsd_fetch_inferior_registers)
11944         (mips_fbsd_store_inferior_registers): Refactor as methods of
11945         mips_fbsd_nat_target.
11946         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
11947         add_target.
11948         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
11949         (the_mips_nbsd_nat_target): New.
11950         (mipsnbsd_fetch_inferior_registers)
11951         (mipsnbsd_store_inferior_registers): Refactor as methods of
11952         mips_nbsd_nat_target.
11953         (_initialize_mipsnbsd_nat): Adjust to C++ification.
11954         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
11955         (the_mips64_obsd_nat_target): New.
11956         (mips64obsd_fetch_inferior_registers)
11957         (mips64obsd_store_inferior_registers): Refactor as methods of
11958         mips64_obsd_nat_target.
11959         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
11960         add_target.
11961         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
11962         nbsd_nat_target.
11963         * nbsd-nat.h: Include "inf-ptrace.h".
11964         (nbsd_nat_target): New class.
11965         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
11966         (obsd_wait): Refactor as methods of obsd_nat_target.
11967         (obsd_add_target): Delete.
11968         * obsd-nat.h: Include "inf-ptrace.h".
11969         (obsd_nat_target): New class.
11970         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
11971         (the_ppc_fbsd_nat_target): New.
11972         (ppcfbsd_fetch_inferior_registers)
11973         (ppcfbsd_store_inferior_registers): Refactor as methods of
11974         ppc_fbsd_nat_target.
11975         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
11976         add_target.
11977         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
11978         (the_ppc_nbsd_nat_target): New.
11979         (ppcnbsd_fetch_inferior_registers)
11980         (ppcnbsd_store_inferior_registers): Refactor as methods of
11981         ppc_nbsd_nat_target.
11982         (_initialize_ppcnbsd_nat): Adjust to C++ification.
11983         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
11984         (the_ppc_obsd_nat_target): New.
11985         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
11986         methods of ppc_obsd_nat_target.
11987         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
11988         add_target.
11989         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
11990         (the_sh_nbsd_nat_target): New.
11991         (shnbsd_fetch_inferior_registers)
11992         (shnbsd_store_inferior_registers): Refactor as methods of
11993         sh_nbsd_nat_target.
11994         (_initialize_shnbsd_nat): Adjust to C++ification.
11995         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
11996         (inf_ptrace_xfer_partial): Delete.
11997         (sparc_xfer_partial, sparc_target): Delete.
11998         * sparc-nat.h (sparc_fetch_inferior_registers)
11999         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
12000         (sparc_target): Delete function declaration.
12001         (sparc_target): New template class.
12002         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
12003         (_initialize_sparcnbsd_nat): Adjust to C++ification.
12004         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
12005         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
12006         add_target.
12007         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
12008         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
12009         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
12010         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
12011         add_target.
12012         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
12013         (the_vax_bsd_nat_target): New.
12014         (vaxbsd_fetch_inferior_registers)
12015         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
12016         methods.
12017         (_initialize_vaxbsd_nat): Adjust to C++ification.
12018
12019         * bsd-kvm.c (bsd_kvm_target): New class.
12020         (bsd_kvm_ops): Now a bsd_kvm_target.
12021         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
12022         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
12023         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
12024         bsd_kvm_target.
12025         (bsd_kvm_return_one): Delete.
12026         (bsd_kvm_add_target): Adjust to C++ification.
12027
12028         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
12029         (nto_procfs_target_procfs): New classes.
12030         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
12031         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
12032         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
12033         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
12034         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
12035         (procfs_remove_hw_breakpoint, procfs_resume)
12036         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
12037         (procfs_kill_inferior, procfs_store_registers)
12038         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
12039         as methods of nto_procfs_target.
12040         (nto_procfs_ops): Now an nto_procfs_target_procfs.
12041         (nto_native_ops): Delete.
12042         (procfs_open, procfs_native_open): Delete.
12043         (nto_native_ops): Now an nto_procfs_target_native.
12044         (init_procfs_targets): Adjust to C++ification.
12045         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
12046         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
12047         Refactor as methods of nto_procfs_target.
12048
12049         * go32-nat.c (go32_nat_target): New class.
12050         (the_go32_nat_target): New.
12051         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
12052         (go32_store_registers, go32_xfer_partial, go32_files_info)
12053         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
12054         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
12055         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
12056         (go32_pid_to_str): Refactor as methods of go32_nat_target.
12057         (go32_target): Delete.
12058         (_initialize_go32_nat): Adjust to C++ification.
12059
12060         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
12061         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
12062         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
12063         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
12064         gnu_nat_target.
12065         (gnu_target): Delete.
12066         * gnu-nat.h (gnu_target): Delete.
12067         (gnu_nat_target): New class.
12068         * i386-gnu-nat.c (gnu_base_target): New.
12069         (i386_gnu_nat_target): New class.
12070         (the_i386_gnu_nat_target): New.
12071         (_initialize_i386gnu_nat): Adjust to C++ification.
12072
12073 2018-05-02  Pedro Alves  <palves@redhat.com>
12074
12075         * bfd-target.c (target_bfd_xclose): Rename to ...
12076         (target_bfd_close): ... this.
12077         (target_bfd_reopen): Adjust.
12078         * target.c (target_close): Remove references to to_xclose.
12079         * target.h (target_ops::to_xclose): Delete.
12080         (target_ops::to_close): Update comments.
12081
12082 2018-05-02  Pedro Alves  <palves@redhat.com>
12083
12084         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
12085         "linux-nat.h".
12086         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
12087         * inf-ptrace.c (inf_ptrace_register_u_offset)
12088         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
12089         (inf_ptrace_store_register, inf_ptrace_store_registers)
12090         (inf_ptrace_trad_target): Move to ...
12091         * linux-nat-trad.c: ... this new file.
12092         * linux-nat-trad.h: New file.
12093         * linux-nat.c (linux_target_install_ops): Make extern.
12094         (linux_trad_target): Delete.
12095         * linux-nat.h (linux_trad_target): Delete declaration.
12096         (linux_target_install_ops): Declare.
12097         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
12098         "linux-nat.h".
12099
12100 2018-05-02  Pedro Alves  <palves@redhat.com>
12101
12102         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
12103         procfs_target/add_target here.
12104         * procfs.c (procfs_target): Make static.
12105         (_initialize_procfs): Call add_target here.
12106         * procfs.h (struct target_ops): Remove forward declaration.
12107         (procfs_target): Remove declaration.
12108         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
12109
12110 2018-05-02  Pedro Alves  <palves@redhat.com>
12111
12112         * procfs.c (procfs_stopped_by_watchpoint)
12113         (procfs_insert_watchpoint, procfs_remove_watchpoint)
12114         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
12115         Forward declare.
12116         (procfs_use_watchpoints): Delete, move contents...
12117         (procfs_target): ... here.
12118         * procfs.h (procfs_use_watchpoints): Delete declaration.
12119         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
12120         procfs_use_watchpoints.
12121         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
12122         procfs_use_watchpoints.
12123
12124 2018-05-02  Tom Tromey  <tom@tromey.com>
12125
12126         PR python/20084:
12127         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
12128         and var_zuinteger_unlimited.
12129         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
12130         and PARAM_ZUINTEGER_UNLIMITED.
12131         (set_parameter_value): Handle var_zuinteger and
12132         var_zuinteger_unlimited.
12133         (add_setshow_generic): Likewise.
12134         (parmpy_init): Likewise.
12135
12136 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
12137
12138         PR rust/23124
12139         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
12140         pointer is not null before dereferencing it.
12141
12142 2018-04-30  Tom Tromey  <tom@tromey.com>
12143
12144         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
12145         is_mi_like_p.
12146
12147 2018-04-30  Tom Tromey  <tom@tromey.com>
12148
12149         * breakpoint.c (mention): Remove use of is_mi_like_p.
12150         (print_mention_ranged_breakpoint): Likewise.
12151         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
12152         of is_mi_like_p.
12153
12154 2018-04-30  Tom Tromey  <tom@tromey.com>
12155
12156         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
12157
12158 2018-04-30  Tom Tromey  <tom@tromey.com>
12159
12160         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
12161         (info_spu_event_command): Remove some uses of is_mi_like_p.
12162
12163 2018-04-30  Tom Tromey  <tom@tromey.com>
12164
12165         * python/py-framefilter.c (py_print_single_arg)
12166         (enumerate_locals, py_print_args, py_print_frame): Remove some
12167         uses of is_mi_like_p.
12168
12169 2018-04-30  Tom Tromey  <tom@tromey.com>
12170
12171         * ui-out.c: Update.
12172         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
12173         * ui-out.h (ui_out::is_mi_like_p): Now const.
12174         (ui_out::do_is_mi_like_p): Now const.
12175         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
12176
12177 2018-04-30  Tom Tromey  <tom@tromey.com>
12178
12179         * varobj.c (varobj_set_visualizer): Use new_reference.
12180         * python/python.c (gdbpy_decode_line): Use new_reference.
12181         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
12182         new_reference.
12183
12184 2018-04-30  Tom Tromey  <tom@tromey.com>
12185
12186         * varobj.c (install_new_value): Use new_reference.
12187         * value.h (value_incref): Return void.  Swap intro comment with
12188         value_decref.
12189         * value.c (set_value_parent): Use new_reference.
12190         (value_incref): Return void.  Update intro comment.
12191         (release_value): Use new_reference.
12192         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
12193
12194 2018-04-30  Tom Tromey  <tom@tromey.com>
12195
12196         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
12197         * gdb_bfd.h (new_bfd_ref): Remove.
12198         (gdb_bfd_open): Update comment.
12199         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
12200         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
12201         (gdb_bfd_fdopenr): Use new_reference.
12202         * exec.c (exec_file_attach): Use new_reference.
12203
12204 2018-04-30  Tom Tromey  <tom@tromey.com>
12205
12206         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
12207         method.
12208
12209 2018-04-30  Tom Tromey  <tom@tromey.com>
12210
12211         * jit.c (jit_read_code_entry): Use type_align.
12212         * i386-tdep.c (i386_gdbarch_init): Don't call
12213         set_gdbarch_long_long_align_bit.
12214         * gdbarch.sh: Remove long_long_align_bit.
12215         * gdbarch.c, gdbarch.h: Rebuild.
12216         * arc-tdep.c (arc_type_align): New function.
12217         (arc_gdbarch_init): Use arc_type_align.  Don't call
12218         set_gdbarch_long_long_align_bit.
12219
12220 2018-04-30  Tom Tromey  <tom@tromey.com>
12221
12222         * rust-lang.c (rust_type_alignment): Remove.
12223         (rust_composite_type): Use type_align.
12224
12225 2018-04-30  Tom Tromey  <tom@tromey.com>
12226
12227         * NEWS: Mention Type.align.
12228         * python/py-type.c (typy_get_alignof): New function.
12229         (type_object_getset): Add "alignof".
12230
12231 2018-04-30  Tom Tromey  <tom@tromey.com>
12232
12233         PR exp/17095:
12234         * NEWS: Update.
12235         * std-operator.def (UNOP_ALIGNOF): New operator.
12236         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
12237         New.
12238         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
12239         * c-lang.c (c_op_print_tab): Add alignof.
12240         * c-exp.y (ALIGNOF): New token.
12241         (exp): Add "ALIGNOF" production.
12242         (ident_tokens): Add _Alignof and alignof.
12243
12244 2018-04-30  Tom Tromey  <tom@tromey.com>
12245
12246         * i386-tdep.c (i386_type_align): New function.
12247         (i386_gdbarch_init): Update.
12248         * gdbarch.sh (type_align): New method.
12249         * gdbarch.c, gdbarch.h: Rebuild.
12250         * arch-utils.h (default_type_align): Declare.
12251         * arch-utils.c (default_type_align): New function.
12252         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
12253         (struct type) <align_log2>: New field.
12254         <instance_flags>: Now a bitfield.
12255         (TYPE_RAW_ALIGN): New macro.
12256         (type_align, type_raw_align, set_type_align): Declare.
12257         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
12258         functions.
12259         * dwarf2read.c (quirk_rust_enum): Set type alignment.
12260         (get_alignment, maybe_set_alignment): New functions.
12261         (read_structure_type, read_enumeration_type, read_array_type)
12262         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
12263         (read_subrange_type, read_base_type): Set type alignment.
12264
12265 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
12266
12267         * dwarf2read.c (read_index_from_section): Use bool.
12268
12269 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
12270
12271         PR gdb/22950
12272         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
12273         with #ifdef.
12274
12275 2018-04-29  John Reiser  <jreiser@BitWagon.com>
12276
12277         PR build/22873
12278         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
12279         last step, and do it atomically.
12280
12281 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
12282
12283         * compile/compile-c-types.c (convert_int, convert_float):
12284         Update for C FE v1.
12285
12286 2018-04-27  Tom Tromey  <tom@tromey.com>
12287
12288         PR rust/22545:
12289         * rust-lang.c (rust_inclusive_range_type_p): New function.
12290         (rust_range): Handle inclusive ranges.
12291         (rust_compute_range): Likewise.
12292         * rust-exp.y (struct rust_op) <inclusive>: New field.
12293         (DOTDOTEQ): New constant.
12294         (range_expr): Add "..=" productions.
12295         (operator_tokens): Add "..=" token.
12296         (ast_range): Add "inclusive" parameter.
12297         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
12298         ranges.
12299         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
12300         bounds values.
12301         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
12302         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
12303         Update comments.
12304         * expprint.c (print_subexp_standard): Handle new bounds values.
12305         (dump_subexp_body_standard): Likewise.
12306
12307 2018-04-27  Tom Tromey  <tom@tromey.com>
12308
12309         * configure: Rebuild.
12310         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
12311         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
12312         "OVERRIDE".
12313         (class symbol_needs_eval_context): Likewise.
12314         * dwarf2read.c (mock_mapped_index::symbol_name_count)
12315         (mock_mapped_index::symbol_name_at): Use "override".  Remove
12316         "virtual".
12317         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
12318         "override".
12319         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
12320         * aarch64-tdep.c (instruction_reader::read): Use "override".
12321         (instruction_reader_test::read): Likewise.
12322         * arm-tdep.c (instruction_reader::read): Use "override".
12323         (instruction_reader_thumb::read): Likewise.
12324
12325 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
12326
12327         PR remote/9665
12328         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
12329         instead of remote_send.
12330         (remote_send): Remove.
12331
12332 2018-04-26  Pedro Alves  <palves@redhat.com>
12333
12334         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
12335         find_function_start_sal instead of find_pc_line.
12336
12337 2018-04-26  Pedro Alves  <palves@redhat.com>
12338
12339         * breakpoint.c (set_breakpoint_location_function): Handle
12340         mst_data_gnu_ifunc.
12341         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
12342         * elfread.c (elf_symtab_read): Give data symbols with
12343         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
12344         (elf_rel_plt_read): Update comment.
12345         * linespec.c (convert_linespec_to_sals): Handle
12346         mst_data_gnu_ifunc.
12347         (minsym_found): Handle mst_data_gnu_ifunc.
12348         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
12349         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
12350         * parse.c (find_minsym_type_and_address): Handle
12351         mst_data_gnu_ifunc.
12352         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
12353         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
12354         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
12355         comment.
12356         <mst_data_gnu_ifunc>: New enumerator.
12357
12358 2018-04-26  Pedro Alves  <palves@redhat.com>
12359
12360         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
12361         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
12362         'want_trampoline' parameter by a lookup_msym_prefer parameter.
12363         Handle it.
12364         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
12365         (lookup_minimal_symbol_by_pc): Adjust.
12366         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
12367         (lookup_solib_trampoline_symbol_by_pc): Adjust.
12368         * minsyms.h (lookup_msym_prefer): New enum.
12369         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
12370         parameter by a lookup_msym_prefer parameter.
12371
12372 2018-04-26  Pedro Alves  <palves@redhat.com>
12373
12374         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
12375         ends in "@plt" instead of looking at the symbol's section.
12376
12377 2018-04-26  Pedro Alves  <palves@redhat.com>
12378
12379         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
12380         all references.
12381         (find_pc_partial_function_gnu_ifunc): Rename to ...
12382         (find_pc_partial_function): ... this, and remove references to
12383         'is_gnu_ifunc_p'.
12384         (find_pc_partial_function): Delete old implementation.
12385         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
12386
12387 2018-04-26  Pedro Alves  <palves@redhat.com>
12388
12389         * linespec.c (struct bound_minimal_symbol_search_key): New.
12390         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
12391         skip first line if we found a GNU ifunc minimal symbol by name.
12392         (compare_msymbols): Change parameters to work with a destructured
12393         lhs minsym.
12394         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
12395         functions.
12396
12397 2018-04-26  Pedro Alves  <palves@redhat.com>
12398
12399         * breakpoint.c (set_breakpoint_location_function): Don't resolve
12400         ifunc targets here.  Instead, if we have an ifunc minsym, use its
12401         address/name.
12402         (add_location_to_breakpoint): Store the minsym and the objfile in
12403         the breakpoint location.
12404         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
12405         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
12406         Record the minsym in the sal.
12407         * symtab.h (symtab_and_line) <msymbol>: New field.
12408
12409 2018-04-26  Pedro Alves  <palves@redhat.com>
12410
12411         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
12412         unless we actually resolved the ifunc.
12413
12414 2018-04-26  Pedro Alves  <palves@redhat.com>
12415
12416         * c-exp.y (variable production): Prefer ifunc minsyms over
12417         regular function symbols.
12418         * symtab.c (find_gnu_ifunc): New function.
12419         * minsyms.h (lookup_msym_prefer): New enum.
12420         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
12421         parameter by a lookup_msym_prefer parameter.
12422         * symtab.h (find_gnu_ifunc): New declaration.
12423
12424 2018-04-26  Pedro Alves  <palves@redhat.com>
12425
12426         * blockframe.c (find_gnu_ifunc_target_type): New function.
12427         (find_function_type): New.
12428         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
12429         return a value with a memory address.
12430         (eval_call): For calls to GNU ifunc functions, try to find the
12431         type of the target function from the type that the resolver
12432         returns.
12433         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
12434         symbols.
12435         * infcall.c (find_function_return_type): Delete.
12436         (find_function_addr): Add 'function_type' parameter.  For calls to
12437         GNU ifunc functions, try to find the type of the target function
12438         from the type that the resolver returns, and return it via
12439         FUNCTION_TYPE.
12440         (call_function_by_hand_dummy): Adjust to use the function type
12441         returned by find_function_addr.
12442         (find_function_addr): Add 'function_type' parameter and move
12443         description here.
12444         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
12445         declarations.
12446
12447 2018-04-26  Pedro Alves  <palves@redhat.com>
12448
12449         * c-exp.y (variable production): Skip finding an alias for ifunc
12450         symbols.
12451
12452 2018-04-26  Pedro Alves  <palves@redhat.com>
12453
12454         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
12455
12456 2018-04-25  Pedro Alves  <palves@redhat.com>
12457
12458         * infcmd.c (kill_command): Print the pid as string, not the whole
12459         thread's ptid.  Add comment.  s/has been killed/killed/ in output
12460         message.
12461         * remote.c (remote_detach_1): Print the pid as string, not the
12462         whole thread's ptid.
12463
12464 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
12465             Sergio Durigan Junior  <sergiodj@redhat.com>
12466             Pedro Alves  <palves@redhat.com>
12467
12468         * infcmd.c (kill_command): Print message when inferior has
12469         been killed.
12470         * inferior.c (print_inferior_events): Remove 'static'.  Set as
12471         '1'.
12472         (add_inferior): Improve message printed when
12473         'print_inferior_events' is on.
12474         (exit_inferior): Remove message printed when
12475         'print_inferior_events' is on.
12476         (detach_inferior): Improve message printed when
12477         'print_inferior_events' is on.
12478         (initialize_inferiors): Use 'add_inferior_silent' to set
12479         'current_inferior_'.
12480         * inferior.h (print_inferior_events): Declare here as
12481         'extern'.
12482         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
12483         '[Detaching...]' messages when 'print_inferior_events' is on.
12484         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
12485         as prefix/suffix for messages.  Remove periods.  Fix erroneous
12486         'Detaching after fork from child...', replace it by '... from
12487         parent...'.
12488         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
12489         prefix/suffix when printing 'Detaching...' messages.  Print
12490         them when 'print_inferior_events' is on.
12491         * remote.c (remote_detach_1): Print message when detaching
12492         from inferior and '!is_fork_parent'.
12493
12494 2018-04-24  Tom Tromey  <tom@tromey.com>
12495
12496         * cli-out.h: Reindent.
12497
12498 2018-04-24  Tom Tromey  <tom@tromey.com>
12499
12500         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
12501         (cli_ui_out::do_field_string): Use fputs_filtered.
12502         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
12503
12504 2018-04-23  Tom Tromey  <tom@tromey.com>
12505
12506         * guile/scm-frame.c (gdbscm_frame_read_var): Use
12507         gdb::unique_xmalloc_ptr.
12508
12509 2018-04-23  Tom Tromey  <tom@tromey.com>
12510
12511         * configure: Rebuild.
12512
12513 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
12514
12515         PR gdb/23095
12516         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
12517         prepare_for_testing.  Set normal_bp to r_debug_state if target
12518         is bsd.
12519
12520 2018-04-21  Pedro Alves  <palves@redhat.com>
12521             Rajendra SY  <rajendra.sy@gmail.com>
12522
12523         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
12524         * remote.c (extended_remote_attach): In all-stop mode, mark the
12525         thread as executing.
12526
12527 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
12528
12529         * thread.c (thread_apply_all_command): Fix comment.
12530         (thread_command): Fix comment.
12531
12532 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
12533
12534         * common/tdesc.h (tdesc_create_feature): Remove xml filename
12535         parameter.
12536         * features/aarch64-core.c (create_feature_aarch64_core):
12537         Regenerate.
12538         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
12539         Likewise.
12540         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
12541         Likewise.
12542         * features/i386/32bit-avx512.c
12543         (create_feature_i386_32bit_avx512): Likewise.
12544         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
12545         Likewise.
12546         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
12547         Likewise.
12548         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
12549         Likewise.
12550         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
12551         Likewise.
12552         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
12553         Likewise.
12554         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
12555         Likewise.
12556         * features/i386/64bit-avx512.c
12557         (create_feature_i386_64bit_avx512): Likewise.
12558         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
12559         Likewise.
12560         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
12561         Likewise.
12562         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
12563         Likewise.
12564         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
12565         Likewise.
12566         * features/i386/64bit-segments.c
12567         (create_feature_i386_64bit_segments): Likewise.
12568         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
12569         Likewise.
12570         * features/i386/x32-core.c
12571         (create_feature_i386_x32_core): Likewise.
12572         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
12573         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
12574         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
12575         * target-descriptions.c: In generated code, don't pass xml
12576         filename.
12577
12578 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12579
12580         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
12581         (print_xml_feature::visit_post): Likewise.
12582         (print_xml_feature::visit): Likewise.
12583         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
12584         (print_xml_feature): Add new class.
12585         * regformats/regdat.sh: Null xmltarget on feature targets.
12586         * target-descriptions.c (struct target_desc): Add xmltarget.
12587         (maintenance_check_tdesc_xml_convert): Add unittest function.
12588         (tdesc_get_features_xml): Add function to get xml.
12589         (maintenance_check_xml_descriptions): Test xml generation.
12590         * xml-tdesc.c (string_read_description_xml): Add function.
12591         * xml-tdesc.h (string_read_description_xml): Add declaration.
12592
12593 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12594
12595         * features/Makefile: Add feature marker to targets with new style
12596         target descriptions.
12597         * regformats/aarch64.dat: Regenerate.
12598         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
12599         * regformats/i386/amd64-avx-linux.dat: Likewise.
12600         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
12601         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
12602         * regformats/i386/amd64-linux.dat: Likewise.
12603         * regformats/i386/amd64-mpx-linux.dat: Likewise.
12604         * regformats/i386/amd64.dat: Likewise.
12605         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
12606         * regformats/i386/i386-avx-linux.dat: Likewise.
12607         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
12608         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
12609         * regformats/i386/i386-linux.dat: Likewise.
12610         * regformats/i386/i386-mmx-linux.dat: Likewise.
12611         * regformats/i386/i386-mpx-linux.dat: Likewise.
12612         * regformats/i386/i386.dat: Likewise.
12613         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
12614         * regformats/i386/x32-avx-linux.dat: Likewise.
12615         * regformats/i386/x32-linux.dat: Likewise.
12616         * regformats/tic6x-c62x-linux.dat: Likewise.
12617         * regformats/tic6x-c64x-linux.dat: Likewise.
12618         * regformats/tic6x-c64xp-linux.dat: Likewise.
12619         * regformats/regdat.sh: Parse feature marker.
12620
12621 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12622
12623         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
12624         (tdesc_osabi_name): Likewise.
12625         * target-descriptions.c (tdesc_architecture_name): Add new
12626         function.
12627         (tdesc_osabi_name): Likewise.
12628
12629 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12630
12631         * common/tdesc.c (tdesc_predefined_type): Move to here.
12632         (tdesc_named_type): Likewise.
12633         (tdesc_create_vector): Likewise.
12634         (tdesc_create_struct): Likewise.
12635         (tdesc_set_struct_size): Likewise.
12636         (tdesc_create_union): Likewise.
12637         (tdesc_create_flags): Likewise.
12638         (tdesc_create_enum): Likewise.
12639         (tdesc_add_field): Likewise.
12640         (tdesc_add_typed_bitfield): Likewise.
12641         (tdesc_add_bitfield): Likewise.
12642         (tdesc_add_flag): Likewise.
12643         (tdesc_add_enum_value): Likewise.
12644         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
12645         (struct tdesc_type_vector): Likewise.
12646         (struct tdesc_type_field): Likewise.
12647         (struct tdesc_type_with_fields): Likewise.
12648         (tdesc_create_enum): Add declaration.
12649         (tdesc_add_typed_bitfield): Likewise.
12650         (tdesc_add_enum_value): Likewise.
12651         * target-descriptions.c (tdesc_type_field): Move from here.
12652         (tdesc_type_builtin): Likewise.
12653         (tdesc_type_vector): Likewise.
12654         (tdesc_type_with_fields): Likewise.
12655         (tdesc_predefined_types): Likewise.
12656         (tdesc_named_type): Likewise.
12657         (tdesc_create_vector): Likewise.
12658         (tdesc_create_struct): Likewise.
12659         (tdesc_set_struct_size): Likewise.
12660         (tdesc_create_union): Likewise.
12661         (tdesc_create_flags): Likewise.
12662         (tdesc_create_enum): Likewise.
12663         (tdesc_add_field): Likewise.
12664         (tdesc_add_typed_bitfield): Likewise.
12665         (tdesc_add_bitfield): Likewise.
12666         (tdesc_add_flag): Likewise.
12667         (tdesc_add_enum_value): Likewise.
12668         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
12669         (tdesc_add_typed_bitfield): Likewise.
12670         (tdesc_add_enum_value): Likewise.
12671
12672 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12673
12674         * common/tdesc.c (tdesc_feature::accept): Move to here.
12675         (tdesc_feature::operator==): Likewise.
12676         (tdesc_create_reg): Likewise.
12677         * common/tdesc.h (tdesc_type_kind): Likewise.
12678         (struct tdesc_type): Likewise.
12679         (struct tdesc_feature): Likewise.
12680         * regformats/regdat.sh: Create a feature.
12681         * target-descriptions.c (tdesc_type_kind): Move from here.
12682         (tdesc_type): Likewise.
12683         (tdesc_type_up): Likewise.
12684         (tdesc_feature): Likewise.
12685         (tdesc_create_reg): Likewise.
12686
12687 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12688
12689         * Makefile.in: Add arch/tdesc.c
12690         * common/tdesc.c: New file.
12691         * common/tdesc.h (tdesc_element_visitor): Move to here.
12692         (tdesc_element): Likewise.
12693         (tdesc_reg): Likewise.
12694         (tdesc_reg_up): Likewise.
12695         * regformats/regdef.h (reg): Add offset to constructors.
12696         * target-descriptions.c (tdesc_element_visitor): Move from here.
12697         (tdesc_element): Likewise.
12698         (tdesc_reg): Likewise.
12699         (tdesc_reg_up): Likewise.
12700
12701 2018-04-17  Tom Tromey  <tom@tromey.com>
12702
12703         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
12704         discriminant field.
12705
12706 2018-04-17  Tom Tromey  <tom@tromey.com>
12707
12708         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
12709
12710 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12711
12712         * symtab.c (print_symbol_info): Skip printing filename and line
12713         number when `last' is NULL.
12714         (symtab_symbol_info): Use empty string instead of NULL for first
12715         invocation of print_symbol_info.
12716         (rbreak_command): Pass NULL to `last' parameter of
12717         print_symbol_info.
12718
12719 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
12720
12721         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
12722         instead of nullptr.
12723
12724 2018-04-16  Pedro Alves  <palves@redhat.com>
12725
12726         * MAINTAINERS (sh): Remove.
12727         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
12728         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
12729         (ALLDEPFILES): Remove sh64-tdep.c.
12730         * NEWS: Mentions that support for SH-5/SH64 is removed.
12731         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
12732         (sh*-*-openbsd*): Ditto.
12733         (sh64-*-elf*): Remove.
12734         (sh*): Remove.
12735         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
12736         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
12737         * sh-tdep.c: No longer include "sh64-tdep.h".
12738         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
12739         * sh64-tdep.c, sh64-tdep.h: Remove files.
12740
12741 2018-04-16  Pedro Alves  <palves@redhat.com>
12742
12743         * MAINTAINERS: Remove m88k.
12744         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
12745         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
12746         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
12747         * NEWS: Mention that support for m88k was removed.
12748         * configure.host (m88*-*-*): Remove support.
12749         * configure.nat (m88k-*-*): Remove support.
12750         * configure.tgt (m88*-*-openbsd*): Remove.
12751         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
12752
12753 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
12754
12755         * configure.tgt (x86_tobjs): New variable.
12756         (amd64_tobjs, i386_tobjs): Use it.
12757
12758 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12759
12760         * symtab.c (print_symbol_info): Precede the symbol definition by
12761         the line number when available.
12762         * NEWS: Advertise this enhancement.
12763
12764 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12765
12766         * NEWS (New options): announce set/show record btrace cpu.
12767         * btrace.c: Include record-btrace.h.
12768         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
12769         the vendor is unknown.
12770         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
12771         Maybe overwrite the btrace configuration's cpu.
12772         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
12773         (btrace_fetch): Add cpu parameter.  Update callers.
12774         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
12775         Maybe overwrite the btrace configuration's cpu.  Skip enabling
12776         errata workarounds if the vendor is unknown.
12777         * python/py-record-btrace.c: Include record-btrace.h.
12778         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
12779         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
12780         * record-btrace.c (record_btrace_cpu_state_kind): New.
12781         (record_btrace_cpu): New.
12782         (set_record_btrace_cpu_cmdlist): New.
12783         (record_btrace_get_cpu): New.
12784         (require_btrace_thread, record_btrace_info)
12785         (record_btrace_resume_thread): Call record_btrace_get_cpu.
12786         (cmd_set_record_btrace_cpu_none): New.
12787         (cmd_set_record_btrace_cpu_auto): New.
12788         (cmd_set_record_btrace_cpu): New.
12789         (cmd_show_record_btrace_cpu): New.
12790         (_initialize_record_btrace): Initialize set/show record btrace cpu
12791         commands.
12792         * record-btrace.h (record_btrace_get_cpu): New.
12793
12794 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12795
12796         * record.c (set_record_command): Fix typo in message.
12797
12798 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12799
12800         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
12801
12802 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12803
12804         * infrun.c (process_event_stop_test): Call
12805         gdbarch_in_indirect_branch_thunk.
12806         * gdbarch.sh (in_indirect_branch_thunk): New.
12807         * gdbarch.c: Regenerated.
12808         * gdbarch.h: Regenerated.
12809         * x86-tdep.h: New.
12810         * x86-tdep.c: New.
12811         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
12812         (HFILES_NO_SRCDIR): Add x86-tdep.h.
12813         (ALLDEPFILES): Add x86-tdep.c.
12814         * arch-utils.h (default_in_indirect_branch_thunk): New.
12815         * arch-utils.c (default_in_indirect_branch_thunk): New.
12816         * i386-tdep: Include x86-tdep.h.
12817         (i386_in_indirect_branch_thunk): New.
12818         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
12819         function.
12820         * amd64-tdep: Include x86-tdep.h.
12821         (amd64_in_indirect_branch_thunk): New.
12822         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
12823
12824 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
12825
12826         PR gdb/23053
12827         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
12828         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
12829         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
12830         regression.
12831
12832 2018-04-12  Tom Tromey  <tom@tromey.com>
12833
12834         * rust-lang.c (rust_print_struct_def): Remove univariant code.
12835         (rust_evaluate_subexp): Likewise.
12836
12837 2018-04-12  Pedro Alves  <palves@redhat.com>
12838
12839         * procfs.c (procfs_detach): Make forward declaration's prototype
12840         match definition's protototype.
12841         (proc_get_LDT_entry): Remove stale do_cleanups call.
12842
12843 2018-04-12  Pedro Alves  <palves@redhat.com>
12844
12845         * target.h (target_ops::to_has_exited): Delete.
12846         (target_has_exited): Delete.
12847         * target-delegates.c: Regenerate.
12848
12849 2018-04-11  Pedro Alves  <palves@redhat.com>
12850
12851         * target.c (fileio_fh_t::t): Add comment.
12852         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12853         (target_fileio_close): Handle a NULL target.
12854         (invalidate_fileio_fh): New.
12855         (target_close): Call it.
12856         * remote.c (remote_hostio_send_command): No longer check whether
12857         remote_desc is open.
12858
12859 2018-04-11  Pedro Alves  <palves@redhat.com>
12860
12861         * target.c (fileio_fh_t): Make it a named struct instead of a
12862         typedef.
12863         (fileio_fh_t::is_closed): New method.
12864         (DEF_VEC_O (fileio_fh_t)): Remove.
12865         (fileio_fhandles): Now a std::vector.
12866         (is_closed_fileio_fh): Delete.
12867         (acquire_fileio_fd): Adjust.  Rename parameters.
12868         (release_fileio_fd): Adjust.
12869         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
12870         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12871         (target_fileio_close): Adjust.
12872
12873 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
12874
12875         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
12876         index.
12877
12878 2018-04-10  Pedro Alves  <palves@redhat.com>
12879
12880         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
12881         (scoped_finish_thread_state): New class.
12882         * infcmd.c (run_command_1): Use it instead of finish_thread_state
12883         cleanup.
12884         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
12885         (fetch_inferior_event, normal_stop): Likewise.
12886         * thread.c (finish_thread_state_cleanup): Delete.
12887
12888 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12889             Pedro Alves  <palves@redhat.com>
12890
12891         * value.c: Include "selftest.h" and "common/array-view.h".
12892         (struct range) <operator ==>: New.
12893         (test_ranges_contain): New.
12894         (check_ranges_vector): New.
12895         (test_insert_into_bit_range_vector): New.
12896         (_initialize_values): Register selftests.
12897         * common/array-view.h (operator==, operator!=): New.
12898
12899 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12900
12901         * common/gdb_vecs.h (unordered_remove): Add overload that takes
12902         an iterator.
12903         * inline-frame.c: Include <algorithm>.
12904         (struct inline_state): Add constructor.
12905         (inline_state_s): Remove.
12906         (DEF_VEC_O(inline_state_s)): Remove.
12907         (inline_states): Change type to std::vector.
12908         (find_inline_frame_state): Adjust to std::vector.
12909         (allocate_inline_frame_state): Remove.
12910         (clear_inline_frame_state): Adjust to std::vector.
12911         (skip_inline_frames): Adjust to std::vector.
12912
12913 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12914
12915         * tracepoint.h (struct trace_state_variable): Add constructor.
12916         <name>: Change type to std::string.
12917         * tracepoint.c (tsv_s): Remove.
12918         (DEF_VEC_O(tsv_s)): Remove.
12919         (tvariables): Change to std::vector.
12920         (create_trace_state_variable): Adjust to std::vector.
12921         (find_trace_state_variable): Likewise.
12922         (find_trace_state_variable_by_number): Likewise.
12923         (delete_trace_state_variable): Likewise.
12924         (trace_variable_command): Adjust to std::string.
12925         (delete_trace_variable_command): Likewise.
12926         (tvariables_info_1): Adjust to std::vector.
12927         (save_trace_state_variables): Likewise.
12928         (start_tracing): Likewise.
12929         (merge_uploaded_trace_state_variables): Adjust to std::vector
12930         and std::string.
12931         * target.h (struct target_ops)
12932         <to_download_trace_state_variable>: Pass reference to
12933         trace_state_variable.
12934         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
12935         * target-delegates.c: Re-generate.
12936         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
12937         (mi_tsv_deleted): Likewise.
12938         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
12939         * remote.c (remote_download_trace_state_variable): Change
12940         pointer to reference and adjust.
12941         * make-target-delegates (parse_argtypes): Handle references.
12942         (write_function_header): Likewise.
12943         (munge_type): Likewise.
12944
12945 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12946
12947         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12948         string_view-selftests.c.
12949         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
12950         testsuite.
12951         * unittests/basic_string_view/cons/char/1.cc: Likewise.
12952         * unittests/basic_string_view/cons/char/2.cc: Likewise.
12953         * unittests/basic_string_view/cons/char/3.cc: Likewise.
12954         * unittests/basic_string_view/element_access/char/1.cc:
12955         Likewise.
12956         * unittests/basic_string_view/element_access/char/empty.cc:
12957         Likewise.
12958         * unittests/basic_string_view/element_access/char/front_back.cc:
12959         Likewise.
12960         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
12961         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
12962         Likewise.
12963         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
12964         Likewise.
12965         * unittests/basic_string_view/modifiers/swap/char/1.cc:
12966         Likewise.
12967         * unittests/basic_string_view/operations/compare/char/1.cc:
12968         Likewise.
12969         * unittests/basic_string_view/operations/compare/char/13650.cc:
12970         Likewise.
12971         * unittests/basic_string_view/operations/copy/char/1.cc:
12972         Likewise.
12973         * unittests/basic_string_view/operations/data/char/1.cc:
12974         Likewise.
12975         * unittests/basic_string_view/operations/find/char/1.cc:
12976         Likewise.
12977         * unittests/basic_string_view/operations/find/char/2.cc:
12978         Likewise.
12979         * unittests/basic_string_view/operations/find/char/3.cc:
12980         Likewise.
12981         * unittests/basic_string_view/operations/find/char/4.cc:
12982         Likewise.
12983         * unittests/basic_string_view/operations/rfind/char/1.cc:
12984         Likewise.
12985         * unittests/basic_string_view/operations/rfind/char/2.cc:
12986         Likewise.
12987         * unittests/basic_string_view/operations/rfind/char/3.cc:
12988         Likewise.
12989         * unittests/basic_string_view/operations/substr/char/1.cc:
12990         Likewise.
12991         * unittests/basic_string_view/operators/char/2.cc: Likewise.
12992         * unittests/string_view-selftests.c: New file.
12993
12994 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12995
12996         * unittests/basic_string_view/capacity/1.cc: New file.
12997         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
12998         * unittests/basic_string_view/cons/char/1.cc: New file.
12999         * unittests/basic_string_view/cons/char/2.cc: New file.
13000         * unittests/basic_string_view/cons/char/3.cc: New file.
13001         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
13002         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
13003         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
13004         * unittests/basic_string_view/element_access/char/1.cc: New file.
13005         * unittests/basic_string_view/element_access/char/2.cc: New file.
13006         * unittests/basic_string_view/element_access/char/empty.cc: New file.
13007         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
13008         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
13009         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
13010         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
13011         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
13012         * unittests/basic_string_view/include.cc: New file.
13013         * unittests/basic_string_view/inserters/char/1.cc: New file.
13014         * unittests/basic_string_view/inserters/char/2.cc: New file.
13015         * unittests/basic_string_view/inserters/char/3.cc: New file.
13016         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
13017         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
13018         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
13019         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
13020         * unittests/basic_string_view/literals/types.cc: New file.
13021         * unittests/basic_string_view/literals/values.cc: New file.
13022         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
13023         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
13024         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
13025         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
13026         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
13027         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
13028         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
13029         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
13030         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
13031         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
13032         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
13033         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
13034         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
13035         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
13036         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
13037         * unittests/basic_string_view/operations/data/char/1.cc: New file.
13038         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
13039         * unittests/basic_string_view/operations/find/char/1.cc: New file.
13040         * unittests/basic_string_view/operations/find/char/2.cc: New file.
13041         * unittests/basic_string_view/operations/find/char/3.cc: New file.
13042         * unittests/basic_string_view/operations/find/char/4.cc: New file.
13043         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
13044         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
13045         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
13046         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
13047         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
13048         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
13049         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
13050         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
13051         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
13052         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
13053         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
13054         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
13055         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
13056         * unittests/basic_string_view/operators/char/2.cc: New file.
13057         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
13058         * unittests/basic_string_view/range_access/char/1.cc: New file.
13059         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
13060         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
13061         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
13062         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
13063         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
13064         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
13065         * unittests/basic_string_view/requirements/typedefs.cc: New file.
13066         * unittests/basic_string_view/typedefs.cc: New file.
13067         * unittests/basic_string_view/types/1.cc: New file.
13068
13069 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
13070
13071         * common/gdb_string_view.h: Remove libstdc++ implementation
13072         details, adjust to gdb reality.
13073         * common/gdb_string_view.tcc: Likewise.
13074         * cli/cli-script.c (struct string_view): Remove.
13075         (user_args) <m_args>: Change element type to gdb::string_view.
13076         (user_args::insert_args): Adjust.
13077
13078 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
13079
13080         * common/gdb_string_view.h: New file.
13081         * common/gdb_string_view.tcc: New file.
13082
13083 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
13084
13085         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
13086         * configure: Re-generate.
13087
13088 2018-04-09  Pedro Alves  <palves@redhat.com>
13089
13090         * gdbarch.sh: Include "observable.h" instead of "observer.h".
13091         (set_target_gdbarch): Call
13092         gdb::observers::architecture_changed.notify instead of
13093         observer_notify_architecture_changed.
13094
13095 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13096
13097         * tracepoint.c (struct current_traceframe_cleanup): Remove.
13098         (do_restore_current_traceframe_cleanup): Remove.
13099         (restore_current_traceframe_cleanup_dtor): Remove.
13100         (make_cleanup_restore_current_traceframe): Remove.
13101         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
13102         New.
13103         * tracepoint.h (struct scoped_restore_current_traceframe): New.
13104         * infrun.c (fetch_inferior_event): Use
13105         scoped_restore_current_traceframe.
13106
13107 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13108
13109         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
13110         Remove.
13111         <n_allocated_type_units>: Remove.
13112         <all_type_units>: Change to std::vector.
13113         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
13114         to std::vector change.
13115         (dwarf2_per_objfile::get_cutu): Likewise.
13116         (dwarf2_per_objfile::get_tu): Likewise.
13117         (create_signatured_type_table_from_index): Likewise.
13118         (create_signatured_type_table_from_debug_names): Likewise.
13119         (dw2_symtab_iter_next): Likewise.
13120         (dw2_print_stats): Likewise.
13121         (dw2_expand_all_symtabs): Likewise.
13122         (dw2_expand_marked_cus): Likewise.
13123         (dw2_debug_names_iterator::next): Likewise.
13124         (dwarf2_initialize_objfile): Likewise.
13125         (add_signatured_type_cu_to_table): Likewise.
13126         (create_all_type_units): Likewise.
13127         (add_type_unit): Likewise.
13128         (struct tu_abbrev_offset): Add constructor.
13129         (build_type_psymtabs_1): Adjust to std::vector change.
13130         (print_tu_stats): Likewise.
13131         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
13132         (write_debug_names): Likewise.
13133
13134 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13135
13136         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
13137         Make an std::vector.
13138         <n_comp_units>: Remove.
13139         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
13140         to std::vector change.
13141         (dwarf2_per_objfile::get_cutu): Likewise.
13142         (dwarf2_per_objfile::get_cu): Likewise.
13143         (create_cus_from_index): Likewise.
13144         (create_addrmap_from_index): Likewise.
13145         (create_addrmap_from_aranges): Likewise.
13146         (dwarf2_read_index): Likewise.
13147         (dw2_find_last_source_symtab): Likewise.
13148         (dw2_map_symtabs_matching_filename): Likewise.
13149         (dw2_symtab_iter_next): Likewise.
13150         (dw2_print_stats): Likewise.
13151         (dw2_expand_all_symtabs): Likewise.
13152         (dw2_expand_symtabs_with_fullname): Likewise.
13153         (dw2_expand_marked_cus): Likewise.
13154         (dw2_map_symbol_filenames): Likewise.
13155         (create_cus_from_debug_names): Likewise.
13156         (dwarf2_read_debug_names): Likewise.
13157         (dw2_debug_names_iterator::next): Likewise.
13158         (dwarf2_initialize_objfile): Likewise.
13159         (set_partial_user): Likewise.
13160         (dwarf2_build_psymtabs_hard): Likewise.
13161         (read_comp_units_from_section): Remove arguments, adjust to
13162         std::vector change.
13163         (create_all_comp_units): Adjust to std::vector and
13164         read_comp_units_from_section changes.
13165         (dwarf2_find_containing_comp_unit): Adjust to std::vector
13166         change.
13167         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
13168         (psyms_seen_size): Likewise.
13169         (write_gdbindex): Likewise.
13170         (write_debug_names): Likewise.
13171
13172 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13173
13174         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
13175         with dwarf2_per_objfile.
13176         (create_cus_from_index): Likewise.
13177         (create_signatured_type_table_from_index): Likewise.
13178         (dwarf2_read_index): Likewise.
13179         (dwarf2_initialize_objfile): Likewise.
13180         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
13181         per_cu rather than get_dwarf2_per_objfile.
13182
13183 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13184
13185         * dwarf2read.h (struct signatured_type): Forward declare.
13186         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
13187         New methods.
13188         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
13189         (dw2_get_cutu): ...this.
13190         (dwarf2_per_objfile::get_cu): Rename from...
13191         (dw2_get_cu): ...this.
13192         (dwarf2_per_objfile::get_tu): New.
13193         (create_addrmap_from_index): Adjust.
13194         (create_addrmap_from_aranges): Adjust.
13195         (dw2_find_last_source_symtab): Adjust.
13196         (dw2_map_symtabs_matching_filename): Adjust.
13197         (dw2_symtab_iter_next): Adjust.
13198         (dw2_print_stats): Adjust.
13199         (dw2_expand_all_symtabs): Adjust.
13200         (dw2_expand_symtabs_with_fullname): Adjust.
13201         (dw2_expand_marked_cus): Adjust.
13202         (dw_expand_symtabs_matching_file_matcher): Adjust.
13203         (dw2_map_symbol_filenames): Adjust.
13204         (dw2_debug_names_iterator::next): Adjust.
13205         (dwarf2_initialize_objfile): Adjust.
13206         (set_partial_user): Adjust.
13207         (dwarf2_build_psymtabs_hard): Adjust.
13208
13209 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13210
13211         * dwarf2read.c (create_signatured_type_table_from_debug_names):
13212         Remove unused variables.
13213         (dw2_map_symtabs_matching_filename): Likewise.
13214         (dwarf2_record_block_ranges): Likewise.
13215         (dwarf2_read_addr_index): Likewise.
13216         (follow_die_offset): Likewise.
13217
13218 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13219
13220         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
13221         to symbol_file_add_main.
13222
13223 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13224
13225         PR mi/22299
13226         * mi/mi-console.c (do_fputc_async_safe): New.
13227         (mi_console_file::write_async_safe): New.
13228         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
13229         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
13230         New.
13231         * ui-file.c (ui_file::putstrn): Adjust call to
13232         fputstrn_unfiltered.
13233         * utils.c (printchar): Replace do_fputs and do_fprintf
13234         parameters by do_fputc.
13235         (fputstr_filtered): Adjust call to printchar.
13236         (fputstr_unfiltered): Likewise.
13237         (fputstrn_filtered): Likewise.
13238         (fputstrn_unfiltered): Add do_fputc parameter, pass to
13239         printchar.
13240         * utils.h (do_fputc_ftype): New typedef.
13241         (fputstrn_unfiltered): Add do_fputc parameter.
13242
13243 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13244
13245         * regformats/i386/i386-avx.dat: Remove.
13246
13247 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13248
13249         PR gdb/22979
13250         * amd64-tdep.c (amd64_none_init_abi): New function.
13251         (amd64_x32_none_init_abi): New function.
13252         (_initialize_amd64_tdep): Register handlers for x86-64 and
13253         x64_32 with GDB_OSABI_NONE.
13254         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
13255         GDB_OSABI_NONE osabi.
13256
13257 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13258
13259         PR gdb/22980
13260         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
13261         GDB_OSABI_NONE.
13262         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
13263         * osabi.c (gdb_osabi_names): Add "unknown" entry.
13264
13265 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13266
13267         * common/byte-vector.h (char_vector): New type.
13268         * target.h (target_read_alloc): Return
13269         gdb::optional<byte_vector>.
13270         (target_read_stralloc): Return gdb::optional<char_vector>.
13271         (target_get_osdata): Return gdb::optional<char_vector>.
13272         * target.c (target_read_alloc_1): Templatize.  Replacement
13273         manual memory management with vector.
13274         (target_read_alloc): Change return type, adjust.
13275         (target_read_stralloc): Change return type, adjust.
13276         (target_get_osdata): Change return type, adjust.
13277         * auxv.c (struct auxv_info) <length>: Remove.
13278         <data>: Change type to gdb::optional<byte_vector>.
13279         (auxv_inferior_data_cleanup): Free auxv_info with delete.
13280         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
13281         (target_auxv_search): Adjust.
13282         (fprint_target_auxv): Adjust.
13283         * avr-tdep.c (avr_io_reg_read_command): Adjust.
13284         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
13285         (linux_make_corefile_notes): Adjust.
13286         * osdata.c (get_osdata): Adjust.
13287         * remote.c (remote_get_threads_with_qxfer): Adjust.
13288         (remote_memory_map): Adjust.
13289         (remote_traceframe_info): Adjust.
13290         (btrace_read_config): Adjust.
13291         (remote_read_btrace): Adjust.
13292         (remote_pid_to_exec_file): Adjust.
13293         * solib-aix.c (solib_aix_get_library_list): Adjust.
13294         * solib-dsbt.c (decode_loadmap): Don't free buf.
13295         (dsbt_get_initial_loadmaps): Adjust.
13296         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
13297         * solib-target.c (solib_target_current_sos): Adjust.
13298         * tracepoint.c (sdata_make_value): Adjust.
13299         * xml-support.c (xinclude_start_include): Adjust.
13300         (xml_fetch_content_from_file): Adjust.
13301         * xml-support.h (xml_fetch_another): Change return type.
13302         (xml_fetch_content_from_file): Change return type.
13303         * xml-syscall.c (xml_init_syscalls_info): Adjust.
13304         * xml-tdesc.c (file_read_description_xml): Adjust.
13305         (fetch_available_features_from_target): Change return type.
13306         (target_fetch_description_xml): Adjust.
13307         (target_read_description_xml): Adjust.
13308
13309 2018-04-06  Tom Tromey  <tom@tromey.com>
13310
13311         * value.c (~value): Update.
13312         (struct value) <contents>: Now unique_xmalloc_ptr.
13313         (value_contents_bits_eq, allocate_value_contents)
13314         (value_contents_raw, value_contents_all_raw)
13315         (value_contents_for_printing, value_contents_for_printing_const)
13316         (set_value_enclosing_type): Update.
13317
13318 2018-04-06  Tom Tromey  <tom@tromey.com>
13319
13320         * value.c (range_s): Remove typedef, VEC.
13321         (struct range): Add operator<.
13322         (range_lessthan): Remove.
13323         (ranges_contain): Change type.
13324         (~value): Update.
13325         (struct value) <unavailable, optimized_out>: Now std::vector.
13326         (value_entirely_available)
13327         (value_entirely_covered_by_range_vector)
13328         (value_entirely_unavailable, value_entirely_optimized_out):
13329         Update.
13330         (insert_into_bit_range_vector): Change argument type.
13331         (find_first_range_overlap): Likewise.
13332         (struct ranges_and_idx, value_contents_bits_eq)
13333         (require_not_optimized_out, require_available): Update.
13334         (ranges_copy_adjusted): Change argument types.
13335         (value_optimized_out, value_copy, value_fetch_lazy): Update.
13336
13337 2018-04-06  Tom Tromey  <tom@tromey.com>
13338
13339         * value.c (~value): Update.
13340         (struct value) <parent>: Now a value_ref_ptr.
13341         (value_parent, set_value_parent, value_address, value_copy):
13342         Update.
13343
13344 2018-04-06  Tom Tromey  <tom@tromey.com>
13345
13346         * value.c (struct value): Add constructor, destructor, and member
13347         initializers.
13348         (allocate_value_lazy, value_decref): Update.
13349
13350 2018-04-06  Tom Tromey  <tom@tromey.com>
13351
13352         * value.c (struct value) <released, next>: Remove.
13353         (all_values): Now a std::vector.
13354         (allocate_value_lazy): Update.
13355         (value_next): Remove.
13356         (value_mark, value_free_to_mark, release_value)
13357         (value_release_to_mark): Update.
13358
13359 2018-04-06  Tom Tromey  <tom@tromey.com>
13360
13361         * value.h (fetch_subexp_value, value_release_to_mark): Update.
13362         (free_value_chain): Remove.
13363         * value.c (free_value_chain): Remove.
13364         (value_release_to_mark): Return a std::vector.
13365         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
13366         std::vector.
13367         (check_condition): Update.
13368         * eval.c (fetch_subexp_value): Change "val_chain" to a
13369         std::vector.
13370         * breakpoint.c (update_watchpoint): Update.
13371         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
13372
13373 2018-04-06  Tom Tromey  <tom@tromey.com>
13374
13375         * value.h (free_all_values): Remove.
13376         * value.c (free_all_values): Remove.
13377
13378 2018-04-06  Tom Tromey  <tom@tromey.com>
13379
13380         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
13381         (value_history_chain, value_history_count): Remove.
13382         (value_history): New global.
13383         (record_latest_value, access_value_history, show_values)
13384         (preserve_values): Update.
13385
13386 2018-04-06  Tom Tromey  <tom@tromey.com>
13387
13388         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
13389         * varobj.c (varobj_set_display_format, varobj_set_value)
13390         (install_default_visualizer, construct_visualizer)
13391         (install_new_value, ~varobj, varobj_get_value_type)
13392         (my_value_of_variable, varobj_editable_p): Update.
13393         * c-varobj.c (c_describe_child, c_value_of_variable)
13394         (cplus_number_of_children, cplus_describe_child): Update.
13395         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
13396         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
13397         (ada_value_of_variable, ada_value_is_changeable_p): Update.
13398
13399 2018-04-06  Tom Tromey  <tom@tromey.com>
13400
13401         * printcmd.c (last_examine_address): Change type to
13402         value_ref_ptr.
13403         (do_examine, x_command): Update.
13404
13405 2018-04-06  Tom Tromey  <tom@tromey.com>
13406
13407         * value.c (release_value): Update.
13408         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
13409         (struct bpstats) <val>: Now a value_ref_ptr.
13410         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
13411         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
13412         (~watchpoint, print_it_watchpoint, watch_command_1)
13413         (invalidate_bp_value_on_memory_change): Update.
13414
13415 2018-04-06  Tom Tromey  <tom@tromey.com>
13416
13417         * varobj.c (varobj_clear_saved_item)
13418         (update_dynamic_varobj_children, install_new_value, ~varobj):
13419         Update.
13420         * value.h (value_incref): Move declaration earlier.
13421         (value_decref): Rename from value_free.
13422         (struct value_ref_policy): New.
13423         (value_ref_ptr): New typedef.
13424         (struct value_deleter): Remove.
13425         (gdb_value_up): Remove typedef.
13426         (release_value): Change return type.
13427         (release_value_or_incref): Remove.
13428         * value.c (set_value_parent): Update.
13429         (value_incref): Change return type.
13430         (value_decref): Rename from value_free.
13431         (value_free_to_mark, free_all_values, free_value_chain): Update.
13432         (release_value): Return value_ref_ptr.
13433         (release_value_or_incref): Remove.
13434         (record_latest_value, set_internalvar, clear_internalvar):
13435         Update.
13436         * stack.c (info_frame_command): Don't call value_free.
13437         * python/py-value.c (valpy_dealloc, valpy_new)
13438         (value_to_value_object): Update.
13439         * printcmd.c (do_examine): Update.
13440         * opencl-lang.c (lval_func_free_closure): Update.
13441         * mi/mi-main.c (register_changed_p): Don't call value_free.
13442         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
13443         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
13444         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
13445         value_free.
13446         * guile/scm-value.c (vlscm_free_value_smob)
13447         (vlscm_scm_from_value): Update.
13448         * frame.c (frame_register_unwind, frame_unwind_register_signed)
13449         (frame_unwind_register_unsigned, get_frame_register_bytes)
13450         (put_frame_register_bytes): Don't call value_free.
13451         * findvar.c (address_from_register): Don't call value_free.
13452         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
13453         * dwarf2loc.c (entry_data_value_free_closure)
13454         (value_of_dwarf_reg_entry, free_pieced_value_closure)
13455         (dwarf2_evaluate_loc_desc_full): Update.
13456         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
13457         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
13458         (~watchpoint, watch_command_1)
13459         (invalidate_bp_value_on_memory_change): Update.
13460         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
13461
13462 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
13463
13464         PR gdb/23022
13465         * warning.m4: Add -Wno-error=deprecated-register.
13466         * configure: Re-generate.
13467
13468 2018-04-05  Tom Tromey  <tom@tromey.com>
13469
13470         * linespec.h: Remove include of "vec.h".
13471
13472 2018-04-05  Tom Tromey  <tom@tromey.com>
13473
13474         * linespec.c (typep): Remove typedef.
13475         (find_methods, find_superclass_methods): Take a std::vector.
13476         (find_method): Use std::vector.
13477
13478 2018-04-05  Tom Tromey  <tom@tromey.com>
13479
13480         * utils.c (compare_strings): Remove.
13481         * utils.h (compare_strings): Remove.
13482         * objc-lang.h (find_imps): Update.
13483         * objc-lang.c (find_methods): Take a std::vector.
13484         (uniquify_strings, find_imps): Likewise.
13485         * linespec.c (find_methods): Take a std::vector.
13486         (decode_objc): Use std::vector.
13487         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
13488         a std::vector.
13489         (find_method, find_function_symbols): Use std::vector.
13490
13491 2018-04-05  Tom Tromey  <tom@tromey.com>
13492
13493         * completer.c (completion_tracker::completion_tracker): Remove
13494         cast.
13495         (completion_tracker::discard_completions): Likewise.
13496         * breakpoint.c (ambiguous_names_p): Remove cast.
13497         * ada-lang.c (_initialize_ada_language): Remove cast.
13498         * utils.h (streq): Update.
13499         (streq_hash): Add new declaration.
13500         * utils.c (streq): Return bool.
13501         (streq_hash): New function.
13502
13503 2018-04-05  Tom Tromey  <tom@tromey.com>
13504
13505         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
13506         Remove a string copy.
13507
13508 2018-04-05  Tom Tromey  <tom@tromey.com>
13509
13510         * linespec.c (filter_results): Use std::vector.
13511         (decode_line_2, decode_line_full): Update.
13512
13513 2018-04-05  Tom Tromey  <tom@tromey.com>
13514
13515         * linespec.c (canonical_to_fullform): Return std::string.
13516         (filter_results): Update.
13517         (struct decode_line_2_item): Add constructor.
13518         <fullform, displayform>: Now std::string.
13519         (decode_line_2_compare_items): Now a std::sort comparator.
13520         (decode_line_2): Update.
13521
13522 2018-04-05  Tom Tromey  <tom@tromey.com>
13523
13524         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
13525         (unexpected_linespec_error): Update.
13526         (linespec_parse_basic, parse_linespec): Update.
13527
13528 2018-04-05  Tom Tromey  <tom@tromey.com>
13529
13530         * linespec.c (linespec_parse_basic): Reindent.
13531
13532 2018-04-05  Tom Tromey  <tom@tromey.com>
13533
13534         * minsyms.h (iterate_over_minimal_symbols): Update.
13535         * minsyms.c (iterate_over_minimal_symbols): Take a
13536         gdb::function_view.
13537         * linespec.c (struct collect_minsyms): Remove.
13538         (compare_msyms): Now a std::sort comparator.
13539         (add_minsym): Add parameters.
13540         (search_minsyms_for_name): Update.  Use std::vector.
13541
13542 2018-04-03  Tom Tromey  <tom@tromey.com>
13543
13544         * mipsread.c (read_alphacoff_dynamic_symtab): Use
13545         gdb::byte_vector.
13546
13547 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13548
13549         * MAINTAINERS (Write After Approval): Add Weimin Pan.
13550
13551 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13552
13553         PR gdb/16959
13554         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
13555         printing static type.
13556
13557 2018-04-01  Tom Tromey  <tom@tromey.com>
13558
13559         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
13560         (rs6000_xfer_shared_libraries): Update.
13561
13562 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
13563
13564         * common/gdb_vecs.h (char_ptr): Remove.
13565         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
13566
13567 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13568
13569         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
13570         with std::vector.
13571         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
13572
13573 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13574
13575         * tracepoint.h (struct uploaded_tp): Initialize fields.
13576         <actions, step_actions, cmd_strings>: Change type to
13577         std::vector<char *>.
13578         * tracepoint.c (get_uploaded_tp): Allocate with new.
13579         (free_uploaded_tps): Free with delete.
13580         (parse_tracepoint_definition): Adjust to std::vector change.
13581         * breakpoint.c (read_uploaded_action): Likewise.
13582         (create_tracepoint_from_upload): Likewise.
13583         * ctf.c (ctf_write_uploaded_tp): Likewise.
13584         (SET_ARRAY_FIELD): Likewise.
13585         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
13586
13587 2018-03-30  Tom Tromey  <tom@tromey.com>
13588
13589         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
13590         std::unique_ptr.
13591         (svr4_keep_data_in_core): Update.
13592         (svr4_read_so_list): Update.
13593
13594 2018-03-30  Tom Tromey  <tom@tromey.com>
13595
13596         * windows-nat.c (handle_output_debug_string, handle_exception):
13597         Update.
13598         * target.h (target_read_string): Update.
13599         * target.c (target_read_string): Change "string" to
13600         unique_xmalloc_ptr.
13601         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
13602         Update.
13603         * solib-frv.c (frv_current_sos): Update.
13604         * solib-dsbt.c (dsbt_current_sos): Update.
13605         * solib-darwin.c (darwin_current_sos): Update.
13606         * linux-thread-db.c (inferior_has_bug): Update.
13607         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
13608         Update.  Remove alloca.
13609         * ada-lang.c (ada_main_name): Update.
13610
13611 2018-03-30  Tom Tromey  <tom@tromey.com>
13612
13613         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
13614         (struct dwo_file_deleter): New.
13615         (dwo_file_up): New typedef.
13616         (open_and_init_dwo_file): Use dwo_file_up.
13617         (free_dwo_file_cleanup): Remove.
13618
13619 2018-03-30  Tom Tromey  <tom@tromey.com>
13620
13621         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
13622         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
13623
13624 2018-03-30  Tom Tromey  <tom@tromey.com>
13625
13626         * dwarf2read.c (class free_cached_comp_units): New class.
13627         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
13628         (free_cached_comp_units): Remove function.
13629
13630 2018-03-30  Tom Tromey  <tom@tromey.com>
13631
13632         * utils.h (make_cleanup_unpush_target): Remove.
13633         * inf-ptrace.c (struct target_unpusher): New.
13634         (target_unpush_up) New typedef.
13635         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
13636         target_unpush_up.
13637         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
13638
13639 2018-03-27  Tom Tromey  <tom@tromey.com>
13640
13641         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
13642
13643 2018-03-27  Pedro Alves  <palves@redhat.com>
13644             Tom Tromey  <tom@tromey.com>
13645
13646         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
13647         destructor.  Now a class.
13648         (gdb_readline_wrapper_cleanup): Remove function.
13649         (gdb_readline_wrapper): Remove cleanups.
13650
13651 2018-03-27  Tom Tromey  <tom@tromey.com>
13652
13653         * typeprint.h (struct type_print_options) <local_typedefs,
13654         global_typedefs>: Remove "struct" keyword.
13655         (class typedef_hash_table): New class.
13656         (recursively_update_typedef_hash, add_template_parameters)
13657         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
13658         (find_typedef_in_hash): Don't declare.
13659         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
13660         (typedef_hash_table::recursively_update): Rename from
13661         recursively_update_typedef_hash.  Now a member.
13662         (typedef_hash_table::add_template_parameters): Rename from
13663         add_template_parameters.  Now a member.
13664         (typedef_hash_table::typedef_hash_table): Now a constructor;
13665         rename from create_typedef_hash.
13666         (typedef_hash_table::~typedef_hash_table): Now a destructor;
13667         rename from free_typedef_hash.
13668         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
13669         (do_free_global_table): Remove.
13670         (typedef_hash_table::typedef_hash_table): New constructor; renamed
13671         from copy_type_recursive.
13672         (create_global_typedef_table): Remove.
13673         (typedef_hash_table::find_global_typedef): Now a member of
13674         typedef_hash_table.
13675         (typedef_hash_table::find_typedef): Rename from
13676         find_typedef_in_hash; now a member.
13677         (whatis_exp): Update.
13678         * extension.h (struct ext_lang_type_printers): Add constructor and
13679         destructor.
13680         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
13681         declare.
13682         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
13683         Now a constructor; rename from start_ext_lang_type_printers.
13684         (ext_lang_type_printers): Now a destructor; rename from
13685         free_ext_lang_type_printers.
13686         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
13687         Update.
13688         (c_type_print_base_struct_union): Update.  Remove cleanups.
13689
13690 2018-03-27  Tom Tromey  <tom@tromey.com>
13691
13692         * dwarf-index-write.c: Include <cmath>.
13693
13694 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13695
13696         * NEWS: Add entry describing new "set|show varsize-limit" command.
13697         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
13698         command.
13699         * printcmd.c (_initialize_printcmd): Add "set var" alias of
13700         "set variable".
13701
13702 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
13703
13704         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
13705         dwarf-index-write.c
13706         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
13707         * dwarf-index-common.c: New file.
13708         * dwarf-index-common.h: New file.
13709         * dwarf-index-write.c: New file.
13710         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
13711         (struct dwarf2_section_info): Move from here.
13712         (dwarf2_section_info_def): Likewise.
13713         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
13714         (offset_type): Likewise.
13715         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
13716         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
13717         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
13718         (byte_swap): Likewise.
13719         (MAYBE_SWAP): Likewise.
13720         (dwarf2_per_cu_ptr): Likewise.
13721         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
13722         (struct tu_stats): Likewise.
13723         (struct dwarf2_per_objfile): Likewise.
13724         (struct dwarf2_per_cu_data): Likewise.
13725         (struct signatured_type): Likewise.
13726         (sig_type_ptr): Likewise.
13727         (DEF_VEC_P (sig_type_ptr)): Likewise.
13728         (INDEX4_SUFFIX): Likewise.
13729         (INDEX5_SUFFIX): Likewise.
13730         (DEBUG_STR_SUFFIX): Likewise.
13731         (dwarf2_read_section): Make non-static.
13732         (mapped_index_string_hash): Move from here.
13733         (dwarf5_djb_hash): Likewise.
13734         (file_write): Likewise.
13735         (class data_buf): Likewise.
13736         (struct symtab_index_entry): Likewise.
13737         (struct mapped_symtab): Likewise.
13738         (find_slot): Likewise.
13739         (hash_expand): Likewise.
13740         (add_index_entry): Likewise.
13741         (uniquify_cu_indices): Likewise.
13742         (class c_str_view): Likewise.
13743         (class c_str_view_hasher): Likewise.
13744         (class vector_hasher): Likewise.
13745         (write_hash_table): Likewise.
13746         (psym_index_map): Likewise.
13747         (struct addrmap_index_data): Likewise.
13748         (add_address_entry): Likewise.
13749         (add_address_entry_worker): Likewise.
13750         (write_address_map): Likewise.
13751         (symbol_kind): Likewise.
13752         (write_psymbols): Likewise.
13753         (struct signatured_type_index_data): Likewise.
13754         (write_one_signatured_type): Likewise.
13755         (recursively_count_psymbols): Likewise.
13756         (recursively_write_psymbols): Likewise.
13757         (class debug_names): Likewise.
13758         (check_dwarf64_offsets): Likewise.
13759         (psyms_seen_size): Likewise.
13760         (write_gdbindex): Likewise.
13761         (write_debug_names): Likewise.
13762         (assert_file_size): Likewise.
13763         (write_psymtabs_to_index): Likewise.
13764         (save_gdb_index_command): Likewise.
13765         (_initialize_dwarf2_read): Don't register the "save gdb-index"
13766         command.
13767         * dwarf2read.h: New file.
13768
13769 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13770
13771         PR gdb/22670
13772         * dwarf2read.c (dwarf2_physname): Do not return the demangled
13773         symbol name if the CU's language stores symbol names in linkage
13774         format.
13775         * language.h (struct language_defn)
13776         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
13777         all instances of this struct.
13778
13779 2018-03-26  Tom Tromey  <tom@tromey.com>
13780
13781         * stack.c (backtrace_command_1): Remove verbose code.
13782
13783 2018-03-26  Tom Tromey  <tom@tromey.com>
13784
13785         * python/py-framefilter.c (py_print_type): Don't catch
13786         exceptions.  Return void.
13787         (py_print_value): Likewise.
13788         (py_print_single_arg): Likewise.
13789         (enumerate_args): Don't catch exceptions.
13790         (py_print_args): Likewise.
13791         (py_print_frame): Likewise.
13792         (gdbpy_apply_frame_filter): Catch exceptions here.
13793
13794 2018-03-26  Tom Tromey  <tom@tromey.com>
13795
13796         * stack.c (_initialize_stack): Remove trailing newlines from help
13797         text.  Add "Usage" line to "backtrace" help.
13798
13799 2018-03-26  Tom Tromey  <tom@tromey.com>
13800
13801         PR python/16486:
13802         * python/py-framefilter.c (py_print_args): Call wrap_hint.
13803
13804 2018-03-26  Tom Tromey  <tom@tromey.com>
13805
13806         * python/py-framefilter.c (py_print_single_arg): Return
13807         EXT_LANG_BT_ERROR from catch.
13808
13809 2018-03-26  Tom Tromey  <tom@tromey.com>
13810
13811         PR backtrace/15584:
13812         * stack.c (backtrace_command_1): Move some code into no-filters
13813         "if".
13814
13815 2018-03-26  Tom Tromey  <tom@tromey.com>
13816
13817         * python/py-framefilter.c (throw_quit_or_print_exception): New
13818         function.
13819         (gdbpy_apply_frame_filter): Use it.
13820
13821 2018-03-26  Tom Tromey  <tom@tromey.com>
13822
13823         PR cli/17716:
13824         * python/py-framefilter.c (py_print_type, py_print_value)
13825         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
13826         RETURN_MASK_ERROR.
13827
13828 2018-03-26  Tom Tromey  <tom@tromey.com>
13829
13830         * python/py-framefilter.c (enumerate_args): Use
13831         gdb::unique_xmalloc_ptr.
13832
13833 2018-03-26  Tom Tromey  <tom@tromey.com>
13834
13835         * python/py-framefilter.c (py_print_frame): Return
13836         EXT_LANG_BT_OK.
13837         (gdbpy_apply_frame_filter): Update comment.
13838         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
13839         Remove.
13840         <EXT_LANG_BT_NO_FILTERS>: Change value.
13841
13842 2018-03-26  Tom Tromey  <tom@tromey.com>
13843
13844         PR backtrace/15582:
13845         * stack.c (backtrace_command): Parse "hide" argument.
13846         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
13847         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
13848         constant.
13849
13850 2018-03-26  Tom Tromey  <tom@tromey.com>
13851
13852         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
13853         add "flags".
13854         (backtrace_command): Remove "fulltrace", add "flags".
13855
13856 2018-03-26  Tom Tromey  <tom@tromey.com>
13857
13858         * stack.c (backtrace_command): Rewrite command line parsing.
13859
13860 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13861
13862         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
13863
13864 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13865
13866         * filename-seen-cache.h: Add include guard.
13867
13868 2018-03-26  Keith Seitz  <keiths@redhat.com>
13869
13870         * symfile.c (place_section): Remove "struct" from section_addr_info
13871         in comment.
13872         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
13873         "struct" keyword from section_addr_info.
13874
13875 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
13876
13877         * regformats/regdef.h (reg): Add constructors.
13878
13879 2018-03-25  Pedro Alves  <palves@redhat.com>
13880
13881         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
13882         if then/else bodies in var_func_name extraction.
13883
13884 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
13885
13886         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
13887         lookup_minimal_symbol() to find symbol entry.
13888         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
13889
13890 2018-03-23  Keith Seitz  <keiths@redhat.com>
13891
13892         PR c++/22968
13893         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
13894         nested type definitions for C++, too.
13895
13896 2018-03-23  Tom Tromey  <tom@tromey.com>
13897
13898         * machoread.c (struct oso_el): Add a constructor.  Don't define as
13899         a typedef.
13900         (macho_register_oso): Remove.
13901         (macho_symtab_read): Take a std::vector.
13902         (oso_el_compare_name): Now a std::sort comparator.
13903         (macho_symfile_read_all_oso): Take a std::vector.
13904         (macho_symfile_read): Use std::vector.  Remove cleanups.
13905
13906 2018-03-22  Tom Tromey  <tom@tromey.com>
13907
13908         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
13909         (record_full_goto_bookmark): Use std::string.
13910
13911 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13912
13913         PR tdep/18295
13914         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
13915         a single mask.
13916
13917 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13918
13919         * rs6000-tdep.c (store_insn_p): New function.
13920         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
13921         and cr_reg to their unshifted values. Use store_insn_p to
13922         match LR saves using either R1 or fdata->alloca_reg. Use
13923         store_insn_p to match CR saves. Set alloca_reg_offset
13924         when alloca_reg and framep are set. Remove lr_reg shift
13925         when assigning to fdata->lr_register.
13926
13927 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13928
13929         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
13930         command line args instead of emitting a warning.
13931
13932 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13933
13934         * tracepoint.h (struct static_tracepoint_marker): Initialize
13935         fields, define default constructor, move constructor and move
13936         assignment, disable the rest.
13937         <str_id, extra>: Make std::string.
13938         (release_static_tracepoint_marker): Remove.
13939         (free_current_marker): Remove.
13940         * tracepoint.c (free_current_marker): Remove.
13941         (parse_static_tracepoint_marker_definition): Adjust to
13942         std::string, use new hex2str overload.
13943         (release_static_tracepoint_marker): Remove.
13944         (print_one_static_tracepoint_marker): Get marker by reference
13945         and adjust to std::string.
13946         (info_static_tracepoint_markers_command): Adjust to std::vector
13947         changes
13948         * target.h (static_tracepoint_marker_p): Remove typedef.
13949         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
13950         (struct target_ops) <to_static_tracepoint_marker_at>: Return
13951         bool.
13952         <to_static_tracepoint_markers_by_strid>: Return std::vector.
13953         * target-debug.h
13954         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
13955         (target_debug_print_std_vector_static_tracepoint_marker): New.
13956         (target_debug_print_struct_static_tracepoint_marker_p): Rename
13957         to...
13958         (target_debug_print_static_tracepoint_marker_p): ... this.
13959         * target-delegates.c: Re-generate.
13960         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
13961         Make std::string.
13962         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
13963         (decode_static_tracepoint_spec): Adjust to std::vector.
13964         (tracepoint_print_one_detail): Adjust to std::string.
13965         (strace_marker_decode_location): Adjust to std::string.
13966         (update_static_tracepoint): Adjust to std::string, remove call
13967         to release_static_tracepoint_marker.
13968         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
13969         Adjust to std::vector.
13970         * remote.c (remote_static_tracepoint_marker_at): Return bool.
13971         (remote_static_tracepoint_markers_by_strid): Adjust to
13972         std::vector.
13973         * common/rsp-low.h (hex2str): New overload with explicit count
13974         of bytes.
13975         * common/rsp-low.c (hex2str): New overload with explicit count
13976         of bytes.
13977         * unittests/rsp-low-selftests.c (test_hex2str): New function.
13978         (_initialize_rsp_low_selftests): Add test_hex2str test.
13979         * unittests/tracepoint-selftests.c
13980         (test_parse_static_tracepoint_marker_definition): Adjust to
13981         std::string.
13982
13983 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13984
13985         * tracepoint.c (parse_static_tracepoint_marker_definition):
13986         Consider case where the definition is followed by more
13987         definitions.
13988         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13989         tracepoint-selftests.c.
13990         * unittests/tracepoint-selftests.c: New.
13991
13992 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13993
13994         * MAINTAINERS (Write After Approval): Add Pedro Franco de
13995         Carvalho.
13996
13997 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13998
13999         * symtab.c (find_pc_sect_line): fixed indentation.
14000
14001 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
14002
14003         * symtab.c (find_pc_sect_line): now uses binary search.
14004
14005 2018-03-19  Tom Tromey  <tom@tromey.com>
14006
14007         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
14008         "IDENT" production.
14009
14010 2018-03-19  Pedro Alves  <palves@redhat.com>
14011             Tom Tromey  <tom@tromey.com>
14012
14013         * unittests/observable-selftests.c: New file.
14014         * common/observable.h: New file.
14015         * observable.h: New file.
14016         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
14017         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
14018         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
14019         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
14020         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
14021         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
14022         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
14023         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
14024         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
14025         python/py-breakpoint.c, python/py-finishbreakpoint.c,
14026         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
14027         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
14028         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
14029         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
14030         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
14031         tui/tui-interp.c, valops.c: Update all users.
14032         * tui/tui-hooks.c (tui_bp_created_observer)
14033         (tui_bp_deleted_observer, tui_bp_modified_observer)
14034         (tui_inferior_exit_observer, tui_before_prompt_observer)
14035         (tui_normal_stop_observer, tui_register_changed_observer):
14036         Remove.
14037         (tui_observers_token): New global.
14038         (attach_or_detach, tui_attach_detach_observers): New functions.
14039         (tui_install_hooks, tui_remove_hooks): Use
14040         tui_attach_detach_observers.
14041         * record-btrace.c (record_btrace_thread_observer): Remove.
14042         (record_btrace_thread_observer_token): New global.
14043         * observer.sh: Remove.
14044         * observer.c: Rename to observable.c.
14045         * observable.c (namespace gdb_observers): Define new objects.
14046         (observer_debug): Move into gdb_observers namespace.
14047         (struct observer, struct observer_list, xalloc_observer_list_node)
14048         (xfree_observer_list_node, generic_observer_attach)
14049         (generic_observer_detach, generic_observer_notify): Remove.
14050         (_initialize_observer): Update.
14051         Don't include observer.inc.
14052         * Makefile.in (generated_files): Remove observer.h, observer.inc.
14053         (clean mostlyclean): Likewise.
14054         (observer.h, observer.inc): Remove targets.
14055         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
14056         (COMMON_SFILES): Use observable.c, not observer.c.
14057         * .gitignore: Remove observer.h.
14058
14059 2018-03-18  Tom Tromey  <tom@tromey.com>
14060
14061         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
14062         gdb::def_vector.
14063         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
14064
14065 2018-03-17  Tom Tromey  <tom@tromey.com>
14066
14067         * auto-load.c (auto_load_objfile_script_1): Use std::string.
14068
14069 2018-03-17  Tom Tromey  <tom@tromey.com>
14070
14071         * target.c (class scoped_target_fd): New.
14072         (target_fileio_close_cleanup): Remove.
14073         (target_fileio_read_alloc_1): Use scoped_target_fd.
14074
14075 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
14076
14077         * silent-rules.mk: New.
14078         * Makefile.in: Include silent-rules.mk
14079         (srcdir, VPATH, top_srcdir): Move up.
14080         (COMPILE): Add ECHO_CXX.
14081         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
14082         (init.c): Add ECHO_INIT_C.
14083         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
14084         (version.c): Add ECHO_GEN.
14085         (printcmd.o): Add ECHO_CXX.
14086         (target-float.o): Add ECHO_CXX.
14087         (ada-exp.o): Add ECHO_CXX.
14088         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
14089         (insight$(EXEEXT)): Add ECHO_CXXLD.
14090         * gnulib/configure.ac: Add AM_SILENT_RULES.
14091         * gnulib/aclocal.m4: Re-generate.
14092         * gnulib/configure: Re-generate.
14093         * gnulib/import/Makefile.in: Re-generate.
14094
14095 2018-03-16  Tom Tromey  <tom@tromey.com>
14096
14097         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
14098         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
14099         * utils.c (do_free_section_addr_info)
14100         (make_cleanup_free_section_addr_info): Remove.
14101         * symfile.h (struct other_sections): Add constructor.
14102         (struct section_addr_info): Remove.
14103         (section_addr_info): New typedef.
14104         (struct sym_fns) <sym_offsets>: Change type of parameter.
14105         (build_section_addr_info_from_objfile)
14106         (relative_addr_info_to_section_offsets, addr_info_make_relative)
14107         (default_symfile_offsets, symbol_file_add)
14108         (symbol_file_add_from_bfd)
14109         (build_section_addr_info_from_section_table): Update.
14110         (alloc_section_addr_info, free_section_addr_info): Don't declare.
14111         * symfile.c (alloc_section_addr_info): Remove.
14112         (build_section_addr_info_from_section_table): Change return type.
14113         Update.
14114         (build_section_addr_info_from_bfd)
14115         (build_section_addr_info_from_objfile): Likewise.
14116         (free_section_addr_info): Remove.
14117         (relative_addr_info_to_section_offsets): Change type of "addrs".
14118         (addrs_section_compar): Now a std::sort comparator.
14119         (addrs_section_sort): Change return type.
14120         (addr_info_make_relative): Change type of "addrs".  Update.
14121         (default_symfile_offsets, syms_from_objfile_1)
14122         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
14123         (symbol_file_add_separate): Update.
14124         (symbol_file_add): Change type of "addrs".  Update.
14125         (add_symbol_file_command): Update.  Remove cleanups.
14126         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
14127         cleanups.
14128         * symfile-debug.c (debug_sym_offsets): Change type of "info".
14129         * solib.c (solib_read_symbols): Update.
14130         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
14131         * machoread.c (macho_symfile_offsets): Update.
14132         * jit.c (jit_bfd_try_read_symtab): Update.
14133
14134 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
14135
14136         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14137         unittests/utils-selftests.c.
14138         * unittests/utils-selftests.c: New file.
14139
14140 2018-03-14  Tom Tromey  <tom@tromey.com>
14141
14142         PR cli/14977:
14143         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
14144         for NULL.
14145
14146 2018-03-14  Tom Tromey  <tom@tromey.com>
14147
14148         PR cli/19918:
14149         * printcmd.c (printf_pointer): Allow "-" in format.
14150
14151 2018-03-14  Tom Tromey  <tom@tromey.com>
14152
14153         * printcmd.c (_initialize_printcmd): Add usage to printf.
14154
14155 2018-03-14  Yao Qi  <qiyao@sourceware.org>
14156
14157         * MAINTAINERS: Update my email address.
14158
14159 2018-03-13  Tom Tromey  <tom@tromey.com>
14160
14161         * machoread.c (macho_check_dsym): Change filenamep to a
14162         std::string*.
14163         (macho_symfile_read): Update.
14164         * symfile.c (load_command): Use std::string.
14165
14166 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
14167
14168         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
14169         to error message string.
14170         (riscv_register_name): Use xsnprintf instead of sprintf.
14171         (riscv_insn::fetch_instruction): Use gdb_assert instead of
14172         internal_error.
14173         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
14174         error.
14175         (riscv_push_dummy_call): Likewise.
14176
14177 2018-03-12  Tom Tromey  <tom@tromey.com>
14178
14179         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
14180         Use gdb::byte_vector.
14181         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
14182
14183 2018-03-12  Yao Qi  <yao.qi@linaro.org>
14184
14185         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
14186         parameter type to readable_regcache.
14187         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
14188         the declaration.
14189
14190 2018-03-11  Tom Tromey  <tom@tromey.com>
14191
14192         * dwarf2read.c (struct nextfield): Add initializers.
14193         (struct nextfnfield): Remove.
14194         (struct fnfieldlist): Add initializers.  Remove "length" and
14195         "head", use std::vector.
14196         (struct decl_field_list): Remove.
14197         (struct field_info): Add initializers.
14198         <fields, baseclasses>: Now std::vector.
14199         <nbaseclasses, nfnfields, typedef_field_list_count,
14200         nested_types_list_count>: Remove.
14201         (dwarf2_add_field, dwarf2_add_type_defn)
14202         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
14203         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
14204         (process_structure_scope): Update.
14205
14206 2018-03-11  Tom Tromey  <tom@tromey.com>
14207
14208         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
14209         for use by std::sort.
14210         (build_type_psymtabs_1): Use std::vector.
14211
14212 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
14213
14214         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
14215         and LIBMPFR in the printed configuration.
14216
14217 2018-03-08  Tom Tromey  <tom@tromey.com>
14218
14219         * source.c (get_filename_and_charpos): Use scoped_fd.
14220         * nto-procfs.c (procfs_open_1): Use scoped_fd.
14221         (procfs_pidlist): Likewise.
14222         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
14223         (iterate_over_mappings): Likewise.
14224
14225 2018-03-08  Tom Tromey  <tom@tromey.com>
14226
14227         * infcall.c (struct call_return_meta_info)
14228         <stack_temporaries_enabled>: Remove.
14229         (get_call_return_value, call_function_by_hand_dummy): Update.
14230         * thread.c (disable_thread_stack_temporaries): Remove.
14231         (enable_thread_stack_temporaries): Remove.
14232         (thread_stack_temporaries_enabled_p): Return bool.
14233         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
14234         (get_last_thread_stack_temporary): Update.
14235         * eval.c (evaluate_subexp): Update.
14236         * gdbthread.h (class enable_thread_stack_temporaries): Now a
14237         class, not a function.
14238         (value_ptr, value_vec): Remove typedefs.
14239         (class thread_info) <stack_temporaries_enabled>: Now bool.
14240         <stack_temporaries>: Now a std::vector.
14241         (thread_stack_temporaries_enabled_p)
14242         (value_in_thread_stack_temporaries): Return bool.
14243
14244 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
14245
14246         * remote.c (putpkt_binary): Fix omitted bytes reporting.
14247         (getpkt_or_notif_sane_1): Likewise.
14248
14249 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14250
14251         * build-id.c (build_id_to_debug_bfd): Use std::string.
14252
14253 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14254
14255         * build-id.c (find_separate_debug_file_by_buildid): Return
14256         std::string.
14257         * build-id.h (find_separate_debug_file_by_buildid): Return
14258         std::string.
14259         * coffread.c (coff_symfile_read): Adjust to std::string.
14260         * elfread.c (elf_symfile_read): Adjust to std::string.
14261         * symfile.c (separate_debug_file_exists): Change parameter to
14262         std::string.
14263         (find_separate_debug_file): Return std::string.
14264         (find_separate_debug_file_by_debuglink): Return std::string.
14265         * symfile.h (find_separate_debug_file_by_debuglink): Return
14266         std::string.
14267
14268 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14269
14270         * common/xml-utils.c (xml_escape_text): Move code to...
14271         (xml_escape_text_append): ... this new function.
14272         * common/xml-utils.h (xml_escape_text_append): New declaration.
14273         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
14274         New function.
14275         (_initialize_xml_utils): register test_xml_escape_text_append as
14276         a selftest.
14277
14278 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
14279
14280         * defs.h: Remove MAX_REGISTER_SIZE.
14281         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
14282         asserts.
14283         * python/py-unwind.c (pyuw_sniffer): Likewise.
14284
14285 2018-03-07  Tom Tromey  <tom@tromey.com>
14286
14287         * linux-tdep.c (linux_info_proc): Update.
14288         * target.h (struct target_ops) <to_fileio_readlink>: Return
14289         optional<string>.
14290         (target_fileio_readlink): Return optional<string>.
14291         * remote.c (remote_hostio_readlink): Return optional<string>.
14292         * inf-child.c (inf_child_fileio_readlink): Return
14293         optional<string>.
14294         * target.c (target_fileio_readlink): Return optional<string>.
14295
14296 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
14297
14298         * regcache.c (cooked_read_test): Add riscv to the list of
14299         architectures that have a save_reggroup.
14300
14301 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14302
14303         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
14304         value is not a dynamic class object.
14305
14306 2018-03-06  Tom Tromey  <tom@tromey.com>
14307
14308         * rust-exp.y: Formatting fixes.
14309
14310 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14311
14312         * riscv-tdep.c (riscv_register_name): Remove target description
14313         support.
14314         (riscv_gdbarch_init): Remove target description check.
14315
14316 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14317
14318         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
14319         comment.
14320         * riscv-tdep.h: Likewise.
14321
14322 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14323
14324         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
14325         (riscv_pseudo_register_write): Delete.
14326         (riscv_gdbarch_init): Remove all use of pseudo registers.
14327
14328 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14329
14330         * record-btrace.c (btrace_print_lines): Replace cleanup
14331         parameter with RAII equivalents.
14332         (btrace_insn_history): Replace cleanup with RAII equivalents.
14333         * ui-out.h (make_cleanup_ui_out_list_begin_end,
14334         make_cleanup_ui_out_tuple_begin_end): Remove.
14335         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
14336         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
14337         make_cleanup_ui_out_list_begin_end): Remove.
14338
14339 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14340
14341         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
14342         parameter types to std::vector.  Use bool.
14343         (record_btrace_wait): Replace VEC(tp_t) with
14344         std::vector<thread_info *>.
14345         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
14346
14347 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14348
14349         * record-btrace.c (record_btrace_disable_callback): Remove.
14350         (struct scoped_btrace_disable): New.
14351         (record_btrace_open): Use scoped_btrace_disable.
14352
14353 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14354
14355         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
14356         reading values from registers.
14357
14358 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14359
14360         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
14361         where appropriate.
14362
14363 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14364
14365         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
14366         change parameter type.  Use GDB's print functions, and use
14367         core_addr_to_string where appropriate.
14368         (riscv_push_dummy_call): Use core_addr_to_string where
14369         appropriate, update call to riscv_print_arg_location, and reindent
14370         a few lines.
14371         (riscv_return_value): Update call to riscv_print_arg_location.
14372
14373 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14374             Tim Newsome <tim@sifive.com>
14375             Albert Ou <a0u@eecs.berkeley.edu>
14376             Darius Rad <darius@bluespec.com>
14377
14378         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
14379         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
14380         (ALLDEPFILES): Add riscv-tdep.c
14381         * configure.tgt: Add riscv support.
14382         * riscv-tdep.c: New file.
14383         * riscv-tdep.h: New file.
14384         * NEWS: Mention new target.
14385         * MAINTAINERS: Add entry for riscv.
14386
14387 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14388
14389         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
14390         fields within aggregates.
14391
14392 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
14393
14394         * record-btrace.c (btrace_print_lines): Change type of flags to
14395         gdb_disassembly_flags.
14396
14397 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14398
14399         * fbsd-nat.c: Include "inf-ptrace.h".
14400         (USE_SIGTRAP_SIGINFO): Conditionally define.
14401         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
14402         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
14403         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
14404         function.
14405         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
14406         Likewise.
14407         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
14408         Likewise.
14409         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
14410         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
14411         "supports_stopped_by_hw_breakpoint" target methods.
14412
14413 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14414
14415         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
14416         * fbsd-nat.c (debug_fbsd_nat): New variable.
14417         (show_fbsd_nat_debug): New function.
14418         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
14419         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
14420
14421 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14422
14423         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
14424         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
14425         prototype.
14426         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
14427         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
14428         method.
14429
14430 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14431
14432         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
14433         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
14434
14435 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14436
14437         * charset.c (struct charset_vector): New.
14438         (charsets): Change type to charset_vector.
14439         (find_charset_names): Adjust.
14440         (add_one): Adjust.
14441         (_initialize_charset): Adjust.
14442
14443 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14444
14445         * progspace.h (struct program_space) <deleted_solibs>: Change
14446         type to std::vector<std::string>.
14447         * progspace.c (clear_program_space_solib_cache): Adjust.
14448         * breakpoint.c (print_solib_event): Adjust.
14449         (check_status_catch_solib): Adjust.
14450         * solib.c (update_solib_list): Adjust.
14451         * ui-out.h (class ui_out) <field_string>: New overload.
14452         * ui-out.c (ui_out::field_string): New overload.
14453
14454 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14455
14456         * progspace.h (struct program_space): Add constructor and
14457         destructor, initialize fields.
14458         (add_program_space): Remove.
14459         * progspace.c (add_program_space): Rename to...
14460         (program_space::program_space): ... this.
14461         (release_program_space): Rename to...
14462         (program_space::~program_space): ... this.
14463         (delete_program_space): Use delete to delete program_space.
14464         (initialize_progspace): Use new to allocate program_space.
14465         * inferior.c (add_inferior_with_spaces): Likewise.
14466         (clone_inferior_command): Likewise.
14467         * infrun.c (follow_fork_inferior): Likewise.
14468         (handle_vfork_child_exec_or_exit): Likewise.
14469
14470 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14471
14472         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
14473         (delim_string_to_char_ptr_vec): Return std::vector of
14474         gdb::unique_xmalloc_ptr.
14475         (dirnames_to_char_ptr_vec_append): Take std::vector of
14476         gdb::unique_xmalloc_ptr.
14477         (dirnames_to_char_ptr_vec): Return std::vector of
14478         gdb::unique_xmalloc_ptr.
14479         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
14480         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
14481         (delim_string_to_char_ptr_vec): Return an std::vector of
14482         gdb::unique_xmalloc_ptr, adjust the code.
14483         (dirnames_to_char_ptr_vec_append): Take an std::vector of
14484         gdb::unique_xmalloc_ptr, adjust the code.
14485         (dirnames_to_char_ptr_vec): Return an std::vector of
14486         gdb::unique_xmalloc_ptr, adjust the code.
14487         * auto-load.c (auto_load_safe_path_vec): Change type to
14488         std::vector of gdb::unique_xmalloc_ptr.
14489         (auto_load_expand_dir_vars): Return an std::vector of
14490         gdb::unique_xmalloc_ptr, adjust the code.
14491         (auto_load_safe_path_vec_update): Adjust.
14492         (filename_is_in_auto_load_safe_path_vec): Adjust.
14493         (auto_load_objfile_script_1): Adjust.
14494         * build-id.c (build_id_to_debug_bfd): Adjust.
14495         * linux-thread-db.c (thread_db_load_search): Adjust.
14496         * source.c (add_path): Adjust.
14497         (openp): Adjust.
14498         * symfile.c (find_separate_debug_file): Adjust.
14499         * utils.c (do_free_char_ptr_vec): Remove.
14500         (make_cleanup_free_char_ptr_vec): Remove.
14501
14502 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
14503
14504         PR gdb/22907
14505         * common/pathstuff.c: Conditionally include "<windows.h>".
14506
14507 2018-03-01  Georg Sauthoff  <mail@georg.so>
14508
14509         PR gdb/22888
14510         * gcore.in: Quote variables and switch interpreter to bash.
14511
14512 2018-03-01  Tom Tromey  <tom@tromey.com>
14513
14514         * dwarf2read.c (alloc_discriminant_info): Fix default_index
14515         assertion.  Add assertion for discriminant_index.
14516         (quirk_rust_enum): Use correct base type name in univariant case.
14517
14518 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
14519
14520         * record.c (get_call_history_modifiers): Return a
14521         record_print_flags.
14522         (cmd_record_call_history): Adjust.
14523         * record-btrace.c (record_btrace_call_history): Adjust.
14524         (record_btrace_call_history_range): Adjust.
14525         (record_btrace_call_history_from): Adjust.
14526         * target-debug.h (target_debug_print_record_print_flags): New.
14527         * target-delegates.c: Re-generate.
14528         * target.c (target_call_history): Change flags type.
14529         (target_call_history_from): Likewise.
14530         (target_call_history_range): Likewise.
14531         * target.h (struct target_ops) <target_call_history>: Likewise.
14532         (target_call_history_from): Likewise.
14533         (target_call_history_range): Likewise.
14534
14535 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14536             Simon Marchi  <simon.marchi@polymtl.ca>
14537
14538         * common/common-utils.c: Include "sys/stat.h".
14539         (is_regular_file): Move here from "source.c"; change return
14540         type to "bool".
14541         * common/common-utils.h (is_regular_file): New prototype.
14542         * common/pathstuff.c (contains_dir_separator): New function.
14543         * common/pathstuff.h (contains_dir_separator): New prototype.
14544         * source.c: Don't include "sys/stat.h".
14545         (is_regular_file): Move to "common/common-utils.c".
14546
14547 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14548
14549         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
14550         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
14551         * auto-load.c: Include "common/pathstuff.h".
14552         * common/common-def.h (current_directory): Move here.
14553         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
14554         function.
14555         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
14556         prototype.
14557         * common/pathstuff.c: New file.
14558         * common/pathstuff.h: New file.
14559         * compile/compile.c: Include "common/pathstuff.h".
14560         * defs.h (current_directory): Move to "common/common-defs.h".
14561         * dwarf2read.c: Include "common/pathstuff.h".
14562         * exec.c: Likewise.
14563         * guile/scm-safe-call.c: Likewise.
14564         * linux-thread-db.c: Likewise.
14565         * main.c: Likewise.
14566         * nto-tdep.c: Likewise.
14567         * objfiles.c: Likewise.
14568         * source.c: Likewise.
14569         * symtab.c: Likewise.
14570         * utils.c: Include "common/pathstuff.h".
14571         (gdb_realpath): Move to "common/pathstuff.c".
14572         (gdb_realpath_keepfile): Likewise.
14573         (gdb_abspath): Likewise.
14574         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
14575         (gdb_realpath_keepfile): Likewise.
14576         (gdb_abspath): Likewise.
14577
14578 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
14579
14580         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
14581         wildcard process pid for super_resume for kernels with a
14582         specific bug.
14583
14584 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
14585
14586         * compile/compile.c (get_args): Add additional comments
14587         explaining function.
14588
14589 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
14590             Tom Tromey  <tom@tromey.com>
14591
14592         * target.h (memory_write_request_s): Remove typedef.  Don't define
14593         VEC.
14594         (target_write_memory_blocks): Change argument to std::vector.
14595         (struct memory_write_request): Add constructor.
14596         * target-memory.c (compare_block_starting_address): Return bool.
14597         Change argument types.
14598         (claim_memory): Change arguments to use std::vector.
14599         (split_regular_and_flash_blocks, blocks_to_erase)
14600         (compute_garbled_blocks): Likewise.
14601         (cleanup_request_data, cleanup_write_requests_vector): Remove.
14602         (target_write_memory_blocks): Change argument to std::vector.
14603         * symfile.c (struct load_section_data): Add constructor and
14604         destructor.  Use std::vector for "requests".
14605         (struct load_progress_data): Add initializers.
14606         (load_section_callback): Update.  Use "new".
14607         (clear_memory_write_data): Remove.
14608         (generic_load): Update.
14609
14610 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
14611
14612         * arch/aarch64.h: Use common/tdesc.h.
14613
14614 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14615
14616         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
14617         architecture with a 64-bit ABI.
14618
14619 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14620
14621         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
14622         ahead of target description loading.
14623
14624 2018-02-26  Tom Tromey  <tom@tromey.com>
14625
14626         * stack.c (backtrace_command_1): Update.
14627         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
14628         of "flags".
14629         * python/py-framefilter.c (py_print_frame)
14630         (gdbpy_apply_frame_filter): Change type of "flags".
14631         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
14632         of "flags".
14633         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
14634         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
14635         * extension.h (enum frame_filter_flag): Rename from
14636         frame_filter_flags.
14637         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
14638         (apply_ext_lang_frame_filter): Change type of "flags".
14639         * extension.c (apply_ext_lang_frame_filter): Change type of
14640         "flags".
14641         * extension-priv.h (struct extension_language_ops)
14642         <apply_frame_filter>: Change type of "flags".
14643
14644 2018-02-26  Tom Tromey  <tom@tromey.com>
14645
14646         PR python/16497:
14647         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
14648         off-by-one in py_end computation.
14649         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
14650         PRINT_MORE_FRAMES.
14651         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
14652         constant.
14653
14654 2018-02-26  Tom Tromey  <tom@tromey.com>
14655
14656         * dwarf2read.c (struct variant_field): New.
14657         (struct nextfield) <variant>: New field.
14658         (dwarf2_add_field): Handle DW_TAG_variant_part.
14659         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
14660         discriminated union.
14661         (read_structure_type): Handle DW_TAG_variant_part.
14662         (handle_struct_member_die): New function, extracted from
14663         process_structure_scope.  Handle DW_TAG_variant.
14664         (process_structure_scope): Handle discriminated unions.  Call
14665         handle_struct_member_die.
14666
14667 2018-02-26  Tom Tromey  <tom@tromey.com>
14668
14669         * rust-lang.h (rust_last_path_segment): Declare.
14670         * rust-lang.c (rust_last_path_segment): Now public.  Change
14671         contract.
14672         (struct disr_info): Remove.
14673         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
14674         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
14675         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
14676         (rust_enum_p, rust_enum_variant): New function.
14677         (rust_underscore_fields): Remove "offset" parameter.
14678         (rust_print_enum): New function.
14679         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
14680         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
14681         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
14682         enums.
14683         (rust_internal_print_type): New function, from rust_print_type.
14684         Remove enum code.
14685         (rust_print_type): Call rust_internal_print_type.
14686         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
14687         Update enum handling.
14688         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
14689         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
14690         (rust_union_quirks): New functions.
14691         (process_full_comp_unit, process_full_type_unit): Call
14692         rust_union_quirks.
14693         (process_structure_scope): Update rust_unions if necessary.
14694
14695 2018-02-26  Tom Tromey  <tom@tromey.com>
14696
14697         * value.h (value_union_variant): Declare.
14698         * valops.c (value_union_variant): New function.
14699         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
14700         (struct discriminant_info): New.
14701         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
14702         enumerator.
14703         (struct main_type) <flag_discriminated_union>: New field.
14704
14705 2018-02-26  Tom Tromey  <tom@tromey.com>
14706
14707         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14708         unittests/unpack-selftests.c.
14709         * unittests/unpack-selftests.c: New file.
14710         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
14711
14712 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14713
14714         * dwarf2read.c (struct partial_die_info) <read>: New method.
14715         (read_partial_die): Remove the declaration.
14716         (load_partial_dies): Update.
14717         (partial_die_info::partial_die_info):
14718         (read_partial_die): Change it to partial_die_info::read.
14719
14720 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14721
14722         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
14723         (fixup_partial_die): Remove declaration.
14724         (scan_partial_symbols): Update.
14725         (partial_die_parent_scope): Likewise.
14726         (partial_die_full_name): Likewise.
14727         (fixup_partial_die): Change it to partial_die_info::fixup.
14728
14729 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14730
14731         * dwarf2read.c (read_partial_die): Update the declaration.
14732         (load_partial_dies): Caller update.
14733         (read_partial_die): Remove one argument abbrev_len.
14734
14735 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14736
14737         * dwarf2read.c (struct partial_die_info): Add ctor, delete
14738         assignment operator.
14739         (load_partial_dies): Use ctor and copy ctor.
14740         (read_partial_die): Update.
14741         (dwarf2_cu::find_partial_die): Use ctor.
14742
14743 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14744
14745         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
14746         (find_partial_die_in_comp_unit): Change it to
14747         dwarf2_cu::find_partial_die.
14748         (find_partial_die): Update.
14749
14750 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14751
14752         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
14753         is NULL.
14754
14755 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14756
14757         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
14758
14759 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
14760
14761         * arch/amd64.h: Use common/tdesc.h.
14762         * arch/i386.c: Likewise.
14763         * arch/i386.h: Likewise.
14764         * arch/tic6x.c: Likewise.
14765         * arch/tdesc.h: Move file from here...
14766         * common/tdesc.h: ...to here.
14767         * features/aarch64-core.c: Regenerate.
14768         * features/aarch64-fpu.c: Regenerate.
14769         * features/i386/32bit-avx.c: Regenerate.
14770         * features/i386/32bit-avx512.c: Regenerate.
14771         * features/i386/32bit-core.c: Regenerate.
14772         * features/i386/32bit-linux.c: Regenerate.
14773         * features/i386/32bit-mpx.c: Regenerate.
14774         * features/i386/32bit-pkeys.c: Regenerate.
14775         * features/i386/32bit-sse.c: Regenerate.
14776         * features/i386/64bit-avx.c: Regenerate.
14777         * features/i386/64bit-avx512.c: Regenerate.
14778         * features/i386/64bit-core.c: Regenerate.
14779         * features/i386/64bit-linux.c: Regenerate.
14780         * features/i386/64bit-mpx.c: Regenerate.
14781         * features/i386/64bit-pkeys.c: Regenerate.
14782         * features/i386/64bit-segments.c: Regenerate.
14783         * features/i386/64bit-sse.c: Regenerate.
14784         * features/i386/x32-core.c: Regenerate.
14785         * features/tic6x-c6xp.c: Regenerate.
14786         * features/tic6x-core.c: Regenerate.
14787         * features/tic6x-gp.c: Regenerate.
14788         * target-descriptions.c: Use common/tdesc.h.
14789         * target-descriptions.h: Likewise.
14790
14791 2018-02-24  Tom Tromey  <tom@tromey.com>
14792
14793         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
14794         (try_thread_db_load_from_dir, thread_db_load_search): Use
14795         std::string.
14796         (info_auto_load_libthread_db_compare): Return bool.  Change
14797         argument types.
14798         (info_auto_load_libthread_db): Use std::vector, std::string.
14799         Remove cleanups.
14800
14801 2018-02-24  Tom Tromey  <tom@tromey.com>
14802
14803         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
14804         std::string.
14805         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
14806         std::string*.
14807         * gdbarch.c: Rebuild.
14808         * gdbarch.h: Rebuild.
14809         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
14810         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
14811         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
14812         std::string*.
14813
14814 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
14815
14816         * gdbtypes.h (sect_offset): Change type to uint64_t.
14817         (sect_offset_str): New function.
14818         * dwarf2read.c (create_addrmap_from_aranges): Use
14819         sect_offset_str.
14820         (error_check_comp_unit_head): Likewise.
14821         (create_debug_type_hash_table): Likewise.
14822         (read_cutu_die_from_dwo): Likewise.
14823         (init_cutu_and_read_dies): Likewise.
14824         (init_cutu_and_read_dies_no_follow): Likewise.
14825         (process_psymtab_comp_unit_reader): Likewise.
14826         (partial_die_parent_scope): Likewise.
14827         (peek_die_abbrev): Likewise.
14828         (process_queue): Likewise.
14829         (dwarf2_physname): Likewise.
14830         (read_namespace_alias): Likewise.
14831         (read_import_statement): Likewise.
14832         (create_dwo_cu_reader): Likewise.
14833         (create_cus_hash_table): Likewise.
14834         (lookup_dwo_cutu): Likewise.
14835         (inherit_abstract_dies): Likewise.
14836         (read_func_scope): Likewise.
14837         (read_call_site_scope): Likewise.
14838         (dwarf2_add_member_fn): Likewise.
14839         (read_common_block): Likewise.
14840         (read_module_type): Likewise.
14841         (read_typedef): Likewise.
14842         (read_subrange_type): Likewise.
14843         (load_partial_dies): Likewise.
14844         (read_partial_die): Likewise.
14845         (find_partial_die): Likewise.
14846         (read_str_index): Likewise.
14847         (dwarf2_string_attr): Likewise.
14848         (build_error_marker_type): Likewise.
14849         (lookup_die_type): Likewise.
14850         (dump_die_shallow): Likewise.
14851         (follow_die_ref): Likewise.
14852         (dwarf2_fetch_die_loc_sect_off): Likewise.
14853         (dwarf2_fetch_constant_bytes): Likewise.
14854         (follow_die_sig): Likewise.
14855         (get_signatured_type): Likewise.
14856         (get_DW_AT_signature_type): Likewise.
14857         (dwarf2_find_containing_comp_unit): Likewise.
14858         (set_die_type): Likewise.
14859
14860 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
14861
14862         * arch/aarch64.c: Include "common-defs.h".
14863         * arch/amd64.c: Likewise.
14864         * arch/i386.c: Likewise.
14865
14866 2018-02-21  Tom Tromey  <tom@tromey.com>
14867
14868         * value.h: (extract_field_op): Update.
14869         * eval.c (extract_field_op): Return a const char *.
14870         * expression.h (parse_expression_for_completion): Update.
14871         * completer.c (complete_expression): Update.
14872         (add_struct_fields): Make fieldname const.
14873         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
14874         (mark_completion_tag, parse_exp_in_context_1): Update.
14875         (parse_expression_for_completion): Change "name" to
14876         unique_xmalloc_ptr*.
14877
14878 2018-02-21  Tom Tromey  <tom@tromey.com>
14879
14880         * infcall.c (call_function_by_hand_dummy): Use std::vector.
14881
14882 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14883
14884         * avr-tdep.c (avr_read_pc): Change parameter type to
14885         readable_regcache.
14886         * gdbarch.sh (read_pc): Likewise.
14887         * gdbarch.c: Re-generated.
14888         * gdbarch.h: Re-generated.
14889         * hppa-tdep.c (hppa_read_pc): Change parameter type to
14890         readable_regcache.
14891         * ia64-tdep.c (ia64_read_pc): Likewise.
14892         * mips-tdep.c (mips_read_pc): Likewise.
14893         * spu-tdep.c (spu_read_pc): Likewise.
14894
14895 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14896
14897         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
14898         * regcache-dump.c: New file.
14899         * regcache.c: Move register_dump to regcache-dump.c.
14900         (maintenance_print_registers): Likewise.
14901         (maintenance_print_raw_registers): Likewise.
14902         (maintenance_print_cooked_registers): Likewise.
14903         (maintenance_print_register_groups): Likewise.
14904         (maintenance_print_remote_registers): Likewise.
14905         (_initialize_regcache): Likewise.
14906         * regcache.h (register_dump): Moved from regcache.c.
14907
14908 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14909
14910         * regcache.c (regcache::regcache): Update.
14911         (regcache::invalidate): Move it to detached_regcache::invalidate.
14912         (get_thread_arch_aspace_regcache): Update.
14913         (regcache::raw_update): Update.
14914         (regcache::cooked_read): Remove some code.
14915         (regcache::cooked_read_value): Likewise.
14916         (regcache::raw_write): Remove assert on m_readonly_p.
14917         (regcache::raw_supply_integer): Move it to
14918         detached_regcache::raw_supply_integer.
14919         (regcache::raw_supply_zeroed): Likewise.
14920         * regcache.h (detached_regcache) <raw_supply_integer>: New
14921         declaration.
14922         <raw_supply_zeroed, invalidate>: Likewise.
14923         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
14924         <invalidate>: Likewise.
14925         <m_readonly_p>: Removed.
14926
14927 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14928
14929         * infcmd.c (get_return_value): Let stop_regs point to
14930         get_current_regcache.
14931         * regcache.c (regcache::regcache): Remove.
14932         (register_dump_reg_buffer): New class.
14933         (regcache_print): Adjust.
14934         * regcache.h (regcache): Remove constructors.
14935
14936 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14937
14938         * regcache.c (class register_dump): New class.
14939         (register_dump_regcache, register_dump_none): New class.
14940         (register_dump_remote, register_dump_groups): New class.
14941         (regcache_print): Update.
14942         * regcache.h (regcache_dump_what): Move it to regcache.c.
14943         (regcache) <dump>: Remove.
14944
14945 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14946
14947         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
14948          reg_buffer_rw *.
14949         (jit_unwind_reg_set_impl): Call raw_supply.
14950         (jit_frame_sniffer): Use reg_buffer_rw.
14951         * record-full.c (record_full_core_regbuf): Change its type.
14952         (record_full_core_open_1): Use reg_buffer_rw.
14953         (record_full_close): Likewise.
14954         (record_full_core_fetch_registers): Use regcache->raw_supply.
14955         (record_full_core_store_registers): Likewise.
14956         * regcache.c (regcache::get_register_status): Move it to
14957         reg_buffer.
14958         (regcache_raw_set_cached_value): Remove.
14959         (regcache::raw_set_cached_value): Remove.
14960         (regcache::raw_write): Call raw_supply.
14961         (regcache::raw_supply): Move it to reg_buffer_rw.
14962         * regcache.h (regcache_raw_set_cached_value): Remove.
14963         (reg_buffer_rw): New class.
14964
14965 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14966
14967         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
14968         readonly_detached_regcache.
14969         (dummy_frame_prev_register): Use regcache->cooked_read.
14970         * frame.c (frame_save_as_regcache): Change return type.
14971         (frame_pop): Update.
14972         * frame.h (frame_save_as_regcache): Update declaration.
14973         * inferior.h (get_infcall_suspend_state_regcache): Update
14974         declaration.
14975         * infrun.c (infcall_suspend_state) <registers>: use
14976         readonly_detached_regcache.
14977         (save_infcall_suspend_state): Don't use regcache_dup.
14978         (get_infcall_suspend_state_regcache): Change return type.
14979         * linux-fork.c (struct fork_info) <savedregs>: Change to
14980         readonly_detached_regcache.
14981         <pc>: New field.
14982         (fork_save_infrun_state): Don't use regcache_dup.
14983         (info_checkpoints_command): Adjust.
14984         * mi/mi-main.c (register_changed_p): Update declaration.
14985         (mi_cmd_data_list_changed_registers): Use
14986         readonly_detached_regcache.
14987         (register_changed_p): Change parameter type to
14988         readonly_detached_regcache.
14989         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
14990         readonly_detached_regcache.
14991         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
14992         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
14993         New.
14994         (regcache::save): Move it to reg_buffer.
14995         (regcache::restore): Change parameter type.
14996         (regcache_dup): Remove.
14997         * regcache.h (reg_buffer) <save>: New method.
14998         (readonly_detached_regcache): New class.
14999         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
15000         readonly_detached_regcache.
15001         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
15002
15003 2018-02-21  Yao Qi  <yao.qi@linaro.org>
15004
15005         * frame.c (frame_save_as_regcache): Use regcache method save.
15006         (frame_pop): Use regcache method restore.
15007         * infrun.c (restore_infcall_suspend_state): Likewise.
15008         * linux-fork.c (fork_load_infrun_state): Likewise.
15009         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
15010         save.
15011         * regcache.c (regcache_save): Remove.
15012         (regcache::restore): More asserts.
15013         (regcache_cpy): Remove.
15014         * regcache.h (regcache_save): Remove the declaration.
15015         (regcache::restore): Move from private to public.
15016         Remove the friend declaration of regcache_cpy.
15017         (regcache_cpy): Remove declaration.
15018
15019 2018-02-21  Yao Qi  <yao.qi@linaro.org>
15020
15021         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
15022         parameter type to 'readable_regcache *'.
15023         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
15024         * arm-tdep.c (arm_neon_quad_read): Likewise.
15025         (arm_pseudo_read): Likewise.
15026         * avr-tdep.c (avr_pseudo_register_read): Likewise.
15027         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
15028         * frv-tdep.c (frv_pseudo_register_read): Likewise.
15029         * gdbarch.c: Re-generated.
15030         * gdbarch.h: Re-generated.
15031         * gdbarch.sh (pseudo_register_read): Change parameter type to
15032         'readable_regcache *'.
15033         (pseudo_register_read_value): Likewise.
15034         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
15035         (h8300_pseudo_register_read): Likewise.
15036         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
15037         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
15038         (i386_pseudo_register_read_into_value): Likewise.
15039         (i386_pseudo_register_read_value): Likewise.
15040         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
15041         declaration.
15042         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
15043         * m32c-tdep.c (m32c_raw_read): Likewise.
15044         (m32c_read_flg): Likewise.
15045         (m32c_banked_register): Likewise.
15046         (m32c_banked_read): Likewise.
15047         (m32c_sb_read): Likewise.
15048         (m32c_part_read): Likewise.
15049         (m32c_cat_read): Likewise.
15050         (m32c_r3r2r1r0_read): Likewise.
15051         (m32c_pseudo_register_read): Likewise.
15052         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
15053         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
15054         (mep_pseudo_cr64_read): Likewise.
15055         (mep_pseudo_register_read): Likewise.
15056         * mips-tdep.c (mips_pseudo_register_read): Likewise.
15057         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
15058         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
15059         * regcache.c (regcache::raw_read): Move it to readable_regcache.
15060         (regcache::cooked_read): Likewise.
15061         (regcache::cooked_read_value): Likewise.
15062         (regcache_cooked_read_signed):
15063         (regcache::cooked_read): Likewise.
15064         * regcache.h (readable_regcache): New class.
15065         (regcache): Inherit readable_regcache.  Move some methods to
15066         readable_regcache.
15067         * rl78-tdep.c (rl78_pseudo_register_read): Change
15068         parameter type to 'readable_regcache *'.
15069         * rs6000-tdep.c (do_regcache_raw_read): Remove.
15070         (e500_pseudo_register_read): Change parameter type to
15071         'readable_regcache *'.
15072         (dfp_pseudo_register_read): Likewise.
15073         (vsx_pseudo_register_read): Likewise.
15074         (efpr_pseudo_register_read): Likewise.
15075         * s390-tdep.c (s390_pseudo_register_read): Likewise.
15076         * sh-tdep.c (sh_pseudo_register_read): Likewise.
15077         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
15078         (sh64_pseudo_register_read): Likewise.
15079         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
15080         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
15081         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
15082         (spu_pseudo_register_read): Likewise.
15083         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
15084         (xtensa_pseudo_register_read): Likewise.
15085
15086 2018-02-21  Yao Qi  <yao.qi@linaro.org>
15087
15088         * regcache.c (regcache::regcache): Call reg_buffer ctor.
15089         (regcache::arch): Move it to reg_buffer::arch.
15090         (regcache::register_buffer): Likewise.
15091         (regcache::assert_regnum): Likewise.
15092         (regcache::num_raw_registers): Likewise.
15093         * regcache.h (reg_buffer): New class.
15094         (regcache): Inherit reg_buffer.
15095
15096 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
15097
15098         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
15099         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
15100
15101 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
15102
15103         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
15104
15105 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
15106
15107         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
15108         (SFILES): Remove common/*.c files.
15109         (COMMON_OBS): Remove some *.o files built from common/*.c files.
15110         * common/common.host: Add common reference.
15111         * configure.ac: Likewise.
15112         * configure: Regenerate.
15113
15114 2018-02-16  Yao Qi  <yao.qi@linaro.org>
15115
15116         * block.c (block_namespace_info): Inherit allocate_on_obstack.
15117         (block_initialize_namespace): Use new.
15118         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
15119         (dwarf2_free_objfile): Use delete.
15120         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
15121         (copy_type_recursive): Use new.
15122         * gdb_obstack.h (allocate_on_obstack): New.
15123
15124 2018-02-15  Yao Qi  <yao.qi@linaro.org>
15125
15126         PR gdb/22849
15127         * inferior.c (exit_inferior_1): Reset inf->control.
15128
15129 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
15130
15131         * ada-lang.c (ada_to_fixed_value_create): Delete advance
15132         declaration.
15133
15134 2018-02-14  Pedro Alves  <palves@redhat.com>
15135
15136         * frame-unwind.c (frame_unwind_try_unwinder): Always call
15137         frame_cleanup_after_sniffer on exception.
15138
15139 2018-02-14  Tom Tromey  <tom@tromey.com>
15140
15141         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
15142         const.
15143         (solib_bfd_open): Make pathname const.
15144         * solib.c (solib_bfd_open): Make pathname const.
15145         * solib-spu.c (spu_bfd_fopen): Make name const.
15146         (spu_bfd_open): Make pathname const.
15147         * solib-darwin.c (darwin_bfd_open): Make pathname const.
15148         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
15149
15150 2018-02-14  Tom Tromey  <tom@tromey.com>
15151
15152         * symfile.c (symfile_bfd_open): Update.
15153         * source.h (openp, source_full_path_of, find_and_open_source):
15154         Change argument type to unique_xmalloc_ptr.
15155         * source.c (openp): Take a unique_xmalloc_ptr.
15156         (source_full_path_of, find_and_open_source): Likewise.
15157         (open_source_file, symtab_to_fullname): Update.
15158         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
15159         unique_xmalloc_ptr.
15160         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
15161         (exec_file_find): Update.
15162         * psymtab.c (psymtab_to_fullname): Update.
15163         * nto-tdep.h (nto_find_and_open_solib): Update.
15164         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
15165         unique_xmalloc_ptr.
15166         * exec.c (exec_file_attach): Update.
15167         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
15168         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
15169
15170 2018-02-14  Tom Tromey  <tom@tromey.com>
15171
15172         * solib.c: Include source.h.
15173         * nto-tdep.c: Include source.h.
15174         * mi/mi-cmd-env.c: Include source.h.
15175         * infcmd.c: Include source.h.
15176         * exec.c: Include source.h.
15177         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
15178         (add_path, directory_switch, source_path, init_source_path): Move
15179         declarations...
15180         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
15181         (add_path, directory_switch, source_path, init_source_path):
15182         ...here.
15183
15184 2018-02-14  Tom Tromey  <tom@tromey.com>
15185
15186         * solist.h (exec_file_find, solib_find): Return
15187         unique_xmalloc_ptr.
15188         (solib_bfd_fopen): Take a const char *.
15189         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
15190         (exec_file_find, solib_find): Likewise.
15191         (solib_bfd_fopen): Do not take ownership of "pathname".
15192         (solib_bfd_open): Use unique_xmalloc_ptr.
15193         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
15194         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
15195         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
15196         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
15197
15198 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
15199
15200         * ada-lang.c (name_match_type_from_name): Remove reference to
15201         ada_name_for_lookup in function's documentation.
15202         * ada-lang.h (ada_name_for_lookup): Delete declaration.
15203
15204 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
15205
15206         * defs.h (enum openp_flags): New enum.
15207         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
15208         Move to enum openp_flags.
15209         (openp_flags): New enum flags.
15210         (openp): Change parameter type to openp_flags.
15211         * source.c (openp): Change parameter type to openp_flags.
15212         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
15213         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
15214
15215 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
15216
15217         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
15218         per-command.
15219
15220 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
15221
15222         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
15223         into...
15224         (class dwarf2_queue_guard): ...the destructor of this new class.
15225         (dw2_do_instantiate_symtab): Create instance of the new class
15226         dwarf2_queue_guard, remove cleanup.
15227
15228 2018-02-09  Tom Tromey  <tom@tromey.com>
15229
15230         * source.c (find_source_lines): Don't reference past the end of
15231         the vector.
15232
15233 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15234
15235         * remote.c (remote_btrace_maybe_reopen): Change error message.
15236         * btrace.c (btrace_enable): Likewise.
15237         (parse_xml_btrace): Likewise.
15238         (parse_xml_btrace_conf): Likewise.
15239
15240 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15241
15242         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
15243         (linux_enable_pt, linux_enable_bts): Call
15244         diagnose_perf_event_open_fail.
15245
15246 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15247
15248         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
15249         Remove parameter and change return type.  Update callers.  Move it.
15250         (linux_enable_bts, linux_enable_pt): Improve error message.
15251         (linux_enable_pt): Remove zero buffer size check.
15252         (linux_enable_btrace): Improve error messages.  Remove NULL return
15253         check.
15254
15255 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15256
15257         * btrace.c (btrace_enable): Remove target_supports_btrace call.
15258         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
15259         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
15260         (linux_supports_pt, linux_supports_btrace): Remove.
15261         (linux_enable_bts): Call cpu_supports_bts.
15262         * nat/linux-btrace.h (linux_supports_btrace): Remove.
15263         * remote.c (remote_supports_btrace): Remove.
15264         (init_remote_ops): Remove remote_supports_btrace.
15265         * target-delegates.c: Regenerated.
15266         * target.c (target_supports_btrace): Remove.
15267         * target.h (target_ops) <to_supports_btrace>: Remove
15268         (target_supports_btrace): Remove.
15269         * x86-linux-nat.c (x86_linux_create_target): Remove
15270         linux_supports_btrace.
15271
15272 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15273
15274         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
15275         btrace failed.
15276         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
15277         exception and use message in own exception.
15278
15279 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15280
15281         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
15282         (perf_event_pt_event_type): Use gdb_file_up.
15283         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
15284         scoped_fd, and scoped_mmap.
15285
15286 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15287
15288         * common/scoped_mmap.h: New.
15289         * unittests/scoped_mmap-selftest.c: New.
15290         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
15291         unittests/scoped_mmap-selftest.c.
15292
15293 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15294
15295         * common/scoped_fd.h: New.
15296         * unittests/scoped_fd-selftest.c: New.
15297         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
15298         unittests/scoped_fd-selftest.c.
15299
15300 2018-02-09  Tom Tromey  <tom@tromey.com>
15301
15302         * auto-load.c (auto_load_section_scripts): Use
15303         gdb::unique_xmalloc_ptr.
15304
15305 2018-02-09  Tom Tromey  <tom@tromey.com>
15306
15307         * auto-load.c (execute_script_contents): Use std::string.
15308
15309 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
15310
15311         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
15312         Python function, rather than a new command.
15313
15314 2018-02-08  Tom Tromey  <tom@tromey.com>
15315
15316         * solib.c (solib_find_1): Use std::string.
15317         (solib_bfd_fopen): Use unique_xmalloc_ptr.
15318
15319 2018-02-08  Tom Tromey  <tom@tromey.com>
15320
15321         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
15322
15323 2018-02-08  Tom Tromey  <tom@tromey.com>
15324
15325         * source.c (find_source_lines): Use gdb::def_vector.
15326
15327 2018-02-08  Tom Tromey  <tom@tromey.com>
15328
15329         * macrocmd.c (struct temporary_macro_definition): New.
15330         (macro_define_command): Use temporary_macro_definition.  Remove
15331         cleanups.
15332         (free_macro_definition_ptr): Remove.
15333
15334 2018-02-08  Tom Tromey  <tom@tromey.com>
15335
15336         * macroexp.c (maybe_expand): Use std::string.
15337
15338 2018-02-08  Tom Tromey  <tom@tromey.com>
15339
15340         * macroexp.c (struct macro_buffer): Add initializers for some
15341         members.
15342         (init_buffer, init_shared_buffer, free_buffer)
15343         (free_buffer_return_text): Remove.
15344         (macro_buffer): New constructors.
15345         (~macro_buffer): New destructor.
15346         (macro_buffer::set_shared): New method.
15347         (macro_buffer::resize_buffer, macro_buffer::appendc)
15348         (macro_buffer::appendmem): Now methods, not free functions.
15349         (set_token, append_tokens_without_splicing, stringify)
15350         (macro_stringify): Update.
15351         (gather_arguments): Change return type.  Remove argc_p argument,
15352         add args_ptr argument.  Use std::vector.
15353         (substitute_args): Remove argc argument.  Accept std::vector.
15354         (expand): Update.  Use std::vector.
15355         (scan, macro_expand, macro_expand_next): Update.
15356
15357 2018-02-08  Tom Tromey  <tom@tromey.com>
15358
15359         * symtab.c (default_collect_symbol_completion_matches_break_on):
15360         Use unique_xmalloc_ptr.
15361         * macroscope.h: (sal_macro_scope, user_macro_scope)
15362         (default_macro_scope): Return unique_xmalloc_ptr.
15363         * macroscope.c (sal_macro_scope, user_macro_scope)
15364         (default_macro_scope): Return unique_xmalloc_ptr.
15365         * macroexp.h (macro_expand, macro_expand_once): Return
15366         unique_xmalloc_ptr.
15367         * macroexp.c (macro_expand, macro_expand_once): Return
15368         unique_xmalloc_ptr.
15369         * macrocmd.c (macro_expand_command, macro_expand_once_command)
15370         (info_macro_command, info_macros_command): Use
15371         unique_xmalloc_ptr.
15372         * compile/compile-c-support.c (write_macro_definitions): Use
15373         unique_xmalloc_ptr.
15374         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
15375
15376 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
15377
15378         * value.c (value_static_field): Assign field type instead of
15379         containing type when returning an optimized out value.
15380
15381 2018-02-06  Yao Qi  <yao.qi@linaro.org>
15382
15383         * ft32-tdep.c (ft32_read_pc): Remove.
15384         (ft32_write_pc): Remove.
15385         (ft32_gdbarch_init): Update.
15386         * m32r-tdep.c (m32r_read_pc): Remove.
15387         (m32r_gdbarch_init): Update.
15388         * mep-tdep.c (mep_read_pc): Remove.
15389         (mep_gdbarch_init): Update.
15390         * microblaze-tdep.c (microblaze_write_pc): Remove.
15391         (microblaze_gdbarch_init): Update.
15392         * mn10300-tdep.c (mn10300_read_pc): Remove.
15393         (mn10300_write_pc): Remove.
15394         (mn10300_gdbarch_init): Update.
15395         * moxie-tdep.c (moxie_read_pc): Remove.
15396         (moxie_write_pc): Remove.
15397         (moxie_gdbarch_init): Update.
15398
15399 2018-02-06  Yao Qi  <yao.qi@linaro.org>
15400
15401         * expprint.c (print_subexp_standard): Handle
15402         OP_F77_UNDETERMINED_ARGLIST.
15403         (dump_subexp_body_standard): Likewise.
15404
15405 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
15406
15407         * target-descriptions.c (tdesc_element_visitor) Add empty
15408         implementations.
15409         (tdesc_type): Move make_gdb_type from here.
15410         (tdesc_type_builtin): Likewise.
15411         (tdesc_type_vector): Likewise.
15412         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
15413         (make_gdb_type_struct): Move from tdesc_type_with_fields.
15414         (make_gdb_type_union): Likewise.
15415         (make_gdb_type_flags): Likewise.
15416         (make_gdb_type_enum): Likewise.
15417         (make_gdb_type): New function.
15418         (tdesc_register_type): Use static make_gdb_type.
15419
15420 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
15421
15422         * infcmd.c (default_print_one_register_info): Align natural-format
15423         column values consistently one under another.
15424         (pad_to_column): New function.
15425
15426 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
15427
15428         * dwarf2read.c (dwarf2_physname): Move commment.
15429
15430 2018-02-01  Leszek Swirski  <leszeks@google.com>
15431
15432         * varobj.c (varobj_formatted_print_options): Allow recursive
15433         pretty printing if pretty printing is enabled.
15434
15435 2018-02-01  Leszek Swirski  <leszeks@google.com>
15436
15437         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
15438         names after a structop as a filename.
15439
15440 2018-02-01  Yao Qi  <yao.qi@linaro.org>
15441
15442         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
15443         (arm_record_coproc_data_proc): Likewise.
15444
15445 2018-02-01  Yao Qi  <yao.qi@linaro.org>
15446
15447         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
15448
15449 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
15450
15451         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
15452         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
15453
15454 2018-01-31  Pedro Alves  <palves@redhat.com>
15455
15456         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
15457         * inflow.c (child_terminal_save_inferior): Wrap reference to
15458         tcgetpgrp in HAVE_TERMIOS_H.
15459         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
15460         _WIN32.
15461         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
15462         always iterate over all inferiors.
15463         (gdbsim_cntrl_c): Adjust.
15464         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
15465
15466 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15467
15468         * gdbtypes.c (lookup_array_range_type): Make sure the array's
15469         index type is objfile-owned if the element type is as well.
15470
15471 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15472
15473         GDB 8.1 released.
15474
15475 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15476
15477         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
15478         "features/s390x-linux64.c".
15479         (_initialize_s390_linux_tdep): Remove initialization of tdescs
15480         s390_linux32 and s390x_linux64.
15481         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
15482         default tdesc.
15483         * s390-tdep.c: Include "features/s390-linux32.c" and
15484         "features/s390x-linux64.c".
15485         (s390_tdesc_valid): Add check for tdesc_has_registers.
15486         (s390_gdbarch_init): Make sure there is always a valid tdesc.
15487         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
15488         tdesc_s390x_linux64.
15489         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
15490         tdesc_s390x_linux64 to...
15491         * s390-tdep.h: ...here.
15492
15493 2018-01-30  Pedro Alves  <palves@redhat.com>
15494
15495         PR gdb/13211
15496         * config.in, configure: Regenerate.
15497         * configure.ac: Check for getpgid.
15498         * go32-nat.c (go32_pass_ctrlc): New.
15499         (go32_target): Install it.
15500         * inf-child.c (inf_child_target): Install
15501         child_terminal_save_inferior, child_pass_ctrlc and
15502         child_interrupt.
15503         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
15504         (inf_ptrace_target): No longer install it.
15505         * infcmd.c (interrupt_target_1): Adjust.
15506         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
15507         (child_interrupt): Declare.
15508         (inferior::terminal_state): New.
15509         * inflow.c (struct terminal_info): Update comments.
15510         (inferior_process_group): Delete.
15511         (terminal_is_ours): Delete.
15512         (gdb_tty_state): New.
15513         (child_terminal_init): Adjust.
15514         (is_gdb_terminal, sharing_input_terminal_1)
15515         (sharing_input_terminal): New functions.
15516         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
15517         Set the process's actual process group in the foreground if
15518         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
15519         mark terminal as the inferior's if not sharing GDB's terminal.
15520         Don't check attach_flag.
15521         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
15522         pass down a target_terminal_state.
15523         (child_terminal_save_inferior): New, factored out from ...
15524         (child_terminal_ours_1): ... this.  Handle
15525         target_terminal_state::is_ours_for_output.
15526         (child_interrupt, child_pass_ctrlc): New.
15527         (inflow_inferior_exit): Clear the inferior's terminal_state.
15528         (copy_terminal_info): Copy the inferior's terminal state.
15529         (_initialize_inflow): Remove reference to terminal_is_ours.
15530         * inflow.h (inferior_process_group): Delete.
15531         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
15532         * procfs.c (procfs_target): Don't install procfs_interrupt.
15533         (procfs_interrupt): Delete.
15534         * remote.c (remote_serial_quit_handler): Adjust.
15535         (remote_interrupt): Remove ptid parameter.  Adjust.
15536         * target-delegates.c: Regenerate.
15537         * target.c: Include "terminal.h".
15538         (target_terminal::terminal_state): Rename to ...
15539         (target_terminal::m_terminal_state): ... this.
15540         (target_terminal::init): Adjust.
15541         (target_terminal::inferior): Adjust to per-inferior
15542         terminal_state.
15543         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
15544         (target_terminal::ours, target_terminal::ours_for_output): Use
15545         target_terminal_is_ours_kind.
15546         (target_interrupt): Remove ptid parameter.  Adjust.
15547         (default_target_pass_ctrlc): Adjust.
15548         * target.h (target_ops::to_terminal_save_inferior): New field.
15549         (target_ops::to_interrupt): Remove ptid_t parameter.
15550         (target_interrupt): Remove ptid_t parameter.  Update comment.
15551         (target_pass_ctrlc): Update comment.
15552         * target/target.h (target_terminal_state): New scoped enum,
15553         factored out of ...
15554         (target_terminal::terminal_state): ... here.
15555         (target_terminal::inferior): Update comments.
15556         (target_terminal::restore_inferior): New.
15557         (target_terminal::is_inferior, target_terminal::is_ours)
15558         (target_terminal::is_ours_for_output): Adjust.
15559         (target_terminal::scoped_restore_terminal_state): Adjust to
15560         rename, and call restore_inferior() instead of inferior().
15561         (target_terminal::scoped_restore_terminal_state::m_state): Change
15562         type.
15563         (target_terminal::terminal_state): Rename to ...
15564         (target_terminal::m_terminal_state): ... this and change type.
15565
15566 2018-01-30  Pedro Alves  <palves@redhat.com>
15567
15568         * linux-nat.c (wait_for_signal): New function.
15569         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
15570         directly.
15571         (async_terminal_is_ours)
15572         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
15573         (linux_nat_add_target): Don't override
15574         to_terminal_inferior/to_terminal_ours.
15575
15576 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
15577
15578         * remote.c (remote_follow_fork): Don't call "detach_inferior".
15579
15580 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
15581
15582         * dwarf2read.c (free_dwo_files): Add forward-declaration.
15583         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
15584         dwarf2_per_objfile_free here.
15585         (dwarf2_per_objfile_free): Remove.
15586         (_initialize_dwarf2_read): Don't register
15587         dwarf2_per_objfile_free as a registry cleanup.
15588
15589 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
15590
15591         Avoid compilation errors in MinGW native builds
15592
15593         The error is triggered by including python-internal.h, and the
15594         error message is:
15595
15596              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
15597                       from build-gnulib/import/math.h:27,
15598                       from d:/usr/Python26/include/pyport.h:235,
15599                       from d:/usr/Python26/include/Python.h:58,
15600                       from python/python-internal.h:94,
15601                       from python/py-arch.c:24:
15602              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
15603         using ::hypot;
15604                 ^~~~~
15605
15606         This happens because Python headers define 'hypot' to expand t
15607         '_hypot' in the Windows builds.
15608         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
15609         'hypoth'.  This avoids a compilation error.
15610
15611 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15612
15613         * MAINTAINERS (Write After Approval): Fix ordering.
15614
15615 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15616
15617         * MAINTAINERS (Write After Approval): Add Alan Hayward.
15618
15619 2018-01-26  Alan Modra  <amodra@gmail.com>
15620
15621         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
15622         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
15623         Remove nop.  Make const.  Comment.
15624         (powerpc32_plt_stub_so_2): New.
15625         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
15626         Correct count.  Update uses.
15627         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
15628         Move common code reading PLT entry word.  Correct
15629         powerpc32_plt_stub PLT address calculation.
15630         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
15631         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
15632         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
15633         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
15634         (ppc64_standard_linkage8): Likewise.
15635         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
15636         Correct insns description.
15637         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
15638
15639 2018-01-24  Pedro Alves  <palves@redhat.com>
15640
15641         GCC PR libstdc++/83906
15642         * gdbtypes.c (operator==(const dynamic_prop &,
15643         const dynamic_prop &)): New.
15644         (operator==(const range_bounds &, const range_bounds &)): New.
15645         (check_types_equal): Use them instead of memcmp.
15646         * gdbtypes.h (operator==(const dynamic_prop &,
15647         const dynamic_prop &)): Declare.
15648         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
15649         (operator==(const range_bounds &, const range_bounds &)): Declare.
15650         (operator!=(const range_bounds &, const range_bounds &)): Declare.
15651
15652 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15653
15654         * s390-linux-tdep.c (s390_record_address_mask)
15655         (s390_record_calc_disp_common, s390_record_calc_disp)
15656         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15657         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15658         (s390_process_record): Move to s390-tdep.c.
15659         (s390_linux_init_abi_any): Adjust.
15660         * s390-tdep.c (s390_record_address_mask)
15661         (s390_record_calc_disp_common, s390_record_calc_disp)
15662         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15663         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15664         (s390_process_record): Moved from s390-linux-tdep.c
15665         (s390_gdbarch_init): Adjust.
15666
15667 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15668
15669         * s390-linux-nat.c (s390-tdep.h): New include.
15670         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
15671         (HFILES_NO_SRCDIR): Add s390-tdep.h.
15672         (ALLDEPFILES): Add s390-tdep.c.
15673         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
15674         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
15675         * s390-tdep.h: ...this.  New file.
15676         * s390-linux-tdep.c (s390-tdep.h): New include.
15677         (_initialize_s390_tdep): Rename to...
15678         (_initialize_s390_linux_tdep): ...this and adjust.
15679         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
15680         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
15681         s390-tdep.h.
15682         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
15683         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
15684         (s390_is_partial_instruction, s390_software_single_step)
15685         (is_non_branch_ril, s390_displaced_step_copy_insn)
15686         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
15687         (s390_prologue_data, s390_addr, s390_store, s390_load)
15688         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
15689         (s390_register_call_saved, s390_guess_tracepoint_registers)
15690         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
15691         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
15692         (s390_pseudo_register_name, s390_pseudo_register_type)
15693         (s390_pseudo_register_read, s390_pseudo_register_write)
15694         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
15695         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
15696         (s390_addr_bits_remove, s390_address_class_type_flags)
15697         (s390_address_class_type_flags_to_name)
15698         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
15699         (s390_function_arg_float, s390_function_arg_vector)
15700         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
15701         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
15702         (s390_frame_align, s390_register_return_value, s390_return_value)
15703         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
15704         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
15705         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
15706         (s390_trad_frame_prev_register, s390_unwind_cache)
15707         (s390_prologue_frame_unwind_cache)
15708         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
15709         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
15710         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
15711         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
15712         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
15713         (s390_frame_base_address, s390_local_base_address)
15714         (s390_frame_base, s390_gcc_target_options)
15715         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
15716         (s390_validate_reg_range, s390_tdesc_valid)
15717         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
15718         * s390-tdep.c: ...this.  New file.
15719
15720 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15721
15722         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
15723         (s390_process_record, s390_gdbarch_tdep_alloc)
15724         (s390_linux_init_abi_any): Use/set new hook.
15725
15726 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15727
15728         * s390-linux-tdep.c (osabi.h): New include.
15729         (s390_linux_init_abi_31, s390_linux_init_abi_64)
15730         (s390_linux_init_abi_any): New functions.
15731         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
15732
15733 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15734
15735         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
15736         tdesc_has_registers check
15737
15738 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15739
15740         * s390-linux-tdep.c (s390_tdesc_valid): New function.
15741         (s390_validate_reg_range): New macro.
15742         (s390_gdbarch_init): Adjust.
15743
15744 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15745
15746         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
15747         (s390_gdbarch_tdep_alloc): Adjust.
15748         (s390_gdbarch_init): Adjust.
15749
15750 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15751
15752         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
15753         <have_tdb>: Change type to bool.
15754         (s390_gdbarch_tdep_alloc): Adjust.
15755         (s390_gdbarch_init): Adjust.
15756
15757 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15758
15759         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
15760         (gdbarch_tdep) <have_upper, have_vx>: New fields.
15761         (s390_gdbarch_tdep_alloc): New function.
15762         (s390_gdbarch_init): Allocate tdep at start and use its fields
15763         instead of separate variables.
15764
15765 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15766
15767         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
15768         when looking for cached gdbarch and add comment for remaining.
15769
15770 2018-01-22  Pedro Alves  <palves@redhat.com>
15771             Sergio Durigan Junior  <sergiodj@redhat.com>
15772
15773         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
15774         case.
15775
15776 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
15777
15778         * MAINTAINERS: Update my company e-mail address.
15779
15780 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15781
15782         * regcache.c (cooked_write_test): New function.
15783         (_initialize_regcache): Register the test.
15784
15785 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15786
15787         * ia64-tdep.c (ia64_pseudo_register_read): Call
15788         regcache->cooked_read instead of regcache_cooked_read_unsigned.
15789         * m32c-tdep.c (m32c_cat_read): Likewise.
15790         (m32c_r3r2r1r0_read): Likewise.
15791         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
15792         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
15793
15794 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15795
15796         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
15797         method raw_read instead of regcache_raw_read.
15798         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
15799         * arm-tdep.c (arm_neon_quad_read): Likewise.
15800         * avr-tdep.c (avr_pseudo_register_read): Likewise.
15801         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
15802         * frv-tdep.c (frv_pseudo_register_read): Likewise.
15803         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
15804         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
15805         (i386_pseudo_register_read_into_value): Likewise.
15806         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
15807         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
15808         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
15809         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
15810         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
15811         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
15812         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
15813         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
15814         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
15815
15816 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15817
15818         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
15819         * configure.tgt: Remove target mt.
15820         * mt-tdep.c: Remove.
15821         * regcache.c (cooked_read_test): Remove the check for mt.
15822
15823 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15824
15825         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
15826         instead of gdbarch_pseudo_register_read_value.
15827
15828 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15829
15830         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
15831         language is Ada.
15832
15833 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15834
15835         * linespec.c (create_sals_line_offset): Remove code that preserved
15836         the symtab_and_line's line number.
15837
15838 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15839
15840         * varobj.c (varobj_create): Don't set valid_block when creating a
15841         floating varobj.
15842
15843 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15844
15845         * varobj.c (varobj_create): Remove out of date comment.
15846
15847 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15848
15849         PR mi/20395
15850         * ada-exp.y (write_var_from_sym): Pass extra parameter when
15851         updating innermost block.
15852         * parse.c (innermost_block_tracker::update): Take extra type
15853         parameter, and check types match before updating innermost block.
15854         (write_dollar_variable): Update innermost block for registers.
15855         * parser-defs.h (enum innermost_block_tracker_type): New enum.
15856         (innermost_block_tracker::innermost_block_tracker): Initialise
15857         m_types member.
15858         (innermost_block_tracker::reset): Take type parameter.
15859         (innermost_block_tracker::update): Take type parameter, and pass
15860         type through as needed.
15861         (innermost_block_tracker::m_types): New member.
15862         * varobj.c (varobj_create): Pass type when reseting innermost
15863         block.
15864
15865 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15866
15867         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
15868         * ada-lang.c (resolve_subexp): Likewise.
15869         * breakpoint.c (set_breakpoint_condition) Likewise.
15870         (watch_command_1) Likewise.
15871         * c-exp.y (variable): Likewise.
15872         * d-exp.y (PrimaryExpression): Likewise.
15873         * f-exp.y (variable): Likewise.
15874         * go-exp.y (variable): Likewise.
15875         * m2-exp.y (variable): Likewise.
15876         * objfiles.c (objfile::~objfile): Likewise.
15877         * p-exp.y (variable): Likewise.
15878         * parse.c (innermost_block): Change type.
15879         * parser-defs.h (class innermost_block_tracker): New.
15880         (innermost_block): Change to innermost_block_tracker.
15881         * printcmd.c (display_command): Switch to innermost_block API.
15882         (do_one_display): Likewise.
15883         * rust-exp.y (do_one_display): Likewise.
15884         * symfile.c (clear_symtab_users): Likewise.
15885         * varobj.c (varobj_create): Switch to innermost_block API, replace
15886         use of innermost_block with block stored on varobj object.
15887
15888 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15889
15890         * expression.h (innermost_block): Remove declaration.
15891         * varobj.c: Add 'parser-defs.h' include.
15892
15893 2018-01-19  Tom Tromey  <tom@tromey.com>
15894
15895         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
15896         symbols in the static and global blocks.
15897
15898 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
15899
15900         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
15901         gdb_ptrace.h, and move including gdb_wait.h ...
15902         * nat/linux-ptrace.h: ... to here.
15903
15904 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15905
15906         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
15907         inf_ptrace_detach_success.
15908         (inf_ptrace_detach_success): Add inferior parameter, use it
15909         instead of inferior_ptid, pass it to detach_inferior.
15910         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
15911         parameter.
15912         * inferior.c (detach_inferior): Add overload that takes an
15913         inferior object.
15914         * inferior.h (detach_inferior): Likewise.
15915         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
15916         use inferior_ptid, adjust call to inf_ptrace_detach_success.
15917         * linux-thread-db.c (thread_db_detach): Use inf parameter.
15918
15919 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15920
15921         * target.h (struct target_ops) <to_detach>: Add inferior
15922         parameter.
15923         (target_detach): Likewise.
15924         * target.c (dispose_inferior): Pass inferior down.
15925         (target_detach): Pass inferior down.  Assert that it is equal to
15926         the current inferior.
15927         * aix-thread.c (aix_thread_detach): Pass inferior down.
15928         * corefile.c (core_file_command): Pass current_inferior() down.
15929         * corelow.c (core_detach): Add inferior parameter.
15930         * darwin-nat.c (darwin_detach): Likewise.
15931         * gnu-nat.c (gnu_detach): Likewise.
15932         * inf-ptrace.c (inf_ptrace_detach): Likewise.
15933         * infcmd.c (detach_command): Pass current_inferior() down to
15934         target_detach.
15935         * infrun.c (follow_fork_inferior): Pass parent_inf to
15936         target_detach.
15937         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
15938         target_detach.
15939         * linux-nat.c (linux_nat_detach): Add inferior parameter.
15940         * linux-thread-db.c (thread_db_detach): Likewise.
15941         * nto-procfs.c (procfs_detach): Likewise.
15942         * procfs.c (procfs_detach): Likewise.
15943         * record.c (record_detach): Likewise.
15944         * record.h (struct inferior): Forward-declare.
15945         (record_detach): Add inferior parameter.
15946         * remote-sim.c (gdbsim_detach): Likewise.
15947         * remote.c (remote_detach_1): Likewise.
15948         (remote_detach): Likewise.
15949         (extended_remote_detach): Likewise.
15950         * sol-thread.c (sol_thread_detach): Likewise.
15951         * target-debug.h (target_debug_print_inferior_p): New macro.
15952         * target-delegates.c: Re-generate.
15953         * top.c (kill_or_detach): Pass inferior down to target_detach.
15954         * windows-nat.c (windows_detach): Add inferior parameter.
15955
15956 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15957
15958         * target.h (struct target_ops) <to_detach>: Remove args
15959         parameter.
15960         (target_detach): Likewise.
15961         * target.c (dispose_inferior): Adjust.
15962         (target_detach): Remove args parameter, adjust.
15963         * aix-thread.c (aix_thread_detach): Adjust.
15964         * corefile.c (core_file_command): Adjust.
15965         * corelow.c (core_detach): Adjust.
15966         * darwin-nat.c (darwin_detach): Adjust.
15967         * gnu-nat.c (gnu_detach): Adjust.
15968         * inf-ptrace.c (inf_ptrace_detach): Adjust.
15969         * infcmd.c (detach_command): Adjust
15970         * infrun.c (follow_fork_inferior): Adjust.
15971         (handle_vfork_child_exec_or_exit): Adjust.
15972         * linux-fork.c (linux_fork_detach): Remove args parameter.
15973         * linux-fork.h (linux_fork_detach): Likewise.
15974         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
15975         * linux-thread-db.c (thread_db_detach): Likewise.
15976         * nto-procfs.c (procfs_detach): Likewise.
15977         * procfs.c (procfs_detach): Likewise.
15978         (do_detach): Remove signo parameter.
15979         * record.c (record_detach): Remove args parameter.
15980         * record.h (record_detach): Likewise.
15981         * remote-sim.c (gdbsim_detach): Likewise.
15982         * remote.c (remote_detach_1): Likewise.
15983         (remote_detach): Likewise.
15984         (extended_remote_detach): Likewise.
15985         * sol-thread.c (sol_thread_detach): Likewise.
15986         * target-delegates.c: Re-generate.
15987         * top.c (struct qt_args) <args>: Remove field.
15988         (kill_or_detach): Don't pass args.
15989         (quit_force): Don't set args.
15990         * windows-nat.c (windows_detach): Remove args parameter.
15991
15992 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15993
15994         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
15995         (arm_linux_init_abi): Install it.
15996
15997 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15998
15999         * osabi.c (gdb_osabi_names): Extend the regexp for
16000         arm-linux-gnueabihf.
16001
16002 2018-01-18  Yao Qi  <yao.qi@linaro.org>
16003
16004         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
16005         m_abbrevs.
16006         (abbrev_table::add_abbrev): Update.
16007         (abbrev_table::lookup_abbrev): Update.
16008
16009 2018-01-18  Yao Qi  <yao.qi@linaro.org>
16010
16011         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
16012
16013 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
16014
16015         * compile/compile.c (compile_to_object): Convert "triplet_rx"
16016         to "std::string".
16017
16018 2018-01-17  Tom Tromey  <tom@tromey.com>
16019
16020         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
16021
16022 2018-01-17  Tom Tromey  <tom@tromey.com>
16023
16024         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
16025         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
16026         (create_array_type_with_stride): Update.
16027         * dwarf2read.c (set_die_type): Update.
16028
16029 2018-01-17  Tom Tromey  <tom@tromey.com>
16030
16031         * dwarf2read.c (delayed_method_info): Remove typedef.
16032         (dwarf2_cu::method_info): Now a std::vector.
16033         (add_to_method_list): Update.
16034         (free_delayed_list): Remove.
16035         (compute_delayed_physnames): Update.
16036         (process_full_comp_unit, process_full_type_unit): Clear the method
16037         list.  Remove cleanups.
16038         (psymtab_include_file_name): Add name_holder parameter.  Use
16039         unique_xmalloc_ptr.
16040         (dwarf_decode_lines): Update.
16041
16042 2018-01-17  Tom Tromey  <tom@tromey.com>
16043             Simon Marchi  <simon.marchi@ericsson.com>
16044
16045         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
16046         (dwarf2_per_objfile::free_cached_comp_units)
16047         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
16048         (init_cutu_and_read_dies_no_follow): Update.
16049         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
16050         (dwarf2_cu::~dwarf2_cu): New.
16051         (free_heap_comp_unit, free_stack_comp_unit): Remove.
16052         (age_cached_comp_units, free_one_cached_comp_unit): Update.
16053
16054 2018-01-17  Tom Tromey  <tom@tromey.com>
16055             Simon Marchi  <simon.marchi@ericsson.com>
16056
16057         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
16058         (struct die_reader_specs) <abbrev_table>: New member.
16059         (struct abbrev_table): Add constructor.
16060         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
16061         <abbrev_obstack>: Now an auto_obstack.
16062         (abbrev_table_up): New typedef.
16063         (init_cu_die_reader): Add abbrev_table parameter.
16064         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
16065         Add result_dwo_abbrev_table.
16066         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
16067         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
16068         Update.
16069         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
16070         parameter.
16071         (skip_children): Update.
16072         (abbrev_table::alloc_abbrev): Rename from
16073         abbrev_table_alloc_abbrev.
16074         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
16075         (abbrev_table::lookup_abbrev): Rename from
16076         abbrev_table_lookup_abbrev.
16077         (abbrev_table_read_table): Return abbrev_table_up.
16078         (abbrev_table_free, abbrev_table_free_cleanup)
16079         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
16080         (load_partial_dies): Update.
16081
16082 2018-01-17  Tom Tromey  <tom@tromey.com>
16083
16084         * dwarf2read.c (dwarf2_compute_name): Update comment.
16085         (read_func_scope, read_variable): Update.
16086         (new_symbol): Remove.
16087         (new_symbol_full): Rename to new_symbol.
16088
16089 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
16090
16091         PR gdb/16577
16092         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
16093         a warning instead of throwing an error, set section size to 0 and return
16094         NULL.
16095         * gdb_bfd.h (gdb_bfd_map_section): Update description.
16096
16097 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
16098
16099         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
16100         std::string.
16101         (linux_ptrace_attach_fail_reason_string): Likewise.
16102         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
16103         Likewise.
16104         (linux_ptrace_attach_fail_reason_string): Likewise.
16105         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
16106
16107 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
16108
16109         * linux-nat.c (linux_nat_attach): Remove xstrdup.
16110
16111 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
16112
16113         PR gdb/21559
16114         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
16115         checking for fs_base/gs_base fields in struct user_regs_struct.
16116         * configure: Regenerate.
16117
16118 2018-01-17  Yao Qi  <yao.qi@linaro.org>
16119
16120         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
16121         function.
16122         (aarch64_linux_init_abi): Install it to gdbarch hook
16123         gcc_target_options.
16124
16125 2018-01-15  Pedro Alves  <palves@redhat.com>
16126
16127         * common/signals-state-save-restore.c
16128         (save_original_signals_state): Fix typos.
16129
16130 2017-01-12  Tom Tromey  <tom@tromey.com>
16131             Sergio Durigan Junior  <sergiodj@redhat.com>
16132
16133         * Makefile.in (install-only): Install gdb-add-index.
16134
16135 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
16136
16137         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
16138
16139 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
16140
16141         * infrun.c (keep_going_pass_signal): Clear step-over info when
16142         insert_breakpoints fails.
16143
16144 2018-01-11  Pedro Alves  <palves@redhat.com>
16145
16146         PR gdb/22583
16147         * infrun.c (resume): Rename to ...
16148         (resume_1): ... this.
16149         (resume): Reimplement as wrapper around resume_1.
16150
16151 2018-01-11  Pedro Alves  <palves@redhat.com>
16152
16153         PR remote/22597
16154         * remote.c (remote_parse_stop_reply): Default to the last-set
16155         general thread instead of to 'magic_null_ptid'.
16156
16157 2018-01-10  Pedro Alves  <palves@redhat.com>
16158
16159         * language.h (language_get_symbol_name_matcher): Rename ...
16160         (get_symbol_name_matcher): ... this.
16161         * language.c (language_get_symbol_name_matcher): Ditto.
16162         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
16163         callers adjusted.
16164
16165 2018-01-10  Pedro Alves  <palves@redhat.com>
16166
16167         PR gdb/22670
16168         * dwarf2read.c
16169         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
16170         Adjust to use language_get_symbol_name_matcher instead of
16171         language_defn::la_get_symbol_name_matcher.
16172         * language.c (language_get_symbol_name_matcher): If in Ada mode
16173         and the lookup name is a verbatim match, return Ada's matcher.
16174         * language.h (language_get_symbol_name_matcher): Adjust comment.
16175         (ada_lookup_name_info::verbatim_p):: New method.
16176
16177 2018-01-10  Pedro Alves  <palves@redhat.com>
16178
16179         PR gdb/22670
16180         * ada-lang.c (ada_collect_symbol_completion_matches): If the
16181         minsym's language is language_auto or language_cplus, pass down
16182         language_ada instead.
16183         * symtab.c (compare_symbol_name): Don't frob symbol language here.
16184
16185 2018-01-10  Pedro Alves  <palves@redhat.com>
16186
16187         PR gdb/22670
16188         * minsyms.c (linkage_name_str): New function.
16189         (iterate_over_minimal_symbols): Use it.
16190
16191 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16192
16193         * NEWS: Document that 'info proc' now works on FreeBSD.
16194
16195 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16196
16197         * configure.ac: Check for kinfo_getfile in libutil.
16198         * configure: Regenerate.
16199         * config.in: Regenerate.
16200         * fbsd-nat.c: Include "fbsd-tdep.h".
16201         (fbsd_fetch_cmdline): New.
16202         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
16203         rather than calling error.
16204         (fbsd_info_proc): New.
16205         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
16206         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
16207         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
16208
16209 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16210
16211         * fbsd-nat.c (struct free_deleter): Remove.
16212         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
16213
16214 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16215
16216         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
16217         NULL for an empty pathname.
16218
16219 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16220
16221         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
16222         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
16223         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
16224         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
16225         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
16226         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
16227         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
16228         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
16229         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
16230         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
16231         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
16232         (fbsd_core_fetch_timeval, fbsd_print_sigset)
16233         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
16234         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
16235         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
16236
16237 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
16238
16239         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
16240         (gnu_xfer_auxv): New function.
16241         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
16242         TARGET_OBJECT_AUXV.
16243
16244 2018-01-08  Yao Qi  <yao.qi@linaro.org>
16245             Simon Marchi  <simon.marchi@ericsson.com>
16246
16247         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
16248         common/selftest.c.
16249         (COMMON_OBS): Remove selftest.o.
16250         * configure.ac: Append selftest-arch.c and common/selftest.c to
16251         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
16252         * configure: Re-generated.
16253         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
16254         GDB_SELF_TEST.
16255         (maintenance_info_selftests): Likewise.
16256
16257 2018-01-08  Xavier Roirand  <roirand@adacore.com>
16258
16259         * ada-valprint.c (val_print_packed_array_elements): Use
16260         proper number of elements when printing an array indexed
16261         by an enumeration type.
16262
16263 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16264
16265         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
16266         (dw2_get_file_names_reader): Adjust.
16267         (lookup_dwo_signatured_type): Adjust.
16268         (lookup_dwp_signatured_type): Adjust.
16269         (lookup_signatured_type): Adjust.
16270         (create_type_unit_group): Adjust.
16271         (get_type_unit_group): Adjust.
16272         (process_psymtab_comp_unit_reader): Adjust.
16273         (build_type_psymtabs_reader): Adjust.
16274         (scan_partial_symbols): Adjust.
16275         (add_partial_symbol): Adjust.
16276         (add_partial_subprogram): Adjust.
16277         (peek_die_abbrev): Adjust.
16278         (fixup_go_packaging): Adjust.
16279         (process_imported_unit_die): Adjust.
16280         (dwarf2_compute_name): Adjust.
16281         (dwarf2_physname): Adjust.
16282         (read_import_statement): Adjust.
16283         (handle_DW_AT_stmt_list): Adjust.
16284         (read_file_scope): Adjust.
16285         (read_func_scope): Adjust.
16286         (read_lexical_block_scope): Adjust.
16287         (read_call_site_scope): Adjust.
16288         (read_variable): Adjust.
16289         (dwarf2_rnglists_process): Adjust.
16290         (dwarf2_ranges_process): Adjust.
16291         (dwarf2_ranges_read): Adjust.
16292         (dwarf2_get_pc_bounds): Adjust.
16293         (dwarf2_record_block_ranges): Adjust.
16294         (dwarf2_add_field): Adjust.
16295         (dwarf2_add_member_fn): Adjust.
16296         (read_structure_type): Adjust.
16297         (process_structure_scope): Adjust.
16298         (read_enumeration_type): Adjust.
16299         (read_array_type): Adjust.
16300         (mark_common_block_symbol_computed): Adjust.
16301         (read_common_block): Adjust.
16302         (read_namespace_type): Adjust.
16303         (read_namespace): Adjust.
16304         (read_module_type): Adjust.
16305         (read_tag_pointer_type): Adjust.
16306         (read_tag_ptr_to_member_type): Adjust.
16307         (read_tag_string_type): Adjust.
16308         (read_subroutine_type): Adjust.
16309         (read_typedef): Adjust.
16310         (read_base_type): Adjust.
16311         (attr_to_dynamic_prop): Adjust.
16312         (read_subrange_type): Adjust.
16313         (read_unspecified_type): Adjust.
16314         (dwarf2_read_abbrevs): Adjust.
16315         (load_partial_dies): Adjust.
16316         (read_partial_die): Adjust.
16317         (find_partial_die): Adjust.
16318         (guess_partial_die_structure_name): Adjust.
16319         (fixup_partial_die): Adjust.
16320         (read_attribute_value): Adjust.
16321         (read_addr_index): Adjust.
16322         (read_addr_index_from_leb128): Adjust.
16323         (read_str_index): Adjust.
16324         (dwarf2_string_attr): Adjust.
16325         (get_debug_line_section): Adjust.
16326         (dwarf_decode_line_header): Adjust.
16327         (lnp_state_machine::check_line_address): Adjust.
16328         (dwarf_decode_lines_1): Adjust.
16329         (dwarf_decode_lines): Adjust.
16330         (dwarf2_start_symtab): Adjust.
16331         (var_decode_location): Adjust.
16332         (new_symbol_full): Adjust.
16333         (dwarf2_const_value_data): Adjust.
16334         (dwarf2_const_value_attr): Adjust.
16335         (dwarf2_const_value): Adjust.
16336         (die_type): Adjust.
16337         (die_containing_type): Adjust.
16338         (build_error_marker_type): Adjust.
16339         (lookup_die_type): Adjust.
16340         (guess_full_die_structure_name): Adjust.
16341         (anonymous_struct_prefix): Adjust.
16342         (determine_prefix): Adjust.
16343         (dwarf2_name): Adjust.
16344         (follow_die_ref_or_sig): Adjust.
16345         (follow_die_offset): Adjust.
16346         (follow_die_ref): Adjust.
16347         (follow_die_sig_1): Adjust.
16348         (follow_die_sig): Adjust.
16349         (get_signatured_type): Adjust.
16350         (get_DW_AT_signature_type): Adjust.
16351         (decode_locdesc): Adjust.
16352         (dwarf_decode_macros): Adjust.
16353         (cu_debug_loc_section): Adjust.
16354         (fill_in_loclist_baton): Adjust.
16355         (dwarf2_symbol_mark_computed): Adjust.
16356         (init_one_comp_unit): Don't assign
16357         dwarf2_cu::dwarf2_per_objfile.
16358         (set_die_type): Adjust.
16359
16360 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16361
16362         * dwarf2read.c (struct mapped_debug_names): Add constructor.
16363         <dwarf2_per_objfile>: New field.
16364         (dwarf2_per_objfile): Remove global.
16365         (get_dwarf2_per_objfile): New function.
16366         (set_dwarf2_per_objfile): New function.
16367         (dwarf2_build_psymtabs_hard): Change objfile parameter to
16368         dwarf2_per_objfile.
16369         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16370         (read_abbrev_offset): Likewise.
16371         (read_indirect_string): Likewise.
16372         (read_indirect_line_string): Likewise.
16373         (read_indirect_string_at_offset): Likewise.
16374         (read_indirect_string_from_dwz): Likewise.
16375         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16376         dwarf2_per_objfile.
16377         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16378         (create_all_comp_units): Change objfile parameter to
16379         dwarf2_per_objfile.
16380         (create_all_type_units): Likewise.
16381         (process_queue): Add dwarf2_per_objfile parameter.
16382         (read_and_check_comp_unit_head): Likewise.
16383         (lookup_dwo_unit_in_dwp): Likewise.
16384         (get_dwp_file): Likewise.
16385         (process_cu_includes): Likewise.
16386         (struct free_dwo_file_cleanup_data): New struct.
16387         (dwarf2_has_info): Use get_dwarf2_per_objfile and
16388         set_dwarf2_per_objfile.
16389         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
16390         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
16391         context, adjust calls.
16392         (dw2_instantiate_symtab): Likewise.
16393         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
16394         (dw2_get_cu): Likewise.
16395         (create_cu_from_index_list): Change objfile parameter to
16396         dwarf2_per_objfile.
16397         (create_cus_from_index_list): Get dwarf2_per_objfile from
16398         context, adjust calls.
16399         (create_cus_from_index): Likewise.
16400         (create_signatured_type_table_from_index): Change objfile
16401         parameter to dwarf2_per_objfile.
16402         (create_signatured_type_table_from_debug_names): Change objfile
16403         parameter to dwarf2_per_objfile.
16404         (create_addrmap_from_index): Likewise.
16405         (create_addrmap_from_aranges): Likewise.
16406         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
16407         (dw2_setup): Remove.
16408         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
16409         context.
16410         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
16411         get_dwarf2_per_objfile.
16412         (dw2_forget_cached_source_info): Likewise.
16413         (dw2_map_symtabs_matching_filename): Likewise.
16414         (struct dw2_symtab_iterator) <index>: Remove.
16415         <dwarf2_per_objfile>: New field.
16416         (dw2_symtab_iter_init): Replace index parameter with
16417         dwarf2_per_objfile.
16418         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
16419         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
16420         (dw2_print_stats): Likewise.
16421         (dw2_dump): Likewise.
16422         (dw2_expand_symtabs_for_function): Likewise.
16423         (dw2_expand_all_symtabs): Likewise.
16424         (dw2_expand_symtabs_with_fullname): Likewise.
16425         (dw2_expand_marked_cus): Replace index and objfile parameters
16426         with dwarf2_per_objfile.
16427         (dw_expand_symtabs_matching_file_matcher): Add
16428         dwarf2_per_objfile parameter and adjust calls.
16429         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
16430         adjust calls.
16431         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
16432         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
16433         adjust calls.
16434         (create_cus_from_debug_names_list): Replace objfile parameter
16435         with dwarf2_per_objfile and adjust calls.
16436         (create_cus_from_debug_names): Likewise.
16437         (dwarf2_read_debug_names): Likewise.
16438         (mapped_debug_names::namei_to_name): Adjust call.
16439         (dw2_debug_names_iterator::next): Likewise.
16440         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
16441         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
16442         (dw2_debug_names_dump): Likewise.
16443         (dw2_debug_names_expand_symtabs_for_function): Likewise.
16444         (dw2_debug_names_expand_symtabs_matching): Likewise.
16445         (dwarf2_initialize_objfile): Likewise.
16446         (dwarf2_build_psymtabs): Likewise.
16447         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
16448         this_cu.
16449         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
16450         (read_and_check_comp_unit_head): Likewise.
16451         (read_abbrev_offset): Likewise.
16452         (create_debug_type_hash_table): Likewise.
16453         (create_debug_types_hash_table): Likewise.
16454         (create_all_type_units): Replace objfile parameter with
16455         dwarf2_per_objfile.
16456         (add_type_unit): Add dwarf2_per_objfile parameter.
16457         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
16458         with dwarf2_per_objfile.
16459         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
16460         (lookup_dwp_signatured_type): Likewise.
16461         (lookup_signatured_type): Likewise.
16462         (read_cutu_die_from_dwo): Likewise.
16463         (init_tu_and_read_dwo_dies): Likewise.
16464         (init_cutu_and_read_dies): Likewise.
16465         (init_cutu_and_read_dies_no_follow): Likewise.
16466         (allocate_type_unit_groups_table): Add objfile parameter.
16467         (create_type_unit_group): Use dwarf2_per_objfile from cu.
16468         (get_type_unit_group): Likewise.
16469         (process_psymtab_comp_unit): Update call.
16470         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
16471         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
16472         (print_tu_stats): Likewise.
16473         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
16474         in void* parameter.
16475         (build_type_psymtabs): Change objfile parameter to
16476         dwarf2_per_objfile.
16477         (process_skeletonless_type_unit): Use dwarf2_per_objfile
16478         passed in void* parameter.
16479         (process_skeletonless_type_units): Change objfile parameter to
16480         dwarf2_per_objfile.
16481         (set_partial_user): Likewise.
16482         (dwarf2_build_psymtabs_hard): Likewise.
16483         (read_comp_units_from_section): Likewise.
16484         (create_all_comp_units): Likewise.
16485         (scan_partial_symbols): Update calls.
16486         (add_partial_symbol): Likewise.
16487         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
16488         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
16489         (process_queue): Add dwarf2_per_objfile parameter.
16490         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
16491         (compute_compunit_symtab_includes): Likewise.
16492         (process_cu_includes): Add dwarf2_per_objfile parameter.
16493         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
16494         (process_full_type_unit): Likewise.
16495         (process_imported_unit_die): Update call.
16496         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
16497         (read_file_scope): Likewise.
16498         (allocate_dwo_file_hash_table): Add objfile parameter.
16499         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
16500         (create_cus_hash_table): Likewise.
16501         (create_dwp_hash_table): Likewise.
16502         (create_dwo_unit_in_dwp_v1): Likewise.
16503         (create_dwp_v2_section): Likewise.
16504         (create_dwo_unit_in_dwp_v2): Likewise.
16505         (lookup_dwo_unit_in_dwp): Likewise.
16506         (try_open_dwop_file): Likewise.
16507         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
16508         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
16509         cleanup to include a reference to dwarf2_per_objfile.
16510         (open_dwp_file): Add dwarf2_per_objfile parameter.
16511         (open_and_init_dwp_file): Likewise.
16512         (get_dwp_file): Likewise.
16513         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
16514         (queue_and_load_all_dwo_tus): Update call.
16515         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
16516         data.
16517         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
16518         (dwarf2_ranges_process): Likewise.
16519         (dwarf2_get_pc_bounds): Likewise.
16520         (mark_common_block_symbol_computed): Likewise.
16521         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16522         (dwarf2_read_abbrevs): Update call.
16523         (read_partial_die): Use dwarf2_per_objfile from cu.
16524         (find_partial_die): Likewise.
16525         (fixup_partial_die): Likewise.
16526         (read_attribute_value): Likewise.
16527         (read_indirect_string_at_offset_from): Add objfile parameter.
16528         (read_indirect_string_at_offset): Add dwarf2_per_objfile
16529         parameter.
16530         (read_indirect_string_from_dwz): Add objfile parameter.
16531         (read_indirect_string): Add objfile parameter.
16532         (read_addr_index_1): Add dwarf2_per_objfile parameter.
16533         (read_addr_index): Use dwarf2_per_objfile from cu.
16534         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
16535         call dw2_setup.
16536         (read_str_index): Use dwarf2_per_objfile from cu.
16537         (get_debug_line_section): Likewise.
16538         (read_formatted_entries): Add dwarf2_per_objfile parameter.
16539         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
16540         (new_symbol_full): Use dwarf2_per_objfile from cu.
16541         (build_error_marker_type): Likewise.
16542         (lookup_die_type): Likewise.
16543         (determine_prefix): Likewise.
16544         (follow_die_offset): Likewise.
16545         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
16546         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
16547         (dwarf2_fetch_die_type_sect_off): Likewise.
16548         (dwarf2_get_die_type): Likewise.
16549         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
16550         (get_signatured_type): Likewise.
16551         (get_DW_AT_signature_type): Likewise.
16552         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
16553         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
16554         (cu_debug_loc_section): Likewise.
16555         (fill_in_loclist_baton): Likewise.
16556         (dwarf2_symbol_mark_computed): Likewise.
16557         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16558         dwarf2_per_objfile.
16559         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
16560         parameter.
16561         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16562         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
16563         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
16564         (set_die_type): Use dwarf2_free_objfile from cu.
16565         (get_die_type_at_offset): Likewise.
16566         (dwarf2_per_objfile_free): Don't assign global variable.
16567         (debug_names) <constructor>: Add dwarf2_per_objfile
16568         parameter, update m_debugstrlookup construction.
16569         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
16570         parameter.
16571         <m_dwarf2_per_objfile>: New field.
16572         <lookup>: Use m_dwarf2_per_objfile.
16573         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
16574         (psyms_seen_size): Likewise.
16575         (write_gdbindex): Replace objfile parameter with
16576         dwarf2_per_objfile.
16577         (write_debug_names): Likewise.
16578         (write_psymtabs_to_index): Likewise.
16579         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
16580         calls.
16581
16582 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16583
16584         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
16585         <dwarf2_per_objfile>: New field.
16586         (struct dwarf2_per_cu_data) <objfile>: Remove.
16587         <dwarf2_per_objfile>: New field.
16588         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
16589         of objfile.
16590         (create_signatured_type_table_from_index): Likewise.
16591         (create_debug_type_hash_table): Likewise.
16592         (fill_in_sig_entry_from_dwo_entry): Likewise.
16593         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
16594         (create_type_unit_group): Assign dwarf2_per_objfile instead of
16595         objfile.
16596         (create_partial_symtab): Access objfile through
16597         dwarf2_per_objfile.
16598         (process_psymtab_comp_unit_reader): Likewise.
16599         (read_comp_units_from_section): Likewise.
16600         (scan_partial_symbols): Likewise.
16601         (add_partial_symbol): Likewise.
16602         (add_partial_subprogram): Likewise.
16603         (peek_die_abbrev): Likewise.
16604         (fixup_go_packaging): Likewise.
16605         (process_full_comp_unit): Likewise.
16606         (process_full_type_unit): Likewise.
16607         (process_imported_unit_die): Likewise.
16608         (dwarf2_compute_name): Likewise.
16609         (dwarf2_physname): Likewise.
16610         (read_import_statement): Likewise.
16611         (create_cus_hash_table): Assign dwarf2_physname instead of
16612         objfile.
16613         (read_func_scope): Access objfile through dwarf2_per_objfile.
16614         (read_lexical_block_scope): Likewise.
16615         (read_call_site_scope): Likewise.
16616         (read_variable): Likewise.
16617         (dwarf2_rnglists_process): Likewise.
16618         (dwarf2_ranges_process): Likewise.
16619         (dwarf2_ranges_read): Likewise.
16620         (dwarf2_record_block_ranges): Likewise.
16621         (dwarf2_add_field): Likewise.
16622         (dwarf2_add_member_fn): Likewise.
16623         (read_structure_type): Likewise.
16624         (process_structure_scope): Likewise.
16625         (read_enumeration_type): Likewise.
16626         (read_array_type): Likewise.
16627         (read_common_block): Likewise.
16628         (read_namespace_type): Likewise.
16629         (read_namespace): Likewise.
16630         (read_module_type): Likewise.
16631         (read_tag_pointer_type): Likewise.
16632         (read_tag_ptr_to_member_type): Likewise.
16633         (read_tag_string_type): Likewise.
16634         (read_subroutine_type): Likewise.
16635         (read_typedef): Likewise.
16636         (read_base_type): Likewise.
16637         (attr_to_dynamic_prop): Likewise.
16638         (read_subrange_type): Likewise.
16639         (read_unspecified_type): Likewise.
16640         (load_partial_dies): Likewise.
16641         (read_partial_die): Likewise.
16642         (find_partial_die): Likewise.
16643         (guess_partial_die_structure_name): Likewise.
16644         (fixup_partial_die): Likewise.
16645         (read_attribute_value): Likewise.
16646         (read_addr_index_from_leb128): Likewise.
16647         (dwarf2_read_addr_index): Likewise.
16648         (dwarf2_string_attr): Likewise.
16649         (lnp_state_machine::check_line_address): Likewise.
16650         (dwarf_decode_lines_1): Likewise.
16651         (dwarf_decode_lines): Likewise.
16652         (dwarf2_start_symtab): Likewise.
16653         (var_decode_location): Likewise.
16654         (new_symbol_full): Likewise.
16655         (dwarf2_const_value_data): Likewise.
16656         (dwarf2_const_value_attr): Likewise.
16657         (dwarf2_const_value): Likewise.
16658         (die_type): Likewise.
16659         (die_containing_type): Likewise.
16660         (lookup_die_type): Likewise.
16661         (guess_full_die_structure_name): Likewise.
16662         (anonymous_struct_prefix): Likewise.
16663         (dwarf2_name): Likewise.
16664         (follow_die_ref_or_sig): Likewise.
16665         (follow_die_offset): Likewise.
16666         (follow_die_ref): Likewise.
16667         (dwarf2_fetch_die_loc_sect_off): Likewise.
16668         (dwarf2_fetch_constant_bytes): Likewise.
16669         (dwarf2_fetch_die_type_sect_off): Likewise.
16670         (dwarf2_get_die_type): Likewise.
16671         (follow_die_sig): Likewise.
16672         (decode_locdesc): Likewise.
16673         (dwarf2_per_cu_objfile): Likewise.
16674         (dwarf2_per_cu_text_offset): Likewise.
16675         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
16676         objfile.
16677         (set_die_type): Access objfile through
16678         dwarf2_per_objfile.
16679
16680 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16681
16682         * valprint.c (converted_character_d): Remove typedef.
16683         (DEF_VEC_O (converted_character_d)): Remove.
16684         (count_next_character): Use std::vector.
16685         (print_converted_chars_to_obstack): Likewise.
16686         (generic_printstr): Likewise.
16687
16688 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16689
16690         * xml-support.h (struct gdb_xml_value): Add constructor.
16691         <value>: Change type to unique_xmalloc_ptr.
16692         (gdb_xml_value_s): Remove typedef.
16693         (DEF_VEC_O (gdb_xml_value_s)): Remove.
16694         (gdb_xml_element_start_handler): Change parameter type to
16695         std::vector.
16696         (xml_find_attribute): Likewise.
16697         * xml-support.c (xml_find_attribute): Change parameter type to
16698         std::vector and adjust.
16699         (gdb_xml_values_cleanup): Remove.
16700         (gdb_xml_parser::start_element): Adjust to std::vector.
16701         (xinclude_start_include): Change paraeter type to std::vector
16702         and adjust.
16703         * btrace.c (check_xml_btrace_version): Likewise.
16704         (parse_xml_btrace_block): Likewise.
16705         (parse_xml_btrace_pt_config_cpu): Likewise.
16706         (parse_xml_btrace_pt): Likewise.
16707         (parse_xml_btrace_conf_bts): Likewise.
16708         (parse_xml_btrace_conf_pt): Likewise.
16709         * memory-map.c (memory_map_start_memory): Likewise.
16710         (memory_map_start_property): Likewise.
16711         * osdata.c (osdata_start_osdata): Likewise.
16712         (osdata_start_item): Likewise.
16713         (osdata_start_column): Likewise.
16714         * remote.c (start_thread): Likewise.
16715         * solib-aix.c (library_list_start_library): Likewise.
16716         (library_list_start_list): Likewise.
16717         * solib-svr4.c (library_list_start_library): Likewise.
16718         (svr4_library_list_start_list): Likewise.
16719         * solib-target.c (library_list_start_segment): Likewise.
16720         (library_list_start_section): Likewise.
16721         (library_list_start_library): Likewise.
16722         (library_list_start_list): Likewise.
16723         * tracepoint.c (traceframe_info_start_memory): Likewise.
16724         (traceframe_info_start_tvar): Likewise.
16725         * xml-syscall.c (syscall_start_syscall): Likewise.
16726         * xml-tdesc.c (tdesc_start_target): Likewise.
16727         (tdesc_start_feature): Likewise.
16728         (tdesc_start_reg): Likewise.
16729         (tdesc_start_union): Likewise.
16730         (tdesc_start_struct): Likewise.
16731         (tdesc_start_flags): Likewise.
16732         (tdesc_start_enum): Likewise.
16733         (tdesc_start_field): Likewise.
16734         (tdesc_start_enum_value): Likewise.
16735         (tdesc_start_vector): Likewise.
16736
16737 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16738
16739         * extension.h (struct xmethod_worker) <clone>: Remove.
16740         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
16741         Remove.
16742         (python_xmethod_worker::clone): Remove.
16743         * valops.c (find_overload_match): Use std::move instead of
16744         clone.
16745
16746 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16747
16748         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
16749         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
16750         <free_xmethod_worker_data>: Remove.
16751         <get_matching_xmethod_workers>: Chance VEC to std::vector.
16752         <get_xmethod_arg_types>: Remove.
16753         <get_xmethod_result_type>: Remove.
16754         <invoke_xmethod>: Remove.
16755         * extension.c (new_xmethod_worker): Remove.
16756         (clone_xmethod_worker): Remove.
16757         (get_matching_xmethod_workers): Return void, pass std::vector by
16758         pointer.
16759         (get_xmethod_arg_types): Rename to...
16760         (xmethod_worker::get_arg_types): ... this, and adjust.
16761         (get_xmethod_result_type): Rename to...
16762         (xmethod_worker::get_result_type): ... this, and adjust.
16763         (invoke_xmethod): Remove.
16764         (free_xmethod_worker): Remove.
16765         (free_xmethod_worker_vec): Remove.
16766         * extension.h (enum ext_lang_rc): Move here from
16767         extension-priv.h.
16768         (struct xmethod_worker): Add constructor and destructor.
16769         <data>: Remove.
16770         <value>: Remove.
16771         <invoke, clone, do_get_result_type, do_get_arg_types>: New
16772         virtual pure methods.
16773         <get_arg_types, get_result_type>: New methods.
16774         (xmethod_worker_ptr): Remove typedef.
16775         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
16776         (xmethod_worker_vec): Remove typedef.
16777         (xmethod_worker_up): New typedef.
16778         (invoke_xmethod): Remove.
16779         (clone_xmethod_worker): Remove.
16780         (free_xmethod_worker): Remove.
16781         (free_xmethod_worker_vec): Remove.
16782         (get_xmethod_arg_types): Remove.
16783         (get_xmethod_result_type): Remove.
16784         * valops.c (find_method_list): Use std::vector, don't use
16785         intermediate vector.
16786         (value_find_oload_method_list): Use std::vector.
16787         (find_overload_match): Use std::vector.
16788         (find_oload_champ): Use std::vector.
16789         * value.c (value_free): Use operator delete.
16790         (value_of_xmethod): Rename to...
16791         (value_from_xmethod): ... this.  Don't assign
16792         xmethod_worker::value, take rvalue-reference.
16793         (result_type_of_xmethod): Adjust.
16794         (call_xmethod): Adjust.
16795         * value.h: Include extension.h.
16796         (struct xmethod_worker): Don't forward-declare.
16797         (value_of_xmethod): Rename to...
16798         (value_from_xmethod): ... this, take rvalue-reference.
16799         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
16800         (struct python_xmethod_worker): ... this, add constructor and
16801         destructor.
16802         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
16803         (gdbpy_free_xmethod_worker_data): Rename to...
16804         (python_xmethod_worker::~python_xmethod_worker): ... this and
16805         adjust.
16806         (gdbpy_clone_xmethod_worker_data): Rename to...
16807         (python_xmethod_worker::clone): ... this and adjust.
16808         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
16809         temporary vector.
16810         (gdbpy_get_xmethod_arg_types): Rename to...
16811         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
16812         (gdbpy_get_xmethod_result_type): Rename to...
16813         (python_xmethod_worker::do_get_result_type): ... this and
16814         adjust.
16815         (gdbpy_invoke_xmethod): Rename to...
16816         (python_xmethod_worker::invoke): ... this and adjust.
16817         (new_python_xmethod_worker): Rename to...
16818         (python_xmethod_worker::python_xmethod_worker): ... this and
16819         adjust.
16820         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
16821         Remove.
16822         (gdbpy_free_xmethod_worker_data): Remove.
16823         (gdbpy_get_matching_xmethod_workers): Use std::vector.
16824         (gdbpy_get_xmethod_arg_types): Remove.
16825         (gdbpy_get_xmethod_result_type): Remove.
16826         (gdbpy_invoke_xmethod): Remove.
16827         * python/python.c (python_extension_ops): Remove obsolete
16828         callbacks.
16829
16830 2018-01-05  Pedro Alves  <palves@redhat.com>
16831
16832         PR gdb/18653
16833         * common/signals-state-save-restore.c
16834         (save_original_signals_state): New parameter 'quiet'.  Warn if we
16835         find a custom handler preinstalled, instead of internal erroring.
16836         But only warn if !quiet.
16837         * common/signals-state-save-restore.h
16838         (save_original_signals_state): New parameter 'quiet'.
16839         * main.c (captured_main_1): Move save_original_signals_state call
16840         after option handling, and pass QUIET.
16841
16842 2018-01-05  Pedro Alves  <palves@redhat.com>
16843
16844         * spu-tdep.c (spu_catch_start): Pass
16845         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
16846
16847 2018-01-05  Pedro Alves  <palves@redhat.com>
16848
16849         PR gdb/22670
16850         * ada-lang.c (literal_symbol_name_matcher): New function.
16851         (ada_get_symbol_name_matcher): Use it for
16852         symbol_name_match_type::SEARCH_NAME.
16853         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
16854         it down instead of assuming symbol_name_match_type::FULL.
16855         * block.h (block_lookup_symbol): New parameter 'match_type'.
16856         * c-valprint.c (print_unpacked_pointer): Use
16857         lookup_symbol_search_name instead of lookup_symbol.
16858         * compile/compile-object-load.c (get_out_value_type): Pass down
16859         symbol_name_match_type::SEARCH_NAME.
16860         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
16861         symbol_name_match_type::FULL.
16862         * cp-support.c (cp_get_symbol_name_matcher): Handle
16863         symbol_name_match_type::SEARCH_NAME.
16864         * infrun.c (insert_exception_resume_breakpoint): Use
16865         lookup_symbol_search_name.
16866         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
16867         * psymtab.c (maintenance_check_psymtabs): Use
16868         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
16869         * stack.c (print_frame_args): Use lookup_symbol_search_name and
16870         SYMBOL_SEARCH_NAME.
16871         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
16872         if symbol_name_match_type::SEARCH_NAME.
16873         (lookup_symbol_in_language): Pass down
16874         symbol_name_match_type::FULL.
16875         (lookup_symbol_search_name): New.
16876         (lookup_language_this): Pass down
16877         symbol_name_match_type::SEARCH_NAME.
16878         (lookup_symbol_aux, lookup_local_symbol): New parameter
16879         'match_type'.  Pass it down.
16880         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
16881         (lookup_symbol_search_name): New declaration.
16882         (lookup_symbol_in_block): New 'match_type' parameter.
16883
16884 2018-01-05  Pedro Alves  <palves@redhat.com>
16885
16886         PR gdb/22670
16887         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
16888         ada_lookup_symbol.
16889         (ada_lookup_symbol): Reimplement in terms of
16890         ada_lookup_symbol_list, bits factored out from
16891         ada_lookup_encoded_symbol.
16892
16893 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16894
16895         * ada-exp.y (write_object_renaming): When subscripting an array
16896         using a symbol as the index, pass the block in call to
16897         ada_lookup_encoded_symbol when looking that symbol up.
16898
16899 2018-01-05  Jerome Guitton  <guitton@adacore.com>
16900
16901         * ada-lang.c (ada_array_length): Use ada_index_type instead of
16902         TYPE_INDEX_TYPE.
16903
16904 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16905
16906         * ada-lang.c (ada_to_fixed_value_create): Add handling of
16907         the case where VALUE_LVAL (val0) is not lval_memory.
16908
16909 2018-01-05  Xavier Roirand  <roirand@adacore.com>
16910
16911         * ada-valprint.c (print_optional_low_bound): Handle
16912         character-indexed array printing like boolean-indexed array
16913         printing.
16914
16915 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16916
16917         * NEWS: Create a new section for the next release branch.
16918         Rename the section of the current branch, now that it has
16919         been cut.
16920
16921 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16922
16923         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
16924         * version.in: Bump version to 8.1.50.DATE-git.
16925
16926 2018-01-03  Xavier Roirand  <roirand@adacore.com>
16927
16928         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
16929         Add field.
16930         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
16931         Add field.
16932         (default_exception_support_info) <catch_handlers_sym>: Add field.
16933         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
16934         (ada_exception_name_addr_1): Add "catch handlers" handling.
16935         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
16936         Update all callers.
16937         (create_excep_cond_exprs) <ex>: Add parameter.
16938         (re_set_exception): Update create_excep_cond_exprs call.
16939         (print_it_exception, print_one_exception, print_mention_exception)
16940         (print_recreate_exception): Add "catch handler" handling.
16941         (allocate_location_catch_handlers, re_set_catch_handlers)
16942         (check_status_catch_handlers, print_it_catch_handlers)
16943         (print_one_catch_handlers, print_mention_catch_handlers)
16944         (print_recreate_catch_handlers): New function.
16945         (catch_handlers_breakpoint_ops): New variable.
16946         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
16947         Add parameter.  Add "catch handler" handling.
16948         (ada_exception_sym_name, ada_exception_breakpoint_ops):
16949         Add "catch handler" handling.
16950         (ada_exception_catchpoint_cond_string): Add "catch handler"
16951         handling.
16952         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
16953         call.
16954         (catch_ada_handlers_command): New function.
16955         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
16956         operations structure.
16957         (_initialize_ada_language): Add "catch handlers" command entry.
16958         * NEWS: Document "catch handlers" feature.
16959
16960 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16961
16962         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
16963         account when creating the array type of the slice.
16964         (ada_value_slice): Likewise.
16965
16966 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16967
16968         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
16969         New enum value.
16970         (create_array_type_with_stride): Add byte_stride_prop parameter.
16971         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
16972         New parameter.  Update all callers in this file.
16973         (array_type_has_dynamic_stride): New function.
16974         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
16975         of arrays with dynamic byte strides.
16976         * dwarf2read.c (read_array_type): Add support for dynamic
16977         DW_AT_byte_stride attributes.
16978
16979 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16980
16981         * dwarf2read.c (read_unspecified_type): Treat
16982         DW_TAG_enumeration_type DIEs from Ada units as stubs.
16983
16984 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16985
16986         Update copyright year range in all GDB files.
16987
16988 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
16989
16990         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
16991         and gdb/testsuite/gdb.base/step-line.c.
16992
16993 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16994
16995         * copyright.py (main): Dump the contents of
16996         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
16997         even if BY_HAND is empty.
16998
16999 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
17000
17001         * top.c (print_gdb_version): Update Copyright year in version
17002         message.
17003
17004 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
17005
17006         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
17007
17008 For older changes see ChangeLog-2017.
17009 \f
17010 Local Variables:
17011 mode: change-log
17012 left-margin: 8
17013 fill-column: 74
17014 version-control: never
17015 coding: utf-8
17016 End: