Fix the build when GNU Source Highlight is not available
[external/binutils.git] / gdb / ChangeLog
1 2018-12-28  Tom Tromey  <tom@tromey.com>
2
3         * source-cache.c (get_language_name): Conditionally compile.
4
5 2018-12-28  Tom Tromey  <tom@tromey.com>
6
7         * jit.c (free_objfile_data): Only delete breakpoint if non-null.
8
9 2018-12-28  Tom Tromey  <tom@tromey.com>
10
11         * NEWS: Mention terminal styling.
12
13 2018-12-28  Tom Tromey  <tom@tromey.com>
14
15         * utils.h (can_emit_style_escape): Declare.
16         * utils.c (can_emit_style_escape): No longer static.
17         * cli/cli-style.c (set_style_enabled): New function.
18         (_initialize_cli_style): Use it.
19         * tui/tui-winsource.c (tui_show_source_line): Use tui_puts.
20         (tui_alloc_source_buffer): Change how source lines are allocated.
21         * tui/tui-source.c (copy_source_line): New function.
22         (tui_set_source_content): Use source cache.
23         * tui/tui-io.h (tui_puts): Update.
24         * tui/tui-io.c (tui_puts_internal): Add window parameter.
25         (tui_puts): Likewise.
26         (tui_redisplay_readline): Update.
27         * tui/tui-data.c (free_content_elements): Change how source window
28         contents are freed.
29         * source.c (forget_cached_source_info): Clear the source cache.
30         (print_source_lines_base): Use the source cache.
31         * source-cache.h: New file.
32         * source-cache.c: New file.
33         * configure.ac: Check for GNU Source Highlight library.
34         * configure: Update.
35         * config.in: Update.
36         * Makefile.in (SRCHIGH_LIBS, SRCHIGH_CFLAGS): New variables.
37         (INTERNAL_CFLAGS_BASE): Add SRCHIGH_CFLAGS.
38         (CLIBS): Add SRCHIGH_LIBS.
39         (COMMON_SFILES): Add source-cache.c.
40         (HFILES_NO_SRCDIR): Add source-cache.h.
41
42 2018-12-28  Tom Tromey  <tom@tromey.com>
43
44         * tui/tui-winsource.c (tui_show_source_line): Use wclrtoeol.
45
46 2018-12-28  Tom Tromey  <tom@tromey.com>
47
48         PR tui/14126:
49         * tui/tui.c (tui_enable): Call start_color and
50         use_default_colors.
51         * tui/tui-io.c (struct color_pair): New.
52         (color_pair_map, last_color_pair, last_style): New globals.
53         (tui_setup_io): Clean up color map when shutting down.
54         (curses_colors): New constant.
55         (get_color_pair, apply_ansi_escape): New functions.
56         (tui_write): Rewrite.
57         (tui_puts_internal): New function, from tui_puts.  Add "height"
58         parameter.
59         (tui_puts): Use tui_puts_internal.
60         (tui_redisplay_readline): Use tui_puts_internal.
61         (_initialize_tui_io): New function.
62         (color_map): New globals.
63         (get_color): New function.
64         * configure.ac: Check for use_default_colors.
65         * config.in, configure: Rebuild.
66
67 2018-12-28  Tom Tromey  <tom@tromey.com>
68
69         * ui-out.h (enum class ui_out_style_kind) <ADDRESS>: New
70         constant.
71         * ui-out.c (ui_out::field_core_addr): Add styling.
72         * stack.c (print_frame): Add styling.
73         * printcmd.c (print_address): Add styling.
74         (print_address_demangle, info_address_command): Likewise.
75         * cli/cli-style.h (address_style): Declare.
76         * cli/cli-style.c (address_style): New global.
77         (_initialize_cli_style): Register new commands.
78         * cli-out.c (cli_ui_out::do_field_string): Update.
79
80 2018-12-28  Tom Tromey  <tom@tromey.com>
81
82         * symfile.c (symbol_file_add_with_addrs): Style file name.
83
84 2018-12-28  Tom Tromey  <tom@tromey.com>
85
86         * top.c (print_gdb_version): Style gdb version number.
87
88 2018-12-28  Tom Tromey  <tom@tromey.com>
89
90         * printcmd.c (print_address_symbolic): Style function name.
91
92 2018-12-28  Tom Tromey  <tom@tromey.com>
93
94         * breakpoint.c (say_where): Style file name.
95
96 2018-12-28  Tom Tromey  <tom@tromey.com>
97
98         * ui-out.h (enum class ui_out_style_kind) <VARIABLE>: New global.
99         * stack.c (print_frame_arg): Style name.
100         * printcmd.c (print_variable_and_value): Style variable name.
101         * cli/cli-style.h (variable_name_style): Declare.
102         * cli/cli-style.c (variable_name_style): New global.
103         (_initialize_cli_style): Update.
104         * cli-out.c (cli_ui_out::do_field_string): Update.
105
106 2018-12-28  Tom Tromey  <tom@tromey.com>
107
108         * utils.h (reset_terminal_style): Declare.
109         * utils.c (can_emit_style_escape): New function.
110         (set_output_style): Use it.
111         (reset_terminal_style): New function.
112         * printcmd.c (printf_command): Call reset_terminal_style.
113         * cli/cli-cmds.c (echo_command): Call reset_terminal_style.
114
115 2018-12-28  Tom Tromey  <tom@tromey.com>
116
117         * utils.h (set_output_style, fprintf_styled)
118         (fputs_styled): Declare.
119         * utils.c (applied_style, desired_style): New globals.
120         (emit_style_escape, set_output_style): New function.
121         (prompt_for_continue): Emit style escapes.
122         (fputs_maybe_filtered): Likewise.
123         (fputs_styled, fprintf_styled): New functions.
124         * ui-out.h (enum class ui_out_style_kind): New.
125         (class ui_out) <field_string, field_stream, do_field_string>: Add
126         style parameter.
127         * ui-out.c (ui_out::field_stream, ui_out::field_string): Add style
128         parameter.
129         * tui/tui-out.h (class tui_ui_out) <do_field_string>: Add style
130         parameter.
131         * tui/tui-out.c (tui_ui_out::do_field_string): Add style
132         parameter.
133         (tui_ui_out::do_field_string): Update.
134         * tracepoint.c (print_one_static_tracepoint_marker): Style
135         output.
136         * stack.c (print_frame_info, print_frame): Style output.
137         * source.c (print_source_lines_base): Style output.
138         * skip.c (info_skip_command): Style output.
139         * record-btrace.c (btrace_call_history_src_line): Style output.
140         (btrace_call_history): Likewise.
141         * python/py-framefilter.c (py_print_frame): Style output.
142         * mi/mi-out.h (class mi_ui_out) <do_field_string>: Add style
143         parameter.
144         * mi/mi-out.c (mi_ui_out::do_table_header)
145         (mi_ui_out::do_field_int): Update.
146         (mi_ui_out::do_field_string): Update.
147         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
148         Style output.
149         * cli/cli-style.h: New file.
150         * cli/cli-style.c: New file.
151         * cli-out.h (class cli_ui_out) <do_field_string>: Add style
152         parameter.
153         * cli-out.c (cli_ui_out::do_table_header)
154         (cli_ui_out::do_field_int, cli_ui_out::do_field_skip): Update.
155         (cli_ui_out::do_field_string): Add style parameter.  Style the
156         output.
157         * breakpoint.c (print_breakpoint_location): Style output.
158         (update_static_tracepoint): Likewise.
159         * Makefile.in (SUBDIR_CLI_SRCS): Add cli-style.c.
160         (HFILES_NO_SRCDIR): Add cli-style.h.
161
162 2018-12-28  Tom Tromey  <tom@tromey.com>
163
164         * unittests/style-selftests.c: New file.
165         * ui-style.c: New file.
166         * ui-style.h: New file.
167         * ui-file.h: Include ui-style.h.
168         * Makefile.in (COMMON_SFILES): Add ui-style.c.
169         (HFILES_NO_SRCDIR): Add ui-style.h.
170         (SUBDIR_UNITTESTS_SRCS): Add style-selftests.c.
171
172 2018-12-28  Tom Tromey  <tom@tromey.com>
173
174         * command.h (add_setshow_enum_cmd): Add "context" argument.
175         * cli/cli-decode.c (add_setshow_enum_cmd): Add "context"
176         argument.  Call set_cmd_context.
177
178 2018-12-28  Tom Tromey  <tom@tromey.com>
179
180         * utils.c (filter_initialized): New global.
181         (wrap_buffer): Now a std::string.
182         (wrap_pointer): Remove.
183         (flush_wrap_buffer): New function.
184         (filtered_printing_initialized, set_width, wrap_here)
185         (fputs_maybe_filtered): Update.
186
187 2018-12-28  Eli Zaretskii  <eliz@gnu.org>
188
189         * coffread.c (coff_symtab_read): Don't record in minsyms symbols
190         that are unresolved.  This avoids triggering an internal error
191         when stepping outside of 'main' in MinGW programs.
192
193 2018-12-27  Tom Tromey  <tom@tromey.com>
194
195         * python/py-utils.c (gdbpy_handle_exception): Translate
196         PyExc_KeyboardInterrupt to quit.
197
198 2018-12-27  Tom Tromey  <tom@tromey.com>
199
200         * python/python-internal.h (gdbpy_print_stack_or_quit): Declare.
201         * python/py-unwind.c (pyuw_sniffer): Use
202         gdbpy_print_stack_or_quit.
203         * python/py-framefilter.c (throw_quit_or_print_exception):
204         Remove.
205         (gdbpy_apply_frame_filter): Use gdbpy_print_stack_or_quit.
206         * python/python.c (gdbpy_print_stack_or_quit): New function.
207
208 2018-12-27  Tom Tromey  <tom@tromey.com>
209
210         * python/py-value.c (convert_value_from_python): Use
211         gdbpy_convert_exception.
212         * python/py-param.c (parmpy_init): Use gdbpy_convert_exception.
213         * python/py-cmd.c (cmdpy_init): Use gdbpy_convert_exception.
214         * python/py-breakpoint.c (bppy_init): Use
215         gdbpy_convert_exception.
216
217 2018-12-27  Tom Tromey  <tom@tromey.com>
218
219         * configure.nat (NATDEPFILES): Use nat/ prefix.
220         * Makefile.in (CONFIG_SRC_SUBDIR): Add nat.
221         (%.o: ${srcdir}/nat/%.c): Remove rule.
222         (INIT_FILES): Do not filter out NATDEPFILES.
223
224 2018-12-27  Tom Tromey  <tom@tromey.com>
225
226         * Makefile.in (INIT_FILES): Redefine.
227         (stamp-init): Remove sed, tr invocations.  Use for loop.  Don't
228         set LANG or LC_ALL.
229
230 2018-12-27  Tom Tromey  <tom@tromey.com>
231
232         * Makefile.in (stamp-init): Remove gdbtypes special case.
233
234 2018-12-27  John Baldwin  <jhb@FreeBSD.org>
235
236         * config/i386/nm-fbsd.h: Remove file.
237         * Makefile.in (HFILES_NO_SRCDIR): Remove config/i386/nm-fbsd.h.
238         * configure.nat: Remove NAT_FILE for FreeBSD/i386.
239
240 2018-12-27  Tom Tromey  <tom@tromey.com>
241
242         * minsyms.h (class minimal_symbol_reader): Use
243         DISABLE_COPY_AND_ASSIGN.
244
245 2018-12-27  Tom Tromey  <tom@tromey.com>
246
247         * python/python.c (python_interactive_command): Use std::string.
248         (gdbpy_parameter): Likewise.
249         * python/py-utils.c (unicode_to_encoded_string): Update comment.
250         * python/py-symtab.c (salpy_str): Use PyString_FromFormat.
251         * python/py-record-btrace.c (recpy_bt_insn_data): Use
252         byte_vector.
253         * python/py-objfile.c (objfpy_get_build_id): Use
254         unique_xmalloc_ptr.
255         * python/py-inferior.c (infpy_read_memory): Use
256         unique_xmalloc_ptr.
257         * python/py-cmd.c (gdbpy_parse_command_name): Use std::string.
258
259 2018-12-26  Simon Marchi  <simon.marchi@polymtl.ca>
260
261         * target.c (target_terminal::restore_inferior): Remove struct keyword.
262
263 2018-12-26  Simon Marchi  <simon.marchi@ericsson.com>
264
265         * build-id.c (build_id_to_debug_bfd): Enhance debug output.
266         * symfile.c (separate_debug_file_exists): Likewise.
267
268 2018-12-24  Andrew Burgess  <andrew.burgess@embecosm.com>
269
270         * c-exp.y (field_name): Allow DOUBLE_KEYWORD, INT_KEYWORD, LONG,
271         SHORT, SIGNED_KEYWORD, and UNSIGNED tokens to act as a field
272         names.
273         (typename_stoken): New function.
274
275 2018-12-24  Andrew Burgess  <andrew.burgess@embecosm.com>
276
277         * c-exp.y (field_name): New %token, and new rule.
278         (exp): Replace uses of 'name' with 'field_name' where appropriate.
279
280 2018-12-24  Andrew Burgess  <andrew.burgess@embecosm.com>
281
282         PR gdb/13368
283         * c-exp.y (typebase): Extend the comment.
284         (ident_tokens): Likewise.
285
286 2018-12-18  Tom Tromey  <tom@tromey.com>
287
288         * dwarf2read.c (dwarf2_find_containing_comp_unit): Don't take
289         address of sect_off.
290
291 2018-12-23  Joel Brobecker  <brobecker@adacore.com>
292
293         GDB 8.2.1 released.
294
295 2018-12-22  Andrew Burgess  <andrew.burgess@embecosm.com>
296
297         * riscv-tdep.c (riscv_call_arg_struct): Don't adjust size before
298         assigning locations.
299         (riscv_return_value): Take more care not to read/write outside of
300         argument buffer.  Cast return value between the declared type and
301         the abi type.
302
303 2018-12-22  Andrew Burgess  <andrew.burgess@embecosm.com>
304
305         * riscv-tdep.c (riscv_register_reggroup_p): Save and restore fcsr,
306         fflags, and frm registers.
307
308 2018-12-22  Andrew Burgess  <andrew.burgess@embecosm.com>
309
310         * riscv-tdep.c (riscv_dwarf_reg_to_regnum): New function.
311         (riscv_gdbarch_init): Register new function with gdbarch.
312         * riscv-tdep.h: New enum to define RISC-V DWARF register numbers.
313
314 2018-12-21  Simon Marchi  <simon.marchi@ericsson.com>
315
316         * minsyms.c (mst_str): New.
317         (minimal_symbol_reader::record_full): Add debug output.
318
319 2018-12-21  John Baldwin  <jhb@FreeBSD.org>
320
321         * fbsd-nat.c (fbsd_handle_debug_trap): Require pl.pl_flags to
322         equal PL_FLAG_SI.
323         (fbsd_nat_target::stopped_by_sw_breakpoint): Likewise.
324
325 2018-12-21  Paul Marechal  <paul.marechal@ericsson.com>
326
327         PR gdb/23974
328         * target.c (target_read_stralloc): Check for empty vector.
329
330 2018-12-21  Дилян Палаузов  <dilyan.palauzov@aegee.org>
331
332         * top.c (print_gdb_configuration): Print "--without-python"
333         if GDB was configured without Python.
334
335 2018-12-21  Andrew Burgess  <andrew.burgess@embecosm.com>
336
337         * riscv-tdep.c (riscv_scan_prologue): Use plongest to format
338         a signed offset as a string.
339
340 2018-12-21  Dave Murphy  <davem@devkitpro.org>
341
342         * dtrace-probe.c (dtrace_static_probe_ops): Explicit zero
343         initialise.
344         * probe.c (any_static_probe_ops): Ditto.
345         * record-btrace.c (record_btrace_thread_observer_token): Ditto.
346         * stap-probe.c (stap_static_probe_ops): Ditto.
347         * tui/tui-hooks.c (tui_observers_token): Ditto.
348         * unittests/observable-selftests.c (token1, token2, token3): Ditto.
349
350 2018-12-19  Andrew Burgess  <andrew.burgess@embecosm.com>
351
352         * gdb/dummy-frame.c (default_dummy_id): Defined new function.
353         * gdb/dummy-frame.h (default_dummy_id): Declare new function.
354         * gdb/frame-unwind.c (default_unwind_pc): Define new function.
355         (default_unwind_sp): Define new function.
356         * gdb/frame-unwind.h (default_unwind_pc): Declare new function.
357         (default_unwind_sp): Declare new function.
358         * gdb/frame.c (frame_unwind_pc): Assume gdbarch_unwind_pc is
359         available.
360         (get_frame_sp): Assume that gdbarch_unwind_sp is available.
361         * gdb/gdbarch.c: Regenerate.
362         * gdb/gdbarch.h: Regenerate.
363         * gdb/gdbarch.sh: Update definition of dummy_id, unwind_pc, and
364         unwind_sp.  Add additional header files to be included in
365         generated file.
366
367 2018-12-19  Dimitar Dimitrov  <dimitar@dinux.eu>
368
369         * nat/linux-ptrace.c (linux_ptrace_test_ret_to_nx): Remove
370         sp clobbers.
371
372 2018-12-17  Andrew Burgess  <andrew.burgess@embecosm.com>
373
374         * dwarf2read.c (struct dwarf2_cu): Convert the fields 'mark',
375         'has_loclist', 'checked_producer', 'producer_is_gxx_lt_4_6',
376         'producer_is_gcc_lt_4_3', 'producer_is_icc_lt_14',
377         'processing_has_namespace_info' from unsigned int to bool.  Update
378         comments.
379         (producer_is_icc_lt_14): Update return type.
380         (producer_is_gcc_lt_4_3): Likewise.
381         (producer_is_gxx_lt_4_6): Likewise.
382         (process_die): Write true instead of 1 into predicate fields.
383         (dwarf2_start_symtab): Likewise.
384         (var_decode_location): Likewise.
385         (dwarf2_mark_helper): Likewise.
386         (dwarf2_mark): Likewise.
387         (dwarf2_clear_marks): Write false instead of 0 into predicate
388         field.
389         (dwarf2_cu::dwarf2_cu): Initialise predicate fields to false, not
390         0.
391
392 2018-12-17  Szabolcs Nagy  <szabolcs.nagy@arm.com>
393
394         * nat/aarch64-sve-linux-ptrace.h: Include signal.h instead of
395         asm/sigcontext.h.
396
397 2018-12-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
398
399         * nat/linux-ptrace.c (kill_child): Fix ARI warning by removing
400         warning trailing new line.
401
402 2018-12-16  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
403
404         * nat/linux-ptrace.c (kill_child): New function.
405         (linux_ptrace_test_ret_to_nx): Use kill_child instead of local code.
406         Add a call to kill_child in case of early return after fork.
407         (linux_check_ptrace_features): Use kill_child instead of local code.
408         (linux_test_for_tracefork): Likewise.
409
410 2018-12-14  Tom Tromey  <tom@tromey.com>
411
412         * Makefile.in: Remove "alloca" comment.
413         (INFOFILES): Remove.
414         (local-maintainer-clean): Don't use INFOFILES.
415
416 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
417
418         * syscalls/update-freebsd.sh: New file.
419         * syscalls/freebsd.xml: Regenerate.
420
421 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
422
423         * NEWS: Add entry documenting system call aliases.
424         * break-catch-syscall.c (catch_syscall_split_args): Pass 'result'
425         to get_syscalls_by_name.
426         * gdbarch.sh (UNKNOWN_SYSCALL): Remove.
427         * gdbarch.h: Regenerate.
428         * syscalls/gdb-syscalls.dtd (syscall): Add alias attribute.
429         * xml-syscall.c [!HAVE_LIBEXPAT] (get_syscalls_by_name): Rename
430         from get_syscall_by_name.  Now accepts a pointer to a vector of
431         integers and returns a bool.
432         [HAVE_LIBEXPAT] (struct syscall_desc): Add alias member.
433         (syscall_create_syscall_desc): Add alias parameter and pass it to
434         syscall_desc constructor.
435         (syscall_start_syscall): Handle alias attribute.
436         (syscall_attr): Add alias attribute.
437         (xml_get_syscalls_by_name): Rename from xml_get_syscall_number.
438         Now accepts a pointer to a vector of integers and returns a
439         bool.  Add syscalls whose alias or name matches the requested
440         name.
441         (get_syscalls_by_name): Rename from get_syscall_by_name.  Now
442         accepts a pointer to a vector of integers and returns a bool.
443         * xml-syscall.h (get_syscalls_by_name): Likewise.
444
445 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
446
447         * break-catch-syscall.c (catch_syscall_split_args): Pass 'result'
448         to get_syscalls_by_group.
449         * xml-syscall.c [!HAVE_LIBEXPAT] (get_syscalls_by_group): Return
450         false.
451         [HAVE_LIBEXPAT] (xml_list_syscalls_by_group): Append syscall
452         numbers to an existing vector of integers and return a bool.
453         (get_syscalls_by_group): Accept pointer to vector of integers
454         and change return type to bool.
455         * xml-syscall.h (get_syscalls_by_group): Likewise.
456
457 2018-12-13  Jim Wilson  <jimw@sifive.com>
458
459         * riscv-tdep.c (riscv_print_one_register_info): For MSTATUS, add
460         comment for SD field, and correct xlen calculation.  For MISA, add
461         comment for MXL field, add call to register_size, and correct base
462         calculation.
463
464 2018-12-13  Stafford Horne  <shorne@gmail.com>
465
466         * NEWS(New targets): Add or1k*-*-linux*.
467
468 2018-12-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
469
470         * nat/linux-osdata.c (linux_xfer_osdata_info_os_types): Forward
471         declare on one line to fix ARI warning.
472
473 2018-12-12  Andrew Burgess  <andrew.burgess@embecosm.com>
474
475         * infrun.c (infcall_suspend_state::infcall_suspend_state): New.
476         (infcall_suspend_state::registers): New.
477         (infcall_suspend_state::restore): New.
478         (infcall_suspend_state::thread_suspend): Rename to...
479         (infcall_suspend_state::m_thread_suspend): ...this.
480         (infcall_suspend_state::registers): Rename to...
481         (infcall_suspend_state::m_registers): ...this.
482         (infcall_suspend_state::siginfo_gdbarch): Rename to...
483         (infcall_suspend_state::m_siginfo_gdbarch): ...this.
484         (infcall_suspend_state::siginfo_data): Rename to...
485         (infcall_suspend_state::m_siginfo_data): ...this.
486         (save_infcall_suspend_state): Rewrite to use infcall_suspend_state
487         constructor.
488         (restore_infcall_suspend_state): Rewrite to use
489         infcall_suspend_state::restore method.
490         (get_infcall_suspend_state_regcache): Use
491         infcall_suspend_state::registers method.
492
493 2018-12-12  Andrew Burgess  <andrew.burgess@embecosm.com>
494
495         * riscv-tdep.c (riscv_call_arg_scalar_float): Unnamed (variadic)
496         arguments are passed in integer registers.
497         (riscv_call_arg_complex_float): Likewise.
498
499 2018-12-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
500
501         * nat/linux-osdata.c (common_getter): New function.
502         (struct osdata_type): Change getter to take_snapshot.
503         Add LONGEST len_avail and struct buffer buffer.
504         Change all elements in the initializer.
505         Add an element for the list of types.
506         (linux_xfer_osdata_info_os_types): New function.
507         (linux_common_xfer_osdata): Use common_getter for the list of types.
508         Replace getter call by common_getter.
509         (linux_xfer_osdata_cpus): Remove args READBUF, OFFSET, LEN.
510         Add arg BUFFER.  Only keep the code that adds data in BUFFER.
511         (linux_xfer_osdata_fds): Likewise.
512         (linux_xfer_osdata_modules): Likewise.
513         (linux_xfer_osdata_msg): Likewise.
514         (linux_xfer_osdata_processes): Likewise.
515         (linux_xfer_osdata_processgroups): Likewise.
516         (linux_xfer_osdata_sem): Likewise.
517         (linux_xfer_osdata_shm): Likewise.
518         (linux_xfer_osdata_isockets): Likewise.
519         (linux_xfer_osdata_threads): Likewise.
520
521 2018-12-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
522
523         * nat/linux-osdata.c: Removed various trailing spaces.
524
525 2018-12-10  Andrew Burgess  <andrew.burgess@embecosm.com>
526
527         * riscv-tdep.c (riscv_register_name): Fix ARI warning by removing
528         leading whitespace before #include line.
529
530 2018-12-08  Simon Marchi  <simon.marchi@ericsson.com>
531             Дилян Палаузов  <dilyan.palauzov@aegee.org>
532
533         PR gdb/23950
534         * configure.ac: Search for tgetent in libtinfow.
535         * configure: Re-generate.
536
537 2018-12-08  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
538
539         * linux-thread-db.c (struct thread_db_info): Add td_ta_delete_p.
540         (thread_db_err_str): Forward declare.
541         (delete_thread_db_info): Call td_ta_delete_p if available.
542         (try_thread_db_load_1): Acquire td_ta_delete address.
543         * nat/gdb_thread_db.h (td_ta_delete_ftype): Declare.
544
545 2018-12-08  Pedro Alves  <palves@redhat.com>
546
547         * source.c (forward_search_command): Rename to ...
548         (search_command_helper): ... this.  Add 'forward' parameter.
549         Tweak to use a gdb::def_vector<char> instead of a xrealloc'ed
550         buffer.  Handle backward searches too.
551         (forward_search_command, reverse_search_command): Reimplement by
552         calling search_command_helper.
553
554 2018-12-07  Andrew Burgess  <andrew.burgess@embecosm.com>
555
556         * .dir-locals.el: Copy most of the settings from c-mode over to
557         c++-mode.
558
559 2018-12-08  Stafford Horne  <shorne@gmail.com>
560
561         * Makefile.in (ALL_TARGET_OBS): Add or1k-linux-tdep.o.
562         * configure.tgt: Add or1k*-*-linux*.
563         * or1k-linux-tdep.c: New file.
564         * or1k-tdep.c (or1k_gdbarch_init): Call gdbarch_init_osabi.
565
566 2018-12-07  Pedro Alves  <palves@redhat.com>
567
568         * dwarf2read.c (get_gdb_index_contents_from_section): Use
569         gdb::make_array_view.
570
571 2018-12-05  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
572
573         * language.c (_initialize_language): Fix leak by assigning
574         a static string to language.  Same for range and case_sensitive,
575         even if no leak is detected for these variables.
576
577 2018-12-05  John Baldwin  <jhb@FreeBSD.org>
578
579         * configure: Re-generate.
580         * configure.ac: Use separate sed expressions to escape variables
581         in auto-load directories.
582
583 2018-12-05  Andrew Burgess  <andrew.burgess@embecosm.com>
584
585         * riscv-tdep.c (riscv_features_from_gdbarch_info): New function.
586         (riscv_find_default_target_description): Use new function to
587         extract feature from gdbarch_info.
588         (riscv_gdbarch_init): Add error checks for xlen and flen between
589         target description and bfd headers.  Be smarter about when we
590         think the hardware floating point abi should be used.
591
592 2018-12-05  Alan Hayward  <alan.hayward@arm.com>
593
594         * nat/aarch64-linux-hw-point.c
595         (aarch64_linux_any_set_debug_regs_state): New function.
596         * nat/aarch64-linux-hw-point.h
597         (aarch64_linux_any_set_debug_regs_state): New declaration.
598         * nat/aarch64-linux.c (aarch64_linux_new_thread): Check if any
599         BPs or WPs are set.
600
601 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
602
603         * common/filestuff.c [HAVE_KINFO_GETFILE]: Include headers.
604         (fdwalk) [HAVE_KINFO_GETFILE]: Use kinfo_getfile.
605
606 2018-11-30  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
607             Simon Marchi  <simon.marchi@ericsson.com>
608
609         * linespec.c (symtab_vector_up): Remove.
610         (symtabs_from_filename): Change return type to std::vector.
611         (collect_symtabs_from_filename): Likewise.
612         (create_sals_line_offset): Assign return value of
613         collect_symtabs_from_filename to *ls->file_symtabs.
614         (convert_explicit_location_to_linespec): Remove call to release.
615         (parse_linespec): Likewise.
616         (symtab_collector) <symtab_collector>: Remove initialization of
617         m_symtabs.
618         <release_symtabs>: Change return type to std::vector<symtab *>.
619         <operator ()>: Adjust.
620
621 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
622
623         * fbsd-nat.c [__FreeBSD_version >= 700009] (USE_SIGINFO): Macro
624         defined.
625         (union sigval32, struct siginfo32, fbsd_siginfo_size)
626         (fbsd_convert_siginfo): Make conditional on USE_SIGINFO instead
627         of KERN_PROC_AUXV and PT_LWPINFO.
628         (fbsd_nat_target::xfer_partial): Define method unconditionally.
629         Make TARGET_OBJECT_SIGNAL_INFO conditional on USE_SIGINFO.
630         Make TARGET_OBJECT_AUXV conditional on KERN_PROC_AUXV.
631         Make TARGET_OBJECT_FREEBSD_VMMAP and
632         TARGET_OBJECT_FREEBSD_PS_STRINGS conditional on KERN_PROC_VMMAP
633         and KERN_PROC_PS_STRINGS.
634         * fbsd-nat.h: Include <sys/proc.h>.
635         (fbsd_nat_target::xfer_partial): Declare method unconditionally.
636
637 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
638
639         * riscv-linux-nat.c: Add 'inferior.h' and 'target-descriptions.h'
640         header files.
641         (riscv_linux_nat_target::read_description): New method.
642
643 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
644
645         * arch/riscv.h (riscv_gdbarch_features::hash): New method.
646         * arch/riscv.c (struct riscv_gdbarch_features_hasher): New.
647         (riscv_tdesc_cache): New global.
648         (riscv_create_target_description): Look in the cache before
649         creating a new target description.
650
651 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
652
653         * arch/riscv.h (riscv_gdb_features::operator==): New.
654         (riscv_gdb_features::operator!=): New.
655         * riscv-tdep.c (riscv_gdbarch_init): Make use of the inequality
656         operator.
657
658 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
659
660         * arch/riscv.h (riscv_create_target_description): Make return type
661         const.
662         * arch/riscv.c (riscv_create_target_description): Likewise.
663         * riscv-tdep.c (riscv_find_default_target_description): Likewise.
664
665 2018-11-30  Jan Kratochvil  <jan.kratochvil@redhat.com>
666             Keith Seitz  <keiths@redhat.com>
667             Tom Tromey  <tom@tromey.com>
668             Sergio Durigan Junior  <sergiodj@redhat.com>
669
670         https://bugzilla.redhat.com/show_bug.cgi?id=1613614
671         * dwarf2read.c (dwarf2_find_containing_comp_unit): Add
672         'mid_cu->length' to '*cu_off' when checking if 'sect_off' is
673         inside the CU.
674
675 2018-11-30  Pedro Alves  <palves@redhat.com>
676
677         * aix-thread.c (aix_thread_target) <aix_thread_target>: Delete.
678         <stratum>: New override.
679         * bfd-target.c (aix_thread_target) <aix_thread_target>: Delete.
680         <stratum>: New override.
681         * bsd-uthread.c (bsd_uthread_target) <bsd_uthread_target>: Delete.
682         <stratum>: New override.
683         * exec.c (exec_target) <exec_target>: Delete.
684         <stratum>: New override.
685         * gdbarch-selftests.c (register_to_value_test): Adjust to use the
686         stratum method instead of the to_stratum field.
687         * linux-thread-db.c (thread_db_target) <thread_db_target>: Delete.
688         <stratum>: New override.
689         (thread_db_target::thread_db_target): Delete.
690         * make-target-delegates (print_class): Don't print a ctor
691         declaration.  Print a stratum method override declaration.
692         * process-stratum-target.h (process_stratum_target)
693         <process_stratum_target>: Delete.
694         <stratum>: New override.
695         * ravenscar-thread.c (ravenscar_thread_target)
696         <ravenscar_thread_target>: Delete.
697         <stratum>: New override.
698         * record-btrace.c (record_btrace_target)
699         <record_btrace_target>: Delete.
700         <stratum>: New override.
701         * record-full.c (record_full_base_target)
702         <record_full_base_target>: Delete.
703         <stratum>: New override.
704         * record.c (record_disconnect, record_detach)
705         (record_mourn_inferior, record_kill): Adjust to use the stratum
706         method instead of the to_stratum field.
707         * regcache.c (cooked_read_test, cooked_write_test): Likewise.
708         * sol-thread.c (sol_thread_target)
709         <sol_thread_target>: Delete.
710         <stratum>: New override.
711         * spu-multiarch.c (spu_multiarch_target)
712         <spu_multiarch_target>: Delete.
713         <stratum>: New override.
714         * target-delegates.c: Regenerate.
715         * target.c (target_stack::push, target_stack::unpush)
716         (pop_all_targets_above, pop_all_targets_at_and_above)
717         (info_target_command, target_require_runnable)
718         (target_stack::find_beneath): Adjust to use the stratum method
719         instead of the to_stratum field.
720         (dummy_target::dummy_target): Delete.
721         (dummy_target::stratum): New.
722         (debug_target::debug_target): Delete.
723         (debug_target::stratum): New.
724         (maintenance_print_target_stack): Adjust to use the stratum method
725         instead of the to_stratum field.
726         * target.h (struct target_ops) <stratum>: New method.
727         <to_stratum>: Delete.
728         <is_pushed>: Adjust to use the stratum method
729         instead of the to_stratum field.
730
731 2018-11-30  Pedro Alves  <palves@redhat.com>
732
733         * corelow.c (core_target) <has_all_memory, has_execution>: New
734         overrides.
735         * inf-child.c (inf_child_target::has_all_memory)
736         (inf_child_target::has_memory, inf_child_target::has_stack)
737         (inf_child_target::has_registers)
738         (inf_child_target::has_execution): Delete.
739         * inf-child.h (inf_child_target) <has_all_memory, has_memory,
740         has_stack, has_registers, has_execution>: Delete.
741         * process-stratum-target.c
742         (process_stratum_target::has_all_memory)
743         (process_stratum_target::has_memory)
744         (process_stratum_target::has_stack)
745         (process_stratum_target::has_registers)
746         (process_stratum_target::has_execution): New.
747         * process-stratum-target.h (process_stratum_target)
748         <has_all_memory, has_memory, has_stack, has_registers,
749         has_execution>: New method overrides.
750         * ravenscar-thread.c (ravenscar_thread_target) <has_all_memory,
751         has_memory, has_stack, has_registers, has_execution>: Delete.
752         * remote-sim.c (gdbsim_target) <has_stack, has_registers,
753         has_execution>: Delete.
754         * remote.c (remote_target) <has_all_memory, has_memory, has_stack,
755         has_registers, has_execution>: Delete.
756         * target.c (default_child_has_all_memory)
757         (default_child_has_memory, default_child_has_stack)
758         (default_child_has_registers, default_child_has_execution):
759         Delete.
760         * target.h (default_child_has_all_memory)
761         (default_child_has_memory, default_child_has_stack)
762         (default_child_has_registers, default_child_has_execution):
763         Delete.
764         * tracefile.h (tracefile_target) <has_execution>: New override.
765
766 2018-11-30  Pedro Alves  <palves@redhat.com>
767
768         * Makefile.in (COMMON_SFILES): Add process-stratum-target.c.
769         * bsd-kvm.c: Include "process-stratum-target.h".
770         (bsd_kvm_target): Now inherits from process_stratum_target.
771         (bsd_kvm_target::bsd_kvm_target): Default it.
772         * corelow.c: Include "process-stratum-target.h".
773         (core_target): Now inherits from process_stratum_target.
774         (core_target::core_target): Don't set to_stratum here.
775         * inf-child.c (inf_child_target::inf_child_target): Delete.
776         * inf-child.h: Include "process-stratum-target.h".
777         (inf_child_target): Inherit from process_stratum_target.
778         (inf_child_target) <inf_child_target>: Default it.
779         <can_async_p, supports_non_stop, supports_disable_randomization>:
780         Delete overrides.
781         * process-stratum-target.c: New file.
782         * process-stratum-target.h: New file.
783         * remote-sim.c: Include "process-stratum-target.h".
784         (gdbsim_target): Inherit from process_stratum_target.
785         <gdbsim_target>: Default it.
786         * remote.c: Include "process-stratum-target.h".
787         (remote_target): Inherit from process_stratum_target.
788         <remote_target>: Default it.
789         * target.c (default_thread_address_space)
790         (default_thread_architecture): Delete.
791         * target.h (target_ops) <thread_architecture>: Now returns NULL by
792         default.
793         <thread_address_space>: Ditto.
794         * test-target.h: Include "process-stratum-target.h" instead of
795         "target.h".
796         (test_target_ops): Inherit from process_stratum_target.
797         <test_target_ops>: Default it.
798         * tracefile.c (tracefile_target::tracefile_target): Delete.
799         * tracefile.h: Include "process-stratum-target.h".
800         (tracefile_target): Inherit from process_stratum_target.
801         <tracefile_target>: Default it.
802         * target-delegates.c: Regenerate.
803
804 2018-11-30  Pedro Alves  <palves@redhat.com>
805
806         * Makefile.in (COMMON_SFILES): Add test-target.c.
807         * gdbarch-selftests.c: Include "test-target.h".
808         * regcache.c: Include "test-target.h".
809         * target.c (test_target_info, test_target_ops::info): Move to ...
810         * test-target.c: ... this new file.
811         * target.h (test_target_ops): Move to ...
812         * test-target.h: ... this new file.
813
814 2018-11-29  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
815
816         * source.c (forward_search_command): Fix leak by using
817         xrealloc even for the first allocation in the loop, as buf
818         is static.
819
820 2018-11-29  Rajendra SY  <rajendra.sy@gmail.com>
821
822         PR gdb/23093
823         * gdb/fbsd-tdep.c (fbsd_gdb_signal_from_target)
824         (fbsd_gdb_signal_to_target): New.
825         (fbsd_init_abi): Install gdbarch "signal_from_target" and
826         "signal_to_target" methods.
827
828 2018-11-29  Tom Tromey  <tom@tromey.com>
829
830         * valarith.c (value_x_unop): Don't set argvec[3].
831
832 2018-11-26  Simon Marchi  <simon.marchi@ericsson.com>
833
834         PR gdb/23917
835         * sparc-linux-nat.c (sparc_linux_nat_target): Remove extraneous
836         semicolon.
837
838 2018-11-26  Pedro Alves  <palves@redhat.com>
839
840         * procfs.c (procfs_notice_thread): Replace uses of
841         in_thread_list/is_exited with find_thread_ptid/THREAD_EXITED.
842         * sol-thread.c (sol_thread_target::wait)
843         (sol_update_thread_list_callback): Likewise.
844
845 2018-11-25  Tom Tromey  <tom@tromey.com>
846
847         * ui-out.c (ui_out::field_fmt): Remove comment.
848         * tui/tui-out.c (tui_ui_out::do_field_fmt): Remove comment.
849         * mi/mi-out.c (mi_ui_out::do_field_fmt): Remove comment.
850
851 2018-11-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
852
853         * source.c (open_source_file): Leak fixed in '8e6a5953e1d Fix 4K
854         leak in open_source_file' has been partially undone by '2179fbc36d23
855         Return scoped_fd from open_source_file'. Re-add the transfer of
856         current s->fullname to the unique_xmalloc_ptr fullname given
857         to find_and_open_source.
858
859 2018-11-23  Pedro Alves  <palves@redhat.com>
860
861         * gdbthread.h (enum thread_state): Move comments here.
862         (is_running, is_stopped, is_exited): Remove declarations.
863
864 2018-11-22  Pedro Alves  <palves@redhat.com>
865
866         * Makefile.in (COMMON_SFILES): Add thread-iter.c.
867         * breakpoint.c (breakpoints_should_be_inserted_now): Replace
868         ALL_NON_EXITED_THREADS with all_non_exited_threads.
869         (print_one_breakpoint_location): Replace ALL_INFERIORS with
870         all_inferiors.
871         * bsd-kvm.c: Include inferior.h.
872         * btrace.c (btrace_free_objfile): Replace ALL_NON_EXITED_THREADS
873         with all_non_exited_threads.
874         * common/filtered-iterator.h: New.
875         * common/safe-iterator.h: New.
876         * corelow.c (core_target_open): Don't call init_thread_list here.
877         * darwin-nat.c (thread_info_from_private_thread_info): Replace
878         ALL_THREADS with all_threads.
879         * fbsd-nat.c (fbsd_nat_target::resume): Replace
880         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
881         * fbsd-tdep.c (fbsd_make_corefile_notes): Replace
882         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
883         * fork-child.c (postfork_hook): Don't call init_thread_list here.
884         * gdbarch-selftests.c (register_to_value_test): Adjust.
885         * gdbthread.h: Don't include "inferior.h" here.
886         (struct inferior): Forward declare.
887         (enum step_over_calls_kind): Moved here from inferior.h.
888         (thread_info::deletable): Definition moved to thread.c.
889         (find_thread_ptid (inferior *, ptid_t)): Declare.
890         (ALL_THREADS, ALL_THREADS_BY_INFERIOR, ALL_THREADS_SAFE): Delete.
891         Include "thread-iter.h".
892         (all_threads, all_non_exited_threads, all_threads_safe): New.
893         (any_thread_p): Declare.
894         (thread_list): Delete.
895         * infcmd.c (signal_command): Replace ALL_NON_EXITED_THREADS with
896         all_non_exited_threads.
897         (proceed_after_attach_callback): Delete.
898         (proceed_after_attach): Take an inferior pointer instead of an
899         integer PID.  Adjust to use range-for.
900         (attach_post_wait): Pass down inferior pointer instead of pid.
901         Use range-for instead of ALL_NON_EXITED_THREADS.
902         (detach_command): Remove init_thread_list call.
903         * inferior-iter.h: New.
904         * inferior.c (struct delete_thread_of_inferior_arg): Delete.
905         (delete_thread_of_inferior): Delete.
906         (delete_inferior, exit_inferior_1): Use range-for with
907         inf->threads_safe() instead of iterate_over_threads.
908         (inferior_appeared): Call init_thread_list here.
909         (discard_all_inferiors): Use all_non_exited_inferiors.
910         (find_inferior_id, find_inferior_pid): Use all_inferiors.
911         (iterate_over_inferiors): Use all_inferiors_safe.
912         (have_inferiors, number_of_live_inferiors): Use
913         all_non_exited_inferiors.
914         (number_of_inferiors): Use all_inferiors and std::distance.
915         (print_inferior): Use all_inferiors.
916         * inferior.h: Include gdbthread.h.
917         (enum step_over_calls_kind): Moved to gdbthread.h.
918         (struct inferior) <thread_list>: New field.
919         <threads, non_exited_threads, threads_safe>: New methods.
920         (ALL_INFERIORS): Delete.
921         Include "inferior-iter.h".
922         (ALL_NON_EXITED_INFERIORS): Delete.
923         (all_inferiors_safe, all_inferiors, all_non_exited_inferiors): New
924         functions.
925         * inflow.c (child_interrupt, child_pass_ctrlc): Replace
926         ALL_NON_EXITED_THREADS with all_non_exited_threads.
927         * infrun.c (follow_exec): Use all_threads_safe.
928         (clear_proceed_status, proceed): Use all_non_exited_threads.
929         (init_wait_for_inferior): Don't clear inline frame state here.
930         (infrun_thread_stop_requested, for_each_just_stopped_thread): Use
931         all_threads instead of ALL_NON_EXITED_THREADS.
932         (random_pending_event_thread): Use all_non_exited_threads instead
933         of ALL_NON_EXITED_THREADS.  Use a lambda for repeated code.
934         (clean_up_just_stopped_threads_fsms): Use all_non_exited_threads
935         instead of ALL_NON_EXITED_THREADS.
936         (handle_no_resumed): Use all_non_exited_threads instead of
937         ALL_NON_EXITED_THREADS.  Use all_inferiors instead of
938         ALL_INFERIORS.
939         (restart_threads, switch_back_to_stepped_thread): Use
940         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
941         * linux-nat.c (check_zombie_leaders): Replace ALL_INFERIORS with
942         all_inferiors.
943         (kill_unfollowed_fork_children): Use inf->non_exited_threads
944         instead of ALL_NON_EXITED_THREADS.
945         * linux-tdep.c (linux_make_corefile_notes): Use
946         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
947         * linux-thread-db.c (thread_db_target::update_thread_list):
948         Replace ALL_INFERIORS with all_inferiors.
949         (thread_db_target::thread_handle_to_thread_info): Use
950         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
951         * mi/mi-interp.c (multiple_inferiors_p): New.
952         (mi_on_resume_1): Simplify using all_non_exited_threads and
953         multiple_inferiors_p.
954         * mi/mi-main.c (mi_cmd_thread_list_ids): Use all_non_exited_threads
955         instead of ALL_NON_EXITED_THREADS.
956         * nto-procfs.c (nto_procfs_target::open): Don't call
957         init_thread_list here.
958         * record-btrace.c (record_btrace_target_open)
959         (record_btrace_target::stop_recording)
960         (record_btrace_target::close)
961         (record_btrace_target::record_is_replaying)
962         (record_btrace_target::resume, record_btrace_target::wait)
963         (record_btrace_target::record_stop_replaying): Use
964         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
965         * record-full.c (record_full_wait_1): Use all_non_exited_threads
966         instead of ALL_NON_EXITED_THREADS.
967         * regcache.c (cooked_read_test): Remove reference to global
968         thread_list.
969         * remote-sim.c (gdbsim_target::create_inferior): Don't call
970         init_thread_list here.
971         * remote.c (remote_target::update_thread_list): Use
972         all_threads_safe instead of ALL_NON_EXITED_THREADS.
973         (remote_target::process_initial_stop_replies): Replace
974         ALL_INFERIORS with all_non_exited_inferiors and use
975         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
976         (remote_target::open_1): Don't call init_thread_list here.
977         (remote_target::append_pending_thread_resumptions)
978         (remote_target::remote_resume_with_hc): Use all_non_exited_threads
979         instead of ALL_NON_EXITED_THREADS.
980         (remote_target::commit_resume)
981         (remote_target::remove_new_fork_children): Replace ALL_INFERIORS
982         with all_non_exited_inferiors and use all_non_exited_threads
983         instead of ALL_NON_EXITED_THREADS.
984         (remote_target::kill_new_fork_children): Use
985         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.  Remove
986         init_thread_list and init_wait_for_inferior calls.
987         (remote_target::remote_btrace_maybe_reopen)
988         (remote_target::thread_handle_to_thread_info): Use
989         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
990         * target.c (target_terminal::restore_inferior)
991         (target_terminal_is_ours_kind): Replace ALL_INFERIORS with
992         all_non_exited_inferiors.
993         * thread-iter.c: New file.
994         * thread-iter.h: New file.
995         * thread.c: Include "inline-frame.h".
996         (thread_list): Delete.
997         (clear_thread_inferior_resources): Call clear_inline_frame_state.
998         (init_thread_list): Use all_threads_safe instead of
999         ALL_THREADS_SAFE.  Adjust to per-inferior thread lists.
1000         (new_thread): Adjust to per-inferior thread lists.
1001         (add_thread_silent): Pass inferior to find_thread_ptid.
1002         (thread_info::deletable): New, moved from the header.
1003         (delete_thread_1): Adjust to per-inferior thread lists.
1004         (find_thread_global_id): Use inf->threads().
1005         (find_thread_ptid): Use find_inferior_ptid and pass inferior to
1006         find_thread_ptid.
1007         (find_thread_ptid(inferior*, ptid_t)): New overload.
1008         (iterate_over_threads): Use all_threads_safe.
1009         (any_thread_p): New.
1010         (thread_count): Use all_threads and std::distance.
1011         (live_threads_count): Use all_non_exited_threads and
1012         std::distance.
1013         (valid_global_thread_id): Use all_threads.
1014         (in_thread_list): Use find_thread_ptid.
1015         (first_thread_of_inferior): Adjust to per-inferior thread lists.
1016         (any_thread_of_inferior, any_live_thread_of_inferior): Use
1017         inf->non_exited_threads().
1018         (prune_threads, delete_exited_threads): Use all_threads_safe.
1019         (thread_change_ptid): Pass inferior pointer to find_thread_ptid.
1020         (set_resumed, set_running): Use all_non_exited_threads.
1021         (is_thread_state, is_stopped, is_exited, is_running)
1022         (is_executing): Delete.
1023         (set_executing, set_stop_requested, finish_thread_state): Use
1024         all_non_exited_threads.
1025         (print_thread_info_1): Use all_inferiors and all_threads.
1026         (thread_apply_all_command): Use all_non_exited_threads.
1027         (thread_find_command): Use all_threads.
1028         (update_threads_executing): Use all_non_exited_threads.
1029         * tid-parse.c (parse_thread_id): Use inf->threads.
1030         * x86-bsd-nat.c (x86bsd_dr_set): Use inf->non_exited_threads ().
1031
1032 2018-11-22  Pedro Alves  <palves@redhat.com>
1033
1034         * infrun.c (follow_exec) <set follow-exec new>: Add thread and
1035         switch to it before calling into try_open_exec_file.
1036
1037 2018-11-22  Pedro Alves  <palves@redhat.com>
1038
1039         * cli/cli-interp.c (cli_on_user_selected_context_changed): Use
1040         inferior_thread instead of find_thread_ptid, and only when
1041         inferior_ptid is not null_ptid.
1042         * inferior.c (add_inferior): Don't include target_pid_to_str
1043         output when the inferior is not started.
1044         * python/py-inferior.c (python_on_normal_stop): Don't use
1045         find_thread_ptid.
1046         (tui_on_user_selected_context_changed): Use inferior_thread
1047         instead of find_thread_ptid, and only when inferior_ptid is not
1048         null_ptid.
1049
1050 2018-11-21  Benno Fünfstück  <benno.fuenfstueck@gmail.com>
1051
1052         PR python/23714
1053         * gdb/python/python.c (execute_gdb_command): Call
1054         prevent_dont_repeat earlier to avoid affecting dont_repeat.
1055
1056 2018-11-21  Andrew Burgess  <andrew.burgess@embecosm.com>
1057
1058         * Makefile.in (ALL_TARGET_OBS): Add arch/riscv.o.
1059         (HFILES_NO_SRCDIR): Add arch/riscv.h.
1060         * arch/riscv.c: New file.
1061         * arch/riscv.h: New file.
1062         * configure.tgt: Add cpu_obs list of riscv, move riscv-tdep.o into
1063         this list, and add arch/riscv.o.
1064         * features/Makefile: Add riscv features.
1065         * features/riscv/32bit-cpu.c: New file.
1066         * features/riscv/32bit-cpu.xml: New file.
1067         * features/riscv/32bit-csr.c: New file.
1068         * features/riscv/32bit-csr.xml: New file.
1069         * features/riscv/32bit-fpu.c: New file.
1070         * features/riscv/32bit-fpu.xml: New file.
1071         * features/riscv/64bit-cpu.c: New file.
1072         * features/riscv/64bit-cpu.xml: New file.
1073         * features/riscv/64bit-csr.c: New file.
1074         * features/riscv/64bit-csr.xml: New file.
1075         * features/riscv/64bit-fpu.c: New file.
1076         * features/riscv/64bit-fpu.xml: New file.
1077         * features/riscv/rebuild-csr-xml.sh: New file.
1078         * riscv-tdep.c: Add 'arch/riscv.h' include.
1079         (riscv_gdb_reg_names): Delete.
1080         (csr_reggroup): New global.
1081         (struct riscv_register_alias): Delete.
1082         (struct riscv_register_feature): New structure.
1083         (riscv_register_aliases): Delete.
1084         (riscv_xreg_feature): New global.
1085         (riscv_freg_feature): New global.
1086         (riscv_virtual_feature): New global.
1087         (riscv_csr_feature): New global.
1088         (riscv_create_csr_aliases): New function.
1089         (riscv_read_misa_reg): Delete.
1090         (riscv_has_feature): Delete.
1091         (riscv_isa_xlen): Simplify, just return cached xlen.
1092         (riscv_isa_flen): Simplify, just return cached flen.
1093         (riscv_has_fp_abi): Update for changes in struct gdbarch_tdep.
1094         (riscv_register_name): Update to make use of tdesc_register_name.
1095         Look up xreg and freg names in the new globals riscv_xreg_feature
1096         and riscv_freg_feature.  Don't supply csr aliases here.
1097         (riscv_fpreg_q_type): Delete.
1098         (riscv_register_type): Use tdesc_register_type in almost all
1099         cases, override the returned type in a few specific cases only.
1100         (riscv_print_one_register_info): Handle errors reading registers.
1101         (riscv_register_reggroup_p): Use tdesc_register_in_reggroup_p for
1102         registers that are otherwise unknown to GDB.  Also check the
1103         csr_reggroup.
1104         (riscv_print_registers_info): Remove assert about upper register
1105         number, and use gdbarch_register_reggroup_p instead of
1106         short-cutting.
1107         (riscv_find_default_target_description): New function.
1108         (riscv_check_tdesc_feature): New function.
1109         (riscv_add_reggroups): New function.
1110         (riscv_setup_register_aliases): New function.
1111         (riscv_init_reggroups): New function.
1112         (_initialize_riscv_tdep): Add calls to setup CSR aliases, and
1113         setup register groups.  Register new riscv debug variable.
1114         * riscv-tdep.h: Add 'arch/riscv.h' include.
1115         (struct gdbarch_tdep): Remove abi union, and add
1116         riscv_gdbarch_features field.  Remove cached quad floating point
1117         type, and provide initialisation for double type field.
1118         * target-descriptions.c (maint_print_c_tdesc_cmd): Add riscv to
1119         the list of targets using the feature based target descriptions.
1120         * NEWS: Mention target description support.
1121
1122 2018-11-21  Pedro Alves  <palves@redhat.com>
1123
1124         * valops.c (find_method_list, value_find_oload_method_list)
1125         (find_overload_match, find_oload_champ): Rename parameters and
1126         locals.
1127
1128 2018-11-21  Pedro Alves  <palves@redhat.com>
1129
1130         * valops.c (find_method_list): Replace pointer and length
1131         parameters with an gdb::array_view.  Adjust.
1132         (value_find_oload_method_list): Likewise.
1133         (find_overload_match): Use gdb::array_view for methods list.
1134         Adjust to find_oload_champ interface change.
1135         (find_oload_champ): 'xm_worker_vec' parameter now a pointer/array.
1136         'num_fns' parameter now a size_t.  Eliminate 'fn_count' local.
1137
1138 2018-11-21  Pedro Alves  <palves@redhat.com>
1139
1140         * gdbtypes.c (compare_badness): Change type of parameters to const
1141         reference.  Adjust to badness_vector being a std::vector now.
1142         (rank_function): Adjust to badness_vector being a std::vector now.
1143         * gdbtypes.h (badness_vector): Now a typedef to std::vector.
1144         (LENGTH_MATCH): Delete.
1145         (compare_badness): Change type of parameters to const reference.
1146         (rank_function): Return a badness_vector by value now.
1147         (find_overload_match): Adjust to badness_vector being a
1148         std::vector now.  Remove cleanups.
1149         (find_oload_champ_namespace): 'oload_champ_bv' parameter now a
1150         badness_vector pointer.
1151         (find_oload_champ_namespace_loop): 'oload_champ_bv' parameter now
1152         a badness_vector pointer.  Adjust to badness_vector being a
1153         std::vector now.  Remove cleanups.
1154         (find_oload_champ): 'oload_champ_bv' parameter now
1155         a badness_vector pointer.  Adjust to badness_vector being a
1156         std::vector now.  Remove cleanups.
1157
1158 2018-11-21  Pedro Alves  <palves@redhat.com>
1159
1160         * cp-support.c (sym_return_val_size, sym_return_val_index)
1161         (sym_return_val): Delete.
1162         (overload_list_add_symbol): Add std::vector parameter.  Adjust to
1163         add to the vector.
1164         (make_symbol_overload_list): Adjust to return a std::vector
1165         instead of maintaining a global open coded vector.
1166         (make_symbol_overload_list_block): Add std::vector parameter.
1167         (make_symbol_overload_list_block): Rename to ...
1168         (add_symbol_overload_list_block): ... this and add std::vector
1169         parameter.
1170         (make_symbol_overload_list_namespace): Rename to ...
1171         (add_symbol_overload_list_namespace): ... this and add std::vector
1172         parameter.
1173         (make_symbol_overload_list_adl_namespace): Rename to ...
1174         (add_symbol_overload_list_adl_namespace): ... this and add
1175         std::vector parameter.
1176         (make_symbol_overload_list_adl): Delete.
1177         (add_symbol_overload_list_adl): New.
1178         (make_symbol_overload_list_using): Rename to ...
1179         (add_symbol_overload_list_using): ... this and add std::vector
1180         parameter.
1181         (make_symbol_overload_list_qualified): Rename to ...
1182         (add_symbol_overload_list_qualified): ... this and add std::vector
1183         parameter.
1184         * cp-support.h: Include "common/array-view.h" and <vector>.
1185         (make_symbol_overload_list): Change return type to std::vector.
1186         (make_symbol_overload_list_adl): Delete declaration.
1187         (add_symbol_overload_list_adl): New declaration.
1188         * valops.c (find_overload_match): Local 'oload_syms' now a
1189         std::vector.
1190         (find_oload_champ_namespace): 'oload_syms' parameter now a
1191         std::vector pointer.
1192         (find_oload_champ_namespace_loop): 'oload_syms' parameter now a
1193         std::vector pointer.  Adjust to new make_symbol_overload_list
1194         interface.
1195
1196 2018-11-21  Pedro Alves  <palves@redhat.com>
1197
1198         * common/array-view.h (array_view::splice(size_type, size_t)): New.
1199         (array_view::splice(size_type)): New.
1200         * eval.c (eval_call, evaluate_funcall): Adjust to use array_view.
1201         * extension.c (xmethod_worker::get_arg_types): Adjust to return an
1202         std::vector.
1203         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
1204         * extension.h: Include "common/array-view.h".
1205         (xmethod_worker::invoke): Adjust to use gdb::array_view.
1206         (xmethod_worker::get_arg_types): Adjust to return an std::vector.
1207         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
1208         (xmethod_worker::do_get_arg_types): Adjust to use std::vector.
1209         (xmethod_worker::do_get_result_type): Adjust to use
1210         gdb::array_view.
1211         * gdbtypes.c (rank_function): Adjust to use gdb::array_view.
1212         * gdbtypes.h: Include "common/array-view.h".
1213         (rank_function): Adjust to use gdb::array_view.
1214         * python/py-xmethods.c (python_xmethod_worker::invoke)
1215         (python_xmethod_worker::do_get_arg_types)
1216         (python_xmethod_worker::do_get_result_type)
1217         (python_xmethod_worker::invoke): Adjust to new interfaces.
1218         * valarith.c (value_user_defined_cpp_op, value_user_defined_op)
1219         (value_x_binop, value_x_unop): Adjust to use gdb::array_view.
1220         * valops.c (find_overload_match, find_oload_champ_namespace)
1221         (find_oload_champ_namespace_loop, find_oload_champ): Adjust to use
1222         gdb:array_view and the new xmethod_worker interfaces.
1223         * value.c (result_type_of_xmethod, call_xmethod): Adjust to use
1224         gdb::array_view.
1225         * value.h (find_overload_match, result_type_of_xmethod)
1226         (call_xmethod): Adjust to use gdb::array_view.
1227         * unittests/array-view-selftests.c: Add slicing tests.
1228
1229 2018-11-21  Pedro Alves  <palves@redhat.com>
1230
1231         * ada-lang.c (ada_evaluate_subexp): Adjust to pass an array_view.
1232         * common/array-view.h (make_array_view): New.
1233         * compile/compile-object-run.c (compile_object_run): Adjust to
1234         pass an array_view.
1235         * elfread.c (elf_gnu_ifunc_resolve_addr): Adjust.
1236         * eval.c (eval_call): Adjust to pass an array_view.
1237         (evaluate_subexp_standard): Adjust to pass an array_view.
1238         * gcore.c (call_target_sbrk): Adjust to pass an array_view.
1239         * guile/scm-value.c (gdbscm_value_call): Likewise.
1240         * infcall.c (push_dummy_code): Replace pointer + size parameters
1241         with an array_view parameter.
1242         (call_function_by_hand, call_function_by_hand_dummy): Likewise and
1243         adjust.
1244         * infcall.h: Include "common/array-view.h".
1245         (call_function_by_hand, call_function_by_hand_dummy): Replace
1246         pointer + size parameters with an array_view parameter.
1247         * linux-fork.c (inferior_call_waitpid): Adjust to use array_view.
1248         * linux-tdep.c (linux_infcall_mmap): Likewise.
1249         * objc-lang.c (lookup_objc_class, lookup_child_selector)
1250         (value_nsstring, print_object_command): Likewise.
1251         * python/py-value.c (valpy_call): Likewise.
1252         * rust-lang.c (rust_evaluate_funcall): Likewise.
1253         * spu-tdep.c (flush_ea_cache): Likewise.
1254         * valarith.c (value_x_binop, value_x_unop): Likewise.
1255         * valops.c (value_allocate_space_in_inferior): Likewise.
1256         * unittests/array-view-selftests.c (run_tests): Add
1257         gdb::make_array_view test.
1258
1259 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
1260
1261         * cli-out.c (cli_ui_out::do_field_int): Use string_printf rather
1262         than a fixed size buffer.
1263
1264 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
1265
1266         * breakpoint.c (print_one_breakpoint_location): Reduce whitespace,
1267         and remove insertion of extra spaces in GDB's output.
1268         * cli-out.c (cli_ui_out::do_field_fmt): Update header comment.
1269         Layout field into a temporary buffer, and then output it as a
1270         string field.
1271
1272 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1273
1274         * NEWS: Document the language choice done by
1275         'info [types|functions|variables]|rbreak'.
1276
1277 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1278
1279         * symtab.c (treg_matches_sym_type_name): Use
1280         scoped_switch_to_sym_language_if_auto instead of local logic.
1281         (print_symbol_info): Use scoped_switch_to_sym_language_if_auto
1282         to switch to SYM language when language mode is auto.
1283
1284 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1285
1286         * language.h (scoped_switch_to_sym_language_if_auto): New class.
1287
1288 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1289
1290         * symtab.c (search_symbols): Properly check absence of type regexp
1291         before entering the loop scanning the minimal symbols.
1292
1293 2018-11-20  John Darrington  <john@darrington.wattle.id.au>
1294
1295         * s12z-tdep.c (s12z_extract_return_value): New function.
1296         (inv_reg_perm) New array.
1297         (s12z_return_value): Populate readbuf if non-null.
1298
1299 2018-11-20  Eli Zaretskii  <eliz@gnu.org>
1300
1301         * common/filestuff.c (gdb_fopen_cloexec): Disable use of "e" mode
1302         with 'fopen' also if O_CLOEXEC is equal to O_NOINHERIT, to cater
1303         to MinGW fixed by Gnulib.
1304         (O_NOINHERIT): Define if not defined.
1305
1306 2018-11-19  John Darrington  <john@darrington.wattle.id.au>
1307
1308         * s12z-tdep.c (s12z_frame_cache): Add an assertion.
1309
1310 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
1311
1312         * infrun.c (displaced_step_inferior_state) <next>: Remove.
1313
1314 2018-11-19  Tom Tromey  <tom@tromey.com>
1315
1316         * source.c (get_filename_and_charpos): Return void.
1317
1318 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
1319
1320         * skip.c (_initialize_step_skip): Fix "info skip" help.
1321
1322 2018-11-16  Tom Tromey  <tom@tromey.com>
1323
1324         PR rust/23625:
1325         * rust-lang.c (rust_internal_print_type): Handle TYPE_CODE_PTR.
1326
1327 2018-11-19  Simon Marchi  <simon.marchi@ericsson.com>
1328
1329         * infrun.c (displaced_step_inferior_states): Change type to
1330         std::forward_list.
1331         (get_displaced_stepping_state): Adjust.
1332         (displaced_step_in_progress_any_inferior): Adjust.
1333         (add_displaced_stepping_state): Adjust.
1334         (remove_displaced_stepping_state): Adjust.
1335
1336 2018-11-18  Tom Tromey  <tom@tromey.com>
1337
1338         PR build/23814:
1339         * target-delegates.c: Rebuild.
1340         * ia64-linux-nat.c (class ia64_linux_nat_target)
1341         <have_steppable_watchpoint>: Use override.  Return true, not 1.
1342         (ia64_linux_nat_target::can_use_hw_breakpoint): Rename.  Remove
1343         "self" argument.
1344         (ia64_linux_nat_target::low_new_thread): Rename.
1345         (class ia64_linux_nat_target) <read_description>: Don't declare.
1346         * target.h (struct target_ops) <have_steppable_watchpoint>: Return
1347         bool.
1348
1349 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1350
1351         PR gdb/22736:
1352         * aarch64-tdep.c (aarch64_push_dummy_call): Remove
1353         lang_struct_return code.
1354
1355 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1356
1357         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
1358         return_method.
1359         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
1360         * amd64-tdep.c (amd64_push_arguments): Likewise.
1361         (amd64_push_dummy_call): Likewise.
1362         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
1363         * arc-tdep.c (arc_push_dummy_call): Likewise.
1364         * arm-tdep.c (arm_push_dummy_call): Likewise.
1365         * avr-tdep.c (avr_push_dummy_call): Likewise.
1366         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
1367         * cris-tdep.c (cris_push_dummy_call): Likewise.
1368         * csky-tdep.c (csky_push_dummy_call): Likewise.
1369         * frv-tdep.c (frv_push_dummy_call): Likewise.
1370         * gdbarch.c: Regenerate.
1371         * gdbarch.h: Regenerate.
1372         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
1373         return_method.
1374         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
1375         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
1376         (hppa64_push_dummy_call): Likewise.
1377         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
1378         * i386-tdep.c (i386_push_dummy_call): Likewise.
1379         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
1380         * infcall.c (call_function_by_hand_dummy): Likewise.
1381         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
1382         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
1383         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
1384         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
1385         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
1386         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
1387         * mep-tdep.c (mep_push_dummy_call): Likewise.
1388         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
1389         (mips_n32n64_push_dummy_call): Likewise.
1390         (mips_o32_push_dummy_call): Likewise.
1391         (mips_o64_push_dummy_call): Likewise.
1392         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
1393         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
1394         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
1395         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
1396         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
1397         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
1398         (ppc64_sysv_abi_push_dummy_call): Likewise.
1399         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
1400         (ppc64_sysv_abi_push_dummy_call): Likewise.
1401         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
1402         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
1403         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
1404         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
1405         * rx-tdep.c (rx_push_dummy_call): Likewise.
1406         * s390-tdep.c (s390_push_dummy_call): Likewise.
1407         * score-tdep.c (score_push_dummy_call): Likewise.
1408         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
1409         (sh_push_dummy_call_nofpu): Likewise.
1410         * sparc-tdep.c (sparc32_store_arguments): Likewise.
1411         (sparc32_push_dummy_call): Likewise.
1412         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
1413         (sparc64_push_dummy_call): Likewise.
1414         * spu-tdep.c (spu_push_dummy_call): Likewise.
1415         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
1416         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
1417         * v850-tdep.c (v850_push_dummy_call): Likewise.
1418         * vax-tdep.c (vax_push_dummy_call): Likewise.
1419         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
1420         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
1421
1422 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1423
1424         * gdbarch.sh (enum function_call_return_method): Add enum.
1425         * gdbarch.h: Regenerate.
1426         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
1427
1428 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
1429
1430         * unittests/copy_bitwise-selftests.c: New file.
1431         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
1432         (selftests::copy_bitwise_tests): Delete, moving this code to
1433         unittests/copy_bitwise-selftests.c instead.
1434         (_initialize_utils): Do not register copy_bitwise tests.
1435         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1436         unittests/copy_bitwise-selftests.c.
1437
1438 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
1439
1440         * ada-lang.c (move_bits): Delete. Update all callers to use
1441         copy_bitwise instead.
1442         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
1443         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
1444         Move from here to utils.c.
1445         (_initialize_dwarf2loc): Remove call to register copy_bitwise
1446         selftests.
1447         * utils.h (copy_bitwise): Add declaration.
1448         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
1449         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
1450         Moved here from dwarf2loc.c.
1451         (_initialize_utils): Register copy_bitwise selftests.
1452
1453 2018-11-14  Jim Wilson  <jimw@sifive.com>
1454
1455         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
1456         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
1457         then increment next_regnum if odd.
1458         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
1459         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
1460         function type.  Pass new arg to riscv_arg_location based on function
1461         type.
1462         (riscv_return_value): Pass new arg to riscv_arg_location.
1463
1464         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
1465         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
1466         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
1467
1468         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
1469         setting len.  New local align, set to max of arg align and xlen,
1470         and pass to first riscv_assign_stack_location call.
1471
1472 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
1473
1474         * skip.c (complete_skip_number): New function.
1475         (_initialize_step_skip): Add completers to some skip commands.
1476
1477 2018-11-09  Tom Tromey  <tom@tromey.com>
1478
1479         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
1480         (struct remote_g_packet_data): Derive from allocate_on_obstack.
1481         <guesses>: Now a std::vector.
1482         (remote_g_packet_data_init, register_remote_g_packet_guess):
1483         Update.
1484         (remote_read_description_p): Update.  Return bool.
1485         (remote_target::read_description): Update.
1486         (struct remote_g_packet_guess): Add constructor.
1487
1488 2018-11-09  Tom Tromey  <tom@tromey.com>
1489
1490         * common/scoped_fd.h (class scoped_fd): Add move constructor and
1491         move assignment operator.
1492         * psymtab.c (psymtab_to_fullname): Update.
1493         * source.h (open_source_file): Return scoped_fd.
1494         (find_and_open_source): Likewise.
1495         * source.c (open_source_file): Return scoped_fd.
1496         (get_filename_and_charpos): Update.
1497         (print_source_lines_base): Update.  Use scoped_fd::to_file.
1498         (forward_search_command): Likewise.
1499         (reverse_search_command): Likewise.
1500         (find_and_open_source): Return scoped_fd.
1501         * tui/tui-source.c (tui_set_source_content): Update.  Use
1502         gdb_file_up.
1503
1504 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
1505
1506         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
1507         overflow.
1508
1509 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1510
1511         * configure: Regenerate.
1512
1513 2018-11-09  Tom de Vries  <tdevries@suse.de>
1514
1515         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
1516         unconditionally, to set the language of the symbol.  Manage freeing
1517         returned pointer using gdb::unique_xmalloc_ptr.
1518
1519 2018-11-08  Tom Tromey  <tom@tromey.com>
1520
1521         * record.c (require_record_target): Upper-case "<TAB>".
1522
1523 2018-11-08  Tom Tromey  <tom@tromey.com>
1524
1525         * python/lib/gdb/command/pretty_printers.py
1526         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
1527
1528 2018-11-08  Tom Tromey  <tom@tromey.com>
1529
1530         PR gdb/23555:
1531         PR gdb/23838:
1532         * target.h (target_supports_terminal_ours): Return bool.
1533         * target.c (target_supports_terminal_ours): Handle case where
1534         current_top_target returns nullptr.  Return bool.
1535
1536 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
1537
1538         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
1539         return the correct count for potential HFAs.
1540
1541 2018-11-08  Jan Beulich  <jbeulich@suse.com>
1542
1543         * i387-tdep.c (i387_supply_xsave): Split handling of
1544         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
1545         (i387_collect_xsave): Likewise.
1546
1547 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
1548
1549         * riscv-tdep.c (riscv_insn::decode): Update header comment.
1550         (riscv_frame_this_id): Catch errors thrown while building the
1551         frame cache, leave the frame id as the default, which is the outer
1552         frame id.
1553
1554 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
1555
1556         * ada-lang.c (read_atcb): Only set task_info->called_task if
1557         task_info->state == Entry_Caller_Sleep.
1558         (print_ada_task_info): Do not check task_info->state before
1559         checking task_info->called_task.
1560         (info_task): Likewise.
1561
1562 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
1563
1564         * ada-tasks.c (read_atcb): Clear task_info before computing
1565         the value of each of its fields.
1566
1567 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
1568
1569         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
1570         NULL before dereferencing it.
1571
1572 2018-11-06  Tom de Vries  <tdevries@suse.de>
1573
1574         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
1575         program headers.
1576
1577 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
1578
1579         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
1580         so that it applies to uclinux as well.
1581
1582 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
1583
1584         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
1585         when on AAPCS.
1586
1587 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
1588
1589         * riscv-fbsd-nat.c (getregs_supplies): Return true for
1590         RISCV_CSR_SSTATUS_REGNUM.
1591
1592 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1593
1594         * source.c (open_source_file): Fix leak by transferring the
1595         current s->fullname to the unique_xmalloc_ptr fullname given
1596         to find_and_open_source.
1597
1598 2018-11-04  Tom Tromey  <tom@tromey.com>
1599
1600         * varobj.c (install_default_visualizer): Update.
1601         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
1602         Return gdbpy_ref.
1603         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
1604         (find_pretty_printer_from_progspace)
1605         (find_pretty_printer_from_gdb, find_pretty_printer)
1606         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
1607         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
1608         Update.
1609
1610 2018-11-04  Tom Tromey  <tom@tromey.com>
1611
1612         * python/python.c (gdbpy_parameter_value): Update.
1613         * python/python-internal.h (python_string_to_unicode)
1614         (python_string_to_target_python_string)
1615         (host_string_to_python_string): Return gdbpy_ref.
1616         * python/py-utils.c (python_string_to_unicode)
1617         (unicode_to_encoded_python_string)
1618         (unicode_to_target_python_string)
1619         (python_string_to_target_string)
1620         (python_string_to_target_python_string): Return gdbpy_ref.
1621         (python_string_to_host_string): Update.
1622         (host_string_to_python_string): Return gdbpy_ref.
1623         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
1624         (stpy_fullname): Update.
1625         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
1626         Update.
1627         * python/py-prettyprint.c (print_string_repr): Update.
1628         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
1629         (objfpy_get_build_id): Update.
1630         * python/py-breakpoint.c (bppy_get_location)
1631         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
1632         Update.
1633
1634 2018-11-04  Tom Tromey  <tom@tromey.com>
1635
1636         * python/python-internal.h (gdb_py_object_from_longest)
1637         (gdb_py_object_from_ulongest): Return gdbpy_ref.
1638         * python/py-value.c (valpy_int): Update.
1639         * python/py-utils.c (gdb_py_object_from_longest): Return
1640         gdbpy_ref.
1641         (gdb_py_object_from_ulongest): Likewise.
1642         * python/py-type.c (typy_get_alignof): Update.
1643         * python/py-linetable.c (ltpy_get_all_source_lines)
1644         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
1645         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
1646
1647 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1648
1649         * ada-lang.c (_initialize_ada_language): Fix typo.
1650
1651 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1652
1653         * language.c (type): Remove.
1654         (_initialize_language): Remove assignment to type.
1655
1656 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
1657
1658         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
1659         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
1660         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
1661         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
1662         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
1663         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
1664         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
1665         and aarch64-ravenscar-thread.o.
1666         * NEWS: Add entry documenting Ravenscar tasking support
1667         on AArch64 ELF.
1668
1669 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
1670
1671         * symtab.c (info_functions_command): Initialize quiet flag.
1672         * stack.c (info_args_command): Likewise.
1673
1674 2018-11-01  Jim Wilson  <jimw@sifive.com>
1675
1676         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
1677         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
1678         debugging messages.
1679
1680 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1681
1682         * ada-lang.c (ada_watch_location_expression): New function.
1683         (ada_language_defn): Set la_watch_location_expression to
1684         ada_watch_location_expression.
1685
1686 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1687
1688         * print-utils.c (int_string): Remove unnecessary trailing spaces.
1689
1690 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1691
1692         * rs6000-tdep.c (skip_prologue): Fix potential negative left
1693         shifting.
1694
1695 2018-11-01  Jerome Guitton  <guitton@adacore.com>
1696             Joel Brobecker  <brobecker@adacore.com>
1697
1698         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
1699         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
1700         * arm-pikeos-tdep.c: New file.
1701         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
1702         embedded system.
1703         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
1704
1705 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
1706
1707         * common/pathstuff.c (get_standard_temp_dir): New.
1708         * common/pathstuff.h (get_standard_temp_dir): New.
1709         * config.in: Re-generate.
1710         * configure: Re-generate.
1711         * configure.ac: Don't check for mkdtemp.
1712         * gnulib/aclocal-m4-deps.mk: Re-generate.
1713         * gnulib/aclocal.m4: Re-generate.
1714         * gnulib/config.in: Re-generate.
1715         * gnulib/configure: Re-generate.
1716         * gnulib/import/Makefile.am: Re-generate.
1717         * gnulib/import/Makefile.in: Re-generate.
1718         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1719         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1720         * gnulib/import/m4/mkdtemp.m4: New file.
1721         * gnulib/import/mkdtemp.c: New file.
1722         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
1723         Add mkdtemp module.
1724         * unittests/mkdir-recursive-selftests.c (test): Use
1725         get_standard_temp_dir.
1726         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
1727         ifdef.
1728         * compile/compile.c (get_compile_file_tempdir): Likewise.
1729
1730 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1731
1732         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
1733         (SIG_FRAME_LR_OFFSET64): New define.
1734         (SIG_FRAME_FP_OFFSET64): New define.
1735         (aix_sighandle_frame_cache): New Function.
1736         (aix_sighandle_frame_this_id): New Function.
1737         (aix_sighandle_frame_prev_register): New Function.
1738         (aix_sighandle_frame_sniffer): New Function.
1739         (aix_sighandle_frame_unwind): New global variable.
1740         (rs6000_aix_init_osabi): Install new frame unwinder.
1741
1742 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
1743
1744         PR gdb/23835
1745         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
1746         already defined.
1747
1748 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1749
1750         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
1751
1752 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
1753
1754         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
1755         (producer_is_icc): New function.
1756         (check_producer): Set producer_is_icc field on dwarf2_cu.
1757         (dwarf2_init_integer_type): New function.
1758         (read_base_type): Call dwarf2_init_integer_type instead of
1759         init_integer_type in all cases.
1760         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
1761         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
1762         LEN is greater than 0.
1763
1764 2018-10-30  Tom Tromey  <tom@tromey.com>
1765
1766         * main.c (captured_main_1): Check return value of bfd_init.
1767
1768 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1769
1770         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
1771         Adjust comments.
1772
1773 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1774
1775         * procfs.c: Include common/pathstuff.h.
1776
1777 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1778
1779         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1780         Add missing braces.  No functional change.
1781
1782 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1783
1784         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
1785         to report a bad option and fix indentation.
1786         * demangle.c (demangle_command): Use report_unrecognized_option_error
1787         to report a bad option and correctly report the bad option.
1788
1789 2018-10-27  Tom Tromey  <tom@tromey.com>
1790
1791         PR cli/23364:
1792         * darwin-nat.c (copied_shell): New global.
1793         (may_have_sip): Rename from should_disable_startup_with_shell.
1794         (copy_shell_to_cache, maybe_cache_shell): New functions.
1795         (darwin_nat_target::create_inferior): Update.  Use
1796         copied_shell.
1797
1798 2018-10-27  Tom Tromey  <tom@tromey.com>
1799
1800         * unittests/scoped_fd-selftests.c (test_to_file): New function.
1801         (run_tests): Call test_to_file.
1802         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
1803         temporary files.
1804         * common/scoped_fd.h (scoped_fd::to_file): New method.
1805
1806 2018-10-27  Tom Tromey  <tom@tromey.com>
1807
1808         * unittests/scoped_mmap-selftests.c (test_normal): Use
1809         gdb_mkostemp_cloexec.
1810         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
1811         Use gdb_mkostemp_cloexec.
1812         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
1813         gnulib/config.in, gnulib/configure,
1814         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
1815         gnulib/import/m4/gnulib-cache.m4,
1816         gnulib/import/m4/gnulib-comp.m4: Update.
1817         * gnulib/import/m4/mkostemp.m4: New file.
1818         * gnulib/import/m4/mkstemp.m4: Remove.
1819         * gnulib/import/mkostemp.c: New file.
1820         * gnulib/import/mkstemp.m4: Remove.
1821         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
1822         mkstemp, add mkostemp.  Apply new patch.
1823         * gnulib/import/stdlib.in.h: Apply patch.
1824         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
1825         New file.
1826         * dwarf-index-write.c (write_psymtabs_to_index): Use
1827         gdb_mkostemp_cloexec.
1828         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
1829
1830 2018-10-27  Tom Tromey  <tom@tromey.com>
1831
1832         * unittests/mkdir-recursive-selftests.c: New file.
1833         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1834         unittests/mkdir-recursive-selftests.c.
1835         * dwarf-index-cache.c (mkdir_recursive): Move to
1836         common/filestuff.c.
1837         (index_cache::store): Check return value of mkdir_recursive.
1838         (create_dir_and_check, test_mkdir_recursive): Move to new file.
1839         (_initialize_index_cache): Don't register test.
1840         * common/filestuff.h (mkdir_recursive): Declare.
1841         * common/filestuff.c (mkdir_recursive): Move from
1842         dwarf-index-cache.c.  Return bool.
1843
1844 2018-10-27  Tom Tromey  <tom@tromey.com>
1845
1846         * dwarf-index-write.c (write_psymtabs_to_index): Move
1847         make_temp_filename to common/pathstuff.c.
1848         * common/pathstuff.h (make_temp_filename): Declare.
1849         * common/pathstuff.c (make_temp_filename): New function, moved
1850         from dwarf-index-write.c.
1851
1852 2018-10-27  Tom Tromey  <tom@tromey.com>
1853
1854         * procfs.c (procfs_target::create_inferior): Use get_shell.
1855         * cli/cli-cmds.c (shell_escape): Use get_shell.
1856         * windows-nat.c (windows_nat_target::create_inferior): Use
1857         get_shell.
1858         * common/pathstuff.c (get_shell): New function.
1859         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
1860         (fork_inferior): Use get_shell.
1861         * common/pathstuff.h (get_shell): Declare.
1862
1863 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1864
1865         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
1866
1867 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1868
1869         * stack.c (print_variable_and_value_data): Add preg and treg.
1870         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
1871         and update callers.
1872         (print_frame_arg_vars): Likewise.
1873         (prepare_reg): New function.
1874         (info_locals_command): Extract info print args and use them.
1875         (info_args_command): Likewise.
1876         (_initialize_stack): Modify on-line help.
1877         * symtab.c (treg_matches_sym_type_name): New function.
1878         (search_symbols): New arg t_regexp.
1879         (symtab_symbol_info): New args quiet, regexp, t_regexp.
1880         (info_variables_command): Extract info print args and use them.
1881         (info_functions_command): Likewise.
1882         (info_types_command): Update call to symtab_symbol_info.
1883         (_initialize_symtab): Modify on-line help.
1884         * symtab.h (treg_matches_sym_type_name): New function.
1885         (search_symbols): New t_regexp arg.
1886
1887 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1888
1889         * cli-utils.c (extract_arg_maybe_quoted): New function.
1890         (extract_info_print_args): New function.
1891         (info_print_args_help): New function.
1892         (report_unrecognized_option_error): New function.
1893         * cli-utils.h (extract_arg_maybe_quoted): New function.
1894         (extract_info_print_args): New function.
1895         (info_print_args_help): New function.
1896         (report_unrecognized_option_error): New function.
1897
1898 2018-10-26  Tom Tromey  <tom@tromey.com>
1899
1900         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
1901         (compute_compunit_symtab_includes): Update.
1902         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
1903         (compunit_symtab_ptr): Likewise.
1904
1905 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1906
1907         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
1908         default_print_auxv_entry for specific tag values.
1909
1910 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1911
1912         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
1913
1914 2018-10-26  Jim Wilson  <jimw@sifive.com>
1915
1916         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
1917         (riscv_linux_sigframe_init): Declare.
1918         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
1919         (riscv_linux_sigframe): New.
1920         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
1921         (riscv_linux_sigframe_init): Define.
1922         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
1923
1924         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
1925         (riscv_isa_flen): Likewise.  Drop static.
1926         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
1927         (riscv_isa_flen): Likewise.  Declare.
1928
1929 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1930             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1931
1932         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
1933         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
1934         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
1935         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
1936         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
1937         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
1938         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
1939         Define.
1940         (struct ppc_linux_features) <htm>: New field.
1941         (ppc_linux_no_features): Add initializer for htm field.
1942         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1943         new tdescs.
1944         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
1945         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
1946         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
1947         Define if not already defined.
1948         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
1949         and rs6000/powerpc-isa207-htm-vsx64l.
1950         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
1951         rs6000/powerpc-isa207-htm-vsx64l.xml.
1952         * features/rs6000/power-htm-spr.xml: New file.
1953         * features/rs6000/power-htm-core.xml: New file.
1954         * features/rs6000/power64-htm-core.xml: New file.
1955         * features/rs6000/power-htm-fpu.xml: New file.
1956         * features/rs6000/power-htm-altivec.xml: New file.
1957         * features/rs6000/power-htm-vsx.xml: New file.
1958         * features/rs6000/power-htm-ppr.xml: New file.
1959         * features/rs6000/power-htm-dscr.xml: New file.
1960         * features/rs6000/power-htm-tar.xml: New file.
1961         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
1962         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
1963         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
1964         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
1965         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
1966         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
1967         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1968         fetch_regset with HTM regsets.
1969         (store_register, store_ppc_registers): Call store_regset with HTM
1970         regsets.
1971         (ppc_linux_nat_target::read_description): Set htm field in the
1972         features struct if needed.
1973         * ppc-linux-tdep.c: Include
1974         features/rs6000/powerpc-isa207-htm-vsx32l.c and
1975         features/rs6000/powerpc-isa207-htm-vsx64l.c.
1976         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
1977         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
1978         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
1979         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
1980         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
1981         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
1982         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
1983         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
1984         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
1985         (ppc32_linux_ctarregset): New globals.
1986         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
1987         (ppc_linux_collect_core_cpgrregset): New function.
1988         (ppc_linux_iterate_over_regset_sections): Call back with the htm
1989         regsets.
1990         (ppc_linux_core_read_description): Check if the tm spr section is
1991         present and set htm in the features struct.
1992         (_initialize_ppc_linux_tdep): Call
1993         initialize_tdesc_powerpc_isa207_htm_vsx32l and
1994         initialize_tdesc_powerpc_isa207_htm_vsx64l.
1995         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
1996         Declare.
1997         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
1998         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
1999         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
2000         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
2001         New fields.
2002         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
2003         Likewise.
2004         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
2005         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
2006         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
2007         New enum fields.
2008         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
2009         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
2010         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
2011         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
2012         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
2013         <PPC_CTAR_REGNUM>: Likewise.
2014         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
2015         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
2016         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
2017         (IS_CEFP_PSEUDOREG): Define.
2018         (rs6000_register_name): Hide the upper halves of checkpointed VSX
2019         registers.  Return names for the checkpointed DFP, VSX, and EFP
2020         pseudo registers.
2021         (rs6000_pseudo_register_type): Remove initial assert and raise an
2022         internal error in the else clause instead.  Return types for the
2023         checkpointed DFP, VSX, and EFP pseudo registers.
2024         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
2025         checkpointed DFP pseudo registers.
2026         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
2027         checkpointed VSX pseudo registers.
2028         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
2029         from efpr_pseudo_register_read and
2030         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
2031         registers.
2032         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
2033         Handle checkpointed DFP, VSX, and EFP registers.
2034         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
2035         (efp_ax_pseudo_register_collect): New functions.
2036         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
2037         register logic to new functions.  Handle checkpointed DFP, VSX,
2038         and EFP pseudo registers.
2039         (rs6000_gdbarch_init): Look for and validate the htm features.
2040         Include checkpointed DFP, VSX and EFP pseudo-registers.
2041         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
2042         HTM registers.
2043
2044 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2045
2046         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
2047         without altivec or fpu.
2048
2049 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
2050             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2051
2052         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
2053         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
2054         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
2055         Define if not already defined.
2056         * features/rs6000/power-ebb.xml: New file.
2057         * features/rs6000/power-linux-pmu.xml: New file.
2058         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
2059         features.
2060         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
2061         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
2062         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
2063         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
2064         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
2065         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
2066         fetch_regset with ebb and pmu regsets.
2067         (store_register, store_ppc_registers): Call store_regset with ebb
2068         and pmu regsets.
2069         (ppc_linux_nat_target::read_description): Set isa207 field in the
2070         features struct if ebb and pmu are avaiable.
2071         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
2072         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
2073         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
2074         and pmu regsets.
2075         (ppc_linux_core_read_description): Check if the pmu section is
2076         present and set isa207 in the features struct.
2077         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
2078         (ppc32_linux_pmuregset): Declare.
2079         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
2080         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
2081         <ppc_sier_regnum>: New field.
2082         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
2083         New enum values.
2084         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
2085         values.
2086         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
2087         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
2088         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
2089         ebb and pmu features.
2090
2091 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
2092             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2093
2094         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
2095         (tdesc_powerpc_isa207_vsx64l): Declare.
2096         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
2097         (struct ppc_linux_features) <isa207>: New field.
2098         (ppc_linux_no_features): Add initializer for isa207 field.
2099         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
2100         new tdescs.
2101         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
2102         (NT_PPC_TAR): Define if not already defined.
2103         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
2104         rs6000/powerpc-isa207-vsx64l.
2105         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
2106         rs6000/powerpc-isa207-vsx64l.xml.
2107         * features/rs6000/power-tar.xml: New file.
2108         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
2109         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
2110         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
2111         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
2112         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
2113         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
2114         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
2115         fetch_regset with the TAR regset.
2116         (store_register, store_ppc_registers): Call store_regset with the
2117         TAR regset.
2118         (ppc_linux_nat_target::read_description): Set isa207 field in the
2119         features struct if needed.
2120         * ppc-linux-tdep.c: Include
2121         features/rs6000/powerpc-isa207-vsx32l.c and
2122         features/rs6000/powerpc-isa207-vsx64l.c.
2123         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
2124         (ppc_linux_iterate_over_regset_sections): Call back with the tar
2125         regset.
2126         (ppc_linux_core_read_description): Check if the tar section is
2127         present and set isa207 in the features struct.
2128         (_initialize_ppc_linux_tdep): Call
2129         initialize_tdesc_powerpc_isa207_vsx32l and
2130         initialize_tdesc_powerpc_isa207_vsx64l.
2131         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
2132         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
2133         (enum) <PPC_TAR_REGNUM>: New enum value.
2134         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
2135         feature.
2136         (ppc_process_record_op31): Record changes to TAR.
2137
2138 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
2139             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2140
2141         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
2142         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
2143         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
2144         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
2145         (struct ppc_linux_features) <ppr_dscr>: New field.
2146         (ppc_linux_no_features): Add initializer for ppr_dscr field.
2147         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
2148         new tdescs.
2149         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
2150         Define if not already defined.
2151         * features/Makefile (WHICH): Add
2152         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
2153         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
2154         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
2155         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
2156         * features/rs6000/power-dscr.xml: New file.
2157         * features/rs6000/power-ppr.xml: New file.
2158         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
2159         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
2160         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
2161         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
2162         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
2163         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
2164         * ppc-linux-nat.c: Include <sys/uio.h>.
2165         (fetch_regset, store_regset, check_regset): New functions.
2166         (fetch_register, fetch_ppc_registers): Call fetch_regset with
2167         DSCR and PPR regsets.
2168         (store_register, store_ppc_registers): Call store_regset with
2169         DSCR and PPR regsets.
2170         (ppc_linux_get_hwcap2): New function.
2171         (ppc_linux_nat_target::read_description): Call
2172         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
2173         features struct if needed.
2174         * ppc-linux-tdep.c: Include
2175         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
2176         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
2177         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
2178         (ppc32_linux_dscrregset): New globals.
2179         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
2180         and dscr regsets.
2181         (ppc_linux_core_read_description): Check if the ppr and dscr
2182         sections are present and set ppr_dscr in the features struct.
2183         (_initialize_ppc_linux_tdep): Call
2184         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
2185         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
2186         * ppc-linux-tdep.h (ppc32_linux_pprregset)
2187         (ppc32_linux_dscrregset): Declare.
2188         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
2189         <ppc_dscr_regnum>: New field.
2190         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
2191         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
2192         and dscr features.
2193         (ppc_process_record_op31): Record changes to PPR and DSCR.
2194
2195 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2196
2197         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
2198         second initializer line for the have_* variables.  Initialize
2199         have_fpu to 0 instead of 1.
2200
2201 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2202
2203         * arch/ppc-linux-common.c (ppc_linux_match_description):
2204         Parenthesize tdesc assignements and indent them properly.
2205
2206 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2207
2208         * ppc-linux-nat.c (fetch_register): Change if statement to else
2209         if.
2210         (store_register): Likewise.
2211
2212 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2213
2214         * rs6000-tdep.c: Remove reggroups.h include.
2215         (rs6000_pseudo_register_reggroup_p): Remove.
2216         (rs6000_gdbarch_init): Remove call to
2217         set_tdesc_pseudo_register_reggroup_p.
2218
2219 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2220
2221         * reggroups.c (default_register_reggroup_p): Return true for
2222         decfloat registers and float_reggroup.
2223
2224 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2225
2226         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
2227         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
2228         ppc_linux_collect_vrregset by regcache_collect_regset.
2229
2230 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2231
2232         * linux-tdep.c (linux_collect_regset_section_cb): Use
2233         std::vector<gdb_byte> instead of char * and malloc for buf.
2234         Remove xfree.
2235
2236 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
2237
2238         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
2239         symtab_start instead of always using language_unknown.
2240
2241 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2242
2243         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
2244         READ_P parameter, catch and ignore register access errors from
2245         either the old or new MISA location.
2246         (riscv_has_feature): Update call to riscv_read_misa_reg.
2247
2248 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
2249
2250         * python/py-function.c (convert_values_to_python): Return
2251         gdbpy_ref<>.  Add header comment.
2252         (fnpy_call): Adjust.
2253
2254 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
2255
2256         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
2257         (cmdpy_completer_handle_brkchars): Adjust.
2258         (cmdpy_completer): Adjust.
2259
2260 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
2261
2262         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
2263         Pass correct regnum to raw_supply_zeroed.
2264
2265 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
2266
2267         * regcache.c (cooked_read_test): Add CSKY to the list of
2268         architectures with a save_reggroup
2269
2270 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
2271
2272         PR gdb/23368
2273         * infrun.c (follow_exec): In the follow_exec_mode_new case,
2274         transfer terminal state from old new new inferior.
2275         * terminal.h (swap_terminal_info): New function.
2276         * inflow.c (swap_terminal_info): New function.
2277
2278 2018-10-23  Tom Tromey  <tom@tromey.com>
2279
2280         * record-btrace.c (get_thread_current_frame_id): Rename from
2281         get_thread_current_frame.  Return a frame_id.
2282         (record_btrace_start_replaying): Update.
2283
2284 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
2285
2286         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
2287         for CSRs.
2288
2289 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
2290
2291         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
2292         have_nonsteppable_watchpoint attribute to 1.
2293
2294 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
2295
2296         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
2297         register names.
2298         (struct register_alias): Rename to...
2299         (struct riscv_register_alias): ...this, and update comment.
2300         (riscv_register_aliases): Update type, and alias names.  Remove
2301         CSR names from this list.
2302         (riscv_register_name): Use riscv_gdb_reg_names for int and float
2303         register names.  Add an extra assertion.
2304         (riscv_is_regnum_a_named_csr): New function.
2305         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
2306
2307 2018-10-23  John Darrington  <john@darrington.wattle.id.au>
2308
2309         * configure.tgt: Add configuration for s12z.
2310         * s12z-tdep.c:  New file.
2311         * NEWS: Mention new target.
2312
2313 2018-10-22  Jim Wilson  <jimw@sifive.com>
2314
2315         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
2316         FP reg smaller than FP reg size, and fill with -1 instead of 0.
2317
2318         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
2319         (riscv_register_type): Use them.
2320         (riscv_print_one_register_info): Handle union of floats same as float.
2321         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
2322         riscv_fpreg_q_type fields.
2323
2324 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
2325
2326         * gdbarch.sh (gdbarch_num_cooked_regs): New.
2327         * gdbarch.h: Re-generate.
2328         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
2329         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
2330         * eval.c (evaluate_subexp_standard): Likewise.
2331         * findvar.c (value_of_register): Likewise.
2332         (value_of_register_lazy): Likewise.
2333         (address_from_register): Likewise.
2334         * frame.c (get_frame_register_bytes): Likewise.
2335         * gdbarch-selftests.c (register_to_value_test): Likewise.
2336         * h8300-tdep.c (h8300_register_type): Likewise.
2337         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
2338         (i386_svr4_reg_to_regnum): Likewise.
2339         * infcmd.c (default_print_registers_info): Likewise.
2340         (registers_info): Likewise.
2341         (print_vector_info): Likewise.
2342         (default_print_float_info): Likewise.
2343         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
2344         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
2345         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
2346         (mi_cmd_data_list_changed_registers): Likewise.
2347         (mi_cmd_data_list_register_values): Likewise.
2348         (mi_cmd_data_write_register_values): Likewise.
2349         (mi_cmd_trace_frame_collected): Likewise.
2350         * mips-tdep.c (print_gp_register_row): Likewise.
2351         (mips_print_registers_info): Likewise.
2352         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
2353         * regcache.c (init_regcache_descr): Likewise.
2354         (register_size): Likewise.
2355         (register_dump::dump): Likewise.
2356         (cooked_read_test): Likewise.
2357         (cooked_write_test): Likewise.
2358         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
2359         (rs6000_gdbarch_init): Likewise.
2360         * stabsread.c (stab_reg_to_regnum): Likewise.
2361         * stack.c (info_frame_command): Likewise.
2362         * target-descriptions.c (tdesc_register_name): Likewise.
2363         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
2364         * tui/tui-regs.c (tui_show_register_group): Likewise.
2365         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
2366         (user_reg_map_regnum_to_name): Likewise.
2367         (value_of_user_reg): Likewise.
2368         (maintenance_print_user_registers): Likewise.
2369         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
2370         (xtensa_register_name): Likewise.
2371         (xtensa_register_type): Likewise.
2372         (xtensa_reg_to_regnum): Likewise.
2373         (xtensa_pseudo_register_read): Likewise.
2374         (xtensa_pseudo_register_write): Likewise.
2375
2376 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
2377
2378         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
2379         correctly-sized buffer with raw_read.
2380         (amd64_pseudo_register_write): Use correctly-sized buffer for
2381         raw_read/raw_write.
2382
2383 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2384
2385         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
2386         in add_prefix_cmd of set print type.
2387
2388 2018-10-19  Tom Tromey  <tom@tromey.com>
2389
2390         PR tui/18388:
2391         * NEWS: Mention tabset deprecation.
2392         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
2393         (update_tab_width): New function.
2394         (tui_set_tab_width, tui_show_tab_width): New functions.
2395         (tui_set_tab_width_command): Use update_tab_width.
2396         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
2397         Add new "set tui tab-width" command.
2398         * tui/tui-source.c (tui_set_source_content): Update.
2399         * tui/tui-disasm.c (tui_set_disassem_content): Update.
2400         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
2401         Don't declare.
2402         (tui_tab_width): Declare.
2403         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
2404         (tui_set_default_tab_len): Remove.
2405
2406 2018-10-19  Tom Tromey  <tom@tromey.com>
2407
2408         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
2409         (key_is_backspace, tui_getc): Don't declare.
2410         * tui/tui-io.c (key_is_start_sequence): Now static.
2411         (key_is_end_sequence, key_is_backspace): Remove.
2412         (tui_getc): Now static.
2413
2414 2018-10-19  Tom Tromey  <tom@tromey.com>
2415
2416         * symfile.c (reread_symbols): Clear "static_links".
2417
2418 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
2419
2420         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
2421         define.
2422         (aarch64_linux_sigframe_init): Extra boundary checks.
2423
2424 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
2425
2426         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
2427         the possibly non-existent tdesc type 'vec128', but the type of raw
2428         register v16 instead.
2429
2430 2018-10-19  Gary Benson <gbenson@redhat.com>
2431
2432         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
2433
2434 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
2435
2436         PR cli/23785
2437         * cli/cli-dump.c (restore_binary_file): Check if "file" is
2438         NULL.
2439
2440 2018-10-17  Paul Koning  <paul_koning@dell.com>
2441
2442         * charset.c (convert_between_encodings): Fix unsigned overflow.
2443
2444 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
2445
2446         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
2447         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
2448         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
2449         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
2450         New functions.
2451         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
2452         and fbsd_info_proc_mappings_header.
2453         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
2454         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
2455         New.
2456
2457 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
2458
2459         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
2460         Solaris Maintainer.
2461
2462 2018-10-15  Tom Tromey  <tom@tromey.com>
2463
2464         * tui/tui.c (strcat_to_buf): Remove casts.
2465         * tui/tui-winsource.c (tui_show_source_line)
2466         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
2467         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
2468         * tui/tui-windata.c (tui_first_data_item_displayed)
2469         (tui_delete_data_content_windows, tui_erase_data_content)
2470         (tui_display_all_data, tui_display_data_from)
2471         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
2472         * tui/tui-win.c (tui_set_win_height)
2473         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
2474         casts.
2475         * tui/tui-win.c (tui_resize_all): Remove casts.
2476         (tui_scroll_backward_command, tui_set_focus)
2477         (tui_set_tab_width_command): Likewise.
2478         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
2479         * tui/tui-regs.c (tui_show_register_group): Remove cast.
2480         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
2481         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
2482         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
2483         Remove casts.
2484
2485 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
2486
2487         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
2488         AArch64/ARM maintainer.
2489
2490 2018-10-11  Gary Benson <gbenson@redhat.com>
2491
2492         * interps.h (interp::m_name): Make private and mutable.
2493         * interps.c (interp::~interp): Free m_name.
2494
2495 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2496             Simon Marchi <simark@simark.ca>
2497
2498         * README (`configure' options): Add documentation for new
2499         "--enable-unit-tests" option.
2500         * acinclude.m4: Include "selftest.m4".
2501         * configure: Regenerate.
2502         * configure.ac: Use "GDB_AC_SELFTEST".
2503         * maint.c (maintenance_selftest): Update message informing
2504         that selftests have been disabled.
2505         (maintenance_info_selftests): Likewise.
2506         * selftest.m4: New file.
2507
2508 2018-10-10  Gary Benson <gbenson@redhat.com>
2509
2510         * remote.c (remote_target::remote_send_printf): Add
2511         missing va_end found by Coverity.
2512
2513 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
2514
2515         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
2516
2517 2018-10-09  Tom Tromey  <tom@tromey.com>
2518
2519         * configure: Rebuild.
2520         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
2521         * NEWS: Update --enable-ubsan documentation.
2522
2523 2018-10-09  Gary Benson <gbenson@redhat.com>
2524
2525         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
2526         found by Coverity.
2527
2528 2018-10-08  Tom Tromey  <tom@tromey.com>
2529
2530         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
2531         variable.
2532         (riscv_fbsd_init_abi): Likewise.
2533
2534 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
2535         * valops.c (value_struct_elt_for_reference): Rename local variable
2536         to work around the shadowing a previous local warning.
2537
2538 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2539
2540         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
2541         * NEWS: Mention new FreeBSD/riscv native configuration.
2542         * configure.host: Add riscv*-*-freebsd*.
2543         * configure.nat: Likewise.
2544         * riscv-fbsd-nat.c: New file.
2545
2546 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2547
2548         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
2549         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
2550         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
2551         * NEWS: Mention new FreeBSD/riscv target.
2552         * configure.tgt: Add riscv*-*-freebsd*.
2553         * riscv-fbsd-tdep.c: New file.
2554         * riscv-fbsd-tdep.h: New file.
2555
2556 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2557
2558         * regcache.h (struct regcache_map_entry): Note that this type can
2559         be used with traditional frame caches.
2560         * trad-frame.c (trad_frame_set_reg_regmap): New.
2561         * trad-frame.h (trad_frame_set_reg_regmap): New.
2562
2563 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
2564
2565         PR c++/16841
2566         * valops.c (get_virtual_base_offset): New function.
2567         (value_struct_elt_for_reference): Use it to get virtual base offset
2568         and add it in calculating class member address.
2569
2570 2018-10-08  John Darrington  <john@darrington.wattle.id.au>
2571
2572         * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
2573         (check_producer): Check if the producer is codewarrior.
2574         (producer_is_codewarrior): New function.
2575         (lnp_state_machine::record_line): Ignore is_stmt flag for records
2576         produced by codewarrior.
2577         (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
2578
2579 2018-10-06  Tom Tromey  <tom@tromey.com>
2580
2581         PR python/19399:
2582         * python/py-inferior.c: Add "architecture" entry.
2583         (infpy_architecture): New function.
2584
2585 2018-10-06  Tom Tromey  <tom@tromey.com>
2586
2587         PR python/21765:
2588         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
2589         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
2590         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
2591         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
2592
2593 2018-10-06  Tom Tromey  <tom@tromey.com>
2594
2595         PR build/17077:
2596         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
2597         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
2598         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
2599         #include.
2600
2601 2018-10-06  Tom Tromey  <tom@tromey.com>
2602
2603         * python/py-breakpoint.c (bppy_get_location): Handle a
2604         bp_breakpoint without a location.
2605
2606 2018-10-06  Tom Tromey  <tom@tromey.com>
2607
2608         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
2609         (_RegEx): Reformat help text.
2610         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
2611         (AnyCallerIs, AnyCallerMatches): Reformat help text.
2612         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
2613         text.
2614         * python/lib/gdb/command/xmethods.py (InfoXMethod)
2615         (EnableXMethod, DisableXMethod): Remove help indentation.
2616         Capitalize meta-syntactic variables.
2617         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
2618         (EnableUnwinder, DisableUnwinder): Remove help indentation.
2619         Capitalize meta-syntactic variables.
2620         * python/lib/gdb/command/explore.py (ExploreCommand)
2621         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
2622         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
2623         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
2624         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
2625         Remove help indentation.
2626         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
2627         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
2628         (DisableFrameFilter, SetFrameFilterPriority)
2629         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
2630
2631 2018-10-06  Tom Tromey  <tom@tromey.com>
2632
2633         PR tui/28819:
2634         * tui/tui-io.c (gdb_wgetch): New function.
2635         (tui_mld_getc, tui_getc): Use it.
2636
2637 2018-10-05  Tom Tromey  <tom@tromey.com>
2638
2639         * sol-thread.c (sol_thread_target::wait): Rename inner
2640         "save_ptid".
2641
2642 2018-10-04  Tom Tromey  <tom@tromey.com>
2643
2644         * configure: Rebuild.
2645         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
2646
2647 2018-10-04  Tom Tromey  <tom@tromey.com>
2648
2649         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
2650         declaration of "block".
2651
2652 2018-10-04  Tom Tromey  <tom@tromey.com>
2653
2654         * common/filestuff.c (fdwalk): Remove inner declaration of
2655         "result".
2656
2657 2018-10-04  Tom Tromey  <tom@tromey.com>
2658
2659         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
2660         "structs_addr" and hoist declaration.
2661
2662 2018-10-04  Tom Tromey  <tom@tromey.com>
2663
2664         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
2665         variable "size".
2666
2667 2018-10-04  Tom Tromey  <tom@tromey.com>
2668
2669         * mdebugread.c (parse_partial_symbols): Use std::string.
2670
2671 2018-10-04  Tom Tromey  <tom@tromey.com>
2672
2673         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
2674         * p-valprint.c (pascal_val_print): Split inner "i" variable.
2675         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
2676         header.
2677         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
2678         more inner scope.
2679         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
2680         * varobj.c (varobj_update): Rename inner "newobj",
2681         "type_changed".
2682         * valprint.c (generic_emit_char): Rename inner "buf".
2683         * valops.c (find_overload_match): Rename inner "temp".
2684         (value_struct_elt_for_reference): Declare "v" in more inner
2685         scope.
2686         * v850-tdep.c (v850_push_dummy_call): Rename "len".
2687         * unittests/array-view-selftests.c (run_tests): Rename inner
2688         "vec".
2689         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
2690         header.
2691         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
2692         "tsv" in more inner scope.
2693         (print_one_static_tracepoint_marker): Rename inner
2694         "tuple_emitter".
2695         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
2696         (tic6x_push_dummy_call): Don't redeclare "addr".
2697         * target-float.c: Declare "dto" lower.
2698         * symtab.c (lookup_local_symbol): Rename inner "sym".
2699         (find_pc_sect_line): Rename inner "pc".
2700         * stack.c (print_frame): Don't redeclare "gdbarch".
2701         (return_command): Rename inner "gdbarch".
2702         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
2703         "sp".
2704         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
2705         header.
2706         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
2707         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
2708         scope.
2709         * remote.c (remote_target::update_thread_list): Don't redeclare
2710         "tp".
2711         (remote_target::process_initial_stop_replies): Rename inner
2712         "thread".
2713         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
2714         (remote_target::wait_as): Don't redeclare "stop_reply".
2715         (remote_target::get_thread_local_address): Rename inner
2716         "result".
2717         (remote_target::get_tib_address): Likewise.
2718
2719         * regcache.c (cooked_read_test): Rename "regnum".
2720         * record-btrace.c (cmd_record_btrace_start): Rename inner
2721         "exception".
2722         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
2723         loop header.
2724         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
2725         header.
2726         (ppu2spu_sniffer): Rename inner "buf".
2727         * parse.c (operator_check_standard): Rename inner "type",
2728         "objfile".
2729         * p-valprint.c (pascal_val_print): Introduce new scope for
2730         "low_bound", "high_bound".
2731         * p-exp.y (yylex): Declare "i" in loop header.
2732         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
2733         Lower declaration of "s".
2734         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
2735         header.
2736         (nios2_push_dummy_call): Rename "len".
2737         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
2738         "buf".
2739         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
2740         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
2741         (linux_xfer_osdata_modules): Likewise.
2742         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
2743         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
2744         (mips_o64_push_dummy_call): Likewise.
2745         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
2746         "op".
2747         * mi/mi-main.c (list_available_thread_groups): Rename inner
2748         "tuple_emitter".
2749         (mi_cmd_data_read_memory): Rename inner "opts".
2750         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
2751         "tuple_emitter".
2752         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
2753         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
2754         more inner scope.
2755         (parse_partial_symbols): Rename inner "pst", "p", "name"
2756         * main.c (captured_main_1): Rename inner "i"s.
2757         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
2758         "oso2".
2759         * linux-tdep.c (linux_info_proc): Rename inner "filename".
2760         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
2761         * infrun.c (handle_no_resumed): Don't redeclare "thread".
2762         (handle_signal_stop): Rename inner "gdbarch".
2763         (handle_command): Declare "signum" in loop header.
2764         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
2765         "status".
2766         (examine_prologue): Rename inner "sol" and "sof".
2767         (ia64_extract_return_value): Rename inner "val".  Declare another
2768         "val" in a more inner scope.
2769         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
2770         inner scope.
2771         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
2772         "except".
2773         * findvar.c (default_read_var_value): Don't redeclare "addr".
2774         * f-exp.y (yylex): Declare "i" in loop header.
2775         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
2776         Rename inner "type", "expect_type".
2777         (evaluate_subexp_for_sizeof): Rename inner "pc".
2778         * elfread.c (elf_symfile_read): Rename inner "abfd".
2779         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
2780         "bytes_read".
2781         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
2782         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
2783         (dwarf_decode_line_header): Rename inner "lh".
2784         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
2785         "offset".  Declare "i" in loop header.
2786         (disassemble_dwarf_expression): Rename inner "addr_size".
2787         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
2788         inner "result".
2789         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
2790         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
2791         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
2792         "inner_list_emitter".
2793         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
2794         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
2795         declaration in a block.
2796         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
2797         * cp-valprint.c (cp_print_value_fields): Don't redeclare
2798         "obstack_final_size".
2799         * cp-support.c (inspect_type): Declare "i" in loop header.
2800         * compile/compile.c (compile_instance::insert_symbol_error):
2801         Rename inner "e".
2802         * common/agent.c (agent_run_command): Remove inner "ret"
2803         declaration.
2804         * coffread.c (coff_symfile_read): Rename inner "name".
2805         (coff_symfile_read): Rename inner "abfd".
2806         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
2807         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
2808         "high".
2809         * c-exp.y (lex_one_token): Move "len" declaration lower.
2810         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
2811         "gdbarch".
2812         (create_exception_master_breakpoint): Likewise.  Don't redeclare
2813         "b".
2814         (watch_command_1): Declare "mark" later.
2815         (clear_command): Don't shadow "a" or "b".
2816         (delete_command): Rename inner "b".
2817         (delete_trace_command): Likewise.
2818         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
2819         "op".
2820         (arm_gdbarch_init): Remove inner "e_flags".
2821         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
2822         "offset" in inner blocks.
2823
2824 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
2825
2826         * dwarf-index-write.c (file_write): Don't write if the vector is
2827         empty.
2828
2829 2018-10-05  Tom de Vries  <tdevries@suse.de>
2830
2831         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
2832         PyArg_ParseTuple call.
2833
2834 2018-10-05  Tom de Vries  <tdevries@suse.de>
2835
2836         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
2837         PyArg_ParseTuple call.
2838
2839 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
2840
2841         * psymtab.c (recursively_search_psymtabs): Reformat parameters
2842         to avoid exceeding 80 characters per line limit.
2843
2844 2018-10-04  Tom Tromey  <tom@tromey.com>
2845
2846         * symfile.c (syms_from_objfile_1, finish_new_objfile)
2847         (reread_symbols): Update.
2848         * complaints.h (clear_complaints): Remove argument.
2849         * complaints.c (enum complaint_series): Remove.
2850         (series): Remove global.
2851         (complaint_internal): Update.
2852         (clear_complaints): Remove argument.
2853
2854 2018-10-04  Tom Tromey  <tom@tromey.com>
2855
2856         * symfile.c (symbol_file_add_with_addrs): Do not print "no
2857         debugging symbols" message if there is a separate debug objfile.
2858
2859 2018-10-04  Tom Tromey  <tom@tromey.com>
2860
2861         PR cli/19551:
2862         * symfile.c (symbol_file_add_with_addrs): Update output.
2863         * psymtab.c (require_partial_symbols): Update output.
2864
2865 2018-10-04  Tom Tromey  <tom@tromey.com>
2866
2867         PR cli/22234:
2868         * complaints.c: Emit \n.
2869
2870 2018-10-04  Tom Tromey  <tom@tromey.com>
2871
2872         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
2873         (separate_debug_file_exists, find_separate_debug_file)
2874         (add_symbol_file_command, reread_symbols, allocate_symtab)
2875         (allocate_compunit_symtab): Use filtered printing, not
2876         unfiltered.
2877         * psymtab.c (require_partial_symbols, dump_psymtab)
2878         (allocate_psymtab): Use filtered printing, not unfiltered.
2879
2880 2018-10-04  Tom Tromey  <tom@tromey.com>
2881
2882         * complaints.c (complaint_internal): Correctly check complaint
2883         count.
2884
2885 2018-10-04  Tom Tromey  <tom@tromey.com>
2886
2887         * complaints.h (struct complaints): Remove declaration.
2888         * complaints.c (clear_complaints): Remove an unused variable.
2889
2890 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2891
2892         * MAINTAINERS (Write After Approval): Add self.
2893
2894 2018-10-03  Tom Tromey  <tom@tromey.com>
2895
2896         * guile/scm-value.c (gdbscm_value_to_string): Initialize
2897         "buffer_contents".
2898         * coffread.c (coff_symtab_read): Initialize "newobj".
2899
2900 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
2901
2902         * dwarf2read.c (read_func_scope): Remove struct keyword in
2903         range-based for.
2904
2905 2018-10-03  Tom Tromey  <tom@tromey.com>
2906
2907         * README: Mention --enable-ubsan.
2908         * NEWS: Mention --enable-ubsan.
2909         * acinclude.m4: Include sanitize.m4.
2910         * configure: Rebuild.
2911         * configure.ac: Call AM_GDB_UBSAN.
2912         * sanitize.m4: New file.
2913
2914 2018-10-03  Tom Tromey  <tom@tromey.com>
2915
2916         * expression.h (enum exp_opcode): Use uint8_t as base type.
2917         * expprint.c (op_name): Handle invalid opcodes.
2918
2919 2018-10-03  Tom Tromey  <tom@tromey.com>
2920
2921         * parse.c (prefixify_expression): Add assert.
2922         (parse_exp_in_context_1): Throw exception if the expression is
2923         empty.
2924
2925 2018-10-03  Tom Tromey  <tom@tromey.com>
2926
2927         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
2928
2929 2018-10-03  Tom Tromey  <tom@tromey.com>
2930
2931         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
2932
2933 2018-10-03  Tom Tromey  <tom@tromey.com>
2934
2935         * dwarf2read.c (read_subrange_type): Make "negative_mask"
2936         unsigned.
2937
2938 2018-10-03  Tom Tromey  <tom@tromey.com>
2939
2940         * findvar.c (extract_integer): Do work in an unsigned type.
2941
2942 2018-10-03  Tom Tromey  <tom@tromey.com>
2943
2944         * common/enum-flags.h (enum_flags::operator~): Add static assert.
2945         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
2946         base type.
2947         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
2948         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
2949         type.
2950         * c-lang.h (enum c_string_type_values): Use unsigned as base
2951         type.
2952         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
2953
2954 2018-10-03  Tom Tromey  <tom@tromey.com>
2955
2956         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
2957         <~dwarf2_frame_state_reg_info>: Update.
2958         <dwarf2_frame_state_reg_info>: Update.
2959         <alloc_regs>: Add assertion.  Update.
2960         <reg>: Now a std::vector.
2961         <num_regs>: Remove.
2962         <swap>: Update.
2963         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
2964         (execute_cfa_program_test, dwarf2_frame_cache): Update.
2965
2966 2018-10-03  Tom Tromey  <tom@tromey.com>
2967
2968         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
2969
2970 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2971
2972         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
2973
2974 2018-10-02  Tom Tromey  <tom@tromey.com>
2975
2976         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
2977
2978 2018-10-02  John Darrington  <john@darrington.wattle.id.au>
2979
2980         * NEWS: Mention changed commands.
2981         * ser-uds.c: New file.
2982         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
2983         * configure: Regenerate.
2984         * Makefile.in: Add new file.
2985         * serial.c (serial_open): Check if filename is a socket
2986         and lookup the appropriate interface accordingly.
2987
2988 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2989
2990         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
2991         define.
2992         (AARCH64_EXTRA_MAGIC): Likewise.
2993         (AARCH64_FPSIMD_MAGIC): Likewise.
2994         (AARCH64_SVE_MAGIC): Likewise.
2995         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
2996         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
2997         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
2998         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
2999         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
3000         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
3001         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
3002         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
3003         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
3004         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
3005         (read_aarch64_ctx): Add function.
3006         (aarch64_linux_sigframe_init): Detect FP registers.
3007
3008 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
3009
3010         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
3011         (AARCH64_D0_REGNUM): Likewise.
3012         (AARCH64_S0_REGNUM): Likewise.
3013         (AARCH64_H0_REGNUM): Likewise.
3014         (AARCH64_B0_REGNUM): Likewise.
3015         (AARCH64_SVE_V0_REGNUM): Likewise.
3016         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
3017         (AARCH64_D0_REGNUM): Likewise.
3018         (AARCH64_S0_REGNUM): Likewise.
3019         (AARCH64_H0_REGNUM): Likewise.
3020         (AARCH64_B0_REGNUM): Likewise.
3021         (AARCH64_SVE_V0_REGNUM): Likewise.
3022
3023 2018-10-01  Gary Benson <gbenson@redhat.com>
3024
3025         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
3026         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
3027         prfpregset_t instead of gdb_prfpregset_t.
3028         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
3029         * configure, config.in: Rebuild.
3030
3031 2018-10-01  Gary Benson <gbenson@redhat.com>
3032
3033         * common/gdb_proc_service.h: New file, factored out from...
3034         * gdb_proc_service.h: Moved common code to the above file.
3035         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
3036
3037 2018-10-01  Gary Benson <gbenson@redhat.com>
3038
3039         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
3040         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
3041
3042 2018-10-01  Gary Benson <gbenson@redhat.com>
3043
3044         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
3045         (AC_CHECK_HEADERS): Check for linux/elf.h.
3046         * configure, config.in: Rebuild.
3047         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
3048         doesn't define elf_fpregset_t.
3049
3050 2018-10-01  Gary Benson <gbenson@redhat.com>
3051
3052         * gdb_proc_service.h: Whitespace change.
3053
3054 2018-10-01  Tom Tromey  <tom@tromey.com>
3055
3056         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
3057         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
3058         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
3059
3060 2018-10-01  Tom Tromey  <tom@tromey.com>
3061
3062         * README: Minor change.
3063
3064 2018-09-30  Pedro Alves  <palves@redhat.com>
3065
3066         * darwin-nat-info.c (darwin_debug_regions_recurse)
3067         (info_mach_exceptions_command): Remove unused local variables.
3068         * darwin-nat.c (darwin_decode_notify_message)
3069         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
3070         (darwin_stop_inferior, darwin_setup_exceptions)
3071         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
3072         (darwin_nat_target::attach, darwin_nat_target::detach)
3073         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
3074         local variables.
3075         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
3076         variables.
3077
3078 2018-09-29  Tom Tromey  <tom@tromey.com>
3079
3080         * README: Remove some leftover text.
3081
3082 2018-09-29  Tom Tromey  <tom@tromey.com>
3083
3084         * PROBLEMS: Rewrite.
3085         * README: Update.
3086
3087 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
3088
3089         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
3090         case with explicit breakpoint kind.
3091         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
3092         'additional_info' and related logic.
3093         (riscv_debug_breakpoints): New variable.
3094         (riscv_breakpoint_kind_from_pc): Use the length of the existing
3095         instruction to determine the breakpoint kind.
3096         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
3097         flag.  Update description of 'set/show riscv
3098         use-compressed-breakpoints' flag.
3099
3100 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
3101
3102         (NEWS): Mention changes to frame related commands.
3103         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
3104         (add_prefix_cmd_suppress_notification): New function.
3105         (add_com_suppress_notification): Call
3106         add_cmd_suppress_notification.
3107         * command.h (add_cmd_suppress_notification): Declare.
3108         (add_prefix_cmd_suppress_notification): Declare.
3109         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
3110         (parse_frame_specification): Moved from stack.c, with
3111         simplification to handle a single argument.
3112         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
3113         switch to the selected frame.  Add a header comment.
3114         * stack.c: Remove 'safe-ctype.h' include.
3115         (find_frame_for_function): Add declaration.
3116         (find_frame_for_address): New function.
3117         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
3118         (frame_selection_by_function_completer): New function.
3119         (info_frame_command): Rename to...
3120         (info_frame_command_core): ...this, and update parameter types.
3121         (select_frame_command): Rename to...
3122         (select_frame_command_core): ...this, and update parameter types.
3123         (frame_command): Rename to...
3124         (frame_command_core): ...this, and update parameter types.
3125         (class frame_command_helper): New class to wrap implementations of
3126         frame related sub-commands.
3127         (frame_apply_cmd_list): New static global.
3128         (frame_cmd_list): Make static.
3129         (select_frame_cmd_list): New global for sub-commands.
3130         (info_frame_cmd_list): New global for sub-commands.
3131         (_initialize_stack): Register sub-commands for 'frame',
3132         'select-frame', and 'info frame'.  Update 'frame apply' commands
3133         to use frame_apply_cmd_list.  Move function local static
3134         frame_apply_list to file static frame_apply_cmd_list for
3135         consistency.
3136         * stack.h (select_frame_command): Delete declarationn.
3137         (select_frame_for_mi): Declare new function.
3138
3139 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
3140
3141         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
3142         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
3143         and NOP.
3144
3145 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
3146
3147         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
3148
3149 2018-09-26  Tom Tromey  <tom@tromey.com>
3150
3151         * valops.c (auto_abandon): Remove dead code.
3152
3153 2018-09-26  Tom Tromey  <tom@tromey.com>
3154
3155         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
3156
3157 2018-09-24  Tom Tromey  <tom@tromey.com>
3158
3159         * common/pathstuff.c (get_standard_cache_dir): Make
3160         "xdg_cache_home" and "home" const.
3161         * top.c (init_history): Make "tmpenv" const.
3162         * main.c (get_init_files): Make "homedir" const.
3163
3164 2018-09-23  Tom Tromey  <tom@tromey.com>
3165
3166         PR python/18852:
3167         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
3168
3169 2018-09-23  Tom Tromey  <tom@tromey.com>
3170
3171         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
3172         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
3173         * python/python-internal.h (gdbpy_handle_exception): Declare.
3174         * python/py-utils.c (gdbpy_handle_exception): New function.
3175
3176 2018-09-23  Tom Tromey  <tom@tromey.com>
3177
3178         PR python/17284:
3179         * python/py-type.c (typy_template_argument): Check for negative
3180         argument number.
3181
3182 2018-09-23  Tom Tromey  <tom@tromey.com>
3183
3184         PR python/14062:
3185         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
3186
3187 2018-09-23  Tom Tromey  <tom@tromey.com>
3188
3189         PR python/18170:
3190         * python/py-value.c (valpy_int): Allow conversion from pointer
3191         type.
3192
3193 2018-09-23  Tom Tromey  <tom@tromey.com>
3194
3195         PR python/20126:
3196         * python/py-value.c (valpy_int): Respect type sign.
3197
3198 2018-09-23  Tom Tromey  <tom@tromey.com>
3199
3200         PR python/18352;
3201         * python/py-value.c (valpy_float): Allow conversions from int or
3202         char.
3203         (valpy_int, valpy_long): Allow conversions from float.
3204
3205 2018-09-23  Tom Tromey  <tom@tromey.com>
3206
3207         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
3208         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
3209
3210 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3211
3212         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
3213         __sighndlr.
3214         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
3215
3216 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
3217
3218         * windows-nat.c (windows_nat_target::wait): Remove a spurious
3219         target_terminal::ours().
3220
3221 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
3222
3223         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
3224         of vl to ULONGEST.
3225
3226 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
3227
3228         * breakpoint.c (update_inserted_breakpoint_locations): Remove
3229         redundant condition.
3230
3231 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3232
3233         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
3234
3235         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
3236         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
3237         * sol-thread.c (ps_pdmodel): Don't guard definition.
3238
3239         * procfs.c: Fix formatting.
3240
3241         * procfs.c (sysset_t_alloc): Remove.
3242         (create_procinfo): Use XNEW instead of sysset_t_alloc.
3243         (procfs_debug_inferior): Likewise.
3244         (procfs_set_exec_trap): Likewise.
3245         (proc_set_traced_sysentry): Don't allocate argp dynamically.
3246         (proc_set_traced_sysexit): Likewise.
3247
3248         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
3249         (dead_procinfo): Likewise.
3250         (proc_warn): Likewise.
3251         (proc_error): Likewise.
3252         (proc_get_LDT_entry): Likewise.
3253         (do_attach): Likewise.
3254         (procfs_target::pid_to_str): Likewise.
3255         (iterate_over_mappings): Likewise.
3256
3257         * procfs.c (create_procinfo): Fix ARI warning.
3258         (proc_get_status): Likewise.
3259         (proc_stop_process): Likewise.
3260         (proc_run_process): Likewise.
3261         (proc_kill): Likewise.
3262         (proc_get_LDT_entry): Likewise.
3263         (procfs_find_LDT_entry): Likewise.
3264         (proc_update_threads): Likewise.
3265         (proc_iterate_over_threads): Likewise.
3266         (do_attach): Likewise.
3267         (procfs_xfer_memory): Likewise.
3268         (invalidate_cache): Likewise.
3269         (procfs_target::resume): Likewise.
3270         (procfs_init_inferior): Likewise.
3271         (procfs_set_exec_trap): Likewise.
3272         (procfs_target::thread_alive): Likewise.
3273         (procfs_target::pid_to_exec_file): Likewise.
3274         (iterate_over_mappings): Likewise.
3275         (procfs_target::make_corefile_notes): Likewise.
3276         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
3277
3278         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
3279         (procfs_find_LDT_entry): Likewise.
3280         * sol-thread.c (ps_lgetLDT): Likewise.
3281
3282 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3283
3284         PR tdep/17903
3285         * procfs.c (procfs_target): Declare pid_to_exec_file.
3286         (procfs_target::pid_to_exec_file): New.
3287
3288 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3289
3290         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
3291         renaming.
3292         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
3293         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
3294
3295 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3296
3297         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
3298         (supply_fpregset, fill_fpregset): Move ...
3299         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
3300         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
3301         Remove references to ioctl-based procfs.
3302         Include <sys/reg.h>.
3303         Remove PR_MODEL_NATIVE guards.
3304         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
3305         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
3306
3307 2018-09-19  Xavier Roirand  <roirand@adacore.com>
3308
3309         PR gdb/20981:
3310         * solib-darwin.c (darwin_get_dyld_bfd): New function.
3311         (darwin_solib_get_all_image_info_addr_at_init): Update call.
3312         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
3313
3314 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
3315
3316         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
3317         (fbsd_print_sockaddr_in6): Likewise.
3318
3319 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
3320             Chris January  <chris.january@arm.com>
3321
3322         * eval.c (skip_undetermined_arglist): Skip argument list helper.
3323         (evaluate_subexp_standard): Return a dummy type when
3324         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
3325         OP_F77_UNDETERMINED_ARGLIST case.
3326         * expression.h (enum noside): Update comment.
3327
3328 2018-09-19  George Vasick <george.vasick@oracle.com>
3329
3330         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
3331
3332 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
3333             April Chin <april.chin@oracle.com>
3334             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3335
3336         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
3337         uint_t lwpid_t.
3338         (create_procinfo): Print pids in /proc without leading zeros.
3339
3340 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
3341
3342         * nios2-tdep.c (nios2_gcc_target_options): New.
3343         (nios2_gdb_arch_init): Install new hook.
3344
3345 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
3346
3347         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
3348         New file.
3349         * update-gnulib.sh: Apply patch.
3350         * configure: Re-generate.
3351
3352 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3353
3354         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
3355         description.  Make "info proc" command descriptions more
3356         consistent.
3357
3358 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3359
3360         * NEWS: Mention 'info proc files' command.
3361
3362 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3363
3364         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
3365         descriptors for IP_FILES and IP_ALL.
3366
3367 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3368
3369         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
3370         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
3371         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
3372         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
3373         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
3374         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
3375         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
3376         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
3377         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
3378         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
3379         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
3380         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
3381         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
3382         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
3383         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
3384         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
3385         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
3386         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
3387         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
3388         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
3389         (struct fbsd_sockaddr_un): New types.
3390         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
3391         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
3392         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
3393         (fbsd_core_info_proc_files): New functions.
3394         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
3395         IP_ALL.
3396         * fbsd-tdep.h (fbsd_info_proc_files_header)
3397         (fbsd_info_proc_files_entry): New.
3398
3399 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3400
3401         * defs.h (enum info_proc_what) [IP_FILES]: New value.
3402         * infcmd.c (info_proc_cmd_files): New function.
3403         (_initialize_infcmd): Register 'info proc files' command.
3404
3405 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3406
3407         * gnulib/aclocal-m4-deps.mk: Re-generate.
3408         * gnulib/aclocal.m4: Re-generate.
3409         * gnulib/config.in: Re-generate.
3410         * gnulib/configure: Re-generate.
3411         * gnulib/import/Makefile.am: Re-generate.
3412         * gnulib/import/Makefile.in: Re-generate.
3413         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3414         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3415         * gnulib/import/arpa_inet.in.h: New file.
3416         * gnulib/import/inet_ntop.c: New file.
3417         * gnulib/import/m4/arpa_inet_h.m4: New file.
3418         * gnulib/import/m4/inet_ntop.m4: New file.
3419         * gnulib/import/m4/netinet_in_h.m4: New file.
3420         * gnulib/import/m4/socklen.m4: New file.
3421         * gnulib/import/m4/sockpfaf.m4: New file.
3422         * gnulib/import/m4/stdalign.m4: New file.
3423         * gnulib/import/m4/sys_uio_h.m4: New file.
3424         * gnulib/import/netinet_in.in.h: New file.
3425         * gnulib/import/stdalign.in.h: New file.
3426         * gnulib/import/sys_socket.c: New file.
3427         * gnulib/import/sys_socket.in.h: New file.
3428         * gnulib/import/sys_uio.in.h: New file.
3429         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
3430         module.
3431
3432 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3433
3434         * gnulib/aclocal-m4-deps.mk: New file.
3435         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
3436         deterministically.
3437
3438 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3439
3440         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
3441         KVE_PATH.
3442
3443 2018-09-18  Tom Tromey  <tom@tromey.com>
3444
3445         * compile/compile-object-load.c (struct
3446         link_hash_table_cleanup_data): Add constructor and destructor.
3447         Use DISABLE_COPY_AND_ASSIGN.
3448         (~link_hash_table_cleanup_data): Rename from
3449         link_hash_table_free.  Now a destructor.
3450         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
3451
3452 2018-09-18  Tom Tromey  <tom@tromey.com>
3453
3454         * compile/compile-object-run.c (do_module_cleanup): Use delete.
3455         * compile/compile-object-load.c (struct munmap_list): Move to
3456         header file.
3457         (munmap_list::add): Rename from munmap_list_add; rewrite.
3458         (munmap_list::~munmap_list): Rename from munmap_list_free.
3459         (munmap_listp_free_cleanup): Remove.
3460         (compile_object_load): Update.
3461         * compile/compile-object-load.h (struct munmap_list): Move from
3462         compile-object-load.c.  Rewrite.
3463
3464 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
3465
3466         * aarch64-tdep.c (pass_in_v): Use register size.
3467         (aarch64_extract_return_value): Likewise.
3468         (aarch64_store_return_value): Likewise.
3469
3470 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3471
3472         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
3473         rlim_t.
3474
3475 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3476
3477         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
3478         Fix short help line.
3479
3480 2018-09-17  Tom Tromey  <tom@tromey.com>
3481
3482         PR python/20445:
3483         * configure: Rebuild.
3484         * configure.ac: Conditionally use -DNDEBUG for Python.
3485
3486 2018-09-17  Tom Tromey  <tom@tromey.com>
3487
3488         * configure: Rebuild.
3489         * configure.ac: Use gmp as a library dependency when checking for
3490         mpfr.
3491
3492 2018-09-17  Pedro Alves  <palves@redhat.com>
3493
3494         * python/py-inferior.c (find_inferior_object): Delete.
3495
3496 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
3497
3498         * compile/compile-cplus-types.c
3499         (compile_cplus_instance::enter_scope): Don't use new_scope after
3500         std::move.
3501
3502 2018-09-17  Tom Tromey  <tom@tromey.com>
3503
3504         * common/pathstuff.c (get_standard_cache_dir): Use
3505         ~/Library/Caches on macOS.
3506         * common/pathstuff.h (get_standard_cache_dir): Update comment.
3507
3508 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
3509
3510         PR python/23669
3511         * breakpoint.c (commands_cmd_element): New.
3512         (_initialize_breakpoint): Assign commands_cmd_element.
3513         * breakpoint.h (commands_cmd_element): New.
3514         * cli/cli-script.c (while_cmd_element, if_command,
3515         define_cmd_element): New.
3516         (command_name_equals): Remove.
3517         (process_next_line): Compare commands by pointer, not by name.
3518         (_initialize_cli_script): Assign the various cmd_list_element
3519         variables.
3520         * compile/compile.c (compile_cmd_element): New.
3521         (_initialize_compile): Assign compile_cmd_element.
3522         * compile/compile.h (compile_cmd_element): New.
3523         * guile/guile.c (guile_cmd_element): New.
3524         (install_gdb_commands): Assign guile_cmd_element.
3525         * guile/guile.h (guile_cmd_element): New.
3526         * python/python.c (python_cmd_element): New.
3527         (_initialize_python): Assign python_cmd_element.
3528         * python/python.h (python_cmd_element): New.
3529         * tracepoint.c (while_stepping_cmd_element): New.
3530         (_initialize_tracepoint): Assign while_stepping_cmd_element.
3531         * tracepoint.h (while_stepping_cmd_element): New.
3532
3533 2018-09-17  Tom Tromey  <tom@tromey.com>
3534
3535         * infrun.c (save_infcall_suspend_state): Return
3536         infcall_suspend_state_up.
3537         (save_infcall_control_state): Return infcall_control_state_up.
3538         * inferior.h (save_infcall_suspend_state)
3539         (save_infcall_control_state): Declare later.  Return unique
3540         pointers.
3541
3542 2018-09-17  Tom Tromey  <tom@tromey.com>
3543
3544         * infrun.c (struct stop_context): Declare constructor,
3545         destructor, "changed" method.
3546         (stop_context::stop_context): Rename from save_stop_context.
3547         (stop_context::~stop_context): Rename from
3548         release_stop_context_cleanup.
3549         (normal_stop): Update.
3550         (stop_context::changed): Rename from stop_context_changed.  Return
3551         bool.
3552
3553 2018-09-17  Tom Tromey  <tom@tromey.com>
3554
3555         * inferior.h (struct infcall_suspend_state_deleter): New.
3556         (infcall_suspend_state_up): New typedef.
3557         (struct infcall_control_state_deleter): New.
3558         (infcall_control_state_up): New typedef.
3559         (make_cleanup_restore_infcall_suspend_state)
3560         (make_cleanup_restore_infcall_control_state): Don't declare.
3561         * infcall.c (call_function_by_hand_dummy): Update.
3562         * infrun.c (do_restore_infcall_suspend_state_cleanup)
3563         (make_cleanup_restore_infcall_suspend_state): Remove.
3564         (do_restore_infcall_control_state_cleanup)
3565         (make_cleanup_restore_infcall_control_state): Remove.
3566
3567 2018-09-17  Tom Tromey  <tom@tromey.com>
3568
3569         * gdbthread.h (struct thread_control_state): Add initializer.
3570         (class thread_info) <control>: Remove initializer.
3571         * inferior.h (struct inferior_control_state): Add initializer.
3572         (class inferior) <control>: Remove initializer.
3573         (exit_inferior_1): Update.
3574         * infrun.c (struct infcall_control_state): Add constructors.
3575         (save_infcall_control_state): Use new.
3576         (restore_infcall_control_state, discard_infcall_control_state):
3577         Use delete.
3578
3579 2018-09-17  Tom Tromey  <tom@tromey.com>
3580
3581         * infrun.c (struct infcall_suspend_state) <registers>: Now a
3582         unique_ptr.
3583         <siginfo_data>: Now a unique_xmalloc_ptr.
3584         (save_infcall_suspend_state, restore_infcall_suspend_state)
3585         (discard_infcall_suspend_state)
3586         (get_infcall_suspend_state_regcache): Update.
3587
3588 2018-09-17  Tom Tromey  <tom@tromey.com>
3589
3590         * gdbthread.h (struct thread_suspend_state): Add initializers.
3591         (class thread_info) <suspend>: Remove initializer.
3592         * infrun.c (struct infcall_suspend_state): Add initializers.
3593         (save_infcall_suspend_state): Use new.
3594         (discard_infcall_suspend_state): Use delete.
3595
3596 2018-09-16  Tom Tromey  <tom@tromey.com>
3597
3598         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
3599         Remove.
3600         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
3601         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
3602         (py_varobj_iter_new): Likewise.
3603         (py_varobj_get_iterator): Use gdbpy_ref.
3604
3605 2018-09-16  Tom Tromey  <tom@tromey.com>
3606
3607         * python/py-threadevent.c (py_get_event_thread): Simplify.
3608         * python/py-inferior.c (infpy_thread_from_thread_handle):
3609         Return immediately after calling thread_to_thread_object.  Use
3610         Py_RETURN_NONE.
3611         (thread_to_thread_object): Set the exception on a NULL return.
3612
3613 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
3614
3615         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
3616
3617 2018-09-16  Tom Tromey  <tom@tromey.com>
3618
3619         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
3620         Remove.
3621
3622 2018-09-16  Tom Tromey  <tom@tromey.com>
3623
3624         * python/python-internal.h (thread_to_thread_object): Change
3625         return type.
3626         * python/py-inferior.c (thread_to_thread_object): Return a new
3627         reference.
3628         (infpy_thread_from_thread_handle): Update.
3629         * python/py-infthread.c (gdbpy_selected_thread): Update.
3630         * python/py-stopevent.c (create_stop_event_object): Update.
3631         * python/py-threadevent.c (py_get_event_thread): Return a new
3632         reference.
3633         (py_get_event_thread): Update.
3634         * python/py-event.h (py_get_event_thread): Change return type.
3635         * python/py-continueevent.c (create_continue_event_object):
3636         Update.
3637
3638 2018-09-16  Tom Tromey  <tom@tromey.com>
3639
3640         * python/py-progspace.c (pspy_get_objfiles): Update.
3641         * python/python-internal.h (objfile_to_objfile_object): Change
3642         return type.
3643         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3644         Update.
3645         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3646         Update.
3647         * python/python.c (gdbpy_get_current_objfile): Update.
3648         (gdbpy_objfiles): Update.
3649         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
3650         Update.
3651         (objfile_to_objfile_object): Return a new reference.
3652         * python/py-symtab.c (stpy_get_objfile): Update.
3653         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
3654         Update.
3655
3656 2018-09-16  Tom Tromey  <tom@tromey.com>
3657
3658         * python/py-inferior.c (infpy_get_progspace): Update.
3659         * python/python-internal.h (pspace_to_pspace_object): Change
3660         return type.
3661         * python/py-newobjfileevent.c
3662         (create_clear_objfiles_event_object): Update.
3663         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3664         Update.
3665         * python/python.c (gdbpy_get_current_progspace): Update.
3666         (gdbpy_progspaces): Update.
3667         * python/py-progspace.c (pspace_to_pspace_object): Return a new
3668         reference.
3669         * python/py-objfile.c (objfpy_get_progspace): Update.
3670         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
3671         Update.
3672
3673 2018-09-16  Tom Tromey  <tom@tromey.com>
3674
3675         * python/lib/gdb/__init__.py (current_progspace, objfiles)
3676         (solib_name, block_for_pc, find_pc_line): New functions.
3677         (execute_unwinders): Update.
3678         * python/py-block.c (gdbpy_block_for_pc): Remove.
3679         * python/py-inferior.c (infpy_get_progspace): New function.
3680         (inferior_object_getset) <progspace>: Add.
3681         * python/py-progspace.c (pspy_objfiles): Rewrite.
3682         (pspy_solib_name, pspy_block_for_pc)
3683         (pspy_find_pc_line, pspy_is_valid): New functions.
3684         (progspace_object_methods): Add entries for solib_name,
3685         block_for_pc, find_pc_line, is_valid.
3686         * python/python-internal.h (gdbpy_block_for_pc)
3687         (build_objfiles_list): Don't declare.
3688         * python/python.c: Don't include solib.h.
3689         (gdbpy_solib_name, gdbpy_find_pc_line)
3690         (gdbpy_get_current_progspace, build_objfiles_list)
3691         (gdbpy_objfiles): Remove.
3692         (GdbMethods) <current_progspace, objfiles, block_for_pc,
3693         solib_name, find_pc_line>: Remove entries.
3694
3695 2018-09-16  Tom Tromey  <tom@tromey.com>
3696
3697         * top.c (new_ui_command): Use GNU style for metasyntactic
3698         variables.
3699         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
3700         variables.
3701         * maint.c (maintenance_translate_address): Remove "<>" around
3702         text.
3703         * interps.c (interpreter_exec_cmd): Use GNU style for
3704         metasyntactic variables.
3705         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
3706         metasyntactic variables.
3707         * tracepoint.c (tfind_range_command): Use GNU style for
3708         metasyntactic variables.
3709         (tfind_outside_command): Likewise.
3710         (_initialize_tracepoint): Likewise.
3711         * remote.c (extended_remote_target::create_inferior): Use GNU
3712         style for metasyntactic variables.
3713         * sparc64-tdep.c (adi_examine_command): Use GNU style for
3714         metasyntactic variables.
3715         (adi_assign_command): Likewise.
3716
3717 2018-09-16  Tom Tromey  <tom@tromey.com>
3718
3719         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
3720         metasyntactic variables.  Print message if no disassembler options
3721         are available.
3722
3723 2018-09-15  Tom Tromey  <tom@tromey.com>
3724
3725         * infcmd.c (get_inferior_args): Return const char *.
3726         * inferior.h (get_inferior_args): Return type now const.
3727         * linux-tdep.c (linux_fill_prpsinfo): Update.
3728         * procfs.c (procfs_target::make_corefile_notes): Update.
3729
3730 2018-09-07  Tom Tromey  <tom@tromey.com>
3731
3732         * python/python.c (execute_gdb_command): Call bpstat_do_actions
3733         inside the TRY.
3734
3735 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
3736
3737         * nios2-tdep.c (nios2_type_align): New.
3738         (nios2_gdb_arch_init): Install type_align hook.
3739
3740 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
3741
3742         * eval.c (fake_method::fake_method): Call xzalloc directly for a
3743         type that is neither object file owned, nor gdbarch owned.
3744         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
3745         gdbarch is non-NULL.
3746         (alloc_type_instance): Allocate non-objfile owned types on the
3747         gdbarch obstack.
3748         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
3749         using TYPE_ALLOC to ensure memory is allocated on the correct
3750         obstack.
3751         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
3752         obstack, or the gdbarch obstack.
3753         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
3754
3755 2018-09-14  Tom Tromey  <tom@tromey.com>
3756
3757         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
3758         block.
3759
3760 2018-09-14  Tom Tromey  <tom@tromey.com>
3761
3762         * nat/fork-inferior.c (get_startup_shell): Remove "static".
3763
3764 2018-09-13  Tom Tromey  <tom@tromey.com>
3765
3766         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
3767         static.
3768
3769 2018-09-13  Tom Tromey  <tom@tromey.com>
3770
3771         * exec.c (try_open_exec_file): Use std::string.
3772
3773 2018-09-13  Tom Tromey  <tom@tromey.com>
3774
3775         * utils.h (gdb_bfd_errmsg): Return std::string.
3776         * exec.c (exec_file_attach): Update.
3777         * compile/compile-object-load.c (compile_object_load): Update.
3778         * utils.c (gdb_bfd_errmsg): Return std::string.
3779
3780 2018-09-13  Tom Tromey  <tom@tromey.com>
3781
3782         * procfs.c (struct procinfo_deleter): New.
3783         (procinfo_up): New typedef.
3784         (do_destroy_procinfo_cleanup): Remove.
3785         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
3786
3787 2018-09-13  Tom Tromey  <tom@tromey.com>
3788
3789         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
3790
3791 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3792 2018-09-13  Tom Tromey  <tom@tromey.com>
3793
3794         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
3795         (pspy_get_objfiles): New function.
3796         (progspace_object_methods): New.
3797         (pspace_object_type): Add tp_methods callback.
3798         * python/python-internal.h (build_objfiles_list): New
3799         declaration.
3800         * python/python.c (build_objfiles_list): New function.
3801         (gdbpy_objfiles): Implement using build_objfiles_list.
3802         * NEWS: Mention the Progspace.objfiles method.
3803
3804 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3805
3806         * python/py-inferior.c (infpy_get_progspace): New function.
3807         (inferior_object_getset): Add progspace property.
3808         * NEWS: Mention the new property.
3809
3810 2018-09-13  Tom Tromey  <tom@tromey.com>
3811
3812         PR rust/23650:
3813         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
3814
3815 2018-09-13  Tom Tromey  <tom@tromey.com>
3816
3817         PR rust/23626:
3818         * rust-lang.c (rust_enum_variant): Now static.
3819         (rust_empty_enum_p): New function.
3820         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
3821         Handle empty enum.
3822
3823 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3824
3825         * python/py-inferior.c (infpy_repr): New.
3826         (inferior_object_type): Register infpy_repr.
3827         * python/py-objfile.c (objfpy_repr): New.
3828         (objfile_object_type): Register objfpy_repr.
3829
3830 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3831
3832         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
3833
3834 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3835
3836         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
3837         typo.
3838
3839 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
3840
3841         * common/common-utils.c: Don't include '<sys/stat.h>'.
3842         (is_regular_file): Move to...
3843         * common/filestuff.c (is_regular_file): ... here.
3844         * common/common-utils.h (is_regular_file): Move to...
3845         * common/filestuff.h (is_regular_file): ... here.
3846
3847 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
3848
3849         * skip.c (debug_skip): New variable.
3850         (skiplist_entry::do_skip_file_p): Add debug output.
3851         (skiplist_entry::do_skip_gfile_p): Likewise.
3852         (skiplist_entry::skip_function_p): Likewise.
3853         (_initialize_step_skip): Create debug command.
3854         * NEWS: Mention set/show debug skip.
3855
3856 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3857
3858         * darwin-nat.c (should_disable_startup_with_shell):
3859         New function.
3860         (darwin_nat_target::create_inferior): Add call.
3861
3862 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3863
3864         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
3865         inf_port, msg_state>: Initialize.
3866         (struct darwin_thread_info) <signaled, single_step>: Change
3867         type and initialize.
3868         (struct darwin_thread_info) <event>: Initialize.
3869
3870 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3871
3872         PR gdb/23555
3873         PR gdb/23558
3874         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
3875         guesses.
3876
3877 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3878
3879         Revert:
3880         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3881
3882         PR gdb/23555
3883         PR gdb/23558
3884         * gnulib/aclocal.m4: Regenerate.
3885         * gnulib/config.in: Regenerate.
3886         * gnulib/configure: Regenerate.
3887         * gnulib/import/Makefile.am: Update.
3888         * gnulib/import/Makefile.in: Update.
3889         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3890         * gnulib/import/_Noreturn.h: ... this.
3891         * gnulib/import/alloca.in.h: Update.
3892         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3893         * gnulib/import/arg-nonnull.h: ... this.
3894         * gnulib/import/assure.h: Update.
3895         * gnulib/import/at-func.c: Update.
3896         * gnulib/import/basename-lgpl.c: Update.
3897         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3898         * gnulib/import/c++defs.h: ... this.
3899         * gnulib/import/canonicalize-lgpl.c: Update.
3900         * gnulib/import/cdefs.h: Update.
3901         * gnulib/import/chdir-long.c: Update.
3902         * gnulib/import/chdir-long.h: Update.
3903         * gnulib/import/cloexec.c: Update.
3904         * gnulib/import/cloexec.h: Update.
3905         * gnulib/import/close.c: Update.
3906         * gnulib/import/closedir.c: Update.
3907         * gnulib/import/config.charset: Update.
3908         * gnulib/import/dirent-private.h: Update.
3909         * gnulib/import/dirent.in.h: Update.
3910         * gnulib/import/dirfd.c: Update.
3911         * gnulib/import/dirname-lgpl.c: Update.
3912         * gnulib/import/dirname.h: Update.
3913         * gnulib/import/dosname.h: Update.
3914         * gnulib/import/dup-safer-flag.c: Update.
3915         * gnulib/import/dup-safer.c: Update.
3916         * gnulib/import/dup.c: Update.
3917         * gnulib/import/dup2.c: Update.
3918         * gnulib/import/errno.in.h: Update.
3919         * gnulib/import/error.c: Update.
3920         * gnulib/import/error.h: Update.
3921         * gnulib/import/exitfail.c: Update.
3922         * gnulib/import/exitfail.h: Update.
3923         * gnulib/import/extra/update-copyright: Update.
3924         * gnulib/import/fchdir.c: Update.
3925         * gnulib/import/fcntl.c: Update.
3926         * gnulib/import/fcntl.in.h: Update.
3927         * gnulib/import/fd-hook.c: Update.
3928         * gnulib/import/fd-hook.h: Update.
3929         * gnulib/import/fd-safer-flag.c: Update.
3930         * gnulib/import/fd-safer.c: Update.
3931         * gnulib/import/fdopendir.c: Update.
3932         * gnulib/import/filename.h: Update.
3933         * gnulib/import/filenamecat-lgpl.c: Update.
3934         * gnulib/import/filenamecat.h: Update.
3935         * gnulib/import/flexmember.h: Update.
3936         * gnulib/import/float+.h: Update.
3937         * gnulib/import/float.c: Update.
3938         * gnulib/import/float.in.h: Update.
3939         * gnulib/import/fnmatch.c: Update.
3940         * gnulib/import/fnmatch.in.h: Update.
3941         * gnulib/import/fnmatch_loop.c: Update.
3942         * gnulib/import/fpucw.h: Update.
3943         * gnulib/import/frexp.c: Update.
3944         * gnulib/import/frexpl.c: Update.
3945         * gnulib/import/fstat.c: Update.
3946         * gnulib/import/fstatat.c: Update.
3947         * gnulib/import/getcwd-lgpl.c: Update.
3948         * gnulib/import/getcwd.c: Update.
3949         * gnulib/import/getdtablesize.c: Update.
3950         * gnulib/import/getlogin_r.c: Update.
3951         * gnulib/import/getprogname.c: Update.
3952         * gnulib/import/getprogname.h: Update.
3953         * gnulib/import/gettext.h: Update.
3954         * gnulib/import/gettimeofday.c: Update.
3955         * gnulib/import/glob-libc.h: Update.
3956         * gnulib/import/glob.c: Update.
3957         * gnulib/import/glob.in.h: Update.
3958         * gnulib/import/glob_internal.h: Update.
3959         * gnulib/import/glob_pattern_p.c: Update.
3960         * gnulib/import/globfree.c: Update.
3961         * gnulib/import/hard-locale.c: Update.
3962         * gnulib/import/hard-locale.h: Update.
3963         * gnulib/import/intprops.h: Update.
3964         * gnulib/import/inttypes.in.h: Update.
3965         * gnulib/import/isnan.c: Update.
3966         * gnulib/import/isnand-nolibm.h: Update.
3967         * gnulib/import/isnand.c: Update.
3968         * gnulib/import/isnanl-nolibm.h: Update.
3969         * gnulib/import/isnanl.c: Update.
3970         * gnulib/import/itold.c: Update.
3971         * gnulib/import/libc-config.h: Update.
3972         * gnulib/import/limits.in.h: Update.
3973         * gnulib/import/localcharset.c: Update.
3974         * gnulib/import/localcharset.h: Update.
3975         * gnulib/import/localtime-buffer.c: Update.
3976         * gnulib/import/localtime-buffer.h: Update.
3977         * gnulib/import/lstat.c: Update.
3978         * gnulib/import/m4/00gnulib.m4: Update.
3979         * gnulib/import/m4/__inline.m4: Update.
3980         * gnulib/import/m4/absolute-header.m4: Update.
3981         * gnulib/import/m4/alloca.m4: Update.
3982         * gnulib/import/m4/builtin-expect.m4: Update.
3983         * gnulib/import/m4/canonicalize.m4: Update.
3984         * gnulib/import/m4/chdir-long.m4: Update.
3985         * gnulib/import/m4/close.m4: Update.
3986         * gnulib/import/m4/closedir.m4: Update.
3987         * gnulib/import/m4/configmake.m4: Update.
3988         * gnulib/import/m4/d-ino.m4: Update.
3989         * gnulib/import/m4/d-type.m4: Update.
3990         * gnulib/import/m4/dirent_h.m4: Update.
3991         * gnulib/import/m4/dirfd.m4: Update.
3992         * gnulib/import/m4/dirname.m4: Update.
3993         * gnulib/import/m4/double-slash-root.m4: Update.
3994         * gnulib/import/m4/dup.m4: Update.
3995         * gnulib/import/m4/dup2.m4: Update.
3996         * gnulib/import/m4/eealloc.m4: Update.
3997         * gnulib/import/m4/environ.m4: Update.
3998         * gnulib/import/m4/errno_h.m4: Update.
3999         * gnulib/import/m4/error.m4: Update.
4000         * gnulib/import/m4/exponentd.m4: Update.
4001         * gnulib/import/m4/exponentl.m4: Update.
4002         * gnulib/import/m4/extensions.m4: Update.
4003         * gnulib/import/m4/extern-inline.m4: Update.
4004         * gnulib/import/m4/fchdir.m4: Update.
4005         * gnulib/import/m4/fcntl-o.m4: Update.
4006         * gnulib/import/m4/fcntl.m4: Update.
4007         * gnulib/import/m4/fcntl_h.m4: Update.
4008         * gnulib/import/m4/fdopendir.m4: Update.
4009         * gnulib/import/m4/filenamecat.m4: Update.
4010         * gnulib/import/m4/flexmember.m4: Update.
4011         * gnulib/import/m4/float_h.m4: Update.
4012         * gnulib/import/m4/fnmatch.m4: Update.
4013         * gnulib/import/m4/fnmatch_h.m4: Update.
4014         * gnulib/import/m4/fpieee.m4: Update.
4015         * gnulib/import/m4/frexp.m4: Update.
4016         * gnulib/import/m4/frexpl.m4: Update.
4017         * gnulib/import/m4/fstat.m4: Update.
4018         * gnulib/import/m4/fstatat.m4: Update.
4019         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
4020         * gnulib/import/m4/getcwd-path-max.m4: Update.
4021         * gnulib/import/m4/getcwd.m4: Update.
4022         * gnulib/import/m4/getdtablesize.m4: Update.
4023         * gnulib/import/m4/getlogin.m4: Update.
4024         * gnulib/import/m4/getlogin_r.m4: Update.
4025         * gnulib/import/m4/getpagesize.m4: Update.
4026         * gnulib/import/m4/getprogname.m4: Update.
4027         * gnulib/import/m4/gettimeofday.m4: Update.
4028         * gnulib/import/m4/glibc21.m4: Update.
4029         * gnulib/import/m4/glob.m4: Update.
4030         * gnulib/import/m4/glob_h.m4: Update.
4031         * gnulib/import/m4/gnulib-cache.m4: Update.
4032         * gnulib/import/m4/gnulib-common.m4: Update.
4033         * gnulib/import/m4/gnulib-comp.m4: Update.
4034         * gnulib/import/m4/gnulib-tool.m4: Update.
4035         * gnulib/import/m4/hard-locale.m4: Update.
4036         * gnulib/import/m4/include_next.m4: Update.
4037         * gnulib/import/m4/inttypes-pri.m4: Update.
4038         * gnulib/import/m4/inttypes.m4: Update.
4039         * gnulib/import/m4/isnand.m4: Update.
4040         * gnulib/import/m4/isnanl.m4: Update.
4041         * gnulib/import/m4/largefile.m4: Update.
4042         * gnulib/import/m4/limits-h.m4: Update.
4043         * gnulib/import/m4/localcharset.m4: Update.
4044         * gnulib/import/m4/locale-fr.m4: Update.
4045         * gnulib/import/m4/locale-ja.m4: Update.
4046         * gnulib/import/m4/locale-zh.m4: Update.
4047         * gnulib/import/m4/localtime-buffer.m4: Update.
4048         * gnulib/import/m4/longlong.m4: Update.
4049         * gnulib/import/m4/lstat.m4: Update.
4050         * gnulib/import/m4/malloc.m4: Update.
4051         * gnulib/import/m4/malloca.m4: Update.
4052         * gnulib/import/m4/math_h.m4: Update.
4053         * gnulib/import/m4/mbrtowc.m4: Update.
4054         * gnulib/import/m4/mbsinit.m4: Update.
4055         * gnulib/import/m4/mbsrtowcs.m4: Update.
4056         * gnulib/import/m4/mbstate_t.m4: Update.
4057         * gnulib/import/m4/memchr.m4: Update.
4058         * gnulib/import/m4/memmem.m4: Update.
4059         * gnulib/import/m4/mempcpy.m4: Update.
4060         * gnulib/import/m4/memrchr.m4: Update.
4061         * gnulib/import/m4/mkdir.m4: Update.
4062         * gnulib/import/m4/mkstemp.m4: Update.
4063         * gnulib/import/m4/mmap-anon.m4: Update.
4064         * gnulib/import/m4/mode_t.m4: Update.
4065         * gnulib/import/m4/msvc-inval.m4: Update.
4066         * gnulib/import/m4/msvc-nothrow.m4: Update.
4067         * gnulib/import/m4/multiarch.m4: Update.
4068         * gnulib/import/m4/nocrash.m4: Update.
4069         * gnulib/import/m4/off_t.m4: Update.
4070         * gnulib/import/m4/onceonly.m4: Update.
4071         * gnulib/import/m4/open-cloexec.m4: Update.
4072         * gnulib/import/m4/open.m4: Update.
4073         * gnulib/import/m4/openat.m4: Update.
4074         * gnulib/import/m4/opendir.m4: Update.
4075         * gnulib/import/m4/pathmax.m4: Update.
4076         * gnulib/import/m4/rawmemchr.m4: Update.
4077         * gnulib/import/m4/readdir.m4: Update.
4078         * gnulib/import/m4/readlink.m4: Update.
4079         * gnulib/import/m4/realloc.m4: Update.
4080         * gnulib/import/m4/rename.m4: Update.
4081         * gnulib/import/m4/rewinddir.m4: Update.
4082         * gnulib/import/m4/rmdir.m4: Update.
4083         * gnulib/import/m4/save-cwd.m4: Update.
4084         * gnulib/import/m4/secure_getenv.m4: Update.
4085         * gnulib/import/m4/setenv.m4: Update.
4086         * gnulib/import/m4/signal_h.m4: Update.
4087         * gnulib/import/m4/ssize_t.m4: Update.
4088         * gnulib/import/m4/stat-time.m4: Update.
4089         * gnulib/import/m4/stat.m4: Update.
4090         * gnulib/import/m4/std-gnu11.m4: Update.
4091         * gnulib/import/m4/stdbool.m4: Update.
4092         * gnulib/import/m4/stddef_h.m4: Update.
4093         * gnulib/import/m4/stdint.m4: Update.
4094         * gnulib/import/m4/stdio_h.m4: Update.
4095         * gnulib/import/m4/stdlib_h.m4: Update.
4096         * gnulib/import/m4/strchrnul.m4: Update.
4097         * gnulib/import/m4/strdup.m4: Update.
4098         * gnulib/import/m4/strerror.m4: Update.
4099         * gnulib/import/m4/string_h.m4: Update.
4100         * gnulib/import/m4/strstr.m4: Update.
4101         * gnulib/import/m4/strtok_r.m4: Update.
4102         * gnulib/import/m4/sys_socket_h.m4: Update.
4103         * gnulib/import/m4/sys_stat_h.m4: Update.
4104         * gnulib/import/m4/sys_time_h.m4: Update.
4105         * gnulib/import/m4/sys_types_h.m4: Update.
4106         * gnulib/import/m4/tempname.m4: Update.
4107         * gnulib/import/m4/time_h.m4: Update.
4108         * gnulib/import/m4/unistd-safer.m4: Update.
4109         * gnulib/import/m4/unistd_h.m4: Update.
4110         * gnulib/import/m4/warn-on-use.m4: Update.
4111         * gnulib/import/m4/wchar_h.m4: Update.
4112         * gnulib/import/m4/wchar_t.m4: Update.
4113         * gnulib/import/m4/wctype_h.m4: Update.
4114         * gnulib/import/m4/wint_t.m4: Update.
4115         * gnulib/import/malloc.c: Update.
4116         * gnulib/import/malloc/scratch_buffer.h: Update.
4117         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
4118         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
4119         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
4120         * gnulib/import/malloca.c: Update.
4121         * gnulib/import/malloca.h: Update.
4122         * gnulib/import/malloca.valgrind: Update.
4123         * gnulib/import/math.in.h: Update.
4124         * gnulib/import/mbrtowc.c: Update.
4125         * gnulib/import/mbsinit.c: Update.
4126         * gnulib/import/mbsrtowcs-impl.h: Update.
4127         * gnulib/import/mbsrtowcs-state.c: Update.
4128         * gnulib/import/mbsrtowcs.c: Update.
4129         * gnulib/import/memchr.c: Update.
4130         * gnulib/import/memmem.c: Update.
4131         * gnulib/import/mempcpy.c: Update.
4132         * gnulib/import/memrchr.c: Update.
4133         * gnulib/import/mkdir.c: Update.
4134         * gnulib/import/mkstemp.c: Update.
4135         * gnulib/import/msvc-inval.c: Update.
4136         * gnulib/import/msvc-inval.h: Update.
4137         * gnulib/import/msvc-nothrow.c: Update.
4138         * gnulib/import/msvc-nothrow.h: Update.
4139         * gnulib/import/open.c: Update.
4140         * gnulib/import/openat-die.c: Update.
4141         * gnulib/import/openat-priv.h: Update.
4142         * gnulib/import/openat-proc.c: Update.
4143         * gnulib/import/openat.c: Update.
4144         * gnulib/import/openat.h: Update.
4145         * gnulib/import/opendir.c: Update.
4146         * gnulib/import/pathmax.h: Update.
4147         * gnulib/import/pipe-safer.c: Update.
4148         * gnulib/import/rawmemchr.c: Update.
4149         * gnulib/import/readdir.c: Update.
4150         * gnulib/import/readlink.c: Update.
4151         * gnulib/import/realloc.c: Update.
4152         * gnulib/import/ref-add.sin: Update.
4153         * gnulib/import/ref-del.sin: Update.
4154         * gnulib/import/rename.c: Update.
4155         * gnulib/import/rewinddir.c: Update.
4156         * gnulib/import/rmdir.c: Update.
4157         * gnulib/import/same-inode.h: Update.
4158         * gnulib/import/save-cwd.c: Update.
4159         * gnulib/import/save-cwd.h: Update.
4160         * gnulib/import/scratch_buffer.h: Update.
4161         * gnulib/import/secure_getenv.c: Update.
4162         * gnulib/import/setenv.c: Update.
4163         * gnulib/import/signal.in.h: Update.
4164         * gnulib/import/stat-time.c: Update.
4165         * gnulib/import/stat-time.h: Update.
4166         * gnulib/import/stat-w32.c: Update.
4167         * gnulib/import/stat-w32.h: Update.
4168         * gnulib/import/stat.c: Update.
4169         * gnulib/import/stdbool.in.h: Update.
4170         * gnulib/import/stddef.in.h: Update.
4171         * gnulib/import/stdint.in.h: Update.
4172         * gnulib/import/stdio.in.h: Update.
4173         * gnulib/import/stdlib.in.h: Update.
4174         * gnulib/import/str-two-way.h: Update.
4175         * gnulib/import/strchrnul.c: Update.
4176         * gnulib/import/strdup.c: Update.
4177         * gnulib/import/streq.h: Update.
4178         * gnulib/import/strerror-override.c: Update.
4179         * gnulib/import/strerror-override.h: Update.
4180         * gnulib/import/strerror.c: Update.
4181         * gnulib/import/string.in.h: Update.
4182         * gnulib/import/stripslash.c: Update.
4183         * gnulib/import/strnlen1.c: Update.
4184         * gnulib/import/strnlen1.h: Update.
4185         * gnulib/import/strstr.c: Update.
4186         * gnulib/import/strtok_r.c: Update.
4187         * gnulib/import/sys_stat.in.h: Update.
4188         * gnulib/import/sys_time.in.h: Update.
4189         * gnulib/import/sys_types.in.h: Update.
4190         * gnulib/import/tempname.c: Update.
4191         * gnulib/import/tempname.h: Update.
4192         * gnulib/import/time.in.h: Update.
4193         * gnulib/import/unistd--.h: Update.
4194         * gnulib/import/unistd-safer.h: Update.
4195         * gnulib/import/unistd.in.h: Update.
4196         * gnulib/import/unsetenv.c: Update.
4197         * gnulib/import/verify.h: Update.
4198         * gnulib/import/extra/snippet/warn-on-use.h: Update.
4199         * gnulib/import/wchar.in.h: Update.
4200         * gnulib/import/wctype.in.h: Update.
4201         * gnulib/import/xalloc-oversized.h: Update.
4202         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
4203         "53e2c179f26a890fa6685af4b6c1397ee370433b".
4204
4205 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
4206
4207         * record-btrace.c (get_thread_current_frame): Remove
4208         old_inferior_ptid.
4209
4210 2018-09-10  Jerome Guitton  <guitton@adacore.com>
4211
4212         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
4213         with check_tag to 1 if and only if the type is tagged and the
4214         component being searched cannot been found in the current
4215         view. Otherwise, always call ada_to_fixed_type with
4216         check_tag to 0.
4217
4218 2018-09-10  Xavier Roirand  <roirand@adacore.com>
4219
4220         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
4221         declaration.
4222         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
4223         * ada-varobj.c (ada_varobj_get_number_of_children,
4224         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
4225
4226 2018-09-10  Xavier Roirand  <roirand@adacore.com>
4227
4228         * ada-valprint.c (ada_value_print): Use type instead of
4229         enclosing type.
4230
4231 2018-09-10  Xavier Roirand  <roirand@adacore.com>
4232
4233         * ada-lang.c (ada_value_subscript): Handle case when parameter is
4234         an array of access to unconstrained array.
4235
4236 2018-09-10  Xavier Roirand  <roirand@adacore.com>
4237
4238         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
4239         (ada_check_typedef): Use it.
4240
4241 2018-09-10  Xavier Roirand  <roirand@adacore.com>
4242
4243         * ada-varobj.c (ada_varobj_describe_struct_child)
4244         (ada_varobj_describe_child): Handle union case like struct one.
4245
4246 2018-09-10  Tom Tromey  <tom@tromey.com>
4247
4248         PR python/18380:
4249         * python/python.c (_initialize_python): Make example in "python"
4250         help work in Python 3.
4251
4252 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
4253
4254         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
4255         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
4256         $(EXEEXT) to the script, as it is not a program.
4257
4258 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
4259
4260         * python/py-prettyprint.c (pretty_print_one_value): Return
4261         gdbpy_ref<>.
4262         (print_string_repr): Adjust.
4263         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
4264         * python/python-internal.h (apply_varobj_pretty_printer): Return
4265         gdbpy_ref<>.
4266         * varobj.c (varobj_value_get_print_value): Adjust.
4267
4268 2018-09-08  Tom Tromey  <tom@tromey.com>
4269
4270         PR python/16047:
4271         * python/py-prettyprint.c (pretty_print_one_value): Check for
4272         to_string method.
4273
4274 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4275
4276         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
4277         replace_operator_with_call.
4278
4279 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4280
4281         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
4282
4283 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4284
4285         * ada-typeprint.c (print_range): Print the bounds using TYPE
4286         rather than its TYPE_TARGET_TYPE.
4287
4288 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4289
4290         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
4291         call to ada_to_fixed_value_create.
4292
4293 2018-09-08  Jerome Guitton  <guitton@adacore.com>
4294
4295         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
4296
4297 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4298
4299         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
4300         by calls to error.
4301
4302 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4303
4304         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
4305         Move update of loop variable "fi".
4306
4307 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4308
4309         * ada-lang.c (value_assign_to_component): In the case of
4310         big-endian targets, extract the bits of the given VAL
4311         using an src_offset of zero if container is not a scalar.
4312
4313 2018-09-06  Simon Ser  <contact@emersion.fr>
4314
4315         PR gdb/23105
4316         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
4317         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
4318         * fbsd-tdep.c (fbsd_make_note_desc): New.
4319         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
4320         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
4321         * target.h (enum target_object) Add FreeBSD-specific
4322         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
4323
4324 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
4325
4326         * compile/compile-c.h (generate_c_for_variable_locations):
4327         Change reference to pointer.
4328         * compile/compile-c-support.c (compile_program) <compute>:
4329         Likewise.
4330         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
4331         (generate_c_for_for_one_variable): Likewise
4332         (generate_c_for_variable_locations): Likewise
4333         * compile/compile-c-types.c (compile_c_instance::convert_type):
4334         Likewise
4335         * compile/compile-cplus-symbols.c (convert_one_symbol):
4336         std::move the scope passed to enter_scope.
4337         * compile/compile-cplus-types.c
4338         (compile_cplus_instance::enter_scope): Make parameter
4339         rvalue-reference.
4340         (compile_cplus_instance::new_scope): Change reference to
4341         pointer.
4342         (compile_cplus_instance::convert_type): Likewise
4343         (compile_cplus_convert_typedef): std::move the scope passed to
4344         enter_scope.
4345         (compile_cplus_convert_struct_or_union): Likewise.
4346         (compile_cplus_convert_enum): Likewise.
4347         (compile_cplus_convert_namespace): Likewise.
4348         * compile/compile-cplus.h (compile_cplus_instance)
4349         <enter_scope>: Make parameter rvalue-reference.
4350         * compile/compile-internal.h (compile_instance)
4351         <get_cached_type>: Likewise
4352         * compile/compile-loc2c.c (push): Likewise
4353         (pushf): Likewise
4354         (unary): Likewise
4355         (binary): Likewise
4356         (print_label): Likewise
4357         (pushf_register_address): Likewise
4358         (pushf_register): Likewise
4359         (do_compile_dwarf_expr_to_c): Likewise
4360         (compile_dwarf_expr_to_c): Likewise
4361         (compile_dwarf_bounds_to_c): Likewise
4362         * compile/compile.c (compile_instance::get_cached_type):
4363         Likewise
4364         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
4365         (compile_dwarf_bounds_to_c): Likewise
4366         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
4367         (dwarf2_compile_property_to_c): Likewise
4368         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
4369         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
4370         Likewise
4371
4372 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
4373
4374         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
4375         * tui/tui-data.c (init_content_element): Don't initialize it.
4376
4377 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
4378
4379         * tui/tui-data.h (struct tui_win_info)
4380         <detail::opaque>: Remove.
4381         * tui/tui-data.c (init_win_info): Remove assignment.
4382
4383 2018-09-05  Tom Tromey  <tom@tromey.com>
4384
4385         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
4386         -Wformat-nonliteral.
4387         * target-float.c (host_float_ops<T>::to_string)
4388         (host_float_ops<T>::from_string): Use
4389         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
4390         * configure: Rebuild.
4391
4392 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
4393
4394         * printcmd.c (printf_c_string): Use
4395         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
4396         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
4397
4398 2018-09-05  Tom Tromey  <tom@tromey.com>
4399
4400         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
4401
4402 2018-09-05  Tom de Vries  <tdevries@suse.de>
4403
4404         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
4405         with resolve_abstract_p == true.
4406         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
4407         defaulting to false. Propagate resolve_abstract_p to
4408         dwarf2_fetch_die_loc_sect_off.
4409         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
4410         parameter, defaulting to false.
4411         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
4412         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
4413         parameter.
4414         * dwarf2read.h (struct die_info): Forward-declare.
4415         (die_info_ptr): New typedef.
4416         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
4417
4418 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
4419
4420         GDB 8.2 released.
4421
4422 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
4423             Pedro Alves  <palves@redhat.com>
4424
4425         * gnulib/Makefile.in (aclocal_m4_deps): Move to
4426         "aclocal-m4-deps.mk".  Include file here.
4427         $(srcdir)/aclocal.m4: Add "configure.ac".
4428         * gnulib/aclocal-m4-deps.mk: New file.
4429         * gnulib/update-gnulib.sh: Automatically update
4430         "aclocal-m4-deps.mk".
4431
4432 2018-09-04  Tom Tromey  <tom@tromey.com>
4433
4434         * configure: Rebuild.
4435         * configure.ac: Remove multi-ice code.
4436
4437 2018-09-04  Tom Tromey  <tom@tromey.com>
4438
4439         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
4440         (ada-exp.o): Update.
4441
4442 2018-09-04  Tom Tromey  <tom@tromey.com>
4443
4444         * Makefile.in (printcmd.o, target-float.o): Remove.
4445         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
4446
4447 2018-09-04  Tom Tromey  <tom@tromey.com>
4448
4449         * gnulib/Makefile.in: Remove obsolete comment.
4450         * Makefile.in: Remove obsolete comment.
4451
4452 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
4453
4454         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
4455         line with '+'.
4456
4457 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4458
4459         * riscv-tdep.c: Add 'prologue-value.h' include.
4460         (struct riscv_unwind_cache): New struct.
4461         (riscv_debug_unwinder): New global.
4462         (riscv_scan_prologue): Update arguments, capture register details
4463         from prologue scan.
4464         (riscv_skip_prologue): Reformat arguments line, move end of
4465         prologue calculation into riscv_scan_prologue.
4466         (riscv_frame_cache): Update return type, create
4467         riscv_unwind_cache, scan the prologue, and fill in remaining cache
4468         details.
4469         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
4470         (riscv_frame_prev_register): Use the trad_frame within the
4471         riscv_unwind_cache.
4472         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
4473         flag.
4474
4475 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4476
4477         * trad-frame.h (trad_frame_set_realreg): Declare.
4478         (trad_frame_set_addr): Declare.
4479         * trad-frame.c (trad_frame_set_realreg): Define new function.
4480         (trad_frame_set_addr): Define new function.
4481         (trad_frame_set_reg_realreg): Use new function.
4482         (trad_frame_set_reg_addr): Use new function.
4483
4484 2018-09-01  Keith Seitz  <keiths@redhat.com>
4485
4486         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
4487         pulongest instead of "%lld".
4488         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
4489         ATTRIBUTE_UNUSED.
4490
4491 2018-08-31  Tom Tromey  <tom@tromey.com>
4492
4493         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
4494         variant part type.
4495
4496 2018-08-31  Pedro Alves  <palves@redhat.com>
4497
4498         * gdbarch.h: Regenerate.
4499
4500 2018-08-31  Pedro Alves  <palves@redhat.com>
4501
4502         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
4503         * target.h (Hardware watchpoint interfaces): Describe
4504         continuable/steppable/non-steppable watchpoints.
4505         * gdbarch.h, gdbarch.c: Regenerate.
4506
4507 2018-08-31  Pedro Alves  <palves@redhat.com>
4508
4509         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
4510         Delete.
4511         * s390-linux-nat.c
4512         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
4513         * target.h (target_ops::have_continuable_watchpoint): Delete.
4514         (target_have_continuable_watchpoint): Delete.
4515         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
4516         * target-delegates.c: Regenerate.
4517
4518 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
4519
4520         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
4521         the files present in "gnulib/import/m4/".
4522
4523 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4524
4525         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
4526         c.sw, c.swsp, and c.sdsp.
4527
4528 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4529
4530         * riscv-tdep.c (struct riscv_inferior_data): Delete.
4531         (riscv_read_misa_reg): Don't cache value read into inferior data.
4532         (riscv_new_inferior_data): Delete.
4533         (riscv_inferior_data_cleanup): Delete.
4534         (riscv_inferior_data): Delete.
4535         (riscv_invalidate_inferior_data): Delete.
4536         (_initialize_riscv_tdep): Remove initialisation of inferior data.
4537
4538 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
4539
4540         * compile/compile-cplus-types.c
4541         (compile_cplus_instance::leave_scope): Take the address of scope
4542         object.
4543         (compile_cplus_instance::convert_qualified_base): Compare quals
4544         to 0.
4545
4546 2018-08-30  Keith Seitz  <keiths@redhat.com>
4547
4548         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
4549         Use "%s" and host_address_to_string instead of "%p" in printf.
4550
4551 2018-08-29  Keith Seitz  <keiths@redhat.com>
4552
4553         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
4554         and compile-cplus-types.c.
4555         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
4556         * c-lang.c (cplus_language_defn): Set C++ compile functions.
4557         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
4558         Declare.
4559         * compile/compile-c-support.c: Include compile-cplus.h.
4560         (load_libcompile): Templatize.
4561         (get_compile_context): "New" function.
4562         (c_get_compile_context): Use get_compile_context.
4563         (cplus_get_compile_context): New function.
4564         (cplus_push_user_expression, cplus_pop_user_expression)
4565         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
4566         (cplus_compute_program): Define new structs/functions.
4567         * compile/compile-cplus-symmbols.c: New file.
4568         * compile/compile-cplus-types.c: New file.
4569         * compile/compile-cplus.h: New file.
4570         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
4571         Declare.
4572         * compile/compile-object-load.c (get_out_value_type): Use
4573         strncmp_iw when comparing symbol names.
4574         (compile_object_load): Add mst_bss and mst_data.
4575         * compile/compile.c (_initialize_compile): Remove
4576         -Wno-implicit-function-declaration from `compile_args'.
4577         * compile/gcc-cp-plugin.h: New file.
4578         * NEWS: Mention C++ compile support and new debug options.
4579
4580 2018-08-29  Keith Seitz  <keiths@redhat.com>
4581
4582         * linespec.c (collect_info::add_symbol): Make virtual.
4583         (struct symbol_searcher_collect_info): New struct.
4584         (symbol_searcher::find_all_symbols): New method.
4585         * symtab.h (class symbol_searcher): New class.
4586
4587 2018-08-29  Keith Seitz  <keiths@redhat.com>
4588
4589         * linespec.c (struct linespec) <function_symbols, label_symbols>:
4590         Change to vector of block_symbol.  Update all users.
4591         (struct collect_info) <symbols>: Likewise.
4592         (collect_info::add_symbol): Take block_symbol as argument.
4593         Update all callers.
4594         (decode_compound_collector) <m_symbols>: Change type to vector
4595         of block_symbol.  Update all users.
4596         (decode_compound_collector::operator ()): Change parameter type
4597         to block_symbol.
4598         (find_method, find_function_symbols, find_linespec_symbols)
4599         (find_label_symbols_in_block, find_label_symbols): Change symbol
4600         vectors to block_symbol vectors.
4601         * symtab.h (symbol_found_callback_ftype): Change parameter type to
4602         block_symbol.
4603
4604 2018-08-29  Keith Seitz  <keiths@redhat.com>
4605
4606         * linespec.c (symbolp): Remove typedef and VEC definitions.
4607         (bound_minimal_symbol_d): Likewise.
4608
4609 2018-08-29  Keith Seitz  <keiths@redhat.com>
4610
4611         * linespec.c (decode_compound_collector::decode_compound_collector):
4612         Remove initialization for `m_symtabs'.
4613         (decode_compound_collector::release_symbols): Change return type
4614         to std::vector.  Update all callers.
4615         (class decode_compound_collector) <m_symbols>: Change type to
4616         std::vector.
4617         (lookup_prefix_sym): Change return type to std::vector.  Update all
4618         callers.
4619         (compare_symbols): Remove.
4620         (std_compare_symbols): Rename to `compare_symbols'.
4621         (find_method): Change `sym_classes' parameter to std::vector.
4622         Update all callers.  Use std::sort to sort sym_classes.
4623         (find_linespec_symbols): Remove cleanup.
4624
4625 2018-08-29  Keith Seitz  <keiths@redhat.com>
4626
4627         * linespec.c (struct linespec) <minimal_symbols>: Change type to
4628         std::vector.  Update all users.
4629         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
4630         (struct collect_info) <minimal_symbols>: Likewise.
4631         (compare_msymbols): Return bool.  Change parameters to const
4632         bound_minimal_symbol references.
4633         (find_method, find_function_symbols, find_linespec_symbols): Change
4634         `minsyms' parameter to std::vector.  Update all callers.
4635
4636 2018-08-29  Keith Seitz  <keiths@redhat.com>
4637
4638         * linespec.c (struct linespec) <label_symbols>: Change type to
4639         std::vector.  Update all users.
4640         (find_label_symbols_in_block): Change `result' parameter to
4641         std::vector.  Update all callers.
4642         (find_label_symbols): Return std::vector.  Update all callers.
4643
4644 2018-08-29  Keith Seitz  <keiths@redhat.com>
4645
4646         * linespec.c (struct linespec) <function_symbols>: Change type to
4647         std::vector.  Update all users.
4648         (struct collect_info) <function_symbols>: Likewise.
4649         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
4650         (std_compare_symbols): New function.
4651         (find_method, find_function_symbols, find_linespec_symbols)
4652         (find_label_symbols_in_block): Change `symbols' parameter to
4653         std::vector.  Update all callers.
4654         (find_label_symbols): Likewise for `function_symbols' and
4655         `label_funcs_ret'.
4656
4657 2018-08-29  Keith Seitz  <keiths@redhat.com>
4658
4659         * linespec.c (symtab_vector_up): Define.
4660         (struct linespec) <file_symtabs>: Change type to std::vector *.
4661         Update all uses.
4662         (struct collect_info) <file_symtabs>: Likewise.
4663         (collect_symtabs_from_filename): Return symtab_vector_up.
4664         Update all callers.
4665         (decode_objc): Remove cleanup.
4666         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
4667         (symtab_collector::release_symtabs): Return symtab_vector_up.
4668         Update all callers.
4669         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
4670         Update all users.
4671         (collect_symtabs_from_filename, symtabs_from_filename): Return
4672         symtab_vector_up.  Update all callers.
4673
4674 2018-08-29  Tom Tromey  <tom@tromey.com>
4675
4676         * csky-tdep.c (csky_analyze_prologue): Use
4677         core_addr_to_string_nz.
4678
4679 2018-08-29  Tom Tromey  <tom@tromey.com>
4680
4681         * windows-nat.c (struct xlate_exception) <them>: Change type to
4682         DWORD.
4683         (xlate): Fix formatting.  Remove last entry.
4684         (struct xlate_exception, xlate): Comment out.
4685         (windows_nat_target::resume): Use ranged for.
4686
4687 2018-08-29  Jim Wilson  <jimw@sifive.com>
4688
4689         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
4690         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
4691         of NT_PRFPREG.
4692         (riscv_linux_nat_target::store_registers): Likewise.
4693
4694 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
4695
4696         PR gdb/23555
4697         PR gdb/23558
4698         * gnulib/aclocal.m4: Regenerate.
4699         * gnulib/config.in: Regenerate.
4700         * gnulib/configure: Regenerate.
4701         * gnulib/import/Makefile.am: Update.
4702         * gnulib/import/Makefile.in: Update.
4703         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
4704         * gnulib/import/_Noreturn.h: ... this.
4705         * gnulib/import/alloca.in.h: Update.
4706         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
4707         * gnulib/import/arg-nonnull.h: ... this.
4708         * gnulib/import/assure.h: Update.
4709         * gnulib/import/at-func.c: Update.
4710         * gnulib/import/basename-lgpl.c: Update.
4711         * gnulib/import/extra/snippet/c++defs.h: Rename to...
4712         * gnulib/import/c++defs.h: ... this.
4713         * gnulib/import/canonicalize-lgpl.c: Update.
4714         * gnulib/import/cdefs.h: Update.
4715         * gnulib/import/chdir-long.c: Update.
4716         * gnulib/import/chdir-long.h: Update.
4717         * gnulib/import/cloexec.c: Update.
4718         * gnulib/import/cloexec.h: Update.
4719         * gnulib/import/close.c: Update.
4720         * gnulib/import/closedir.c: Update.
4721         * gnulib/import/config.charset: Update.
4722         * gnulib/import/dirent-private.h: Update.
4723         * gnulib/import/dirent.in.h: Update.
4724         * gnulib/import/dirfd.c: Update.
4725         * gnulib/import/dirname-lgpl.c: Update.
4726         * gnulib/import/dirname.h: Update.
4727         * gnulib/import/dosname.h: Update.
4728         * gnulib/import/dup-safer-flag.c: Update.
4729         * gnulib/import/dup-safer.c: Update.
4730         * gnulib/import/dup.c: Update.
4731         * gnulib/import/dup2.c: Update.
4732         * gnulib/import/errno.in.h: Update.
4733         * gnulib/import/error.c: Update.
4734         * gnulib/import/error.h: Update.
4735         * gnulib/import/exitfail.c: Update.
4736         * gnulib/import/exitfail.h: Update.
4737         * gnulib/import/extra/update-copyright: Update.
4738         * gnulib/import/fchdir.c: Update.
4739         * gnulib/import/fcntl.c: Update.
4740         * gnulib/import/fcntl.in.h: Update.
4741         * gnulib/import/fd-hook.c: Update.
4742         * gnulib/import/fd-hook.h: Update.
4743         * gnulib/import/fd-safer-flag.c: Update.
4744         * gnulib/import/fd-safer.c: Update.
4745         * gnulib/import/fdopendir.c: Update.
4746         * gnulib/import/filename.h: Update.
4747         * gnulib/import/filenamecat-lgpl.c: Update.
4748         * gnulib/import/filenamecat.h: Update.
4749         * gnulib/import/flexmember.h: Update.
4750         * gnulib/import/float+.h: Update.
4751         * gnulib/import/float.c: Update.
4752         * gnulib/import/float.in.h: Update.
4753         * gnulib/import/fnmatch.c: Update.
4754         * gnulib/import/fnmatch.in.h: Update.
4755         * gnulib/import/fnmatch_loop.c: Update.
4756         * gnulib/import/fpucw.h: Update.
4757         * gnulib/import/frexp.c: Update.
4758         * gnulib/import/frexpl.c: Update.
4759         * gnulib/import/fstat.c: Update.
4760         * gnulib/import/fstatat.c: Update.
4761         * gnulib/import/getcwd-lgpl.c: Update.
4762         * gnulib/import/getcwd.c: Update.
4763         * gnulib/import/getdtablesize.c: Update.
4764         * gnulib/import/getlogin_r.c: Update.
4765         * gnulib/import/getprogname.c: Update.
4766         * gnulib/import/getprogname.h: Update.
4767         * gnulib/import/gettext.h: Update.
4768         * gnulib/import/gettimeofday.c: Update.
4769         * gnulib/import/glob-libc.h: Update.
4770         * gnulib/import/glob.c: Update.
4771         * gnulib/import/glob.in.h: Update.
4772         * gnulib/import/glob_internal.h: Update.
4773         * gnulib/import/glob_pattern_p.c: Update.
4774         * gnulib/import/globfree.c: Update.
4775         * gnulib/import/hard-locale.c: Update.
4776         * gnulib/import/hard-locale.h: Update.
4777         * gnulib/import/intprops.h: Update.
4778         * gnulib/import/inttypes.in.h: Update.
4779         * gnulib/import/isnan.c: Update.
4780         * gnulib/import/isnand-nolibm.h: Update.
4781         * gnulib/import/isnand.c: Update.
4782         * gnulib/import/isnanl-nolibm.h: Update.
4783         * gnulib/import/isnanl.c: Update.
4784         * gnulib/import/itold.c: Update.
4785         * gnulib/import/libc-config.h: Update.
4786         * gnulib/import/limits.in.h: Update.
4787         * gnulib/import/localcharset.c: Update.
4788         * gnulib/import/localcharset.h: Update.
4789         * gnulib/import/localtime-buffer.c: Update.
4790         * gnulib/import/localtime-buffer.h: Update.
4791         * gnulib/import/lstat.c: Update.
4792         * gnulib/import/m4/00gnulib.m4: Update.
4793         * gnulib/import/m4/__inline.m4: Update.
4794         * gnulib/import/m4/absolute-header.m4: Update.
4795         * gnulib/import/m4/alloca.m4: Update.
4796         * gnulib/import/m4/builtin-expect.m4: Update.
4797         * gnulib/import/m4/canonicalize.m4: Update.
4798         * gnulib/import/m4/chdir-long.m4: Update.
4799         * gnulib/import/m4/close.m4: Update.
4800         * gnulib/import/m4/closedir.m4: Update.
4801         * gnulib/import/m4/configmake.m4: Update.
4802         * gnulib/import/m4/d-ino.m4: Update.
4803         * gnulib/import/m4/d-type.m4: Update.
4804         * gnulib/import/m4/dirent_h.m4: Update.
4805         * gnulib/import/m4/dirfd.m4: Update.
4806         * gnulib/import/m4/dirname.m4: Update.
4807         * gnulib/import/m4/double-slash-root.m4: Update.
4808         * gnulib/import/m4/dup.m4: Update.
4809         * gnulib/import/m4/dup2.m4: Update.
4810         * gnulib/import/m4/eealloc.m4: Update.
4811         * gnulib/import/m4/environ.m4: Update.
4812         * gnulib/import/m4/errno_h.m4: Update.
4813         * gnulib/import/m4/error.m4: Update.
4814         * gnulib/import/m4/exponentd.m4: Update.
4815         * gnulib/import/m4/exponentl.m4: Update.
4816         * gnulib/import/m4/extensions.m4: Update.
4817         * gnulib/import/m4/extern-inline.m4: Update.
4818         * gnulib/import/m4/fchdir.m4: Update.
4819         * gnulib/import/m4/fcntl-o.m4: Update.
4820         * gnulib/import/m4/fcntl.m4: Update.
4821         * gnulib/import/m4/fcntl_h.m4: Update.
4822         * gnulib/import/m4/fdopendir.m4: Update.
4823         * gnulib/import/m4/filenamecat.m4: Update.
4824         * gnulib/import/m4/flexmember.m4: Update.
4825         * gnulib/import/m4/float_h.m4: Update.
4826         * gnulib/import/m4/fnmatch.m4: Update.
4827         * gnulib/import/m4/fnmatch_h.m4: Update.
4828         * gnulib/import/m4/fpieee.m4: Update.
4829         * gnulib/import/m4/frexp.m4: Update.
4830         * gnulib/import/m4/frexpl.m4: Update.
4831         * gnulib/import/m4/fstat.m4: Update.
4832         * gnulib/import/m4/fstatat.m4: Update.
4833         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
4834         * gnulib/import/m4/getcwd-path-max.m4: Update.
4835         * gnulib/import/m4/getcwd.m4: Update.
4836         * gnulib/import/m4/getdtablesize.m4: Update.
4837         * gnulib/import/m4/getlogin.m4: Update.
4838         * gnulib/import/m4/getlogin_r.m4: Update.
4839         * gnulib/import/m4/getpagesize.m4: Update.
4840         * gnulib/import/m4/getprogname.m4: Update.
4841         * gnulib/import/m4/gettimeofday.m4: Update.
4842         * gnulib/import/m4/glibc21.m4: Update.
4843         * gnulib/import/m4/glob.m4: Update.
4844         * gnulib/import/m4/glob_h.m4: Update.
4845         * gnulib/import/m4/gnulib-cache.m4: Update.
4846         * gnulib/import/m4/gnulib-common.m4: Update.
4847         * gnulib/import/m4/gnulib-comp.m4: Update.
4848         * gnulib/import/m4/gnulib-tool.m4: Update.
4849         * gnulib/import/m4/hard-locale.m4: Update.
4850         * gnulib/import/m4/include_next.m4: Update.
4851         * gnulib/import/m4/inttypes-pri.m4: Update.
4852         * gnulib/import/m4/inttypes.m4: Update.
4853         * gnulib/import/m4/isnand.m4: Update.
4854         * gnulib/import/m4/isnanl.m4: Update.
4855         * gnulib/import/m4/largefile.m4: Update.
4856         * gnulib/import/m4/limits-h.m4: Update.
4857         * gnulib/import/m4/localcharset.m4: Update.
4858         * gnulib/import/m4/locale-fr.m4: Update.
4859         * gnulib/import/m4/locale-ja.m4: Update.
4860         * gnulib/import/m4/locale-zh.m4: Update.
4861         * gnulib/import/m4/localtime-buffer.m4: Update.
4862         * gnulib/import/m4/longlong.m4: Update.
4863         * gnulib/import/m4/lstat.m4: Update.
4864         * gnulib/import/m4/malloc.m4: Update.
4865         * gnulib/import/m4/malloca.m4: Update.
4866         * gnulib/import/m4/math_h.m4: Update.
4867         * gnulib/import/m4/mbrtowc.m4: Update.
4868         * gnulib/import/m4/mbsinit.m4: Update.
4869         * gnulib/import/m4/mbsrtowcs.m4: Update.
4870         * gnulib/import/m4/mbstate_t.m4: Update.
4871         * gnulib/import/m4/memchr.m4: Update.
4872         * gnulib/import/m4/memmem.m4: Update.
4873         * gnulib/import/m4/mempcpy.m4: Update.
4874         * gnulib/import/m4/memrchr.m4: Update.
4875         * gnulib/import/m4/mkdir.m4: Update.
4876         * gnulib/import/m4/mkstemp.m4: Update.
4877         * gnulib/import/m4/mmap-anon.m4: Update.
4878         * gnulib/import/m4/mode_t.m4: Update.
4879         * gnulib/import/m4/msvc-inval.m4: Update.
4880         * gnulib/import/m4/msvc-nothrow.m4: Update.
4881         * gnulib/import/m4/multiarch.m4: Update.
4882         * gnulib/import/m4/nocrash.m4: Update.
4883         * gnulib/import/m4/off_t.m4: Update.
4884         * gnulib/import/m4/onceonly.m4: Update.
4885         * gnulib/import/m4/open-cloexec.m4: Update.
4886         * gnulib/import/m4/open.m4: Update.
4887         * gnulib/import/m4/openat.m4: Update.
4888         * gnulib/import/m4/opendir.m4: Update.
4889         * gnulib/import/m4/pathmax.m4: Update.
4890         * gnulib/import/m4/rawmemchr.m4: Update.
4891         * gnulib/import/m4/readdir.m4: Update.
4892         * gnulib/import/m4/readlink.m4: Update.
4893         * gnulib/import/m4/realloc.m4: Update.
4894         * gnulib/import/m4/rename.m4: Update.
4895         * gnulib/import/m4/rewinddir.m4: Update.
4896         * gnulib/import/m4/rmdir.m4: Update.
4897         * gnulib/import/m4/save-cwd.m4: Update.
4898         * gnulib/import/m4/secure_getenv.m4: Update.
4899         * gnulib/import/m4/setenv.m4: Update.
4900         * gnulib/import/m4/signal_h.m4: Update.
4901         * gnulib/import/m4/ssize_t.m4: Update.
4902         * gnulib/import/m4/stat-time.m4: Update.
4903         * gnulib/import/m4/stat.m4: Update.
4904         * gnulib/import/m4/std-gnu11.m4: Update.
4905         * gnulib/import/m4/stdbool.m4: Update.
4906         * gnulib/import/m4/stddef_h.m4: Update.
4907         * gnulib/import/m4/stdint.m4: Update.
4908         * gnulib/import/m4/stdio_h.m4: Update.
4909         * gnulib/import/m4/stdlib_h.m4: Update.
4910         * gnulib/import/m4/strchrnul.m4: Update.
4911         * gnulib/import/m4/strdup.m4: Update.
4912         * gnulib/import/m4/strerror.m4: Update.
4913         * gnulib/import/m4/string_h.m4: Update.
4914         * gnulib/import/m4/strstr.m4: Update.
4915         * gnulib/import/m4/strtok_r.m4: Update.
4916         * gnulib/import/m4/sys_socket_h.m4: Update.
4917         * gnulib/import/m4/sys_stat_h.m4: Update.
4918         * gnulib/import/m4/sys_time_h.m4: Update.
4919         * gnulib/import/m4/sys_types_h.m4: Update.
4920         * gnulib/import/m4/tempname.m4: Update.
4921         * gnulib/import/m4/time_h.m4: Update.
4922         * gnulib/import/m4/unistd-safer.m4: Update.
4923         * gnulib/import/m4/unistd_h.m4: Update.
4924         * gnulib/import/m4/warn-on-use.m4: Update.
4925         * gnulib/import/m4/wchar_h.m4: Update.
4926         * gnulib/import/m4/wchar_t.m4: Update.
4927         * gnulib/import/m4/wctype_h.m4: Update.
4928         * gnulib/import/m4/wint_t.m4: Update.
4929         * gnulib/import/malloc.c: Update.
4930         * gnulib/import/malloc/scratch_buffer.h: Update.
4931         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
4932         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
4933         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
4934         * gnulib/import/malloca.c: Update.
4935         * gnulib/import/malloca.h: Update.
4936         * gnulib/import/malloca.valgrind: Update.
4937         * gnulib/import/math.in.h: Update.
4938         * gnulib/import/mbrtowc.c: Update.
4939         * gnulib/import/mbsinit.c: Update.
4940         * gnulib/import/mbsrtowcs-impl.h: Update.
4941         * gnulib/import/mbsrtowcs-state.c: Update.
4942         * gnulib/import/mbsrtowcs.c: Update.
4943         * gnulib/import/memchr.c: Update.
4944         * gnulib/import/memmem.c: Update.
4945         * gnulib/import/mempcpy.c: Update.
4946         * gnulib/import/memrchr.c: Update.
4947         * gnulib/import/mkdir.c: Update.
4948         * gnulib/import/mkstemp.c: Update.
4949         * gnulib/import/msvc-inval.c: Update.
4950         * gnulib/import/msvc-inval.h: Update.
4951         * gnulib/import/msvc-nothrow.c: Update.
4952         * gnulib/import/msvc-nothrow.h: Update.
4953         * gnulib/import/open.c: Update.
4954         * gnulib/import/openat-die.c: Update.
4955         * gnulib/import/openat-priv.h: Update.
4956         * gnulib/import/openat-proc.c: Update.
4957         * gnulib/import/openat.c: Update.
4958         * gnulib/import/openat.h: Update.
4959         * gnulib/import/opendir.c: Update.
4960         * gnulib/import/pathmax.h: Update.
4961         * gnulib/import/pipe-safer.c: Update.
4962         * gnulib/import/rawmemchr.c: Update.
4963         * gnulib/import/readdir.c: Update.
4964         * gnulib/import/readlink.c: Update.
4965         * gnulib/import/realloc.c: Update.
4966         * gnulib/import/ref-add.sin: Update.
4967         * gnulib/import/ref-del.sin: Update.
4968         * gnulib/import/rename.c: Update.
4969         * gnulib/import/rewinddir.c: Update.
4970         * gnulib/import/rmdir.c: Update.
4971         * gnulib/import/same-inode.h: Update.
4972         * gnulib/import/save-cwd.c: Update.
4973         * gnulib/import/save-cwd.h: Update.
4974         * gnulib/import/scratch_buffer.h: Update.
4975         * gnulib/import/secure_getenv.c: Update.
4976         * gnulib/import/setenv.c: Update.
4977         * gnulib/import/signal.in.h: Update.
4978         * gnulib/import/stat-time.c: Update.
4979         * gnulib/import/stat-time.h: Update.
4980         * gnulib/import/stat-w32.c: Update.
4981         * gnulib/import/stat-w32.h: Update.
4982         * gnulib/import/stat.c: Update.
4983         * gnulib/import/stdbool.in.h: Update.
4984         * gnulib/import/stddef.in.h: Update.
4985         * gnulib/import/stdint.in.h: Update.
4986         * gnulib/import/stdio.in.h: Update.
4987         * gnulib/import/stdlib.in.h: Update.
4988         * gnulib/import/str-two-way.h: Update.
4989         * gnulib/import/strchrnul.c: Update.
4990         * gnulib/import/strdup.c: Update.
4991         * gnulib/import/streq.h: Update.
4992         * gnulib/import/strerror-override.c: Update.
4993         * gnulib/import/strerror-override.h: Update.
4994         * gnulib/import/strerror.c: Update.
4995         * gnulib/import/string.in.h: Update.
4996         * gnulib/import/stripslash.c: Update.
4997         * gnulib/import/strnlen1.c: Update.
4998         * gnulib/import/strnlen1.h: Update.
4999         * gnulib/import/strstr.c: Update.
5000         * gnulib/import/strtok_r.c: Update.
5001         * gnulib/import/sys_stat.in.h: Update.
5002         * gnulib/import/sys_time.in.h: Update.
5003         * gnulib/import/sys_types.in.h: Update.
5004         * gnulib/import/tempname.c: Update.
5005         * gnulib/import/tempname.h: Update.
5006         * gnulib/import/time.in.h: Update.
5007         * gnulib/import/unistd--.h: Update.
5008         * gnulib/import/unistd-safer.h: Update.
5009         * gnulib/import/unistd.in.h: Update.
5010         * gnulib/import/unsetenv.c: Update.
5011         * gnulib/import/verify.h: Update.
5012         * gnulib/import/extra/snippet/warn-on-use.h: Update.
5013         * gnulib/import/wchar.in.h: Update.
5014         * gnulib/import/wctype.in.h: Update.
5015         * gnulib/import/xalloc-oversized.h: Update.
5016         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
5017         "53e2c179f26a890fa6685af4b6c1397ee370433b".
5018
5019 2018-08-16  Gary Benson <gbenson@redhat.com>
5020
5021         PR gdb/13000:
5022         * gdb/main.c (captured_main_1): Exit with nonzero status
5023         in batch mode if the last command to be executed failed.
5024         * NEWS: Mention the above.
5025
5026 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
5027
5028         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
5029         end of warning message.
5030
5031 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
5032
5033         PR gdb/22943:
5034         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
5035         (aarch64_extract_return_value): Use
5036         aapcs_is_vfp_call_or_return_candidate.
5037         (aarch64_return_in_memory): Likewise.
5038         (aarch64_store_return_value): Likewise.
5039
5040 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
5041
5042         * aarch64-tdep.c
5043         (aapcs_is_vfp_call_or_return_candidate): Make static
5044         (pass_in_v_or_stack): Remove function.
5045         (pass_in_v_vfp_candidate): New function.
5046         (aarch64_push_dummy_call): Check for float register candidates.
5047
5048 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
5049
5050         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
5051         (aapcs_is_vfp_call_or_return_candidate_1): New function.
5052         (aapcs_is_vfp_call_or_return_candidate): Likewise.
5053
5054 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
5055
5056         PR build/23399
5057         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
5058         (struct ipa_sym_addresses): Rename to...
5059         (struct ipa_sym_addresses_common): ... this.
5060         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
5061
5062 2018-08-28  Tom Tromey  <tom@tromey.com>
5063
5064         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
5065         (token_fifo): Now a std::vector.
5066         (yylex, c_parse): Update.
5067         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
5068         (token_fifo): Now a std::vector.
5069         (yylex, d_parse): Update.
5070         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
5071         (token_fifo): Now a std::vector.
5072         (yylex, go_parse): Update.
5073
5074 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
5075
5076         * parser-defs.h (struct type_stack) <elements>: Change type to
5077         std::vector<union type_stack_elt>.
5078         <depth, size>: Remove.
5079         * parse.c (parse_exp_in_context_1): Adjust.
5080         (type_stack_reserve): Remove.
5081         (check_type_stack_depth): Remove.
5082         (insert_into_type_stack): Adjust to std::vector.
5083         (insert_type): Likewise.
5084         (push_type): Likewise.
5085         (push_type_int): Likewise.
5086         (insert_type_address_space): Likewise.
5087         (pop_type): Likewise.
5088         (pop_type_int): Likewise.
5089         (pop_typelist): Likewise.
5090         (pop_type_stack): Likewise.
5091         (append_type_stack): Likewise.
5092         (push_type_stack): Likewise.
5093         (get_type_stack): Likewise.
5094         (type_stack_cleanup): Likewise.
5095         (push_typelist): Likewise.
5096         (follow_types): Likewise.
5097         (_initialize_parse): Likewise.
5098
5099 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
5100
5101         * NEWS: Mention csky target.
5102
5103 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
5104             Hafiz Abid Qadeer  <abidh@codesourcery.com>
5105             Don Breazeal  <donb@codesourcery.com>
5106
5107         * csky-linux-tdep.c: New file.
5108         * csky-tdep.c: Likewise.
5109         * csky-tdep.h: Likewise.
5110         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
5111         csky-tdep.o.
5112         (HFILES_NO_SRCDIR): Add csky-tdep.h.
5113         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
5114         * configure.tgt: Add csky support.
5115
5116 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
5117
5118         * python/py-framefilter.c (py_print_frame): Print frame architecture
5119         when printing on an MI output.
5120
5121 2018-08-27  Tom Tromey  <tom@tromey.com>
5122
5123         PR build/23087:
5124         * configure: Rebuild.
5125         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
5126
5127 2018-08-27  Tom Tromey  <tom@tromey.com>
5128
5129         * aarch64-linux-tdep.c
5130         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
5131         casts to int.
5132
5133 2018-08-27  Tom Tromey  <tom@tromey.com>
5134
5135         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
5136         unsigned.
5137         (ppc64_standard_linkage1, ppc64_standard_linkage2)
5138         (ppc64_standard_linkage3, ppc64_standard_linkage4)
5139         (ppc64_standard_linkage5, ppc64_standard_linkage6)
5140         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
5141         unsigned.
5142
5143 2018-08-27  Tom Tromey  <tom@tromey.com>
5144
5145         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
5146         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
5147
5148 2018-08-27  Tom Tromey  <tom@tromey.com>
5149
5150         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
5151         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
5152         ULONGEST_MAX.
5153         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
5154         ULONGEST_MAX.
5155         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
5156         ULONGEST_MAX.
5157         * sparc-linux-tdep.c (sparc32_linux_sigframe)
5158         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
5159         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
5160         ULONGEST_MAX.
5161         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
5162         (ppc64_linux_sigaction_tramp_frame)
5163         (ppc32_linux_sighandler_tramp_frame)
5164         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
5165         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
5166         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
5167         * mn10300-linux-tdep.c (am33_linux_sigframe)
5168         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
5169         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
5170         * mips-linux-tdep.c (mips_linux_o32_sigframe)
5171         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
5172         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
5173         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
5174         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
5175         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
5176         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
5177         * microblaze-linux-tdep.c
5178         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
5179         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
5180         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
5181         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
5182         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
5183         * common/common-types.h (ULONGEST_MAX): New define.
5184         (CORE_ADDR_MAX): Fix formatting.
5185         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
5186         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
5187         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
5188         (arm_linux_rt_sigreturn_tramp_frame)
5189         (arm_eabi_linux_sigreturn_tramp_frame)
5190         (arm_eabi_linux_rt_sigreturn_tramp_frame)
5191         (thumb2_eabi_linux_sigreturn_tramp_frame)
5192         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
5193         (arm_linux_restart_syscall_tramp_frame)
5194         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
5195         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
5196         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
5197         ULONGEST_MAX.
5198         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
5199
5200 2018-08-27  Tom Tromey  <tom@tromey.com>
5201
5202         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
5203         CORE_ADDR_MAX.
5204         * mips-tdep.c (mips_deal_with_atomic_sequence)
5205         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
5206         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
5207         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
5208         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
5209         CORE_ADDR_MAX.
5210         * aarch64-tdep.c (aarch64_software_single_step): Use
5211         CORE_ADDR_MAX.
5212
5213 2018-08-27  Tom Tromey  <tom@tromey.com>
5214
5215         * linespec.c (complete_linespec_component): Add cast to "char".
5216         * completer.c (completion_tracker::build_completion_result): Add
5217         cast to "char".
5218
5219 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
5220
5221         * solist.h (struct solist, struct target_so_ops): Fix
5222         indentation.
5223
5224 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
5225
5226         * ada-tasks.c (ada_task_info_s): Remove typedef.
5227         (DEF_VEC_O(ada_task_info_s)): Remove.
5228         (struct ada_tasks_inferior_data): Initialize fields.
5229         <task_list>: Make an std::vector.
5230         (get_ada_tasks_inferior_data): Allocate with new.
5231         (ada_get_task_number): Adjust.
5232         (get_task_number_from_id): Likewise.
5233         (valid_task_id): Likewise.
5234         (ada_get_task_info_from_ptid): Likewise.
5235         (iterate_over_live_ada_tasks): Likewise.
5236         (add_ada_task): Likewise.
5237         (read_known_tasks): Likewise.
5238         (ada_build_task_list): Likewise.
5239         (print_ada_task_info): Likewise.
5240         (info_task): Likewise.
5241         (task_command_1): Likewise.
5242
5243 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
5244
5245         * ada-lang.c (add_angle_brackets): Return std::string.
5246
5247 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
5248
5249         * python/py-threadevent.c (py_get_event_thread): Initialize
5250         pythread.
5251
5252 2018-08-24  Pedro Alves  <palves@redhat.com>
5253
5254         * python/py-bpevent.c (create_breakpoint_event_object): Use
5255         copy-initialization.
5256         * python/py-continueevent.c (emit_continue_event): Use
5257         copy-initialization.
5258         * python/py-exitedevent.c (create_exited_event_object): Return a
5259         gdbpy_ref<>.
5260         (emit_exited_event): Use copy-initialization.
5261         * python/py-inferior.c (python_new_inferior)
5262         (python_inferior_deleted, add_thread_object): Use
5263         copy-initialization.
5264         * python/py-infevents.c (create_inferior_call_event_object)
5265         (create_register_changed_event_object)
5266         (create_memory_changed_event_object): Return a gdbpy_ref<>.
5267         (emit_inferior_call_event, emit_memory_changed_event)
5268         (emit_register_changed_event): Use copy-initialization.
5269         * python/py-newobjfileevent.c (create_new_objfile_event_object):
5270         Return a gdbpy_ref<>.
5271         (emit_new_objfile_event): Use copy-initialization.
5272         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
5273         (emit_clear_objfiles_event): Use copy-initialization.
5274         * python/py-signalevent.c (create_signal_event_object): Use
5275         copy-initialization.
5276         * python/py-threadevent.c (create_thread_event_object): Use
5277         copy-initialization.
5278
5279 2018-08-24  Pedro Alves  <palves@redhat.com>
5280             Simon Marchi  <simon.marchi@ericsson.com>
5281
5282         PR gdb/23379
5283         * python/py-continueevent.c: Include "gdbthread.h".
5284         (create_continue_event_object): Add intro comment.  Add 'ptid'
5285         parameter.  Use it to find thread to pass to
5286         create_thread_event_object.
5287         (emit_continue_event): Pass PTID down to
5288         create_continue_event_object.
5289         * python/py-event.h (py_get_event_thread): Declare.
5290         (create_thread_event_object): Remove default from 'thread'
5291         parameter.
5292         * python/py-stopevent.c (create_stop_event_object): Use
5293         py_get_event_thread.
5294         * python/py-threadevent.c (get_event_thread): Rename to ...
5295         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
5296         and use it to find the thread.
5297         (create_thread_event_object): Assert that THREAD isn't null.
5298         Don't find the event thread here.
5299
5300 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
5301
5302         * block.h (blockrange, blockranges): New struct declarations.
5303         (struct block): Add new field named `ranges'.
5304         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
5305         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
5306         macros for accessing ranges in struct block.
5307         (make_blockranges): New declaration.
5308         block.c (make_blockranges): New function.
5309         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
5310         for block.
5311         * symtab.h (find_pc_partial_function): Add new parameter `block'.
5312         * blockframe.c (cache_pc_function_block): New static global.
5313         (clear_pc_function_cache): Clear cache_pc_function_block.
5314         (find_pc_partial_function): Move comment to symtab.h.  Add
5315         support for non-contiguous blocks.
5316         * cli/cli-cmds.c (block.h): Include.
5317         (print_disassembly): Handle printing of non-contiguous blocks.
5318         (disassemble_current_function): Likewise.
5319         (disassemble_command): Likewise.
5320
5321         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
5322         BLOCK_START.
5323         * blockframe.c (get_pc_function_start): Likewise.
5324         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
5325         (gcc_symbol_address): Likewise.
5326         * compile/compile-object-run.c (compile_object_run): Likewise.
5327         * compile/compile.c (get_expr_block_and_pc): Likewise.
5328         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
5329         (func_addr_to_tail_call_list): Likewise.
5330         * findvar.c (default_read_var_value): Likewise.
5331         * inline-frame.c (inline_frame_this_id): Likewise.
5332         (skip-inline_frames): Likewise.
5333         * infcmd.c (until_next_command): Likewise.
5334         * linespec.c (convert_linespec_to_sals): Likewise.
5335         * parse.c (parse_exp_in_context_1): Likewise.
5336         * printcmd.c (build_address_symbolic): likewise.
5337         (info_address_command): Likewise.
5338         symtab.c (find_function_start_sal): Likewise.
5339         (skip_prologue_sal): Likewise.
5340         (find_function_alias_target): Likewise.
5341         (find_gnu_ifunc): Likewise.
5342         * stack.c (find_frame_funname): Likewise.
5343         * symtab.c (fixup_symbol_section): Likewise.
5344         (find_function_start_sal): Likewise.
5345         (skip_prologue_sal): Likewsie.
5346         (find_function_alias_target): Likewise.
5347         (find_gnu_ifunc): Likewise.
5348         * tracepoint.c (info_scope_command): Likewise.
5349         * value.c (value_fn_field): Likewise.
5350
5351         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
5352         in place of find_pc_partial_function.
5353         * blockframe.c (find_function_entry_range_from_pc): New function.
5354         * symtab.h (find_function_entry_range_from_pc): Declare and document.
5355         * objfiles.c (objfile_relocate1): Relocate start and end addresses
5356         for each range in a block.
5357
5358
5359 2018-08-23  Xavier Roirand  <roirand@adacore.com>
5360
5361         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
5362         incrementation.
5363
5364 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5365
5366         * solib-svr4.c (read_program_headers_from_bfd): Return
5367         gdb::optional<gdb::byte_vector>.
5368         (svr4_exec_displacement): Adjust.
5369
5370 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5371
5372         * solib-svr4.c (read_program_header): Return
5373         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
5374         (find_program_interpreter): Return
5375         gdb::optional<gdb::byte_vector>.
5376         (scan_dyntag_auxv): Adjust.
5377         (enable_break): Adjust.
5378         (svr4_exec_displacement): Adjust.
5379
5380 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5381
5382         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
5383         * inf-child.c (inf_child_target::terminal_save_inferior): New.
5384
5385 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5386
5387         * guile/scm-string.c (gdbscm_scm_from_printf): Use
5388         string_vprintf.
5389         * guile/scm-utils.c (gdbscm_printf): Likewise.
5390         * serial.c (serial_printf): Likewise.
5391         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
5392
5393 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
5394
5395         * stack.c (print_frame): Print frame architecture when printing on
5396         an MI output.
5397         * NEWS: Mention new "arch" attribute in frame output.
5398
5399 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
5400
5401         * arch/aarch64.h (aarch64_regnum): Update comment.
5402
5403 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
5404
5405         * NEWS: Add SVE to 8.2 section.
5406
5407 2018-08-21  Pedro Alves  <palves@redhat.com>
5408
5409         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
5410         out from gdbscm_parse_function_args.
5411         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
5412         gdbscm_parse_function_args_1.
5413
5414 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
5415
5416         PR gdb/17816
5417         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
5418         operator.
5419
5420 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
5421
5422         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
5423
5424 2018-08-19  Michael Spang  <spang@google.com>
5425
5426         PR gdb/11786
5427         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
5428         for PT_TLS segments.
5429
5430 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
5431
5432         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
5433         dwarf_variable_value.
5434         * dwarf2-frame.c (class dwarf_expr_executor):
5435         Add override for dwarf_variable_value.
5436         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
5437         (class symbol_needs_eval_context): Likewise.
5438         (indirect_synthetic_pointer): Add forward declaration.
5439         (sect_variable_value): New function.
5440         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
5441         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
5442         for DW_OP_GNU_variable_value.
5443
5444 2018-08-16  Tom Tromey  <tom@tromey.com>
5445
5446         * top.c (read_command_file): Update.
5447         (command_line_input): Remove "repeat" argument.
5448         * ada-lang.c (get_selections): Update.
5449         * linespec.c (decode_line_2): Update.
5450         * defs.h (command_line_input): Remove argument.
5451         * cli/cli-script.c (read_next_line): Update.
5452         * python/py-gdb-readline.c: Update.
5453
5454 2018-08-17  Tom Tromey  <tom@tromey.com>
5455
5456         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
5457         command_line_input.
5458
5459 2018-08-15  Tom Tromey  <tom@tromey.com>
5460
5461         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
5462
5463 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
5464
5465         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
5466         If used, use find_pc_partial_function to find address range
5467         to disassemble.
5468         * mi/mi-main.c (mi_cmd_list_features): Report
5469         "data-disassemble-a-option" feature.
5470         * NEWS: Mention new -data-disassemble option -a.
5471
5472 2018-08-13  Tom Tromey  <tom@tromey.com>
5473
5474         * common/common-defs.h (_FORTIFY_SOURCE): Define.
5475
5476 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5477
5478         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
5479         (aarch64_linux_collect_sve_regset): Likewise.
5480         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
5481         * regcache.h (regcache_map_entry_size): New function.
5482
5483 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5484
5485         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
5486         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
5487         (SVE_HEADER_VL_LENGTH): Likewise.
5488         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
5489         (SVE_HEADER_FLAGS_LENGTH): Likewise.
5490         (SVE_HEADER_RESERVED_LENGTH): Likewise.
5491         (SVE_HEADER_SIZE_OFFSET): Likewise.
5492         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
5493         (SVE_HEADER_VL_OFFSET): Likewise.
5494         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
5495         (SVE_HEADER_FLAGS_OFFSET): Likewise.
5496         (SVE_HEADER_RESERVED_OFFSET): Likewise.
5497         (SVE_HEADER_SIZE): Likewise.
5498         (aarch64_linux_core_read_vq): Add function.
5499         (aarch64_linux_core_read_description): Check for SVE section.
5500
5501 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5502
5503         * aarch64-fbsd-tdep.c
5504         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
5505         collect_size.
5506         * aarch64-linux-tdep.c
5507         (aarch64_linux_iterate_over_regset_sections): Likewise.
5508         * alpha-linux-tdep.c
5509         (alpha_linux_iterate_over_regset_sections):
5510         * alpha-nbsd-tdep.c
5511         (alphanbsd_iterate_over_regset_sections): Likewise.
5512         * amd64-fbsd-tdep.c
5513         (amd64fbsd_iterate_over_regset_sections): Likewise.
5514         * amd64-linux-tdep.c
5515         (amd64_linux_iterate_over_regset_sections): Likewise.
5516         * arm-bsd-tdep.c
5517         (armbsd_iterate_over_regset_sections): Likewise.
5518         * arm-fbsd-tdep.c
5519         (arm_fbsd_iterate_over_regset_sections): Likewise.
5520         * arm-linux-tdep.c
5521         (arm_linux_iterate_over_regset_sections): Likewise.
5522         * corelow.c (get_core_registers_cb): Likewise.
5523         (core_target::fetch_registers): Likewise.
5524         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
5525         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
5526         * gdbarch.h (void): Regenerate.
5527         * gdbarch.sh: Add supply_size and collect_size.
5528         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
5529         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
5530         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
5531         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
5532         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
5533         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
5534         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
5535         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
5536         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
5537         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
5538         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
5539         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
5540         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
5541         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
5542         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections):
5543         Likewise.
5544         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
5545         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
5546         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
5547         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
5548         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
5549         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
5550         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections):
5551         Likewise.
5552         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
5553         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
5554         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
5555         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
5556         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
5557         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
5558         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
5559         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
5560
5561 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
5562
5563         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
5564         with string_printf.
5565
5566 2018-08-10  Keith Seitz  <keiths@redhat.com>
5567
5568         * compile/compile-c-support.c (add_code_header, add_code_footer):
5569         Move into policy class.
5570         (c_push_user_expression, pop_user_expression_nop)
5571         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
5572         (compile_program): New host class.
5573         (c_compile_program): New typedef.
5574         (c_compute_porgram): Use c_compile_program.
5575
5576 2018-08-10  Keith Seitz  <keiths@redhat.com>
5577
5578         * compile/compile-internal.h (compile_instance::~compile_instance):
5579         Remove calls to htab_delete.
5580         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
5581         * compile.c (compile_instance::compile_instance): Initialize
5582         htab unique pointers.
5583         (compile_instance::get_cached_type, compile_instance::insert_type)
5584         (compile_instance::error_symbol_once): Update for unique_ptr.
5585
5586 2018-08-10  Keith Seitz  <keiths@redhat.com>
5587
5588         * compile/compile-c-symbols.c (struct symbol_error)
5589         (hash_symbol_error, eq_symbol_error, del_symbol_error)
5590         (compile_instance::insert_symbol_error)
5591         (compile_instance::error_symbol_once): Move to ...
5592         * compile/compile.c: ... here.
5593
5594 2018-08-10  Keith Seitz  <keiths@redhat.com>
5595
5596         * compile/compile-c-support.c (c_get_compile_context): Use `new'
5597         instead of `new_compile_instance'.
5598         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
5599         Update description.
5600         If the symbol error map is not initialized, create it.
5601         (generate_c_for_for_one_symbol): Do not check/initialize
5602         the symbol error map.
5603         * compile/compile-c-types.c (compile_c_instance): Make a class.
5604         Update all callers.
5605         (compile_instance::compile_instance): Initialize the type cache.
5606         (get_cached_type): New function.
5607         (insert_type): Update description.
5608         (compile_c_instance::m_default_cflags): Define.
5609         (convert_type): Update description.  Use get_cached_type.
5610         (delete_instance): Moved to destructor.
5611         (new_compile_instance): Moved to constructor.
5612         * compile/compile-c.h (compile_c_instance): Make class inheriting
5613         from compile_instance.
5614         <base>: Remove field.
5615         <type_map, symbol_err_map>: Move to base class.
5616         <c_plugin>: Rename to `m_plugin' and remove pointer type.
5617         * compile/compile-internal.h (compile_instance): Make class.
5618         <type_map_t, symbol_err_map_t>: Define.
5619         <fe>: Rename to `m_gcc_fe'.
5620         <scope, block, gcc_target_options>: Add `m_' prefix.
5621         <m_type_map, m_symbol_err_map>: New fields, moved from
5622         compile_c_instance.
5623         <destroy>: Remove.
5624         (convert_type, new_compile_instance): Remove.
5625         * compile/compile.c (cleanup_compile_instance): Remove.
5626         (compile_to_object): Use unique_ptr to eliminate cleanups.
5627         (compile_instance::set_print_callback, compile_instance::version)
5628         (compile_instance::set_verbose)
5629         (compile_instance::set_driver_filename)
5630         (compile_instance::set_triplet_regexp)
5631         (compile_instance::set_arguments)
5632         (compile_instance::set_source_file)
5633         (compile_instance::compile): Define.
5634
5635 2018-08-10  Keith Seitz  <keiths@redhat.com>
5636
5637         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
5638         * compile/compile-c-types.c: Define GCC_METHODN macros and include
5639         gcc-c-fe.def to define C plugin.
5640         (delete_instance): Delete `c_plugin'.
5641         (new_compile_instance): Initialize `c_plugin'.
5642         * compile/compile-c.h: Include gcc_c_plugin.h.
5643         (struct compile_c_instance) <c_plugin>: New member.
5644         * gcc-c-plugin.h: New file.
5645         Update all callers with API change.
5646
5647 2018-08-10  Keith Seitz  <keiths@redhat.com>
5648
5649         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
5650         (HFILES_NO_SRCDIR): ... to here.
5651         Add compile-internal.h and compile-c.h.
5652         * compile/compile-c-support.c: Include compile-c.h.
5653         * compile/compile-c-symbols.c: Include compile-c.h.
5654         (generate_c_for_variable_locations): Update comment.
5655         * compile/compile-c-types.c: Include compile-c.h.
5656         * compile/compile-c.h: New file -- moved C language declarations
5657         from other files here.
5658         * compile/compile-internal.h: Do not include hashtab.h or
5659         common/enum-flags.h.
5660         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
5661         (gcc_convert_symbol, gcc_symbol_address)
5662         (generate_c_for_variable_locations, c_get_mode_for_size)
5663         (c_get_range_decl_name): Definitions moved to compile-c.h.
5664         * compile/compile-loc2c.c: Include compile-c.h.
5665
5666 2018-08-10  Keith Seitz  <keiths@redhat.com>
5667
5668         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
5669         (c_symbol_substitution_name): ... this.
5670         Update all callers.
5671
5672 2018-08-10  Keith Seitz  <keiths@redhat.com>
5673
5674         * compile/compile-c-support.c (c_compute_program): Use
5675         unique_xmalloc_ptr to eliminate cleanup.
5676         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
5677         Return a unique_xmalloc_ptr and eliminate cleanup.
5678         * compile/compile-internal.h (generate_c_for_variable_locations):
5679         Return unique_xmalloc_ptr and update description.
5680
5681 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
5682
5683         * corelow.c (core_target::get_core_register_section): Rename
5684         min_size to section_min_size.
5685
5686 2018-08-09  Jim Wilson  <jimw@sifive.com>
5687
5688         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
5689         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
5690         * NEWS: Mention new GNU/Linux RISC-V target.
5691         * configure.host: Add riscv*-*-linux*.
5692         * configure.nat: Add riscv*.
5693         * configure.tgt: Add riscv*-*-linux*.
5694         * riscv-linux-nat.c: New file.
5695         * riscv-linux-tdep.c: New file.
5696
5697 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5698
5699         * infrun.c (resume): Make static, add forward declaration.
5700         (proceed): Update header comment.
5701         * infrun.h (resume): Delete declaration.
5702
5703 2018-08-09  Tom Tromey  <tom@tromey.com>
5704
5705         * riscv-tdep.h: Minor formatting fixes.
5706
5707 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
5708
5709         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
5710         * dwarf-index-cache.c (create_dir_and_check): Likewise.
5711         (test_mkdir_recursive): Likewise.
5712         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
5713
5714 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5715
5716         * valarith.c (value_subscripted_rvalue): If an array is not in
5717         memory, and we don't know the upper bound, then we can't know that
5718         the requested element exists or not.
5719
5720 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
5721
5722         * target.c (str_comma_list_concat_elem): Fix typo in comment.
5723         (target_options_to_string): Add comment.
5724
5725 2018-08-08  Tom Tromey  <tom@tromey.com>
5726
5727         * unittests/scoped_mmap-selftests.c: Check result of "write".
5728
5729 2018-08-08  Jim Wilson  <jimw@sifive.com>
5730
5731         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
5732         (decode_register_index_short): New.
5733         (decode_j_type_insn, decode_cj_type_insn): New.
5734         (decode_b_type_insn, decode_cb_type_insn): New.
5735         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
5736         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
5737         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
5738         is_c_sw_insn instead of is_sw_insn.
5739         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
5740         (riscv_software_single_step): New.
5741         * riscv-tdep.h (riscv_software_single_step): Declare.
5742
5743         * riscv-tdep.c (riscv_isa_xlen): Drop static.
5744         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
5745
5746 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
5747
5748         PR gdb/18050:
5749         * target.c (dispose_inferior): Don't dispose of inferiors that are
5750         already killed.
5751
5752 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
5753
5754         * remote.c (remote_target::download_tracepoint): Change char* to
5755         const char*.
5756
5757 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
5758
5759         * target.h (target_options_to_string): Return an std::string.
5760         * target.c (str_comma_list_concat_elem): Return void, use
5761         std::string.
5762         (do_option): Likewise.
5763         (target_options_to_string): Return an std::string.
5764         * linux-nat.c (linux_nat_target::wait): Adjust.
5765         * target-debug.h (target_debug_print_options): Adjust.
5766
5767 2018-08-07  Tom Tromey  <tom@tromey.com>
5768
5769         * Makefile.in (CPPFLAGS): New variable.
5770         (INTERNAL_CPPFLAGS): Use it.
5771
5772 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5773
5774         * NEWS: Mention the index cache.
5775
5776 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5777
5778         * common/pathstuff.h (get_standard_cache_dir): New.
5779         * common/pathstuff.c (get_standard_cache_dir): New.
5780         * build-id.h (build_id_to_string): New.
5781         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
5782         DEBUG_STR_SUFFIX): Move to here.
5783         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
5784         DEBUG_STR_SUFFIX): Move from there.
5785         (write_psymtabs_to_index): Make non-static, add basename
5786         parameter.  Write to temporary files, rename when done.
5787         (save_gdb_index_command): Adjust call to
5788         write_psymtabs_to_index.
5789         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
5790         field.
5791         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
5792         (get_gdb_index_contents_from_cache): New.
5793         (get_gdb_index_contents_from_cache_dwz): New.
5794         (dwarf2_initialize_objfile): Read index from cache.
5795         (dwarf2_build_psymtabs): Save to index.
5796         * dwarf-index-cache.h: New file.
5797         * dwarf-index-cache.c: New file.
5798         * dwarf-index-write.h: New file.
5799
5800 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5801
5802         * gnulib/aclocal.m4: Re-generate.
5803         * gnulib/config.in: Re-generate.
5804         * gnulib/configure: Re-generate.
5805         * gnulib/import/Makefile.am: Re-generate.
5806         * gnulib/import/Makefile.in: Re-generate.
5807         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
5808         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5809         * gnulib/import/m4/mkdir.m4: New file.
5810         * gnulib/import/mkdir.c: New file.
5811         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
5812         module.
5813
5814 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5815
5816         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
5817         * common/scoped_mmap.c: New file.
5818         * common/scoped_mmap.h (destroy): New method.
5819         (~scoped_mmap, reset): Use destroy.
5820         (scoped_mmap): New move constructor.
5821         (mmap_file): New declaration.
5822         * unittests/scoped_mmap-selftests.c (test_normal,
5823         test_invalid_filename, run_tests): New functions.
5824         (_initialize_scoped_mmap_selftests): Register selftest.
5825
5826 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5827
5828         * dwarf2read.c (read_gdb_index_from_section): Rename to...
5829         (read_gdb_index_from_buffer): ... this.  Remove section
5830         parameter, add buffer parameter.
5831         (get_gdb_index_contents_ftype,
5832         get_gdb_index_contents_dwz_ftype): New typedefs.
5833         (dwarf2_read_gdb_index): Add callback parameters to get the
5834         index contents.
5835         (get_gdb_index_contents_from_section): New.
5836         (dwarf2_initialize_objfile): Update call to
5837         dwarf2_read_gdb_index.
5838
5839 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5840
5841         * common/filestuff.h (gdb_fopen_cloexec): New overload.
5842         (gdb_open_cloexec): Likewise.
5843         * nat/linux-osdata.c (command_from_pid): Use string_printf.
5844         (commandline_from_pid): Likewise.
5845         (linux_xfer_osdata_threads): Likewise.
5846         (linux_xfer_osdata_fds): Likewise.
5847         * ada-lang.c (is_package_name): Likewise.
5848         * auxv.c (procfs_xfer_auxv): Likewise.
5849         * breakpoint.c (print_one_breakpoint_location): Use
5850         uiout::field_fmt.
5851         (print_one_catch_solib): Use string_printf.
5852         * coff-pe-read.c (add_pe_exported_sym): Likewise.
5853         (add_pe_forwarded_sym): Likewise.
5854         * dwarf2read.c (create_type_unit_group): Likewise.
5855         (build_error_marker_type): Likewise.
5856         * infcall.c (get_function_name): Likewise.
5857         * valprint.c (print_converted_chars_to_obstack): Likewise.
5858         * xtensa-tdep.c (xtensa_register_type): Likewise.
5859
5860 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
5861
5862         * remote.c (remote_target::download_tracepoint): Fix format
5863         string errors.
5864
5865 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5866
5867         * tracefile.c: Include common/byte-vector.h.
5868         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
5869         with trace_regblock_size if needed.  Update uses of buf.
5870
5871 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5872
5873         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
5874         std::vector<unsigned char>.
5875         * tracepoint.c (collection_list::collection_list): Remove
5876         m_regs_mask initializer from initializer list.  Resize
5877         m_regs_mask using the largest remote register number.
5878         (collection_list::add_remote_register): Remove size check on
5879         m_regs_mask.  Use at to access element.
5880         (collection_list::stringify): Change type of temp_buf to
5881         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
5882         stringify the register mask.  Use pack_hex_byte for the register
5883         mask.
5884
5885 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5886
5887         * tracepoint.h (class collection_list) <add_register>: Remove.
5888         <add_remote_register, add_ax_registers, add_local_register>:
5889         Declare.
5890         <add_memrange>: Add scope parameter.
5891         * tracepoint.c (encode_actions_1): Likewise.
5892         (collection_list::add_register): Rename to ...
5893         (collection_list::add_remote_register): ... this.  Update
5894         comment.
5895         (collection_list::add_ax_registers, add_local_register): New
5896         methods.
5897         (collection_list::add_memrange): Add scope parameter.  Call
5898         add_local_register instead of add_register.
5899         (finalize_tracepoint_aexpr): New function.
5900         (collection_list::collect_symbol): Update calls to add_memrange.
5901         Call add_local_register instead of add_register.  Call
5902         add_ax_registers.  Call finalize_tracepoint_aexpr.
5903         (encode_actions_1): Get remote regnos for $reg action.  Call
5904         add_remote_register, add_ax_registers, and add_local_register.
5905         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
5906         (validate_actionline): Call finalize_tracepoint_aexpr.
5907
5908 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5909
5910         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
5911         Replace array buf with gdb::char_vector buf, of size
5912         get_remote_packet_size ().  Replace references to buf and
5913         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
5914         and xsnprintf with snprintf.  Raise errors if the buffer is too
5915         small.
5916
5917 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5918
5919         * remote.c (remote_target::download_tracepoint): Fix the has_more
5920         predicate in the QTDP action list iteration.
5921
5922 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5923
5924         * remote.c (remote_target::download_tracepoint): Fix indentation
5925         in for block.
5926
5927 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5928
5929         * proc-api.c (_initialize_proc_api): Remove c, unused.
5930         * procfs.c (procfs_init_inferior): Remove signals, unused.
5931         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
5932         unused.
5933
5934 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
5935             Andrew Burgess  <andrew.burgess@embecosm.com>
5936
5937         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
5938         'W_STOPCODE (0)' as this could be ambiguous.
5939
5940 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
5941
5942         * ser-tcp.c (net_open): Fix thinko when deciding whether to
5943         disable TCP's Nagle algorithm (use "ai_protocol" instead of
5944         "ai_socktype").
5945
5946 2018-08-02  Tom Tromey  <tom@tromey.com>
5947
5948         PR symtab/16842.
5949         * dwarf2read.c (read_func_scope): Set symtab on template parameter
5950         symbols.
5951         (process_structure_scope): Likewise.
5952
5953 2018-08-02  Xavier Roirand  <roirand@adacore.com>
5954
5955         PR gdb/22629:
5956         * darwin-nat.c (darwin_kill_inferior): Fix handling of
5957         kill inferior.
5958
5959 2018-08-02  Tom Tromey  <tom@tromey.com>
5960
5961         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
5962         (darwin_suspend_inferior, darwin_resume_inferior)
5963         (darwin_decode_notify_message, darwin_resume_inferior_threads)
5964         (darwin_check_new_threads): Check result of get_darwin_inferior.
5965
5966 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
5967
5968         GDB 8.1.1 released.
5969
5970 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
5971
5972         * varobj.c (varobj_get_path_expr_parent): Report an error if
5973         parent is a dynamic varobj.
5974
5975 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5976
5977         * gnulib/aclocal.m4: Re-generate.
5978         * gnulib/config.in: Re-generate.
5979         * gnulib/configure: Re-generate.
5980         * gnulib/import/Makefile.in: Re-generate.
5981         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5982         * gnulib/import/m4/onceonly.m4: Re-generate.
5983
5984 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5985
5986         * target-descriptions.c (struct xml_test_tdesc): New.
5987         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
5988         (record_xml_tdesc): Update.
5989         (maintenance_check_xml_descriptions): Update.
5990         * target-descriptions.h (record_xml_tdesc): Update comment.
5991
5992 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
5993
5994         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
5995         checking array bounds are defined.
5996
5997 2018-07-30  Tom Tromey  <tom@tromey.com>
5998
5999         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
6000         irreflexivity violation.
6001
6002 2018-07-30  Tom Tromey  <tom@tromey.com>
6003
6004         * cli/cli-decode.c (lookup_cmd): Remove lint code.
6005         * value.c (unpack_long): Remove lint code.
6006         * valops.c (value_ind): Remove lint code.
6007         * valarith.c (value_x_binop, value_x_unop, value_equal)
6008         (value_pos): Remove lint code.
6009
6010 2018-07-28  Tom de Vries  <tdevries@suse.de>
6011
6012         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
6013         with undefined upper bound as <optimized out>.
6014
6015 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
6016
6017         * gcore.in: Rename variable "name" to "prefix".  Expand
6018         "usage" text.
6019
6020 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
6021
6022         * windows-nat.c (windows_nat_target::create_inferior): Update to
6023         call close() in global namespace.
6024
6025 2018-07-26  Tom Tromey  <tom@tromey.com>
6026
6027         * dwarf-index-write.c (add_address_entry): Don't add objfile
6028         offsets.
6029         * dbxread.c (find_stab_function): Rename from
6030         find_stab_function_addr.  Return a bound_minimal_symbol.
6031         (read_dbx_symtab): Use raw_text_low, raw_text_high.
6032         Don't add objfile offsets.
6033         (end_psymtab): Use raw_text_low, raw_text_high,
6034         MSYMBOL_VALUE_RAW_ADDRESS.
6035         (read_ofile_symtab): Update.
6036         (process_one_symbol): Update.
6037         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
6038         offsets.
6039         (dw2_relocate): Remove.
6040         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
6041         searching addrmap.
6042         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
6043         Update.
6044         (process_psymtab_comp_unit_reader, add_partial_symbol)
6045         (add_partial_subprogram, dwarf2_ranges_read): Update.
6046         (load_partial_dies): Update.
6047         (add_address_entry): Don't add objfile offsets.
6048         (dwarf2_build_include_psymtabs): Update.
6049         (create_addrmap_from_aranges): Don't add objfile offsets.
6050         (dw2_find_pc_sect_compunit_symtab): Update.
6051         * mdebugread.c (parse_symbol): Don't add objfile offsets.
6052         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
6053         Update.
6054         (parse_partial_symbols): Don't add objfile offsets.  Use
6055         raw_text_low, raw_text_high.  Update.
6056         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
6057         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
6058         or call 'relocate' quick function.  Clear psymbol_map.
6059         * psympriv.h (struct partial_symbol) <address>: Add section
6060         offset.
6061         <set_unrelocated_address>: Rename from set_address.
6062         <raw_text_low, raw_text_high>: New methods.
6063         <text_low, text_high>: Add objfile parameter.
6064         (add_psymbol_to_bcache): Add 'section' parameter.  Call
6065         set_unrelocated_address.
6066         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
6067         (find_pc_psymbol): Update.
6068         (fixup_psymbol_section, relocate_psymtabs): Remove.
6069         (dump_psymtab, psym_functions): Update.
6070         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
6071         parameter.
6072         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
6073         (start_psymtab_common): Update.
6074         * symfile-debug.c (debug_qf_relocate): Remove.
6075         (debug_sym_quick_functions): Update.
6076         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
6077         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
6078         Update.
6079
6080 2018-07-26  Tom Tromey  <tromey@redhat.com>
6081
6082         * dbxread.c (end_psymtab): Use text_high_valid and
6083         text_low_valid.
6084         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
6085         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
6086         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
6087         Update comment.
6088         <text_low_valid, text_high_valid>: New fields.
6089         <set_text_low, set_text_high>: Update.
6090         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
6091
6092 2018-07-26  Tom Tromey  <tom@tromey.com>
6093
6094         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
6095         Update.
6096         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
6097         textlow and texthigh fields.
6098         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
6099         Update.
6100         * mdebugread.c (parse_lines, parse_partial_symbols)
6101         (psymtab_to_symtab_1): Update.
6102         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
6103         Rename fields.  Update comment.  Now private.
6104         <text_low, text_high, set_text_low, set_text_high>: New methods.
6105         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
6106         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
6107         (start_psymtab_common, maintenance_info_psymtabs)
6108         (maintenance_check_psymtabs): Update.
6109         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
6110         texthigh fields.
6111         (scan_xcoff_symtab): Update.
6112
6113 2018-07-26  Tom Tromey  <tromey@redhat.com>
6114
6115         * psympriv.h (struct partial_symbol) <unrelocated_address,
6116         address, set_address>: New methods.
6117         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
6118         (fixup_psymbol_section, relocate_psymtabs): Update.
6119         (print_partial_symbols): Add 'objfile' parameter.  Update.
6120         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
6121         Update.
6122
6123 2018-07-26  Tom Tromey  <tom@tromey.com>
6124
6125         * dwarf-index-write.c (write_psymbols, debug_names::insert)
6126         (debug_names::write_psymbols): Update.
6127         * psympriv.h (struct partial_symbol): Derive from
6128         general_symbol_info.
6129         <obj_section>: New method.
6130         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
6131         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
6132         (find_pc_sect_psymbol, fixup_psymbol_section)
6133         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
6134         (print_partial_symbols, recursively_search_psymtabs)
6135         (compare_psymbols, psymbol_hash, psymbol_compare)
6136         (add_psymbol_to_bcache, maintenance_check_psymtabs)
6137         (psymbol_name_matches, psym_fill_psymbol_map): Update.
6138
6139 2018-07-26  Tom Tromey  <tromey@redhat.com>
6140
6141         * dbxread.c (end_psymtab): Remove dead code.
6142
6143 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
6144
6145         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
6146         DWARF unwinders are disabled.
6147         * dwarf2-frame.c: Add dwarf2read.h include.
6148         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
6149         disabled.
6150         (dwarf2_frame_unwinders_enabled_p): Define.
6151         (show_dwarf_unwinders_enabled_p): New function.
6152         (_initialize_dwarf2_frame): Register switch to control DWARF
6153         unwinder use.
6154         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
6155         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
6156         (show_dwarf_cmdlist): Remove static keyword.
6157         * dwarf2read.h (set_dwarf_cmdlist): Declare.
6158         (show_dwarf_cmdlist): Declare.
6159         * NEWS: Document new feature.
6160
6161 2018-07-26  Tom de Vries  <tdevries@suse.de>
6162
6163         PR breakpoints/23366
6164         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
6165
6166 2018-07-26  Tom de Vries  <tdevries@suse.de>
6167
6168         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
6169         DW_AT_count can't be translated to a dynamic prop.
6170
6171 2018-07-25  Tom de Vries  <tdevries@suse.de>
6172
6173         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
6174         try/catch.
6175
6176 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
6177
6178         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
6179
6180 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
6181
6182         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
6183
6184 2018-07-24  Keith Seitz  <keiths@redhat.comt
6185
6186         PR symtab/23010
6187         * dwarf2read.c (dw2_add_symbol_to_list): New function.
6188         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
6189         instead of add_symbol_to_list.
6190         (read_file_scope): Call prepare_one_comp_unit before reading
6191         any other DIEs.
6192
6193 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
6194
6195         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
6196
6197 2018-07-24  Tom Tromey  <tom@tromey.com>
6198
6199         * utils.c (malloc, realloc, free): Don't declare.
6200         * configure, config.in: Rebuild.
6201         * configure.ac: Don't check for declarations of free, malloc, or
6202         realloc.
6203
6204 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
6205
6206         * aarch64-linux-nat.c
6207         (aarch64_linux_nat_target::stopped_data_address): Remove unused
6208         variable.
6209         * arm-linux-nat.c (fetch_regs): Likewise.
6210         (store_regs): Likewise.
6211         (fetch_vfp_regs): Likewise.
6212         (store_vfp_regs): Likewise.
6213         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
6214         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
6215         (arm_linux_nat_target::insert_watchpoint): Likewise.
6216         (arm_linux_nat_target::remove_watchpoint): Likewise.
6217         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
6218         Likewise.
6219         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
6220         Likewise.
6221         * ppc-linux-nat.c (fetch_register): Likewise.
6222         (fetch_all_gp_regs): Likewise.
6223         (fetch_ppc_registers): Likewise.
6224         (store_all_gp_regs): Likewise.
6225         (store_ppc_registers): Likewise.
6226         (hwdebug_insert_point): Likewise.
6227         (can_use_watchpoint_cond_accel): Likewise.
6228         * remote-sim.c (gdb_os_write_stdout): Likewise.
6229
6230 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
6231             Tom Tromey  <tom@tromey.com>
6232
6233         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
6234         test for it.
6235         * configure: Rebuild.
6236
6237 2018-07-22  Tom Tromey  <tom@tromey.com>
6238
6239         * regformats/regdat.sh: Define xmltarget_${name} inside
6240         #ifndef IN_PROCESS_AGENT.
6241
6242 2018-07-22  Tom Tromey  <tom@tromey.com>
6243
6244         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
6245
6246 2018-07-22  Tom Tromey  <tom@tromey.com>
6247
6248         * symfile.c (reread_symbols): Notify iter, not objfile.
6249
6250 2018-07-22  Tom Tromey  <tom@tromey.com>
6251
6252         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
6253         Use arch_ops.
6254         (ravenscar_thread_target::prepare_to_store): Likewise.
6255
6256 2018-07-22  Tom Tromey  <tom@tromey.com>
6257
6258         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
6259         unused variable.  Call value_fetch_lazy when needed.
6260         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
6261         Remove unused variable.  Call value_fetch_lazy when needed.
6262
6263 2018-07-22  Tom Tromey  <tom@tromey.com>
6264
6265         * m32c-tdep.c (mark_dma): Return void.
6266         (make_regs): Remove unused declarations.
6267
6268 2018-07-22  Tom Tromey  <tom@tromey.com>
6269
6270         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
6271         cmdscm_get_valid_command_smob_arg_unsafe for effect.
6272         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
6273         bkscm_get_valid_block_smob_arg_unsafe for effect.
6274
6275 2018-07-22  Tom Tromey  <tom@tromey.com>
6276
6277         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
6278         value_type.
6279
6280 2018-07-22  Tom Tromey  <tom@tromey.com>
6281
6282         * windows-nat.c (saved_context): Conditionally define.
6283         * remote.c (remote_target::remote_btrace_maybe_reopen):
6284         Conditionally declare "warned".
6285         * inflow.c (sigquit_ours): Conditionally define.
6286         (new_tty): Move "tty" declaration inside #if.
6287         * guile/guile.c (guile_datadir): Conditionally define.
6288         * charset.c (set_be_le_names): Move some declarations inside #if.
6289         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
6290         #if.
6291         (parse_xml_btrace_conf): Likewise.
6292
6293 2018-07-22  Tom Tromey  <tom@tromey.com>
6294
6295         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
6296
6297 2018-07-22  Tom Tromey  <tom@tromey.com>
6298
6299         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
6300         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
6301         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
6302         * buildsym-legacy.c (get_macro_table): Remove unused variable.
6303         * stack.c (frame_apply_level_command): Remove unused variable.
6304         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
6305         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
6306         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
6307         unused variable.
6308         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
6309         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
6310         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
6311         variable.
6312         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
6313         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
6314         variable.
6315         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
6316         Remove unused variable.
6317         * cli/cli-script.c (recurse_read_control_structure): Remove unused
6318         variable.
6319         * common/tdesc.c (print_xml_feature::visit): Remove unused
6320         variable.
6321         * compile/compile-object-load.c (store_regs): Remove unused
6322         variables.
6323         * complaints.c (clear_complaints): Remove unused variable.
6324         * corelow.c (core_target_open): Remove unused variable.
6325         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
6326         variable.
6327         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
6328         variable.
6329         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
6330         variable.
6331         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
6332         variable.
6333         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
6334         variable.
6335         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
6336         variable.
6337         * ia64-tdep.c (examine_prologue): Remove unused variable.
6338         * infcall.c (run_inferior_call): Remove unused variable.
6339         * inferior.c (exit_inferior): Remove unused variable.
6340         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
6341         * linespec.c (decode_line_2): Remove unused variable.
6342         * linux-nat.c (super_close): Remove.
6343         * linux-tdep.c (linux_info_proc): Remove unused variable.
6344         * mi/mi-main.c (mi_execute_command): Remove unused variable.
6345         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
6346         Remove unused variable.
6347         * parse.c (find_minsym_type_and_address): Remove unused variable.
6348         * printcmd.c (info_symbol_command, printf_floating): Remove unused
6349         variable.
6350         * python/py-breakpoint.c (bppy_set_commands): Remove unused
6351         variable.
6352         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
6353         variables.
6354         * record-btrace.c (record_btrace_target::store_registers): Remove
6355         unused variable.
6356         (cmd_show_record_btrace_cpu): Remove unused variable.
6357         * riscv-tdep.c (riscv_register_reggroup_p)
6358         (riscv_push_dummy_call, riscv_return_value): Remove unused
6359         variable.
6360         * rust-exp.y (literal): Remove unused variable.
6361         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
6362         unused variable.
6363         <STRUCTOP_ANONYMOUS>: Likewise.
6364         * s390-linux-tdep.c (s390_linux_init_abi_31)
6365         (s390_linux_init_abi_64): Remove unused variable.
6366         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
6367         (file_select_thread, net_windows_open, _initialize_ser_windows):
6368         Remove unused variables.
6369         * symtab.c (find_pc_sect_line): Remove unused variable.
6370         * target-memory.c (compute_garbled_blocks): Remove unused
6371         variable.
6372         (target_write_memory_blocks): Remove unused variable.
6373         * target.c (target_stack::unpush): Remove unused variables.
6374         * tracepoint.c (start_tracing, all_tracepoint_actions)
6375         (merge_uploaded_trace_state_variables)
6376         (print_one_static_tracepoint_marker): Remove unused variable.
6377         * unittests/basic_string_view/element_access/char/1.cc (test01):
6378         Remove unused variable.
6379         * windows-nat.c (windows_continue, windows_add_all_dlls)
6380         (do_initial_windows_stuff, windows_nat_target::create_inferior):
6381         Remove unused variables.
6382
6383 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
6384
6385         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
6386         attr_profile in HAVE_ELF.
6387         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
6388         HAVE_ELF.
6389
6390 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
6391
6392         * frame.c (frame_register_unwind): Change parameter name.
6393         (frame_unwind_register): Likewise.
6394         (frame_unwind_register_value): Likewise.
6395         (frame_unwind_register_signed): Likewise.
6396         (frame_unwind_register_unsigned): Likewise.
6397         * frame.h (frame_register_unwind): Likewise.
6398         (frame_unwind_register): Likewise.
6399         (frame_unwind_register_value): Likewise.
6400         (frame_unwind_register_signed): Likewise.
6401         (frame_unwind_register_unsigned): Likewise.
6402         (frame_unwind_arch): Likewise.
6403
6404 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
6405
6406         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
6407         ISA maintenance.
6408
6409 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
6410
6411         * mips-linux-nat.c (mips_linux_nat_target::read_description):
6412         Call `get_ptrace_pid' rather than extracting the ptrace PID by
6413         hand.
6414
6415 2018-07-20  Keith Seitz  <keiths@redhat.com>
6416
6417         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
6418         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
6419         m_compunit_symtab, m_language>: Add "m_" prefix.
6420         Update all uses.
6421         * buildsym.c: Update all uses.
6422
6423 2018-07-20  Tom Tromey  <tom@tromey.com>
6424
6425         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
6426         * buildsym.h (record_line_ftype): Remove typedef.
6427
6428 2018-07-20  Tom Tromey  <tom@tromey.com>
6429
6430         * buildsym-legacy.h (augment_type_symtab): Don't declare.
6431         (end_expandable_symtab): Likewise.
6432         (end_symtab_get_static_block): Likewise.
6433         (end_symtab_from_static_block): Likewise.
6434         * buildsym-legacy.c (augment_type_symtab): Remove.
6435         (end_expandable_symtab): Remove.
6436         (end_symtab_get_static_block): Remove.
6437         (end_symtab_from_static_block): Remove.
6438
6439 2018-07-20  Tom Tromey  <tom@tromey.com>
6440
6441         * dwarf2read.c: Include buildsym.h.
6442         (struct dwarf2_cu) <builder>: New method.
6443         (fixup_go_packaging): Update.
6444         (process_full_comp_unit, process_full_type_unit): Update.  Don't
6445         use scoped_free_pendings.
6446         (using_directives): Add "cu" parameter, remove "language".
6447         (read_import_statement, setup_type_unit_groups, )
6448         (read_func_scope, read_lexical_block_scope)
6449         (dwarf2_record_block_ranges, read_namespace): Update.
6450         (lnp_state_machine::lnp_state_machine): Add cu parameter.
6451         (lnp_state_machine::handle_end_sequence): Update.
6452         (class lnp_state_machine) <m_cu>: New member.
6453         <m_record_line_callback>: Remove.
6454         <m_currently_recording_lines>: New member.
6455         (lnp_state_machine::handle_set_file): Update.
6456         (noop_record_line): Remove.
6457         (dwarf_record_line_p): Add cu parameter.
6458         (dwarf_record_line_1, dwarf_finish_line): Likewise.
6459         (lnp_state_machine::record_line)
6460         (lnp_state_machine::lnp_state_machine)
6461         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
6462         (dwarf_decode_lines): Update.
6463         (dwarf2_start_subfile): Add cu parameter.
6464         (dwarf2_start_symtab, new_symbol): Update.
6465         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
6466         Remove dwarf2_per_objfile parameter.
6467         (dwarf_decode_macros): Update.
6468
6469 2018-07-20  Tom Tromey  <tom@tromey.com>
6470
6471         * stabsread.c (define_symbol): Update.
6472         * buildsym-legacy.h (get_buildsym_compunit): Declare.
6473         * dwarf2read.c (new_symbol): Update.
6474         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
6475         * cp-namespace.c: Include buildsym.h.
6476         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
6477         * buildsym-legacy.c (get_buildsym_compunit): New function.
6478
6479 2018-07-20  Tom Tromey  <tom@tromey.com>
6480
6481         * xcoffread.c: Include buildsym-legacy.h.
6482         * windows-nat.c: Include buildsym-legacy.h.
6483         * stabsread.c: Include buildsym-legacy.h.
6484         * mdebugread.c: Include buildsym-legacy.h.
6485         * buildsym-legacy.h: New file.
6486         * buildsym-legacy.c: New file, from buildsym.c.
6487         * go32-nat.c: Include buildsym-legacy.h.
6488         * dwarf2read.c: Include buildsym-legacy.h.
6489         * dbxread.c: Include buildsym-legacy.h.
6490         * cp-namespace.c: Include buildsym-legacy.h.
6491         * coffread.c: Include buildsym-legacy.h.
6492         * buildsym.h: Move some contents to buildsym-legacy.h.
6493         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
6494         buildsym-legacy.c.
6495         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
6496
6497 2018-07-20  Tom Tromey  <tom@tromey.com>
6498
6499         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
6500         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
6501         (buildsym_compunit::buildsym_compunit)
6502         (buildsym_compunit::~buildsym_compunit)
6503         (buildsym_compunit::get_macro_table): Define.
6504
6505 2018-07-20  Tom Tromey  <tom@tromey.com>
6506
6507         * buildsym.c (reset_symtab_globals): Remove.
6508         (buildsym_compunit::end_symtab_from_static_block): Update.
6509         (buildsym_compunit::augment_type_symtab): Update.
6510         (end_symtab_from_static_block): Call free_buildsym_compunit.
6511         (augment_type_symtab, end_symtab, end_expandable_symtab):
6512         Likewise.
6513
6514 2018-07-20  Tom Tromey  <tom@tromey.com>
6515
6516         * arch-utils.c: Do not include buildsym.h.
6517         * mipsread.c: Do not include buildsym.h.
6518         * machoread.c: Do not include buildsym.h.
6519         * elfread.c: Do not include buildsym.h.
6520
6521 2018-07-20  Tom Tromey  <tom@tromey.com>
6522
6523         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
6524         initialization.
6525         (buildsym_compunit): Add new constructor.
6526         (struct buildsym_compunit) <get_last_source_file, finish_block,
6527         record_block_range, start_subfile, patch_subfile_names,
6528         push_subfile, pop_subfile, record_line, get_compunit_symtab,
6529         set_last_source_start_addr, get_last_source_start_addr,
6530         get_local_using_directives, set_local_using_directives,
6531         get_global_using_directives, outermost_context_p,
6532         get_current_context_stack, get_context_stack_depth,
6533         get_current_subfile, get_local_symbols, get_file_symbols,
6534         get_global_symbols, record_debugformat, record_producer,
6535         push_context, pop_context, end_symtab_get_static_block,
6536         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
6537         New public methods.
6538         <record_pending_block, finish_block_internal, make_blockvector,
6539         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
6540         private methods.
6541         Update all users.
6542
6543 2018-05-22  Tom Tromey  <tom@tromey.com>
6544
6545         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
6546         parameter.
6547         (finish_block_internal): Update.
6548
6549 2018-07-20  Tom Tromey  <tom@tromey.com>
6550
6551         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
6552         parameter.
6553         (finish_block_internal): Update.
6554
6555 2018-07-20  Tom Tromey  <tom@tromey.com>
6556
6557         * buildsym.h (EXTERN): Don't define or undef.
6558         * buildsym.c (EXTERN): Don't define.
6559
6560 2018-07-20  Tom Tromey  <tom@tromey.com>
6561
6562         * buildsym.c: Remove TODO comment.
6563
6564 2018-07-20  Tom Tromey  <tom@tromey.com>
6565
6566         * coffread.c (coff_symtab_read): Update.
6567         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
6568         (xcoff_new_init): Update.
6569         * mipsread.c (mipscoff_new_init): Update.
6570         * mdebugread.c (mdebug_build_psymtabs): Update.
6571         * elfread.c (elf_new_init): Update.
6572         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
6573         Update.
6574         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
6575         (coffstab_build_psymtabs, elfstab_build_psymtabs)
6576         (stabsect_build_psymtabs): Update.
6577         * buildsym.h (buildsym_init): Don't declare.
6578         * buildsym.c: Update comment.
6579         (prepare_for_building): Remove.
6580         (start_symtab, restart_symtab): Update.
6581         (reset_symtab_globals): Update comment.
6582         (buildsym_init): Remove.
6583
6584 2018-07-20  Tom Tromey  <tom@tromey.com>
6585
6586         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
6587         * stabsread.c (patch_block_stabs, define_symbol, read_type)
6588         (read_enum_type, common_block_start, common_block_end)
6589         (cleanup_undefined_types_1, finish_global_stabs): Update.
6590         * mdebugread.c (psymtab_to_symtab_1): Update.
6591         * dwarf2read.c (fixup_go_packaging, read_func_scope)
6592         (read_lexical_block_scope, new_symbol): Update.
6593         * dbxread.c (process_one_symbol): Update.
6594         * coffread.c (coff_symtab_read, process_coff_symbol)
6595         (coff_read_enum_type): Update.
6596         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
6597         declare.
6598         (get_local_symbols, get_file_symbols, get_global_symbols): New
6599         functions.
6600         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
6601         m_global_symbols.
6602         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
6603         (~scoped_free_pendings): Update.
6604         (finish_block, prepare_for_building, reset_symtab_globals)
6605         (end_symtab_get_static_block, end_symtab_with_blockvector)
6606         (augment_type_symtab, push_context): Update.
6607         (get_local_symbols, get_file_symbols, get_global_symbols): New
6608         functions.
6609         (buildsym_init): Update.
6610
6611 2018-07-20  Tom Tromey  <tom@tromey.com>
6612
6613         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
6614         (process_full_type_unit): Likewise.
6615         (dwarf2_start_symtab): Set list_in_scope.
6616
6617 2018-07-20  Tom Tromey  <tom@tromey.com>
6618
6619         * dwarf2read.c (process_psymtab_comp_unit_reader)
6620         (build_type_psymtabs_reader): Do not set list_in_scope.
6621
6622 2018-07-20  Tom Tromey  <tom@tromey.com>
6623
6624         * buildsym.c (free_pendings): Remove.
6625         (add_symbol_to_list, scoped_free_pendings)
6626         (finish_block_internal, buildsym_init): Update.
6627
6628 2018-07-20  Tom Tromey  <tom@tromey.com>
6629
6630         * xcoffread.c (read_xcoff_symtab): Update.
6631         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
6632         Update.
6633         * dbxread.c (process_one_symbol): Update.
6634         * coffread.c (coff_symtab_read): Update.
6635         * buildsym.h (finish_block): Update.
6636         * buildsym.c (finish_block): Remove "listhead" argument.
6637         (end_symtab_get_static_block): Update.
6638
6639 2018-07-20  Tom Tromey  <tom@tromey.com>
6640
6641         * buildsym.h (class scoped_free_pendings): Remove constructor.
6642         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
6643         method.
6644         <m_pending_block_obstack, m_pending_blocks>: New members.
6645         (pending_block_obstack, pending_blocks): Remove.
6646         (scoped_free_pendings::scoped_free_pendings): Default.
6647         (~scoped_free_pendings): Update.
6648         (free_pending_blocks): Remove.
6649         (finish_block_internal, record_pending_block, make_blockvector)
6650         (end_symtab_get_static_block, augment_type_symtab, push_context)
6651         (buildsym_init): Update.
6652
6653 2018-07-20  Tom Tromey  <tom@tromey.com>
6654
6655         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
6656         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
6657         members.
6658         (pending_addrmap, pending_addrmap_obstack)
6659         (pending_addrmap_interesting): Remove.
6660         (scoped_free_pendings, record_block_range, make_blockvector)
6661         (prepare_for_building, reset_symtab_globals, buildsym_init):
6662         Update.
6663
6664 2018-07-20  Tom Tromey  <tom@tromey.com>
6665
6666         * xcoffread.c (process_linenos): Update.
6667         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
6668         * mdebugread.c (psymtab_to_symtab_1): Update.
6669         * dwarf2read.c (setup_type_unit_groups)
6670         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
6671         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
6672         * dbxread.c (process_one_symbol): Update.
6673         * coffread.c (coff_symtab_read, enter_linenos)
6674         (process_coff_symbol): Update.
6675         * buildsym.h (current_subfile): Don't declare.
6676         (get_current_subfile): Declare.
6677         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
6678         member.
6679         (start_subfile, free_buildsym_compunit, push_subfile)
6680         (prepare_for_building, start_symtab): Update.
6681         (get_current_subfile): New function.
6682
6683 2018-07-20  Tom Tromey  <tom@tromey.com>
6684
6685         * coffread.c (coff_symtab_read): Update.
6686         * xcoffread.c (read_xcoff_symtab): Update.
6687         * dwarf2read.c (new_symbol): Update.
6688         (read_func_scope, read_lexical_block_scope): Update.
6689         * dbxread.c (process_one_symbol): Update.
6690         * buildsym.h (context_stack, context_stack_depth): Don't declare.
6691         (outermost_context_p): Remove macro.
6692         (outermost_context_p, get_current_context_stack)
6693         (get_context_stack_depth): Declare.
6694         (pop_context): Return struct context_stack.
6695         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
6696         member.
6697         (context_stack_size): Remove.
6698         (INITIAL_CONTEXT_STACK_SIZE): Remove.
6699         (prepare_for_building, end_symtab_get_static_block)
6700         (augment_type_symtab, push_context): Update.
6701         (pop_context): Return struct context_stack.
6702         (outermost_context_p, get_current_context_stack)
6703         (get_context_stack_depth): New functions.
6704         (buildsym_init): Update.
6705
6706 2018-07-20  Tom Tromey  <tom@tromey.com>
6707
6708         * rust-exp.y: Now a pure parser.  Update all rules.
6709         (%union): Move earlier.
6710         (current_parser, work_obstack): Remove globals.
6711         (rust_parser, ~rust_parser): Update.
6712         (class rust_parser) <copy_name, concat3, crate_name, super_name,
6713         lex_character, lex_number, lex_string, lex_identifier,
6714         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
6715         convert_name, convert_params_to_expression,
6716         convert_ast_to_expression, ast_basic_type, ast_operation,
6717         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
6718         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
6719         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
6720         ast_array_type, ast_slice_type, ast_reference_type,
6721         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
6722         (rust_parse): Update.
6723         (rustyyerror, rustyylex): Add parser parameter.
6724         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
6725         (rust_lex_stringish_test, rust_lex_test_sequence)
6726         (rust_lex_test_trailing_dot, rust_lex_test_completion)
6727         (rust_lex_test_push_back, rust_lex_tests): Update.
6728
6729 2018-07-19  Pedro Alves  <palves@redhat.com>
6730
6731         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
6732         gdb::unique_xmalloc_ptr.
6733         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
6734         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
6735         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
6736         copy-initialization.
6737         * guile/scm-pretty-print.c (ppscm_print_children): Use
6738         gdb::unique_xmalloc_ptr instead of cleanups.
6739         (gdbscm_apply_val_pretty_printer): Remove cleanups.
6740         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
6741         gdb::unique_xmalloc_ptr.
6742         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6743         Adjust to use gdb::unique_xmalloc_ptr.
6744         * guile/scm-utils.c (extract_arg): Adjust.
6745         * guile/scm-value.c (gdbscm_value_field): Adjust to use
6746         gdb::unique_xmalloc_ptr instead of a cleanup.
6747
6748 2018-07-19  Tom Tromey  <tom@tromey.com>
6749
6750         * utils.c (do_value_free_to_mark)
6751         (make_cleanup_value_free_to_mark): Remove.
6752         * utils.h (make_cleanup_value_free_to_mark): Remove.
6753
6754 2018-07-19  Pedro Alves  <palves@redhat.com>
6755
6756         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
6757         forwarding reference.
6758
6759 2018-07-18  Pedro Alves  <palves@redhat.com>
6760
6761         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
6762         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
6763         cleanup.
6764
6765 2018-07-18  Pedro Alves  <palves@redhat.com>
6766
6767         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
6768         exceptions.
6769         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
6770         (gdbscm_wrap): New.
6771         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
6772         directly instead of a cleanup.
6773         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
6774         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
6775         (vlscm_binop_gdbthrow): New, factored out from ...
6776         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
6777         (vlscm_rich_compare): Use gdbscm_wrap.
6778         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
6779         instead of a cleanup.
6780         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
6781         cleanup.
6782         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6783         Use xfree directly instead of a cleanup.
6784         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
6785         Adjust to use gdbscm_wrap and scoped_value_mark.
6786         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
6787         (gdbscm_value_address, gdbscm_value_dereference)
6788         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
6789         scoped_value_mark.
6790         (gdbscm_value_dynamic_type): Use scoped_value_mark.
6791         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
6792         scoped_value_mark.
6793         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
6794         gdbscm_wrap and scoped_value_mark.
6795         (gdbscm_value_to_string): Use xfree directly instead of a
6796         cleanup.  Move 'buffer' unique_ptr to TRY scope.
6797         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
6798         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
6799         scoped_value_mark.
6800         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
6801         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
6802         scoped_value_mark.
6803         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
6804         gdbscm_wrap.
6805
6806 2018-07-18  Tom de Vries  <tdevries@suse.de>
6807
6808         * findvar.c (default_read_var_value): Also resolve dynamic type for
6809         LOC_OPTIMIZED_OUT vars.
6810
6811 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
6812
6813         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
6814         decoding.
6815
6816 2018-07-17  Tom Tromey  <tom@tromey.com>
6817
6818         * guile/scm-param.c (pascm_set_func, pascm_show_func)
6819         (compute_enum_list, pascm_set_param_value_x)
6820         (gdbscm_parameter_value): Update.
6821         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
6822         (gdbscm_scm_to_host_string): Update.
6823         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
6824         Update.
6825         * guile/scm-cmd.c (cmdscm_add_completion): Update.
6826         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
6827         * guile/scm-string.c (gdbscm_scm_to_string): Return
6828         unique_xmalloc_ptr.
6829         (gdbscm_scm_to_host_string): Likewise.
6830
6831 2018-07-17  Tom Tromey  <tom@tromey.com>
6832
6833         * guile/guile.c (gdbscm_eval_from_control_command): Update.
6834         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
6835         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
6836         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
6837         unique_xmalloc_ptr.
6838
6839 2018-07-17  Tom Tromey  <tom@tromey.com>
6840
6841         * guile/scm-param.c (pascm_signal_setshow_error): Update.
6842         * guile/guile-internal.h (gdbscm_exception_message_to_string):
6843         Update.
6844         * guile/scm-cmd.c (cmdscm_function): Update.
6845         * guile/scm-pretty-print.c
6846         (ppscm_print_exception_unless_memory_error): Update.
6847         * guile/scm-exception.c (gdbscm_exception_message_to_string):
6848         Return unique_xmalloc_ptr.
6849
6850 2018-07-17  Tom Tromey  <tom@tromey.com>
6851
6852         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
6853         Use string_printf.
6854
6855 2018-07-17  Jim Wilson  <jimw@sifive.com>
6856
6857         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
6858         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
6859         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
6860         unecessary braces after EF_RISCV_RVC test.  Delete call to
6861         set_gdbarch_decr_pc_after_break.
6862
6863         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
6864         RISCV_LAST_FP_REGNUM + 1.
6865         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
6866
6867 2018-07-17  Tom Tromey  <tom@tromey.com>
6868
6869         * configure.ac: Remove --disable-gdbcli.
6870         * configure: Rebuild.
6871         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
6872         (SUBDIR_CLI_CFLAGS): Remove.
6873         (SFILES): Use SUBDIR_CLI_SRCS.
6874         (COMMON_OBS): Use SUBDIR_CLI_OBS.
6875
6876 2018-07-17  Tom Tromey  <tom@tromey.com>
6877
6878         PR gdb/18624:
6879         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
6880
6881 2018-07-16  Jim Wilson  <jimw@sifive.com>
6882
6883         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
6884
6885 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6886
6887         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
6888         variable.
6889         (libunwind_frame_sniffer): Likewise.
6890         (libunwind_frame_prev_register): Likewise.
6891         (libunwind_sigtramp_frame_sniffer): Likewise.
6892         * ia64-tdep.c (ia64_access_reg): Likewise.
6893         (ia64_access_rse_reg): Likewise.
6894         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
6895         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
6896
6897 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6898
6899         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
6900
6901 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6902
6903         * remote-sim.c (gdbsim_target::close,
6904         gdbsim_target::mourn_inferior): Remove unused variables.
6905
6906 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
6907
6908         * ia64-tdep.c (ktab_buf): New global.
6909         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
6910         (get_kernel_table): Adjust.
6911
6912 2018-07-16  Tom Tromey  <tom@tromey.com>
6913
6914         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
6915         * dwarf2read.c (using_directives, new_symbol): Use
6916         outermost_context_p.
6917         * dbxread.c (process_one_symbol): Use outermost_context_p.
6918         * coffread.c (coff_symtab_read): Use outermost_context_p.
6919
6920 2018-07-16  Tom Tromey  <tom@tromey.com>
6921
6922         * dwarf2read.c (using_directives, read_func_scope)
6923         (read_lexical_block_scope): Update.
6924         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
6925         * buildsym.h (local_using_directives, global_using_directives):
6926         Don't declare.
6927         (get_local_using_directives, set_local_using_directives)
6928         (get_global_using_directives): Declare.
6929         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
6930         m_global_using_directives>: New members.
6931         (finish_block_internal, prepare_for_building)
6932         (reset_symtab_globals, end_symtab_get_static_block)
6933         (push_context): Update.
6934         (get_local_using_directives, set_local_using_directives)
6935         (get_global_using_directives): New functions.
6936         (buildsym_init): Update.
6937
6938 2018-07-16  Tom Tromey  <tom@tromey.com>
6939
6940         * xcoffread.c (xcoff_initial_scan): Don't call
6941         free_pending_blocks.
6942         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
6943         * buildsym.h (class scoped_free_pendings): Add constructor.
6944         (free_pending_blocks): Don't declare.
6945         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
6946         (free_pending_blocks): Now static.
6947
6948 2018-07-16  Tom Tromey  <tom@tromey.com>
6949
6950         * buildsym.h (push_subfile, pop_subfile): Update declarations.
6951         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
6952         member.
6953         (struct subfile_stack): Remove.
6954         (subfile_stack): Remove.
6955         (push_subfile, pop_subfile, buildsym_init): Update.
6956
6957 2018-07-16  Tom Tromey  <tom@tromey.com>
6958
6959         * buildsym.c (push_subfile): Use gdb_assert.
6960         (pop_subfile): Use gdb_assert.
6961
6962 2018-07-16  Tom Tromey  <tom@tromey.com>
6963
6964         * buildsym.h (merge_symbol_lists): Remove.
6965         * buildsym.c (merge_symbol_lists): Remove.
6966
6967 2018-07-16  Tom Tromey  <tom@tromey.com>
6968
6969         * stabsread.c (scan_file_globals): Update comment.
6970         * stabsread.h (scan_file_globals): Move from buildsym.h.
6971         * buildsym.h (scan_file_globals): Move to stabsread.h.
6972
6973 2018-07-16  Tom Tromey  <tom@tromey.com>
6974
6975         * xcoffread.c (xcoff_new_init): Update.
6976         * mipsread.c (mipscoff_new_init): Update.
6977         * mdebugread.c (mdebug_build_psymtabs): Update.
6978         * elfread.c (elf_new_init): Update.
6979         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
6980         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
6981         * buildsym.h (buildsym_new_init): Don't declare.
6982         * buildsym.c (buildsym_new_init): Remove.
6983
6984 2018-07-16  Tom Tromey  <tom@tromey.com>
6985
6986         * stabsread.h (within_function): Move from buildsym.h.
6987         * stabsread.c (start_stabs): Clear within_function.
6988         * coffread.c (coff_start_symtab): Clear within_function.
6989         * buildsym.h (within_function): Move to stabsread.h.
6990         * buildsym.c (prepare_for_building): Update.
6991
6992 2018-07-16  Tom Tromey  <tom@tromey.com>
6993
6994         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
6995         * dwarf2read.c (dwarf2_start_symtab): Don't set
6996         processing_gcc_compilation.
6997         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
6998
6999 2018-07-16  Tom Tromey  <tom@tromey.com>
7000
7001         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
7002         (next_symbol_text_func): Move from buildsym.h.
7003         * stabsread.c (hashname): Move from buildsym.c.
7004         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
7005         (next_symbol_text_func, hashname): Move to stabsread.h.
7006         * buildsym.c: Don't include bcache.h
7007         (hashname): Move to stasbread.c.
7008
7009 2018-07-16  Tom Tromey  <tom@tromey.com>
7010
7011         * buildsym.h (context_stack_size): Don't declare.
7012         * buildsym.c (context_stack_size): New global.
7013
7014 2018-07-16  Tom Tromey  <tom@tromey.com>
7015
7016         * dbxread.c (processing_acc_compilation): New global.
7017         * buildsym.h (processing_acc_compilation): Don't declare.
7018
7019 2018-07-16  Tom Tromey  <tom@tromey.com>
7020
7021         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
7022         * dbxread.c (read_ofile_symtab): Update.
7023         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
7024         * buildsym.h (last_source_start_addr): Remove.
7025         (set_last_source_start_addr, get_last_source_start_addr):
7026         Declare.
7027         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
7028         parameter.
7029         (struct buildsym_compunit) <m_last_source_start_addr>: New
7030         member.
7031         (prepare_for_building): Remove start_addr parameter.
7032         (start_symtab, restart_symtab, end_symtab_get_static_block)
7033         (end_symtab_with_blockvector): Update.
7034         (set_last_source_start_addr, get_last_source_start_addr): New
7035         functions.
7036
7037 2018-07-16  Tom Tromey  <tom@tromey.com>
7038
7039         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
7040         member.
7041         (have_line_numbers): Remove.
7042         (record_line, prepare_for_building, end_symtab_get_static_block)
7043         (augment_type_symtab): Update.
7044
7045 2018-07-16  Tom Tromey  <tom@tromey.com>
7046
7047         * buildsym.c (~buildsym_compunit): Free the macro table.
7048         (struct buildsym_compunit) <get_macro_table, release_macros>: New
7049         methods.
7050         <m_pending_macros>: New member.
7051         (pending_macros): Remove.
7052         (~scoped_free_pendings, get_macro_table, prepare_for_building)
7053         (reset_symtab_globals, end_symtab_get_static_block)
7054         (end_symtab_with_blockvector, augment_type_symtab)
7055         (buildsym_init): Update.
7056
7057 2018-07-16  Tom Tromey  <tom@tromey.com>
7058
7059         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
7060         parameter.
7061         (buildsym_compunit::set_last_source_file): New method.
7062         <m_last_source_file>: New member.
7063         (prepare_for_building): Remove "name" parameter.
7064         (start_symtab, restart_symtab, reset_symtab_globals): Update.
7065         (last_source_file): Remove.
7066         (set_last_source_file, get_last_source_file): Update.
7067
7068 2018-07-16  Tom Tromey  <tom@tromey.com>
7069
7070         * buildsym.c (prepare_for_building): Add assert.
7071
7072 2018-07-16  Tom Tromey  <tom@tromey.com>
7073
7074         * buildsym.c (~buildsym_compunit): Update.
7075         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
7076         (start_subfile, patch_subfile_names)
7077         (end_symtab_with_blockvector): Update.
7078
7079 2018-07-16  Tom Tromey  <tom@tromey.com>
7080
7081         * buildsym.c (struct buildsym_compunit): Add constructor,
7082         destructor, initializers.
7083         (start_buildsym_compunit): Remove.
7084         (free_buildsym_compunit): Use "delete".
7085         (start_symtab, restart_symtab): Use "new".
7086
7087 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
7088
7089         * symfile.c (set_objfile_default_section_offset): Remove struct
7090         keyword.
7091
7092 2018-07-14  Stafford Horne  <shorne@gmail.com>
7093
7094         * (Responsible Maintainers): Add myself as or1k maintainer.
7095
7096 2018-07-13  Tom Tromey  <tom@tromey.com>
7097
7098         * symfile.c (set_objfile_default_section_offset): Use extra braces
7099         around initializer.
7100
7101 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
7102
7103         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
7104         non-branching basr.
7105
7106 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7107
7108         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
7109         unittests/cli-utils-selftests.c
7110         * unittests/cli-utils-selftests.c: New file.
7111
7112 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7113
7114         * NEWS: Mention new commands. Mention change to 'thread apply'.
7115
7116 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7117
7118         * thread.c (thr_try_catch_cmd): New function.
7119         (thread_apply_all_command): Handle qcs flags.
7120         (thread_apply_command): Handle qcs flags.
7121         (taas_command): New function.
7122         (tfaas_command): New function.
7123         (_initialize_thread): Update to setup the new commands 'taas
7124         and 'tfaas'. Change doc string for 'thread apply'.
7125
7126 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7127
7128         * stack.c: (trailing_outermost_frame): New function, mostly
7129         extracted from backtrace_command_1.
7130         (leading_innermost_frame): New function.
7131         (backtrace_command_1): Update to call trailing_outermost_frame.
7132         (frame_apply_command_count): New function.
7133         (frame_apply_level_command): New function.
7134         (frame_apply_all_command): New function.
7135         (frame_apply_command): New function.
7136         (faas_command): New function.
7137         (frame_cmd_list): New variable.
7138         (_initialize_stack): Update to setup the new commands 'frame apply'
7139         and 'faas'.
7140
7141 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7142
7143         * cli-utils.c (number_or_range_parser::get_number): Only handle
7144         numbers or convenience var as numbers.
7145         (parse_flags): New function.
7146         (parse_flags_qcs): New function.
7147         (number_or_range_parser::finished): Ensure parsing end is detected
7148         before end of string.
7149         * cli-utils.h (parse_flags): New function.
7150         (parse_flags_qcs): New function.
7151         (number_or_range_parser): Remove m_finished bool.
7152         (number_or_range_parser::skip_range): Set m_in_range to false.
7153
7154 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
7155
7156         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
7157         on Windows.
7158
7159 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
7160             Jan Kratochvil  <jan.kratochvil@redhat.com>
7161             Paul Fertser  <fercerpav@gmail.com>
7162             Tsutomu Seki  <sekiriki@gmail.com>
7163             Pedro Alves  <palves@redhat.com>
7164
7165         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
7166         'unittests/parse-connection-spec-selftests.c'.
7167         (COMMON_SFILES): Add 'common/netstuff.c'.
7168         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
7169         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
7170         * common/netstuff.c: New file.
7171         * common/netstuff.h: New file.
7172         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
7173         (wait_for_connect): Update comment.  New parameter
7174         'gdb::optional<int> sock' instead of 'struct serial *scb'.
7175         Use 'sock' directly instead of 'scb->fd'.
7176         (try_connect): New function, with code from 'net_open'.
7177         (net_open): Rewrite main loop to deal with multiple
7178         sockets/addresses.  Handle IPv6-style hostnames; implement
7179         support for IPv6 connections.
7180         * unittests/parse-connection-spec-selftests.c: New file.
7181
7182 2018-07-11  Pedro Alves  <palves@redhat.com>
7183
7184         PR gdb/23377
7185         * remote.c (remote_target::remote_detach_pid): Call
7186         set_current_process.
7187
7188 2018-07-11  Pedro Alves  <palves@redhat.com>
7189
7190         * h8300-tdep.c (h8300_gdbarch_init): Remove
7191         set_gdbarch_ecoff_reg_to_regnum calls.
7192
7193 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
7194
7195         PR c++/23373
7196         * c-typeprint.c (c_type_print_base_struct_union): Don't print
7197         offsets/sizes for static members of a class/struct.
7198
7199 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
7200
7201         * target-descriptions.c (tdesc_register_bitsize): Rename.
7202         * target-descriptions.h (tdesc_register_bitsize): Likewise.
7203         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
7204         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
7205
7206 2018-07-10  Tom Tromey  <tom@tromey.com>
7207
7208         * breakpoint.c (moribund_locations): Now static and a
7209         std::vector.
7210         (breakpoint_init_inferior, moribund_breakpoint_here_p)
7211         (build_bpstat_chain, update_global_location_list)
7212         (breakpoint_retire_moribund): Update.
7213         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
7214         VEC.
7215
7216 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
7217
7218         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
7219         (riscv_register_reggroup_p): Use new function, remove unneeded
7220         parenthesis.
7221         (riscv_push_dummy_call): Extend assert to compare against xlen or
7222         flen based on register type.
7223
7224 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
7225
7226         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
7227
7228 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
7229
7230         * remote.c (show_hardware_watchpoint_limit): New function.
7231         (show_hardware_watchpoint_length_limit): New function.
7232         (show_hardware_breakpoint_limit): New function.
7233         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
7234         where appropriate, update help text.
7235
7236 2018-07-09  Tom Tromey  <tom@tromey.com>
7237
7238         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
7239         (CLIBS): Don't mention NAT_CLIBS.
7240
7241 2018-07-09  Tom Tromey  <tom@tromey.com>
7242
7243         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
7244         (LIBGDB_OBS, clean mostlyclean): Update.
7245         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
7246
7247 2018-07-09  Tom Tromey  <tom@tromey.com>
7248
7249         * Makefile.in (%.c: %.y): Use ECHO_YACC.
7250         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
7251         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
7252
7253 2018-07-09  Tom Tromey  <tom@tromey.com>
7254
7255         * Makefile.in (ALLDEPFILES): Remove exec.c.
7256         (COMMON_OBS): Remove exec.o.
7257         (COMMON_SFILES): Add exec.c.
7258
7259 2018-07-09  Tom Tromey  <tom@tromey.com>
7260
7261         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
7262
7263 2018-07-09  Tom Tromey  <tom@tromey.com>
7264
7265         * Makefile.in (clean mostlyclean): Remove stamp-version.
7266         (version.c): Depend on stamp-version.
7267         (stamp-version): New rule, from version.c rule.
7268
7269 2018-07-09  Tom Tromey  <tom@tromey.com>
7270
7271         * Makefile.in (init.c): Depend on stamp-init.
7272         (stamp-init): New rule, from init.c rule.
7273         (clean mostlyclean): Remove stamp-init.
7274
7275 2018-07-09  Tom Tromey  <tom@tromey.com>
7276
7277         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
7278         SUBDIR_GCC_COMPILE_SRCS.
7279
7280 2018-07-09  Tom Tromey  <tom@tromey.com>
7281
7282         * Makefile.in (init.c): Remove some unused sed rules.
7283
7284 2018-07-09  Tom Tromey  <tom@tromey.com>
7285
7286         * Makefile.in (TSOBS): Remove.
7287         (INIT_FILES): Update.
7288         (LIBGDB_OBS): Update.
7289         (COMMON_SFILES): Add inflow.c.
7290         (SFILES): Remove inflow.c.
7291
7292 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
7293
7294         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
7295
7296 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
7297
7298         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
7299         get_saveloc_name, is_signal_frame_name, step_name,
7300         init_remote_name, create_addr_space_name,
7301         destroy_addr_space_name, search_unwind_table_name,
7302         find_dyn_list_name): Constify.
7303
7304 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
7305
7306         * darwin-nat.c (darwin_pthread_kill): New function.
7307         (darwin_resume_thread): Use darwin_pthread_kill.
7308
7309 2018-07-05  Tom de Vries  <tdevries@suse.de>
7310
7311         * macroexp.c (macro_buffer) <operator=>: New member function.
7312
7313 2018-07-04  Tom Tromey  <tom@tromey.com>
7314
7315         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
7316
7317 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
7318
7319         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
7320         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
7321         * maint.c: Likewise.
7322         * top.c: Likewise.
7323
7324 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
7325
7326         * NEWS: Create a new section for the next release branch.
7327         Rename the section of the current branch, now that it has
7328         been cut.
7329
7330 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
7331
7332         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
7333         * version.in: Bump version to 8.2.50.DATE-git.
7334
7335 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
7336             Pedro Alves  <palves@redhat.com>
7337
7338         * linux-nat.c (linux_init_ptrace): Rename to ...
7339         (linux_init_ptrace_procfs): ... this.  Call
7340         linux_proc_init_warnings.
7341         (linux_nat_target::post_attach)
7342         (linux_nat_target::post_startup_inferior): Adjust.
7343         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
7344         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
7345
7346 2018-07-04  Tom de Vries  <tdevries@suse.de>
7347
7348         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
7349         check ...
7350         (read_comp_unit_head): ... here.
7351
7352 2018-07-03  Tom Tromey  <tom@tromey.com>
7353
7354         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
7355         (stop_tracing, tstatus_command)
7356         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
7357         (print_one_static_tracepoint_marker): Update.
7358         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
7359         std::vector.
7360         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
7361         VEC.
7362         (all_tracepoints, static_tracepoints_here): Return std::vector.
7363
7364 2018-07-03  Tom Tromey  <tom@tromey.com>
7365
7366         * common/ptid.c (ptid_equal): Remove.
7367         * common/ptid.h (ptid_equal): Don't declare.
7368         * ada-tasks.c: Update.
7369         * breakpoint.c: Update.
7370         * common/agent.c: Update.
7371         * corelow.c: Update.
7372         * darwin-nat-info.c: Update.
7373         * darwin-nat.c: Update.
7374         * dcache.c: Update.
7375         * dtrace-probe.c: Update.
7376         * dummy-frame.c: Update.
7377         * fbsd-nat.c: Update.
7378         * frame.c: Update.
7379         * gdbthread.h: Update.
7380         * gnu-nat.c: Update.
7381         * go32-nat.c: Update.
7382         * inf-loop.c: Update.
7383         * inf-ptrace.c: Update.
7384         * infcall.c: Update.
7385         * infcmd.c: Update.
7386         * inflow.c: Update.
7387         * infrun.c: Update.
7388         * linux-fork.c: Update.
7389         * linux-nat.c: Update.
7390         * linux-thread-db.c: Update.
7391         * mi/mi-cmd-var.c: Update.
7392         * mi/mi-interp.c: Update.
7393         * mi/mi-main.c: Update.
7394         * nto-procfs.c: Update.
7395         * ppc-linux-tdep.c: Update.
7396         * procfs.c: Update.
7397         * python/py-inferior.c: Update.
7398         * python/py-record-btrace.c: Update.
7399         * python/py-record.c: Update.
7400         * ravenscar-thread.c: Update.
7401         * regcache.c: Update.
7402         * remote-sim.c: Update.
7403         * remote.c: Update.
7404         * sol-thread.c: Update.
7405         * solib.c: Update.
7406         * target.c: Update.
7407         * tui/tui-stack.c: Update.
7408         * varobj.c: Update.
7409         * windows-nat.c: Update.
7410         * windows-tdep.c: Update.
7411
7412 2018-07-03  Tom Tromey  <tom@tromey.com>
7413
7414         * common/ptid.c (ptid_match): Remove.
7415         * common/ptid.h (ptid_match): Don't declare.
7416         * fbsd-nat.c: Update.
7417         * infcmd.c: Update.
7418         * infrun.c: Update.
7419         * linux-nat.c: Update.
7420         * record-btrace.c: Update.
7421         * regcache.c: Update.
7422         * remote.c: Update.
7423
7424 2018-07-03  Tom Tromey  <tom@tromey.com>
7425
7426         * common/ptid.c (ptid_tid_p): Remove.
7427         * common/ptid.h (ptid_tid_p): Don't declare.
7428         * sol-thread.c: Update.
7429
7430 2018-07-03  Tom Tromey  <tom@tromey.com>
7431
7432         * common/ptid.c (ptid_lwp_p): Remove.
7433         * common/ptid.h (ptid_lwp_p): Don't declare.
7434         * fbsd-nat.c: Update.
7435         * linux-nat.c: Update.
7436         * nat/linux-procfs.c: Update.
7437         * nat/x86-linux-dregs.c: Update.
7438         * sol-thread.c: Update.
7439
7440 2018-07-03  Tom Tromey  <tom@tromey.com>
7441
7442         * common/ptid.c (ptid_is_pid): Remove.
7443         * common/ptid.h (ptid_is_pid): Don't declare.
7444         * infrun.c: Update.
7445         * linux-nat.c: Update.
7446         * mi/mi-interp.c: Update.
7447         * remote.c: Update.
7448         * thread.c: Update.
7449
7450 2018-07-03  Tom Tromey  <tom@tromey.com>
7451
7452         * common/ptid.c (ptid_get_tid): Remove.
7453         * common/ptid.h (ptid_get_tid): Don't declare.
7454         * ada-tasks.c: Update.
7455         * aix-thread.c: Update.
7456         * bsd-uthread.c: Update.
7457         * darwin-nat.c: Update.
7458         * fbsd-nat.c: Update.
7459         * i386-darwin-nat.c: Update.
7460         * infrun.c: Update.
7461         * linux-tdep.c: Update.
7462         * nto-procfs.c: Update.
7463         * ppc-ravenscar-thread.c: Update.
7464         * python/py-infthread.c: Update.
7465         * ravenscar-thread.c: Update.
7466         * sol-thread.c: Update.
7467         * sparc-ravenscar-thread.c: Update.
7468         * windows-nat.c: Update.
7469
7470 2018-07-03  Tom Tromey  <tom@tromey.com>
7471
7472         * common/ptid.c (ptid_get_lwp): Remove.
7473         * common/ptid.h (ptid_get_lwp): Don't declare.
7474         * aarch64-linux-nat.c: Update.
7475         * ada-tasks.c: Update.
7476         * aix-thread.c: Update.
7477         * amd64-linux-nat.c: Update.
7478         * arm-linux-nat.c: Update.
7479         * corelow.c: Update.
7480         * fbsd-nat.c: Update.
7481         * fbsd-tdep.c: Update.
7482         * gnu-nat.c: Update.
7483         * i386-cygwin-tdep.c: Update.
7484         * i386-gnu-nat.c: Update.
7485         * i386-linux-nat.c: Update.
7486         * ia64-linux-nat.c: Update.
7487         * inf-ptrace.c: Update.
7488         * infrun.c: Update.
7489         * linux-fork.c: Update.
7490         * linux-nat.c: Update.
7491         * linux-tdep.c: Update.
7492         * linux-thread-db.c: Update.
7493         * mips-linux-nat.c: Update.
7494         * nat/aarch64-linux-hw-point.c: Update.
7495         * nat/aarch64-linux.c: Update.
7496         * nat/linux-btrace.c: Update.
7497         * nat/linux-osdata.c: Update.
7498         * nat/linux-procfs.c: Update.
7499         * nat/x86-linux-dregs.c: Update.
7500         * obsd-nat.c: Update.
7501         * ppc-fbsd-nat.c: Update.
7502         * ppc-linux-nat.c: Update.
7503         * procfs.c: Update.
7504         * python/py-infthread.c: Update.
7505         * ravenscar-thread.c: Update.
7506         * remote.c: Update.
7507         * s390-linux-nat.c: Update.
7508         * sol-thread.c: Update.
7509         * sol2-tdep.c: Update.
7510         * spu-linux-nat.c: Update.
7511         * x86-linux-nat.c: Update.
7512         * xtensa-linux-nat.c: Update.
7513
7514 2018-07-03  Tom Tromey  <tom@tromey.com>
7515
7516         * common/ptid.c (ptid_get_pid): Remove.
7517         * common/ptid.h (ptid_get_pid): Don't declare.
7518         * aarch64-linux-nat.c: Update.
7519         * ada-lang.c: Update.
7520         * aix-thread.c: Update.
7521         * alpha-bsd-nat.c: Update.
7522         * amd64-fbsd-nat.c: Update.
7523         * amd64-linux-nat.c: Update.
7524         * arm-linux-nat.c: Update.
7525         * arm-nbsd-nat.c: Update.
7526         * auxv.c: Update.
7527         * break-catch-syscall.c: Update.
7528         * breakpoint.c: Update.
7529         * bsd-uthread.c: Update.
7530         * corelow.c: Update.
7531         * ctf.c: Update.
7532         * darwin-nat.c: Update.
7533         * fbsd-nat.c: Update.
7534         * fbsd-tdep.c: Update.
7535         * gcore.c: Update.
7536         * gnu-nat.c: Update.
7537         * hppa-nbsd-nat.c: Update.
7538         * hppa-obsd-nat.c: Update.
7539         * i386-fbsd-nat.c: Update.
7540         * ia64-linux-nat.c: Update.
7541         * inf-ptrace.c: Update.
7542         * infcmd.c: Update.
7543         * inferior.c: Update.
7544         * inferior.h: Update.
7545         * inflow.c: Update.
7546         * infrun.c: Update.
7547         * linux-fork.c: Update.
7548         * linux-nat.c: Update.
7549         * linux-tdep.c: Update.
7550         * linux-thread-db.c: Update.
7551         * m68k-bsd-nat.c: Update.
7552         * mi/mi-interp.c: Update.
7553         * mi/mi-main.c: Update.
7554         * mips-linux-nat.c: Update.
7555         * mips-nbsd-nat.c: Update.
7556         * mips64-obsd-nat.c: Update.
7557         * nat/aarch64-linux-hw-point.c: Update.
7558         * nat/aarch64-linux.c: Update.
7559         * nat/linux-btrace.c: Update.
7560         * nat/linux-osdata.c: Update.
7561         * nat/linux-procfs.c: Update.
7562         * nat/x86-linux-dregs.c: Update.
7563         * nto-procfs.c: Update.
7564         * obsd-nat.c: Update.
7565         * ppc-linux-nat.c: Update.
7566         * ppc-nbsd-nat.c: Update.
7567         * ppc-obsd-nat.c: Update.
7568         * proc-service.c: Update.
7569         * procfs.c: Update.
7570         * python/py-inferior.c: Update.
7571         * python/py-infthread.c: Update.
7572         * ravenscar-thread.c: Update.
7573         * record.c: Update.
7574         * remote-sim.c: Update.
7575         * remote.c: Update.
7576         * rs6000-nat.c: Update.
7577         * s390-linux-nat.c: Update.
7578         * sh-nbsd-nat.c: Update.
7579         * sol-thread.c: Update.
7580         * sparc-nat.c: Update.
7581         * sparc64-tdep.c: Update.
7582         * spu-linux-nat.c: Update.
7583         * spu-tdep.c: Update.
7584         * target-debug.h: Update.
7585         * target.c: Update.
7586         * thread.c: Update.
7587         * tid-parse.c: Update.
7588         * tracefile-tfile.c: Update.
7589         * vax-bsd-nat.c: Update.
7590         * windows-nat.c: Update.
7591         * x86-linux-nat.c: Update.
7592         * x86-nat.c: Update.
7593
7594 2018-07-03  Tom Tromey  <tom@tromey.com>
7595
7596         * common/ptid.c (pid_to_ptid): Remove.
7597         * common/ptid.h (pid_to_ptid): Don't declare.
7598         * aix-thread.c: Update.
7599         * arm-linux-nat.c: Update.
7600         * common/ptid.c: Update.
7601         * common/ptid.h: Update.
7602         * corelow.c: Update.
7603         * ctf.c: Update.
7604         * darwin-nat.c: Update.
7605         * fbsd-nat.c: Update.
7606         * fork-child.c: Update.
7607         * gnu-nat.c: Update.
7608         * go32-nat.c: Update.
7609         * inf-ptrace.c: Update.
7610         * infcmd.c: Update.
7611         * inferior.c: Update.
7612         * infrun.c: Update.
7613         * linux-fork.c: Update.
7614         * linux-nat.c: Update.
7615         * nat/aarch64-linux-hw-point.c: Update.
7616         * nat/fork-inferior.c: Update.
7617         * nat/x86-linux-dregs.c: Update.
7618         * nto-procfs.c: Update.
7619         * obsd-nat.c: Update.
7620         * procfs.c: Update.
7621         * progspace.c: Update.
7622         * remote.c: Update.
7623         * rs6000-nat.c: Update.
7624         * s390-linux-nat.c: Update.
7625         * sol-thread.c: Update.
7626         * spu-linux-nat.c: Update.
7627         * target.c: Update.
7628         * top.c: Update.
7629         * tracefile-tfile.c: Update.
7630         * windows-nat.c: Update.
7631
7632 2018-07-03  Tom Tromey  <tom@tromey.com>
7633
7634         * common/ptid.h (ptid_build): Don't declare.
7635         * common/ptid.c (ptid_build): Remove.
7636         * aix-thread.c: Update.
7637         * bsd-kvm.c: Update.
7638         * bsd-uthread.c: Update.
7639         * common/agent.c: Update.
7640         * common/ptid.c: Update.
7641         * common/ptid.h: Update.
7642         * corelow.c: Update.
7643         * darwin-nat.c: Update.
7644         * fbsd-nat.c: Update.
7645         * gnu-nat.c: Update.
7646         * linux-fork.c: Update.
7647         * linux-nat.c: Update.
7648         * linux-thread-db.c: Update.
7649         * nat/linux-osdata.c: Update.
7650         * nat/linux-procfs.c: Update.
7651         * nto-procfs.c: Update.
7652         * obsd-nat.c: Update.
7653         * proc-service.c: Update.
7654         * procfs.c: Update.
7655         * ravenscar-thread.c: Update.
7656         * remote-sim.c: Update.
7657         * remote.c: Update.
7658         * sol-thread.c: Update.
7659         * target.c: Update.
7660         * windows-nat.c: Update.
7661
7662 2018-07-03  Tom Tromey  <tom@tromey.com>
7663
7664         * infrun.c (follow_exec): Use exit_inferior_silent.
7665         * inferior.c (exit_inferior_num_silent): Remove.
7666         * inferior.h (exit_inferior_num_silent): Don't declare.
7667
7668 2018-07-03  Tom Tromey  <tom@tromey.com>
7669
7670         PR cli/23340:
7671         * darwin-nat.c (darwin_attach_pid): Reset inferior and
7672         inferior_ptid on error.
7673
7674 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
7675             Simon Marchi  <simon.marchi@polymtl.ca>
7676
7677         PR tdep/8282
7678         * disasm.h (gdb_disassembler): Add
7679         `m_disassembler_options_holder'. member
7680         * disasm.c (get_all_disassembler_options): New function.
7681         (gdb_disassembler::gdb_disassembler): Use it.
7682         (gdb_buffered_insn_length_init_dis): Likewise.
7683         (gdb_buffered_insn_length): Adjust accordingly.
7684         (set_disassembler_options): Handle options with arguments.
7685         (show_disassembler_options_sfunc): Likewise.  Add a leading new
7686         line if showing options with descriptions.
7687         (disassembler_options_completer): Adapt to using the
7688         `disasm_options_and_args_t' structure.
7689         * mips-tdep.c (mips_disassembler_options): New variable.
7690         (mips_disassembler_options_o32): Likewise.
7691         (mips_disassembler_options_n32): Likewise.
7692         (mips_disassembler_options_n64): Likewise.
7693         (gdb_print_insn_mips): Don't set `disassembler_options'.
7694         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
7695         functions.
7696         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
7697         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
7698         `gdbarch_disassembler_options_implicit' and
7699         `gdbarch_valid_disassembler_options'.
7700         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
7701         `disasm_options_and_args_t' structure.
7702         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
7703         method.
7704         (valid_disassembler_options): Switch from `disasm_options_t' to
7705         the `disasm_options_and_args_t' structure.
7706         * NEWS: Document `set disassembler-options' support for the MIPS
7707         target.
7708         * gdbarch.h: Regenerate.
7709         * gdbarch.c: Regenerate.
7710
7711 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
7712
7713         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
7714
7715 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
7716
7717         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
7718         parameter in call to amd64_target_description.
7719         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
7720         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
7721         (amd64fbsd_init_abi): Likewise.
7722         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
7723         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
7724         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
7725         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
7726
7727 2018-06-29  Pedro Alves  <palves@redhat.com>
7728
7729         * gdb/amd64-tdep.h (amd64_create_target_description): Add
7730         "segments" parameter.
7731         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
7732         (_initialize_amd64_tdep): Update call to
7733         amd64_create_target_description.
7734         (amd64_target_description): Add "segments" parameter.  Adjust
7735         the implementation to use it.
7736         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
7737         call to amd64_create_target_description.
7738         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
7739         * gdb/arch/amd64.h (amd64_create_target_description): Add
7740         "segments" register.
7741         * gdb/arch/amd64.c (amd64_create_target_description): Add
7742         "segments" parameter.  Call create_feature_i386_64bit_segments
7743         only if SEGMENTS is true.
7744         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
7745         call to amd64_create_target_description.
7746
7747 2018-06-29  Pedro Alves  <palves@redhat.com>
7748
7749         * thread.c (thread_target_id_str): New, factored out from ...
7750         (print_thread_info_1): ... here.  Use it to compute the max
7751         "Target Id" column width.
7752
7753 2018-06-29  Pedro Alves  <palves@redhat.com>
7754
7755         * remote.c (remote_target::extra_thread_info): Delete
7756         'display_buf' and 'n' locals.  from the cache, regardless of
7757         packet mechanims is in use.  Use cache for qThreadExtra and qP
7758         methods too.
7759
7760 2018-06-29  Pedro Alves  <palves@redhat.com>
7761
7762         * blockframe.c (find_pc_sect_containing_function): New function.
7763         * breakpoint.c (print_breakpoint_location): Don't call
7764         find_pc_sect_function.
7765         * linespec.c (create_sals_line_offset): Record the location's
7766         symbol in the sal.
7767         * linespec.c (convert_address_location_to_sals): Fill in sal's
7768         symbol with find_pc_sect_containing_function.
7769         * symtab.c (find_function_start_sal): Rename to ...
7770         (find_function_start_sal_1): ... this.
7771         (find_function_start_sal): Reimplement as wrapper around
7772         find_function_start_sal_1, and use
7773         find_pc_sect_containing_function to fill in the sal's symbol.
7774         (find_function_start_sal(symbol*, bool)): Adjust.
7775         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
7776         comments.
7777         (find_pc_sect_containing_function): Declare.
7778
7779 2018-06-29  Pedro Alves  <palves@redhat.com>
7780
7781         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
7782         true if the the location has no symbol.
7783
7784 2018-06-28  Tom Tromey  <tom@tromey.com>
7785
7786         * NEWS: Mention --enable-codesign.
7787         * silent-rules.mk (ECHO_SIGN): New variable.
7788         * configure.ac: Add --enable-codesign.
7789         * configure: Rebuild.
7790         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
7791         (gdb$(EXEEXT)): Optionally invoke codesign.
7792
7793 2018-06-28  Pedro Alves  <palves@redhat.com>
7794
7795         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
7796         comments.
7797         (switch_to_thread_no_regs): Adjust comment.
7798         * infcmd.c (stop_pc): Delete.
7799         (post_create_inferior, info_program_command): Replace references
7800         to stop_pc with references to thread_info->suspend.stop_pc.
7801         * inferior.h (stop_pc): Delete declaration.
7802         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
7803         (handle_inferior_event_1, handle_signal_stop)
7804         (process_event_stop_test, keep_going_stepped_thread)
7805         (handle_step_into_function, handle_step_into_function_backward)
7806         (print_stop_location): Replace references to stop_pc with
7807         references to thread_info->suspend.stop_pc.
7808         (struct infcall_suspend_state) <stop_pc>: Delete field.
7809         (save_infcall_suspend_state, restore_infcall_suspend_state):
7810         Remove references to inf_stat->stop_pc.
7811         * linux-fork.c (fork_load_infrun_state): Likewise.
7812         * record-btrace.c (record_btrace_set_replay): Likewise.
7813         * record-full.c (record_full_goto_entry): Likewise.
7814         * remote.c (print_one_stopped_thread): Likewise.
7815         * target.c (target_resume): Extend comment.
7816         * thread.c (set_executing_thread): New.
7817         (set_executing): Use it.
7818         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
7819         Remove references to stop_pc.
7820
7821 2018-06-28  Pedro Alves  <palves@redhat.com>
7822
7823         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
7824         Moving fetching stop_pc until after ecs->event_thread is refreshed.
7825
7826 2018-06-28  Tom Tromey  <tom@tromey.com>
7827
7828         * coffread.c (coff_symfile_finish): Update.
7829         * xcoffread.c (xcoff_symfile_finish): Update.
7830         * elfread.c (elf_symfile_finish): Update.
7831         * symfile.h (dwarf2_free_objfile): Don't declare.
7832         * dwarf2read.c (_initialize_dwarf2_read): Use
7833         register_objfile_data_with_cleanup.
7834         (dwarf2_free_objfile): Now static.  Change signature.
7835
7836 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7837
7838         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
7839         option "-o" to add-symbol-file-load to add an offset to each
7840         section's load address.
7841         * symfile.c (set_objfile_default_section_offset): New function.
7842
7843 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7844
7845         * symfile.c (add_symbol_file_command): Make sure that sections
7846         with the same name are sorted in the same order.
7847
7848 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7849
7850         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
7851         require the second argument.  If omitted, load sections at the
7852         addresses specified in the file.
7853
7854 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7855
7856         * symfile.c (symbol_file_command, symbol_file_add_main_1)
7857         (_initialize_symfile): Add option "-o" to symbol-file to add an
7858         offset to each section of the symbol file.
7859
7860 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7861
7862         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
7863
7864 2018-06-27  Tom Tromey  <tom@tromey.com>
7865
7866         * stack.c (_initialize_stack): Update "func" help text.
7867
7868 2018-06-27  Tom Tromey  <tom@tromey.com>
7869
7870         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
7871         std::vector.
7872         (unwind_infopy_str, pyuw_create_unwind_info)
7873         (unwind_infopy_add_saved_register, pyuw_sniffer)
7874         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
7875         Update.
7876         (struct saved_reg): Add constructor.
7877         <value>: Now a gdbpy_ref<>.
7878
7879 2018-06-27  Tom Tromey  <tom@tromey.com>
7880
7881         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
7882
7883 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7884
7885         * gdb-gdb.py.in: Format using autopep8.
7886
7887 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7888
7889         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
7890         (type_lookup_function): Recognize CORE_ADDR values.
7891
7892 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7893
7894         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
7895         print tag_name.
7896
7897 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7898
7899         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
7900         <__lt__>: Add.
7901
7902 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7903
7904         * gdb-gdb.py: Move to...
7905         * gdb-gdb.py.in: ... here.
7906         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
7907         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
7908         dependencies.
7909         (distclean): Remove gdb-gdb.py when cleaning.
7910         (gdb-gdb.py, gdb-gdb.gdb): New rules.
7911         * configure: Re-generate.
7912
7913 2018-06-27  Pedro Alves  <palves@redhat.com>
7914
7915         * proc-service.c (get_ps_regcache): New.
7916         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
7917         (ps_lsetfpregs): Use it.
7918
7919 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
7920
7921         PR gdb/21695
7922         * dwarf2read.c (lnp_state_machine::check_line_address): Update
7923         declaration.
7924         (dwarf_decode_lines_1): Adjust.
7925
7926 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7927
7928         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
7929         override.
7930         <info_proc>: Likewise.
7931
7932 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
7933
7934         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
7935         to windows_fetch_one_register, and only handle the case of
7936         fetching one register.  Move the code that reloads the context
7937         and iterates over all registers if R is negative to...
7938         (windows_nat_target::fetch_registers): ... here.
7939         (do_windows_store_inferior_registers): Rename to
7940         windows_store_one_register, and only handle the case of storing
7941         one register.  Move the code that handles the case where r is
7942         negative to...
7943         (windows_nat_target::store_registers) ... here.
7944
7945 2018-06-26  Tom Tromey  <tom@tromey.com>
7946
7947         PR rust/22574:
7948         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
7949         * rust-lang.c (rust_print_struct_def): Add podata parameter.
7950         Update.
7951         (rust_internal_print_type): Add podata parameter.
7952         (rust_print_type): Update.
7953
7954 2018-06-26  Tom Tromey  <tom@tromey.com>
7955
7956         * typeprint.h (struct print_offset_data) <update, finish,
7957         maybe_print_hole>: New methods.
7958         <indentation>: New constant.
7959         * typeprint.c (print_offset_data::indentation): Define.
7960         (print_offset_data::maybe_print_hole, print_offset_data::update)
7961         (print_offset_data::finish): Move from c-typeprint.c and rename.
7962         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
7963         (print_spaces_filtered_with_print_options): Update.
7964         (c_print_type_union_field_offset, maybe_print_hole)
7965         (c_print_type_struct_field_offset): Move to typeprint.c and
7966         rename.
7967         (c_type_print_base_struct_union): Update.
7968
7969 2018-06-25  Pedro Alves  <palves@redhat.com>
7970
7971         * gdbthread.h (thread_info_ref, delete_thread)
7972         (delete_thread_silent, first_thread_of_inferior)
7973         (any_thread_of_inferior, switch_to_thread)
7974         (enable_thread_stack_temporaries)
7975         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7976         (get_last_thread_stack_temporary)
7977         (value_in_thread_stack_temporaries, can_access_registers_thread):
7978         Spell out "struct thread_info" instead of just "thread_info".
7979         * inferior.h (notice_new_inferior): Likewise.
7980
7981 2018-06-25  Pedro Alves  <palves@redhat.com>
7982
7983         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7984         pass thread_info pointer to delete_thread.
7985         (windows_nat_target::detach): Pass inferior pointer to
7986         detach_inferior.
7987         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
7988         delete_thread.
7989         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
7990         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
7991         and pass a thread_info pointer to delete_thread.
7992         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
7993         pass thread_info pointer to delete_thread.
7994         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
7995         delete_thread_silent call.
7996         * procfs.c (procfs_target::detach): Pass inferior pointer to
7997         detach_inferior.
7998         (procfs_target::wait): Pass thread_info pointer to delete_thread.
7999         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
8000         delete_thread_silent call.
8001         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
8002         pass thread_info pointer to delete_thread.
8003         (windows_nat_target::detach): Pass inferior pointer to
8004         delete_inferior.
8005
8006 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
8007
8008         * regcache.c (readable_regcache::read_part): Fix asserts.
8009         (reg_buffer::raw_collect_part): New function.
8010         (regcache::write_part): Fix asserts.
8011         (reg_buffer::raw_supply_part): New function.
8012         (regcache::transfer_regset_register): New helper function.
8013         (regcache::transfer_regset): Call new functions.
8014         (regcache_supply_regset): Use gdb_byte*.
8015         (regcache::supply_regset): Likewise.
8016         (regcache_collect_regset): Likewise.
8017         (regcache::collect_regset): Likewise.
8018         * regcache.h (reg_buffer::raw_collect_part): New declaration.
8019         (reg_buffer::raw_supply_part): Likewise.
8020         (regcache::transfer_regset_register): Likewise.
8021         (regcache::transfer_regset): Use gdb_byte*.
8022
8023 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
8024
8025         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
8026
8027 2018-06-21  Pedro Alves  <palves@redhat.com>
8028
8029         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
8030         instead of a ptid_t.  All callers adjusted.
8031         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
8032         adjusted.
8033         (print_ada_task_info, display_current_task_id, task_command_1):
8034         Adjust.
8035         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
8036         inferior_thread.
8037         (breakpoint_kind): Adjust.
8038         (remove_breakpoints_pid): Rename to ...
8039         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
8040         pointer.  All callers adjusted.
8041         (bpstat_clear_actions): Use inferior_thread.
8042         (get_bpstat_thread): New.
8043         (bpstat_do_actions): Use it.
8044         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
8045         to take a thread_info pointer.  All callers adjusted.
8046         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
8047         (breakpoint_re_set_thread): Use inferior_thread.
8048         * breakpoint.h (struct inferior): Forward declare.
8049         (bpstat_stop_status): Update.
8050         (remove_breakpoints_pid): Delete.
8051         (remove_breakpoints_inf): New.
8052         * bsd-uthread.c (bsd_uthread_target::wait)
8053         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
8054         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
8055         (maint_btrace_packet_history_cmd)
8056         (maint_btrace_clear_packet_history_cmd): Adjust.
8057         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
8058         inferior_thread.
8059         * cli/cli-interp.c: Include "inferior.h".
8060         * common/refcounted-object.h (struct
8061         refcounted_object_ref_policy): New.
8062         * compile/compile-object-load.c: Include gdbthread.h.
8063         (store_regs): Use inferior_thread.
8064         * corelow.c (core_target::close): Use current_inferior.
8065         (core_target_open): Adjust to use first_thread_of_inferior and use
8066         the current inferior.
8067         * ctf.c (ctf_target::close): Adjust to use current_inferior.
8068         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
8069         <thread>: ... this new field.  All references adjusted.
8070         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
8071         Take a thread_info pointer instead of a ptid_t.
8072         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
8073         (dummy_frame_discard, register_dummy_frame_dtor): Take a
8074         thread_info pointer instead of a ptid_t.
8075         * elfread.c: Include "inferior.h".
8076         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
8077         Use inferior_thread.
8078         * eval.c (evaluate_subexp): Likewise.
8079         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
8080         inferior_thread.
8081         * gdb_proc_service.h (struct thread_info): Forward declare.
8082         (struct ps_prochandle) <ptid>: Delete, replaced by ...
8083         <thread>: ... this new field.  All references adjusted.
8084         * gdbarch.h, gdbarch.c: Regenerate.
8085         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
8086         'thread' parameter.  All implementations and callers adjusted.
8087         * gdbthread.h (thread_info) <set_running>: New method.
8088         (delete_thread, delete_thread_silent): Take a thread_info pointer
8089         instead of a ptid.
8090         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
8091         (first_thread_of_process): Delete, replaced by ...
8092         (first_thread_of_inferior): ... this new function.  All callers
8093         adjusted.
8094         (any_live_thread_of_process): Delete, replaced by ...
8095         (any_live_thread_of_inferior): ... this new function.  All callers
8096         adjusted.
8097         (switch_to_thread, switch_to_no_thread): Declare.
8098         (is_executing): Delete.
8099         (enable_thread_stack_temporaries): Update comment.
8100         <enable_thread_stack_temporaries>: Take a thread_info pointer
8101         instead of a ptid_t.  Incref the thread.
8102         <~enable_thread_stack_temporaries>: Decref the thread.
8103         <m_ptid>: Delete
8104         <m_thr>: New.
8105         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
8106         (get_last_thread_stack_temporary)
8107         (value_in_thread_stack_temporaries, can_access_registers_thread):
8108         Take a thread_info pointer instead of a ptid_t.  All callers
8109         adjusted.
8110         * infcall.c (get_call_return_value): Use inferior_thread.
8111         (run_inferior_call): Work with thread pointers instead of ptid_t.
8112         (call_function_by_hand_dummy): Work with thread pointers instead
8113         of ptid_t.  Use thread_info_ref.
8114         * infcmd.c (proceed_thread_callback): Access thread's state
8115         directly.
8116         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
8117         access thread's state directly.
8118         (continue_command): Use inferior_thread.
8119         (info_program_command): Use find_thread_ptid and access thread
8120         state directly.
8121         (proceed_after_attach_callback): Use thread state directly.
8122         (notice_new_inferior): Take a thread_info pointer instead of a
8123         ptid_t.  All callers adjusted.
8124         (exit_inferior): Take an inferior pointer instead of a pid.  All
8125         callers adjusted.
8126         (exit_inferior_silent): New.
8127         (detach_inferior): Delete.
8128         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
8129         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
8130         (detach_inferior_command, kill_inferior_command): Use
8131         find_inferior_id instead of valid_gdb_inferior_id and
8132         gdb_inferior_id_to_pid.
8133         (inferior_command): Use inferior and thread pointers.
8134         * inferior.h (struct thread_info): Forward declare.
8135         (notice_new_inferior): Take a thread_info pointer instead of a
8136         ptid_t.  All callers adjusted.
8137         (detach_inferior): Delete declaration.
8138         (exit_inferior, exit_inferior_silent): Take an inferior pointer
8139         instead of a pid.  All callers adjusted.
8140         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
8141         (valid_gdb_inferior_id): Delete.
8142         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
8143         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
8144         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
8145         ...
8146         <inf>: ... this new field.
8147         <step_ptid>: Delete, replaced by ...
8148         <step_thread>: ... this new field.
8149         (get_displaced_stepping_state): Take an inferior pointer instead
8150         of a pid.  All callers adjusted.
8151         (displaced_step_in_progress_any_inferior): Adjust.
8152         (displaced_step_in_progress_thread): Take a thread pointer instead
8153         of a ptid_t.  All callers adjusted.
8154         (displaced_step_in_progress, add_displaced_stepping_state): Take
8155         an inferior pointer instead of a pid.  All callers adjusted.
8156         (get_displaced_step_closure_by_addr): Adjust.
8157         (remove_displaced_stepping_state): Take an inferior pointer
8158         instead of a pid.  All callers adjusted.
8159         (displaced_step_prepare_throw, displaced_step_prepare)
8160         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
8161         All callers adjusted.
8162         (start_step_over): Adjust.
8163         (infrun_thread_ptid_changed): Remove bit updating ptids in the
8164         displaced step queue.
8165         (do_target_resume): Adjust.
8166         (fetch_inferior_event): Use inferior_thread.
8167         (context_switch, get_inferior_stop_soon): Take an
8168         execution_control_state pointer instead of a ptid_t.  All callers
8169         adjusted.
8170         (switch_to_thread_cleanup): Delete.
8171         (stop_all_threads): Use scoped_restore_current_thread.
8172         * inline-frame.c: Include "gdbthread.h".
8173         (inline_state) <inline_state>: Take a thread pointer instead of a
8174         ptid_t.  All callers adjusted.
8175         <ptid>: Delete, replaced by ...
8176         <thread>: ... this new field.
8177         (find_inline_frame_state): Take a thread pointer instead of a
8178         ptid_t.  All callers adjusted.
8179         (skip_inline_frames, step_into_inline_frame)
8180         (inline_skipped_frames, inline_skipped_symbol): Take a thread
8181         pointer instead of a ptid_t.  All callers adjusted.
8182         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
8183         (inline_skipped_frames, inline_skipped_symbol): Likewise.
8184         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
8185         pointers directly.
8186         * linux-nat.c (get_detach_signal): Likewise.
8187         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
8188         (thread_db_notice_clone): Adjust.
8189         (thread_db_find_new_threads_silently)
8190         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
8191         a thread pointer instead of a ptid_t.  All callers adjusted.
8192         * mi/mi-cmd-var.c: Include "inferior.h".
8193         (mi_cmd_var_update_iter): Update to use thread pointers.
8194         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
8195         inferior directly.
8196         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
8197         out to ...
8198         (mi_output_running): ... this new function.
8199         (mi_on_resume_1): Adjust to use it.
8200         (mi_user_selected_context_changed): Adjust to use inferior_thread.
8201         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
8202         directly.
8203         (interrupt_thread_callback): : Adjust to use thread and inferior
8204         pointers.
8205         * proc-service.c: Include "gdbthread.h".
8206         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
8207         * progspace-and-thread.c: Include "inferior.h".
8208         * progspace.c: Include "inferior.h".
8209         * python/py-exitedevent.c (create_exited_event_object): Adjust to
8210         hold a reference to an inferior_object.
8211         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
8212         inferior_thread.
8213         * python/py-inferior.c (struct inferior_object): Give the type a
8214         tag name instead of a typedef.
8215         (python_on_normal_stop): No need to check if the current thread is
8216         listed.
8217         (inferior_to_inferior_object): Change return type to
8218         inferior_object.  All callers adjusted.
8219         (find_thread_object): Delete, bits factored out to ...
8220         (thread_to_thread_object): ... this new function.
8221         * python/py-infthread.c (create_thread_object): Use
8222         inferior_to_inferior_object.
8223         (thpy_is_stopped): Use thread pointer directly.
8224         (gdbpy_selected_thread): Use inferior_thread.
8225         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
8226         field, replaced with ...
8227         <thread>: ... this new field.  All users adjusted.
8228         (btpy_insn_or_gap_new): Drop const.
8229         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
8230         callers adjusted.
8231         * python/py-record.c: Include "gdbthread.h".
8232         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
8233         a ptid_t.  All callers adjusted.
8234         (gdbpy_current_recording): Use inferior_thread.
8235         * python/py-record.h (recpy_record_object) <ptid>: Delete
8236         field, replaced with ...
8237         <thread>: ... this new field.  All users adjusted.
8238         (recpy_element_object) <ptid>: Delete
8239         field, replaced with ...
8240         <thread>: ... this new field.  All users adjusted.
8241         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
8242         a ptid_t.  All callers adjusted.
8243         * python/py-threadevent.c: Include "gdbthread.h".
8244         (get_event_thread): Use thread_to_thread_object.
8245         * python/python-internal.h (struct inferior_object): Forward
8246         declare.
8247         (find_thread_object, find_inferior_object): Delete declarations.
8248         (thread_to_thread_object, inferior_to_inferior_object): New
8249         declarations.
8250         * record-btrace.c: Include "inferior.h".
8251         (require_btrace_thread): Use inferior_thread.
8252         (record_btrace_frame_sniffer)
8253         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
8254         (get_thread_current_frame): Use scoped_restore_current_thread and
8255         switch_to_thread.
8256         (get_thread_current_frame): Use thread pointer directly.
8257         (record_btrace_replay_at_breakpoint): Use thread's inferior
8258         pointer directly.
8259         * record-full.c: Include "inferior.h".
8260         * regcache.c: Include "gdbthread.h".
8261         (get_thread_arch_regcache): Use the inferior's address space
8262         directly.
8263         (get_thread_regcache, registers_changed_thread): New.
8264         * regcache.h (get_thread_regcache(thread_info *thread)): New
8265         overload.
8266         (registers_changed_thread): New.
8267         (remote_target) <remote_detach_1>: Swap order of parameters.
8268         (remote_add_thread): <remote_add_thread>: Return the new thread.
8269         (get_remote_thread_info(ptid_t)): New overload.
8270         (remote_target::remote_notice_new_inferior): Use thread pointers
8271         directly.
8272         (remote_target::process_initial_stop_replies): Use
8273         thread_info::set_running.
8274         (remote_target::remote_detach_1, remote_target::detach)
8275         (extended_remote_target::detach): Adjust.
8276         * stack.c (frame_show_address): Use inferior_thread.
8277         * target-debug.h (target_debug_print_thread_info_pp): New.
8278         * target-delegates.c: Regenerate.
8279         * target.c (default_thread_address_space): Delete.
8280         (memory_xfer_partial_1): Use current_inferior.
8281         (target_detach): Use current_inferior.
8282         (target_thread_address_space): Delete.
8283         (generic_mourn_inferior): Use current_inferior.
8284         * target.h (struct target_ops) <thread_address_space>: Delete.
8285         (target_thread_address_space): Delete.
8286         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
8287         pointers directly.
8288         (delete_thread_1, delete_thread, delete_thread_silent): Take a
8289         thread pointer instead of a ptid_t.  Adjust all callers.
8290         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
8291         (first_thread_of_process): Delete, replaced by ...
8292         (first_thread_of_inferior): ... this new function.  All callers
8293         adjusted.
8294         (any_thread_of_process): Rename to ...
8295         (any_thread_of_inferior): ... this, and take an inferior pointer.
8296         (any_live_thread_of_process): Rename to ...
8297         (any_live_thread_of_inferior): ... this, and take an inferior
8298         pointer.
8299         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
8300         (value_in_thread_stack_temporaries)
8301         (get_last_thread_stack_temporary): Take a thread pointer instead
8302         of a ptid_t.  Adjust all callers.
8303         (thread_info::set_running): New.
8304         (validate_registers_access): Use inferior_thread.
8305         (can_access_registers_ptid): Rename to ...
8306         (can_access_registers_thread): ... this, and take a thread
8307         pointer.
8308         (print_thread_info_1): Adjust to compare thread pointers instead
8309         of ptids.
8310         (switch_to_no_thread, switch_to_thread): Make extern.
8311         (scoped_restore_current_thread::~scoped_restore_current_thread):
8312         Use m_thread pointer directly.
8313         (scoped_restore_current_thread::scoped_restore_current_thread):
8314         Use inferior_thread.
8315         (thread_command): Use thread pointer directly.
8316         (thread_num_make_value_helper): Use inferior_thread.
8317         * top.c (execute_command): Use inferior_thread.
8318         * tui/tui-interp.c: Include "inferior.h".
8319         * varobj.c (varobj_create): Use inferior_thread.
8320         (value_of_root_1): Use find_thread_global_id instead of
8321         global_thread_id_to_ptid.
8322
8323 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
8324
8325         * regcache.c (readable_regcache::read_part): Avoid memcpy when
8326         possible.
8327         (regcache::write_part): Likewise.
8328         (readable_regcache::cooked_read_part): Update comment.
8329         (readable_regcache::cooked_write_part): Likewise.
8330         * regcache.h: (readable_regcache::read_part): Likewise.
8331         (regcache::write_part): Likewise.
8332
8333 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
8334             Dirk Schubert  <dirk.schubert@arm.com>
8335
8336         * aarch64-linux-nat.c (post_attach): New.
8337         (aarch64_linux_nat_target::post_attach): Override post_attach to
8338         record the number of hardware debug registers.
8339
8340 2018-06-20  Tom Tromey  <tom@tromey.com>
8341
8342         * python/py-param.c (add_setshow_generic): Make parameters const.
8343         (parmpy_init): Update.
8344
8345 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
8346
8347         * regcache.h (regcache_cooked_read_ftype): Rename to...
8348         (register_read_ftype): ...this, change type to function_view.
8349         (class reg_buffer) <save>: Remove src parameter.
8350         (readonly_detached_regcache) <readonly_detached_regcache>: Make
8351         parameter non-const in first overload.  Remove src parameter in
8352         second overload.
8353         * regcache.c (do_cooked_read): Remove.
8354         (readonly_detached_regcache::readonly_detached_regcache): Make
8355         parameter non-const, adjust call to other constructor.
8356         (reg_buffer::save): Remove src parameter.
8357         * frame.c (do_frame_register_read): Remove.
8358         (frame_save_as_regcache): Use lambda function.
8359         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
8360         parameter to ppu2spu_data *.
8361         (ppu2spu_sniffer): Use lambda function.
8362
8363 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
8364
8365         * record-full.c (record_full_target::insert_breakpoint): Remove
8366         "struct" keyword, add const.
8367
8368 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
8369
8370         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
8371         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
8372         * configure.ac: Remove AC_PREREQ, add missing quoting.
8373         * gnulib/configure.ac: Modernize usage of
8374         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
8375         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
8376         (AUTOMAKE_VERSION): Bump to 1.15.1.
8377         * configure: Re-generate.
8378         * config.in: Re-generate.
8379         * aclocal.m4: Re-generate.
8380         * gnulib/aclocal.m4: Re-generate.
8381         * gnulib/config.in: Re-generate.
8382         * gnulib/configure: Re-generate.
8383         * gnulib/import/Makefile.in: Re-generate.
8384
8385 2018-06-19  Pedro Alves  <palves@redhat.com>
8386
8387         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
8388         (lookup_minimal_symbol_by_pc_section): ... here with
8389         gdb_assert_not_reached added.
8390
8391 2018-06-19  Pedro Alves  <palves@redhat.com>
8392
8393         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
8394         parameter with a block parameter.  Compare location's block symbol
8395         with the frame's block instead of addresses.
8396         (skip_inline_frames): Pass the current block instead of the
8397         frame's address.  Break out as soon as we determine the frame
8398         should not be skipped.
8399
8400 2018-06-18  Tom Tromey  <tom@tromey.com>
8401
8402         * solib-aix.c (solib_aix_get_section_offsets): Return
8403         unique_xmalloc_ptr.
8404         (solib_aix_solib_create_inferior_hook): Update.
8405
8406 2018-06-18  Tom Tromey  <tom@tromey.com>
8407
8408         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
8409
8410 2018-06-18  Tom Tromey  <tom@tromey.com>
8411
8412         * solib-frv.c (frv_relocate_main_executable): Use
8413         unique_xmalloc_ptr.
8414         * solib-dsbt.c (dsbt_relocate_main_executable): Use
8415         unique_xmalloc_ptr.
8416
8417 2018-06-18  Tom Tromey  <tom@tromey.com>
8418
8419         * objfiles.h (inhibit_section_map_updates): Update.
8420         (resume_section_map_updates, resume_section_map_updates_cleanup):
8421         Remove.
8422         * solib-svr4.c (svr4_handle_solib_event): Update.
8423         * objfiles.c (inhibit_section_map_updates): Return
8424         scoped_restore_tmpl<int>.
8425         (resume_section_map_updates, resume_section_map_updates_cleanup):
8426         Remove.
8427
8428 2018-06-18  Tom Tromey  <tom@tromey.com>
8429
8430         * valprint.h (read_string): Update.
8431         * valprint.c (read_string): Change type of "buffer".
8432         (val_print_string): Update.
8433         * python/py-value.c (valpy_string): Update.
8434         * language.h (struct language_defn) <la_get_string>: Change
8435         type of "buffer".
8436         (default_get_string, c_get_string): Update.
8437         * language.c (default_get_string): Change type of "buffer".
8438         * guile/scm-value.c (gdbscm_value_to_string): Update.
8439         * c-lang.c (c_get_string): Change type of "buffer".
8440
8441 2018-06-18  Tom Tromey  <tom@tromey.com>
8442
8443         * ser-mingw.c (struct pipe_state_destroyer): New.
8444         (pipe_state_up): New typedef.
8445         (cleanup_pipe_state): Remove.
8446         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
8447
8448 2018-06-18  Tom Tromey  <tom@tromey.com>
8449
8450         * rust-lang.h (rust_yyerror): Don't declare.
8451         * rust-lang.c (rust_language_defn): Update.
8452         * rust-exp.y (yyerror): Now static.
8453         * parse.c (parse_exp_in_context_1): Update.
8454         * p-lang.h (p_yyerror): Don't declare.
8455         * p-lang.c (p_language_defn): Update.
8456         * p-exp.y (yyerror): Now static.
8457         * opencl-lang.c (opencl_language_defn): Update.
8458         * objc-lang.c (objc_language_defn): Update.
8459         * m2-lang.h (m2_yyerror): Don't declare.
8460         * m2-lang.c (m2_language_defn): Update.
8461         * m2-exp.y (yyerror): Now static.
8462         * language.h (struct language_defn) <la_error>: Remove.
8463         * language.c (unk_lang_error): Remove.
8464         (unknown_language_defn, auto_language_defn): Remove.
8465         * go-lang.h (go_yyerror): Don't declare.
8466         * go-lang.c (go_language_defn): Update.
8467         * go-exp.y (yyerror): Now static.
8468         * f-lang.h (f_yyerror): Don't declare.
8469         * f-lang.c (f_language_defn): Update.
8470         * f-exp.y (yyerror): Now static.
8471         * d-lang.h (d_yyerror): Don't declare.
8472         * d-lang.c (d_language_defn): Update.
8473         * d-exp.y (yyerror): Now static.
8474         * c-lang.h (c_yyerror): Don't declare.
8475         * c-lang.c (c_language_defn, cplus_language_defn)
8476         (asm_language_defn, minimal_language_defn): Update.
8477         * c-exp.y (yyerror): Now static.
8478         * ada-lang.h (ada_yyerror): Don't declare.
8479         * ada-lang.c (ada_language_defn): Update.
8480         * ada-exp.y (yyerror): Now static.
8481
8482 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
8483
8484         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
8485         (store_sveregs_to_thread): Likewise.
8486         (aarch64_linux_fetch_inferior_registers): Check for SVE.
8487         (aarch64_linux_store_inferior_registers): Likewise.
8488         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
8489         function.
8490         (aarch64_sve_regs_copy_to_regcache): Likewise.
8491         (aarch64_sve_regs_copy_from_regcache): Likewise.
8492         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
8493         declaration.
8494         (aarch64_sve_regs_copy_to_regcache): Likewise.
8495         (aarch64_sve_regs_copy_from_regcache): Likewise.
8496         (sve_context): Structure from Linux headers.
8497         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
8498         (SVE_SIG_ZREG_SIZE): Likewise.
8499         (SVE_SIG_PREG_SIZE): Likewise.
8500         (SVE_SIG_FFR_SIZE): Likewise.
8501         (SVE_SIG_REGS_OFFSET): Likewise.
8502         (SVE_SIG_ZREGS_OFFSET): Likewise.
8503         (SVE_SIG_ZREG_OFFSET): Likewise.
8504         (SVE_SIG_ZREGS_SIZE): Likewise.
8505         (SVE_SIG_PREGS_OFFSET): Likewise.
8506         (SVE_SIG_PREG_OFFSET): Likewise.
8507         (SVE_SIG_PREGS_SIZE): Likewise.
8508         (SVE_SIG_FFR_OFFSET): Likewise.
8509         (SVE_SIG_REGS_SIZE): Likewise.
8510         (SVE_SIG_CONTEXT_SIZE): Likewise.
8511         (SVE_PT_REGS_MASK): Likewise.
8512         (SVE_PT_REGS_FPSIMD): Likewise.
8513         (SVE_PT_REGS_SVE): Likewise.
8514         (SVE_PT_VL_INHERIT): Likewise.
8515         (SVE_PT_VL_ONEXEC): Likewise.
8516         (SVE_PT_REGS_OFFSET): Likewise.
8517         (SVE_PT_FPSIMD_OFFSET): Likewise.
8518         (SVE_PT_FPSIMD_SIZE): Likewise.
8519         (SVE_PT_SVE_ZREG_SIZE): Likewise.
8520         (SVE_PT_SVE_PREG_SIZE): Likewise.
8521         (SVE_PT_SVE_FFR_SIZE): Likewise.
8522         (SVE_PT_SVE_FPSR_SIZE): Likewise.
8523         (SVE_PT_SVE_FPCR_SIZE): Likewise.
8524         (__SVE_SIG_TO_PT): Likewise.
8525         (SVE_PT_SVE_OFFSET): Likewise.
8526         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
8527         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
8528         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
8529         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
8530         (SVE_PT_SVE_PREG_OFFSET): Likewise.
8531         (SVE_PT_SVE_PREGS_SIZE): Likewise.
8532         (SVE_PT_SVE_FFR_OFFSET): Likewise.
8533         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
8534         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
8535         (SVE_PT_SVE_SIZE): Likewise.
8536         (SVE_PT_SIZE): Likewise.
8537         (HAS_SVE_STATE): New define.
8538
8539 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
8540
8541         * nat/aarch64-sve-linux-sigcontext.h: New file.
8542         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
8543         new files.
8544         (SVE_VQ_MIN): Likewise.
8545         (SVE_VQ_MAX): Likewise.
8546         (SVE_VL_MIN): Likewise.
8547         (SVE_VL_MAX): Likewise.
8548         (SVE_NUM_ZREGS): Likewise.
8549         (SVE_NUM_PREGS): Likewise.
8550         (sve_vl_valid): Likewise.
8551         (struct user_sve_header): Likewise.
8552
8553 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
8554             Richard Bunt <Richard.Bunt@arm.com>
8555
8556         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
8557         was requested by GDB.
8558
8559 2018-06-15  Tom de Vries  <tdevries@suse.de>
8560
8561         * MAINTAINERS (Write After Approval): Add Tom de Vries.
8562
8563 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
8564
8565         * gnulib/update-gnulib.sh: Print expected versions of
8566         autoconf/aclocal.
8567
8568 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
8569
8570         * arch-utils.c (default_type_align): Use type_length_units.
8571         * gdbtypes.c (type_align): Use type_length_units.
8572
8573 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8574
8575         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
8576         of 'define' command.
8577
8578 2018-06-14  Tom de Vries  <tdevries@suse.de>
8579
8580         PR cli/22573
8581         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
8582         get_no_prettyformat_print_options.
8583
8584 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
8585
8586         * sparc-nat.h: Include target.h.
8587         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
8588         <fetch_registers>: Remove this argument in function call.
8589         <store_registers>: Remove this argument in function call, remove
8590         extra semicolon.
8591         <low_forget_process>: Call sparc64_forget_process instead of
8592         sparc_forget_process.
8593
8594 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
8595
8596         * procfs.c (_initialize_procfs): Use add_inf_child_target.
8597         (procfs_target::make_corefile_notes): Adjust to new
8598         target_read_alloc return type.
8599
8600 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8601             Stephen Roberts  <stephen.roberts@arm.com>
8602
8603         PR gdb/22882
8604         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
8605         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
8606         Move should_notify_stop local into more inner scope.
8607
8608 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8609             Stephen Roberts  <stephen.roberts@arm.com>
8610
8611         PR gdb/22882
8612         * infrun.c (resume_1): Add call to mark_async_event_handler.
8613
8614 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8615
8616         * infrun.c (do_target_wait): Change old version of $pc printed.
8617
8618 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
8619
8620         * dwarf2read.c (read_index_from_section): Rename to...
8621         (read_gdb_index_from_section): ... this, update all callers.
8622         (dwarf2_read_index): Rename to...
8623         (dwarf2_read_gdb_index): ... this, update all callers.
8624
8625 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
8626
8627         * hppa-linux-nat.c
8628         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
8629         hppa_linux_nat_target::fetch_registers.
8630
8631 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8632
8633         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
8634         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
8635         (AARCH64_DWARF_SVE_FFR): Likewise.
8636         (AARCH64_DWARF_SVE_P0): Likewise.
8637         (AARCH64_DWARF_SVE_Z0): Likewise.
8638
8639 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8640
8641         * common/common-regcache.h (raw_compare): New function.
8642         * regcache.c (regcache::raw_compare): Likewise.
8643         * regcache.h (regcache::raw_compare): New declaration.
8644
8645 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8646
8647         * common/common-regcache.h (reg_buffer_common): New structure.
8648         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
8649         (reg_buffer::raw_supply): Likewise.
8650         (reg_buffer::raw_supply_integer): Likewise.
8651         (reg_buffer::raw_supply_zeroed): Likewise.
8652         (reg_buffer::raw_collect): Likewise.
8653         (reg_buffer::raw_collect_integer): Likewise.
8654         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
8655         (reg_buffer::raw_supply): Likewise.
8656         (reg_buffer::raw_supply_integer): Likewise.
8657         (reg_buffer::raw_supply_zeroed): Likewise.
8658         (reg_buffer::raw_collect): Likewise.
8659         (reg_buffer::raw_collect_integer): Likewise.
8660
8661 2018-06-10  Tom Tromey  <tom@tromey.com>
8662
8663         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
8664         (class remote_state) <stop_reply_queue>: Now std::vector.
8665         (remote_state::~remote_state)
8666         (remote_target::stop_reply_queue_length): Update.
8667         (struct queue_iter_param, remove_child_of_pending_fork)
8668         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
8669         (check_pending_event_prevents_wildcard_vcont_callback)
8670         (remove_stop_reply_for_inferior)
8671         (remove_stop_reply_of_remote_state)
8672         (remote_notif_remove_once_on_match)
8673         (stop_reply_match_ptid_and_ws)
8674         (remote_kill_child_of_pending_fork): Remove.
8675         (remote_target::remove_new_fork_children)
8676         (remote_target::check_pending_events_prevent_wildcard_vcont)
8677         (remote_target::discard_pending_stop_replies)
8678         (remote_target::discard_pending_stop_replies_in_queue)
8679         (remote_target::remote_notif_remove_queued_reply)
8680         (remote_target::queued_stop_reply)
8681         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
8682         (remote_target::wait, remote_target::kill_new_fork_children)
8683         (remote_target::async): Update.
8684
8685 2018-06-10  Tom Tromey  <tom@tromey.com>
8686
8687         * record-full.c (record_full_arch_list_cleanups): Remove.
8688         (record_full_message): Use try/catch.
8689         (record_full_wait_cleanups): Remove.
8690         (record_full_wait_1): Use try/catch.
8691         (record_full_restore): Likewise.
8692
8693 2018-06-10  Tom Tromey  <tom@tromey.com>
8694
8695         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
8696         declare VEC.  Add constructor.
8697         <in_target_beneath>: Now bool.
8698         (record_full_breakpoints): Now a std::vector, static.
8699         (record_full_sync_record_breakpoints)
8700         (record_full_init_record_breakpoints)
8701         (record_full_target::insert_breakpoint)
8702         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
8703
8704 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
8705
8706         * dwarf2read.c (process_cu_includes): Remove struct keyword.
8707         * serial.c (serial_interface_lookup): Remove struct keyword.
8708
8709 2018-06-10  Tom Tromey  <tom@tromey.com>
8710
8711         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
8712         method.
8713         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
8714         a method.
8715         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
8716         method.
8717         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
8718         "beneath" as a method.
8719         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
8720         Use "beneath" as a method.
8721
8722 2018-06-10  Tom Tromey  <tom@tromey.com>
8723
8724         * tracefile.c (struct trace_file_writer_deleter): New.
8725         <operator()>: Rename from trace_file_writer_xfree.
8726         (trace_file_writer_up): New typedef.
8727         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
8728
8729 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8730
8731         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
8732         <m_registers, m_register_status>: Change type to
8733         std::unique_ptr.
8734         * regcache.c (reg_buffer::reg_buffer): Use new instead of
8735         XCNEWVEC.
8736
8737 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8738
8739         * common/common-regcache.h (enum register_status): Add
8740         underlying type "signed char".
8741         * regcache.h (reg_buffer) <m_register_status>: Change type to
8742         register_status *.
8743         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
8744         register_status instead of signed char.
8745         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
8746         (reg_buffer::get_register_status): Remove cast.
8747         (readable_regcache::raw_read): Remove cast.
8748         (readable_regcache::cooked_read): Remove cast.
8749
8750 2018-06-09  Tom Tromey  <tom@tromey.com>
8751
8752         * source.c (reverse_search_command, forward_search_command): Use
8753         scoped_fd.
8754
8755 2018-06-09  Tom Tromey  <tom@tromey.com>
8756
8757         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
8758         (serial_ops_list): Now static, std::vector.
8759         (serial_interface_lookup, serial_add_interface): Update.
8760
8761 2018-06-09  Tom Tromey  <tom@tromey.com>
8762
8763         * dwarf2read.c (process_cu_includes): Update.
8764         (process_full_comp_unit): Update.
8765         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
8766         std::vector.
8767
8768 2018-06-08  Paul Koning  <paul_koning@dell.com>
8769
8770         PR gdb/23252
8771
8772         * python/python.c (do_start_initialization):
8773         Avoid call to internal Python API.
8774         (init__gdb_module): New function.
8775
8776 2018-06-08  Gary Benson <gbenson@redhat.com>
8777
8778         * linux-thread-db.c (valprint.h): New include.
8779         (struct check_thread_db_info): New structure.
8780         (check_thread_db_on_load, tdb_testinfo): New static globals.
8781         (check_thread_db, check_thread_db_callback): New functions.
8782         (try_thread_db_load_1): Run integrity checks if requested.
8783         (maintenance_check_libthread_db): New function.
8784         (_initialize_thread_db): Register "maint check libthread-db"
8785         and "maint set/show check-libthread-db".
8786         * NEWS: Mention the above new commands.
8787
8788 2018-06-08  Tom Tromey  <tom@tromey.com>
8789
8790         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
8791         now a method.
8792
8793 2018-06-08  Tom Tromey  <tom@tromey.com>
8794
8795         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
8796
8797 2018-06-08  Tom Tromey  <tom@tromey.com>
8798
8799         * common/btrace-common.h (struct btrace_data): Add constructor,
8800         destructor, move assignment operator.
8801         <empty, clear, fini>: New methods.
8802         <format>: Initialize.
8803         (btrace_data_init, btrace_data_fini, btrace_data_clear)
8804         (btrace_data_empty): Don't declare.
8805         * common/btrace-common.c (btrace_data_init): Remove.
8806         (btrace_data::fini): Rename from btrace_data_fini.
8807         (btrace_data::empty): Rename from btrace_data_empty.
8808         (btrace_data::clear): Rename from btrace_data_clear.  Return
8809         bool.
8810         * btrace.h (make_cleanup_btrace_data): Don't declare.
8811         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
8812         (parse_xml_btrace): Update.
8813         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
8814         (maint_btrace_clear_packet_history_cmd): Update.
8815
8816 2018-06-07  Pedro Alves  <palves@redhat.com>
8817
8818         * target.h (target_ops) <beneath>: Now a method.  All references
8819         updated.
8820         (class target_stack): New.
8821         * target.c (g_target_stack): New.
8822         (g_current_top_target): Delete.
8823         (current_top_target): Get the top target out of g_target_stack.
8824         (target_stack::push, target_stack::unpush): New.
8825         (push_target, unpush_target): Reimplement.
8826         (target_is_pushed): Reimplement in terms of g_target_stack.
8827         (target_ops::beneath, target_stack::find_beneath): New.
8828
8829 2018-06-07  Pedro Alves  <palves@redhat.com>
8830
8831         * target.h (find_target_beneath): Delete declaration.
8832         * target.c (find_target_beneath): Delete definition.
8833         * aix-thread.c: All callers of find_target_beneath adjusted to
8834         call target_ops::beneath instead.
8835         * bsd-uthread.c: Likewise.
8836         * linux-thread-db.c: Likewise.
8837         * ravenscar-thread.c: Likewise.
8838         * sol-thread.c: Likewise.
8839         * spu-multiarch.c: Likewise.
8840
8841 2018-06-07  Pedro Alves  <palves@redhat.com>
8842
8843         * target.h (target_ops) <beneath>: Now a method.  All references
8844         updated.
8845         (target_ops) <m_beneath>: New.
8846         * target.c (target_ops::beneath): New.
8847         * corelow.c: Adjust all references to target_ops::beneath.
8848         * linux-thread-db.c: Likewise.
8849         * make-target-delegates: Likewise.
8850         * record-btrace.c: Likewise.
8851         * record-full.c: Likewise.
8852         * remote.c: Likewise.
8853         * target.c: Likewise.
8854         * target-delegates.c: Regenerate.
8855
8856 2018-06-07  Pedro Alves  <palves@redhat.com>
8857
8858         * target.h (target_stack): Delete.
8859         (current_top_target): Declare function.
8860         * target.c (target_stack): Delete.
8861         (g_current_top_target): New.
8862         (current_top_target): New function.
8863         * auxv.c: Use current_top_target instead of target_stack
8864         throughout.
8865         * avr-tdep.c: Likewise.
8866         * breakpoint.c: Likewise.
8867         * corefile.c: Likewise.
8868         * elfread.c: Likewise.
8869         * eval.c: Likewise.
8870         * exceptions.c: Likewise.
8871         * frame.c: Likewise.
8872         * gdbarch-selftests.c: Likewise.
8873         * gnu-v3-abi.c: Likewise.
8874         * ia64-tdep.c: Likewise.
8875         * ia64-vms-tdep.c: Likewise.
8876         * infcall.c: Likewise.
8877         * infcmd.c: Likewise.
8878         * infrun.c: Likewise.
8879         * linespec.c: Likewise.
8880         * linux-tdep.c: Likewise.
8881         * minsyms.c: Likewise.
8882         * ppc-linux-nat.c: Likewise.
8883         * ppc-linux-tdep.c: Likewise.
8884         * procfs.c: Likewise.
8885         * regcache.c: Likewise.
8886         * remote.c: Likewise.
8887         * rs6000-tdep.c: Likewise.
8888         * s390-linux-nat.c: Likewise.
8889         * s390-tdep.c: Likewise.
8890         * solib-aix.c: Likewise.
8891         * solib-darwin.c: Likewise.
8892         * solib-dsbt.c: Likewise.
8893         * solib-spu.c: Likewise.
8894         * solib-svr4.c: Likewise.
8895         * solib-target.c: Likewise.
8896         * sparc-tdep.c: Likewise.
8897         * sparc64-tdep.c: Likewise.
8898         * spu-tdep.c: Likewise.
8899         * symfile.c: Likewise.
8900         * symtab.c: Likewise.
8901         * target-descriptions.c: Likewise.
8902         * target-memory.c: Likewise.
8903         * target.c: Likewise.
8904         * target.h: Likewise.
8905         * tracefile-tfile.c: Likewise.
8906         * tracepoint.c: Likewise.
8907         * valops.c: Likewise.
8908         * valprint.c: Likewise.
8909         * value.c: Likewise.
8910         * windows-tdep.c: Likewise.
8911         * mi/mi-main.c: Likewise.
8912
8913 2018-06-07  Tom Tromey  <tom@tromey.com>
8914
8915         * valprint.h (build_address_symbolic): Declare.
8916         * printcmd.c (print_address_symbolic): Update.
8917         (build_address_symbolic): Change "name" and "filename" to
8918         std::string.
8919         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
8920         Update.
8921         * defs.h (build_address_symbolic): Remove declaration.
8922
8923 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
8924
8925         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
8926         (aarch64_vnv_type): Add function.
8927         (aarch64_pseudo_register_name): Add V regs for SVE.
8928         (aarch64_pseudo_register_type): Likewise.
8929         (aarch64_pseudo_register_reggroup_p): Likewise.
8930         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
8931         (aarch64_pseudo_read_value): Add V regs for SVE.
8932         (aarch64_pseudo_write_2): Use V0 offset for SVE
8933         (aarch64_pseudo_write): Add V regs for SVE.
8934         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
8935
8936 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
8937
8938         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
8939         (sve_vl_from_vq): Likewise.
8940
8941 2018-06-05  Tom Tromey  <tom@tromey.com>
8942
8943         * cli/cli-cmds.c (show_version): Update.
8944         * top.c (print_gdb_version): Add "interactive" parameter.
8945         Update.
8946         * main.c (captured_main_1): Update.
8947         * top.h (print_gdb_version): Add "interactive" parameter and a
8948         comment.
8949
8950 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
8951
8952         * common/enum-flags.h: Add trailing semicolon to example in
8953         comment.
8954
8955 2018-06-05  Tom Tromey  <tom@tromey.com>
8956
8957         PR cli/12326:
8958         * NEWS: Add entry about pager.
8959         * utils.c (pagination_disabled_for_command): New global.
8960         (prompt_for_continue): Allow "c" response to prompt.
8961         (reinitialize_more_filter): Clear
8962         pagination_disabled_for_command.
8963         (fputs_maybe_filtered): Check pagination_disabled_for_command.
8964
8965 2018-06-04  Tom Tromey  <tom@tromey.com>
8966
8967         * ada-lang.h (ada_lookup_symbol_list): Update.
8968         * ada-lang.c (resolve_subexp): Update.
8969         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
8970         parameter.
8971         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
8972         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
8973         results parameter to std::vector.
8974         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
8975         Update.
8976         * ada-exp.y (block_lookup): Update.
8977         (select_possible_type_sym): Change type of syms.  Remove nsyms
8978         parameter.
8979         (write_var_or_type, write_name_assoc): Update.
8980
8981 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
8982
8983         * windows-nat.c (windows_nat_target::xfer_partial): Return
8984         TARGET_XFER_E_IO if we need to delegate to the target beneath
8985         but BENEATH is NULL.
8986
8987 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
8988
8989         * Makefile.in (config.status): Add configure.nat as a
8990         dependency.
8991
8992 2018-06-04  Tom Tromey  <tom@tromey.com>
8993
8994         * cp-name-parser.y (cpname_state): Add method declarations.
8995         (HANDLE_QUAL): Update.
8996         (cpname_state::d_grab, cpname_state::fill_comp)
8997         (cpname_state::make_operator, cpname_state::make_dtor)
8998         (cpname_state::make_builtin_type, cpname_state::make_name)
8999         (cpname_state::d_qualify, cpname_state::d_int_type)
9000         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
9001         (%union): Move earlier.
9002
9003 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
9004
9005         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
9006
9007 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
9008
9009         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
9010         (aarch64_pseudo_write_1): Likewise.
9011         (aarch64_pseudo_read_value): Use helper.
9012         (aarch64_pseudo_write): Likewise.
9013
9014 2018-06-04  Pedro Alves  <palves@redhat.com>
9015
9016         * darwin-nat.c (darwin_ops): Delete.
9017         (darwin_attach_pid): Use get_native_target.
9018
9019 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
9020
9021         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
9022         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
9023
9024 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
9025
9026         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
9027         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
9028         (aarch64_gdbarch_init): Check for SVE.
9029         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
9030
9031 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
9032
9033         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
9034         * aarch64-tdep.h (aarch64_read_description): Likewise.
9035         * arch/aarch64.c (aarch64_create_target_description): Likewise.
9036         * arch/aarch64.h (aarch64_create_target_description): Likewise.
9037         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
9038         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
9039         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
9040
9041 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
9042
9043         * value.c (value_fetch_lazy_bitfield): New.
9044         (value_fetch_lazy_memory): New.
9045         (value_fetch_lazy_register): New.
9046         (value_fetch_lazy): Factor out to smaller functions.
9047
9048 2018-06-01  Tom Tromey  <tom@tromey.com>
9049
9050         * cp-name-parser.y (backslashable, represented): Now const.
9051
9052 2018-06-01  Tom Tromey  <tom@tromey.com>
9053
9054         * cp-name-parser.y: Include parser-defs.h.
9055         (parser_fprintf): Remove declaration.
9056
9057 2018-06-01  Tom Tromey  <tom@tromey.com>
9058
9059         * cp-name-parser.y: Use %pure-parser, %lex-param, and
9060         %parse-param.
9061         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
9062         (global_result): Remove globals.
9063         (struct cpname_state): New.
9064         (yyparse): Don't declare.
9065         (yylex, yyerror): Move declarations after %union.
9066         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
9067         (make_name): Add state parameter.
9068         Update all callers.
9069         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
9070         parameter.
9071         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
9072         Update.
9073         (yylex): Add lvalp, state parameters.
9074         (yyerror): Add state parameter.
9075         (cp_demangled_name_to_comp): Update.
9076
9077 2018-06-01  Tom Tromey  <tom@tromey.com>
9078
9079         * cp-name-parser.y (parser_fprintf): Declare.
9080         (GDB_YY_REMAP_PREFIX): Define.
9081         Include yy-remap.h.  Don't redefine yy* identifiers.
9082
9083 2018-06-01  Tom Tromey  <tom@tromey.com>
9084
9085         * python/py-type.c (typy_legacy_template_argument): Update.
9086         * cp-support.h (cp_demangled_name_to_comp): Update.
9087         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
9088         parameter to be a "std::string *".
9089         (main): Update.
9090
9091 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
9092
9093         * ada-lex.l: Include "diagnostics.h" instead of
9094         "common/diagnostics.h".
9095         * unittests/environ-selftests.c: Likewise.
9096         * common/diagnostics.h: Moved to ../include.
9097
9098 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
9099
9100         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
9101         to language_mode_manual while calling breakpoint_re_set_one.
9102
9103 2018-06-01  Tom Tromey  <tom@tromey.com>
9104
9105         * valops.c (value_cast_structs, destructor_name_p): Update.
9106         * symtab.c (gdb_mangle_name): Update.
9107         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
9108         Update.
9109         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
9110         (pascal_object_print_value_fields, pascal_object_print_value):
9111         Update.
9112         * p-typeprint.c (pascal_type_print_derivation_info): Update.
9113         * linespec.c (find_methods): Update.
9114         * gdbtypes.h (type_name_no_tag): Remove.
9115         (type_name_or_error): Rename from type_name_no_tag_or_error.
9116         * gdbtypes.c (type_name_no_tag): Remove.
9117         (type_name_or_error): Rename from type_name_no_tag_or_error.
9118         (lookup_struct_elt_type, check_typedef): Update.
9119         * expprint.c (print_subexp_standard): Update.
9120         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
9121         * d-namespace.c (d_lookup_nested_symbol): Update.
9122         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
9123         (cp_print_class_member): Update.
9124         * cp-namespace.c (cp_lookup_nested_symbol): Update.
9125         * completer.c (add_struct_fields): Update.
9126         * c-typeprint.c (cp_type_print_derivation_info)
9127         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
9128         Update.
9129         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
9130         (ada_prefer_type, ada_is_exception_sym): Update.
9131
9132 2018-06-01  Tom Tromey  <tom@tromey.com>
9133
9134         * valops.c (enum_constant_from_type, value_namespace_elt)
9135         (value_maybe_namespace_elt): Update.
9136         * valarith.c (find_size_for_pointer_math): Update.
9137         * target-descriptions.c (make_gdb_type): Update.
9138         * symmisc.c (print_symbol): Update.
9139         * stabsread.c (define_symbol, read_type)
9140         (complain_about_struct_wipeout, add_undefined_type)
9141         (cleanup_undefined_types_1): Update.
9142         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
9143         (rust_range_type_p, val_print_struct, rust_print_struct_def)
9144         (rust_internal_print_type, rust_composite_type)
9145         (rust_evaluate_funcall, rust_evaluate_subexp)
9146         (rust_inclusive_range_type_p): Update.
9147         * python/py-type.c (typy_get_tag): Update.
9148         * p-typeprint.c (pascal_type_print_base): Update.
9149         * mdebugread.c (parse_symbol, parse_type): Update.
9150         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
9151         Update.
9152         * guile/scm-type.c (gdbscm_type_tag): Update.
9153         * go-lang.c (sixg_string_p): Update.
9154         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
9155         Update.
9156         * gdbtypes.h (struct main_type) <tag_name>: Remove.
9157         (TYPE_TAG_NAME): Remove.
9158         * gdbtypes.c (type_name_no_tag): Simplify.
9159         (check_typedef, check_types_equal, recursive_dump_type)
9160         (copy_type_recursive, arch_composite_type): Update.
9161         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
9162         in summary mode when needed.
9163         * eval.c (evaluate_funcall): Update.
9164         * dwarf2read.c (fixup_go_packaging, read_structure_type)
9165         (process_structure_scope, read_enumeration_type)
9166         (read_namespace_type, read_module_type, determine_prefix): Update.
9167         * cp-support.c (inspect_type): Update.
9168         * coffread.c (process_coff_symbol, decode_base_type): Update.
9169         * c-varobj.c (c_is_path_expr_parent): Update.
9170         * c-typeprint.c (c_type_print_base_struct_union): Update.
9171         (c_type_print_base_1): Update.  Print struct/class/union/enum in
9172         summary when using C language.
9173         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
9174         (gen_maybe_namespace_elt): Update.
9175         * ada-lang.c (ada_type_name): Simplify.
9176         (empty_record, ada_template_to_fixed_record_type_1)
9177         (template_to_static_fixed_type)
9178         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
9179
9180 2018-06-01  Tom Tromey  <tom@tromey.com>
9181
9182         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
9183         c_print_type.
9184         * c-typeprint.c (c_print_type_1): Add "language" parameter.
9185         (c_print_type): Update.
9186         (c_print_type): New overload.
9187         (c_type_print_varspec_prefix, c_type_print_args)
9188         (c_type_print_varspec_suffix, c_print_type_no_offsets)
9189         (c_type_print_base_struct_union, c_type_print_base_1)
9190         (cp_type_print_method_args): Add "language" parameter.
9191         (c_type_print_base): Update.
9192         * c-lang.h (c_print_type): Add new overload.
9193
9194 2018-06-01  Tom Tromey  <tom@tromey.com>
9195
9196         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
9197         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
9198
9199 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
9200
9201         * aarch64-tdep.c (aarch64_sve_register_names): New const
9202         var.
9203         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
9204         (AARCH64_SVE_Z_REGS_NUM): New define.
9205         (AARCH64_SVE_P_REGS_NUM): Likewise.
9206         (AARCH64_SVE_NUM_REGS): Likewise.
9207
9208 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
9209
9210         * nat/linux-ptrace.h [__alpha__]
9211         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
9212         definitions.
9213
9214 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
9215
9216         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
9217         the endianness selected.
9218         * NEWS: Document `set endian auto' mode operation update.
9219
9220 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
9221
9222         * Makefile.in: Add new header.
9223         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
9224         (sve_vl_from_vg): Likewise.
9225         (sve_vq_from_vl): Likewise.
9226         (sve_vl_from_vq): Likewise.
9227         (sve_vq_from_vg): Likewise.
9228         (sve_vg_from_vq): Likewise.
9229         * configure.nat: Add new c file.
9230         * nat/aarch64-sve-linux-ptrace.c: New file.
9231         * nat/aarch64-sve-linux-ptrace.h: New file.
9232
9233 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
9234
9235         * aarch64-linux-nat.c (aarch64_linux_read_description):
9236         Add parmeter zero.
9237         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
9238         Likewise.
9239         * aarch64-tdep.c (tdesc_aarch64_list): Add.
9240         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
9241         (aarch64_gdbarch_init): Add parmeter zero.
9242         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
9243         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
9244         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
9245         parmeter.
9246         * doc/gdb.texinfo: Describe SVE feature
9247         * features/aarch64-sve.c: New file.
9248
9249 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
9250
9251         PR gdb/23210
9252         * gdbarch.sh (significant_addr_bit): Default to zero when
9253         not set by target architecture.
9254         * gdbarch.c: Re-generated.
9255         * utils.c (address_significant): Update.
9256
9257 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
9258
9259         * stack.c (func_command): Remove trailing newline in call to error.
9260
9261 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9262
9263         * regcache.h (regcache_raw_collect): Remove, update callers to
9264         use regcache::raw_collect.
9265         * regcache.c (regcache_raw_collect): Remove.
9266
9267 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9268
9269         * regcache.h (regcache_raw_supply): Remove, update callers to
9270         use detached_regcache::raw_supply.
9271         * regcache.c (regcache_raw_supply): Remove.
9272
9273 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9274
9275         * regcache.h (regcache_cooked_write_part): Remove, update
9276         callers to use regcache::cooked_write_part.
9277         * regcache.c (regcache_cooked_write_part): Remove.
9278
9279 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9280
9281         * regcache.h (regcache_cooked_read_part): Remove, update callers
9282         to use readable_regcache::cooked_read_part.
9283         * regcache.c (regcache_cooked_read_part): Remove.
9284
9285 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9286
9287         * regcache.h (regcache_cooked_read_value): Remove, update
9288         callers to use readable_regcache::cooked_read_value.
9289         * regcache.c (regcache_cooked_read_value): Remove.
9290
9291 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9292
9293         * regcache.h (regcache_cooked_write): Remove, update callers to
9294         use regcache::cooked_write.
9295         * regcache.c (regcache_cooked_write): Remove.
9296
9297 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9298
9299         * regcache.h (regcache_invalidate): Remove, update callers to
9300         use detached_regcache::invalidate instead.
9301         * regcache.c (regcache_invalidate): Remove.
9302
9303 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9304
9305         * regcache.h (regcache_raw_write_part): Remove, update callers
9306         to use regcache::raw_write_part instead.
9307         * regcache.c (regcache_raw_write_part): Remove.
9308
9309 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9310
9311         * regcache.h (regcache_raw_read_part): Remove, update callers to
9312         use readable_regcache::raw_read_part instead.
9313         * regcache.c (regcache_raw_read_part): Remove.
9314
9315 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9316
9317         * regcache.h (regcache_cooked_read): Remove, update callers to
9318         use readable_regcache::cooked_read instead.
9319         * regcache.c (regcache_cooked_read): Remove.
9320
9321 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9322
9323         * regcache.h (regcache_raw_write): Remove, update callers to use
9324         regcache::raw_write instead.
9325         * regcache.c (regcache_raw_write): Remove.
9326
9327 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9328
9329         * regcache.h (regcache_raw_read): Remove, update callers to use
9330         readable_regcache::raw_read instead.
9331         * regcache.c (regcache_raw_read): Remove.
9332
9333 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9334
9335         * regcache.h (regcache_raw_update): Remove, update callers to
9336         use readable_regcache::raw_update instead.
9337         * regcache.c (regcache_raw_update): Remove.
9338
9339 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9340
9341         * regcache.h (regcache_register_status): Remove, update callers
9342         to use reg_buffer::get_register_status directly instead.
9343         * regcache.c (regcache_register_status): Remove.
9344
9345 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9346
9347         * regcache.h (regcache_get_ptid): Remove, update all callers to
9348         call regcache::ptid instead.
9349         * regcache.c (regcache_get_ptid): Remove.
9350
9351 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9352
9353         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
9354
9355 2018-05-30  Pedro Alves  <palves@redhat.com>
9356
9357         * common/common-exceptions.h (exception_rethrow): Use
9358         ATTRIBUTE_NORETURN.
9359
9360 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
9361
9362         * breakpoint.c (print_solib_event, check_status_catch_solib):
9363         Remove struct keyword in range-based for loops.
9364         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
9365         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
9366         Likewise.
9367         * linespec.c (find_superclass_methods, search_minsyms_for_name):
9368         Likewise.
9369         * symfile.c (addr_info_make_relative): Likewise.
9370         * thread.c (value_in_thread_stack_temporaries): Likewise.
9371
9372 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
9373
9374         PR gdb/16841
9375         * valops.c (value_struct_elt_for_reference): Call check_typedef on
9376         aggregate type to get its real type before accessing it.
9377
9378 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
9379
9380         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
9381         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
9382         * coff-pe-read.c (add_pe_forwarded_sym): Replace
9383         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
9384         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
9385         * jit.c (jit_breakpoint_re_set_internal): Likewise.
9386         * printcmd.c (info_address_command): Likewise.
9387
9388 2018-05-29  Tom Tromey  <tom@tromey.com>
9389
9390         * windows-nat.c (handle_exception): Update fall-through comment.
9391
9392 2018-05-29  Tom Tromey  <tom@tromey.com>
9393
9394         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
9395         (struct program_space) <added_solibs>: Now a std::vector.
9396         * breakpoint.c (print_solib_event): Update.
9397         (check_status_catch_solib): Update.
9398         * progspace.c (clear_program_space_solib_cache): Update.
9399         * solib.c (update_solib_list): Update.
9400
9401 2018-05-29  Tom Tromey  <tom@tromey.com>
9402
9403         * python/py-type.c (typy_richcompare): Update.
9404         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
9405         * gdbtypes.h (types_deeply_equal): Return bool.
9406         (types_equal): Likewise.
9407         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
9408         declare VEC.
9409         (check_types_equal): Change worklist to std::vector.  Return
9410         bool.
9411         (struct type_equality_entry): Add constructor.
9412         (compare_maybe_null_strings): Return bool.
9413         (check_types_worklist): Return bool.  Change worklist to
9414         std::vector.
9415         (types_deeply_equal): Use std::vector.
9416         (types_equal): Return bool.
9417         (compare_maybe_null_strings): Simplify.
9418
9419 2018-05-29  Tom Tromey  <tom@tromey.com>
9420
9421         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
9422
9423 2018-05-29  Tom Tromey  <tom@tromey.com>
9424
9425         * objc-lang.h: Don't include cp-support.h.
9426         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
9427         declare VEC.
9428
9429 2018-05-27  Tom Tromey  <tom@tromey.com>
9430
9431         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
9432
9433 2018-05-25  Tom Tromey  <tom@tromey.com>
9434
9435         * value.c (value::location): Initialize.
9436
9437 2018-05-25  Tom Tromey  <tom@tromey.com>
9438
9439         * dbxread.c (init_bincl_list): Remove.
9440         (bincl_list): Now a std::vector.
9441         (bincls_allocated, next_bincl): Remove.
9442         (free_bincl_list, do_free_bincl_list_cleanup)
9443         (make_cleanup_free_bincl_list): Remove.
9444         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
9445         unique_xmalloc_ptr.
9446         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
9447         (struct header_file_location): Add constructor.
9448         (add_bincl_to_list): Remove.
9449
9450 2018-05-25  Tom Tromey  <tom@tromey.com>
9451
9452         * tui/tui.c (tui_enable): Update.
9453         * mi/mi-interp.c (mi_interp::init): Update.
9454         * interps.h (class interp) <name>: New method.
9455         <m_name>: Rename from name.
9456         (~scoped_restore_interp): Update.
9457         * interps.c (interp::interp): Update.
9458         (interp_add, interp_set, interp_lookup_existing)
9459         (current_interp_named_p): Update.
9460
9461 2018-05-25  Tom Tromey  <tom@tromey.com>
9462
9463         * interps.c (interp_name): Remove.
9464         * mi/mi-interp.c (mi_interp::init): Update.
9465         * interps.h (interp_name): Remove.
9466         (~scoped_restore_interp): Update.
9467         * tui/tui.c (tui_enable): Update.
9468
9469 2018-05-25  Tom Tromey  <tom@tromey.com>
9470
9471         * utils.c (fputs_maybe_filtered): Update.
9472         * linespec.c (decode_line_full): Update.
9473         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
9474         (mi_print_breakpoint_for_event, mi_solib_loaded)
9475         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
9476         (mi_user_selected_context_changed): Update.
9477         * mi/mi-main.c (mi_execute_command): Update.
9478         * cli/cli-script.c (execute_control_command): Update.
9479         * python/python.c (execute_gdb_command): Update.
9480         * solib.c (info_sharedlibrary_command): Update.
9481         * interps.c (interp_ui_out): Remove.
9482         * interps.h (interp_ui_out): Remove.
9483
9484 2018-05-25  Tom Tromey  <tom@tromey.com>
9485
9486         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
9487         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
9488         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
9489
9490 2018-05-25  Tom Tromey  <tom@tromey.com>
9491
9492         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
9493         * interps.c (interp_exec): Use scoped_restore.
9494
9495 2018-05-25  Tom Tromey  <tom@tromey.com>
9496
9497         * remote.c (remote_target::remote_file_get): Use
9498         gdb::byte_vector.
9499         (remote_target::remote_file_put): Likewise.
9500
9501 2018-05-25  Tom Tromey  <tom@tromey.com>
9502
9503         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
9504         a std::string.
9505         (get_pe_section_index, add_pe_exported_sym): Update.
9506         (read_pe_exported_syms): Use gdb::def_vector.
9507
9508 2018-05-25  Tom Tromey  <tom@tromey.com>
9509
9510         * frame.c (remove_prev_frame): Remove.
9511         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
9512
9513 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
9514
9515         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
9516         Remove prototypes.
9517         * mips-linux-nat.c (supply_fpregset): Always call
9518         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
9519         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
9520         `mips_fill_fpregset'.
9521         * mips-linux-tdep.c (mips_supply_fpregset)
9522         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
9523         (mips_fill_fpregset_wrapper): Remove functions.
9524         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
9525         (mips_linux_fpregset): Remove variable.
9526         (mips_linux_iterate_over_regset_sections): Use
9527         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
9528         (mips_linux_o32_sigframe_init): Remove comment.
9529
9530 2018-05-25  Pedro Alves  <palves@redhat.com>
9531
9532         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
9533         (struct readahead_cache, struct packet_reg, struct
9534         remote_arch_state, class remote_state): Move higher up in the
9535         file.
9536         (remote_target::m_remote_state): Now an object instead of a pointer.
9537         (remote_target::get_remote_state): Adjust.
9538
9539 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
9540
9541         * stack.c (select_and_print_frame): Delete.
9542         (struct function_bounds): Move struct within function.
9543         (func_command): Most content moved into new function
9544         find_frame_for_function, use new function, print result, add
9545         function comment.
9546         (find_frame_for_function): New function, now returns a result.
9547
9548 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9549
9550         * stack.c (iterate_over_block_arg_vars): Fix comment.
9551         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
9552
9553 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
9554
9555         PR gdb/23203
9556         * frame.c
9557         (scoped_restore_selected_frame::scoped_restore_selected_frame):
9558         Define.
9559         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
9560         Define.
9561         * frame.h (class scoped_restore_selected_frame): New class.
9562         * stack.c (print_frame_local_vars): Remove catching and rethrowing
9563         of any exception, use scoped_restore_selected_frame to restore the
9564         frame instead.
9565
9566 2018-05-24  Pedro Alves  <palves@redhat.com>
9567
9568         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
9569         override.
9570
9571 2018-05-23  Tom Tromey  <tom@tromey.com>
9572
9573         * complaints.c (struct complaints): Remove.
9574         (symfile_complaint_book): Remove.
9575         (series): New global.
9576         (complaint_internal): Update.
9577         (clear_complaints): Update.
9578
9579 2018-05-23  Tom Tromey  <tom@tromey.com>
9580
9581         * complaints.c (counters): New global.
9582         (struct complain): Remove.
9583         (struct complaints) <root>: Remove.
9584         (complaint_sentinel): Remove.
9585         (symfile_complaint_book): Update.
9586         (find_complaint) Remove.
9587         (complaint_internal, clear_complaints): Update.
9588
9589 2018-05-23  Tom Tromey  <tom@tromey.com>
9590
9591         * complaints.c (struct complain) <file, line>: Remove.
9592         (find_complaint): Remove file, line parameters.
9593         (complaint_internal): Update.
9594
9595 2018-05-23  Tom Tromey  <tom@tromey.com>
9596
9597         * complaints.c (vcomplaint): Remove.
9598         (complaint_internal) Merge in contents of vcomplaint.
9599
9600 2018-05-23  Tom Tromey  <tom@tromey.com>
9601
9602         * complaints.c (struct complaints) <explanation>: Remove.
9603         (symfile_explanations): Remove.
9604         (symfile_complaint_book): Update.
9605         (vcomplaint): Update.
9606         (struct explanation): Remove.
9607
9608 2018-05-23  Tom Tromey  <tom@tromey.com>
9609
9610         * complaints.c (symfile_complaints): Remove.
9611         (complaint_internal): Remove "complaints" parameter.
9612         (clear_complaints, vcomplaint): Remove "c" parameter.
9613         (get_complaints): Remove.
9614         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
9615         (dwarf2_debug_line_missing_file_complaint)
9616         (dwarf2_debug_line_missing_end_sequence_complaint)
9617         (dwarf2_complex_location_expr_complaint)
9618         (dwarf2_const_value_length_mismatch_complaint)
9619         (dwarf2_section_buffer_overflow_complaint)
9620         (dwarf2_macro_malformed_definition_complaint)
9621         (dwarf2_invalid_attrib_class_complaint)
9622         (create_addrmap_from_index, dw2_symtab_iter_next)
9623         (dw2_expand_marked_cus)
9624         (dw2_debug_names_iterator::find_vec_in_debug_names)
9625         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
9626         (create_debug_type_hash_table, init_cutu_and_read_dies)
9627         (partial_die_parent_scope, add_partial_enumeration)
9628         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
9629         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
9630         (read_import_statement, read_file_scope, create_dwo_cu_reader)
9631         (create_cus_hash_table, create_dwp_hash_table)
9632         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
9633         (dwarf2_rnglists_process, dwarf2_ranges_process)
9634         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
9635         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
9636         (handle_struct_member_die, process_structure_scope)
9637         (read_array_type, read_common_block, read_module_type)
9638         (read_tag_pointer_type, read_typedef, read_base_type)
9639         (read_subrange_type, load_partial_dies, partial_die_info::read)
9640         (partial_die_info::read, partial_die_info::read)
9641         (partial_die_info::read, read_checked_initial_length_and_offset)
9642         (dwarf2_string_attr, read_formatted_entries)
9643         (dwarf_decode_line_header)
9644         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
9645         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
9646         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
9647         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
9648         (get_signatured_type, get_DW_AT_signature_type)
9649         (decode_locdesc, file_file_name, consume_improper_spaces)
9650         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
9651         (dwarf_decode_macro_bytes, dwarf_decode_macros)
9652         (dwarf2_symbol_mark_computed, set_die_type)
9653         (read_attribute_value): Update.
9654         * stap-probe.c (handle_stap_probe, get_stap_base_address):
9655         Update.
9656         * dbxread.c (unknown_symtype_complaint)
9657         (lbrac_mismatch_complaint, repeated_header_complaint)
9658         (set_namestring, function_outside_compilation_unit_complaint)
9659         (read_dbx_symtab, process_one_symbol): Update.
9660         * gdbtypes.c (stub_noname_complaint): Update.
9661         * windows-nat.c (handle_unload_dll): Update.
9662         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
9663         (decode_base_type): Update.
9664         * xcoffread.c (bf_notfound_complaint, ef_complaint)
9665         (eb_complaint, record_include_begin, record_include_end)
9666         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
9667         (process_xcoff_symbol, read_symbol)
9668         (function_outside_compilation_unit_complaint)
9669         (scan_xcoff_symtab): Update.
9670         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
9671         * buildsym.c (finish_block_internal, make_blockvector)
9672         (end_symtab_get_static_block, augment_type_symtab): Update.
9673         * dtrace-probe.c (dtrace_process_dof)
9674         (dtrace_static_probe_ops::get_probes): Update.
9675         * complaints.h (struct complaint): Don't declare.
9676         (symfile_complaints): Remove.
9677         (complaint_internal): Remove "complaints" parameter.
9678         (complaint): Likewise.
9679         (clear_complaints): Likewise.
9680         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9681         (reread_symbols): Update.
9682         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
9683         (dwarf2_frame_cache, decode_frame_entry): Update.
9684         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
9685         * objc-lang.c (lookup_objc_class, lookup_child_selector)
9686         (info_selectors_command): Update.
9687         * macrotab.c (macro_include, check_for_redefinition)
9688         (macro_undef): Update.
9689         * objfiles.c (filter_overlapping_sections): Update.
9690         * stabsread.c (invalid_cpp_abbrev_complaint)
9691         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
9692         (define_symbol, error_type, read_type, rs6000_builtin_type)
9693         (stabs_method_name_from_physname, read_member_functions)
9694         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
9695         (attach_fields_to_type, complain_about_struct_wipeout)
9696         (read_range_type, read_args, common_block_start)
9697         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
9698         Update.
9699         * mdebugread.c (index_complaint, unknown_ext_complaint)
9700         (basic_type_complaint, bad_tag_guess_complaint)
9701         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
9702         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
9703         (parse_procedure, parse_lines)
9704         (function_outside_compilation_unit_complaint)
9705         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
9706         (bad_tag_guess_complaint, reg_value_complaint): Update.
9707         * cp-support.c (demangled_name_complaint): Update.
9708         * macroscope.c (sal_macro_scope): Update.
9709         * dwarf-index-write.c (class debug_names): Update.
9710
9711 2018-05-23  Tom Tromey  <tom@tromey.com>
9712
9713         * complaints.c (clear_complaints): Remove "noisy" parameter.
9714         * complaints.h (clear_complaints): Update.
9715         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9716         (reread_symbols): Update.
9717
9718 2018-05-23  Tom Tromey  <tom@tromey.com>
9719
9720         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
9721         SUBSEQUENT_MESSAGE.
9722         (vcomplaint, clear_complaints): Update.
9723         (symfile_explanations): Remove some messages.
9724
9725 2018-05-23  Tom Tromey  <tom@tromey.com>
9726
9727         * complaints.c (internal_complaint): Remove.
9728         * complaints.h (internal_complaint): Remove.
9729
9730 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9731
9732         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
9733
9734 2018-05-22  Pedro Alves  <palves@redhat.com>
9735
9736         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
9737         (remote_fileio_badfd, remote_fileio_return_errno)
9738         (remote_fileio_return_success, remote_fileio_func_open)
9739         (remote_fileio_func_open, remote_fileio_func_close)
9740         (remote_fileio_func_read, remote_fileio_func_write)
9741         (remote_fileio_func_lseek, remote_fileio_func_rename)
9742         (remote_fileio_func_unlink, remote_fileio_func_stat)
9743         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
9744         (remote_fileio_func_isatty, remote_fileio_func_system): Add
9745         remote_target parameter.
9746         (remote_fio_func_map) <func>: Add remote_target parameter.
9747         (do_remote_fileio_request, remote_fileio_request):
9748         * remote-fileio.h (remote_fileio_request):
9749         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
9750         remote_target parameter.
9751         (remote_notif_process, handle_notification): Adjust to pass down
9752         the remote.
9753         (remote_notif_state_allocate): Add remote_target parameter.  Save
9754         it.
9755         * remote-notif.h (struct remote_target): Forward declare.
9756         (struct notif_client) <parse, ack, can_get_pending_events>: Add
9757         remote_target parameter.
9758         (struct remote_notif_state) <remote>: New field.
9759         (remote_notif_ack, remote_notif_parse): Add remote_target
9760         parameter.
9761         (remote_notif_state_allocate, remote_notif_state_allocate): Add
9762         remote_target parameter.
9763         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
9764         (threads_listing_context, rmt_thread_action, protocol_feature)
9765         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
9766         (packet_result, struct threads_listing_context, remote_state):
9767         Move definitions and declarations higher up.
9768         (remote_target) <~remote_target>: Declare.
9769         (remote_download_command_source, remote_file_put, remote_file_get)
9770         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
9771         (remote_hostio_pread_vFile, remote_hostio_send_command)
9772         (remote_hostio_set_filesystem, remote_hostio_open)
9773         (remote_hostio_close, remote_hostio_unlink, remote_state)
9774         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
9775         (get_memory_write_packet_size, get_memory_read_packet_size)
9776         (append_pending_thread_resumptions, remote_detach_1)
9777         (append_resumption, remote_resume_with_vcont)
9778         (add_current_inferior_and_thread, wait_ns, wait_as)
9779         (process_stop_reply, remote_notice_new_inferior)
9780         (process_initial_stop_replies, remote_add_thread)
9781         (btrace_sync_conf, remote_btrace_maybe_reopen)
9782         (remove_new_fork_children, kill_new_fork_children)
9783         (discard_pending_stop_replies, stop_reply_queue_length)
9784         (check_pending_events_prevent_wildcard_vcont)
9785         (discard_pending_stop_replies_in_queue, stop_reply)
9786         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
9787         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
9788         (remote_interrupt_as, remote_interrupt_ns)
9789         (remote_get_noisy_reply, remote_query_attached)
9790         (remote_add_inferior, remote_current_thread, get_current_thread)
9791         (set_thread, set_general_thread, set_continue_thread)
9792         (set_general_process, write_ptid)
9793         (remote_unpack_thread_info_response, remote_get_threadinfo)
9794         (parse_threadlist_response, remote_get_threadlist)
9795         (remote_threadlist_iterator, remote_get_threads_with_ql)
9796         (remote_get_threads_with_qxfer)
9797         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
9798         (get_offsets, remote_check_symbols, remote_supported_packet)
9799         (remote_query_supported, remote_packet_size)
9800         (remote_serial_quit_handler, remote_detach_pid)
9801         (remote_vcont_probe, remote_resume_with_hc)
9802         (send_interrupt_sequence, interrupt_query)
9803         (remote_notif_get_pending_events, fetch_register_using_p)
9804         (send_g_packet, process_g_packet, fetch_registers_using_g)
9805         (store_register_using_P, store_registers_using_G)
9806         (set_remote_traceframe, check_binary_download)
9807         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
9808         (remote_xfer_live_readonly_partial, remote_read_bytes)
9809         (remote_send_printf, remote_flash_write, readchar)
9810         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
9811         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
9812         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
9813         (extended_remote_disable_randomization, extended_remote_run)
9814         (send_environment_packet, extended_remote_environment_support)
9815         (extended_remote_set_inferior_cwd, remote_write_qxfer)
9816         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
9817         (packet_command): Now methods of ...
9818         (remote_target): ... this class.
9819         (m_remote_state) <remote_target>: New field.
9820         (struct remote_state) <stop_reply_queue,
9821         remote_async_inferior_event_token, wait_forever_enabled_p>: New
9822         fields.
9823         (remote_state::remote_state): Allocate stop_reply_queue.
9824         (remote_state): Delete global.
9825         (get_remote_state_raw): Delete.
9826         (remote_target::get_remote_state): Allocate m_remote_state on
9827         demand.
9828         (get_current_remote_target): New.
9829         (remote_ops, extended_remote_ops): Delete.
9830         (wait_forever_enabled_p, remote_async_inferior_event_token):
9831         Delete, moved to struct remote_state.
9832         (remote_target::close): Delete self.  Destruction bits split to
9833         ...
9834         (remote_target::~remote_target): ... this.
9835         (show_memory_packet_size): Adjust to use
9836         get_current_remote_target.
9837         (struct protocol_feature) <func>: Add remote_target parameter.
9838         All callers adjusted.
9839         (curr_quit_handler_target): New.
9840         (remote_serial_quit_handler): Reimplement.
9841         (remote_target::open_1): Adjust to use get_current_remote_target.
9842         Heap-allocate remote_target/extended_remote_target instances.
9843         (vcont_builder::vcont_builder): Add remote_target parameter, and
9844         save it in m_remote.  All callers adjusted.
9845         (vcont_builder::m_remote): New field.
9846         (vcont_builder::restart, vcont_builder::flush)
9847         (vcont_builder::push_action): Use it.
9848         (remote_target::commit_resume): Use it.
9849         (struct queue_iter_param) <remote>: New field.
9850         (remote_target::remove_new_fork_children): Fill in 'remote' field.
9851         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
9852         (check_pending_event_prevents_wildcard_vcont_callback)
9853         (remote_target::check_pending_events_prevent_wildcard_vcont)
9854         (remote_target::discard_pending_stop_replies)
9855         (remote_target::discard_pending_stop_replies_in_queue)
9856         (remote_target::remote_notif_remove_queued_reply): Fill in
9857         'remote' field.
9858         (remote_notif_get_pending_events): New.
9859         (remote_target::readchar, remote_target::remote_serial_write):
9860         Save/restore curr_quit_handler_target.
9861         (putpkt): New.
9862         (kill_new_fork_children): Fill in 'remote' field.
9863         (packet_command): Use get_current_remote_target, defer to
9864         remote_target method of same name.
9865         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
9866         parameter, and save it in m_remote.  All callers adjusted.
9867         (scoped_remote_fd::release): Use m_remote.
9868         (scoped_remote_fd::m_remote): New field.
9869         (remote_file_put, remote_file_get, remote_file_delete): Use
9870         get_current_remote_target, defer to remote_target method of same
9871         name.
9872         (remote_btrace_reset): Add remote_state paremeter.  Update all
9873         callers.
9874         (remote_async_inferior_event_handler). Pass down 'data'.
9875         (remote_new_objfile): Use get_current_remote_target.
9876         (remote_target::vcont_r_supported): New.
9877         (set_range_stepping): Use get_current_remote_target and
9878         remote_target::vcont_r_supported.
9879         (_initialize_remote): Don't allocate 'remote_state' and
9880         'stop_reply_queue' globals.
9881         * remote.h (struct remote_target): Forward declare.
9882         (getpkt, putpkt, remote_notif_get_pending_events): Add
9883         'remote_target' parameter.
9884
9885 2018-05-22  Pedro Alves  <palves@redhat.com>
9886
9887         * remote.c (vcont_builder): Now a class.  Make all data members
9888         private.
9889         (vcont_builder) <vcont_builder, restart, flush, push_action>:
9890         Declare methods.
9891         (vcont_builder_restart): Rename to ...
9892         (vcont_builder::restart): ... this.
9893         (vcont_builder_flush): Rename to ...
9894         (vcont_builder::flush): ... this.
9895         (vcont_builder_push_action): Rename to ...
9896         (vcont_builder::push_action): ... this.
9897         (remote_target::commit_resume): Adjust.
9898
9899 2018-05-22  Pedro Alves  <palves@redhat.com>
9900
9901         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
9902         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
9903         (get_fixed_memory_packet_size): New.
9904         (get_memory_packet_size): Use it.
9905         (set_memory_packet_size): Don't override the config size with
9906         DEFAULT_MAX_MEMORY_PACKET_SIZE.
9907         (show_memory_packet_size): Use get_fixed_memory_packet_size.
9908         Don't refer to get_memory_packet_size if not connected to a remote
9909         target.  Show "(default)" if configured size is 0.
9910
9911 2018-05-22  Pedro Alves  <palves@redhat.com>
9912
9913         * remote.c (remote_target::mourn_inferior): Move
9914         discard_pending_stop_replies call here from ...
9915         (_initialize_remote): ... here.
9916
9917 2018-05-22  Pedro Alves  <palves@redhat.com>
9918
9919         * remote.c (compare_section_command): Remove set_general_process
9920         call.
9921
9922 2018-05-22  Pedro Alves  <palves@redhat.com>
9923
9924         * remote.c (struct packet_reg, struct remote_arch_state):
9925         Move higher up in the file.
9926         (remote_state) <m_arch_states>: Store remote_arch_state values
9927         instead of remote_arch_state pointers.
9928         (remote_state::get_remote_arch_state): Adjust.
9929
9930 2018-05-22  Pedro Alves  <palves@redhat.com>
9931
9932         * remote.c: Include <unordered_map>.
9933         (remote_state): Now a class.
9934         (remote_state) <get_remote_arch_state>: Declare method.
9935         <get_remote_arch_state>: New field.
9936         (remote_arch_state) <remote_arch_state>: Declare ctor.
9937         <regs>: Now a unique_ptr.
9938         (remote_gdbarch_data_handle): Delete.
9939         (get_remote_arch_state): Delete.
9940         (remote_state::get_remote_arch_state): New.
9941         (get_remote_state): Adjust to call remote_state's
9942         get_remote_arch_state method.
9943         (init_remote_state): Delete, bits factored out to ...
9944         (remote_arch_state::remote_arch_state): ... this new method.
9945         (get_remote_packet_size, get_memory_packet_size)
9946         (process_g_packet, remote_target::fetch_registers)
9947         (remote_target::prepare_to_store, store_registers_using_G)
9948         (remote_target::store_registers, remote_target::get_trace_status):
9949         Adjust to call remote_state's method.
9950         (_initialize_remote): Remove reference to
9951         remote_gdbarch_data_handle.
9952
9953 2018-05-22  Pedro Alves  <palves@redhat.com>
9954
9955         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
9956         pread>: New method declarations.
9957         (remote_target::open_1): Adjust.
9958         (readahead_cache_invalidate): Rename to ...
9959         (readahead_cache::invalidate): ... this, and adjust to be a class
9960         method.
9961         (readahead_cache_invalidate_fd): Rename to ...
9962         (readahead_cache::invalidate_fd): ... this, and adjust to be a
9963         class method.
9964         (remote_hostio_pwrite): Adjust.
9965         (remote_hostio_pread_from_cache): Rename to ...
9966         (readahead_cache::pread): ... this, and adjust to be a class
9967         method.
9968         (remote_hostio_close): Adjust.
9969
9970 2018-05-22  Pedro Alves  <palves@redhat.com>
9971
9972         * remote.c (remote_hostio_close_cleanup): Delete.
9973         (class scoped_remote_fd): New.
9974         (remote_file_put, remote_file_get): Use it.
9975
9976 2018-05-22  Pedro Alves  <palves@redhat.com>
9977
9978         (struct vCont_action_support): Use bool and initialize all fields.
9979         (struct readahead_cache): Initialize all fields.
9980         (remote_state): Use bool and initialize all fields.
9981         (remote_state::remote_state, remote_state::~remote_state): New.
9982         (new_remote_state): Delete.
9983         (_initialize_remote): Use new to allocate remote_state.
9984
9985 2018-05-22  Pedro Alves  <palves@redhat.com>
9986             張俊芝  <zjz@zjz.name>
9987
9988         PR gdb/22973
9989         * c-exp.y: Include "c-support.h".
9990         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
9991         of tolower.  Use c_ident_is_alpha to scan names.
9992         * c-lang.c: Include "c-support.h".
9993         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
9994         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
9995         * c-support.h: New file, with bits factored out from ...
9996         * cp-name-parser.y: ... this file.
9997         Include "c-support.h".
9998         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
9999         c-support.h and renamed.
10000         (symbol_end, yylex): Adjust.
10001
10002 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
10003
10004         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
10005         parameter type to CORE_ADDR.
10006         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
10007         parameter type in declaration to CORE_ADDR.
10008         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
10009         target_auxv_search to get AT_HWCAP and use the result to get the
10010         target description.
10011         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
10012         to CORE_ADDR. Remove the cast of the return value to unsigned
10013         long. Fix error predicate of target_auxv_search.
10014         (ppc_linux_nat_target::read_description): Change the type of the
10015         hwcap variable to CORE_ADDR.
10016
10017 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
10018
10019         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
10020         if the size of fpscr is larger than 32 bits.
10021
10022 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
10023
10024         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
10025         (ppc32_linux_vsxregmap): New global.
10026         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
10027         regcache_supply_regset, and regcache_collect_regset.
10028         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
10029         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
10030         (fetch_vsx_register, store_vsx_register): Remove.
10031         (fetch_vsx_registers): Add regno parameter. Get regset using
10032         ppc_linux_vsxregset. Use regset to supply registers.
10033         (store_vsx_registers): Add regno parameter. Get regset using
10034         ppc_linux_vsxregset. Use regset to collect registers.
10035         (fetch_register): Call fetch_vsx_registers instead of
10036         fetch_vsx_register.
10037         (store_register): Call store_vsx_registers instead of
10038         store_vsx_register.
10039         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
10040         new regno parameter.
10041         (store_ppc_registers): Call store_vsx_registers with -1 for the
10042         new regno parameter.
10043         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
10044         (ppc_collect_vsxregset): Remove.
10045
10046 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
10047
10048         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
10049         offset fields.
10050         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
10051         for vector register offset fields.
10052         (ppc64_fbsd_reg_offsets): Likewise.
10053         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
10054         to vector register offset fields.
10055         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
10056         to vector register offset fields.
10057         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
10058         vector register offset fields.
10059         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
10060         initializers for vector register offset fields.
10061         (rs6000_aix64_reg_offsets): Likewise.
10062         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
10063         (ppc_supply_vrregset): Remove.
10064         (ppc_collect_vrregset): Remove.
10065         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
10066         (ppc_linux_vrregset) : New function.
10067         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
10068         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
10069         (ppc32_linux_vrregset): Remove.
10070         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
10071         and use result instead of ppc32_linux_vrregset.
10072         (ppc32_linux_reg_offsets): Remove initializers for vector register
10073         offset fields.
10074         (ppc64_linux_reg_offsets): Likewise.
10075         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
10076         * ppc-linux-nat.c: Include regset.h.
10077         (gdb_vrregset_t): Adjust comment to account for little-endian
10078         mode.
10079         (supply_vrregset, fill_vrregset): Remove.
10080         (fetch_altivec_register, store_altivec_register): Remove.
10081         (fetch_altivec_registers): Add regno parameter. Get regset using
10082         ppc_linux_vrregset. Use regset to supply registers.
10083         (store_altivec_registers): Add regno parameter. Get regset using
10084         ppc_linux_vrregset. Use regset to collect registers.
10085         (fetch_register): Call fetch_altivec_registers instead of
10086         fetch_altivec_register.
10087         (store_register): Call store_altivec_registers instead of
10088         store_altivec_register.
10089         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
10090         the new regno parameter.
10091         (store_ppc_registers): Call store_altivec_registers with -1 for
10092         the new regno parameter.
10093
10094 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
10095
10096         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
10097         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
10098         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
10099         (gdb_vrregset_t): Change array type size to
10100         PPC_LINUX_SIZEOF_VRREGSET.
10101         (gdb_vsxregset_t): Change array type size to
10102         PPC_LINUX_SIZEOF_VSXREGSET.
10103         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
10104         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
10105         PPC_LINUX_SIZEOF_VSXREGSET.
10106
10107 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
10108
10109         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
10110         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
10111         nat/ppc-linux.c.
10112         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
10113         ppc_linux_target_wordsize with tid.
10114         (ppc_linux_nat_target::read_description): Call ppc_linux_target
10115         wordsize with tid.
10116         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
10117         (ppc64_64bit_inferior_p): Add static and inline specifiers.
10118         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
10119         tid parameter. Remove static specifier.
10120         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
10121         (ppc_linux_target_wordsize): New declaration.
10122
10123 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
10124
10125         * arch/ppc-linux-common.c: New file.
10126         * arch/ppc-linux-common.h: New file.
10127         * arch/ppc-linux-tdesc.h: New file.
10128         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
10129         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
10130         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
10131         arch/ppc-linux-tdesc.h.
10132         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
10133         arch/ppc-linux-tdesc.h.
10134         (ppc_linux_nat_target::read_description): Remove target
10135         description matching code. Fill a ppc_linux_features struct and
10136         call ppc_linux_match_description with it. Move comment about ISA
10137         2.05 to ppc-linux-common.c.
10138         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
10139         arch/ppc-linux-tdesc.h.
10140         (ppc_linux_core_read_description): Remove target description
10141         matching code. Fill a ppc_linux_features struct and call
10142         ppc_linux_match_description with it.
10143         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
10144         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
10145         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
10146         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
10147         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
10148         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
10149         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
10150         (tdesc_powerpc_e500l): Remove.
10151
10152 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
10153
10154         * ada-lang.c (catch_assert_command): Pass empty string instead
10155         of NULL for excep_string argument.
10156
10157 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
10158
10159         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
10160         the width of the requested register exceeds the width of the
10161         `ptrace' data type.
10162
10163 2018-05-21  Tom Tromey  <tom@tromey.com>
10164
10165         * printcmd.c (output_command): Remove.
10166         (output_command_const): Rename to output_command.
10167         * valprint.h (output_command): Rename from output_command_const.
10168         * tracepoint.c (trace_dump_actions): Call output_command.
10169
10170 2018-05-21  Tom Tromey  <tom@tromey.com>
10171
10172         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
10173         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
10174         * ada-lang.h (create_ada_exception_catchpoint): Update.
10175         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
10176         std::string.
10177         (create_excep_cond_exprs, ~ada_catchpoint)
10178         (should_stop_exception, print_one_exception)
10179         (print_mention_exception, print_recreate_exception): Update.
10180         (ada_get_next_arg): Remove.
10181         (catch_ada_exception_command_split): Use std::string.  Change type
10182         of "excep_string", "cond_string".
10183         (catch_ada_exception_command): Update.
10184         (create_ada_exception_catchpoint): Change type of excep_string.
10185         (ada_exception_sal): Remove excep_string parameter.
10186         (~ada_catchpoint): Remove.
10187
10188 2018-05-21  Tom Tromey  <tom@tromey.com>
10189
10190         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
10191         cleanup.
10192
10193 2018-05-21  Tom Tromey  <tom@tromey.com>
10194
10195         * ada-lang.c (ada_exception_message_1, ada_exception_message):
10196         Return unique_xmalloc_ptr.
10197         (print_it_exception): Update.
10198
10199 2018-05-21  Tom Tromey  <tom@tromey.com>
10200
10201         * tracepoint.c (trace_dump_actions): Use std::string.
10202
10203 2018-05-21  Tom Tromey  <tom@tromey.com>
10204
10205         * symfile.c (reread_symbols): Use std::string for original_name.
10206
10207 2018-05-21  Tom Tromey  <tom@tromey.com>
10208
10209         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
10210         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
10211         constructor.
10212
10213 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
10214
10215         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
10216         instance to...
10217         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
10218         * objfiles.c (get_objfile_bfd_data): Allocate
10219         objfile_per_bfd_storage with obstack_new when allocating on
10220         obstack.
10221
10222 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
10223
10224         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
10225         OBSTACK_ZALLOC.
10226         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
10227         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
10228         * mdebugread.c (mdebug_build_psymtabs): Likewise.
10229         (add_pending): Likewise.
10230         (parse_symbol): Likewise.
10231         (parse_partial_symbols): Likewise.
10232         (psymtab_to_symtab_1): Likewise.
10233         (new_psymtab): Likewise.
10234         (elfmdebug_build_psymtabs): Likewise.
10235         * minsyms.c (terminate_minimal_symbol_table): Likewise.
10236         * objfiles.c (get_objfile_bfd_data): Likewise.
10237         (objfile_register_static_link): Likewise.
10238         * psymtab.c (allocate_psymtab): Likewise.
10239         * stabsread.c (read_member_functions): Likewise.
10240         * xcoffread.c (xcoff_end_psymtab): Likewise.
10241
10242 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
10243
10244         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
10245         compiler supports std::is_trivially_constructible.
10246         * common/poison.h: Include obstack.h.
10247         (IsMallocable): Define to is_trivially_constructible if the
10248         compiler supports it, define to true_type otherwise.
10249         (xobnew): New.
10250         (XOBNEW): Redefine.
10251         (xobnewvec): New.
10252         (XOBNEWVEC): Redefine.
10253         * gdb_obstack.h (obstack_zalloc): New.
10254         (OBSTACK_ZALLOC): Redefine.
10255         (obstack_calloc): New.
10256         (OBSTACK_CALLOC): Redefine.
10257         (obstack_new): New.
10258         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
10259         (gdbarch_obstack): New declaration in gdbarch.h, definition in
10260         gdbarch.c.
10261         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
10262         obstack_calloc/obstack_zalloc.
10263         (gdbarch_obstack_zalloc): Remove.
10264         * target-descriptions.c (tdesc_data_init): Use obstack_new.
10265
10266 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10267
10268         * stack.c (backtrace_command_1): Remove useless variable int i.
10269
10270 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10271
10272         * stack.c (print_frame_info): Fix comment.
10273
10274 2018-05-18  Tom Tromey  <tom@tromey.com>
10275
10276         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
10277         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
10278         (~dwarf2_per_objfile): Update
10279         (dwarf2_get_dwz_file): Use new.
10280         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
10281         unique_ptr.
10282
10283 2018-05-18  Tom Tromey  <tom@tromey.com>
10284
10285         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
10286         unique_ptr.
10287         * dwarf2read.c (struct dwp_file): Add constructor and
10288         initializers.
10289         (open_and_init_dwp_file): Return a unique_ptr.
10290         (dwarf2_per_objfile, create_dwp_hash_table)
10291         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
10292         (lookup_dwo_unit_in_dwp): Update.
10293         (open_and_init_dwp_file, get_dwp_file): Update.
10294
10295 2018-05-18  Tom Tromey  <tom@tromey.com>
10296
10297         * dwarf2read.c (dwarf2_per_objfile): Update.
10298         (struct mapped_index): Add initializers.
10299         (dwarf2_read_index): Use new.
10300         (dw2_symtab_iter_init): Update.
10301         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
10302         unique_ptr.
10303
10304 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
10305
10306         * dwarf2read.c (mapped_index) <total_size>: Remove.
10307
10308 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
10309
10310         * unittests/format_pieces-selftests.c (test_format_specifier):
10311         Add ARI comments.
10312
10313 2018-05-18  Tom Tromey  <tom@tromey.com>
10314
10315         * c-typeprint.c (maybe_print_hole): New function.
10316         (c_print_type_struct_field_offset): Update.
10317         (c_type_print_base_struct_union): Call maybe_print_hole.
10318
10319 2018-05-17  Keith Seitz  <keiths@redhat.com>
10320
10321         * breakpoint.c (build_bpstat_chain): New function, moved from
10322         bpstat_stop_status.
10323         (bpstat_stop_status): Add optional parameter, `stop_chain'.
10324         If no stop chain is passed, call build_bpstat_chain to build it.
10325         * breakpoint.h (build_bpstat_chain): Declare.
10326         (bpstat_stop_status): Move documentation here from breakpoint.c.
10327         * infrun.c (handle_signal_stop): Before eliding inlined frames,
10328         build the stop chain and pass it to skip_inline_frames.
10329         Pass this stop chain to bpstat_stop_status.
10330         * inline-frame.c: Include breakpoint.h.
10331         (stopped_by_user_bp_inline_frame): New function.
10332         (skip_inline_frames): Add parameter `stop_chain'.
10333         Move documention to inline-frame.h.
10334         If non-NULL, use stopped_by_user_bp_inline_frame to determine
10335         whether the frame should be elided.
10336         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
10337         Add moved documentation and update for new parameter.
10338
10339 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
10340
10341         PR cli/14975
10342         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10343         unittests/format_pieces-selftests.c.
10344         * common/format.h (format_piece) <operator==>: New.
10345         (format_pieces) <operator[]>: Remove.
10346         * common/format.c (format_pieces::format_pieces): Handle \e.
10347         * unittests/format_pieces-selftests.c: New.
10348
10349 2018-05-17  Tom Tromey  <tom@tromey.com>
10350
10351         PR symtab/23010:
10352         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
10353         (dw2_instantiate_symtab): Add skip_partial parameter.
10354         (dw2_find_last_source_symtab, dw2_map_expand_apply)
10355         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
10356         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
10357         (dw2_expand_symtabs_matching_one)
10358         (dw2_find_pc_sect_compunit_symtab)
10359         (dw2_debug_names_lookup_symbol)
10360         (dw2_debug_names_expand_symtabs_for_function): Update.
10361         (init_cutu_and_read_dies): Add skip_partial parameter.
10362         (process_psymtab_comp_unit, build_type_psymtabs_1)
10363         (process_skeletonless_type_unit, load_partial_comp_unit)
10364         (psymtab_to_symtab_1): Update.
10365         (load_full_comp_unit): Add skip_partial parameter.
10366         (process_imported_unit_die, dwarf2_read_addr_index)
10367         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
10368         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
10369         (read_signatured_type): Update.
10370
10371 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
10372
10373         * value.c (release_value): Remove unused variable.
10374         (record_latest_value): Likewise.
10375         (access_value_history): Likewise.
10376         (preserve_values): Likewise.
10377
10378 2018-05-17  Tom Tromey  <tom@tromey.com>
10379
10380         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
10381         Initialize.
10382
10383 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
10384
10385         PR gdb/22286
10386         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
10387         Also handle registers whose width is not a multiple of
10388         PTRACE_TYPE_RET.
10389         (linux_nat_trad_target::store_register): Likewise.
10390
10391 2018-05-16  Tom Tromey  <tom@tromey.com>
10392
10393         * gdbcore.h (core_bfd): Redefine.
10394         * corelow.c (core_target::close): Update.
10395         (core_target_open): Update.
10396         * progspace.h (struct program_space) <cbfd>: Now a
10397         gdb_bfd_ref_ptr.
10398
10399 2018-05-16  Tom Tromey  <tom@tromey.com>
10400
10401         PR cli/19551:
10402         * symfile-add-flags.h (enum symfile_add_flags)
10403         <SYMFILE_NOT_FILENAME>: New constant.
10404         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
10405         objfile name from BFD.
10406         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
10407         * minidebug.c (find_separate_debug_file_in_section): Put
10408         ".gnu_debugdata" into BFD's file name.
10409
10410 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
10411
10412         * regcache.c (regcache_read_ftype, regcache_write_ftype):
10413         Remove.
10414
10415 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
10416
10417         PR binutils/21446
10418         * aarch64-tdep.c (aarch64_analyze_prologue,
10419         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
10420         Indicate not interested in errors.
10421
10422 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
10423
10424         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
10425         Supply the MIPS_ZERO_REGNUM register.
10426
10427 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
10428
10429         * mips-tdep.c (mask_address_var): Make variable static.
10430
10431 2018-05-14  Tom Tromey  <tom@tromey.com>
10432
10433         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
10434
10435 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
10436
10437         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
10438         FXSAVE_ADDR for the mxcsr register.
10439
10440 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
10441
10442         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
10443
10444 2018-05-11  Pedro Alves  <palves@redhat.com>
10445
10446         * corelow.c (core_target) <core_target>: No longer inline.
10447         Initialize m_core_gdbarch, m_core_vec and build the section table
10448         here.
10449         <~core_target>: New.
10450         <core_gdbarch, get_core_register_section>: New methods.
10451         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
10452         factored out from ...
10453         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
10454         (core_ops): Delete.
10455         (sniff_core_bfd): Add gdbarch parameter.
10456         (core_close): Delete, merged into ...
10457         (core_target::close): ... here.  Delete self.
10458         (core_close_cleanup): Delete.
10459         (core_target_open): Allocate a core_target on the heap.  Use a
10460         unique_ptr instead of a cleanup.  Bits moved into the core_target
10461         ctor.  Adjust to use core_target methods instead of globals.
10462         (get_core_register_section): Rename to ...
10463         (core_target::get_core_register_section): ... this and adjust.
10464         (struct get_core_registers_cb_data): New.
10465         (get_core_registers_cb): Use it.  Use bool.
10466         (core_target::fetch_registers, core_target::files_info)
10467         (core_target::xfer_partial, core_target::read_description)
10468         (core_target::pid_to, core_target::thread_name): Adjust to
10469         reference class fields instead of globals.
10470         * target.h (struct target_ops_deleter, target_ops_up): New.
10471
10472 2018-05-11  Pedro Alves  <palves@redhat.com>
10473
10474         * corefile.c (core_file_command): Move to corelow.c.
10475         * corelow.c (the_core_target): Delete.
10476         (core_file_command): Moved from corefile.c.  Check exec_bfd
10477         instead of the_core_target.  Use target_detach instead of calling
10478         into the_core_target directly.
10479         (maybe_say_no_core_file_now): New.
10480         (core_target::detach): Use it.
10481         (_initialize_corelow): Remove references to the_core_target.
10482         * gdbcore.h (the_core_target): Delete.
10483
10484 2018-05-11  Tom Tromey  <tromey@redhat.com>
10485             Pedro Alves  <palves@redhat.com>
10486
10487         * corefile.c (core_bfd): Remove.
10488         * gdbcore.h (core_bfd): Now a macro.
10489         * progspace.h (struct program_space) <cbfd>: New field.
10490
10491 2018-05-11  Tom Tromey  <tom@tromey.com>
10492
10493         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
10494         gdb::def_vector.
10495
10496 2018-05-10  Tom Tromey  <tom@tromey.com>
10497
10498         * configure: Rebuild.
10499         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
10500
10501 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
10502
10503         PR server/23158:
10504         * regformats/regdat.sh: Adjust script, following the addition
10505         of the new expedite_regs parameter to init_target_desc.
10506
10507 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
10508     
10509         PR gdb/23127
10510         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
10511         set_gdbarch_significant_addr_bit.
10512         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
10513         set_gdbarch_significant_addr_bit.
10514         * utils.c (address_significant): Update to sign extend addr.
10515
10516 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
10517
10518         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
10519         (xtensa_linux_init_abi): Limit tdep->num_regs by
10520         tdep->num_nopriv_regs.
10521         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
10522         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
10523         not initialized.
10524
10525 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
10526
10527         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
10528
10529 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
10530
10531         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
10532         (I387_MXCSR_INIT_VAL): New constant.
10533         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
10534         buffer if it was supplied by the inferior.
10535         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
10536         (i387_xsave_get_clear_bv): New function.
10537         (i387_supply_xsave): Only read x87 control registers from the
10538         xsave buffer if the feature is enabled, and the state will have
10539         been written, otherwise, provide a suitable default.
10540         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
10541         including x87 control registers.  Update control registers if they
10542         have changed from the default value, and mark features as enabled
10543         as required.
10544         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
10545
10546 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
10547
10548         * spu-tdep.c (info_spu_event_command): Fix output formatting.
10549
10550 2018-05-07  Tom Tromey  <tom@tromey.com>
10551
10552         * configure: Rebuild.
10553         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
10554
10555 2018-05-07  Tom Tromey  <tom@tromey.com>
10556
10557         PR tdep/20362:
10558         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
10559         bit.  Use correct value for VDIV.
10560
10561 2018-05-04  Tom Tromey  <tom@tromey.com>
10562
10563         * configure: Rebuild.
10564         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
10565
10566 2018-05-04  Tom Tromey  <tom@tromey.com>
10567
10568         * linux-record.c (record_linux_system_call) <case
10569         RECORD_SYS_RECVFROM>: Add "break".
10570
10571 2018-05-04  Tom Tromey  <tom@tromey.com>
10572
10573         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
10574         Add missing "break".
10575         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
10576         Add missing "break".
10577
10578 2018-05-04  Tom Tromey  <tom@tromey.com>
10579
10580         * rs6000-tdep.c (ppc_process_record_op4)
10581         (ppc_process_record_op63): Add fall-through comment.
10582
10583 2018-05-04  Tom Tromey  <tom@tromey.com>
10584
10585         * i386-tdep.c (i386_process_record): Add fall-through comment.
10586
10587 2018-05-04  Tom Tromey  <tom@tromey.com>
10588
10589         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
10590         comment.
10591
10592 2018-05-04  Tom Tromey  <tom@tromey.com>
10593
10594         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
10595         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
10596         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
10597         comment.
10598         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
10599         comment.
10600         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
10601         comment.
10602
10603 2018-05-04  Tom Tromey  <tom@tromey.com>
10604
10605         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
10606
10607 2018-05-04  Tom Tromey  <tom@tromey.com>
10608
10609         * s390-tdep.c (s390_process_record): Fix fall-through comments.
10610         * xcoffread.c (scan_xcoff_symtab): Move comment later.
10611         * symfile.c (section_is_mapped): Fix fall-through comment.
10612         * stabsread.c (define_symbol, read_member_functions): Fix
10613         fall-through comment.
10614         * s390-linux-tdep.c (s390_process_record): Fix fall-through
10615         comment.
10616         * remote.c (remote_wait_as): Fix fall-through comment.
10617         * p-exp.y (yylex): Fix fall-through comment.
10618         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
10619         comment.
10620         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
10621         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
10622         * jv-exp.y (yylex): Fix fall-through comment.
10623         * go-exp.y (lex_one_token): Fix fall-through comment.
10624         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
10625         fall-through comment.
10626         * f-exp.y (yylex): Fix fall-through comment.
10627         * dwarf2read.c (process_die): Fix fall-through comments.
10628         * dbxread.c (process_one_symbol): Fix fall-through comment.
10629         * d-exp.y (lex_one_token): Fix fall-through comment.
10630         * cp-name-parser.y (yylex): Fix fall-through comment.
10631         * coffread.c (coff_symtab_read): Fix fall-through comment.
10632         * c-exp.y (lex_one_token): Fix fall-through comment.
10633         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
10634         comment.
10635         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
10636         comment.
10637
10638 2018-05-04  Tom Tromey  <tom@tromey.com>
10639
10640         PR python/22730:
10641         * NEWS: Mention gdb.execute change.
10642         * gdbcmd.h (execute_control_command): Don't declare.
10643         * python/python.c (execute_gdb_command): Use read_command_lines_1,
10644         execute_control_commands, execute_control_commands_to_string.
10645         * cli/cli-script.h (execute_control_commands)
10646         (execute_control_commands_to_string): Declare.
10647         (execute_control_command): Add from_tty parameter.
10648         * cli/cli-script.c (execute_control_commands)
10649         (execute_control_commands_to_string): New functions.
10650         (execute_user_command): Use execute_control_commands.
10651         (execute_control_command_1): Add "from_tty" parameter.  Update.
10652         (execute_control_command): Likewise.
10653
10654 2018-05-04  Tom Tromey  <tom@tromey.com>
10655
10656         PR python/22731:
10657         * NEWS: Mention that breakpoint commands are writable.
10658         * python/py-breakpoint.c (bppy_set_commands): New function.
10659         (breakpoint_object_getset) <"commands">: Use it.
10660
10661 2018-05-04  Tom Tromey  <tom@tromey.com>
10662
10663         * tracepoint.c (actions_command): Update.
10664         * mi/mi-cmd-break.c (mi_command_line_array)
10665         (mi_command_line_array_cnt, mi_command_line_array_ptr)
10666         (mi_read_next_line): Remove.
10667         (mi_cmd_break_commands): Update.
10668         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
10669         function_view.
10670         * cli/cli-script.c (get_command_line): Update.
10671         (process_next_line): Use function_view.  Constify.
10672         (recurse_read_control_structure, read_command_lines)
10673         (read_command_lines_1): Change argument types to function_view.
10674         (do_define_command, document_command): Update.
10675         * breakpoint.h (check_tracepoint_command): Don't declare.
10676         * breakpoint.c (check_tracepoint_command): Remove.
10677         (commands_command_1, create_tracepoint_from_upload): Update.
10678
10679 2018-05-04  Tom Tromey  <tom@tromey.com>
10680
10681         PR gdb/11750:
10682         * cli/cli-script.h (enum command_control_type) <define_control>:
10683         New constant.
10684         * cli/cli-script.c (multi_line_command_p): Handle define_control.
10685         (build_command_line, execute_control_command_1)
10686         (process_next_line): Likewise.
10687         (do_define_command): New function, extracted from define_command.
10688         (define_command): Use it.
10689
10690 2018-05-04  Tom Tromey  <tom@tromey.com>
10691
10692         * tracepoint.c (actions_command): Update.
10693         * cli/cli-script.h (read_command_lines): Update.
10694         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
10695         (MAX_TMPBUF): Remove define.
10696         (define_command): Use string_printf.
10697         (document_command): Likewise.
10698         * breakpoint.c (commands_command_1): Update.
10699
10700 2018-05-04  Tom Tromey  <tom@tromey.com>
10701
10702         * top.c (execute_command): Update.
10703         * cli/cli-script.h (print_command_lines): Now varargs.
10704         * cli/cli-script.c (print_command_lines): Now varargs.
10705         (execute_control_command_1) <case while_control, case if_control>:
10706         Update.
10707
10708 2018-05-04  Tom Tromey  <tom@tromey.com>
10709
10710         * tracepoint.c (all_tracepoint_actions): Rename from
10711         all_tracepoint_actions_and_cleanup.  Change return type.
10712         (actions_command, encode_actions_1, encode_actions)
10713         (trace_dump_actions, tdump_command): Update.
10714         * remote.c (remote_download_command_source): Update.
10715         * python/python.c (gdbpy_eval_from_control_command)
10716         (python_command, python_interactive_command): Update.
10717         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
10718         * guile/guile.c (guile_command)
10719         (gdbscm_eval_from_control_command, guile_command): Update.
10720         * compile/compile.c (compile_code_command)
10721         (compile_print_command, compile_to_object): Update.
10722         * cli/cli-script.h (struct command_lines_deleter): New.
10723         (counted_command_line): New typedef.
10724         (struct command_line): Add constructor, destructor.
10725         <body_list>: Remove.
10726         <body_list_0, body_list_1>: New members.
10727         (command_line_up): Remove typedef.
10728         (read_command_lines, read_command_lines_1, get_command_line):
10729         Update.
10730         (copy_command_lines): Don't declare.
10731         * cli/cli-script.c (build_command_line): Use "new".
10732         (get_command_line): Return counted_command_line.
10733         (print_command_lines, execute_user_command)
10734         (execute_control_command_1, while_command, if_command): Update.
10735         (realloc_body_list): Remove.
10736         (process_next_line, recurse_read_control_structure): Update.
10737         (read_command_lines, read_command_lines_1): Return counted_command_line.
10738         (free_command_lines): Use "delete".
10739         (copy_command_lines): Remove.
10740         (define_command, document_command, show_user_1): Update.
10741         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
10742         a counted_command_line.
10743         * breakpoint.h (counted_command_line): Remove typedef.
10744         (breakpoint_set_commands): Update.
10745         * breakpoint.c (check_no_tracepoint_commands)
10746         (validate_commands_for_breakpoint): Update.
10747         (breakpoint_set_commands): Change commands to be a
10748         counted_command_line.
10749         (commands_command_1, update_dprintf_command_list)
10750         (create_tracepoint_from_upload): Update.
10751
10752 2018-05-04  Tom Tromey  <tom@tromey.com>
10753
10754         * cli/cli-decode.h (cmd_list_element): New constructor.
10755         (~cmd_list_element): New destructor.
10756         (struct cmd_list_element): Add initializers.
10757         * cli/cli-decode.c (do_add_cmd): Use "new".
10758         (delete_cmd): Use "delete".
10759
10760 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
10761             Pedro Alves <palves@redhat.com>
10762
10763         PR breakpoints/19806 and support for PR external/20207.
10764         * NEWS: Mention Aarch64 watchpoint improvements.
10765         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
10766         watchpoints and PR external/20207 watchpoints.
10767         * nat/aarch64-linux-hw-point.c
10768         (kernel_supports_any_contiguous_range): New.
10769         (aarch64_watchpoint_offset): New.
10770         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
10771         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
10772         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
10773         (aarch64_align_watchpoint): New parameters aligned_offset_p and
10774         next_addr_orig_p.  Support PR external/20207 watchpoints.
10775         (aarch64_downgrade_regs): New.
10776         (aarch64_dr_state_insert_one_point): New parameters offset and
10777         addr_orig.
10778         (aarch64_dr_state_remove_one_point): Likewise.
10779         (aarch64_handle_breakpoint): Update caller.
10780         (aarch64_handle_aligned_watchpoint): Likewise.
10781         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
10782         aligned_offset.
10783         (aarch64_linux_set_debug_regs): Remove const from state.  Call
10784         aarch64_downgrade_regs.
10785         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
10786         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
10787         (DR_CONTROL_MASK): ... this.
10788         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
10789         (unsigned int aarch64_watchpoint_offset): New prototype.
10790         (aarch64_linux_set_debug_regs): Remove const from state.
10791         * utils.c (align_up, align_down): Move to ...
10792         * common/common-utils.c (align_up, align_down): ... here.
10793         * utils.h (align_up, align_down): Move to ...
10794         * common/common-utils.h (align_up, align_down): ... here.
10795
10796 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
10797
10798         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
10799         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
10800         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
10801         Re-implement to match the ABI as summarized in GCC's
10802         gcc/config/sparc/sparc.c.  All callers updated.
10803         (sparc32_store_arguments): Remove assertion.
10804
10805 2018-05-04  Tom Tromey  <tom@tromey.com>
10806
10807         * printcmd.c: Don't include tui.h.
10808         (decode_format): Use skip_spaces.
10809
10810 2018-05-04  Tom Tromey  <tom@tromey.com>
10811
10812         PR gdb/22619:
10813         * printcmd.c (last_count): New global.
10814         (x_command): Use saved count when repeating.
10815
10816 2018-05-04  Tom Tromey  <tom@tromey.com>
10817
10818         * nto-procfs.c (do_closedir_cleanup): Remove.
10819         (procfs_pidlist): Use gdb_dir_up.
10820         * procfs.c (do_closedir_cleanup): Remove.
10821         (proc_update_threads): Use gdb_dir_up.
10822         * common/filestuff.h (struct gdb_dir_deleter): New.
10823         (gdb_dir_up): New typedef.
10824
10825 2018-05-04  Tom Tromey  <tom@tromey.com>
10826
10827         * ada-lang.c (print_mention_exception): Use std::string.
10828
10829 2018-05-04  Tom Tromey  <tom@tromey.com>
10830
10831         * ada-lang.c (create_excep_cond_exprs): Update.
10832         (ada_exception_catchpoint_cond_string): Use std::string.
10833
10834 2018-05-04  Tom Tromey  <tom@tromey.com>
10835
10836         * ada-lang.c (xget_renaming_scope): Return std::string.
10837         (old_renaming_is_invisible): Update.
10838
10839 2018-05-04  Tom Tromey  <tom@tromey.com>
10840
10841         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
10842         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
10843
10844 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
10845
10846         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
10847
10848 2018-05-04  Tom Tromey  <tom@tromey.com>
10849
10850         * remote.c (remote_query_supported_append): Change type.
10851         (remote_check_symbols): Update.
10852
10853 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
10854
10855         PR gdb/11420
10856         * configure.ac: Prepend libpython.
10857         * python/python-config.py: Likewise.
10858         * configure: Regenerate.
10859
10860 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
10861
10862         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
10863
10864 2018-05-03  Pedro Alves  <palves@redhat.com>
10865
10866         * s390-linux-nat.c
10867         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
10868         override.  Write 'true' instead of '1'.
10869         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
10870         declaration.
10871
10872 2018-05-02  Pedro Alves  <palves@redhat.com>
10873
10874         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
10875         add_inf_child_target.
10876         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
10877         add_inf_child_target.
10878         * aix-thread.c (aix_thread_target_info): New.
10879         (aix_thread_target) <shortname, longname, doc>: Delete.
10880         <info>: New.
10881         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
10882         add_inf_child_target.
10883         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
10884         add_inf_child_target.
10885         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
10886         add_inf_child_target.
10887         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
10888         add_inf_child_target.
10889         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
10890         add_inf_child_target.
10891         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
10892         add_inf_child_target.
10893         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
10894         add_inf_child_target.
10895         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
10896         add_inf_child_target.
10897         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
10898         add_inf_child_target.
10899         * bfd-target.c (target_bfd_target_info): New.
10900         (target_bfd) <shortname, longname, doc>: Delete.
10901         <info>: New.
10902         * bsd-kvm.c (bsd_kvm_target_info): New.
10903         (bsd_kvm_target) <shortname, longname, doc>: Delete.
10904         <info>: New.
10905         (bsd_kvm_target::open): Rename to ...
10906         (bsd_kvm_target_open): ... this.  Adjust.
10907         * bsd-uthread.c (bsd_uthread_target_info): New.
10908         (bsd_uthread_target) <shortname, longname, doc>: Delete.
10909         <info>: New.
10910         * corefile.c (core_file_command): Adjust.
10911         * corelow.c (core_target_info): New.
10912         (core_target) <shortname, longname, doc>: Delete.
10913         <info>: New.
10914         (core_target::open): Rename to ...
10915         (core_target_open): ... this.  Adjust.
10916         * ctf.c (ctf_target_info): New.
10917         (ctf_target) <shortname, longname, doc>: Delete.
10918         <info>: New.
10919         (ctf_target::open): Rename to ...
10920         (ctf_target_open): ... this.
10921         (_initialize_ctf): Adjust.
10922         * exec.c (exec_target_info): New.
10923         (exec_target) <shortname, longname, doc>: Delete.
10924         <info>: New.
10925         (exec_target::open): Rename to ...
10926         (exec_target_open): ... this.
10927         * gdbcore.h (core_target_open): Declare.
10928         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
10929         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
10930         add_inf_child_target.
10931         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
10932         add_inf_child_target.
10933         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
10934         add_inf_child_target.
10935         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
10936         add_inf_child_target.
10937         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
10938         add_inf_child_target.
10939         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
10940         add_inf_child_target.
10941         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
10942         add_inf_child_target.
10943         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
10944         add_inf_child_target.
10945         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
10946         add_inf_child_target.
10947         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
10948         add_inf_child_target.
10949         * inf-child.c (inf_child_target_info): New.
10950         (inf_child_target::info): New.
10951         (inf_child_open_target): Remove 'target' parameter.  Use
10952         get_native_target instead.
10953         (inf_child_target::open): Delete.
10954         (add_inf_child_target): New.
10955         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
10956         Delete.
10957         <info>: New.
10958         (add_inf_child_target): Declare.
10959         (inf_child_open_target): Declare.
10960         * linux-thread-db.c (thread_db_target_info): New.
10961         (thread_db_target) <shortname, longname, doc>: Delete.
10962         <info>: New.
10963         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
10964         add_inf_child_target.
10965         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
10966         add_inf_child_target.
10967         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
10968         add_inf_child_target.
10969         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
10970         add_inf_child_target.
10971         * make-target-delegates (print_class): Adjust.
10972         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
10973         add_inf_child_target.
10974         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
10975         add_inf_child_target.
10976         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
10977         add_inf_child_target.
10978         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
10979         add_inf_child_target.
10980         * nto-procfs.c (nto_native_target_info): New.
10981         (nto_procfs_target_native) <shortname, longname, doc>:
10982         Delete.
10983         <info>: New.
10984         (nto_procfs_target_info): New.
10985         (nto_procfs_target_procfs) <shortname, longname, doc>:
10986         Delete.
10987         <info>: New.
10988         (init_procfs_targets): Adjust.
10989         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
10990         add_inf_child_target.
10991         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
10992         add_inf_child_target.
10993         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
10994         add_inf_child_target.
10995         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
10996         add_inf_child_target.
10997         * ravenscar-thread.c (ravenscar_target_info): New.
10998         (ravenscar_thread_target) <shortname, longname, doc>:
10999         Delete.
11000         <info>: New.
11001         * record-btrace.c (record_btrace_target_info):
11002         (record_btrace_target) <shortname, longname, doc>: Delete.
11003         <info>: New.
11004         (record_btrace_target::open): Rename to ...
11005         (record_btrace_target_open): ... this.  Adjust.
11006         * record-full.c (record_longname, record_doc): New.
11007         (record_full_base_target) <shortname, longname, doc>: Delete.
11008         <info>: New.
11009         (record_full_target_info): New.
11010         (record_full_target): <shortname>: Delete.
11011         <info>: New.
11012         (record_full_core_open_1, record_full_open_1): Update comments.
11013         (record_full_base_target::open): Rename to ...
11014         (record_full_open): ... this.
11015         (cmd_record_full_restore): Update.
11016         (_initialize_record_full): Update.
11017         * remote-sim.c (remote_sim_target_info): New.
11018         (gdbsim_target) <shortname, longname, doc>: Delete.
11019         <info>: New.
11020         (gdbsim_target::open): Rename to ...
11021         (gdbsim_target_open): ... this.
11022         (_initialize_remote_sim): Adjust.
11023         * remote.c (remote_doc): New.
11024         (remote_target_info): New.
11025         (remote_target) <shortname, longname, doc>: Delete.
11026         <info>: New.
11027         (extended_remote_target_info): New.
11028         (extended_remote_target) <shortname, longname, doc>: Delete.
11029         <info>: New.
11030         (remote_target::open_1): Make static.  Adjust.
11031         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
11032         * s390-linux-nat.c (_initialize_s390_nat): Use
11033         add_inf_child_target.
11034         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
11035         add_inf_child_target.
11036         * sol-thread.c (thread_db_target_info): New.
11037         (sol_thread_target) <shortname, longname, doc>: Delete.
11038         <info>: New.
11039         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
11040         add_inf_child_target.
11041         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
11042         add_inf_child_target.
11043         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
11044         add_inf_child_target.
11045         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
11046         add_inf_child_target.
11047         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
11048         add_inf_child_target.
11049         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
11050         add_inf_child_target.
11051         * spu-linux-nat.c (_initialize_spu_nat): Use
11052         add_inf_child_target.
11053         * spu-multiarch.c (spu_multiarch_target_info): New.
11054         (spu_multiarch_target) <shortname, longname, doc>: Delete.
11055         <info>: New.
11056         * target-delegates.c: Regenerate.
11057         * target.c: Include <unordered_map>.
11058         (target_ops_p): Delete.
11059         (DEF_VEC_P(target_ops_p)): Delete.
11060         (target_factories): New.
11061         (test_target_info): New.
11062         (test_target_ops::info): New.
11063         (open_target): Adjust to use target_factories.
11064         (add_target_with_completer): Rename to ...
11065         (add_target): ... this.  Change prototype.  Register target_info
11066         and open callback in target_factories.  Register target_info in
11067         command context instead of target_ops.
11068         (add_target): Delete old implementation.
11069         (add_deprecated_target_alias): Change prototype.  Adjust.
11070         (the_native_target): New.
11071         (set_native_target, get_native_target): New.
11072         (find_default_run_target): Use the_native_target.
11073         (find_attach_target, find_run_target): Simplify.
11074         (target_ops::open): Delete.
11075         (dummy_target_info): New.
11076         (dummy_target::shortname, dummy_target::longname)
11077         (dummy_target::doc): Delete.
11078         (dummy_target::info): New.
11079         (debug_target::shortname, debug_target::longname)
11080         (debug_target::doc): Delete.
11081         (debug_target::info): New.
11082         * target.h (struct target_info): New.
11083         (target_ops::~target_ops): Add comment.
11084         (target_ops::info): New.
11085         (target_ops::shortname, target_ops::longname, target_ops::doc): No
11086         longer virtual.  Implement in terms of target_info.
11087         (set_native_target, get_native_target): Declare.
11088         (target_open_ftype): New.
11089         (add_target, add_target_with_completer)
11090         (add_deprecated_target_alias): Change prototype.
11091         (test_target) <shortname, longname, doc>: Delete.
11092         <info>: New.
11093         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
11094         add_inf_child_target.
11095         * tracefile-tfile.c (tfile_target_info): New.
11096         (tfile_target) <shortname, longname, doc>: Delete.
11097         <info>: New.
11098         (tfile_target::open): Rename to ...
11099         (tfile_target_open): ... this.
11100         (_initialize_tracefile_tfile): Adjust.
11101         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
11102         add_inf_child_target.
11103         * windows-nat.c (_initialize_windows_nat): Use
11104         add_inf_child_target.
11105         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
11106         add_inf_child_target.
11107
11108 2018-05-02  Pedro Alves  <palves@redhat.com>
11109
11110         * linux-nat.h (linux_nat_target) <low_new_thread,
11111         low_delete_thread, low_new_fork, low_forget_process,
11112         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
11113         New virtual methods.
11114         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
11115         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
11116         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
11117         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
11118         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
11119         Delete.
11120         * linux-fork.c (delete_fork): Adjust to call low method.
11121         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
11122         (linux_nat_new_fork, linux_nat_forget_process_hook)
11123         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
11124         (linux_nat_status_is_event):
11125         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
11126         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
11127         to call low method.
11128         (sigtrap_is_event): Rename to ...
11129         (linux_nat_target::low_status_is_event): ... this.
11130         (linux_nat_set_status_is_event): Delete.
11131         (save_stop_reason, linux_nat_wait_1)
11132         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
11133         low methods.
11134         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
11135         (linux_nat_set_new_fork, linux_nat_set_forget_process)
11136         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
11137         (linux_nat_set_prepare_to_resume): Delete.
11138         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
11139         low virtual methods.
11140         * amd64-linux-nat.c: Likewise.
11141         * arm-linux-nat.c: Likewise.
11142         * i386-linux-nat.c: Likewise.
11143         * ia64-linux-nat.c: Likewise.
11144         * mips-linux-nat.c: Likewise.
11145         * ppc-linux-nat.c: Likewise.
11146         * s390-linux-nat.c: Likewise.
11147         * sparc64-linux-nat.c: Likewise.
11148         * x86-linux-nat.c: Likewise.
11149         * x86-linux-nat.h: Include "nat/x86-linux.h".
11150         (x86_linux_nat_target) <low_new_fork, low_forget_process,
11151         low_prepare_to_resume, low_new_thread, low_delete_thread>:
11152         Override methods.
11153
11154 2018-05-02  Pedro Alves  <palves@redhat.com>
11155
11156         * target.h (target_ops)
11157         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
11158         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
11159         stopped_by_watchpoint, have_continuable_watchpoint,
11160         stopped_data_address, watchpoint_addr_within_range,
11161         can_accel_watchpoint_condition, can_run, thread_alive,
11162         has_all_memory, has_memory, has_stack, has_registers,
11163         has_execution, can_async_p, is_async_p, supports_non_stop,
11164         always_non_stop_p, can_execute_reverse, supports_multi_process,
11165         supports_enable_disable_tracepoint,
11166         supports_disable_randomization, supports_string_tracing,
11167         supports_evaluation_of_breakpoint_conditions,
11168         can_run_breakpoint_commands, filesystem_is_local,
11169         can_download_tracepoint, get_trace_state_variable_value,
11170         set_trace_notes, get_tib_address, use_agent, can_use_agent,
11171         record_is_replaying, record_will_replay,
11172         augmented_libraries_svr4_read>: Adjust to return bool.
11173         * aarch64-linux-nat.c: All implementations adjusted.
11174         * aix-thread.c: All implementations adjusted.
11175         * arm-linux-nat.c: All implementations adjusted.
11176         * breakpoint.c: All implementations adjusted.
11177         * bsd-kvm.c: All implementations adjusted.
11178         * bsd-uthread.c: All implementations adjusted.
11179         * corelow.c: All implementations adjusted.
11180         * ctf.c: All implementations adjusted.
11181         * darwin-nat.c: All implementations adjusted.
11182         * darwin-nat.h: All implementations adjusted.
11183         * exec.c: All implementations adjusted.
11184         * fbsd-nat.c: All implementations adjusted.
11185         * fbsd-nat.h: All implementations adjusted.
11186         * gnu-nat.c: All implementations adjusted.
11187         * gnu-nat.h: All implementations adjusted.
11188         * go32-nat.c: All implementations adjusted.
11189         * ia64-linux-nat.c: All implementations adjusted.
11190         * inf-child.c: All implementations adjusted.
11191         * inf-child.h: All implementations adjusted.
11192         * inf-ptrace.c: All implementations adjusted.
11193         * inf-ptrace.h: All implementations adjusted.
11194         * linux-nat.c: All implementations adjusted.
11195         * linux-nat.h: All implementations adjusted.
11196         * mips-linux-nat.c: All implementations adjusted.
11197         * nto-procfs.c: All implementations adjusted.
11198         * ppc-linux-nat.c: All implementations adjusted.
11199         * procfs.c: All implementations adjusted.
11200         * ravenscar-thread.c: All implementations adjusted.
11201         * record-btrace.c: All implementations adjusted.
11202         * record-full.c: All implementations adjusted.
11203         * remote-sim.c: All implementations adjusted.
11204         * remote.c: All implementations adjusted.
11205         * s390-linux-nat.c: All implementations adjusted.
11206         * sol-thread.c: All implementations adjusted.
11207         * spu-multiarch.c: All implementations adjusted.
11208         * target-delegates.c: All implementations adjusted.
11209         * target.c: All implementations adjusted.
11210         * target.h: All implementations adjusted.
11211         * tracefile-tfile.c: All implementations adjusted.
11212         * tracefile.c: All implementations adjusted.
11213         * tracefile.h: All implementations adjusted.
11214         * windows-nat.c: All implementations adjusted.
11215         * x86-linux-nat.h: All implementations adjusted.
11216         * x86-nat.h: All implementations adjusted.
11217
11218 2018-05-02  Pedro Alves  <palves@redhat.com>
11219
11220         * make-target-delegates (scan_target_h): Don't trim lines here.
11221         Replace sequences of tabs and/or whitespace with a single
11222         whitespace.
11223         (top level, parsing methods): Trim each line before processing it
11224         here.
11225
11226 2018-05-02  Pedro Alves  <palves@redhat.com>
11227             John Baldwin  <jhb@freebsd.org>
11228
11229         * target.h (enum strata) <debug_stratum>: New.
11230         (struct target_ops) <all delegation methods>: Replace by C++
11231         virtual methods, and drop "to_" prefix.  All references updated
11232         throughout.
11233         <to_shortname, to_longname, to_doc, to_data,
11234         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
11235         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
11236         virtual methods.  All references updated throughout.
11237         <can_attach, supports_terminal_ours, can_create_inferior,
11238         get_thread_control_capabilities, attach_no_wait>: New
11239         virtual methods.
11240         <insert_breakpoint, remove_breakpoint>: Now
11241         TARGET_DEFAULT_NORETURN methods.
11242         <info_proc>: Now returns bool.
11243         <to_magic>: Delete.
11244         (OPS_MAGIC): Delete.
11245         (current_target): Delete.  All references replaced by references
11246         to ...
11247         (target_stack): ... this.  New.
11248         (target_shortname, target_longname): Adjust.
11249         (target_can_run): Now a function declaration.
11250         (default_child_has_all_memory, default_child_has_memory)
11251         (default_child_has_stack, default_child_has_registers)
11252         (default_child_has_execution): Remove target_ops parameter.
11253         (complete_target_initialization): Delete.
11254         (memory_breakpoint_target): New template class.
11255         (test_target_ops): Refactor as a C++ class with virtual methods.
11256         * make-target-delegates (NAME_PART): Tighten.
11257         (POINTER_PART, CP_SYMBOL): New.
11258         (SIMPLE_RETURN_PART): Reimplement.
11259         (VEC_RETURN_PART): Expect less.
11260         (RETURN_PART, VIRTUAL_PART): New.
11261         (METHOD): Adjust to C++ virtual methods.
11262         (scan_target_h): Remove reference to C99.
11263         (dname): Output "target_ops::" prefix.
11264         (write_function_header): Adjust to output a C++ class method.
11265         (write_declaration): New.
11266         (write_delegator): Adjust to output a C++ class method.
11267         (tdname): Output "dummy_target::" prefix.
11268         (write_tdefault, write_debugmethod): Adjust to output a C++ class
11269         method.
11270         (tdefault_names, debug_names): Delete.
11271         (return_types, tdefaults, styles, argtypes_array): New.
11272         (top level): All methods are delegators.
11273         (print_class): New.
11274         (top level): Print dummy_target and debug_target classes.
11275         * target-delegates.c: Regenerate.
11276         * target-debug.h (target_debug_print_enum_info_proc_what)
11277         (target_debug_print_thread_control_capabilities)
11278         (target_debug_print_thread_info_p): New.
11279         * target.c (dummy_target): Delete.
11280         (the_dummy_target, the_debug_target): New.
11281         (target_stack): Now extern.
11282         (set_targetdebug): Push/unpush debug target.
11283         (default_child_has_all_memory, default_child_has_memory)
11284         (default_child_has_stack, default_child_has_registers)
11285         (default_child_has_execution): Remove target_ops parameter.
11286         (complete_target_initialization): Delete.
11287         (add_target_with_completer): No longer call
11288         complete_target_initialization.
11289         (target_supports_terminal_ours): Use regular delegation.
11290         (update_current_target): Delete.
11291         (push_target): No longer check magic number.  Don't call
11292         update_current_target.
11293         (unpush_target): Don't call update_current_target.
11294         (target_is_pushed): No longer check magic number.
11295         (target_require_runnable): Skip for all stratums over
11296         process_stratum.
11297         (target_ops::info_proc): New.
11298         (target_info_proc): Use find_target_at and
11299         find_default_run_target.
11300         (target_supports_disable_randomization): Use regular delegation.
11301         (target_get_osdata): Use find_target_at.
11302         (target_ops::open, target_ops::close, target_ops::can_attach)
11303         (target_ops::attach, target_ops::can_create_inferior)
11304         (target_ops::create_inferior, target_ops::can_run)
11305         (target_can_run): New.
11306         (default_fileio_target): Use regular delegation.
11307         (target_ops::fileio_open, target_ops::fileio_pwrite)
11308         (target_ops::fileio_pread, target_ops::fileio_fstat)
11309         (target_ops::fileio_close, target_ops::fileio_unlink)
11310         (target_ops::fileio_readlink): New.
11311         (target_fileio_open_1, target_fileio_unlink)
11312         (target_fileio_readlink): Always call the target method.  Handle
11313         FILEIO_ENOSYS.
11314         (return_zero, return_zero_has_execution): Delete.
11315         (init_dummy_target): Delete.
11316         (dummy_target::dummy_target, dummy_target::shortname)
11317         (dummy_target::longname, dummy_target::doc)
11318         (debug_target::debug_target, debug_target::shortname)
11319         (debug_target::longname, debug_target::doc): New.
11320         (target_supports_delete_record): Use regular delegation.
11321         (setup_target_debug): Delete.
11322         (maintenance_print_target_stack): Skip debug_stratum.
11323         (initialize_targets): Instantiate the_dummy_target and
11324         the_debug_target.
11325         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
11326         use target_stack.
11327         (target_auxv_search, fprint_target_auxv): Adjust.
11328         (info_auxv_command): Adjust to use target_stack.
11329         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
11330         * exceptions.c (print_flush): Handle a NULL target_stack.
11331         * regcache.c (target_ops_no_register): Refactor as class with
11332         virtual methods.
11333
11334         * exec.c (exec_target): New class.
11335         (exec_ops): Now an exec_target.
11336         (exec_open, exec_close_1, exec_get_section_table)
11337         (exec_xfer_partial, exec_files_info, exec_has_memory)
11338         (exec_make_note_section): Refactor as exec_target methods.
11339         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
11340         Delete.
11341         (exec_target::find_memory_regions): New.
11342         (_initialize_exec): Don't call init_exec_ops.
11343         * gdbcore.h (exec_file_clear): Delete.
11344
11345         * corefile.c (core_target): Delete.
11346         (core_file_command): Adjust.
11347         * corelow.c (core_target): New class.
11348         (the_core_target): New.
11349         (core_close): Remove target_ops parameter.
11350         (core_close_cleanup): Adjust.
11351         (core_target::close): New.
11352         (core_open, core_detach, get_core_registers, core_files_info)
11353         (core_xfer_partial, core_thread_alive, core_read_description)
11354         (core_pid_to_str, core_thread_name, core_has_memory)
11355         (core_has_stack, core_has_registers, core_info_proc): Rework as
11356         core_target methods.
11357         (ignore, core_remove_breakpoint, init_core_ops): Delete.
11358         (_initialize_corelow): Initialize the_core_target.
11359         * gdbcore.h (core_target): Delete.
11360         (the_core_target): New.
11361
11362         * ctf.c: (ctf_target): New class.
11363         (ctf_ops): Now a ctf_target.
11364         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
11365         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
11366         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
11367         methods.
11368         (init_ctf_ops): Delete.
11369         (_initialize_ctf): Don't call it.
11370         * tracefile-tfile.c (tfile_target): New class.
11371         (tfile_ops): Now a tfile_target.
11372         (tfile_open, tfile_close, tfile_files_info)
11373         (tfile_get_tracepoint_status, tfile_trace_find)
11374         (tfile_fetch_registers, tfile_xfer_partial)
11375         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
11376         Refactor as tfile_target methods.
11377         (tfile_xfer_partial_features): Remove target_ops parameter.
11378         (init_tfile_ops): Delete.
11379         (_initialize_tracefile_tfile): Don't call it.
11380         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
11381         (tracefile_has_stack, tracefile_has_registers)
11382         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
11383         tracefile_target methods.
11384         (init_tracefile_ops): Delete.
11385         (tracefile_target::tracefile_target): New.
11386         * tracefile.h: Include "target.h".
11387         (tracefile_target): New class.
11388         (init_tracefile_ops): Delete.
11389
11390         * spu-multiarch.c (spu_multiarch_target): New class.
11391         (spu_ops): Now a spu_multiarch_target.
11392         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
11393         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
11394         (spu_search_memory, spu_mourn_inferior): Refactor as
11395         spu_multiarch_target methods.
11396         (init_spu_ops): Delete.
11397         (_initialize_spu_multiarch): Remove references to init_spu_ops,
11398         complete_target_initialization.
11399
11400         * ravenscar-thread.c (ravenscar_thread_target): New class.
11401         (ravenscar_ops): Now a ravenscar_thread_target.
11402         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
11403         (ravenscar_thread_alive, ravenscar_pid_to_str)
11404         (ravenscar_fetch_registers, ravenscar_store_registers)
11405         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
11406         (ravenscar_stopped_by_hw_breakpoint)
11407         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
11408         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
11409         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
11410         methods.
11411         (init_ravenscar_thread_ops): Delete.
11412         (_initialize_ravenscar): Remove references to
11413         init_ravenscar_thread_ops and complete_target_initialization.
11414
11415         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
11416         (bsd_uthread_target): New class.
11417         (bsd_uthread_ops): Now a bsd_uthread_target.
11418         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
11419         (bsd_uthread_close, bsd_uthread_mourn_inferior)
11420         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
11421         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
11422         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
11423         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
11424         (bsd_uthread_target): Delete function.
11425         (_initialize_bsd_uthread): Remove reference to
11426         complete_target_initialization.
11427
11428         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
11429         (target_bfd): ... this new class.
11430         (target_bfd_xfer_partial, target_bfd_get_section_table)
11431         (target_bfd_close): Refactor as target_bfd methods.
11432         (target_bfd::~target_bfd): New.
11433         (target_bfd_reopen): Adjust.
11434         (target_bfd::close): New.
11435
11436         * record-btrace.c (record_btrace_target): New class.
11437         (record_btrace_ops): Now a record_btrace_target.
11438         (record_btrace_open, record_btrace_stop_recording)
11439         (record_btrace_disconnect, record_btrace_close)
11440         (record_btrace_async, record_btrace_info)
11441         (record_btrace_insn_history, record_btrace_insn_history_range)
11442         (record_btrace_insn_history_from, record_btrace_call_history)
11443         (record_btrace_call_history_range)
11444         (record_btrace_call_history_from, record_btrace_record_method)
11445         (record_btrace_is_replaying, record_btrace_will_replay)
11446         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
11447         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
11448         (record_btrace_store_registers, record_btrace_prepare_to_store)
11449         (record_btrace_to_get_unwinder)
11450         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
11451         (record_btrace_commit_resume, record_btrace_wait)
11452         (record_btrace_stop, record_btrace_can_execute_reverse)
11453         (record_btrace_stopped_by_sw_breakpoint)
11454         (record_btrace_supports_stopped_by_sw_breakpoint)
11455         (record_btrace_stopped_by_hw_breakpoint)
11456         (record_btrace_supports_stopped_by_hw_breakpoint)
11457         (record_btrace_update_thread_list, record_btrace_thread_alive)
11458         (record_btrace_goto_begin, record_btrace_goto_end)
11459         (record_btrace_goto, record_btrace_stop_replaying_all)
11460         (record_btrace_execution_direction)
11461         (record_btrace_prepare_to_generate_core)
11462         (record_btrace_done_generating_core): Refactor as
11463         record_btrace_target methods.
11464         (init_record_btrace_ops): Delete.
11465         (_initialize_record_btrace): Remove reference to
11466         init_record_btrace_ops.
11467         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
11468         the execution_direction global.
11469         (record_full_base_target, record_full_target)
11470         (record_full_core_target): New classes.
11471         (record_full_ops): Now a record_full_target.
11472         (record_full_core_ops): Now a record_full_core_target.
11473         (record_full_target::detach, record_full_target::disconnect)
11474         (record_full_core_target::disconnect)
11475         (record_full_target::mourn_inferior, record_full_target::kill):
11476         New.
11477         (record_full_open, record_full_close, record_full_async): Refactor
11478         as methods of the record_full_base_target class.
11479         (record_full_resume, record_full_commit_resume): Refactor
11480         as methods of the record_full_target class.
11481         (record_full_wait, record_full_stopped_by_watchpoint)
11482         (record_full_stopped_data_address)
11483         (record_full_stopped_by_sw_breakpoint)
11484         (record_full_supports_stopped_by_sw_breakpoint)
11485         (record_full_stopped_by_hw_breakpoint)
11486         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
11487         methods of the record_full_base_target class.
11488         (record_full_store_registers, record_full_xfer_partial)
11489         (record_full_insert_breakpoint, record_full_remove_breakpoint):
11490         Refactor as methods of the record_full_target class.
11491         (record_full_can_execute_reverse, record_full_get_bookmark)
11492         (record_full_goto_bookmark, record_full_execution_direction)
11493         (record_full_record_method, record_full_info, record_full_delete)
11494         (record_full_is_replaying, record_full_will_replay)
11495         (record_full_goto_begin, record_full_goto_end, record_full_goto)
11496         (record_full_stop_replaying): Refactor as methods of the
11497         record_full_base_target class.
11498         (record_full_core_resume, record_full_core_kill)
11499         (record_full_core_fetch_registers)
11500         (record_full_core_prepare_to_store)
11501         (record_full_core_store_registers, record_full_core_xfer_partial)
11502         (record_full_core_insert_breakpoint)
11503         (record_full_core_remove_breakpoint)
11504         (record_full_core_has_execution): Refactor
11505         as methods of the record_full_core_target class.
11506         (record_full_base_target::supports_delete_record): New.
11507         (init_record_full_ops): Delete.
11508         (init_record_full_core_ops): Delete.
11509         (record_full_save): Refactor as method of the
11510         record_full_base_target class.
11511         (_initialize_record_full): Remove references to
11512         init_record_full_ops and init_record_full_core_ops.
11513
11514         * remote.c (remote_target, extended_remote_target): New classes.
11515         (remote_ops): Now a remote_target.
11516         (extended_remote_ops): Now an extended_remote_target.
11517         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
11518         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
11519         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
11520         (remote_pass_signals, remote_set_syscall_catchpoint)
11521         (remote_program_signals, )
11522         (remote_thread_always_alive): Remove target_ops parameter.
11523         (remote_thread_alive, remote_thread_name)
11524         (remote_update_thread_list, remote_threads_extra_info)
11525         (remote_static_tracepoint_marker_at)
11526         (remote_static_tracepoint_markers_by_strid)
11527         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
11528         (remote_open): Refactor as methods of remote_target.
11529         (extended_remote_open, extended_remote_detach)
11530         (extended_remote_attach, extended_remote_post_attach):
11531         (extended_remote_supports_disable_randomization)
11532         (extended_remote_create_inferior): : Refactor as method of
11533         extended_remote_target.
11534         (remote_set_permissions, remote_open_1, remote_detach)
11535         (remote_follow_fork, remote_follow_exec, remote_disconnect)
11536         (remote_resume, remote_commit_resume, remote_stop)
11537         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
11538         (remote_terminal_ours, remote_wait, remote_fetch_registers)
11539         (remote_prepare_to_store, remote_store_registers)
11540         (remote_flash_erase, remote_flash_done, remote_files_info)
11541         (remote_kill, remote_mourn, remote_insert_breakpoint)
11542         (remote_remove_breakpoint, remote_insert_watchpoint)
11543         (remote_watchpoint_addr_within_range)
11544         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
11545         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
11546         (remote_supports_stopped_by_sw_breakpoint)
11547         (remote_stopped_by_hw_breakpoint)
11548         (remote_supports_stopped_by_hw_breakpoint)
11549         (remote_stopped_by_watchpoint, remote_stopped_data_address)
11550         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
11551         (remote_verify_memory): Refactor as methods of remote_target.
11552         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
11553         parameter.
11554         (remote_xfer_partial, remote_get_memory_xfer_limit)
11555         (remote_search_memory, remote_rcmd, remote_memory_map)
11556         (remote_pid_to_str, remote_get_thread_local_address)
11557         (remote_get_tib_address, remote_read_description): Refactor as
11558         methods of remote_target.
11559         (remote_target::fileio_open, remote_target::fileio_pwrite)
11560         (remote_target::fileio_pread, remote_target::fileio_close): New.
11561         (remote_hostio_readlink, remote_hostio_fstat)
11562         (remote_filesystem_is_local, remote_can_execute_reverse)
11563         (remote_supports_non_stop, remote_supports_disable_randomization)
11564         (remote_supports_multi_process, remote_supports_cond_breakpoints)
11565         (remote_supports_enable_disable_tracepoint)
11566         (remote_supports_string_tracing)
11567         (remote_can_run_breakpoint_commands, remote_trace_init)
11568         (remote_download_tracepoint, remote_can_download_tracepoint)
11569         (remote_download_trace_state_variable, remote_enable_tracepoint)
11570         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
11571         (remote_trace_start, remote_get_trace_status)
11572         (remote_get_tracepoint_status, remote_trace_stop)
11573         (remote_trace_find, remote_get_trace_state_variable_value)
11574         (remote_save_trace_data, remote_get_raw_trace_data)
11575         (remote_set_disconnected_tracing, remote_core_of_thread)
11576         (remote_set_circular_trace_buffer, remote_traceframe_info)
11577         (remote_get_min_fast_tracepoint_insn_len)
11578         (remote_set_trace_buffer_size, remote_set_trace_notes)
11579         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
11580         (remote_disable_btrace, remote_teardown_btrace)
11581         (remote_read_btrace, remote_btrace_conf)
11582         (remote_augmented_libraries_svr4_read, remote_load)
11583         (remote_pid_to_exec_file, remote_can_do_single_step)
11584         (remote_execution_direction, remote_thread_handle_to_thread_info):
11585         Refactor as methods of remote_target.
11586         (init_remote_ops, init_extended_remote_ops): Delete.
11587         (remote_can_async_p, remote_is_async_p, remote_async)
11588         (remote_thread_events, remote_upload_tracepoints)
11589         (remote_upload_trace_state_variables): Refactor as methods of
11590         remote_target.
11591         (_initialize_remote): Remove references to init_remote_ops and
11592         init_extended_remote_ops.
11593
11594         * remote-sim.c (gdbsim_target): New class.
11595         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
11596         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
11597         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
11598         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
11599         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
11600         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
11601         Refactor as methods of gdbsim_target.
11602         (gdbsim_ops): Now a gdbsim_target.
11603         (init_gdbsim_ops): Delete.
11604         (gdbsim_cntrl_c): Adjust.
11605         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
11606
11607         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
11608         (the_amd64_linux_nat_target): New.
11609         (amd64_linux_fetch_inferior_registers)
11610         (amd64_linux_store_inferior_registers): Refactor as methods of
11611         amd64_linux_nat_target.
11612         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
11613         * i386-linux-nat.c: Don't include "linux-nat.h".
11614         (i386_linux_nat_target): New class.
11615         (the_i386_linux_nat_target): New.
11616         (i386_linux_fetch_inferior_registers)
11617         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
11618         as methods of i386_linux_nat_target.
11619         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
11620         * inf-child.c (inf_child_ops): Delete.
11621         (inf_child_fetch_inferior_registers)
11622         (inf_child_store_inferior_registers): Delete.
11623         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
11624         methods of inf_child_target.
11625         (inf_child_target::supports_terminal_ours)
11626         (inf_child_target::terminal_init)
11627         (inf_child_target::terminal_inferior)
11628         (inf_child_target::terminal_ours_for_output)
11629         (inf_child_target::terminal_ours, inf_child_target::interrupt)
11630         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
11631         New.
11632         (inf_child_open, inf_child_disconnect, inf_child_close)
11633         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
11634         (inf_child_post_startup_inferior, inf_child_can_run)
11635         (inf_child_pid_to_exec_file): Refactor as methods of
11636         inf_child_target.
11637         (inf_child_follow_fork): Delete.
11638         (inf_child_target::can_create_inferior)
11639         (inf_child_target::can_attach): New.
11640         (inf_child_target::has_all_memory, inf_child_target::has_memory)
11641         (inf_child_target::has_stack, inf_child_target::has_registers)
11642         (inf_child_target::has_execution): New.
11643         (inf_child_fileio_open, inf_child_fileio_pwrite)
11644         (inf_child_fileio_pread, inf_child_fileio_fstat)
11645         (inf_child_fileio_close, inf_child_fileio_unlink)
11646         (inf_child_fileio_readlink, inf_child_use_agent)
11647         (inf_child_can_use_agent): Refactor as methods of
11648         inf_child_target.
11649         (return_zero, inf_child_target): Delete.
11650         (inf_child_target::inf_child_target): New.
11651         * inf-child.h: Include "target.h".
11652         (inf_child_target): Delete function prototype.
11653         (inf_child_target): New class.
11654         (inf_child_open_target, inf_child_mourn_inferior)
11655         (inf_child_maybe_unpush_target): Delete.
11656         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
11657         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
11658         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
11659         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
11660         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
11661         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
11662         (inf_ptrace_wait, inf_ptrace_xfer_partial)
11663         (inf_ptrace_thread_alive, inf_ptrace_files_info)
11664         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
11665         methods of inf_ptrace_target.
11666         (inf_ptrace_target): Delete function.
11667         * inf-ptrace.h: Include "inf-child.h".
11668         (inf_ptrace_target): Delete function declaration.
11669         (inf_ptrace_target): New class.
11670         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
11671         * linux-nat.c (linux_target): New.
11672         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
11673         (linux_nat_target::~linux_nat_target): New.
11674         (linux_child_post_attach, linux_child_post_startup_inferior)
11675         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
11676         (linux_child_remove_fork_catchpoint)
11677         (linux_child_insert_vfork_catchpoint)
11678         (linux_child_remove_vfork_catchpoint)
11679         (linux_child_insert_exec_catchpoint)
11680         (linux_child_remove_exec_catchpoint)
11681         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
11682         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
11683         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
11684         (linux_nat_stopped_data_address)
11685         (linux_nat_stopped_by_sw_breakpoint)
11686         (linux_nat_supports_stopped_by_sw_breakpoint)
11687         (linux_nat_stopped_by_hw_breakpoint)
11688         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
11689         (linux_nat_kill, linux_nat_mourn_inferior)
11690         (linux_nat_xfer_partial, linux_nat_thread_alive)
11691         (linux_nat_update_thread_list, linux_nat_pid_to_str)
11692         (linux_nat_thread_name, linux_child_pid_to_exec_file)
11693         (linux_child_static_tracepoint_markers_by_strid)
11694         (linux_nat_is_async_p, linux_nat_can_async_p)
11695         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
11696         (linux_nat_supports_multi_process)
11697         (linux_nat_supports_disable_randomization, linux_nat_async)
11698         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
11699         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
11700         (linux_nat_fileio_open, linux_nat_fileio_readlink)
11701         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
11702         methods of linux_nat_target.
11703         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
11704         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
11705         parameter.
11706         (check_stopped_by_watchpoint): Adjust.
11707         (linux_xfer_partial): Delete.
11708         (linux_target_install_ops, linux_target, linux_nat_add_target):
11709         Delete.
11710         (linux_nat_target::linux_nat_target): New.
11711         * linux-nat.h: Include "inf-ptrace.h".
11712         (linux_nat_target): New.
11713         (linux_target, linux_target_install_ops, linux_nat_add_target):
11714         Delete function declarations.
11715         (linux_target): Declare global.
11716         * linux-thread-db.c (thread_db_target): New.
11717         (thread_db_target::thread_db_target): New.
11718         (thread_db_ops): Delete.
11719         (the_thread_db_target): New.
11720         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
11721         (thread_db_update_thread_list, thread_db_pid_to_str)
11722         (thread_db_extra_thread_info)
11723         (thread_db_thread_handle_to_thread_info)
11724         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
11725         (thread_db_resume): Refactor as methods of thread_db_target.
11726         (init_thread_db_ops): Delete.
11727         (_initialize_thread_db): Remove reference to init_thread_db_ops.
11728         * x86-linux-nat.c: Don't include "linux-nat.h".
11729         (super_post_startup_inferior): Delete.
11730         (x86_linux_nat_target::~x86_linux_nat_target): New.
11731         (x86_linux_child_post_startup_inferior)
11732         (x86_linux_read_description, x86_linux_enable_btrace)
11733         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
11734         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
11735         methods of x86_linux_nat_target.
11736         (x86_linux_create_target): Delete.  Bits folded ...
11737         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
11738         pointer.
11739         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
11740         (x86_linux_nat_target): New class.
11741         (x86_linux_create_target): Delete.
11742         (x86_linux_add_target): Now takes a linux_nat_target pointer.
11743         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
11744         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
11745         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
11746         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
11747         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
11748         make extern.
11749         (x86_use_watchpoints): Delete.
11750         * x86-nat.h: Include "breakpoint.h" and "target.h".
11751         (x86_use_watchpoints): Delete.
11752         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
11753         (x86_stopped_by_watchpoint, x86_stopped_data_address)
11754         (x86_insert_watchpoint, x86_remove_watchpoint)
11755         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
11756         (x86_stopped_by_hw_breakpoint): New declarations.
11757         (x86_nat_target): New template class.
11758
11759         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
11760         (the_ppc_linux_nat_target): New.
11761         (ppc_linux_fetch_inferior_registers)
11762         (ppc_linux_can_use_hw_breakpoint)
11763         (ppc_linux_region_ok_for_hw_watchpoint)
11764         (ppc_linux_ranged_break_num_registers)
11765         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
11766         (ppc_linux_insert_mask_watchpoint)
11767         (ppc_linux_remove_mask_watchpoint)
11768         (ppc_linux_can_accel_watchpoint_condition)
11769         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
11770         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
11771         (ppc_linux_watchpoint_addr_within_range)
11772         (ppc_linux_masked_watch_num_registers)
11773         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
11774         (ppc_linux_read_description): Refactor as methods of
11775         ppc_linux_nat_target.
11776         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
11777
11778         * procfs.c (procfs_xfer_partial): Delete forward declaration.
11779         (procfs_target): New class.
11780         (the_procfs_target): New.
11781         (procfs_target): Delete function.
11782         (procfs_auxv_parse, procfs_attach, procfs_detach)
11783         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
11784         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
11785         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
11786         (procfs_create_inferior, procfs_update_thread_list)
11787         (procfs_thread_alive, procfs_pid_to_str)
11788         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
11789         (procfs_stopped_data_address, procfs_insert_watchpoint)
11790         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
11791         (proc_find_memory_regions, procfs_info_proc)
11792         (procfs_make_note_section): Refactor as methods of procfs_target.
11793         (_initialize_procfs): Adjust.
11794         * sol-thread.c (sol_thread_target): New class.
11795         (sol_thread_ops): Now a sol_thread_target.
11796         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
11797         (sol_thread_fetch_registers, sol_thread_store_registers)
11798         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
11799         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
11800         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
11801         (init_sol_thread_ops): Delete.
11802         (_initialize_sol_thread): Adjust.  Remove references to
11803         init_sol_thread_ops and complete_target_initialization.
11804
11805         * windows-nat.c (windows_nat_target): New class.
11806         (windows_fetch_inferior_registers)
11807         (windows_store_inferior_registers, windows_resume, windows_wait)
11808         (windows_attach, windows_detach, windows_pid_to_exec_file)
11809         (windows_files_info, windows_create_inferior)
11810         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
11811         (windows_close, windows_pid_to_str, windows_xfer_partial)
11812         (windows_get_tib_address, windows_get_ada_task_ptid)
11813         (windows_thread_name, windows_thread_alive): Refactor as
11814         windows_nat_target methods.
11815         (do_initial_windows_stuff): Adjust.
11816         (windows_target): Delete function.
11817         (_initialize_windows_nat): Adjust.
11818
11819         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
11820         (darwin_mourn_inferior, darwin_kill_inferior)
11821         (darwin_create_inferior, darwin_attach, darwin_detach)
11822         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
11823         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
11824         (darwin_supports_multi_process): Refactor as darwin_nat_target
11825         methods.
11826         (darwin_resume_to, darwin_files_info): Delete.
11827         (_initialize_darwin_inferior): Rename to ...
11828         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
11829         * darwin-nat.h: Include "inf-child.h".
11830         (darwin_nat_target): New class.
11831         (darwin_complete_target): Delete.
11832         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
11833         (darwin_target): New.
11834         (i386_darwin_fetch_inferior_registers)
11835         (i386_darwin_store_inferior_registers): Refactor as methods of
11836         darwin_nat_target.
11837         (darwin_complete_target): Delete, with ...
11838         (_initialize_i386_darwin_nat): ... bits factored out here.
11839
11840         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
11841         (the_alpha_linux_nat_target): New.
11842         (alpha_linux_register_u_offset): Refactor as
11843         alpha_linux_nat_target method.
11844         (_initialize_alpha_linux_nat): Adjust.
11845         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
11846         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11847         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
11848         methods of linux_nat_trad_target.
11849         (linux_trad_target): Delete.
11850         * linux-nat-trad.h (linux_trad_target): Delete function.
11851         (linux_nat_trad_target): New class.
11852         * mips-linux-nat.c (mips_linux_nat_target): New class.
11853         (super_fetch_registers, super_store_registers, super_close):
11854         Delete.
11855         (the_mips_linux_nat_target): New.
11856         (mips64_linux_regsets_fetch_registers)
11857         (mips64_linux_regsets_store_registers)
11858         (mips64_linux_fetch_registers, mips64_linux_store_registers)
11859         (mips_linux_register_u_offset, mips_linux_read_description)
11860         (mips_linux_can_use_hw_breakpoint)
11861         (mips_linux_stopped_by_watchpoint)
11862         (mips_linux_stopped_data_address)
11863         (mips_linux_region_ok_for_hw_watchpoint)
11864         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
11865         (mips_linux_close): Refactor as methods of mips_linux_nat.
11866         (_initialize_mips_linux_nat): Adjust to C++ification.
11867
11868         * aix-thread.c (aix_thread_target): New class.
11869         (aix_thread_ops): Now an aix_thread_target.
11870         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
11871         (aix_thread_fetch_registers, aix_thread_store_registers)
11872         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
11873         (aix_thread_thread_alive, aix_thread_pid_to_str)
11874         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
11875         Refactor as methods of aix_thread_target.
11876         (init_aix_thread_ops): Delete.
11877         (_initialize_aix_thread): Remove references to init_aix_thread_ops
11878         and complete_target_initialization.
11879         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
11880         (rs6000_nat_target): New class.
11881         (the_rs6000_nat_target): New.
11882         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
11883         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
11884         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
11885         (super_create_inferior): Delete.
11886         (_initialize_rs6000_nat): Adjust to C++ification.
11887
11888         * arm-linux-nat.c (arm_linux_nat_target): New class.
11889         (the_arm_linux_nat_target): New.
11890         (arm_linux_fetch_inferior_registers)
11891         (arm_linux_store_inferior_registers, arm_linux_read_description)
11892         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
11893         (arm_linux_remove_hw_breakpoint)
11894         (arm_linux_region_ok_for_hw_watchpoint)
11895         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
11896         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
11897         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
11898         arm_linux_nat_target.
11899         (_initialize_arm_linux_nat): Adjust to C++ification.
11900
11901         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
11902         (the_aarch64_linux_nat_target): New.
11903         (aarch64_linux_fetch_inferior_registers)
11904         (aarch64_linux_store_inferior_registers)
11905         (aarch64_linux_child_post_startup_inferior)
11906         (aarch64_linux_read_description)
11907         (aarch64_linux_can_use_hw_breakpoint)
11908         (aarch64_linux_insert_hw_breakpoint)
11909         (aarch64_linux_remove_hw_breakpoint)
11910         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
11911         (aarch64_linux_region_ok_for_hw_watchpoint)
11912         (aarch64_linux_stopped_data_address)
11913         (aarch64_linux_stopped_by_watchpoint)
11914         (aarch64_linux_watchpoint_addr_within_range)
11915         (aarch64_linux_can_do_single_step): Refactor as methods of
11916         aarch64_linux_nat_target.
11917         (super_post_startup_inferior): Delete.
11918         (_initialize_aarch64_linux_nat): Adjust to C++ification.
11919
11920         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
11921         (the_hppa_linux_nat_target): New.
11922         (hppa_linux_fetch_inferior_registers)
11923         (hppa_linux_store_inferior_registers): Refactor as methods of
11924         hppa_linux_nat_target.
11925         (_initialize_hppa_linux_nat): Adjust to C++ification.
11926
11927         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
11928         (the_ia64_linux_nat_target): New.
11929         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
11930         (ia64_linux_stopped_data_address)
11931         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
11932         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
11933         ia64_linux_nat_target methods.
11934         (super_xfer_partial): Delete.
11935         (_initialize_ia64_linux_nat): Adjust to C++ification.
11936
11937         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
11938         (the_m32r_linux_nat_target): New.
11939         (m32r_linux_fetch_inferior_registers)
11940         (m32r_linux_store_inferior_registers): Refactor as
11941         m32r_linux_nat_target methods.
11942         (_initialize_m32r_linux_nat): Adjust to C++ification.
11943
11944         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
11945         (the_m68k_linux_nat_target): New.
11946         (m68k_linux_fetch_inferior_registers)
11947         (m68k_linux_store_inferior_registers): Refactor as
11948         m68k_linux_nat_target methods.
11949         (_initialize_m68k_linux_nat): Adjust to C++ification.
11950
11951         * s390-linux-nat.c (s390_linux_nat_target): New class.
11952         (the_s390_linux_nat_target): New.
11953         (s390_linux_fetch_inferior_registers)
11954         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
11955         (s390_insert_watchpoint, s390_remove_watchpoint)
11956         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
11957         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
11958         (s390_auxv_parse, s390_read_description): Refactor as methods of
11959         s390_linux_nat_target.
11960         (_initialize_s390_nat): Adjust to C++ification.
11961
11962         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
11963         (the_sparc_linux_nat_target): New.
11964         (_initialize_sparc_linux_nat): Adjust to C++ification.
11965         * sparc-nat.c (sparc_fetch_inferior_registers)
11966         (sparc_store_inferior_registers): Remove target_ops parameter.
11967         * sparc-nat.h (sparc_fetch_inferior_registers)
11968         (sparc_store_inferior_registers): Remove target_ops parameter.
11969         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
11970         (the_sparc64_linux_nat_target): New.
11971         (_initialize_sparc64_linux_nat): Adjust to C++ification.
11972
11973         * spu-linux-nat.c (spu_linux_nat_target): New class.
11974         (the_spu_linux_nat_target): New.
11975         (spu_child_post_startup_inferior, spu_child_post_attach)
11976         (spu_child_wait, spu_fetch_inferior_registers)
11977         (spu_store_inferior_registers, spu_xfer_partial)
11978         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
11979         methods.
11980         (_initialize_spu_nat): Adjust to C++ification.
11981
11982         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
11983         (the_tilegx_linux_nat_target): New.
11984         (fetch_inferior_registers, store_inferior_registers):
11985         Refactor as methods.
11986         (_initialize_tile_linux_nat): Adjust to C++ification.
11987
11988         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
11989         (the_xtensa_linux_nat_target): New.
11990         (xtensa_linux_fetch_inferior_registers)
11991         (xtensa_linux_store_inferior_registers): Refactor as
11992         xtensa_linux_nat_target methods.
11993         (_initialize_xtensa_linux_nat): Adjust to C++ification.
11994
11995         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
11996         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
11997         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
11998         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
11999         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
12000         (fbsd_stopped_by_sw_breakpoint)
12001         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
12002         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
12003         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
12004         (fbsd_post_startup_inferior, fbsd_post_attach)
12005         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
12006         (fbsd_set_syscall_catchpoint)
12007         (super_xfer_partial, super_resume, super_wait)
12008         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
12009         (fbsd_handle_debug_trap): Remove target_ops parameter.
12010         (fbsd_nat_add_target): Delete.
12011         * fbsd-nat.h: Include "inf-ptrace.h".
12012         (fbsd_nat_add_target): Delete.
12013         (USE_SIGTRAP_SIGINFO): Define.
12014         (fbsd_nat_target): New class.
12015
12016         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
12017         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
12018         (amd64bsd_target): Delete.
12019         * amd64-bsd-nat.h: New file.
12020         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
12021         "x86-bsd-nat.h".
12022         (amd64_fbsd_nat_target): New class.
12023         (the_amd64_fbsd_nat_target): New.
12024         (amd64fbsd_read_description): Refactor as method of
12025         amd64_fbsd_nat_target.
12026         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
12027         (_initialize_amd64fbsd_nat): Adjust to C++ification.
12028         * amd64-nat.h (amd64bsd_target): Delete function declaration.
12029         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
12030         (i386bsd_store_inferior_registers): Remove target_ops parameter.
12031         (i386bsd_target): Delete.
12032         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
12033         (i386bsd_fetch_inferior_registers)
12034         (i386bsd_store_inferior_registers): Declare.
12035         (i386_bsd_nat_target): New class.
12036         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
12037         (the_i386_fbsd_nat_target): New.
12038         (i386fbsd_resume, i386fbsd_read_description): Refactor as
12039         i386_fbsd_nat_target methods.
12040         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
12041         (_initialize_i386fbsd_nat): Adjust to C++ification.
12042         * x86-bsd-nat.c (super_mourn_inferior): Delete.
12043         (x86bsd_mourn_inferior, x86bsd_target): Delete.
12044         (_initialize_x86_bsd_nat): Adjust to C++ification.
12045         * x86-bsd-nat.h: Include "x86-nat.h".
12046         (x86bsd_target): Delete declaration.
12047         (x86bsd_nat_target): New class.
12048
12049         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
12050         (the_aarch64_fbsd_nat_target): New.
12051         (aarch64_fbsd_fetch_inferior_registers)
12052         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
12053         aarch64_fbsd_nat_target.
12054         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
12055         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
12056         (the_alpha_bsd_nat_target): New.
12057         (alphabsd_fetch_inferior_registers)
12058         (alphabsd_store_inferior_registers): Refactor as
12059         alpha_bsd_nat_target methods.
12060         (_initialize_alphabsd_nat): Refactor as methods of
12061         alpha_bsd_nat_target.
12062         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
12063         (the_amd64_nbsd_nat_target): New.
12064         (_initialize_amd64nbsd_nat): Adjust to C++ification.
12065         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
12066         (the_amd64_obsd_nat_target): New.
12067         (_initialize_amd64obsd_nat): Adjust to C++ification.
12068         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
12069         (the_arm_fbsd_nat_target): New.
12070         (arm_fbsd_fetch_inferior_registers)
12071         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
12072         (_initialize_arm_fbsd_nat): Refactor as methods of
12073         arm_fbsd_nat_target.
12074         (_initialize_arm_fbsd_nat): Adjust to C++ification.
12075         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
12076         (the_arm_netbsd_nat_target): New.
12077         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
12078         arm_netbsd_nat_target.
12079         (_initialize_arm_netbsd_nat): Adjust to C++ification.
12080         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
12081         (the_hppa_nbsd_nat_target): New.
12082         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
12083         hppa_nbsd_nat_target methods.
12084         (_initialize_hppanbsd_nat): Adjust to C++ification.
12085         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
12086         (the_hppa_obsd_nat_target): New.
12087         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
12088         methods of hppa_obsd_nat_target.
12089         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
12090         add_target.
12091         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
12092         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
12093         add_target.
12094         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
12095         (_initialize_i386obsd_nat): Use add_target.
12096         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
12097         (the_m68k_bsd_nat_target): New.
12098         (m68kbsd_fetch_inferior_registers)
12099         (m68kbsd_store_inferior_registers): Refactor as methods of
12100         m68k_bsd_nat_target.
12101         (_initialize_m68kbsd_nat): Adjust to C++ification.
12102         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
12103         (the_mips_fbsd_nat_target): New.
12104         (mips_fbsd_fetch_inferior_registers)
12105         (mips_fbsd_store_inferior_registers): Refactor as methods of
12106         mips_fbsd_nat_target.
12107         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
12108         add_target.
12109         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
12110         (the_mips_nbsd_nat_target): New.
12111         (mipsnbsd_fetch_inferior_registers)
12112         (mipsnbsd_store_inferior_registers): Refactor as methods of
12113         mips_nbsd_nat_target.
12114         (_initialize_mipsnbsd_nat): Adjust to C++ification.
12115         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
12116         (the_mips64_obsd_nat_target): New.
12117         (mips64obsd_fetch_inferior_registers)
12118         (mips64obsd_store_inferior_registers): Refactor as methods of
12119         mips64_obsd_nat_target.
12120         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
12121         add_target.
12122         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
12123         nbsd_nat_target.
12124         * nbsd-nat.h: Include "inf-ptrace.h".
12125         (nbsd_nat_target): New class.
12126         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
12127         (obsd_wait): Refactor as methods of obsd_nat_target.
12128         (obsd_add_target): Delete.
12129         * obsd-nat.h: Include "inf-ptrace.h".
12130         (obsd_nat_target): New class.
12131         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
12132         (the_ppc_fbsd_nat_target): New.
12133         (ppcfbsd_fetch_inferior_registers)
12134         (ppcfbsd_store_inferior_registers): Refactor as methods of
12135         ppc_fbsd_nat_target.
12136         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
12137         add_target.
12138         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
12139         (the_ppc_nbsd_nat_target): New.
12140         (ppcnbsd_fetch_inferior_registers)
12141         (ppcnbsd_store_inferior_registers): Refactor as methods of
12142         ppc_nbsd_nat_target.
12143         (_initialize_ppcnbsd_nat): Adjust to C++ification.
12144         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
12145         (the_ppc_obsd_nat_target): New.
12146         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
12147         methods of ppc_obsd_nat_target.
12148         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
12149         add_target.
12150         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
12151         (the_sh_nbsd_nat_target): New.
12152         (shnbsd_fetch_inferior_registers)
12153         (shnbsd_store_inferior_registers): Refactor as methods of
12154         sh_nbsd_nat_target.
12155         (_initialize_shnbsd_nat): Adjust to C++ification.
12156         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
12157         (inf_ptrace_xfer_partial): Delete.
12158         (sparc_xfer_partial, sparc_target): Delete.
12159         * sparc-nat.h (sparc_fetch_inferior_registers)
12160         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
12161         (sparc_target): Delete function declaration.
12162         (sparc_target): New template class.
12163         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
12164         (_initialize_sparcnbsd_nat): Adjust to C++ification.
12165         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
12166         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
12167         add_target.
12168         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
12169         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
12170         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
12171         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
12172         add_target.
12173         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
12174         (the_vax_bsd_nat_target): New.
12175         (vaxbsd_fetch_inferior_registers)
12176         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
12177         methods.
12178         (_initialize_vaxbsd_nat): Adjust to C++ification.
12179
12180         * bsd-kvm.c (bsd_kvm_target): New class.
12181         (bsd_kvm_ops): Now a bsd_kvm_target.
12182         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
12183         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
12184         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
12185         bsd_kvm_target.
12186         (bsd_kvm_return_one): Delete.
12187         (bsd_kvm_add_target): Adjust to C++ification.
12188
12189         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
12190         (nto_procfs_target_procfs): New classes.
12191         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
12192         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
12193         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
12194         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
12195         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
12196         (procfs_remove_hw_breakpoint, procfs_resume)
12197         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
12198         (procfs_kill_inferior, procfs_store_registers)
12199         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
12200         as methods of nto_procfs_target.
12201         (nto_procfs_ops): Now an nto_procfs_target_procfs.
12202         (nto_native_ops): Delete.
12203         (procfs_open, procfs_native_open): Delete.
12204         (nto_native_ops): Now an nto_procfs_target_native.
12205         (init_procfs_targets): Adjust to C++ification.
12206         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
12207         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
12208         Refactor as methods of nto_procfs_target.
12209
12210         * go32-nat.c (go32_nat_target): New class.
12211         (the_go32_nat_target): New.
12212         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
12213         (go32_store_registers, go32_xfer_partial, go32_files_info)
12214         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
12215         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
12216         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
12217         (go32_pid_to_str): Refactor as methods of go32_nat_target.
12218         (go32_target): Delete.
12219         (_initialize_go32_nat): Adjust to C++ification.
12220
12221         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
12222         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
12223         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
12224         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
12225         gnu_nat_target.
12226         (gnu_target): Delete.
12227         * gnu-nat.h (gnu_target): Delete.
12228         (gnu_nat_target): New class.
12229         * i386-gnu-nat.c (gnu_base_target): New.
12230         (i386_gnu_nat_target): New class.
12231         (the_i386_gnu_nat_target): New.
12232         (_initialize_i386gnu_nat): Adjust to C++ification.
12233
12234 2018-05-02  Pedro Alves  <palves@redhat.com>
12235
12236         * bfd-target.c (target_bfd_xclose): Rename to ...
12237         (target_bfd_close): ... this.
12238         (target_bfd_reopen): Adjust.
12239         * target.c (target_close): Remove references to to_xclose.
12240         * target.h (target_ops::to_xclose): Delete.
12241         (target_ops::to_close): Update comments.
12242
12243 2018-05-02  Pedro Alves  <palves@redhat.com>
12244
12245         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
12246         "linux-nat.h".
12247         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
12248         * inf-ptrace.c (inf_ptrace_register_u_offset)
12249         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
12250         (inf_ptrace_store_register, inf_ptrace_store_registers)
12251         (inf_ptrace_trad_target): Move to ...
12252         * linux-nat-trad.c: ... this new file.
12253         * linux-nat-trad.h: New file.
12254         * linux-nat.c (linux_target_install_ops): Make extern.
12255         (linux_trad_target): Delete.
12256         * linux-nat.h (linux_trad_target): Delete declaration.
12257         (linux_target_install_ops): Declare.
12258         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
12259         "linux-nat.h".
12260
12261 2018-05-02  Pedro Alves  <palves@redhat.com>
12262
12263         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
12264         procfs_target/add_target here.
12265         * procfs.c (procfs_target): Make static.
12266         (_initialize_procfs): Call add_target here.
12267         * procfs.h (struct target_ops): Remove forward declaration.
12268         (procfs_target): Remove declaration.
12269         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
12270
12271 2018-05-02  Pedro Alves  <palves@redhat.com>
12272
12273         * procfs.c (procfs_stopped_by_watchpoint)
12274         (procfs_insert_watchpoint, procfs_remove_watchpoint)
12275         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
12276         Forward declare.
12277         (procfs_use_watchpoints): Delete, move contents...
12278         (procfs_target): ... here.
12279         * procfs.h (procfs_use_watchpoints): Delete declaration.
12280         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
12281         procfs_use_watchpoints.
12282         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
12283         procfs_use_watchpoints.
12284
12285 2018-05-02  Tom Tromey  <tom@tromey.com>
12286
12287         PR python/20084:
12288         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
12289         and var_zuinteger_unlimited.
12290         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
12291         and PARAM_ZUINTEGER_UNLIMITED.
12292         (set_parameter_value): Handle var_zuinteger and
12293         var_zuinteger_unlimited.
12294         (add_setshow_generic): Likewise.
12295         (parmpy_init): Likewise.
12296
12297 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
12298
12299         PR rust/23124
12300         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
12301         pointer is not null before dereferencing it.
12302
12303 2018-04-30  Tom Tromey  <tom@tromey.com>
12304
12305         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
12306         is_mi_like_p.
12307
12308 2018-04-30  Tom Tromey  <tom@tromey.com>
12309
12310         * breakpoint.c (mention): Remove use of is_mi_like_p.
12311         (print_mention_ranged_breakpoint): Likewise.
12312         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
12313         of is_mi_like_p.
12314
12315 2018-04-30  Tom Tromey  <tom@tromey.com>
12316
12317         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
12318
12319 2018-04-30  Tom Tromey  <tom@tromey.com>
12320
12321         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
12322         (info_spu_event_command): Remove some uses of is_mi_like_p.
12323
12324 2018-04-30  Tom Tromey  <tom@tromey.com>
12325
12326         * python/py-framefilter.c (py_print_single_arg)
12327         (enumerate_locals, py_print_args, py_print_frame): Remove some
12328         uses of is_mi_like_p.
12329
12330 2018-04-30  Tom Tromey  <tom@tromey.com>
12331
12332         * ui-out.c: Update.
12333         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
12334         * ui-out.h (ui_out::is_mi_like_p): Now const.
12335         (ui_out::do_is_mi_like_p): Now const.
12336         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
12337
12338 2018-04-30  Tom Tromey  <tom@tromey.com>
12339
12340         * varobj.c (varobj_set_visualizer): Use new_reference.
12341         * python/python.c (gdbpy_decode_line): Use new_reference.
12342         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
12343         new_reference.
12344
12345 2018-04-30  Tom Tromey  <tom@tromey.com>
12346
12347         * varobj.c (install_new_value): Use new_reference.
12348         * value.h (value_incref): Return void.  Swap intro comment with
12349         value_decref.
12350         * value.c (set_value_parent): Use new_reference.
12351         (value_incref): Return void.  Update intro comment.
12352         (release_value): Use new_reference.
12353         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
12354
12355 2018-04-30  Tom Tromey  <tom@tromey.com>
12356
12357         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
12358         * gdb_bfd.h (new_bfd_ref): Remove.
12359         (gdb_bfd_open): Update comment.
12360         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
12361         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
12362         (gdb_bfd_fdopenr): Use new_reference.
12363         * exec.c (exec_file_attach): Use new_reference.
12364
12365 2018-04-30  Tom Tromey  <tom@tromey.com>
12366
12367         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
12368         method.
12369
12370 2018-04-30  Tom Tromey  <tom@tromey.com>
12371
12372         * jit.c (jit_read_code_entry): Use type_align.
12373         * i386-tdep.c (i386_gdbarch_init): Don't call
12374         set_gdbarch_long_long_align_bit.
12375         * gdbarch.sh: Remove long_long_align_bit.
12376         * gdbarch.c, gdbarch.h: Rebuild.
12377         * arc-tdep.c (arc_type_align): New function.
12378         (arc_gdbarch_init): Use arc_type_align.  Don't call
12379         set_gdbarch_long_long_align_bit.
12380
12381 2018-04-30  Tom Tromey  <tom@tromey.com>
12382
12383         * rust-lang.c (rust_type_alignment): Remove.
12384         (rust_composite_type): Use type_align.
12385
12386 2018-04-30  Tom Tromey  <tom@tromey.com>
12387
12388         * NEWS: Mention Type.align.
12389         * python/py-type.c (typy_get_alignof): New function.
12390         (type_object_getset): Add "alignof".
12391
12392 2018-04-30  Tom Tromey  <tom@tromey.com>
12393
12394         PR exp/17095:
12395         * NEWS: Update.
12396         * std-operator.def (UNOP_ALIGNOF): New operator.
12397         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
12398         New.
12399         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
12400         * c-lang.c (c_op_print_tab): Add alignof.
12401         * c-exp.y (ALIGNOF): New token.
12402         (exp): Add "ALIGNOF" production.
12403         (ident_tokens): Add _Alignof and alignof.
12404
12405 2018-04-30  Tom Tromey  <tom@tromey.com>
12406
12407         * i386-tdep.c (i386_type_align): New function.
12408         (i386_gdbarch_init): Update.
12409         * gdbarch.sh (type_align): New method.
12410         * gdbarch.c, gdbarch.h: Rebuild.
12411         * arch-utils.h (default_type_align): Declare.
12412         * arch-utils.c (default_type_align): New function.
12413         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
12414         (struct type) <align_log2>: New field.
12415         <instance_flags>: Now a bitfield.
12416         (TYPE_RAW_ALIGN): New macro.
12417         (type_align, type_raw_align, set_type_align): Declare.
12418         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
12419         functions.
12420         * dwarf2read.c (quirk_rust_enum): Set type alignment.
12421         (get_alignment, maybe_set_alignment): New functions.
12422         (read_structure_type, read_enumeration_type, read_array_type)
12423         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
12424         (read_subrange_type, read_base_type): Set type alignment.
12425
12426 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
12427
12428         * dwarf2read.c (read_index_from_section): Use bool.
12429
12430 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
12431
12432         PR gdb/22950
12433         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
12434         with #ifdef.
12435
12436 2018-04-29  John Reiser  <jreiser@BitWagon.com>
12437
12438         PR build/22873
12439         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
12440         last step, and do it atomically.
12441
12442 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
12443
12444         * compile/compile-c-types.c (convert_int, convert_float):
12445         Update for C FE v1.
12446
12447 2018-04-27  Tom Tromey  <tom@tromey.com>
12448
12449         PR rust/22545:
12450         * rust-lang.c (rust_inclusive_range_type_p): New function.
12451         (rust_range): Handle inclusive ranges.
12452         (rust_compute_range): Likewise.
12453         * rust-exp.y (struct rust_op) <inclusive>: New field.
12454         (DOTDOTEQ): New constant.
12455         (range_expr): Add "..=" productions.
12456         (operator_tokens): Add "..=" token.
12457         (ast_range): Add "inclusive" parameter.
12458         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
12459         ranges.
12460         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
12461         bounds values.
12462         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
12463         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
12464         Update comments.
12465         * expprint.c (print_subexp_standard): Handle new bounds values.
12466         (dump_subexp_body_standard): Likewise.
12467
12468 2018-04-27  Tom Tromey  <tom@tromey.com>
12469
12470         * configure: Rebuild.
12471         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
12472         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
12473         "OVERRIDE".
12474         (class symbol_needs_eval_context): Likewise.
12475         * dwarf2read.c (mock_mapped_index::symbol_name_count)
12476         (mock_mapped_index::symbol_name_at): Use "override".  Remove
12477         "virtual".
12478         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
12479         "override".
12480         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
12481         * aarch64-tdep.c (instruction_reader::read): Use "override".
12482         (instruction_reader_test::read): Likewise.
12483         * arm-tdep.c (instruction_reader::read): Use "override".
12484         (instruction_reader_thumb::read): Likewise.
12485
12486 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
12487
12488         PR remote/9665
12489         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
12490         instead of remote_send.
12491         (remote_send): Remove.
12492
12493 2018-04-26  Pedro Alves  <palves@redhat.com>
12494
12495         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
12496         find_function_start_sal instead of find_pc_line.
12497
12498 2018-04-26  Pedro Alves  <palves@redhat.com>
12499
12500         * breakpoint.c (set_breakpoint_location_function): Handle
12501         mst_data_gnu_ifunc.
12502         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
12503         * elfread.c (elf_symtab_read): Give data symbols with
12504         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
12505         (elf_rel_plt_read): Update comment.
12506         * linespec.c (convert_linespec_to_sals): Handle
12507         mst_data_gnu_ifunc.
12508         (minsym_found): Handle mst_data_gnu_ifunc.
12509         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
12510         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
12511         * parse.c (find_minsym_type_and_address): Handle
12512         mst_data_gnu_ifunc.
12513         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
12514         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
12515         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
12516         comment.
12517         <mst_data_gnu_ifunc>: New enumerator.
12518
12519 2018-04-26  Pedro Alves  <palves@redhat.com>
12520
12521         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
12522         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
12523         'want_trampoline' parameter by a lookup_msym_prefer parameter.
12524         Handle it.
12525         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
12526         (lookup_minimal_symbol_by_pc): Adjust.
12527         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
12528         (lookup_solib_trampoline_symbol_by_pc): Adjust.
12529         * minsyms.h (lookup_msym_prefer): New enum.
12530         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
12531         parameter by a lookup_msym_prefer parameter.
12532
12533 2018-04-26  Pedro Alves  <palves@redhat.com>
12534
12535         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
12536         ends in "@plt" instead of looking at the symbol's section.
12537
12538 2018-04-26  Pedro Alves  <palves@redhat.com>
12539
12540         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
12541         all references.
12542         (find_pc_partial_function_gnu_ifunc): Rename to ...
12543         (find_pc_partial_function): ... this, and remove references to
12544         'is_gnu_ifunc_p'.
12545         (find_pc_partial_function): Delete old implementation.
12546         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
12547
12548 2018-04-26  Pedro Alves  <palves@redhat.com>
12549
12550         * linespec.c (struct bound_minimal_symbol_search_key): New.
12551         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
12552         skip first line if we found a GNU ifunc minimal symbol by name.
12553         (compare_msymbols): Change parameters to work with a destructured
12554         lhs minsym.
12555         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
12556         functions.
12557
12558 2018-04-26  Pedro Alves  <palves@redhat.com>
12559
12560         * breakpoint.c (set_breakpoint_location_function): Don't resolve
12561         ifunc targets here.  Instead, if we have an ifunc minsym, use its
12562         address/name.
12563         (add_location_to_breakpoint): Store the minsym and the objfile in
12564         the breakpoint location.
12565         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
12566         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
12567         Record the minsym in the sal.
12568         * symtab.h (symtab_and_line) <msymbol>: New field.
12569
12570 2018-04-26  Pedro Alves  <palves@redhat.com>
12571
12572         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
12573         unless we actually resolved the ifunc.
12574
12575 2018-04-26  Pedro Alves  <palves@redhat.com>
12576
12577         * c-exp.y (variable production): Prefer ifunc minsyms over
12578         regular function symbols.
12579         * symtab.c (find_gnu_ifunc): New function.
12580         * minsyms.h (lookup_msym_prefer): New enum.
12581         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
12582         parameter by a lookup_msym_prefer parameter.
12583         * symtab.h (find_gnu_ifunc): New declaration.
12584
12585 2018-04-26  Pedro Alves  <palves@redhat.com>
12586
12587         * blockframe.c (find_gnu_ifunc_target_type): New function.
12588         (find_function_type): New.
12589         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
12590         return a value with a memory address.
12591         (eval_call): For calls to GNU ifunc functions, try to find the
12592         type of the target function from the type that the resolver
12593         returns.
12594         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
12595         symbols.
12596         * infcall.c (find_function_return_type): Delete.
12597         (find_function_addr): Add 'function_type' parameter.  For calls to
12598         GNU ifunc functions, try to find the type of the target function
12599         from the type that the resolver returns, and return it via
12600         FUNCTION_TYPE.
12601         (call_function_by_hand_dummy): Adjust to use the function type
12602         returned by find_function_addr.
12603         (find_function_addr): Add 'function_type' parameter and move
12604         description here.
12605         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
12606         declarations.
12607
12608 2018-04-26  Pedro Alves  <palves@redhat.com>
12609
12610         * c-exp.y (variable production): Skip finding an alias for ifunc
12611         symbols.
12612
12613 2018-04-26  Pedro Alves  <palves@redhat.com>
12614
12615         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
12616
12617 2018-04-25  Pedro Alves  <palves@redhat.com>
12618
12619         * infcmd.c (kill_command): Print the pid as string, not the whole
12620         thread's ptid.  Add comment.  s/has been killed/killed/ in output
12621         message.
12622         * remote.c (remote_detach_1): Print the pid as string, not the
12623         whole thread's ptid.
12624
12625 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
12626             Sergio Durigan Junior  <sergiodj@redhat.com>
12627             Pedro Alves  <palves@redhat.com>
12628
12629         * infcmd.c (kill_command): Print message when inferior has
12630         been killed.
12631         * inferior.c (print_inferior_events): Remove 'static'.  Set as
12632         '1'.
12633         (add_inferior): Improve message printed when
12634         'print_inferior_events' is on.
12635         (exit_inferior): Remove message printed when
12636         'print_inferior_events' is on.
12637         (detach_inferior): Improve message printed when
12638         'print_inferior_events' is on.
12639         (initialize_inferiors): Use 'add_inferior_silent' to set
12640         'current_inferior_'.
12641         * inferior.h (print_inferior_events): Declare here as
12642         'extern'.
12643         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
12644         '[Detaching...]' messages when 'print_inferior_events' is on.
12645         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
12646         as prefix/suffix for messages.  Remove periods.  Fix erroneous
12647         'Detaching after fork from child...', replace it by '... from
12648         parent...'.
12649         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
12650         prefix/suffix when printing 'Detaching...' messages.  Print
12651         them when 'print_inferior_events' is on.
12652         * remote.c (remote_detach_1): Print message when detaching
12653         from inferior and '!is_fork_parent'.
12654
12655 2018-04-24  Tom Tromey  <tom@tromey.com>
12656
12657         * cli-out.h: Reindent.
12658
12659 2018-04-24  Tom Tromey  <tom@tromey.com>
12660
12661         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
12662         (cli_ui_out::do_field_string): Use fputs_filtered.
12663         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
12664
12665 2018-04-23  Tom Tromey  <tom@tromey.com>
12666
12667         * guile/scm-frame.c (gdbscm_frame_read_var): Use
12668         gdb::unique_xmalloc_ptr.
12669
12670 2018-04-23  Tom Tromey  <tom@tromey.com>
12671
12672         * configure: Rebuild.
12673
12674 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
12675
12676         PR gdb/23095
12677         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
12678         prepare_for_testing.  Set normal_bp to r_debug_state if target
12679         is bsd.
12680
12681 2018-04-21  Pedro Alves  <palves@redhat.com>
12682             Rajendra SY  <rajendra.sy@gmail.com>
12683
12684         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
12685         * remote.c (extended_remote_attach): In all-stop mode, mark the
12686         thread as executing.
12687
12688 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
12689
12690         * thread.c (thread_apply_all_command): Fix comment.
12691         (thread_command): Fix comment.
12692
12693 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
12694
12695         * common/tdesc.h (tdesc_create_feature): Remove xml filename
12696         parameter.
12697         * features/aarch64-core.c (create_feature_aarch64_core):
12698         Regenerate.
12699         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
12700         Likewise.
12701         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
12702         Likewise.
12703         * features/i386/32bit-avx512.c
12704         (create_feature_i386_32bit_avx512): Likewise.
12705         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
12706         Likewise.
12707         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
12708         Likewise.
12709         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
12710         Likewise.
12711         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
12712         Likewise.
12713         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
12714         Likewise.
12715         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
12716         Likewise.
12717         * features/i386/64bit-avx512.c
12718         (create_feature_i386_64bit_avx512): Likewise.
12719         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
12720         Likewise.
12721         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
12722         Likewise.
12723         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
12724         Likewise.
12725         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
12726         Likewise.
12727         * features/i386/64bit-segments.c
12728         (create_feature_i386_64bit_segments): Likewise.
12729         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
12730         Likewise.
12731         * features/i386/x32-core.c
12732         (create_feature_i386_x32_core): Likewise.
12733         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
12734         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
12735         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
12736         * target-descriptions.c: In generated code, don't pass xml
12737         filename.
12738
12739 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12740
12741         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
12742         (print_xml_feature::visit_post): Likewise.
12743         (print_xml_feature::visit): Likewise.
12744         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
12745         (print_xml_feature): Add new class.
12746         * regformats/regdat.sh: Null xmltarget on feature targets.
12747         * target-descriptions.c (struct target_desc): Add xmltarget.
12748         (maintenance_check_tdesc_xml_convert): Add unittest function.
12749         (tdesc_get_features_xml): Add function to get xml.
12750         (maintenance_check_xml_descriptions): Test xml generation.
12751         * xml-tdesc.c (string_read_description_xml): Add function.
12752         * xml-tdesc.h (string_read_description_xml): Add declaration.
12753
12754 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12755
12756         * features/Makefile: Add feature marker to targets with new style
12757         target descriptions.
12758         * regformats/aarch64.dat: Regenerate.
12759         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
12760         * regformats/i386/amd64-avx-linux.dat: Likewise.
12761         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
12762         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
12763         * regformats/i386/amd64-linux.dat: Likewise.
12764         * regformats/i386/amd64-mpx-linux.dat: Likewise.
12765         * regformats/i386/amd64.dat: Likewise.
12766         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
12767         * regformats/i386/i386-avx-linux.dat: Likewise.
12768         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
12769         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
12770         * regformats/i386/i386-linux.dat: Likewise.
12771         * regformats/i386/i386-mmx-linux.dat: Likewise.
12772         * regformats/i386/i386-mpx-linux.dat: Likewise.
12773         * regformats/i386/i386.dat: Likewise.
12774         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
12775         * regformats/i386/x32-avx-linux.dat: Likewise.
12776         * regformats/i386/x32-linux.dat: Likewise.
12777         * regformats/tic6x-c62x-linux.dat: Likewise.
12778         * regformats/tic6x-c64x-linux.dat: Likewise.
12779         * regformats/tic6x-c64xp-linux.dat: Likewise.
12780         * regformats/regdat.sh: Parse feature marker.
12781
12782 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12783
12784         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
12785         (tdesc_osabi_name): Likewise.
12786         * target-descriptions.c (tdesc_architecture_name): Add new
12787         function.
12788         (tdesc_osabi_name): Likewise.
12789
12790 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12791
12792         * common/tdesc.c (tdesc_predefined_type): Move to here.
12793         (tdesc_named_type): Likewise.
12794         (tdesc_create_vector): Likewise.
12795         (tdesc_create_struct): Likewise.
12796         (tdesc_set_struct_size): Likewise.
12797         (tdesc_create_union): Likewise.
12798         (tdesc_create_flags): Likewise.
12799         (tdesc_create_enum): Likewise.
12800         (tdesc_add_field): Likewise.
12801         (tdesc_add_typed_bitfield): Likewise.
12802         (tdesc_add_bitfield): Likewise.
12803         (tdesc_add_flag): Likewise.
12804         (tdesc_add_enum_value): Likewise.
12805         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
12806         (struct tdesc_type_vector): Likewise.
12807         (struct tdesc_type_field): Likewise.
12808         (struct tdesc_type_with_fields): Likewise.
12809         (tdesc_create_enum): Add declaration.
12810         (tdesc_add_typed_bitfield): Likewise.
12811         (tdesc_add_enum_value): Likewise.
12812         * target-descriptions.c (tdesc_type_field): Move from here.
12813         (tdesc_type_builtin): Likewise.
12814         (tdesc_type_vector): Likewise.
12815         (tdesc_type_with_fields): Likewise.
12816         (tdesc_predefined_types): Likewise.
12817         (tdesc_named_type): Likewise.
12818         (tdesc_create_vector): Likewise.
12819         (tdesc_create_struct): Likewise.
12820         (tdesc_set_struct_size): Likewise.
12821         (tdesc_create_union): Likewise.
12822         (tdesc_create_flags): Likewise.
12823         (tdesc_create_enum): Likewise.
12824         (tdesc_add_field): Likewise.
12825         (tdesc_add_typed_bitfield): Likewise.
12826         (tdesc_add_bitfield): Likewise.
12827         (tdesc_add_flag): Likewise.
12828         (tdesc_add_enum_value): Likewise.
12829         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
12830         (tdesc_add_typed_bitfield): Likewise.
12831         (tdesc_add_enum_value): Likewise.
12832
12833 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12834
12835         * common/tdesc.c (tdesc_feature::accept): Move to here.
12836         (tdesc_feature::operator==): Likewise.
12837         (tdesc_create_reg): Likewise.
12838         * common/tdesc.h (tdesc_type_kind): Likewise.
12839         (struct tdesc_type): Likewise.
12840         (struct tdesc_feature): Likewise.
12841         * regformats/regdat.sh: Create a feature.
12842         * target-descriptions.c (tdesc_type_kind): Move from here.
12843         (tdesc_type): Likewise.
12844         (tdesc_type_up): Likewise.
12845         (tdesc_feature): Likewise.
12846         (tdesc_create_reg): Likewise.
12847
12848 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12849
12850         * Makefile.in: Add arch/tdesc.c
12851         * common/tdesc.c: New file.
12852         * common/tdesc.h (tdesc_element_visitor): Move to here.
12853         (tdesc_element): Likewise.
12854         (tdesc_reg): Likewise.
12855         (tdesc_reg_up): Likewise.
12856         * regformats/regdef.h (reg): Add offset to constructors.
12857         * target-descriptions.c (tdesc_element_visitor): Move from here.
12858         (tdesc_element): Likewise.
12859         (tdesc_reg): Likewise.
12860         (tdesc_reg_up): Likewise.
12861
12862 2018-04-17  Tom Tromey  <tom@tromey.com>
12863
12864         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
12865         discriminant field.
12866
12867 2018-04-17  Tom Tromey  <tom@tromey.com>
12868
12869         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
12870
12871 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12872
12873         * symtab.c (print_symbol_info): Skip printing filename and line
12874         number when `last' is NULL.
12875         (symtab_symbol_info): Use empty string instead of NULL for first
12876         invocation of print_symbol_info.
12877         (rbreak_command): Pass NULL to `last' parameter of
12878         print_symbol_info.
12879
12880 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
12881
12882         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
12883         instead of nullptr.
12884
12885 2018-04-16  Pedro Alves  <palves@redhat.com>
12886
12887         * MAINTAINERS (sh): Remove.
12888         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
12889         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
12890         (ALLDEPFILES): Remove sh64-tdep.c.
12891         * NEWS: Mentions that support for SH-5/SH64 is removed.
12892         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
12893         (sh*-*-openbsd*): Ditto.
12894         (sh64-*-elf*): Remove.
12895         (sh*): Remove.
12896         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
12897         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
12898         * sh-tdep.c: No longer include "sh64-tdep.h".
12899         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
12900         * sh64-tdep.c, sh64-tdep.h: Remove files.
12901
12902 2018-04-16  Pedro Alves  <palves@redhat.com>
12903
12904         * MAINTAINERS: Remove m88k.
12905         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
12906         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
12907         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
12908         * NEWS: Mention that support for m88k was removed.
12909         * configure.host (m88*-*-*): Remove support.
12910         * configure.nat (m88k-*-*): Remove support.
12911         * configure.tgt (m88*-*-openbsd*): Remove.
12912         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
12913
12914 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
12915
12916         * configure.tgt (x86_tobjs): New variable.
12917         (amd64_tobjs, i386_tobjs): Use it.
12918
12919 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12920
12921         * symtab.c (print_symbol_info): Precede the symbol definition by
12922         the line number when available.
12923         * NEWS: Advertise this enhancement.
12924
12925 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12926
12927         * NEWS (New options): announce set/show record btrace cpu.
12928         * btrace.c: Include record-btrace.h.
12929         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
12930         the vendor is unknown.
12931         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
12932         Maybe overwrite the btrace configuration's cpu.
12933         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
12934         (btrace_fetch): Add cpu parameter.  Update callers.
12935         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
12936         Maybe overwrite the btrace configuration's cpu.  Skip enabling
12937         errata workarounds if the vendor is unknown.
12938         * python/py-record-btrace.c: Include record-btrace.h.
12939         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
12940         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
12941         * record-btrace.c (record_btrace_cpu_state_kind): New.
12942         (record_btrace_cpu): New.
12943         (set_record_btrace_cpu_cmdlist): New.
12944         (record_btrace_get_cpu): New.
12945         (require_btrace_thread, record_btrace_info)
12946         (record_btrace_resume_thread): Call record_btrace_get_cpu.
12947         (cmd_set_record_btrace_cpu_none): New.
12948         (cmd_set_record_btrace_cpu_auto): New.
12949         (cmd_set_record_btrace_cpu): New.
12950         (cmd_show_record_btrace_cpu): New.
12951         (_initialize_record_btrace): Initialize set/show record btrace cpu
12952         commands.
12953         * record-btrace.h (record_btrace_get_cpu): New.
12954
12955 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12956
12957         * record.c (set_record_command): Fix typo in message.
12958
12959 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12960
12961         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
12962
12963 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12964
12965         * infrun.c (process_event_stop_test): Call
12966         gdbarch_in_indirect_branch_thunk.
12967         * gdbarch.sh (in_indirect_branch_thunk): New.
12968         * gdbarch.c: Regenerated.
12969         * gdbarch.h: Regenerated.
12970         * x86-tdep.h: New.
12971         * x86-tdep.c: New.
12972         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
12973         (HFILES_NO_SRCDIR): Add x86-tdep.h.
12974         (ALLDEPFILES): Add x86-tdep.c.
12975         * arch-utils.h (default_in_indirect_branch_thunk): New.
12976         * arch-utils.c (default_in_indirect_branch_thunk): New.
12977         * i386-tdep: Include x86-tdep.h.
12978         (i386_in_indirect_branch_thunk): New.
12979         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
12980         function.
12981         * amd64-tdep: Include x86-tdep.h.
12982         (amd64_in_indirect_branch_thunk): New.
12983         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
12984
12985 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
12986
12987         PR gdb/23053
12988         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
12989         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
12990         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
12991         regression.
12992
12993 2018-04-12  Tom Tromey  <tom@tromey.com>
12994
12995         * rust-lang.c (rust_print_struct_def): Remove univariant code.
12996         (rust_evaluate_subexp): Likewise.
12997
12998 2018-04-12  Pedro Alves  <palves@redhat.com>
12999
13000         * procfs.c (procfs_detach): Make forward declaration's prototype
13001         match definition's protototype.
13002         (proc_get_LDT_entry): Remove stale do_cleanups call.
13003
13004 2018-04-12  Pedro Alves  <palves@redhat.com>
13005
13006         * target.h (target_ops::to_has_exited): Delete.
13007         (target_has_exited): Delete.
13008         * target-delegates.c: Regenerate.
13009
13010 2018-04-11  Pedro Alves  <palves@redhat.com>
13011
13012         * target.c (fileio_fh_t::t): Add comment.
13013         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
13014         (target_fileio_close): Handle a NULL target.
13015         (invalidate_fileio_fh): New.
13016         (target_close): Call it.
13017         * remote.c (remote_hostio_send_command): No longer check whether
13018         remote_desc is open.
13019
13020 2018-04-11  Pedro Alves  <palves@redhat.com>
13021
13022         * target.c (fileio_fh_t): Make it a named struct instead of a
13023         typedef.
13024         (fileio_fh_t::is_closed): New method.
13025         (DEF_VEC_O (fileio_fh_t)): Remove.
13026         (fileio_fhandles): Now a std::vector.
13027         (is_closed_fileio_fh): Delete.
13028         (acquire_fileio_fd): Adjust.  Rename parameters.
13029         (release_fileio_fd): Adjust.
13030         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
13031         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
13032         (target_fileio_close): Adjust.
13033
13034 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
13035
13036         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
13037         index.
13038
13039 2018-04-10  Pedro Alves  <palves@redhat.com>
13040
13041         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
13042         (scoped_finish_thread_state): New class.
13043         * infcmd.c (run_command_1): Use it instead of finish_thread_state
13044         cleanup.
13045         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
13046         (fetch_inferior_event, normal_stop): Likewise.
13047         * thread.c (finish_thread_state_cleanup): Delete.
13048
13049 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
13050             Pedro Alves  <palves@redhat.com>
13051
13052         * value.c: Include "selftest.h" and "common/array-view.h".
13053         (struct range) <operator ==>: New.
13054         (test_ranges_contain): New.
13055         (check_ranges_vector): New.
13056         (test_insert_into_bit_range_vector): New.
13057         (_initialize_values): Register selftests.
13058         * common/array-view.h (operator==, operator!=): New.
13059
13060 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
13061
13062         * common/gdb_vecs.h (unordered_remove): Add overload that takes
13063         an iterator.
13064         * inline-frame.c: Include <algorithm>.
13065         (struct inline_state): Add constructor.
13066         (inline_state_s): Remove.
13067         (DEF_VEC_O(inline_state_s)): Remove.
13068         (inline_states): Change type to std::vector.
13069         (find_inline_frame_state): Adjust to std::vector.
13070         (allocate_inline_frame_state): Remove.
13071         (clear_inline_frame_state): Adjust to std::vector.
13072         (skip_inline_frames): Adjust to std::vector.
13073
13074 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
13075
13076         * tracepoint.h (struct trace_state_variable): Add constructor.
13077         <name>: Change type to std::string.
13078         * tracepoint.c (tsv_s): Remove.
13079         (DEF_VEC_O(tsv_s)): Remove.
13080         (tvariables): Change to std::vector.
13081         (create_trace_state_variable): Adjust to std::vector.
13082         (find_trace_state_variable): Likewise.
13083         (find_trace_state_variable_by_number): Likewise.
13084         (delete_trace_state_variable): Likewise.
13085         (trace_variable_command): Adjust to std::string.
13086         (delete_trace_variable_command): Likewise.
13087         (tvariables_info_1): Adjust to std::vector.
13088         (save_trace_state_variables): Likewise.
13089         (start_tracing): Likewise.
13090         (merge_uploaded_trace_state_variables): Adjust to std::vector
13091         and std::string.
13092         * target.h (struct target_ops)
13093         <to_download_trace_state_variable>: Pass reference to
13094         trace_state_variable.
13095         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
13096         * target-delegates.c: Re-generate.
13097         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
13098         (mi_tsv_deleted): Likewise.
13099         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
13100         * remote.c (remote_download_trace_state_variable): Change
13101         pointer to reference and adjust.
13102         * make-target-delegates (parse_argtypes): Handle references.
13103         (write_function_header): Likewise.
13104         (munge_type): Likewise.
13105
13106 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
13107
13108         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13109         string_view-selftests.c.
13110         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
13111         testsuite.
13112         * unittests/basic_string_view/cons/char/1.cc: Likewise.
13113         * unittests/basic_string_view/cons/char/2.cc: Likewise.
13114         * unittests/basic_string_view/cons/char/3.cc: Likewise.
13115         * unittests/basic_string_view/element_access/char/1.cc:
13116         Likewise.
13117         * unittests/basic_string_view/element_access/char/empty.cc:
13118         Likewise.
13119         * unittests/basic_string_view/element_access/char/front_back.cc:
13120         Likewise.
13121         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
13122         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
13123         Likewise.
13124         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
13125         Likewise.
13126         * unittests/basic_string_view/modifiers/swap/char/1.cc:
13127         Likewise.
13128         * unittests/basic_string_view/operations/compare/char/1.cc:
13129         Likewise.
13130         * unittests/basic_string_view/operations/compare/char/13650.cc:
13131         Likewise.
13132         * unittests/basic_string_view/operations/copy/char/1.cc:
13133         Likewise.
13134         * unittests/basic_string_view/operations/data/char/1.cc:
13135         Likewise.
13136         * unittests/basic_string_view/operations/find/char/1.cc:
13137         Likewise.
13138         * unittests/basic_string_view/operations/find/char/2.cc:
13139         Likewise.
13140         * unittests/basic_string_view/operations/find/char/3.cc:
13141         Likewise.
13142         * unittests/basic_string_view/operations/find/char/4.cc:
13143         Likewise.
13144         * unittests/basic_string_view/operations/rfind/char/1.cc:
13145         Likewise.
13146         * unittests/basic_string_view/operations/rfind/char/2.cc:
13147         Likewise.
13148         * unittests/basic_string_view/operations/rfind/char/3.cc:
13149         Likewise.
13150         * unittests/basic_string_view/operations/substr/char/1.cc:
13151         Likewise.
13152         * unittests/basic_string_view/operators/char/2.cc: Likewise.
13153         * unittests/string_view-selftests.c: New file.
13154
13155 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
13156
13157         * unittests/basic_string_view/capacity/1.cc: New file.
13158         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
13159         * unittests/basic_string_view/cons/char/1.cc: New file.
13160         * unittests/basic_string_view/cons/char/2.cc: New file.
13161         * unittests/basic_string_view/cons/char/3.cc: New file.
13162         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
13163         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
13164         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
13165         * unittests/basic_string_view/element_access/char/1.cc: New file.
13166         * unittests/basic_string_view/element_access/char/2.cc: New file.
13167         * unittests/basic_string_view/element_access/char/empty.cc: New file.
13168         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
13169         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
13170         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
13171         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
13172         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
13173         * unittests/basic_string_view/include.cc: New file.
13174         * unittests/basic_string_view/inserters/char/1.cc: New file.
13175         * unittests/basic_string_view/inserters/char/2.cc: New file.
13176         * unittests/basic_string_view/inserters/char/3.cc: New file.
13177         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
13178         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
13179         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
13180         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
13181         * unittests/basic_string_view/literals/types.cc: New file.
13182         * unittests/basic_string_view/literals/values.cc: New file.
13183         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
13184         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
13185         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
13186         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
13187         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
13188         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
13189         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
13190         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
13191         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
13192         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
13193         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
13194         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
13195         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
13196         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
13197         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
13198         * unittests/basic_string_view/operations/data/char/1.cc: New file.
13199         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
13200         * unittests/basic_string_view/operations/find/char/1.cc: New file.
13201         * unittests/basic_string_view/operations/find/char/2.cc: New file.
13202         * unittests/basic_string_view/operations/find/char/3.cc: New file.
13203         * unittests/basic_string_view/operations/find/char/4.cc: New file.
13204         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
13205         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
13206         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
13207         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
13208         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
13209         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
13210         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
13211         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
13212         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
13213         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
13214         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
13215         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
13216         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
13217         * unittests/basic_string_view/operators/char/2.cc: New file.
13218         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
13219         * unittests/basic_string_view/range_access/char/1.cc: New file.
13220         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
13221         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
13222         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
13223         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
13224         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
13225         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
13226         * unittests/basic_string_view/requirements/typedefs.cc: New file.
13227         * unittests/basic_string_view/typedefs.cc: New file.
13228         * unittests/basic_string_view/types/1.cc: New file.
13229
13230 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
13231
13232         * common/gdb_string_view.h: Remove libstdc++ implementation
13233         details, adjust to gdb reality.
13234         * common/gdb_string_view.tcc: Likewise.
13235         * cli/cli-script.c (struct string_view): Remove.
13236         (user_args) <m_args>: Change element type to gdb::string_view.
13237         (user_args::insert_args): Adjust.
13238
13239 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
13240
13241         * common/gdb_string_view.h: New file.
13242         * common/gdb_string_view.tcc: New file.
13243
13244 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
13245
13246         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
13247         * configure: Re-generate.
13248
13249 2018-04-09  Pedro Alves  <palves@redhat.com>
13250
13251         * gdbarch.sh: Include "observable.h" instead of "observer.h".
13252         (set_target_gdbarch): Call
13253         gdb::observers::architecture_changed.notify instead of
13254         observer_notify_architecture_changed.
13255
13256 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13257
13258         * tracepoint.c (struct current_traceframe_cleanup): Remove.
13259         (do_restore_current_traceframe_cleanup): Remove.
13260         (restore_current_traceframe_cleanup_dtor): Remove.
13261         (make_cleanup_restore_current_traceframe): Remove.
13262         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
13263         New.
13264         * tracepoint.h (struct scoped_restore_current_traceframe): New.
13265         * infrun.c (fetch_inferior_event): Use
13266         scoped_restore_current_traceframe.
13267
13268 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13269
13270         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
13271         Remove.
13272         <n_allocated_type_units>: Remove.
13273         <all_type_units>: Change to std::vector.
13274         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
13275         to std::vector change.
13276         (dwarf2_per_objfile::get_cutu): Likewise.
13277         (dwarf2_per_objfile::get_tu): Likewise.
13278         (create_signatured_type_table_from_index): Likewise.
13279         (create_signatured_type_table_from_debug_names): Likewise.
13280         (dw2_symtab_iter_next): Likewise.
13281         (dw2_print_stats): Likewise.
13282         (dw2_expand_all_symtabs): Likewise.
13283         (dw2_expand_marked_cus): Likewise.
13284         (dw2_debug_names_iterator::next): Likewise.
13285         (dwarf2_initialize_objfile): Likewise.
13286         (add_signatured_type_cu_to_table): Likewise.
13287         (create_all_type_units): Likewise.
13288         (add_type_unit): Likewise.
13289         (struct tu_abbrev_offset): Add constructor.
13290         (build_type_psymtabs_1): Adjust to std::vector change.
13291         (print_tu_stats): Likewise.
13292         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
13293         (write_debug_names): Likewise.
13294
13295 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13296
13297         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
13298         Make an std::vector.
13299         <n_comp_units>: Remove.
13300         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
13301         to std::vector change.
13302         (dwarf2_per_objfile::get_cutu): Likewise.
13303         (dwarf2_per_objfile::get_cu): Likewise.
13304         (create_cus_from_index): Likewise.
13305         (create_addrmap_from_index): Likewise.
13306         (create_addrmap_from_aranges): Likewise.
13307         (dwarf2_read_index): Likewise.
13308         (dw2_find_last_source_symtab): Likewise.
13309         (dw2_map_symtabs_matching_filename): Likewise.
13310         (dw2_symtab_iter_next): Likewise.
13311         (dw2_print_stats): Likewise.
13312         (dw2_expand_all_symtabs): Likewise.
13313         (dw2_expand_symtabs_with_fullname): Likewise.
13314         (dw2_expand_marked_cus): Likewise.
13315         (dw2_map_symbol_filenames): Likewise.
13316         (create_cus_from_debug_names): Likewise.
13317         (dwarf2_read_debug_names): Likewise.
13318         (dw2_debug_names_iterator::next): Likewise.
13319         (dwarf2_initialize_objfile): Likewise.
13320         (set_partial_user): Likewise.
13321         (dwarf2_build_psymtabs_hard): Likewise.
13322         (read_comp_units_from_section): Remove arguments, adjust to
13323         std::vector change.
13324         (create_all_comp_units): Adjust to std::vector and
13325         read_comp_units_from_section changes.
13326         (dwarf2_find_containing_comp_unit): Adjust to std::vector
13327         change.
13328         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
13329         (psyms_seen_size): Likewise.
13330         (write_gdbindex): Likewise.
13331         (write_debug_names): Likewise.
13332
13333 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13334
13335         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
13336         with dwarf2_per_objfile.
13337         (create_cus_from_index): Likewise.
13338         (create_signatured_type_table_from_index): Likewise.
13339         (dwarf2_read_index): Likewise.
13340         (dwarf2_initialize_objfile): Likewise.
13341         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
13342         per_cu rather than get_dwarf2_per_objfile.
13343
13344 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13345
13346         * dwarf2read.h (struct signatured_type): Forward declare.
13347         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
13348         New methods.
13349         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
13350         (dw2_get_cutu): ...this.
13351         (dwarf2_per_objfile::get_cu): Rename from...
13352         (dw2_get_cu): ...this.
13353         (dwarf2_per_objfile::get_tu): New.
13354         (create_addrmap_from_index): Adjust.
13355         (create_addrmap_from_aranges): Adjust.
13356         (dw2_find_last_source_symtab): Adjust.
13357         (dw2_map_symtabs_matching_filename): Adjust.
13358         (dw2_symtab_iter_next): Adjust.
13359         (dw2_print_stats): Adjust.
13360         (dw2_expand_all_symtabs): Adjust.
13361         (dw2_expand_symtabs_with_fullname): Adjust.
13362         (dw2_expand_marked_cus): Adjust.
13363         (dw_expand_symtabs_matching_file_matcher): Adjust.
13364         (dw2_map_symbol_filenames): Adjust.
13365         (dw2_debug_names_iterator::next): Adjust.
13366         (dwarf2_initialize_objfile): Adjust.
13367         (set_partial_user): Adjust.
13368         (dwarf2_build_psymtabs_hard): Adjust.
13369
13370 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13371
13372         * dwarf2read.c (create_signatured_type_table_from_debug_names):
13373         Remove unused variables.
13374         (dw2_map_symtabs_matching_filename): Likewise.
13375         (dwarf2_record_block_ranges): Likewise.
13376         (dwarf2_read_addr_index): Likewise.
13377         (follow_die_offset): Likewise.
13378
13379 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13380
13381         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
13382         to symbol_file_add_main.
13383
13384 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13385
13386         PR mi/22299
13387         * mi/mi-console.c (do_fputc_async_safe): New.
13388         (mi_console_file::write_async_safe): New.
13389         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
13390         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
13391         New.
13392         * ui-file.c (ui_file::putstrn): Adjust call to
13393         fputstrn_unfiltered.
13394         * utils.c (printchar): Replace do_fputs and do_fprintf
13395         parameters by do_fputc.
13396         (fputstr_filtered): Adjust call to printchar.
13397         (fputstr_unfiltered): Likewise.
13398         (fputstrn_filtered): Likewise.
13399         (fputstrn_unfiltered): Add do_fputc parameter, pass to
13400         printchar.
13401         * utils.h (do_fputc_ftype): New typedef.
13402         (fputstrn_unfiltered): Add do_fputc parameter.
13403
13404 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13405
13406         * regformats/i386/i386-avx.dat: Remove.
13407
13408 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13409
13410         PR gdb/22979
13411         * amd64-tdep.c (amd64_none_init_abi): New function.
13412         (amd64_x32_none_init_abi): New function.
13413         (_initialize_amd64_tdep): Register handlers for x86-64 and
13414         x64_32 with GDB_OSABI_NONE.
13415         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
13416         GDB_OSABI_NONE osabi.
13417
13418 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13419
13420         PR gdb/22980
13421         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
13422         GDB_OSABI_NONE.
13423         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
13424         * osabi.c (gdb_osabi_names): Add "unknown" entry.
13425
13426 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13427
13428         * common/byte-vector.h (char_vector): New type.
13429         * target.h (target_read_alloc): Return
13430         gdb::optional<byte_vector>.
13431         (target_read_stralloc): Return gdb::optional<char_vector>.
13432         (target_get_osdata): Return gdb::optional<char_vector>.
13433         * target.c (target_read_alloc_1): Templatize.  Replacement
13434         manual memory management with vector.
13435         (target_read_alloc): Change return type, adjust.
13436         (target_read_stralloc): Change return type, adjust.
13437         (target_get_osdata): Change return type, adjust.
13438         * auxv.c (struct auxv_info) <length>: Remove.
13439         <data>: Change type to gdb::optional<byte_vector>.
13440         (auxv_inferior_data_cleanup): Free auxv_info with delete.
13441         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
13442         (target_auxv_search): Adjust.
13443         (fprint_target_auxv): Adjust.
13444         * avr-tdep.c (avr_io_reg_read_command): Adjust.
13445         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
13446         (linux_make_corefile_notes): Adjust.
13447         * osdata.c (get_osdata): Adjust.
13448         * remote.c (remote_get_threads_with_qxfer): Adjust.
13449         (remote_memory_map): Adjust.
13450         (remote_traceframe_info): Adjust.
13451         (btrace_read_config): Adjust.
13452         (remote_read_btrace): Adjust.
13453         (remote_pid_to_exec_file): Adjust.
13454         * solib-aix.c (solib_aix_get_library_list): Adjust.
13455         * solib-dsbt.c (decode_loadmap): Don't free buf.
13456         (dsbt_get_initial_loadmaps): Adjust.
13457         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
13458         * solib-target.c (solib_target_current_sos): Adjust.
13459         * tracepoint.c (sdata_make_value): Adjust.
13460         * xml-support.c (xinclude_start_include): Adjust.
13461         (xml_fetch_content_from_file): Adjust.
13462         * xml-support.h (xml_fetch_another): Change return type.
13463         (xml_fetch_content_from_file): Change return type.
13464         * xml-syscall.c (xml_init_syscalls_info): Adjust.
13465         * xml-tdesc.c (file_read_description_xml): Adjust.
13466         (fetch_available_features_from_target): Change return type.
13467         (target_fetch_description_xml): Adjust.
13468         (target_read_description_xml): Adjust.
13469
13470 2018-04-06  Tom Tromey  <tom@tromey.com>
13471
13472         * value.c (~value): Update.
13473         (struct value) <contents>: Now unique_xmalloc_ptr.
13474         (value_contents_bits_eq, allocate_value_contents)
13475         (value_contents_raw, value_contents_all_raw)
13476         (value_contents_for_printing, value_contents_for_printing_const)
13477         (set_value_enclosing_type): Update.
13478
13479 2018-04-06  Tom Tromey  <tom@tromey.com>
13480
13481         * value.c (range_s): Remove typedef, VEC.
13482         (struct range): Add operator<.
13483         (range_lessthan): Remove.
13484         (ranges_contain): Change type.
13485         (~value): Update.
13486         (struct value) <unavailable, optimized_out>: Now std::vector.
13487         (value_entirely_available)
13488         (value_entirely_covered_by_range_vector)
13489         (value_entirely_unavailable, value_entirely_optimized_out):
13490         Update.
13491         (insert_into_bit_range_vector): Change argument type.
13492         (find_first_range_overlap): Likewise.
13493         (struct ranges_and_idx, value_contents_bits_eq)
13494         (require_not_optimized_out, require_available): Update.
13495         (ranges_copy_adjusted): Change argument types.
13496         (value_optimized_out, value_copy, value_fetch_lazy): Update.
13497
13498 2018-04-06  Tom Tromey  <tom@tromey.com>
13499
13500         * value.c (~value): Update.
13501         (struct value) <parent>: Now a value_ref_ptr.
13502         (value_parent, set_value_parent, value_address, value_copy):
13503         Update.
13504
13505 2018-04-06  Tom Tromey  <tom@tromey.com>
13506
13507         * value.c (struct value): Add constructor, destructor, and member
13508         initializers.
13509         (allocate_value_lazy, value_decref): Update.
13510
13511 2018-04-06  Tom Tromey  <tom@tromey.com>
13512
13513         * value.c (struct value) <released, next>: Remove.
13514         (all_values): Now a std::vector.
13515         (allocate_value_lazy): Update.
13516         (value_next): Remove.
13517         (value_mark, value_free_to_mark, release_value)
13518         (value_release_to_mark): Update.
13519
13520 2018-04-06  Tom Tromey  <tom@tromey.com>
13521
13522         * value.h (fetch_subexp_value, value_release_to_mark): Update.
13523         (free_value_chain): Remove.
13524         * value.c (free_value_chain): Remove.
13525         (value_release_to_mark): Return a std::vector.
13526         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
13527         std::vector.
13528         (check_condition): Update.
13529         * eval.c (fetch_subexp_value): Change "val_chain" to a
13530         std::vector.
13531         * breakpoint.c (update_watchpoint): Update.
13532         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
13533
13534 2018-04-06  Tom Tromey  <tom@tromey.com>
13535
13536         * value.h (free_all_values): Remove.
13537         * value.c (free_all_values): Remove.
13538
13539 2018-04-06  Tom Tromey  <tom@tromey.com>
13540
13541         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
13542         (value_history_chain, value_history_count): Remove.
13543         (value_history): New global.
13544         (record_latest_value, access_value_history, show_values)
13545         (preserve_values): Update.
13546
13547 2018-04-06  Tom Tromey  <tom@tromey.com>
13548
13549         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
13550         * varobj.c (varobj_set_display_format, varobj_set_value)
13551         (install_default_visualizer, construct_visualizer)
13552         (install_new_value, ~varobj, varobj_get_value_type)
13553         (my_value_of_variable, varobj_editable_p): Update.
13554         * c-varobj.c (c_describe_child, c_value_of_variable)
13555         (cplus_number_of_children, cplus_describe_child): Update.
13556         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
13557         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
13558         (ada_value_of_variable, ada_value_is_changeable_p): Update.
13559
13560 2018-04-06  Tom Tromey  <tom@tromey.com>
13561
13562         * printcmd.c (last_examine_address): Change type to
13563         value_ref_ptr.
13564         (do_examine, x_command): Update.
13565
13566 2018-04-06  Tom Tromey  <tom@tromey.com>
13567
13568         * value.c (release_value): Update.
13569         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
13570         (struct bpstats) <val>: Now a value_ref_ptr.
13571         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
13572         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
13573         (~watchpoint, print_it_watchpoint, watch_command_1)
13574         (invalidate_bp_value_on_memory_change): Update.
13575
13576 2018-04-06  Tom Tromey  <tom@tromey.com>
13577
13578         * varobj.c (varobj_clear_saved_item)
13579         (update_dynamic_varobj_children, install_new_value, ~varobj):
13580         Update.
13581         * value.h (value_incref): Move declaration earlier.
13582         (value_decref): Rename from value_free.
13583         (struct value_ref_policy): New.
13584         (value_ref_ptr): New typedef.
13585         (struct value_deleter): Remove.
13586         (gdb_value_up): Remove typedef.
13587         (release_value): Change return type.
13588         (release_value_or_incref): Remove.
13589         * value.c (set_value_parent): Update.
13590         (value_incref): Change return type.
13591         (value_decref): Rename from value_free.
13592         (value_free_to_mark, free_all_values, free_value_chain): Update.
13593         (release_value): Return value_ref_ptr.
13594         (release_value_or_incref): Remove.
13595         (record_latest_value, set_internalvar, clear_internalvar):
13596         Update.
13597         * stack.c (info_frame_command): Don't call value_free.
13598         * python/py-value.c (valpy_dealloc, valpy_new)
13599         (value_to_value_object): Update.
13600         * printcmd.c (do_examine): Update.
13601         * opencl-lang.c (lval_func_free_closure): Update.
13602         * mi/mi-main.c (register_changed_p): Don't call value_free.
13603         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
13604         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
13605         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
13606         value_free.
13607         * guile/scm-value.c (vlscm_free_value_smob)
13608         (vlscm_scm_from_value): Update.
13609         * frame.c (frame_register_unwind, frame_unwind_register_signed)
13610         (frame_unwind_register_unsigned, get_frame_register_bytes)
13611         (put_frame_register_bytes): Don't call value_free.
13612         * findvar.c (address_from_register): Don't call value_free.
13613         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
13614         * dwarf2loc.c (entry_data_value_free_closure)
13615         (value_of_dwarf_reg_entry, free_pieced_value_closure)
13616         (dwarf2_evaluate_loc_desc_full): Update.
13617         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
13618         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
13619         (~watchpoint, watch_command_1)
13620         (invalidate_bp_value_on_memory_change): Update.
13621         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
13622
13623 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
13624
13625         PR gdb/23022
13626         * warning.m4: Add -Wno-error=deprecated-register.
13627         * configure: Re-generate.
13628
13629 2018-04-05  Tom Tromey  <tom@tromey.com>
13630
13631         * linespec.h: Remove include of "vec.h".
13632
13633 2018-04-05  Tom Tromey  <tom@tromey.com>
13634
13635         * linespec.c (typep): Remove typedef.
13636         (find_methods, find_superclass_methods): Take a std::vector.
13637         (find_method): Use std::vector.
13638
13639 2018-04-05  Tom Tromey  <tom@tromey.com>
13640
13641         * utils.c (compare_strings): Remove.
13642         * utils.h (compare_strings): Remove.
13643         * objc-lang.h (find_imps): Update.
13644         * objc-lang.c (find_methods): Take a std::vector.
13645         (uniquify_strings, find_imps): Likewise.
13646         * linespec.c (find_methods): Take a std::vector.
13647         (decode_objc): Use std::vector.
13648         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
13649         a std::vector.
13650         (find_method, find_function_symbols): Use std::vector.
13651
13652 2018-04-05  Tom Tromey  <tom@tromey.com>
13653
13654         * completer.c (completion_tracker::completion_tracker): Remove
13655         cast.
13656         (completion_tracker::discard_completions): Likewise.
13657         * breakpoint.c (ambiguous_names_p): Remove cast.
13658         * ada-lang.c (_initialize_ada_language): Remove cast.
13659         * utils.h (streq): Update.
13660         (streq_hash): Add new declaration.
13661         * utils.c (streq): Return bool.
13662         (streq_hash): New function.
13663
13664 2018-04-05  Tom Tromey  <tom@tromey.com>
13665
13666         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
13667         Remove a string copy.
13668
13669 2018-04-05  Tom Tromey  <tom@tromey.com>
13670
13671         * linespec.c (filter_results): Use std::vector.
13672         (decode_line_2, decode_line_full): Update.
13673
13674 2018-04-05  Tom Tromey  <tom@tromey.com>
13675
13676         * linespec.c (canonical_to_fullform): Return std::string.
13677         (filter_results): Update.
13678         (struct decode_line_2_item): Add constructor.
13679         <fullform, displayform>: Now std::string.
13680         (decode_line_2_compare_items): Now a std::sort comparator.
13681         (decode_line_2): Update.
13682
13683 2018-04-05  Tom Tromey  <tom@tromey.com>
13684
13685         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
13686         (unexpected_linespec_error): Update.
13687         (linespec_parse_basic, parse_linespec): Update.
13688
13689 2018-04-05  Tom Tromey  <tom@tromey.com>
13690
13691         * linespec.c (linespec_parse_basic): Reindent.
13692
13693 2018-04-05  Tom Tromey  <tom@tromey.com>
13694
13695         * minsyms.h (iterate_over_minimal_symbols): Update.
13696         * minsyms.c (iterate_over_minimal_symbols): Take a
13697         gdb::function_view.
13698         * linespec.c (struct collect_minsyms): Remove.
13699         (compare_msyms): Now a std::sort comparator.
13700         (add_minsym): Add parameters.
13701         (search_minsyms_for_name): Update.  Use std::vector.
13702
13703 2018-04-03  Tom Tromey  <tom@tromey.com>
13704
13705         * mipsread.c (read_alphacoff_dynamic_symtab): Use
13706         gdb::byte_vector.
13707
13708 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13709
13710         * MAINTAINERS (Write After Approval): Add Weimin Pan.
13711
13712 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13713
13714         PR gdb/16959
13715         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
13716         printing static type.
13717
13718 2018-04-01  Tom Tromey  <tom@tromey.com>
13719
13720         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
13721         (rs6000_xfer_shared_libraries): Update.
13722
13723 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
13724
13725         * common/gdb_vecs.h (char_ptr): Remove.
13726         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
13727
13728 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13729
13730         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
13731         with std::vector.
13732         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
13733
13734 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13735
13736         * tracepoint.h (struct uploaded_tp): Initialize fields.
13737         <actions, step_actions, cmd_strings>: Change type to
13738         std::vector<char *>.
13739         * tracepoint.c (get_uploaded_tp): Allocate with new.
13740         (free_uploaded_tps): Free with delete.
13741         (parse_tracepoint_definition): Adjust to std::vector change.
13742         * breakpoint.c (read_uploaded_action): Likewise.
13743         (create_tracepoint_from_upload): Likewise.
13744         * ctf.c (ctf_write_uploaded_tp): Likewise.
13745         (SET_ARRAY_FIELD): Likewise.
13746         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
13747
13748 2018-03-30  Tom Tromey  <tom@tromey.com>
13749
13750         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
13751         std::unique_ptr.
13752         (svr4_keep_data_in_core): Update.
13753         (svr4_read_so_list): Update.
13754
13755 2018-03-30  Tom Tromey  <tom@tromey.com>
13756
13757         * windows-nat.c (handle_output_debug_string, handle_exception):
13758         Update.
13759         * target.h (target_read_string): Update.
13760         * target.c (target_read_string): Change "string" to
13761         unique_xmalloc_ptr.
13762         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
13763         Update.
13764         * solib-frv.c (frv_current_sos): Update.
13765         * solib-dsbt.c (dsbt_current_sos): Update.
13766         * solib-darwin.c (darwin_current_sos): Update.
13767         * linux-thread-db.c (inferior_has_bug): Update.
13768         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
13769         Update.  Remove alloca.
13770         * ada-lang.c (ada_main_name): Update.
13771
13772 2018-03-30  Tom Tromey  <tom@tromey.com>
13773
13774         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
13775         (struct dwo_file_deleter): New.
13776         (dwo_file_up): New typedef.
13777         (open_and_init_dwo_file): Use dwo_file_up.
13778         (free_dwo_file_cleanup): Remove.
13779
13780 2018-03-30  Tom Tromey  <tom@tromey.com>
13781
13782         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
13783         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
13784
13785 2018-03-30  Tom Tromey  <tom@tromey.com>
13786
13787         * dwarf2read.c (class free_cached_comp_units): New class.
13788         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
13789         (free_cached_comp_units): Remove function.
13790
13791 2018-03-30  Tom Tromey  <tom@tromey.com>
13792
13793         * utils.h (make_cleanup_unpush_target): Remove.
13794         * inf-ptrace.c (struct target_unpusher): New.
13795         (target_unpush_up) New typedef.
13796         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
13797         target_unpush_up.
13798         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
13799
13800 2018-03-27  Tom Tromey  <tom@tromey.com>
13801
13802         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
13803
13804 2018-03-27  Pedro Alves  <palves@redhat.com>
13805             Tom Tromey  <tom@tromey.com>
13806
13807         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
13808         destructor.  Now a class.
13809         (gdb_readline_wrapper_cleanup): Remove function.
13810         (gdb_readline_wrapper): Remove cleanups.
13811
13812 2018-03-27  Tom Tromey  <tom@tromey.com>
13813
13814         * typeprint.h (struct type_print_options) <local_typedefs,
13815         global_typedefs>: Remove "struct" keyword.
13816         (class typedef_hash_table): New class.
13817         (recursively_update_typedef_hash, add_template_parameters)
13818         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
13819         (find_typedef_in_hash): Don't declare.
13820         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
13821         (typedef_hash_table::recursively_update): Rename from
13822         recursively_update_typedef_hash.  Now a member.
13823         (typedef_hash_table::add_template_parameters): Rename from
13824         add_template_parameters.  Now a member.
13825         (typedef_hash_table::typedef_hash_table): Now a constructor;
13826         rename from create_typedef_hash.
13827         (typedef_hash_table::~typedef_hash_table): Now a destructor;
13828         rename from free_typedef_hash.
13829         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
13830         (do_free_global_table): Remove.
13831         (typedef_hash_table::typedef_hash_table): New constructor; renamed
13832         from copy_type_recursive.
13833         (create_global_typedef_table): Remove.
13834         (typedef_hash_table::find_global_typedef): Now a member of
13835         typedef_hash_table.
13836         (typedef_hash_table::find_typedef): Rename from
13837         find_typedef_in_hash; now a member.
13838         (whatis_exp): Update.
13839         * extension.h (struct ext_lang_type_printers): Add constructor and
13840         destructor.
13841         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
13842         declare.
13843         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
13844         Now a constructor; rename from start_ext_lang_type_printers.
13845         (ext_lang_type_printers): Now a destructor; rename from
13846         free_ext_lang_type_printers.
13847         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
13848         Update.
13849         (c_type_print_base_struct_union): Update.  Remove cleanups.
13850
13851 2018-03-27  Tom Tromey  <tom@tromey.com>
13852
13853         * dwarf-index-write.c: Include <cmath>.
13854
13855 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13856
13857         * NEWS: Add entry describing new "set|show varsize-limit" command.
13858         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
13859         command.
13860         * printcmd.c (_initialize_printcmd): Add "set var" alias of
13861         "set variable".
13862
13863 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
13864
13865         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
13866         dwarf-index-write.c
13867         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
13868         * dwarf-index-common.c: New file.
13869         * dwarf-index-common.h: New file.
13870         * dwarf-index-write.c: New file.
13871         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
13872         (struct dwarf2_section_info): Move from here.
13873         (dwarf2_section_info_def): Likewise.
13874         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
13875         (offset_type): Likewise.
13876         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
13877         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
13878         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
13879         (byte_swap): Likewise.
13880         (MAYBE_SWAP): Likewise.
13881         (dwarf2_per_cu_ptr): Likewise.
13882         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
13883         (struct tu_stats): Likewise.
13884         (struct dwarf2_per_objfile): Likewise.
13885         (struct dwarf2_per_cu_data): Likewise.
13886         (struct signatured_type): Likewise.
13887         (sig_type_ptr): Likewise.
13888         (DEF_VEC_P (sig_type_ptr)): Likewise.
13889         (INDEX4_SUFFIX): Likewise.
13890         (INDEX5_SUFFIX): Likewise.
13891         (DEBUG_STR_SUFFIX): Likewise.
13892         (dwarf2_read_section): Make non-static.
13893         (mapped_index_string_hash): Move from here.
13894         (dwarf5_djb_hash): Likewise.
13895         (file_write): Likewise.
13896         (class data_buf): Likewise.
13897         (struct symtab_index_entry): Likewise.
13898         (struct mapped_symtab): Likewise.
13899         (find_slot): Likewise.
13900         (hash_expand): Likewise.
13901         (add_index_entry): Likewise.
13902         (uniquify_cu_indices): Likewise.
13903         (class c_str_view): Likewise.
13904         (class c_str_view_hasher): Likewise.
13905         (class vector_hasher): Likewise.
13906         (write_hash_table): Likewise.
13907         (psym_index_map): Likewise.
13908         (struct addrmap_index_data): Likewise.
13909         (add_address_entry): Likewise.
13910         (add_address_entry_worker): Likewise.
13911         (write_address_map): Likewise.
13912         (symbol_kind): Likewise.
13913         (write_psymbols): Likewise.
13914         (struct signatured_type_index_data): Likewise.
13915         (write_one_signatured_type): Likewise.
13916         (recursively_count_psymbols): Likewise.
13917         (recursively_write_psymbols): Likewise.
13918         (class debug_names): Likewise.
13919         (check_dwarf64_offsets): Likewise.
13920         (psyms_seen_size): Likewise.
13921         (write_gdbindex): Likewise.
13922         (write_debug_names): Likewise.
13923         (assert_file_size): Likewise.
13924         (write_psymtabs_to_index): Likewise.
13925         (save_gdb_index_command): Likewise.
13926         (_initialize_dwarf2_read): Don't register the "save gdb-index"
13927         command.
13928         * dwarf2read.h: New file.
13929
13930 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13931
13932         PR gdb/22670
13933         * dwarf2read.c (dwarf2_physname): Do not return the demangled
13934         symbol name if the CU's language stores symbol names in linkage
13935         format.
13936         * language.h (struct language_defn)
13937         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
13938         all instances of this struct.
13939
13940 2018-03-26  Tom Tromey  <tom@tromey.com>
13941
13942         * stack.c (backtrace_command_1): Remove verbose code.
13943
13944 2018-03-26  Tom Tromey  <tom@tromey.com>
13945
13946         * python/py-framefilter.c (py_print_type): Don't catch
13947         exceptions.  Return void.
13948         (py_print_value): Likewise.
13949         (py_print_single_arg): Likewise.
13950         (enumerate_args): Don't catch exceptions.
13951         (py_print_args): Likewise.
13952         (py_print_frame): Likewise.
13953         (gdbpy_apply_frame_filter): Catch exceptions here.
13954
13955 2018-03-26  Tom Tromey  <tom@tromey.com>
13956
13957         * stack.c (_initialize_stack): Remove trailing newlines from help
13958         text.  Add "Usage" line to "backtrace" help.
13959
13960 2018-03-26  Tom Tromey  <tom@tromey.com>
13961
13962         PR python/16486:
13963         * python/py-framefilter.c (py_print_args): Call wrap_hint.
13964
13965 2018-03-26  Tom Tromey  <tom@tromey.com>
13966
13967         * python/py-framefilter.c (py_print_single_arg): Return
13968         EXT_LANG_BT_ERROR from catch.
13969
13970 2018-03-26  Tom Tromey  <tom@tromey.com>
13971
13972         PR backtrace/15584:
13973         * stack.c (backtrace_command_1): Move some code into no-filters
13974         "if".
13975
13976 2018-03-26  Tom Tromey  <tom@tromey.com>
13977
13978         * python/py-framefilter.c (throw_quit_or_print_exception): New
13979         function.
13980         (gdbpy_apply_frame_filter): Use it.
13981
13982 2018-03-26  Tom Tromey  <tom@tromey.com>
13983
13984         PR cli/17716:
13985         * python/py-framefilter.c (py_print_type, py_print_value)
13986         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
13987         RETURN_MASK_ERROR.
13988
13989 2018-03-26  Tom Tromey  <tom@tromey.com>
13990
13991         * python/py-framefilter.c (enumerate_args): Use
13992         gdb::unique_xmalloc_ptr.
13993
13994 2018-03-26  Tom Tromey  <tom@tromey.com>
13995
13996         * python/py-framefilter.c (py_print_frame): Return
13997         EXT_LANG_BT_OK.
13998         (gdbpy_apply_frame_filter): Update comment.
13999         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
14000         Remove.
14001         <EXT_LANG_BT_NO_FILTERS>: Change value.
14002
14003 2018-03-26  Tom Tromey  <tom@tromey.com>
14004
14005         PR backtrace/15582:
14006         * stack.c (backtrace_command): Parse "hide" argument.
14007         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
14008         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
14009         constant.
14010
14011 2018-03-26  Tom Tromey  <tom@tromey.com>
14012
14013         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
14014         add "flags".
14015         (backtrace_command): Remove "fulltrace", add "flags".
14016
14017 2018-03-26  Tom Tromey  <tom@tromey.com>
14018
14019         * stack.c (backtrace_command): Rewrite command line parsing.
14020
14021 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
14022
14023         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
14024
14025 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
14026
14027         * filename-seen-cache.h: Add include guard.
14028
14029 2018-03-26  Keith Seitz  <keiths@redhat.com>
14030
14031         * symfile.c (place_section): Remove "struct" from section_addr_info
14032         in comment.
14033         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
14034         "struct" keyword from section_addr_info.
14035
14036 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
14037
14038         * regformats/regdef.h (reg): Add constructors.
14039
14040 2018-03-25  Pedro Alves  <palves@redhat.com>
14041
14042         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
14043         if then/else bodies in var_func_name extraction.
14044
14045 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
14046
14047         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
14048         lookup_minimal_symbol() to find symbol entry.
14049         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
14050
14051 2018-03-23  Keith Seitz  <keiths@redhat.com>
14052
14053         PR c++/22968
14054         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
14055         nested type definitions for C++, too.
14056
14057 2018-03-23  Tom Tromey  <tom@tromey.com>
14058
14059         * machoread.c (struct oso_el): Add a constructor.  Don't define as
14060         a typedef.
14061         (macho_register_oso): Remove.
14062         (macho_symtab_read): Take a std::vector.
14063         (oso_el_compare_name): Now a std::sort comparator.
14064         (macho_symfile_read_all_oso): Take a std::vector.
14065         (macho_symfile_read): Use std::vector.  Remove cleanups.
14066
14067 2018-03-22  Tom Tromey  <tom@tromey.com>
14068
14069         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
14070         (record_full_goto_bookmark): Use std::string.
14071
14072 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
14073
14074         PR tdep/18295
14075         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
14076         a single mask.
14077
14078 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
14079
14080         * rs6000-tdep.c (store_insn_p): New function.
14081         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
14082         and cr_reg to their unshifted values. Use store_insn_p to
14083         match LR saves using either R1 or fdata->alloca_reg. Use
14084         store_insn_p to match CR saves. Set alloca_reg_offset
14085         when alloca_reg and framep are set. Remove lr_reg shift
14086         when assigning to fdata->lr_register.
14087
14088 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14089
14090         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
14091         command line args instead of emitting a warning.
14092
14093 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
14094
14095         * tracepoint.h (struct static_tracepoint_marker): Initialize
14096         fields, define default constructor, move constructor and move
14097         assignment, disable the rest.
14098         <str_id, extra>: Make std::string.
14099         (release_static_tracepoint_marker): Remove.
14100         (free_current_marker): Remove.
14101         * tracepoint.c (free_current_marker): Remove.
14102         (parse_static_tracepoint_marker_definition): Adjust to
14103         std::string, use new hex2str overload.
14104         (release_static_tracepoint_marker): Remove.
14105         (print_one_static_tracepoint_marker): Get marker by reference
14106         and adjust to std::string.
14107         (info_static_tracepoint_markers_command): Adjust to std::vector
14108         changes
14109         * target.h (static_tracepoint_marker_p): Remove typedef.
14110         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
14111         (struct target_ops) <to_static_tracepoint_marker_at>: Return
14112         bool.
14113         <to_static_tracepoint_markers_by_strid>: Return std::vector.
14114         * target-debug.h
14115         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
14116         (target_debug_print_std_vector_static_tracepoint_marker): New.
14117         (target_debug_print_struct_static_tracepoint_marker_p): Rename
14118         to...
14119         (target_debug_print_static_tracepoint_marker_p): ... this.
14120         * target-delegates.c: Re-generate.
14121         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
14122         Make std::string.
14123         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
14124         (decode_static_tracepoint_spec): Adjust to std::vector.
14125         (tracepoint_print_one_detail): Adjust to std::string.
14126         (strace_marker_decode_location): Adjust to std::string.
14127         (update_static_tracepoint): Adjust to std::string, remove call
14128         to release_static_tracepoint_marker.
14129         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
14130         Adjust to std::vector.
14131         * remote.c (remote_static_tracepoint_marker_at): Return bool.
14132         (remote_static_tracepoint_markers_by_strid): Adjust to
14133         std::vector.
14134         * common/rsp-low.h (hex2str): New overload with explicit count
14135         of bytes.
14136         * common/rsp-low.c (hex2str): New overload with explicit count
14137         of bytes.
14138         * unittests/rsp-low-selftests.c (test_hex2str): New function.
14139         (_initialize_rsp_low_selftests): Add test_hex2str test.
14140         * unittests/tracepoint-selftests.c
14141         (test_parse_static_tracepoint_marker_definition): Adjust to
14142         std::string.
14143
14144 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
14145
14146         * tracepoint.c (parse_static_tracepoint_marker_definition):
14147         Consider case where the definition is followed by more
14148         definitions.
14149         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14150         tracepoint-selftests.c.
14151         * unittests/tracepoint-selftests.c: New.
14152
14153 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
14154
14155         * MAINTAINERS (Write After Approval): Add Pedro Franco de
14156         Carvalho.
14157
14158 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
14159
14160         * symtab.c (find_pc_sect_line): fixed indentation.
14161
14162 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
14163
14164         * symtab.c (find_pc_sect_line): now uses binary search.
14165
14166 2018-03-19  Tom Tromey  <tom@tromey.com>
14167
14168         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
14169         "IDENT" production.
14170
14171 2018-03-19  Pedro Alves  <palves@redhat.com>
14172             Tom Tromey  <tom@tromey.com>
14173
14174         * unittests/observable-selftests.c: New file.
14175         * common/observable.h: New file.
14176         * observable.h: New file.
14177         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
14178         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
14179         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
14180         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
14181         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
14182         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
14183         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
14184         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
14185         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
14186         python/py-breakpoint.c, python/py-finishbreakpoint.c,
14187         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
14188         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
14189         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
14190         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
14191         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
14192         tui/tui-interp.c, valops.c: Update all users.
14193         * tui/tui-hooks.c (tui_bp_created_observer)
14194         (tui_bp_deleted_observer, tui_bp_modified_observer)
14195         (tui_inferior_exit_observer, tui_before_prompt_observer)
14196         (tui_normal_stop_observer, tui_register_changed_observer):
14197         Remove.
14198         (tui_observers_token): New global.
14199         (attach_or_detach, tui_attach_detach_observers): New functions.
14200         (tui_install_hooks, tui_remove_hooks): Use
14201         tui_attach_detach_observers.
14202         * record-btrace.c (record_btrace_thread_observer): Remove.
14203         (record_btrace_thread_observer_token): New global.
14204         * observer.sh: Remove.
14205         * observer.c: Rename to observable.c.
14206         * observable.c (namespace gdb_observers): Define new objects.
14207         (observer_debug): Move into gdb_observers namespace.
14208         (struct observer, struct observer_list, xalloc_observer_list_node)
14209         (xfree_observer_list_node, generic_observer_attach)
14210         (generic_observer_detach, generic_observer_notify): Remove.
14211         (_initialize_observer): Update.
14212         Don't include observer.inc.
14213         * Makefile.in (generated_files): Remove observer.h, observer.inc.
14214         (clean mostlyclean): Likewise.
14215         (observer.h, observer.inc): Remove targets.
14216         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
14217         (COMMON_SFILES): Use observable.c, not observer.c.
14218         * .gitignore: Remove observer.h.
14219
14220 2018-03-18  Tom Tromey  <tom@tromey.com>
14221
14222         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
14223         gdb::def_vector.
14224         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
14225
14226 2018-03-17  Tom Tromey  <tom@tromey.com>
14227
14228         * auto-load.c (auto_load_objfile_script_1): Use std::string.
14229
14230 2018-03-17  Tom Tromey  <tom@tromey.com>
14231
14232         * target.c (class scoped_target_fd): New.
14233         (target_fileio_close_cleanup): Remove.
14234         (target_fileio_read_alloc_1): Use scoped_target_fd.
14235
14236 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
14237
14238         * silent-rules.mk: New.
14239         * Makefile.in: Include silent-rules.mk
14240         (srcdir, VPATH, top_srcdir): Move up.
14241         (COMPILE): Add ECHO_CXX.
14242         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
14243         (init.c): Add ECHO_INIT_C.
14244         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
14245         (version.c): Add ECHO_GEN.
14246         (printcmd.o): Add ECHO_CXX.
14247         (target-float.o): Add ECHO_CXX.
14248         (ada-exp.o): Add ECHO_CXX.
14249         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
14250         (insight$(EXEEXT)): Add ECHO_CXXLD.
14251         * gnulib/configure.ac: Add AM_SILENT_RULES.
14252         * gnulib/aclocal.m4: Re-generate.
14253         * gnulib/configure: Re-generate.
14254         * gnulib/import/Makefile.in: Re-generate.
14255
14256 2018-03-16  Tom Tromey  <tom@tromey.com>
14257
14258         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
14259         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
14260         * utils.c (do_free_section_addr_info)
14261         (make_cleanup_free_section_addr_info): Remove.
14262         * symfile.h (struct other_sections): Add constructor.
14263         (struct section_addr_info): Remove.
14264         (section_addr_info): New typedef.
14265         (struct sym_fns) <sym_offsets>: Change type of parameter.
14266         (build_section_addr_info_from_objfile)
14267         (relative_addr_info_to_section_offsets, addr_info_make_relative)
14268         (default_symfile_offsets, symbol_file_add)
14269         (symbol_file_add_from_bfd)
14270         (build_section_addr_info_from_section_table): Update.
14271         (alloc_section_addr_info, free_section_addr_info): Don't declare.
14272         * symfile.c (alloc_section_addr_info): Remove.
14273         (build_section_addr_info_from_section_table): Change return type.
14274         Update.
14275         (build_section_addr_info_from_bfd)
14276         (build_section_addr_info_from_objfile): Likewise.
14277         (free_section_addr_info): Remove.
14278         (relative_addr_info_to_section_offsets): Change type of "addrs".
14279         (addrs_section_compar): Now a std::sort comparator.
14280         (addrs_section_sort): Change return type.
14281         (addr_info_make_relative): Change type of "addrs".  Update.
14282         (default_symfile_offsets, syms_from_objfile_1)
14283         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
14284         (symbol_file_add_separate): Update.
14285         (symbol_file_add): Change type of "addrs".  Update.
14286         (add_symbol_file_command): Update.  Remove cleanups.
14287         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
14288         cleanups.
14289         * symfile-debug.c (debug_sym_offsets): Change type of "info".
14290         * solib.c (solib_read_symbols): Update.
14291         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
14292         * machoread.c (macho_symfile_offsets): Update.
14293         * jit.c (jit_bfd_try_read_symtab): Update.
14294
14295 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
14296
14297         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14298         unittests/utils-selftests.c.
14299         * unittests/utils-selftests.c: New file.
14300
14301 2018-03-14  Tom Tromey  <tom@tromey.com>
14302
14303         PR cli/14977:
14304         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
14305         for NULL.
14306
14307 2018-03-14  Tom Tromey  <tom@tromey.com>
14308
14309         PR cli/19918:
14310         * printcmd.c (printf_pointer): Allow "-" in format.
14311
14312 2018-03-14  Tom Tromey  <tom@tromey.com>
14313
14314         * printcmd.c (_initialize_printcmd): Add usage to printf.
14315
14316 2018-03-14  Yao Qi  <qiyao@sourceware.org>
14317
14318         * MAINTAINERS: Update my email address.
14319
14320 2018-03-13  Tom Tromey  <tom@tromey.com>
14321
14322         * machoread.c (macho_check_dsym): Change filenamep to a
14323         std::string*.
14324         (macho_symfile_read): Update.
14325         * symfile.c (load_command): Use std::string.
14326
14327 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
14328
14329         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
14330         to error message string.
14331         (riscv_register_name): Use xsnprintf instead of sprintf.
14332         (riscv_insn::fetch_instruction): Use gdb_assert instead of
14333         internal_error.
14334         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
14335         error.
14336         (riscv_push_dummy_call): Likewise.
14337
14338 2018-03-12  Tom Tromey  <tom@tromey.com>
14339
14340         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
14341         Use gdb::byte_vector.
14342         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
14343
14344 2018-03-12  Yao Qi  <yao.qi@linaro.org>
14345
14346         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
14347         parameter type to readable_regcache.
14348         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
14349         the declaration.
14350
14351 2018-03-11  Tom Tromey  <tom@tromey.com>
14352
14353         * dwarf2read.c (struct nextfield): Add initializers.
14354         (struct nextfnfield): Remove.
14355         (struct fnfieldlist): Add initializers.  Remove "length" and
14356         "head", use std::vector.
14357         (struct decl_field_list): Remove.
14358         (struct field_info): Add initializers.
14359         <fields, baseclasses>: Now std::vector.
14360         <nbaseclasses, nfnfields, typedef_field_list_count,
14361         nested_types_list_count>: Remove.
14362         (dwarf2_add_field, dwarf2_add_type_defn)
14363         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
14364         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
14365         (process_structure_scope): Update.
14366
14367 2018-03-11  Tom Tromey  <tom@tromey.com>
14368
14369         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
14370         for use by std::sort.
14371         (build_type_psymtabs_1): Use std::vector.
14372
14373 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
14374
14375         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
14376         and LIBMPFR in the printed configuration.
14377
14378 2018-03-08  Tom Tromey  <tom@tromey.com>
14379
14380         * source.c (get_filename_and_charpos): Use scoped_fd.
14381         * nto-procfs.c (procfs_open_1): Use scoped_fd.
14382         (procfs_pidlist): Likewise.
14383         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
14384         (iterate_over_mappings): Likewise.
14385
14386 2018-03-08  Tom Tromey  <tom@tromey.com>
14387
14388         * infcall.c (struct call_return_meta_info)
14389         <stack_temporaries_enabled>: Remove.
14390         (get_call_return_value, call_function_by_hand_dummy): Update.
14391         * thread.c (disable_thread_stack_temporaries): Remove.
14392         (enable_thread_stack_temporaries): Remove.
14393         (thread_stack_temporaries_enabled_p): Return bool.
14394         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
14395         (get_last_thread_stack_temporary): Update.
14396         * eval.c (evaluate_subexp): Update.
14397         * gdbthread.h (class enable_thread_stack_temporaries): Now a
14398         class, not a function.
14399         (value_ptr, value_vec): Remove typedefs.
14400         (class thread_info) <stack_temporaries_enabled>: Now bool.
14401         <stack_temporaries>: Now a std::vector.
14402         (thread_stack_temporaries_enabled_p)
14403         (value_in_thread_stack_temporaries): Return bool.
14404
14405 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
14406
14407         * remote.c (putpkt_binary): Fix omitted bytes reporting.
14408         (getpkt_or_notif_sane_1): Likewise.
14409
14410 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14411
14412         * build-id.c (build_id_to_debug_bfd): Use std::string.
14413
14414 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14415
14416         * build-id.c (find_separate_debug_file_by_buildid): Return
14417         std::string.
14418         * build-id.h (find_separate_debug_file_by_buildid): Return
14419         std::string.
14420         * coffread.c (coff_symfile_read): Adjust to std::string.
14421         * elfread.c (elf_symfile_read): Adjust to std::string.
14422         * symfile.c (separate_debug_file_exists): Change parameter to
14423         std::string.
14424         (find_separate_debug_file): Return std::string.
14425         (find_separate_debug_file_by_debuglink): Return std::string.
14426         * symfile.h (find_separate_debug_file_by_debuglink): Return
14427         std::string.
14428
14429 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14430
14431         * common/xml-utils.c (xml_escape_text): Move code to...
14432         (xml_escape_text_append): ... this new function.
14433         * common/xml-utils.h (xml_escape_text_append): New declaration.
14434         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
14435         New function.
14436         (_initialize_xml_utils): register test_xml_escape_text_append as
14437         a selftest.
14438
14439 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
14440
14441         * defs.h: Remove MAX_REGISTER_SIZE.
14442         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
14443         asserts.
14444         * python/py-unwind.c (pyuw_sniffer): Likewise.
14445
14446 2018-03-07  Tom Tromey  <tom@tromey.com>
14447
14448         * linux-tdep.c (linux_info_proc): Update.
14449         * target.h (struct target_ops) <to_fileio_readlink>: Return
14450         optional<string>.
14451         (target_fileio_readlink): Return optional<string>.
14452         * remote.c (remote_hostio_readlink): Return optional<string>.
14453         * inf-child.c (inf_child_fileio_readlink): Return
14454         optional<string>.
14455         * target.c (target_fileio_readlink): Return optional<string>.
14456
14457 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
14458
14459         * regcache.c (cooked_read_test): Add riscv to the list of
14460         architectures that have a save_reggroup.
14461
14462 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14463
14464         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
14465         value is not a dynamic class object.
14466
14467 2018-03-06  Tom Tromey  <tom@tromey.com>
14468
14469         * rust-exp.y: Formatting fixes.
14470
14471 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14472
14473         * riscv-tdep.c (riscv_register_name): Remove target description
14474         support.
14475         (riscv_gdbarch_init): Remove target description check.
14476
14477 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14478
14479         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
14480         comment.
14481         * riscv-tdep.h: Likewise.
14482
14483 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14484
14485         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
14486         (riscv_pseudo_register_write): Delete.
14487         (riscv_gdbarch_init): Remove all use of pseudo registers.
14488
14489 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14490
14491         * record-btrace.c (btrace_print_lines): Replace cleanup
14492         parameter with RAII equivalents.
14493         (btrace_insn_history): Replace cleanup with RAII equivalents.
14494         * ui-out.h (make_cleanup_ui_out_list_begin_end,
14495         make_cleanup_ui_out_tuple_begin_end): Remove.
14496         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
14497         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
14498         make_cleanup_ui_out_list_begin_end): Remove.
14499
14500 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14501
14502         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
14503         parameter types to std::vector.  Use bool.
14504         (record_btrace_wait): Replace VEC(tp_t) with
14505         std::vector<thread_info *>.
14506         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
14507
14508 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14509
14510         * record-btrace.c (record_btrace_disable_callback): Remove.
14511         (struct scoped_btrace_disable): New.
14512         (record_btrace_open): Use scoped_btrace_disable.
14513
14514 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14515
14516         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
14517         reading values from registers.
14518
14519 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14520
14521         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
14522         where appropriate.
14523
14524 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14525
14526         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
14527         change parameter type.  Use GDB's print functions, and use
14528         core_addr_to_string where appropriate.
14529         (riscv_push_dummy_call): Use core_addr_to_string where
14530         appropriate, update call to riscv_print_arg_location, and reindent
14531         a few lines.
14532         (riscv_return_value): Update call to riscv_print_arg_location.
14533
14534 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14535             Tim Newsome <tim@sifive.com>
14536             Albert Ou <a0u@eecs.berkeley.edu>
14537             Darius Rad <darius@bluespec.com>
14538
14539         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
14540         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
14541         (ALLDEPFILES): Add riscv-tdep.c
14542         * configure.tgt: Add riscv support.
14543         * riscv-tdep.c: New file.
14544         * riscv-tdep.h: New file.
14545         * NEWS: Mention new target.
14546         * MAINTAINERS: Add entry for riscv.
14547
14548 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14549
14550         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
14551         fields within aggregates.
14552
14553 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
14554
14555         * record-btrace.c (btrace_print_lines): Change type of flags to
14556         gdb_disassembly_flags.
14557
14558 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14559
14560         * fbsd-nat.c: Include "inf-ptrace.h".
14561         (USE_SIGTRAP_SIGINFO): Conditionally define.
14562         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
14563         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
14564         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
14565         function.
14566         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
14567         Likewise.
14568         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
14569         Likewise.
14570         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
14571         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
14572         "supports_stopped_by_hw_breakpoint" target methods.
14573
14574 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14575
14576         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
14577         * fbsd-nat.c (debug_fbsd_nat): New variable.
14578         (show_fbsd_nat_debug): New function.
14579         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
14580         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
14581
14582 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14583
14584         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
14585         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
14586         prototype.
14587         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
14588         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
14589         method.
14590
14591 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14592
14593         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
14594         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
14595
14596 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14597
14598         * charset.c (struct charset_vector): New.
14599         (charsets): Change type to charset_vector.
14600         (find_charset_names): Adjust.
14601         (add_one): Adjust.
14602         (_initialize_charset): Adjust.
14603
14604 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14605
14606         * progspace.h (struct program_space) <deleted_solibs>: Change
14607         type to std::vector<std::string>.
14608         * progspace.c (clear_program_space_solib_cache): Adjust.
14609         * breakpoint.c (print_solib_event): Adjust.
14610         (check_status_catch_solib): Adjust.
14611         * solib.c (update_solib_list): Adjust.
14612         * ui-out.h (class ui_out) <field_string>: New overload.
14613         * ui-out.c (ui_out::field_string): New overload.
14614
14615 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14616
14617         * progspace.h (struct program_space): Add constructor and
14618         destructor, initialize fields.
14619         (add_program_space): Remove.
14620         * progspace.c (add_program_space): Rename to...
14621         (program_space::program_space): ... this.
14622         (release_program_space): Rename to...
14623         (program_space::~program_space): ... this.
14624         (delete_program_space): Use delete to delete program_space.
14625         (initialize_progspace): Use new to allocate program_space.
14626         * inferior.c (add_inferior_with_spaces): Likewise.
14627         (clone_inferior_command): Likewise.
14628         * infrun.c (follow_fork_inferior): Likewise.
14629         (handle_vfork_child_exec_or_exit): Likewise.
14630
14631 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14632
14633         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
14634         (delim_string_to_char_ptr_vec): Return std::vector of
14635         gdb::unique_xmalloc_ptr.
14636         (dirnames_to_char_ptr_vec_append): Take std::vector of
14637         gdb::unique_xmalloc_ptr.
14638         (dirnames_to_char_ptr_vec): Return std::vector of
14639         gdb::unique_xmalloc_ptr.
14640         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
14641         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
14642         (delim_string_to_char_ptr_vec): Return an std::vector of
14643         gdb::unique_xmalloc_ptr, adjust the code.
14644         (dirnames_to_char_ptr_vec_append): Take an std::vector of
14645         gdb::unique_xmalloc_ptr, adjust the code.
14646         (dirnames_to_char_ptr_vec): Return an std::vector of
14647         gdb::unique_xmalloc_ptr, adjust the code.
14648         * auto-load.c (auto_load_safe_path_vec): Change type to
14649         std::vector of gdb::unique_xmalloc_ptr.
14650         (auto_load_expand_dir_vars): Return an std::vector of
14651         gdb::unique_xmalloc_ptr, adjust the code.
14652         (auto_load_safe_path_vec_update): Adjust.
14653         (filename_is_in_auto_load_safe_path_vec): Adjust.
14654         (auto_load_objfile_script_1): Adjust.
14655         * build-id.c (build_id_to_debug_bfd): Adjust.
14656         * linux-thread-db.c (thread_db_load_search): Adjust.
14657         * source.c (add_path): Adjust.
14658         (openp): Adjust.
14659         * symfile.c (find_separate_debug_file): Adjust.
14660         * utils.c (do_free_char_ptr_vec): Remove.
14661         (make_cleanup_free_char_ptr_vec): Remove.
14662
14663 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
14664
14665         PR gdb/22907
14666         * common/pathstuff.c: Conditionally include "<windows.h>".
14667
14668 2018-03-01  Georg Sauthoff  <mail@georg.so>
14669
14670         PR gdb/22888
14671         * gcore.in: Quote variables and switch interpreter to bash.
14672
14673 2018-03-01  Tom Tromey  <tom@tromey.com>
14674
14675         * dwarf2read.c (alloc_discriminant_info): Fix default_index
14676         assertion.  Add assertion for discriminant_index.
14677         (quirk_rust_enum): Use correct base type name in univariant case.
14678
14679 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
14680
14681         * record.c (get_call_history_modifiers): Return a
14682         record_print_flags.
14683         (cmd_record_call_history): Adjust.
14684         * record-btrace.c (record_btrace_call_history): Adjust.
14685         (record_btrace_call_history_range): Adjust.
14686         (record_btrace_call_history_from): Adjust.
14687         * target-debug.h (target_debug_print_record_print_flags): New.
14688         * target-delegates.c: Re-generate.
14689         * target.c (target_call_history): Change flags type.
14690         (target_call_history_from): Likewise.
14691         (target_call_history_range): Likewise.
14692         * target.h (struct target_ops) <target_call_history>: Likewise.
14693         (target_call_history_from): Likewise.
14694         (target_call_history_range): Likewise.
14695
14696 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14697             Simon Marchi  <simon.marchi@polymtl.ca>
14698
14699         * common/common-utils.c: Include "sys/stat.h".
14700         (is_regular_file): Move here from "source.c"; change return
14701         type to "bool".
14702         * common/common-utils.h (is_regular_file): New prototype.
14703         * common/pathstuff.c (contains_dir_separator): New function.
14704         * common/pathstuff.h (contains_dir_separator): New prototype.
14705         * source.c: Don't include "sys/stat.h".
14706         (is_regular_file): Move to "common/common-utils.c".
14707
14708 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14709
14710         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
14711         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
14712         * auto-load.c: Include "common/pathstuff.h".
14713         * common/common-def.h (current_directory): Move here.
14714         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
14715         function.
14716         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
14717         prototype.
14718         * common/pathstuff.c: New file.
14719         * common/pathstuff.h: New file.
14720         * compile/compile.c: Include "common/pathstuff.h".
14721         * defs.h (current_directory): Move to "common/common-defs.h".
14722         * dwarf2read.c: Include "common/pathstuff.h".
14723         * exec.c: Likewise.
14724         * guile/scm-safe-call.c: Likewise.
14725         * linux-thread-db.c: Likewise.
14726         * main.c: Likewise.
14727         * nto-tdep.c: Likewise.
14728         * objfiles.c: Likewise.
14729         * source.c: Likewise.
14730         * symtab.c: Likewise.
14731         * utils.c: Include "common/pathstuff.h".
14732         (gdb_realpath): Move to "common/pathstuff.c".
14733         (gdb_realpath_keepfile): Likewise.
14734         (gdb_abspath): Likewise.
14735         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
14736         (gdb_realpath_keepfile): Likewise.
14737         (gdb_abspath): Likewise.
14738
14739 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
14740
14741         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
14742         wildcard process pid for super_resume for kernels with a
14743         specific bug.
14744
14745 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
14746
14747         * compile/compile.c (get_args): Add additional comments
14748         explaining function.
14749
14750 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
14751             Tom Tromey  <tom@tromey.com>
14752
14753         * target.h (memory_write_request_s): Remove typedef.  Don't define
14754         VEC.
14755         (target_write_memory_blocks): Change argument to std::vector.
14756         (struct memory_write_request): Add constructor.
14757         * target-memory.c (compare_block_starting_address): Return bool.
14758         Change argument types.
14759         (claim_memory): Change arguments to use std::vector.
14760         (split_regular_and_flash_blocks, blocks_to_erase)
14761         (compute_garbled_blocks): Likewise.
14762         (cleanup_request_data, cleanup_write_requests_vector): Remove.
14763         (target_write_memory_blocks): Change argument to std::vector.
14764         * symfile.c (struct load_section_data): Add constructor and
14765         destructor.  Use std::vector for "requests".
14766         (struct load_progress_data): Add initializers.
14767         (load_section_callback): Update.  Use "new".
14768         (clear_memory_write_data): Remove.
14769         (generic_load): Update.
14770
14771 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
14772
14773         * arch/aarch64.h: Use common/tdesc.h.
14774
14775 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14776
14777         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
14778         architecture with a 64-bit ABI.
14779
14780 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14781
14782         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
14783         ahead of target description loading.
14784
14785 2018-02-26  Tom Tromey  <tom@tromey.com>
14786
14787         * stack.c (backtrace_command_1): Update.
14788         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
14789         of "flags".
14790         * python/py-framefilter.c (py_print_frame)
14791         (gdbpy_apply_frame_filter): Change type of "flags".
14792         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
14793         of "flags".
14794         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
14795         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
14796         * extension.h (enum frame_filter_flag): Rename from
14797         frame_filter_flags.
14798         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
14799         (apply_ext_lang_frame_filter): Change type of "flags".
14800         * extension.c (apply_ext_lang_frame_filter): Change type of
14801         "flags".
14802         * extension-priv.h (struct extension_language_ops)
14803         <apply_frame_filter>: Change type of "flags".
14804
14805 2018-02-26  Tom Tromey  <tom@tromey.com>
14806
14807         PR python/16497:
14808         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
14809         off-by-one in py_end computation.
14810         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
14811         PRINT_MORE_FRAMES.
14812         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
14813         constant.
14814
14815 2018-02-26  Tom Tromey  <tom@tromey.com>
14816
14817         * dwarf2read.c (struct variant_field): New.
14818         (struct nextfield) <variant>: New field.
14819         (dwarf2_add_field): Handle DW_TAG_variant_part.
14820         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
14821         discriminated union.
14822         (read_structure_type): Handle DW_TAG_variant_part.
14823         (handle_struct_member_die): New function, extracted from
14824         process_structure_scope.  Handle DW_TAG_variant.
14825         (process_structure_scope): Handle discriminated unions.  Call
14826         handle_struct_member_die.
14827
14828 2018-02-26  Tom Tromey  <tom@tromey.com>
14829
14830         * rust-lang.h (rust_last_path_segment): Declare.
14831         * rust-lang.c (rust_last_path_segment): Now public.  Change
14832         contract.
14833         (struct disr_info): Remove.
14834         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
14835         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
14836         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
14837         (rust_enum_p, rust_enum_variant): New function.
14838         (rust_underscore_fields): Remove "offset" parameter.
14839         (rust_print_enum): New function.
14840         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
14841         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
14842         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
14843         enums.
14844         (rust_internal_print_type): New function, from rust_print_type.
14845         Remove enum code.
14846         (rust_print_type): Call rust_internal_print_type.
14847         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
14848         Update enum handling.
14849         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
14850         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
14851         (rust_union_quirks): New functions.
14852         (process_full_comp_unit, process_full_type_unit): Call
14853         rust_union_quirks.
14854         (process_structure_scope): Update rust_unions if necessary.
14855
14856 2018-02-26  Tom Tromey  <tom@tromey.com>
14857
14858         * value.h (value_union_variant): Declare.
14859         * valops.c (value_union_variant): New function.
14860         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
14861         (struct discriminant_info): New.
14862         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
14863         enumerator.
14864         (struct main_type) <flag_discriminated_union>: New field.
14865
14866 2018-02-26  Tom Tromey  <tom@tromey.com>
14867
14868         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14869         unittests/unpack-selftests.c.
14870         * unittests/unpack-selftests.c: New file.
14871         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
14872
14873 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14874
14875         * dwarf2read.c (struct partial_die_info) <read>: New method.
14876         (read_partial_die): Remove the declaration.
14877         (load_partial_dies): Update.
14878         (partial_die_info::partial_die_info):
14879         (read_partial_die): Change it to partial_die_info::read.
14880
14881 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14882
14883         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
14884         (fixup_partial_die): Remove declaration.
14885         (scan_partial_symbols): Update.
14886         (partial_die_parent_scope): Likewise.
14887         (partial_die_full_name): Likewise.
14888         (fixup_partial_die): Change it to partial_die_info::fixup.
14889
14890 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14891
14892         * dwarf2read.c (read_partial_die): Update the declaration.
14893         (load_partial_dies): Caller update.
14894         (read_partial_die): Remove one argument abbrev_len.
14895
14896 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14897
14898         * dwarf2read.c (struct partial_die_info): Add ctor, delete
14899         assignment operator.
14900         (load_partial_dies): Use ctor and copy ctor.
14901         (read_partial_die): Update.
14902         (dwarf2_cu::find_partial_die): Use ctor.
14903
14904 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14905
14906         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
14907         (find_partial_die_in_comp_unit): Change it to
14908         dwarf2_cu::find_partial_die.
14909         (find_partial_die): Update.
14910
14911 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14912
14913         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
14914         is NULL.
14915
14916 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14917
14918         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
14919
14920 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
14921
14922         * arch/amd64.h: Use common/tdesc.h.
14923         * arch/i386.c: Likewise.
14924         * arch/i386.h: Likewise.
14925         * arch/tic6x.c: Likewise.
14926         * arch/tdesc.h: Move file from here...
14927         * common/tdesc.h: ...to here.
14928         * features/aarch64-core.c: Regenerate.
14929         * features/aarch64-fpu.c: Regenerate.
14930         * features/i386/32bit-avx.c: Regenerate.
14931         * features/i386/32bit-avx512.c: Regenerate.
14932         * features/i386/32bit-core.c: Regenerate.
14933         * features/i386/32bit-linux.c: Regenerate.
14934         * features/i386/32bit-mpx.c: Regenerate.
14935         * features/i386/32bit-pkeys.c: Regenerate.
14936         * features/i386/32bit-sse.c: Regenerate.
14937         * features/i386/64bit-avx.c: Regenerate.
14938         * features/i386/64bit-avx512.c: Regenerate.
14939         * features/i386/64bit-core.c: Regenerate.
14940         * features/i386/64bit-linux.c: Regenerate.
14941         * features/i386/64bit-mpx.c: Regenerate.
14942         * features/i386/64bit-pkeys.c: Regenerate.
14943         * features/i386/64bit-segments.c: Regenerate.
14944         * features/i386/64bit-sse.c: Regenerate.
14945         * features/i386/x32-core.c: Regenerate.
14946         * features/tic6x-c6xp.c: Regenerate.
14947         * features/tic6x-core.c: Regenerate.
14948         * features/tic6x-gp.c: Regenerate.
14949         * target-descriptions.c: Use common/tdesc.h.
14950         * target-descriptions.h: Likewise.
14951
14952 2018-02-24  Tom Tromey  <tom@tromey.com>
14953
14954         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
14955         (try_thread_db_load_from_dir, thread_db_load_search): Use
14956         std::string.
14957         (info_auto_load_libthread_db_compare): Return bool.  Change
14958         argument types.
14959         (info_auto_load_libthread_db): Use std::vector, std::string.
14960         Remove cleanups.
14961
14962 2018-02-24  Tom Tromey  <tom@tromey.com>
14963
14964         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
14965         std::string.
14966         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
14967         std::string*.
14968         * gdbarch.c: Rebuild.
14969         * gdbarch.h: Rebuild.
14970         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
14971         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
14972         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
14973         std::string*.
14974
14975 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
14976
14977         * gdbtypes.h (sect_offset): Change type to uint64_t.
14978         (sect_offset_str): New function.
14979         * dwarf2read.c (create_addrmap_from_aranges): Use
14980         sect_offset_str.
14981         (error_check_comp_unit_head): Likewise.
14982         (create_debug_type_hash_table): Likewise.
14983         (read_cutu_die_from_dwo): Likewise.
14984         (init_cutu_and_read_dies): Likewise.
14985         (init_cutu_and_read_dies_no_follow): Likewise.
14986         (process_psymtab_comp_unit_reader): Likewise.
14987         (partial_die_parent_scope): Likewise.
14988         (peek_die_abbrev): Likewise.
14989         (process_queue): Likewise.
14990         (dwarf2_physname): Likewise.
14991         (read_namespace_alias): Likewise.
14992         (read_import_statement): Likewise.
14993         (create_dwo_cu_reader): Likewise.
14994         (create_cus_hash_table): Likewise.
14995         (lookup_dwo_cutu): Likewise.
14996         (inherit_abstract_dies): Likewise.
14997         (read_func_scope): Likewise.
14998         (read_call_site_scope): Likewise.
14999         (dwarf2_add_member_fn): Likewise.
15000         (read_common_block): Likewise.
15001         (read_module_type): Likewise.
15002         (read_typedef): Likewise.
15003         (read_subrange_type): Likewise.
15004         (load_partial_dies): Likewise.
15005         (read_partial_die): Likewise.
15006         (find_partial_die): Likewise.
15007         (read_str_index): Likewise.
15008         (dwarf2_string_attr): Likewise.
15009         (build_error_marker_type): Likewise.
15010         (lookup_die_type): Likewise.
15011         (dump_die_shallow): Likewise.
15012         (follow_die_ref): Likewise.
15013         (dwarf2_fetch_die_loc_sect_off): Likewise.
15014         (dwarf2_fetch_constant_bytes): Likewise.
15015         (follow_die_sig): Likewise.
15016         (get_signatured_type): Likewise.
15017         (get_DW_AT_signature_type): Likewise.
15018         (dwarf2_find_containing_comp_unit): Likewise.
15019         (set_die_type): Likewise.
15020
15021 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
15022
15023         * arch/aarch64.c: Include "common-defs.h".
15024         * arch/amd64.c: Likewise.
15025         * arch/i386.c: Likewise.
15026
15027 2018-02-21  Tom Tromey  <tom@tromey.com>
15028
15029         * value.h: (extract_field_op): Update.
15030         * eval.c (extract_field_op): Return a const char *.
15031         * expression.h (parse_expression_for_completion): Update.
15032         * completer.c (complete_expression): Update.
15033         (add_struct_fields): Make fieldname const.
15034         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
15035         (mark_completion_tag, parse_exp_in_context_1): Update.
15036         (parse_expression_for_completion): Change "name" to
15037         unique_xmalloc_ptr*.
15038
15039 2018-02-21  Tom Tromey  <tom@tromey.com>
15040
15041         * infcall.c (call_function_by_hand_dummy): Use std::vector.
15042
15043 2018-02-21  Yao Qi  <yao.qi@linaro.org>
15044
15045         * avr-tdep.c (avr_read_pc): Change parameter type to
15046         readable_regcache.
15047         * gdbarch.sh (read_pc): Likewise.
15048         * gdbarch.c: Re-generated.
15049         * gdbarch.h: Re-generated.
15050         * hppa-tdep.c (hppa_read_pc): Change parameter type to
15051         readable_regcache.
15052         * ia64-tdep.c (ia64_read_pc): Likewise.
15053         * mips-tdep.c (mips_read_pc): Likewise.
15054         * spu-tdep.c (spu_read_pc): Likewise.
15055
15056 2018-02-21  Yao Qi  <yao.qi@linaro.org>
15057
15058         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
15059         * regcache-dump.c: New file.
15060         * regcache.c: Move register_dump to regcache-dump.c.
15061         (maintenance_print_registers): Likewise.
15062         (maintenance_print_raw_registers): Likewise.
15063         (maintenance_print_cooked_registers): Likewise.
15064         (maintenance_print_register_groups): Likewise.
15065         (maintenance_print_remote_registers): Likewise.
15066         (_initialize_regcache): Likewise.
15067         * regcache.h (register_dump): Moved from regcache.c.
15068
15069 2018-02-21  Yao Qi  <yao.qi@linaro.org>
15070
15071         * regcache.c (regcache::regcache): Update.
15072         (regcache::invalidate): Move it to detached_regcache::invalidate.
15073         (get_thread_arch_aspace_regcache): Update.
15074         (regcache::raw_update): Update.
15075         (regcache::cooked_read): Remove some code.
15076         (regcache::cooked_read_value): Likewise.
15077         (regcache::raw_write): Remove assert on m_readonly_p.
15078         (regcache::raw_supply_integer): Move it to
15079         detached_regcache::raw_supply_integer.
15080         (regcache::raw_supply_zeroed): Likewise.
15081         * regcache.h (detached_regcache) <raw_supply_integer>: New
15082         declaration.
15083         <raw_supply_zeroed, invalidate>: Likewise.
15084         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
15085         <invalidate>: Likewise.
15086         <m_readonly_p>: Removed.
15087
15088 2018-02-21  Yao Qi  <yao.qi@linaro.org>
15089
15090         * infcmd.c (get_return_value): Let stop_regs point to
15091         get_current_regcache.
15092         * regcache.c (regcache::regcache): Remove.
15093         (register_dump_reg_buffer): New class.
15094         (regcache_print): Adjust.
15095         * regcache.h (regcache): Remove constructors.
15096
15097 2018-02-21  Yao Qi  <yao.qi@linaro.org>
15098
15099         * regcache.c (class register_dump): New class.
15100         (register_dump_regcache, register_dump_none): New class.
15101         (register_dump_remote, register_dump_groups): New class.
15102         (regcache_print): Update.
15103         * regcache.h (regcache_dump_what): Move it to regcache.c.
15104         (regcache) <dump>: Remove.
15105
15106 2018-02-21  Yao Qi  <yao.qi@linaro.org>
15107
15108         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
15109          reg_buffer_rw *.
15110         (jit_unwind_reg_set_impl): Call raw_supply.
15111         (jit_frame_sniffer): Use reg_buffer_rw.
15112         * record-full.c (record_full_core_regbuf): Change its type.
15113         (record_full_core_open_1): Use reg_buffer_rw.
15114         (record_full_close): Likewise.
15115         (record_full_core_fetch_registers): Use regcache->raw_supply.
15116         (record_full_core_store_registers): Likewise.
15117         * regcache.c (regcache::get_register_status): Move it to
15118         reg_buffer.
15119         (regcache_raw_set_cached_value): Remove.
15120         (regcache::raw_set_cached_value): Remove.
15121         (regcache::raw_write): Call raw_supply.
15122         (regcache::raw_supply): Move it to reg_buffer_rw.
15123         * regcache.h (regcache_raw_set_cached_value): Remove.
15124         (reg_buffer_rw): New class.
15125
15126 2018-02-21  Yao Qi  <yao.qi@linaro.org>
15127
15128         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
15129         readonly_detached_regcache.
15130         (dummy_frame_prev_register): Use regcache->cooked_read.
15131         * frame.c (frame_save_as_regcache): Change return type.
15132         (frame_pop): Update.
15133         * frame.h (frame_save_as_regcache): Update declaration.
15134         * inferior.h (get_infcall_suspend_state_regcache): Update
15135         declaration.
15136         * infrun.c (infcall_suspend_state) <registers>: use
15137         readonly_detached_regcache.
15138         (save_infcall_suspend_state): Don't use regcache_dup.
15139         (get_infcall_suspend_state_regcache): Change return type.
15140         * linux-fork.c (struct fork_info) <savedregs>: Change to
15141         readonly_detached_regcache.
15142         <pc>: New field.
15143         (fork_save_infrun_state): Don't use regcache_dup.
15144         (info_checkpoints_command): Adjust.
15145         * mi/mi-main.c (register_changed_p): Update declaration.
15146         (mi_cmd_data_list_changed_registers): Use
15147         readonly_detached_regcache.
15148         (register_changed_p): Change parameter type to
15149         readonly_detached_regcache.
15150         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
15151         readonly_detached_regcache.
15152         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
15153         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
15154         New.
15155         (regcache::save): Move it to reg_buffer.
15156         (regcache::restore): Change parameter type.
15157         (regcache_dup): Remove.
15158         * regcache.h (reg_buffer) <save>: New method.
15159         (readonly_detached_regcache): New class.
15160         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
15161         readonly_detached_regcache.
15162         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
15163
15164 2018-02-21  Yao Qi  <yao.qi@linaro.org>
15165
15166         * frame.c (frame_save_as_regcache): Use regcache method save.
15167         (frame_pop): Use regcache method restore.
15168         * infrun.c (restore_infcall_suspend_state): Likewise.
15169         * linux-fork.c (fork_load_infrun_state): Likewise.
15170         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
15171         save.
15172         * regcache.c (regcache_save): Remove.
15173         (regcache::restore): More asserts.
15174         (regcache_cpy): Remove.
15175         * regcache.h (regcache_save): Remove the declaration.
15176         (regcache::restore): Move from private to public.
15177         Remove the friend declaration of regcache_cpy.
15178         (regcache_cpy): Remove declaration.
15179
15180 2018-02-21  Yao Qi  <yao.qi@linaro.org>
15181
15182         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
15183         parameter type to 'readable_regcache *'.
15184         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
15185         * arm-tdep.c (arm_neon_quad_read): Likewise.
15186         (arm_pseudo_read): Likewise.
15187         * avr-tdep.c (avr_pseudo_register_read): Likewise.
15188         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
15189         * frv-tdep.c (frv_pseudo_register_read): Likewise.
15190         * gdbarch.c: Re-generated.
15191         * gdbarch.h: Re-generated.
15192         * gdbarch.sh (pseudo_register_read): Change parameter type to
15193         'readable_regcache *'.
15194         (pseudo_register_read_value): Likewise.
15195         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
15196         (h8300_pseudo_register_read): Likewise.
15197         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
15198         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
15199         (i386_pseudo_register_read_into_value): Likewise.
15200         (i386_pseudo_register_read_value): Likewise.
15201         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
15202         declaration.
15203         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
15204         * m32c-tdep.c (m32c_raw_read): Likewise.
15205         (m32c_read_flg): Likewise.
15206         (m32c_banked_register): Likewise.
15207         (m32c_banked_read): Likewise.
15208         (m32c_sb_read): Likewise.
15209         (m32c_part_read): Likewise.
15210         (m32c_cat_read): Likewise.
15211         (m32c_r3r2r1r0_read): Likewise.
15212         (m32c_pseudo_register_read): Likewise.
15213         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
15214         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
15215         (mep_pseudo_cr64_read): Likewise.
15216         (mep_pseudo_register_read): Likewise.
15217         * mips-tdep.c (mips_pseudo_register_read): Likewise.
15218         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
15219         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
15220         * regcache.c (regcache::raw_read): Move it to readable_regcache.
15221         (regcache::cooked_read): Likewise.
15222         (regcache::cooked_read_value): Likewise.
15223         (regcache_cooked_read_signed):
15224         (regcache::cooked_read): Likewise.
15225         * regcache.h (readable_regcache): New class.
15226         (regcache): Inherit readable_regcache.  Move some methods to
15227         readable_regcache.
15228         * rl78-tdep.c (rl78_pseudo_register_read): Change
15229         parameter type to 'readable_regcache *'.
15230         * rs6000-tdep.c (do_regcache_raw_read): Remove.
15231         (e500_pseudo_register_read): Change parameter type to
15232         'readable_regcache *'.
15233         (dfp_pseudo_register_read): Likewise.
15234         (vsx_pseudo_register_read): Likewise.
15235         (efpr_pseudo_register_read): Likewise.
15236         * s390-tdep.c (s390_pseudo_register_read): Likewise.
15237         * sh-tdep.c (sh_pseudo_register_read): Likewise.
15238         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
15239         (sh64_pseudo_register_read): Likewise.
15240         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
15241         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
15242         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
15243         (spu_pseudo_register_read): Likewise.
15244         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
15245         (xtensa_pseudo_register_read): Likewise.
15246
15247 2018-02-21  Yao Qi  <yao.qi@linaro.org>
15248
15249         * regcache.c (regcache::regcache): Call reg_buffer ctor.
15250         (regcache::arch): Move it to reg_buffer::arch.
15251         (regcache::register_buffer): Likewise.
15252         (regcache::assert_regnum): Likewise.
15253         (regcache::num_raw_registers): Likewise.
15254         * regcache.h (reg_buffer): New class.
15255         (regcache): Inherit reg_buffer.
15256
15257 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
15258
15259         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
15260         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
15261
15262 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
15263
15264         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
15265
15266 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
15267
15268         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
15269         (SFILES): Remove common/*.c files.
15270         (COMMON_OBS): Remove some *.o files built from common/*.c files.
15271         * common/common.host: Add common reference.
15272         * configure.ac: Likewise.
15273         * configure: Regenerate.
15274
15275 2018-02-16  Yao Qi  <yao.qi@linaro.org>
15276
15277         * block.c (block_namespace_info): Inherit allocate_on_obstack.
15278         (block_initialize_namespace): Use new.
15279         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
15280         (dwarf2_free_objfile): Use delete.
15281         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
15282         (copy_type_recursive): Use new.
15283         * gdb_obstack.h (allocate_on_obstack): New.
15284
15285 2018-02-15  Yao Qi  <yao.qi@linaro.org>
15286
15287         PR gdb/22849
15288         * inferior.c (exit_inferior_1): Reset inf->control.
15289
15290 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
15291
15292         * ada-lang.c (ada_to_fixed_value_create): Delete advance
15293         declaration.
15294
15295 2018-02-14  Pedro Alves  <palves@redhat.com>
15296
15297         * frame-unwind.c (frame_unwind_try_unwinder): Always call
15298         frame_cleanup_after_sniffer on exception.
15299
15300 2018-02-14  Tom Tromey  <tom@tromey.com>
15301
15302         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
15303         const.
15304         (solib_bfd_open): Make pathname const.
15305         * solib.c (solib_bfd_open): Make pathname const.
15306         * solib-spu.c (spu_bfd_fopen): Make name const.
15307         (spu_bfd_open): Make pathname const.
15308         * solib-darwin.c (darwin_bfd_open): Make pathname const.
15309         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
15310
15311 2018-02-14  Tom Tromey  <tom@tromey.com>
15312
15313         * symfile.c (symfile_bfd_open): Update.
15314         * source.h (openp, source_full_path_of, find_and_open_source):
15315         Change argument type to unique_xmalloc_ptr.
15316         * source.c (openp): Take a unique_xmalloc_ptr.
15317         (source_full_path_of, find_and_open_source): Likewise.
15318         (open_source_file, symtab_to_fullname): Update.
15319         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
15320         unique_xmalloc_ptr.
15321         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
15322         (exec_file_find): Update.
15323         * psymtab.c (psymtab_to_fullname): Update.
15324         * nto-tdep.h (nto_find_and_open_solib): Update.
15325         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
15326         unique_xmalloc_ptr.
15327         * exec.c (exec_file_attach): Update.
15328         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
15329         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
15330
15331 2018-02-14  Tom Tromey  <tom@tromey.com>
15332
15333         * solib.c: Include source.h.
15334         * nto-tdep.c: Include source.h.
15335         * mi/mi-cmd-env.c: Include source.h.
15336         * infcmd.c: Include source.h.
15337         * exec.c: Include source.h.
15338         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
15339         (add_path, directory_switch, source_path, init_source_path): Move
15340         declarations...
15341         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
15342         (add_path, directory_switch, source_path, init_source_path):
15343         ...here.
15344
15345 2018-02-14  Tom Tromey  <tom@tromey.com>
15346
15347         * solist.h (exec_file_find, solib_find): Return
15348         unique_xmalloc_ptr.
15349         (solib_bfd_fopen): Take a const char *.
15350         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
15351         (exec_file_find, solib_find): Likewise.
15352         (solib_bfd_fopen): Do not take ownership of "pathname".
15353         (solib_bfd_open): Use unique_xmalloc_ptr.
15354         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
15355         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
15356         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
15357         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
15358
15359 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
15360
15361         * ada-lang.c (name_match_type_from_name): Remove reference to
15362         ada_name_for_lookup in function's documentation.
15363         * ada-lang.h (ada_name_for_lookup): Delete declaration.
15364
15365 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
15366
15367         * defs.h (enum openp_flags): New enum.
15368         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
15369         Move to enum openp_flags.
15370         (openp_flags): New enum flags.
15371         (openp): Change parameter type to openp_flags.
15372         * source.c (openp): Change parameter type to openp_flags.
15373         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
15374         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
15375
15376 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
15377
15378         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
15379         per-command.
15380
15381 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
15382
15383         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
15384         into...
15385         (class dwarf2_queue_guard): ...the destructor of this new class.
15386         (dw2_do_instantiate_symtab): Create instance of the new class
15387         dwarf2_queue_guard, remove cleanup.
15388
15389 2018-02-09  Tom Tromey  <tom@tromey.com>
15390
15391         * source.c (find_source_lines): Don't reference past the end of
15392         the vector.
15393
15394 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15395
15396         * remote.c (remote_btrace_maybe_reopen): Change error message.
15397         * btrace.c (btrace_enable): Likewise.
15398         (parse_xml_btrace): Likewise.
15399         (parse_xml_btrace_conf): Likewise.
15400
15401 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15402
15403         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
15404         (linux_enable_pt, linux_enable_bts): Call
15405         diagnose_perf_event_open_fail.
15406
15407 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15408
15409         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
15410         Remove parameter and change return type.  Update callers.  Move it.
15411         (linux_enable_bts, linux_enable_pt): Improve error message.
15412         (linux_enable_pt): Remove zero buffer size check.
15413         (linux_enable_btrace): Improve error messages.  Remove NULL return
15414         check.
15415
15416 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15417
15418         * btrace.c (btrace_enable): Remove target_supports_btrace call.
15419         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
15420         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
15421         (linux_supports_pt, linux_supports_btrace): Remove.
15422         (linux_enable_bts): Call cpu_supports_bts.
15423         * nat/linux-btrace.h (linux_supports_btrace): Remove.
15424         * remote.c (remote_supports_btrace): Remove.
15425         (init_remote_ops): Remove remote_supports_btrace.
15426         * target-delegates.c: Regenerated.
15427         * target.c (target_supports_btrace): Remove.
15428         * target.h (target_ops) <to_supports_btrace>: Remove
15429         (target_supports_btrace): Remove.
15430         * x86-linux-nat.c (x86_linux_create_target): Remove
15431         linux_supports_btrace.
15432
15433 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15434
15435         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
15436         btrace failed.
15437         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
15438         exception and use message in own exception.
15439
15440 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15441
15442         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
15443         (perf_event_pt_event_type): Use gdb_file_up.
15444         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
15445         scoped_fd, and scoped_mmap.
15446
15447 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15448
15449         * common/scoped_mmap.h: New.
15450         * unittests/scoped_mmap-selftest.c: New.
15451         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
15452         unittests/scoped_mmap-selftest.c.
15453
15454 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15455
15456         * common/scoped_fd.h: New.
15457         * unittests/scoped_fd-selftest.c: New.
15458         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
15459         unittests/scoped_fd-selftest.c.
15460
15461 2018-02-09  Tom Tromey  <tom@tromey.com>
15462
15463         * auto-load.c (auto_load_section_scripts): Use
15464         gdb::unique_xmalloc_ptr.
15465
15466 2018-02-09  Tom Tromey  <tom@tromey.com>
15467
15468         * auto-load.c (execute_script_contents): Use std::string.
15469
15470 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
15471
15472         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
15473         Python function, rather than a new command.
15474
15475 2018-02-08  Tom Tromey  <tom@tromey.com>
15476
15477         * solib.c (solib_find_1): Use std::string.
15478         (solib_bfd_fopen): Use unique_xmalloc_ptr.
15479
15480 2018-02-08  Tom Tromey  <tom@tromey.com>
15481
15482         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
15483
15484 2018-02-08  Tom Tromey  <tom@tromey.com>
15485
15486         * source.c (find_source_lines): Use gdb::def_vector.
15487
15488 2018-02-08  Tom Tromey  <tom@tromey.com>
15489
15490         * macrocmd.c (struct temporary_macro_definition): New.
15491         (macro_define_command): Use temporary_macro_definition.  Remove
15492         cleanups.
15493         (free_macro_definition_ptr): Remove.
15494
15495 2018-02-08  Tom Tromey  <tom@tromey.com>
15496
15497         * macroexp.c (maybe_expand): Use std::string.
15498
15499 2018-02-08  Tom Tromey  <tom@tromey.com>
15500
15501         * macroexp.c (struct macro_buffer): Add initializers for some
15502         members.
15503         (init_buffer, init_shared_buffer, free_buffer)
15504         (free_buffer_return_text): Remove.
15505         (macro_buffer): New constructors.
15506         (~macro_buffer): New destructor.
15507         (macro_buffer::set_shared): New method.
15508         (macro_buffer::resize_buffer, macro_buffer::appendc)
15509         (macro_buffer::appendmem): Now methods, not free functions.
15510         (set_token, append_tokens_without_splicing, stringify)
15511         (macro_stringify): Update.
15512         (gather_arguments): Change return type.  Remove argc_p argument,
15513         add args_ptr argument.  Use std::vector.
15514         (substitute_args): Remove argc argument.  Accept std::vector.
15515         (expand): Update.  Use std::vector.
15516         (scan, macro_expand, macro_expand_next): Update.
15517
15518 2018-02-08  Tom Tromey  <tom@tromey.com>
15519
15520         * symtab.c (default_collect_symbol_completion_matches_break_on):
15521         Use unique_xmalloc_ptr.
15522         * macroscope.h: (sal_macro_scope, user_macro_scope)
15523         (default_macro_scope): Return unique_xmalloc_ptr.
15524         * macroscope.c (sal_macro_scope, user_macro_scope)
15525         (default_macro_scope): Return unique_xmalloc_ptr.
15526         * macroexp.h (macro_expand, macro_expand_once): Return
15527         unique_xmalloc_ptr.
15528         * macroexp.c (macro_expand, macro_expand_once): Return
15529         unique_xmalloc_ptr.
15530         * macrocmd.c (macro_expand_command, macro_expand_once_command)
15531         (info_macro_command, info_macros_command): Use
15532         unique_xmalloc_ptr.
15533         * compile/compile-c-support.c (write_macro_definitions): Use
15534         unique_xmalloc_ptr.
15535         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
15536
15537 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
15538
15539         * value.c (value_static_field): Assign field type instead of
15540         containing type when returning an optimized out value.
15541
15542 2018-02-06  Yao Qi  <yao.qi@linaro.org>
15543
15544         * ft32-tdep.c (ft32_read_pc): Remove.
15545         (ft32_write_pc): Remove.
15546         (ft32_gdbarch_init): Update.
15547         * m32r-tdep.c (m32r_read_pc): Remove.
15548         (m32r_gdbarch_init): Update.
15549         * mep-tdep.c (mep_read_pc): Remove.
15550         (mep_gdbarch_init): Update.
15551         * microblaze-tdep.c (microblaze_write_pc): Remove.
15552         (microblaze_gdbarch_init): Update.
15553         * mn10300-tdep.c (mn10300_read_pc): Remove.
15554         (mn10300_write_pc): Remove.
15555         (mn10300_gdbarch_init): Update.
15556         * moxie-tdep.c (moxie_read_pc): Remove.
15557         (moxie_write_pc): Remove.
15558         (moxie_gdbarch_init): Update.
15559
15560 2018-02-06  Yao Qi  <yao.qi@linaro.org>
15561
15562         * expprint.c (print_subexp_standard): Handle
15563         OP_F77_UNDETERMINED_ARGLIST.
15564         (dump_subexp_body_standard): Likewise.
15565
15566 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
15567
15568         * target-descriptions.c (tdesc_element_visitor) Add empty
15569         implementations.
15570         (tdesc_type): Move make_gdb_type from here.
15571         (tdesc_type_builtin): Likewise.
15572         (tdesc_type_vector): Likewise.
15573         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
15574         (make_gdb_type_struct): Move from tdesc_type_with_fields.
15575         (make_gdb_type_union): Likewise.
15576         (make_gdb_type_flags): Likewise.
15577         (make_gdb_type_enum): Likewise.
15578         (make_gdb_type): New function.
15579         (tdesc_register_type): Use static make_gdb_type.
15580
15581 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
15582
15583         * infcmd.c (default_print_one_register_info): Align natural-format
15584         column values consistently one under another.
15585         (pad_to_column): New function.
15586
15587 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
15588
15589         * dwarf2read.c (dwarf2_physname): Move commment.
15590
15591 2018-02-01  Leszek Swirski  <leszeks@google.com>
15592
15593         * varobj.c (varobj_formatted_print_options): Allow recursive
15594         pretty printing if pretty printing is enabled.
15595
15596 2018-02-01  Leszek Swirski  <leszeks@google.com>
15597
15598         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
15599         names after a structop as a filename.
15600
15601 2018-02-01  Yao Qi  <yao.qi@linaro.org>
15602
15603         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
15604         (arm_record_coproc_data_proc): Likewise.
15605
15606 2018-02-01  Yao Qi  <yao.qi@linaro.org>
15607
15608         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
15609
15610 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
15611
15612         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
15613         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
15614
15615 2018-01-31  Pedro Alves  <palves@redhat.com>
15616
15617         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
15618         * inflow.c (child_terminal_save_inferior): Wrap reference to
15619         tcgetpgrp in HAVE_TERMIOS_H.
15620         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
15621         _WIN32.
15622         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
15623         always iterate over all inferiors.
15624         (gdbsim_cntrl_c): Adjust.
15625         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
15626
15627 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15628
15629         * gdbtypes.c (lookup_array_range_type): Make sure the array's
15630         index type is objfile-owned if the element type is as well.
15631
15632 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15633
15634         GDB 8.1 released.
15635
15636 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15637
15638         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
15639         "features/s390x-linux64.c".
15640         (_initialize_s390_linux_tdep): Remove initialization of tdescs
15641         s390_linux32 and s390x_linux64.
15642         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
15643         default tdesc.
15644         * s390-tdep.c: Include "features/s390-linux32.c" and
15645         "features/s390x-linux64.c".
15646         (s390_tdesc_valid): Add check for tdesc_has_registers.
15647         (s390_gdbarch_init): Make sure there is always a valid tdesc.
15648         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
15649         tdesc_s390x_linux64.
15650         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
15651         tdesc_s390x_linux64 to...
15652         * s390-tdep.h: ...here.
15653
15654 2018-01-30  Pedro Alves  <palves@redhat.com>
15655
15656         PR gdb/13211
15657         * config.in, configure: Regenerate.
15658         * configure.ac: Check for getpgid.
15659         * go32-nat.c (go32_pass_ctrlc): New.
15660         (go32_target): Install it.
15661         * inf-child.c (inf_child_target): Install
15662         child_terminal_save_inferior, child_pass_ctrlc and
15663         child_interrupt.
15664         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
15665         (inf_ptrace_target): No longer install it.
15666         * infcmd.c (interrupt_target_1): Adjust.
15667         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
15668         (child_interrupt): Declare.
15669         (inferior::terminal_state): New.
15670         * inflow.c (struct terminal_info): Update comments.
15671         (inferior_process_group): Delete.
15672         (terminal_is_ours): Delete.
15673         (gdb_tty_state): New.
15674         (child_terminal_init): Adjust.
15675         (is_gdb_terminal, sharing_input_terminal_1)
15676         (sharing_input_terminal): New functions.
15677         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
15678         Set the process's actual process group in the foreground if
15679         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
15680         mark terminal as the inferior's if not sharing GDB's terminal.
15681         Don't check attach_flag.
15682         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
15683         pass down a target_terminal_state.
15684         (child_terminal_save_inferior): New, factored out from ...
15685         (child_terminal_ours_1): ... this.  Handle
15686         target_terminal_state::is_ours_for_output.
15687         (child_interrupt, child_pass_ctrlc): New.
15688         (inflow_inferior_exit): Clear the inferior's terminal_state.
15689         (copy_terminal_info): Copy the inferior's terminal state.
15690         (_initialize_inflow): Remove reference to terminal_is_ours.
15691         * inflow.h (inferior_process_group): Delete.
15692         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
15693         * procfs.c (procfs_target): Don't install procfs_interrupt.
15694         (procfs_interrupt): Delete.
15695         * remote.c (remote_serial_quit_handler): Adjust.
15696         (remote_interrupt): Remove ptid parameter.  Adjust.
15697         * target-delegates.c: Regenerate.
15698         * target.c: Include "terminal.h".
15699         (target_terminal::terminal_state): Rename to ...
15700         (target_terminal::m_terminal_state): ... this.
15701         (target_terminal::init): Adjust.
15702         (target_terminal::inferior): Adjust to per-inferior
15703         terminal_state.
15704         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
15705         (target_terminal::ours, target_terminal::ours_for_output): Use
15706         target_terminal_is_ours_kind.
15707         (target_interrupt): Remove ptid parameter.  Adjust.
15708         (default_target_pass_ctrlc): Adjust.
15709         * target.h (target_ops::to_terminal_save_inferior): New field.
15710         (target_ops::to_interrupt): Remove ptid_t parameter.
15711         (target_interrupt): Remove ptid_t parameter.  Update comment.
15712         (target_pass_ctrlc): Update comment.
15713         * target/target.h (target_terminal_state): New scoped enum,
15714         factored out of ...
15715         (target_terminal::terminal_state): ... here.
15716         (target_terminal::inferior): Update comments.
15717         (target_terminal::restore_inferior): New.
15718         (target_terminal::is_inferior, target_terminal::is_ours)
15719         (target_terminal::is_ours_for_output): Adjust.
15720         (target_terminal::scoped_restore_terminal_state): Adjust to
15721         rename, and call restore_inferior() instead of inferior().
15722         (target_terminal::scoped_restore_terminal_state::m_state): Change
15723         type.
15724         (target_terminal::terminal_state): Rename to ...
15725         (target_terminal::m_terminal_state): ... this and change type.
15726
15727 2018-01-30  Pedro Alves  <palves@redhat.com>
15728
15729         * linux-nat.c (wait_for_signal): New function.
15730         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
15731         directly.
15732         (async_terminal_is_ours)
15733         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
15734         (linux_nat_add_target): Don't override
15735         to_terminal_inferior/to_terminal_ours.
15736
15737 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
15738
15739         * remote.c (remote_follow_fork): Don't call "detach_inferior".
15740
15741 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
15742
15743         * dwarf2read.c (free_dwo_files): Add forward-declaration.
15744         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
15745         dwarf2_per_objfile_free here.
15746         (dwarf2_per_objfile_free): Remove.
15747         (_initialize_dwarf2_read): Don't register
15748         dwarf2_per_objfile_free as a registry cleanup.
15749
15750 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
15751
15752         Avoid compilation errors in MinGW native builds
15753
15754         The error is triggered by including python-internal.h, and the
15755         error message is:
15756
15757              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
15758                       from build-gnulib/import/math.h:27,
15759                       from d:/usr/Python26/include/pyport.h:235,
15760                       from d:/usr/Python26/include/Python.h:58,
15761                       from python/python-internal.h:94,
15762                       from python/py-arch.c:24:
15763              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
15764         using ::hypot;
15765                 ^~~~~
15766
15767         This happens because Python headers define 'hypot' to expand t
15768         '_hypot' in the Windows builds.
15769         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
15770         'hypoth'.  This avoids a compilation error.
15771
15772 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15773
15774         * MAINTAINERS (Write After Approval): Fix ordering.
15775
15776 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15777
15778         * MAINTAINERS (Write After Approval): Add Alan Hayward.
15779
15780 2018-01-26  Alan Modra  <amodra@gmail.com>
15781
15782         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
15783         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
15784         Remove nop.  Make const.  Comment.
15785         (powerpc32_plt_stub_so_2): New.
15786         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
15787         Correct count.  Update uses.
15788         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
15789         Move common code reading PLT entry word.  Correct
15790         powerpc32_plt_stub PLT address calculation.
15791         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
15792         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
15793         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
15794         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
15795         (ppc64_standard_linkage8): Likewise.
15796         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
15797         Correct insns description.
15798         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
15799
15800 2018-01-24  Pedro Alves  <palves@redhat.com>
15801
15802         GCC PR libstdc++/83906
15803         * gdbtypes.c (operator==(const dynamic_prop &,
15804         const dynamic_prop &)): New.
15805         (operator==(const range_bounds &, const range_bounds &)): New.
15806         (check_types_equal): Use them instead of memcmp.
15807         * gdbtypes.h (operator==(const dynamic_prop &,
15808         const dynamic_prop &)): Declare.
15809         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
15810         (operator==(const range_bounds &, const range_bounds &)): Declare.
15811         (operator!=(const range_bounds &, const range_bounds &)): Declare.
15812
15813 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15814
15815         * s390-linux-tdep.c (s390_record_address_mask)
15816         (s390_record_calc_disp_common, s390_record_calc_disp)
15817         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15818         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15819         (s390_process_record): Move to s390-tdep.c.
15820         (s390_linux_init_abi_any): Adjust.
15821         * s390-tdep.c (s390_record_address_mask)
15822         (s390_record_calc_disp_common, s390_record_calc_disp)
15823         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15824         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15825         (s390_process_record): Moved from s390-linux-tdep.c
15826         (s390_gdbarch_init): Adjust.
15827
15828 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15829
15830         * s390-linux-nat.c (s390-tdep.h): New include.
15831         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
15832         (HFILES_NO_SRCDIR): Add s390-tdep.h.
15833         (ALLDEPFILES): Add s390-tdep.c.
15834         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
15835         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
15836         * s390-tdep.h: ...this.  New file.
15837         * s390-linux-tdep.c (s390-tdep.h): New include.
15838         (_initialize_s390_tdep): Rename to...
15839         (_initialize_s390_linux_tdep): ...this and adjust.
15840         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
15841         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
15842         s390-tdep.h.
15843         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
15844         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
15845         (s390_is_partial_instruction, s390_software_single_step)
15846         (is_non_branch_ril, s390_displaced_step_copy_insn)
15847         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
15848         (s390_prologue_data, s390_addr, s390_store, s390_load)
15849         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
15850         (s390_register_call_saved, s390_guess_tracepoint_registers)
15851         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
15852         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
15853         (s390_pseudo_register_name, s390_pseudo_register_type)
15854         (s390_pseudo_register_read, s390_pseudo_register_write)
15855         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
15856         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
15857         (s390_addr_bits_remove, s390_address_class_type_flags)
15858         (s390_address_class_type_flags_to_name)
15859         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
15860         (s390_function_arg_float, s390_function_arg_vector)
15861         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
15862         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
15863         (s390_frame_align, s390_register_return_value, s390_return_value)
15864         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
15865         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
15866         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
15867         (s390_trad_frame_prev_register, s390_unwind_cache)
15868         (s390_prologue_frame_unwind_cache)
15869         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
15870         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
15871         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
15872         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
15873         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
15874         (s390_frame_base_address, s390_local_base_address)
15875         (s390_frame_base, s390_gcc_target_options)
15876         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
15877         (s390_validate_reg_range, s390_tdesc_valid)
15878         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
15879         * s390-tdep.c: ...this.  New file.
15880
15881 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15882
15883         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
15884         (s390_process_record, s390_gdbarch_tdep_alloc)
15885         (s390_linux_init_abi_any): Use/set new hook.
15886
15887 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15888
15889         * s390-linux-tdep.c (osabi.h): New include.
15890         (s390_linux_init_abi_31, s390_linux_init_abi_64)
15891         (s390_linux_init_abi_any): New functions.
15892         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
15893
15894 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15895
15896         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
15897         tdesc_has_registers check
15898
15899 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15900
15901         * s390-linux-tdep.c (s390_tdesc_valid): New function.
15902         (s390_validate_reg_range): New macro.
15903         (s390_gdbarch_init): Adjust.
15904
15905 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15906
15907         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
15908         (s390_gdbarch_tdep_alloc): Adjust.
15909         (s390_gdbarch_init): Adjust.
15910
15911 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15912
15913         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
15914         <have_tdb>: Change type to bool.
15915         (s390_gdbarch_tdep_alloc): Adjust.
15916         (s390_gdbarch_init): Adjust.
15917
15918 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15919
15920         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
15921         (gdbarch_tdep) <have_upper, have_vx>: New fields.
15922         (s390_gdbarch_tdep_alloc): New function.
15923         (s390_gdbarch_init): Allocate tdep at start and use its fields
15924         instead of separate variables.
15925
15926 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15927
15928         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
15929         when looking for cached gdbarch and add comment for remaining.
15930
15931 2018-01-22  Pedro Alves  <palves@redhat.com>
15932             Sergio Durigan Junior  <sergiodj@redhat.com>
15933
15934         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
15935         case.
15936
15937 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
15938
15939         * MAINTAINERS: Update my company e-mail address.
15940
15941 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15942
15943         * regcache.c (cooked_write_test): New function.
15944         (_initialize_regcache): Register the test.
15945
15946 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15947
15948         * ia64-tdep.c (ia64_pseudo_register_read): Call
15949         regcache->cooked_read instead of regcache_cooked_read_unsigned.
15950         * m32c-tdep.c (m32c_cat_read): Likewise.
15951         (m32c_r3r2r1r0_read): Likewise.
15952         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
15953         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
15954
15955 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15956
15957         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
15958         method raw_read instead of regcache_raw_read.
15959         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
15960         * arm-tdep.c (arm_neon_quad_read): Likewise.
15961         * avr-tdep.c (avr_pseudo_register_read): Likewise.
15962         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
15963         * frv-tdep.c (frv_pseudo_register_read): Likewise.
15964         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
15965         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
15966         (i386_pseudo_register_read_into_value): Likewise.
15967         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
15968         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
15969         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
15970         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
15971         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
15972         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
15973         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
15974         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
15975         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
15976
15977 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15978
15979         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
15980         * configure.tgt: Remove target mt.
15981         * mt-tdep.c: Remove.
15982         * regcache.c (cooked_read_test): Remove the check for mt.
15983
15984 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15985
15986         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
15987         instead of gdbarch_pseudo_register_read_value.
15988
15989 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15990
15991         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
15992         language is Ada.
15993
15994 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15995
15996         * linespec.c (create_sals_line_offset): Remove code that preserved
15997         the symtab_and_line's line number.
15998
15999 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
16000
16001         * varobj.c (varobj_create): Don't set valid_block when creating a
16002         floating varobj.
16003
16004 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
16005
16006         * varobj.c (varobj_create): Remove out of date comment.
16007
16008 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
16009
16010         PR mi/20395
16011         * ada-exp.y (write_var_from_sym): Pass extra parameter when
16012         updating innermost block.
16013         * parse.c (innermost_block_tracker::update): Take extra type
16014         parameter, and check types match before updating innermost block.
16015         (write_dollar_variable): Update innermost block for registers.
16016         * parser-defs.h (enum innermost_block_tracker_type): New enum.
16017         (innermost_block_tracker::innermost_block_tracker): Initialise
16018         m_types member.
16019         (innermost_block_tracker::reset): Take type parameter.
16020         (innermost_block_tracker::update): Take type parameter, and pass
16021         type through as needed.
16022         (innermost_block_tracker::m_types): New member.
16023         * varobj.c (varobj_create): Pass type when reseting innermost
16024         block.
16025
16026 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
16027
16028         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
16029         * ada-lang.c (resolve_subexp): Likewise.
16030         * breakpoint.c (set_breakpoint_condition) Likewise.
16031         (watch_command_1) Likewise.
16032         * c-exp.y (variable): Likewise.
16033         * d-exp.y (PrimaryExpression): Likewise.
16034         * f-exp.y (variable): Likewise.
16035         * go-exp.y (variable): Likewise.
16036         * m2-exp.y (variable): Likewise.
16037         * objfiles.c (objfile::~objfile): Likewise.
16038         * p-exp.y (variable): Likewise.
16039         * parse.c (innermost_block): Change type.
16040         * parser-defs.h (class innermost_block_tracker): New.
16041         (innermost_block): Change to innermost_block_tracker.
16042         * printcmd.c (display_command): Switch to innermost_block API.
16043         (do_one_display): Likewise.
16044         * rust-exp.y (do_one_display): Likewise.
16045         * symfile.c (clear_symtab_users): Likewise.
16046         * varobj.c (varobj_create): Switch to innermost_block API, replace
16047         use of innermost_block with block stored on varobj object.
16048
16049 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
16050
16051         * expression.h (innermost_block): Remove declaration.
16052         * varobj.c: Add 'parser-defs.h' include.
16053
16054 2018-01-19  Tom Tromey  <tom@tromey.com>
16055
16056         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
16057         symbols in the static and global blocks.
16058
16059 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
16060
16061         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
16062         gdb_ptrace.h, and move including gdb_wait.h ...
16063         * nat/linux-ptrace.h: ... to here.
16064
16065 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
16066
16067         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
16068         inf_ptrace_detach_success.
16069         (inf_ptrace_detach_success): Add inferior parameter, use it
16070         instead of inferior_ptid, pass it to detach_inferior.
16071         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
16072         parameter.
16073         * inferior.c (detach_inferior): Add overload that takes an
16074         inferior object.
16075         * inferior.h (detach_inferior): Likewise.
16076         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
16077         use inferior_ptid, adjust call to inf_ptrace_detach_success.
16078         * linux-thread-db.c (thread_db_detach): Use inf parameter.
16079
16080 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
16081
16082         * target.h (struct target_ops) <to_detach>: Add inferior
16083         parameter.
16084         (target_detach): Likewise.
16085         * target.c (dispose_inferior): Pass inferior down.
16086         (target_detach): Pass inferior down.  Assert that it is equal to
16087         the current inferior.
16088         * aix-thread.c (aix_thread_detach): Pass inferior down.
16089         * corefile.c (core_file_command): Pass current_inferior() down.
16090         * corelow.c (core_detach): Add inferior parameter.
16091         * darwin-nat.c (darwin_detach): Likewise.
16092         * gnu-nat.c (gnu_detach): Likewise.
16093         * inf-ptrace.c (inf_ptrace_detach): Likewise.
16094         * infcmd.c (detach_command): Pass current_inferior() down to
16095         target_detach.
16096         * infrun.c (follow_fork_inferior): Pass parent_inf to
16097         target_detach.
16098         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
16099         target_detach.
16100         * linux-nat.c (linux_nat_detach): Add inferior parameter.
16101         * linux-thread-db.c (thread_db_detach): Likewise.
16102         * nto-procfs.c (procfs_detach): Likewise.
16103         * procfs.c (procfs_detach): Likewise.
16104         * record.c (record_detach): Likewise.
16105         * record.h (struct inferior): Forward-declare.
16106         (record_detach): Add inferior parameter.
16107         * remote-sim.c (gdbsim_detach): Likewise.
16108         * remote.c (remote_detach_1): Likewise.
16109         (remote_detach): Likewise.
16110         (extended_remote_detach): Likewise.
16111         * sol-thread.c (sol_thread_detach): Likewise.
16112         * target-debug.h (target_debug_print_inferior_p): New macro.
16113         * target-delegates.c: Re-generate.
16114         * top.c (kill_or_detach): Pass inferior down to target_detach.
16115         * windows-nat.c (windows_detach): Add inferior parameter.
16116
16117 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
16118
16119         * target.h (struct target_ops) <to_detach>: Remove args
16120         parameter.
16121         (target_detach): Likewise.
16122         * target.c (dispose_inferior): Adjust.
16123         (target_detach): Remove args parameter, adjust.
16124         * aix-thread.c (aix_thread_detach): Adjust.
16125         * corefile.c (core_file_command): Adjust.
16126         * corelow.c (core_detach): Adjust.
16127         * darwin-nat.c (darwin_detach): Adjust.
16128         * gnu-nat.c (gnu_detach): Adjust.
16129         * inf-ptrace.c (inf_ptrace_detach): Adjust.
16130         * infcmd.c (detach_command): Adjust
16131         * infrun.c (follow_fork_inferior): Adjust.
16132         (handle_vfork_child_exec_or_exit): Adjust.
16133         * linux-fork.c (linux_fork_detach): Remove args parameter.
16134         * linux-fork.h (linux_fork_detach): Likewise.
16135         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
16136         * linux-thread-db.c (thread_db_detach): Likewise.
16137         * nto-procfs.c (procfs_detach): Likewise.
16138         * procfs.c (procfs_detach): Likewise.
16139         (do_detach): Remove signo parameter.
16140         * record.c (record_detach): Remove args parameter.
16141         * record.h (record_detach): Likewise.
16142         * remote-sim.c (gdbsim_detach): Likewise.
16143         * remote.c (remote_detach_1): Likewise.
16144         (remote_detach): Likewise.
16145         (extended_remote_detach): Likewise.
16146         * sol-thread.c (sol_thread_detach): Likewise.
16147         * target-delegates.c: Re-generate.
16148         * top.c (struct qt_args) <args>: Remove field.
16149         (kill_or_detach): Don't pass args.
16150         (quit_force): Don't set args.
16151         * windows-nat.c (windows_detach): Remove args parameter.
16152
16153 2018-01-19  Yao Qi  <yao.qi@linaro.org>
16154
16155         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
16156         (arm_linux_init_abi): Install it.
16157
16158 2018-01-19  Yao Qi  <yao.qi@linaro.org>
16159
16160         * osabi.c (gdb_osabi_names): Extend the regexp for
16161         arm-linux-gnueabihf.
16162
16163 2018-01-18  Yao Qi  <yao.qi@linaro.org>
16164
16165         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
16166         m_abbrevs.
16167         (abbrev_table::add_abbrev): Update.
16168         (abbrev_table::lookup_abbrev): Update.
16169
16170 2018-01-18  Yao Qi  <yao.qi@linaro.org>
16171
16172         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
16173
16174 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
16175
16176         * compile/compile.c (compile_to_object): Convert "triplet_rx"
16177         to "std::string".
16178
16179 2018-01-17  Tom Tromey  <tom@tromey.com>
16180
16181         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
16182
16183 2018-01-17  Tom Tromey  <tom@tromey.com>
16184
16185         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
16186         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
16187         (create_array_type_with_stride): Update.
16188         * dwarf2read.c (set_die_type): Update.
16189
16190 2018-01-17  Tom Tromey  <tom@tromey.com>
16191
16192         * dwarf2read.c (delayed_method_info): Remove typedef.
16193         (dwarf2_cu::method_info): Now a std::vector.
16194         (add_to_method_list): Update.
16195         (free_delayed_list): Remove.
16196         (compute_delayed_physnames): Update.
16197         (process_full_comp_unit, process_full_type_unit): Clear the method
16198         list.  Remove cleanups.
16199         (psymtab_include_file_name): Add name_holder parameter.  Use
16200         unique_xmalloc_ptr.
16201         (dwarf_decode_lines): Update.
16202
16203 2018-01-17  Tom Tromey  <tom@tromey.com>
16204             Simon Marchi  <simon.marchi@ericsson.com>
16205
16206         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
16207         (dwarf2_per_objfile::free_cached_comp_units)
16208         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
16209         (init_cutu_and_read_dies_no_follow): Update.
16210         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
16211         (dwarf2_cu::~dwarf2_cu): New.
16212         (free_heap_comp_unit, free_stack_comp_unit): Remove.
16213         (age_cached_comp_units, free_one_cached_comp_unit): Update.
16214
16215 2018-01-17  Tom Tromey  <tom@tromey.com>
16216             Simon Marchi  <simon.marchi@ericsson.com>
16217
16218         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
16219         (struct die_reader_specs) <abbrev_table>: New member.
16220         (struct abbrev_table): Add constructor.
16221         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
16222         <abbrev_obstack>: Now an auto_obstack.
16223         (abbrev_table_up): New typedef.
16224         (init_cu_die_reader): Add abbrev_table parameter.
16225         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
16226         Add result_dwo_abbrev_table.
16227         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
16228         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
16229         Update.
16230         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
16231         parameter.
16232         (skip_children): Update.
16233         (abbrev_table::alloc_abbrev): Rename from
16234         abbrev_table_alloc_abbrev.
16235         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
16236         (abbrev_table::lookup_abbrev): Rename from
16237         abbrev_table_lookup_abbrev.
16238         (abbrev_table_read_table): Return abbrev_table_up.
16239         (abbrev_table_free, abbrev_table_free_cleanup)
16240         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
16241         (load_partial_dies): Update.
16242
16243 2018-01-17  Tom Tromey  <tom@tromey.com>
16244
16245         * dwarf2read.c (dwarf2_compute_name): Update comment.
16246         (read_func_scope, read_variable): Update.
16247         (new_symbol): Remove.
16248         (new_symbol_full): Rename to new_symbol.
16249
16250 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
16251
16252         PR gdb/16577
16253         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
16254         a warning instead of throwing an error, set section size to 0 and return
16255         NULL.
16256         * gdb_bfd.h (gdb_bfd_map_section): Update description.
16257
16258 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
16259
16260         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
16261         std::string.
16262         (linux_ptrace_attach_fail_reason_string): Likewise.
16263         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
16264         Likewise.
16265         (linux_ptrace_attach_fail_reason_string): Likewise.
16266         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
16267
16268 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
16269
16270         * linux-nat.c (linux_nat_attach): Remove xstrdup.
16271
16272 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
16273
16274         PR gdb/21559
16275         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
16276         checking for fs_base/gs_base fields in struct user_regs_struct.
16277         * configure: Regenerate.
16278
16279 2018-01-17  Yao Qi  <yao.qi@linaro.org>
16280
16281         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
16282         function.
16283         (aarch64_linux_init_abi): Install it to gdbarch hook
16284         gcc_target_options.
16285
16286 2018-01-15  Pedro Alves  <palves@redhat.com>
16287
16288         * common/signals-state-save-restore.c
16289         (save_original_signals_state): Fix typos.
16290
16291 2017-01-12  Tom Tromey  <tom@tromey.com>
16292             Sergio Durigan Junior  <sergiodj@redhat.com>
16293
16294         * Makefile.in (install-only): Install gdb-add-index.
16295
16296 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
16297
16298         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
16299
16300 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
16301
16302         * infrun.c (keep_going_pass_signal): Clear step-over info when
16303         insert_breakpoints fails.
16304
16305 2018-01-11  Pedro Alves  <palves@redhat.com>
16306
16307         PR gdb/22583
16308         * infrun.c (resume): Rename to ...
16309         (resume_1): ... this.
16310         (resume): Reimplement as wrapper around resume_1.
16311
16312 2018-01-11  Pedro Alves  <palves@redhat.com>
16313
16314         PR remote/22597
16315         * remote.c (remote_parse_stop_reply): Default to the last-set
16316         general thread instead of to 'magic_null_ptid'.
16317
16318 2018-01-10  Pedro Alves  <palves@redhat.com>
16319
16320         * language.h (language_get_symbol_name_matcher): Rename ...
16321         (get_symbol_name_matcher): ... this.
16322         * language.c (language_get_symbol_name_matcher): Ditto.
16323         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
16324         callers adjusted.
16325
16326 2018-01-10  Pedro Alves  <palves@redhat.com>
16327
16328         PR gdb/22670
16329         * dwarf2read.c
16330         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
16331         Adjust to use language_get_symbol_name_matcher instead of
16332         language_defn::la_get_symbol_name_matcher.
16333         * language.c (language_get_symbol_name_matcher): If in Ada mode
16334         and the lookup name is a verbatim match, return Ada's matcher.
16335         * language.h (language_get_symbol_name_matcher): Adjust comment.
16336         (ada_lookup_name_info::verbatim_p):: New method.
16337
16338 2018-01-10  Pedro Alves  <palves@redhat.com>
16339
16340         PR gdb/22670
16341         * ada-lang.c (ada_collect_symbol_completion_matches): If the
16342         minsym's language is language_auto or language_cplus, pass down
16343         language_ada instead.
16344         * symtab.c (compare_symbol_name): Don't frob symbol language here.
16345
16346 2018-01-10  Pedro Alves  <palves@redhat.com>
16347
16348         PR gdb/22670
16349         * minsyms.c (linkage_name_str): New function.
16350         (iterate_over_minimal_symbols): Use it.
16351
16352 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16353
16354         * NEWS: Document that 'info proc' now works on FreeBSD.
16355
16356 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16357
16358         * configure.ac: Check for kinfo_getfile in libutil.
16359         * configure: Regenerate.
16360         * config.in: Regenerate.
16361         * fbsd-nat.c: Include "fbsd-tdep.h".
16362         (fbsd_fetch_cmdline): New.
16363         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
16364         rather than calling error.
16365         (fbsd_info_proc): New.
16366         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
16367         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
16368         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
16369
16370 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16371
16372         * fbsd-nat.c (struct free_deleter): Remove.
16373         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
16374
16375 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16376
16377         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
16378         NULL for an empty pathname.
16379
16380 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16381
16382         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
16383         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
16384         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
16385         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
16386         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
16387         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
16388         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
16389         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
16390         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
16391         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
16392         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
16393         (fbsd_core_fetch_timeval, fbsd_print_sigset)
16394         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
16395         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
16396         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
16397
16398 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
16399
16400         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
16401         (gnu_xfer_auxv): New function.
16402         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
16403         TARGET_OBJECT_AUXV.
16404
16405 2018-01-08  Yao Qi  <yao.qi@linaro.org>
16406             Simon Marchi  <simon.marchi@ericsson.com>
16407
16408         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
16409         common/selftest.c.
16410         (COMMON_OBS): Remove selftest.o.
16411         * configure.ac: Append selftest-arch.c and common/selftest.c to
16412         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
16413         * configure: Re-generated.
16414         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
16415         GDB_SELF_TEST.
16416         (maintenance_info_selftests): Likewise.
16417
16418 2018-01-08  Xavier Roirand  <roirand@adacore.com>
16419
16420         * ada-valprint.c (val_print_packed_array_elements): Use
16421         proper number of elements when printing an array indexed
16422         by an enumeration type.
16423
16424 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16425
16426         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
16427         (dw2_get_file_names_reader): Adjust.
16428         (lookup_dwo_signatured_type): Adjust.
16429         (lookup_dwp_signatured_type): Adjust.
16430         (lookup_signatured_type): Adjust.
16431         (create_type_unit_group): Adjust.
16432         (get_type_unit_group): Adjust.
16433         (process_psymtab_comp_unit_reader): Adjust.
16434         (build_type_psymtabs_reader): Adjust.
16435         (scan_partial_symbols): Adjust.
16436         (add_partial_symbol): Adjust.
16437         (add_partial_subprogram): Adjust.
16438         (peek_die_abbrev): Adjust.
16439         (fixup_go_packaging): Adjust.
16440         (process_imported_unit_die): Adjust.
16441         (dwarf2_compute_name): Adjust.
16442         (dwarf2_physname): Adjust.
16443         (read_import_statement): Adjust.
16444         (handle_DW_AT_stmt_list): Adjust.
16445         (read_file_scope): Adjust.
16446         (read_func_scope): Adjust.
16447         (read_lexical_block_scope): Adjust.
16448         (read_call_site_scope): Adjust.
16449         (read_variable): Adjust.
16450         (dwarf2_rnglists_process): Adjust.
16451         (dwarf2_ranges_process): Adjust.
16452         (dwarf2_ranges_read): Adjust.
16453         (dwarf2_get_pc_bounds): Adjust.
16454         (dwarf2_record_block_ranges): Adjust.
16455         (dwarf2_add_field): Adjust.
16456         (dwarf2_add_member_fn): Adjust.
16457         (read_structure_type): Adjust.
16458         (process_structure_scope): Adjust.
16459         (read_enumeration_type): Adjust.
16460         (read_array_type): Adjust.
16461         (mark_common_block_symbol_computed): Adjust.
16462         (read_common_block): Adjust.
16463         (read_namespace_type): Adjust.
16464         (read_namespace): Adjust.
16465         (read_module_type): Adjust.
16466         (read_tag_pointer_type): Adjust.
16467         (read_tag_ptr_to_member_type): Adjust.
16468         (read_tag_string_type): Adjust.
16469         (read_subroutine_type): Adjust.
16470         (read_typedef): Adjust.
16471         (read_base_type): Adjust.
16472         (attr_to_dynamic_prop): Adjust.
16473         (read_subrange_type): Adjust.
16474         (read_unspecified_type): Adjust.
16475         (dwarf2_read_abbrevs): Adjust.
16476         (load_partial_dies): Adjust.
16477         (read_partial_die): Adjust.
16478         (find_partial_die): Adjust.
16479         (guess_partial_die_structure_name): Adjust.
16480         (fixup_partial_die): Adjust.
16481         (read_attribute_value): Adjust.
16482         (read_addr_index): Adjust.
16483         (read_addr_index_from_leb128): Adjust.
16484         (read_str_index): Adjust.
16485         (dwarf2_string_attr): Adjust.
16486         (get_debug_line_section): Adjust.
16487         (dwarf_decode_line_header): Adjust.
16488         (lnp_state_machine::check_line_address): Adjust.
16489         (dwarf_decode_lines_1): Adjust.
16490         (dwarf_decode_lines): Adjust.
16491         (dwarf2_start_symtab): Adjust.
16492         (var_decode_location): Adjust.
16493         (new_symbol_full): Adjust.
16494         (dwarf2_const_value_data): Adjust.
16495         (dwarf2_const_value_attr): Adjust.
16496         (dwarf2_const_value): Adjust.
16497         (die_type): Adjust.
16498         (die_containing_type): Adjust.
16499         (build_error_marker_type): Adjust.
16500         (lookup_die_type): Adjust.
16501         (guess_full_die_structure_name): Adjust.
16502         (anonymous_struct_prefix): Adjust.
16503         (determine_prefix): Adjust.
16504         (dwarf2_name): Adjust.
16505         (follow_die_ref_or_sig): Adjust.
16506         (follow_die_offset): Adjust.
16507         (follow_die_ref): Adjust.
16508         (follow_die_sig_1): Adjust.
16509         (follow_die_sig): Adjust.
16510         (get_signatured_type): Adjust.
16511         (get_DW_AT_signature_type): Adjust.
16512         (decode_locdesc): Adjust.
16513         (dwarf_decode_macros): Adjust.
16514         (cu_debug_loc_section): Adjust.
16515         (fill_in_loclist_baton): Adjust.
16516         (dwarf2_symbol_mark_computed): Adjust.
16517         (init_one_comp_unit): Don't assign
16518         dwarf2_cu::dwarf2_per_objfile.
16519         (set_die_type): Adjust.
16520
16521 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16522
16523         * dwarf2read.c (struct mapped_debug_names): Add constructor.
16524         <dwarf2_per_objfile>: New field.
16525         (dwarf2_per_objfile): Remove global.
16526         (get_dwarf2_per_objfile): New function.
16527         (set_dwarf2_per_objfile): New function.
16528         (dwarf2_build_psymtabs_hard): Change objfile parameter to
16529         dwarf2_per_objfile.
16530         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16531         (read_abbrev_offset): Likewise.
16532         (read_indirect_string): Likewise.
16533         (read_indirect_line_string): Likewise.
16534         (read_indirect_string_at_offset): Likewise.
16535         (read_indirect_string_from_dwz): Likewise.
16536         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16537         dwarf2_per_objfile.
16538         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16539         (create_all_comp_units): Change objfile parameter to
16540         dwarf2_per_objfile.
16541         (create_all_type_units): Likewise.
16542         (process_queue): Add dwarf2_per_objfile parameter.
16543         (read_and_check_comp_unit_head): Likewise.
16544         (lookup_dwo_unit_in_dwp): Likewise.
16545         (get_dwp_file): Likewise.
16546         (process_cu_includes): Likewise.
16547         (struct free_dwo_file_cleanup_data): New struct.
16548         (dwarf2_has_info): Use get_dwarf2_per_objfile and
16549         set_dwarf2_per_objfile.
16550         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
16551         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
16552         context, adjust calls.
16553         (dw2_instantiate_symtab): Likewise.
16554         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
16555         (dw2_get_cu): Likewise.
16556         (create_cu_from_index_list): Change objfile parameter to
16557         dwarf2_per_objfile.
16558         (create_cus_from_index_list): Get dwarf2_per_objfile from
16559         context, adjust calls.
16560         (create_cus_from_index): Likewise.
16561         (create_signatured_type_table_from_index): Change objfile
16562         parameter to dwarf2_per_objfile.
16563         (create_signatured_type_table_from_debug_names): Change objfile
16564         parameter to dwarf2_per_objfile.
16565         (create_addrmap_from_index): Likewise.
16566         (create_addrmap_from_aranges): Likewise.
16567         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
16568         (dw2_setup): Remove.
16569         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
16570         context.
16571         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
16572         get_dwarf2_per_objfile.
16573         (dw2_forget_cached_source_info): Likewise.
16574         (dw2_map_symtabs_matching_filename): Likewise.
16575         (struct dw2_symtab_iterator) <index>: Remove.
16576         <dwarf2_per_objfile>: New field.
16577         (dw2_symtab_iter_init): Replace index parameter with
16578         dwarf2_per_objfile.
16579         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
16580         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
16581         (dw2_print_stats): Likewise.
16582         (dw2_dump): Likewise.
16583         (dw2_expand_symtabs_for_function): Likewise.
16584         (dw2_expand_all_symtabs): Likewise.
16585         (dw2_expand_symtabs_with_fullname): Likewise.
16586         (dw2_expand_marked_cus): Replace index and objfile parameters
16587         with dwarf2_per_objfile.
16588         (dw_expand_symtabs_matching_file_matcher): Add
16589         dwarf2_per_objfile parameter and adjust calls.
16590         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
16591         adjust calls.
16592         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
16593         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
16594         adjust calls.
16595         (create_cus_from_debug_names_list): Replace objfile parameter
16596         with dwarf2_per_objfile and adjust calls.
16597         (create_cus_from_debug_names): Likewise.
16598         (dwarf2_read_debug_names): Likewise.
16599         (mapped_debug_names::namei_to_name): Adjust call.
16600         (dw2_debug_names_iterator::next): Likewise.
16601         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
16602         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
16603         (dw2_debug_names_dump): Likewise.
16604         (dw2_debug_names_expand_symtabs_for_function): Likewise.
16605         (dw2_debug_names_expand_symtabs_matching): Likewise.
16606         (dwarf2_initialize_objfile): Likewise.
16607         (dwarf2_build_psymtabs): Likewise.
16608         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
16609         this_cu.
16610         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
16611         (read_and_check_comp_unit_head): Likewise.
16612         (read_abbrev_offset): Likewise.
16613         (create_debug_type_hash_table): Likewise.
16614         (create_debug_types_hash_table): Likewise.
16615         (create_all_type_units): Replace objfile parameter with
16616         dwarf2_per_objfile.
16617         (add_type_unit): Add dwarf2_per_objfile parameter.
16618         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
16619         with dwarf2_per_objfile.
16620         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
16621         (lookup_dwp_signatured_type): Likewise.
16622         (lookup_signatured_type): Likewise.
16623         (read_cutu_die_from_dwo): Likewise.
16624         (init_tu_and_read_dwo_dies): Likewise.
16625         (init_cutu_and_read_dies): Likewise.
16626         (init_cutu_and_read_dies_no_follow): Likewise.
16627         (allocate_type_unit_groups_table): Add objfile parameter.
16628         (create_type_unit_group): Use dwarf2_per_objfile from cu.
16629         (get_type_unit_group): Likewise.
16630         (process_psymtab_comp_unit): Update call.
16631         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
16632         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
16633         (print_tu_stats): Likewise.
16634         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
16635         in void* parameter.
16636         (build_type_psymtabs): Change objfile parameter to
16637         dwarf2_per_objfile.
16638         (process_skeletonless_type_unit): Use dwarf2_per_objfile
16639         passed in void* parameter.
16640         (process_skeletonless_type_units): Change objfile parameter to
16641         dwarf2_per_objfile.
16642         (set_partial_user): Likewise.
16643         (dwarf2_build_psymtabs_hard): Likewise.
16644         (read_comp_units_from_section): Likewise.
16645         (create_all_comp_units): Likewise.
16646         (scan_partial_symbols): Update calls.
16647         (add_partial_symbol): Likewise.
16648         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
16649         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
16650         (process_queue): Add dwarf2_per_objfile parameter.
16651         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
16652         (compute_compunit_symtab_includes): Likewise.
16653         (process_cu_includes): Add dwarf2_per_objfile parameter.
16654         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
16655         (process_full_type_unit): Likewise.
16656         (process_imported_unit_die): Update call.
16657         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
16658         (read_file_scope): Likewise.
16659         (allocate_dwo_file_hash_table): Add objfile parameter.
16660         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
16661         (create_cus_hash_table): Likewise.
16662         (create_dwp_hash_table): Likewise.
16663         (create_dwo_unit_in_dwp_v1): Likewise.
16664         (create_dwp_v2_section): Likewise.
16665         (create_dwo_unit_in_dwp_v2): Likewise.
16666         (lookup_dwo_unit_in_dwp): Likewise.
16667         (try_open_dwop_file): Likewise.
16668         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
16669         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
16670         cleanup to include a reference to dwarf2_per_objfile.
16671         (open_dwp_file): Add dwarf2_per_objfile parameter.
16672         (open_and_init_dwp_file): Likewise.
16673         (get_dwp_file): Likewise.
16674         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
16675         (queue_and_load_all_dwo_tus): Update call.
16676         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
16677         data.
16678         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
16679         (dwarf2_ranges_process): Likewise.
16680         (dwarf2_get_pc_bounds): Likewise.
16681         (mark_common_block_symbol_computed): Likewise.
16682         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16683         (dwarf2_read_abbrevs): Update call.
16684         (read_partial_die): Use dwarf2_per_objfile from cu.
16685         (find_partial_die): Likewise.
16686         (fixup_partial_die): Likewise.
16687         (read_attribute_value): Likewise.
16688         (read_indirect_string_at_offset_from): Add objfile parameter.
16689         (read_indirect_string_at_offset): Add dwarf2_per_objfile
16690         parameter.
16691         (read_indirect_string_from_dwz): Add objfile parameter.
16692         (read_indirect_string): Add objfile parameter.
16693         (read_addr_index_1): Add dwarf2_per_objfile parameter.
16694         (read_addr_index): Use dwarf2_per_objfile from cu.
16695         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
16696         call dw2_setup.
16697         (read_str_index): Use dwarf2_per_objfile from cu.
16698         (get_debug_line_section): Likewise.
16699         (read_formatted_entries): Add dwarf2_per_objfile parameter.
16700         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
16701         (new_symbol_full): Use dwarf2_per_objfile from cu.
16702         (build_error_marker_type): Likewise.
16703         (lookup_die_type): Likewise.
16704         (determine_prefix): Likewise.
16705         (follow_die_offset): Likewise.
16706         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
16707         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
16708         (dwarf2_fetch_die_type_sect_off): Likewise.
16709         (dwarf2_get_die_type): Likewise.
16710         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
16711         (get_signatured_type): Likewise.
16712         (get_DW_AT_signature_type): Likewise.
16713         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
16714         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
16715         (cu_debug_loc_section): Likewise.
16716         (fill_in_loclist_baton): Likewise.
16717         (dwarf2_symbol_mark_computed): Likewise.
16718         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16719         dwarf2_per_objfile.
16720         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
16721         parameter.
16722         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16723         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
16724         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
16725         (set_die_type): Use dwarf2_free_objfile from cu.
16726         (get_die_type_at_offset): Likewise.
16727         (dwarf2_per_objfile_free): Don't assign global variable.
16728         (debug_names) <constructor>: Add dwarf2_per_objfile
16729         parameter, update m_debugstrlookup construction.
16730         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
16731         parameter.
16732         <m_dwarf2_per_objfile>: New field.
16733         <lookup>: Use m_dwarf2_per_objfile.
16734         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
16735         (psyms_seen_size): Likewise.
16736         (write_gdbindex): Replace objfile parameter with
16737         dwarf2_per_objfile.
16738         (write_debug_names): Likewise.
16739         (write_psymtabs_to_index): Likewise.
16740         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
16741         calls.
16742
16743 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16744
16745         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
16746         <dwarf2_per_objfile>: New field.
16747         (struct dwarf2_per_cu_data) <objfile>: Remove.
16748         <dwarf2_per_objfile>: New field.
16749         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
16750         of objfile.
16751         (create_signatured_type_table_from_index): Likewise.
16752         (create_debug_type_hash_table): Likewise.
16753         (fill_in_sig_entry_from_dwo_entry): Likewise.
16754         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
16755         (create_type_unit_group): Assign dwarf2_per_objfile instead of
16756         objfile.
16757         (create_partial_symtab): Access objfile through
16758         dwarf2_per_objfile.
16759         (process_psymtab_comp_unit_reader): Likewise.
16760         (read_comp_units_from_section): Likewise.
16761         (scan_partial_symbols): Likewise.
16762         (add_partial_symbol): Likewise.
16763         (add_partial_subprogram): Likewise.
16764         (peek_die_abbrev): Likewise.
16765         (fixup_go_packaging): Likewise.
16766         (process_full_comp_unit): Likewise.
16767         (process_full_type_unit): Likewise.
16768         (process_imported_unit_die): Likewise.
16769         (dwarf2_compute_name): Likewise.
16770         (dwarf2_physname): Likewise.
16771         (read_import_statement): Likewise.
16772         (create_cus_hash_table): Assign dwarf2_physname instead of
16773         objfile.
16774         (read_func_scope): Access objfile through dwarf2_per_objfile.
16775         (read_lexical_block_scope): Likewise.
16776         (read_call_site_scope): Likewise.
16777         (read_variable): Likewise.
16778         (dwarf2_rnglists_process): Likewise.
16779         (dwarf2_ranges_process): Likewise.
16780         (dwarf2_ranges_read): Likewise.
16781         (dwarf2_record_block_ranges): Likewise.
16782         (dwarf2_add_field): Likewise.
16783         (dwarf2_add_member_fn): Likewise.
16784         (read_structure_type): Likewise.
16785         (process_structure_scope): Likewise.
16786         (read_enumeration_type): Likewise.
16787         (read_array_type): Likewise.
16788         (read_common_block): Likewise.
16789         (read_namespace_type): Likewise.
16790         (read_namespace): Likewise.
16791         (read_module_type): Likewise.
16792         (read_tag_pointer_type): Likewise.
16793         (read_tag_ptr_to_member_type): Likewise.
16794         (read_tag_string_type): Likewise.
16795         (read_subroutine_type): Likewise.
16796         (read_typedef): Likewise.
16797         (read_base_type): Likewise.
16798         (attr_to_dynamic_prop): Likewise.
16799         (read_subrange_type): Likewise.
16800         (read_unspecified_type): Likewise.
16801         (load_partial_dies): Likewise.
16802         (read_partial_die): Likewise.
16803         (find_partial_die): Likewise.
16804         (guess_partial_die_structure_name): Likewise.
16805         (fixup_partial_die): Likewise.
16806         (read_attribute_value): Likewise.
16807         (read_addr_index_from_leb128): Likewise.
16808         (dwarf2_read_addr_index): Likewise.
16809         (dwarf2_string_attr): Likewise.
16810         (lnp_state_machine::check_line_address): Likewise.
16811         (dwarf_decode_lines_1): Likewise.
16812         (dwarf_decode_lines): Likewise.
16813         (dwarf2_start_symtab): Likewise.
16814         (var_decode_location): Likewise.
16815         (new_symbol_full): Likewise.
16816         (dwarf2_const_value_data): Likewise.
16817         (dwarf2_const_value_attr): Likewise.
16818         (dwarf2_const_value): Likewise.
16819         (die_type): Likewise.
16820         (die_containing_type): Likewise.
16821         (lookup_die_type): Likewise.
16822         (guess_full_die_structure_name): Likewise.
16823         (anonymous_struct_prefix): Likewise.
16824         (dwarf2_name): Likewise.
16825         (follow_die_ref_or_sig): Likewise.
16826         (follow_die_offset): Likewise.
16827         (follow_die_ref): Likewise.
16828         (dwarf2_fetch_die_loc_sect_off): Likewise.
16829         (dwarf2_fetch_constant_bytes): Likewise.
16830         (dwarf2_fetch_die_type_sect_off): Likewise.
16831         (dwarf2_get_die_type): Likewise.
16832         (follow_die_sig): Likewise.
16833         (decode_locdesc): Likewise.
16834         (dwarf2_per_cu_objfile): Likewise.
16835         (dwarf2_per_cu_text_offset): Likewise.
16836         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
16837         objfile.
16838         (set_die_type): Access objfile through
16839         dwarf2_per_objfile.
16840
16841 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16842
16843         * valprint.c (converted_character_d): Remove typedef.
16844         (DEF_VEC_O (converted_character_d)): Remove.
16845         (count_next_character): Use std::vector.
16846         (print_converted_chars_to_obstack): Likewise.
16847         (generic_printstr): Likewise.
16848
16849 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16850
16851         * xml-support.h (struct gdb_xml_value): Add constructor.
16852         <value>: Change type to unique_xmalloc_ptr.
16853         (gdb_xml_value_s): Remove typedef.
16854         (DEF_VEC_O (gdb_xml_value_s)): Remove.
16855         (gdb_xml_element_start_handler): Change parameter type to
16856         std::vector.
16857         (xml_find_attribute): Likewise.
16858         * xml-support.c (xml_find_attribute): Change parameter type to
16859         std::vector and adjust.
16860         (gdb_xml_values_cleanup): Remove.
16861         (gdb_xml_parser::start_element): Adjust to std::vector.
16862         (xinclude_start_include): Change paraeter type to std::vector
16863         and adjust.
16864         * btrace.c (check_xml_btrace_version): Likewise.
16865         (parse_xml_btrace_block): Likewise.
16866         (parse_xml_btrace_pt_config_cpu): Likewise.
16867         (parse_xml_btrace_pt): Likewise.
16868         (parse_xml_btrace_conf_bts): Likewise.
16869         (parse_xml_btrace_conf_pt): Likewise.
16870         * memory-map.c (memory_map_start_memory): Likewise.
16871         (memory_map_start_property): Likewise.
16872         * osdata.c (osdata_start_osdata): Likewise.
16873         (osdata_start_item): Likewise.
16874         (osdata_start_column): Likewise.
16875         * remote.c (start_thread): Likewise.
16876         * solib-aix.c (library_list_start_library): Likewise.
16877         (library_list_start_list): Likewise.
16878         * solib-svr4.c (library_list_start_library): Likewise.
16879         (svr4_library_list_start_list): Likewise.
16880         * solib-target.c (library_list_start_segment): Likewise.
16881         (library_list_start_section): Likewise.
16882         (library_list_start_library): Likewise.
16883         (library_list_start_list): Likewise.
16884         * tracepoint.c (traceframe_info_start_memory): Likewise.
16885         (traceframe_info_start_tvar): Likewise.
16886         * xml-syscall.c (syscall_start_syscall): Likewise.
16887         * xml-tdesc.c (tdesc_start_target): Likewise.
16888         (tdesc_start_feature): Likewise.
16889         (tdesc_start_reg): Likewise.
16890         (tdesc_start_union): Likewise.
16891         (tdesc_start_struct): Likewise.
16892         (tdesc_start_flags): Likewise.
16893         (tdesc_start_enum): Likewise.
16894         (tdesc_start_field): Likewise.
16895         (tdesc_start_enum_value): Likewise.
16896         (tdesc_start_vector): Likewise.
16897
16898 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16899
16900         * extension.h (struct xmethod_worker) <clone>: Remove.
16901         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
16902         Remove.
16903         (python_xmethod_worker::clone): Remove.
16904         * valops.c (find_overload_match): Use std::move instead of
16905         clone.
16906
16907 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16908
16909         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
16910         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
16911         <free_xmethod_worker_data>: Remove.
16912         <get_matching_xmethod_workers>: Chance VEC to std::vector.
16913         <get_xmethod_arg_types>: Remove.
16914         <get_xmethod_result_type>: Remove.
16915         <invoke_xmethod>: Remove.
16916         * extension.c (new_xmethod_worker): Remove.
16917         (clone_xmethod_worker): Remove.
16918         (get_matching_xmethod_workers): Return void, pass std::vector by
16919         pointer.
16920         (get_xmethod_arg_types): Rename to...
16921         (xmethod_worker::get_arg_types): ... this, and adjust.
16922         (get_xmethod_result_type): Rename to...
16923         (xmethod_worker::get_result_type): ... this, and adjust.
16924         (invoke_xmethod): Remove.
16925         (free_xmethod_worker): Remove.
16926         (free_xmethod_worker_vec): Remove.
16927         * extension.h (enum ext_lang_rc): Move here from
16928         extension-priv.h.
16929         (struct xmethod_worker): Add constructor and destructor.
16930         <data>: Remove.
16931         <value>: Remove.
16932         <invoke, clone, do_get_result_type, do_get_arg_types>: New
16933         virtual pure methods.
16934         <get_arg_types, get_result_type>: New methods.
16935         (xmethod_worker_ptr): Remove typedef.
16936         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
16937         (xmethod_worker_vec): Remove typedef.
16938         (xmethod_worker_up): New typedef.
16939         (invoke_xmethod): Remove.
16940         (clone_xmethod_worker): Remove.
16941         (free_xmethod_worker): Remove.
16942         (free_xmethod_worker_vec): Remove.
16943         (get_xmethod_arg_types): Remove.
16944         (get_xmethod_result_type): Remove.
16945         * valops.c (find_method_list): Use std::vector, don't use
16946         intermediate vector.
16947         (value_find_oload_method_list): Use std::vector.
16948         (find_overload_match): Use std::vector.
16949         (find_oload_champ): Use std::vector.
16950         * value.c (value_free): Use operator delete.
16951         (value_of_xmethod): Rename to...
16952         (value_from_xmethod): ... this.  Don't assign
16953         xmethod_worker::value, take rvalue-reference.
16954         (result_type_of_xmethod): Adjust.
16955         (call_xmethod): Adjust.
16956         * value.h: Include extension.h.
16957         (struct xmethod_worker): Don't forward-declare.
16958         (value_of_xmethod): Rename to...
16959         (value_from_xmethod): ... this, take rvalue-reference.
16960         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
16961         (struct python_xmethod_worker): ... this, add constructor and
16962         destructor.
16963         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
16964         (gdbpy_free_xmethod_worker_data): Rename to...
16965         (python_xmethod_worker::~python_xmethod_worker): ... this and
16966         adjust.
16967         (gdbpy_clone_xmethod_worker_data): Rename to...
16968         (python_xmethod_worker::clone): ... this and adjust.
16969         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
16970         temporary vector.
16971         (gdbpy_get_xmethod_arg_types): Rename to...
16972         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
16973         (gdbpy_get_xmethod_result_type): Rename to...
16974         (python_xmethod_worker::do_get_result_type): ... this and
16975         adjust.
16976         (gdbpy_invoke_xmethod): Rename to...
16977         (python_xmethod_worker::invoke): ... this and adjust.
16978         (new_python_xmethod_worker): Rename to...
16979         (python_xmethod_worker::python_xmethod_worker): ... this and
16980         adjust.
16981         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
16982         Remove.
16983         (gdbpy_free_xmethod_worker_data): Remove.
16984         (gdbpy_get_matching_xmethod_workers): Use std::vector.
16985         (gdbpy_get_xmethod_arg_types): Remove.
16986         (gdbpy_get_xmethod_result_type): Remove.
16987         (gdbpy_invoke_xmethod): Remove.
16988         * python/python.c (python_extension_ops): Remove obsolete
16989         callbacks.
16990
16991 2018-01-05  Pedro Alves  <palves@redhat.com>
16992
16993         PR gdb/18653
16994         * common/signals-state-save-restore.c
16995         (save_original_signals_state): New parameter 'quiet'.  Warn if we
16996         find a custom handler preinstalled, instead of internal erroring.
16997         But only warn if !quiet.
16998         * common/signals-state-save-restore.h
16999         (save_original_signals_state): New parameter 'quiet'.
17000         * main.c (captured_main_1): Move save_original_signals_state call
17001         after option handling, and pass QUIET.
17002
17003 2018-01-05  Pedro Alves  <palves@redhat.com>
17004
17005         * spu-tdep.c (spu_catch_start): Pass
17006         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
17007
17008 2018-01-05  Pedro Alves  <palves@redhat.com>
17009
17010         PR gdb/22670
17011         * ada-lang.c (literal_symbol_name_matcher): New function.
17012         (ada_get_symbol_name_matcher): Use it for
17013         symbol_name_match_type::SEARCH_NAME.
17014         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
17015         it down instead of assuming symbol_name_match_type::FULL.
17016         * block.h (block_lookup_symbol): New parameter 'match_type'.
17017         * c-valprint.c (print_unpacked_pointer): Use
17018         lookup_symbol_search_name instead of lookup_symbol.
17019         * compile/compile-object-load.c (get_out_value_type): Pass down
17020         symbol_name_match_type::SEARCH_NAME.
17021         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
17022         symbol_name_match_type::FULL.
17023         * cp-support.c (cp_get_symbol_name_matcher): Handle
17024         symbol_name_match_type::SEARCH_NAME.
17025         * infrun.c (insert_exception_resume_breakpoint): Use
17026         lookup_symbol_search_name.
17027         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
17028         * psymtab.c (maintenance_check_psymtabs): Use
17029         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
17030         * stack.c (print_frame_args): Use lookup_symbol_search_name and
17031         SYMBOL_SEARCH_NAME.
17032         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
17033         if symbol_name_match_type::SEARCH_NAME.
17034         (lookup_symbol_in_language): Pass down
17035         symbol_name_match_type::FULL.
17036         (lookup_symbol_search_name): New.
17037         (lookup_language_this): Pass down
17038         symbol_name_match_type::SEARCH_NAME.
17039         (lookup_symbol_aux, lookup_local_symbol): New parameter
17040         'match_type'.  Pass it down.
17041         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
17042         (lookup_symbol_search_name): New declaration.
17043         (lookup_symbol_in_block): New 'match_type' parameter.
17044
17045 2018-01-05  Pedro Alves  <palves@redhat.com>
17046
17047         PR gdb/22670
17048         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
17049         ada_lookup_symbol.
17050         (ada_lookup_symbol): Reimplement in terms of
17051         ada_lookup_symbol_list, bits factored out from
17052         ada_lookup_encoded_symbol.
17053
17054 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
17055
17056         * ada-exp.y (write_object_renaming): When subscripting an array
17057         using a symbol as the index, pass the block in call to
17058         ada_lookup_encoded_symbol when looking that symbol up.
17059
17060 2018-01-05  Jerome Guitton  <guitton@adacore.com>
17061
17062         * ada-lang.c (ada_array_length): Use ada_index_type instead of
17063         TYPE_INDEX_TYPE.
17064
17065 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
17066
17067         * ada-lang.c (ada_to_fixed_value_create): Add handling of
17068         the case where VALUE_LVAL (val0) is not lval_memory.
17069
17070 2018-01-05  Xavier Roirand  <roirand@adacore.com>
17071
17072         * ada-valprint.c (print_optional_low_bound): Handle
17073         character-indexed array printing like boolean-indexed array
17074         printing.
17075
17076 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
17077
17078         * NEWS: Create a new section for the next release branch.
17079         Rename the section of the current branch, now that it has
17080         been cut.
17081
17082 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
17083
17084         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
17085         * version.in: Bump version to 8.1.50.DATE-git.
17086
17087 2018-01-03  Xavier Roirand  <roirand@adacore.com>
17088
17089         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
17090         Add field.
17091         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
17092         Add field.
17093         (default_exception_support_info) <catch_handlers_sym>: Add field.
17094         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
17095         (ada_exception_name_addr_1): Add "catch handlers" handling.
17096         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
17097         Update all callers.
17098         (create_excep_cond_exprs) <ex>: Add parameter.
17099         (re_set_exception): Update create_excep_cond_exprs call.
17100         (print_it_exception, print_one_exception, print_mention_exception)
17101         (print_recreate_exception): Add "catch handler" handling.
17102         (allocate_location_catch_handlers, re_set_catch_handlers)
17103         (check_status_catch_handlers, print_it_catch_handlers)
17104         (print_one_catch_handlers, print_mention_catch_handlers)
17105         (print_recreate_catch_handlers): New function.
17106         (catch_handlers_breakpoint_ops): New variable.
17107         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
17108         Add parameter.  Add "catch handler" handling.
17109         (ada_exception_sym_name, ada_exception_breakpoint_ops):
17110         Add "catch handler" handling.
17111         (ada_exception_catchpoint_cond_string): Add "catch handler"
17112         handling.
17113         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
17114         call.
17115         (catch_ada_handlers_command): New function.
17116         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
17117         operations structure.
17118         (_initialize_ada_language): Add "catch handlers" command entry.
17119         * NEWS: Document "catch handlers" feature.
17120
17121 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
17122
17123         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
17124         account when creating the array type of the slice.
17125         (ada_value_slice): Likewise.
17126
17127 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
17128
17129         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
17130         New enum value.
17131         (create_array_type_with_stride): Add byte_stride_prop parameter.
17132         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
17133         New parameter.  Update all callers in this file.
17134         (array_type_has_dynamic_stride): New function.
17135         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
17136         of arrays with dynamic byte strides.
17137         * dwarf2read.c (read_array_type): Add support for dynamic
17138         DW_AT_byte_stride attributes.
17139
17140 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
17141
17142         * dwarf2read.c (read_unspecified_type): Treat
17143         DW_TAG_enumeration_type DIEs from Ada units as stubs.
17144
17145 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
17146
17147         Update copyright year range in all GDB files.
17148
17149 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
17150
17151         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
17152         and gdb/testsuite/gdb.base/step-line.c.
17153
17154 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
17155
17156         * copyright.py (main): Dump the contents of
17157         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
17158         even if BY_HAND is empty.
17159
17160 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
17161
17162         * top.c (print_gdb_version): Update Copyright year in version
17163         message.
17164
17165 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
17166
17167         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
17168
17169 For older changes see ChangeLog-2017.
17170 \f
17171 Local Variables:
17172 mode: change-log
17173 left-margin: 8
17174 fill-column: 74
17175 version-control: never
17176 coding: utf-8
17177 End: