Fix PR cli/23785: Check if file exists when invoking "restore FILE binary"
[external/binutils.git] / gdb / ChangeLog
1 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
2
3         PR cli/23785
4         * cli/cli-dump.c (restore_binary_file): Check if "file" is
5         NULL.
6
7 2018-10-17  Paul Koning  <paul_koning@dell.com>
8
9         * charset.c (convert_between_encodings): Fix unsigned overflow.
10
11 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
12
13         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
14         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
15         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
16         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
17         New functions.
18         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
19         and fbsd_info_proc_mappings_header.
20         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
21         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
22         New.
23
24 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
25
26         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
27         Solaris Maintainer.
28
29 2018-10-15  Tom Tromey  <tom@tromey.com>
30
31         * tui/tui.c (strcat_to_buf): Remove casts.
32         * tui/tui-winsource.c (tui_show_source_line)
33         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
34         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
35         * tui/tui-windata.c (tui_first_data_item_displayed)
36         (tui_delete_data_content_windows, tui_erase_data_content)
37         (tui_display_all_data, tui_display_data_from)
38         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
39         * tui/tui-win.c (tui_set_win_height)
40         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
41         casts.
42         * tui/tui-win.c (tui_resize_all): Remove casts.
43         (tui_scroll_backward_command, tui_set_focus)
44         (tui_set_tab_width_command): Likewise.
45         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
46         * tui/tui-regs.c (tui_show_register_group): Remove cast.
47         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
48         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
49         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
50         Remove casts.
51
52 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
53
54         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
55         AArch64/ARM maintainer.
56
57 2018-10-11  Gary Benson <gbenson@redhat.com>
58
59         * interps.h (interp::m_name): Make private and mutable.
60         * interps.c (interp::~interp): Free m_name.
61
62 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
63             Simon Marchi <simark@simark.ca>
64
65         * README (`configure' options): Add documentation for new
66         "--enable-unit-tests" option.
67         * acinclude.m4: Include "selftest.m4".
68         * configure: Regenerate.
69         * configure.ac: Use "GDB_AC_SELFTEST".
70         * maint.c (maintenance_selftest): Update message informing
71         that selftests have been disabled.
72         (maintenance_info_selftests): Likewise.
73         * selftest.m4: New file.
74
75 2018-10-10  Gary Benson <gbenson@redhat.com>
76
77         * remote.c (remote_target::remote_send_printf): Add
78         missing va_end found by Coverity.
79
80 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
81
82         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
83
84 2018-10-09  Tom Tromey  <tom@tromey.com>
85
86         * configure: Rebuild.
87         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
88         * NEWS: Update --enable-ubsan documentation.
89
90 2018-10-09  Gary Benson <gbenson@redhat.com>
91
92         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
93         found by Coverity.
94
95 2018-10-08  Tom Tromey  <tom@tromey.com>
96
97         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
98         variable.
99         (riscv_fbsd_init_abi): Likewise.
100
101 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
102         * valops.c (value_struct_elt_for_reference): Rename local variable
103         to work around the shadowing a previous local warning.
104
105 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
106
107         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
108         * NEWS: Mention new FreeBSD/riscv native configuration.
109         * configure.host: Add riscv*-*-freebsd*.
110         * configure.nat: Likewise.
111         * riscv-fbsd-nat.c: New file.
112
113 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
114
115         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
116         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
117         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
118         * NEWS: Mention new FreeBSD/riscv target.
119         * configure.tgt: Add riscv*-*-freebsd*.
120         * riscv-fbsd-tdep.c: New file.
121         * riscv-fbsd-tdep.h: New file.
122
123 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
124
125         * regcache.h (struct regcache_map_entry): Note that this type can
126         be used with traditional frame caches.
127         * trad-frame.c (trad_frame_set_reg_regmap): New.
128         * trad-frame.h (trad_frame_set_reg_regmap): New.
129
130 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
131
132         PR c++/16841
133         * valops.c (get_virtual_base_offset): New function.
134         (value_struct_elt_for_reference): Use it to get virtual base offset
135         and add it in calculating class member address.
136
137 2018-10-08   John Darrington <john@darrington.wattle.id.au>
138
139     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
140       (check_producer): Check if the producer is codewarrior.
141       (producer_is_codewarrior): New function.
142       (lnp_state_machine::record_line): Ignore is_stmt flag for records
143        produced by codewarrior.
144       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
145
146 2018-10-06  Tom Tromey  <tom@tromey.com>
147
148         PR python/19399:
149         * python/py-inferior.c: Add "architecture" entry.
150         (infpy_architecture): New function.
151
152 2018-10-06  Tom Tromey  <tom@tromey.com>
153
154         PR python/21765:
155         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
156         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
157         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
158         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
159
160 2018-10-06  Tom Tromey  <tom@tromey.com>
161
162         PR build/17077:
163         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
164         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
165         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
166         #include.
167
168 2018-10-06  Tom Tromey  <tom@tromey.com>
169
170         * python/py-breakpoint.c (bppy_get_location): Handle a
171         bp_breakpoint without a location.
172
173 2018-10-06  Tom Tromey  <tom@tromey.com>
174
175         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
176         (_RegEx): Reformat help text.
177         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
178         (AnyCallerIs, AnyCallerMatches): Reformat help text.
179         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
180         text.
181         * python/lib/gdb/command/xmethods.py (InfoXMethod)
182         (EnableXMethod, DisableXMethod): Remove help indentation.
183         Capitalize meta-syntactic variables.
184         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
185         (EnableUnwinder, DisableUnwinder): Remove help indentation.
186         Capitalize meta-syntactic variables.
187         * python/lib/gdb/command/explore.py (ExploreCommand)
188         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
189         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
190         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
191         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
192         Remove help indentation.
193         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
194         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
195         (DisableFrameFilter, SetFrameFilterPriority)
196         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
197
198 2018-10-06  Tom Tromey  <tom@tromey.com>
199
200         PR tui/28819:
201         * tui/tui-io.c (gdb_wgetch): New function.
202         (tui_mld_getc, tui_getc): Use it.
203
204 2018-10-05  Tom Tromey  <tom@tromey.com>
205
206         * sol-thread.c (sol_thread_target::wait): Rename inner
207         "save_ptid".
208
209 2018-10-04  Tom Tromey  <tom@tromey.com>
210
211         * configure: Rebuild.
212         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
213
214 2018-10-04  Tom Tromey  <tom@tromey.com>
215
216         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
217         declaration of "block".
218
219 2018-10-04  Tom Tromey  <tom@tromey.com>
220
221         * common/filestuff.c (fdwalk): Remove inner declaration of
222         "result".
223
224 2018-10-04  Tom Tromey  <tom@tromey.com>
225
226         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
227         "structs_addr" and hoist declaration.
228
229 2018-10-04  Tom Tromey  <tom@tromey.com>
230
231         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
232         variable "size".
233
234 2018-10-04  Tom Tromey  <tom@tromey.com>
235
236         * mdebugread.c (parse_partial_symbols): Use std::string.
237
238 2018-10-04  Tom Tromey  <tom@tromey.com>
239
240         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
241         * p-valprint.c (pascal_val_print): Split inner "i" variable.
242         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
243         header.
244         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
245         more inner scope.
246         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
247         * varobj.c (varobj_update): Rename inner "newobj",
248         "type_changed".
249         * valprint.c (generic_emit_char): Rename inner "buf".
250         * valops.c (find_overload_match): Rename inner "temp".
251         (value_struct_elt_for_reference): Declare "v" in more inner
252         scope.
253         * v850-tdep.c (v850_push_dummy_call): Rename "len".
254         * unittests/array-view-selftests.c (run_tests): Rename inner
255         "vec".
256         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
257         header.
258         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
259         "tsv" in more inner scope.
260         (print_one_static_tracepoint_marker): Rename inner
261         "tuple_emitter".
262         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
263         (tic6x_push_dummy_call): Don't redeclare "addr".
264         * target-float.c: Declare "dto" lower.
265         * symtab.c (lookup_local_symbol): Rename inner "sym".
266         (find_pc_sect_line): Rename inner "pc".
267         * stack.c (print_frame): Don't redeclare "gdbarch".
268         (return_command): Rename inner "gdbarch".
269         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
270         "sp".
271         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
272         header.
273         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
274         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
275         scope.
276         * remote.c (remote_target::update_thread_list): Don't redeclare
277         "tp".
278         (remote_target::process_initial_stop_replies): Rename inner
279         "thread".
280         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
281         (remote_target::wait_as): Don't redeclare "stop_reply".
282         (remote_target::get_thread_local_address): Rename inner
283         "result".
284         (remote_target::get_tib_address): Likewise.
285
286         * regcache.c (cooked_read_test): Rename "regnum".
287         * record-btrace.c (cmd_record_btrace_start): Rename inner
288         "exception".
289         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
290         loop header.
291         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
292         header.
293         (ppu2spu_sniffer): Rename inner "buf".
294         * parse.c (operator_check_standard): Rename inner "type",
295         "objfile".
296         * p-valprint.c (pascal_val_print): Introduce new scope for
297         "low_bound", "high_bound".
298         * p-exp.y (yylex): Declare "i" in loop header.
299         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
300         Lower declaration of "s".
301         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
302         header.
303         (nios2_push_dummy_call): Rename "len".
304         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
305         "buf".
306         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
307         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
308         (linux_xfer_osdata_modules): Likewise.
309         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
310         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
311         (mips_o64_push_dummy_call): Likewise.
312         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
313         "op".
314         * mi/mi-main.c (list_available_thread_groups): Rename inner
315         "tuple_emitter".
316         (mi_cmd_data_read_memory): Rename inner "opts".
317         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
318         "tuple_emitter".
319         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
320         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
321         more inner scope.
322         (parse_partial_symbols): Rename inner "pst", "p", "name"
323         * main.c (captured_main_1): Rename inner "i"s.
324         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
325         "oso2".
326         * linux-tdep.c (linux_info_proc): Rename inner "filename".
327         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
328         * infrun.c (handle_no_resumed): Don't redeclare "thread".
329         (handle_signal_stop): Rename inner "gdbarch".
330         (handle_command): Declare "signum" in loop header.
331         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
332         "status".
333         (examine_prologue): Rename inner "sol" and "sof".
334         (ia64_extract_return_value): Rename inner "val".  Declare another
335         "val" in a more inner scope.
336         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
337         inner scope.
338         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
339         "except".
340         * findvar.c (default_read_var_value): Don't redeclare "addr".
341         * f-exp.y (yylex): Declare "i" in loop header.
342         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
343         Rename inner "type", "expect_type".
344         (evaluate_subexp_for_sizeof): Rename inner "pc".
345         * elfread.c (elf_symfile_read): Rename inner "abfd".
346         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
347         "bytes_read".
348         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
349         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
350         (dwarf_decode_line_header): Rename inner "lh".
351         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
352         "offset".  Declare "i" in loop header.
353         (disassemble_dwarf_expression): Rename inner "addr_size".
354         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
355         inner "result".
356         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
357         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
358         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
359         "inner_list_emitter".
360         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
361         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
362         declaration in a block.
363         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
364         * cp-valprint.c (cp_print_value_fields): Don't redeclare
365         "obstack_final_size".
366         * cp-support.c (inspect_type): Declare "i" in loop header.
367         * compile/compile.c (compile_instance::insert_symbol_error):
368         Rename inner "e".
369         * common/agent.c (agent_run_command): Remove inner "ret"
370         declaration.
371         * coffread.c (coff_symfile_read): Rename inner "name".
372         (coff_symfile_read): Rename inner "abfd".
373         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
374         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
375         "high".
376         * c-exp.y (lex_one_token): Move "len" declaration lower.
377         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
378         "gdbarch".
379         (create_exception_master_breakpoint): Likewise.  Don't redeclare
380         "b".
381         (watch_command_1): Declare "mark" later.
382         (clear_command): Don't shadow "a" or "b".
383         (delete_command): Rename inner "b".
384         (delete_trace_command): Likewise.
385         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
386         "op".
387         (arm_gdbarch_init): Remove inner "e_flags".
388         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
389         "offset" in inner blocks.
390
391 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
392
393         * dwarf-index-write.c (file_write): Don't write if the vector is
394         empty.
395
396 2018-10-05  Tom de Vries  <tdevries@suse.de>
397
398         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
399         PyArg_ParseTuple call.
400
401 2018-10-05  Tom de Vries  <tdevries@suse.de>
402
403         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
404         PyArg_ParseTuple call.
405
406 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
407
408         * psymtab.c (recursively_search_psymtabs): Reformat parameters
409         to avoid exceeding 80 characters per line limit.
410
411 2018-10-04  Tom Tromey  <tom@tromey.com>
412
413         * symfile.c (syms_from_objfile_1, finish_new_objfile)
414         (reread_symbols): Update.
415         * complaints.h (clear_complaints): Remove argument.
416         * complaints.c (enum complaint_series): Remove.
417         (series): Remove global.
418         (complaint_internal): Update.
419         (clear_complaints): Remove argument.
420
421 2018-10-04  Tom Tromey  <tom@tromey.com>
422
423         * symfile.c (symbol_file_add_with_addrs): Do not print "no
424         debugging symbols" message if there is a separate debug objfile.
425
426 2018-10-04  Tom Tromey  <tom@tromey.com>
427
428         PR cli/19551:
429         * symfile.c (symbol_file_add_with_addrs): Update output.
430         * psymtab.c (require_partial_symbols): Update output.
431
432 2018-10-04  Tom Tromey  <tom@tromey.com>
433
434         PR cli/22234:
435         * complaints.c: Emit \n.
436
437 2018-10-04  Tom Tromey  <tom@tromey.com>
438
439         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
440         (separate_debug_file_exists, find_separate_debug_file)
441         (add_symbol_file_command, reread_symbols, allocate_symtab)
442         (allocate_compunit_symtab): Use filtered printing, not
443         unfiltered.
444         * psymtab.c (require_partial_symbols, dump_psymtab)
445         (allocate_psymtab): Use filtered printing, not unfiltered.
446
447 2018-10-04  Tom Tromey  <tom@tromey.com>
448
449         * complaints.c (complaint_internal): Correctly check complaint
450         count.
451
452 2018-10-04  Tom Tromey  <tom@tromey.com>
453
454         * complaints.h (struct complaints): Remove declaration.
455         * complaints.c (clear_complaints): Remove an unused variable.
456
457 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
458
459         * MAINTAINERS (Write After Approval): Add self.
460
461 2018-10-03  Tom Tromey  <tom@tromey.com>
462
463         * guile/scm-value.c (gdbscm_value_to_string): Initialize
464         "buffer_contents".
465         * coffread.c (coff_symtab_read): Initialize "newobj".
466
467 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
468
469         * dwarf2read.c (read_func_scope): Remove struct keyword in
470         range-based for.
471
472 2018-10-03  Tom Tromey  <tom@tromey.com>
473
474         * README: Mention --enable-ubsan.
475         * NEWS: Mention --enable-ubsan.
476         * acinclude.m4: Include sanitize.m4.
477         * configure: Rebuild.
478         * configure.ac: Call AM_GDB_UBSAN.
479         * sanitize.m4: New file.
480
481 2018-10-03  Tom Tromey  <tom@tromey.com>
482
483         * expression.h (enum exp_opcode): Use uint8_t as base type.
484         * expprint.c (op_name): Handle invalid opcodes.
485
486 2018-10-03  Tom Tromey  <tom@tromey.com>
487
488         * parse.c (prefixify_expression): Add assert.
489         (parse_exp_in_context_1): Throw exception if the expression is
490         empty.
491
492 2018-10-03  Tom Tromey  <tom@tromey.com>
493
494         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
495
496 2018-10-03  Tom Tromey  <tom@tromey.com>
497
498         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
499
500 2018-10-03  Tom Tromey  <tom@tromey.com>
501
502         * dwarf2read.c (read_subrange_type): Make "negative_mask"
503         unsigned.
504
505 2018-10-03  Tom Tromey  <tom@tromey.com>
506
507         * findvar.c (extract_integer): Do work in an unsigned type.
508
509 2018-10-03  Tom Tromey  <tom@tromey.com>
510
511         * common/enum-flags.h (enum_flags::operator~): Add static assert.
512         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
513         base type.
514         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
515         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
516         type.
517         * c-lang.h (enum c_string_type_values): Use unsigned as base
518         type.
519         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
520
521 2018-10-03  Tom Tromey  <tom@tromey.com>
522
523         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
524         <~dwarf2_frame_state_reg_info>: Update.
525         <dwarf2_frame_state_reg_info>: Update.
526         <alloc_regs>: Add assertion.  Update.
527         <reg>: Now a std::vector.
528         <num_regs>: Remove.
529         <swap>: Update.
530         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
531         (execute_cfa_program_test, dwarf2_frame_cache): Update.
532
533 2018-10-03  Tom Tromey  <tom@tromey.com>
534
535         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
536
537 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
538
539         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
540
541 2018-10-02  Tom Tromey  <tom@tromey.com>
542
543         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
544
545 2018-10-02  John Darrington <john@darrington.wattle.id.au>
546
547         * NEWS: Mention changed commands.
548         * ser-uds.c: New file.
549         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
550         * configure: Regenerate.
551         * Makefile.in: Add new file.
552         * serial.c (serial_open): Check if filename is a socket
553           and lookup the appropriate interface accordingly.
554
555 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
556
557         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
558         define.
559         (AARCH64_EXTRA_MAGIC): Likewise.
560         (AARCH64_FPSIMD_MAGIC): Likewise.
561         (AARCH64_SVE_MAGIC): Likewise.
562         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
563         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
564         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
565         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
566         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
567         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
568         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
569         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
570         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
571         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
572         (read_aarch64_ctx): Add function.
573         (aarch64_linux_sigframe_init): Detect FP registers.
574
575 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
576
577         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
578         (AARCH64_D0_REGNUM): Likewise.
579         (AARCH64_S0_REGNUM): Likewise.
580         (AARCH64_H0_REGNUM): Likewise.
581         (AARCH64_B0_REGNUM): Likewise.
582         (AARCH64_SVE_V0_REGNUM): Likewise.
583         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
584         (AARCH64_D0_REGNUM): Likewise.
585         (AARCH64_S0_REGNUM): Likewise.
586         (AARCH64_H0_REGNUM): Likewise.
587         (AARCH64_B0_REGNUM): Likewise.
588         (AARCH64_SVE_V0_REGNUM): Likewise.
589
590 2018-10-01  Gary Benson <gbenson@redhat.com>
591
592         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
593         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
594         prfpregset_t instead of gdb_prfpregset_t.
595         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
596         * configure, config.in: Rebuild.
597
598 2018-10-01  Gary Benson <gbenson@redhat.com>
599
600         * common/gdb_proc_service.h: New file, factored out from...
601         * gdb_proc_service.h: Moved common code to the above file.
602         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
603
604 2018-10-01  Gary Benson <gbenson@redhat.com>
605
606         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
607         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
608
609 2018-10-01  Gary Benson <gbenson@redhat.com>
610
611         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
612         (AC_CHECK_HEADERS): Check for linux/elf.h.
613         * configure, config.in: Rebuild.
614         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
615         doesn't define elf_fpregset_t.
616
617 2018-10-01  Gary Benson <gbenson@redhat.com>
618
619         * gdb_proc_service.h: Whitespace change.
620
621 2018-10-01  Tom Tromey  <tom@tromey.com>
622
623         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
624         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
625         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
626
627 2018-10-01  Tom Tromey  <tom@tromey.com>
628
629         * README: Minor change.
630
631 2018-09-30  Pedro Alves  <palves@redhat.com>
632
633         * darwin-nat-info.c (darwin_debug_regions_recurse)
634         (info_mach_exceptions_command): Remove unused local variables.
635         * darwin-nat.c (darwin_decode_notify_message)
636         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
637         (darwin_stop_inferior, darwin_setup_exceptions)
638         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
639         (darwin_nat_target::attach, darwin_nat_target::detach)
640         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
641         local variables.
642         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
643         variables.
644
645 2018-09-29  Tom Tromey  <tom@tromey.com>
646
647         * README: Remove some leftover text.
648
649 2018-09-29  Tom Tromey  <tom@tromey.com>
650
651         * PROBLEMS: Rewrite.
652         * README: Update.
653
654 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
655
656         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
657         case with explicit breakpoint kind.
658         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
659         'additional_info' and related logic.
660         (riscv_debug_breakpoints): New variable.
661         (riscv_breakpoint_kind_from_pc): Use the length of the existing
662         instruction to determine the breakpoint kind.
663         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
664         flag.  Update description of 'set/show riscv
665         use-compressed-breakpoints' flag.
666
667 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
668
669         (NEWS): Mention changes to frame related commands.
670         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
671         (add_prefix_cmd_suppress_notification): New function.
672         (add_com_suppress_notification): Call
673         add_cmd_suppress_notification.
674         * command.h (add_cmd_suppress_notification): Declare.
675         (add_prefix_cmd_suppress_notification): Declare.
676         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
677         (parse_frame_specification): Moved from stack.c, with
678         simplification to handle a single argument.
679         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
680         switch to the selected frame.  Add a header comment.
681         * stack.c: Remove 'safe-ctype.h' include.
682         (find_frame_for_function): Add declaration.
683         (find_frame_for_address): New function.
684         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
685         (frame_selection_by_function_completer): New function.
686         (info_frame_command): Rename to...
687         (info_frame_command_core): ...this, and update parameter types.
688         (select_frame_command): Rename to...
689         (select_frame_command_core): ...this, and update parameter types.
690         (frame_command): Rename to...
691         (frame_command_core): ...this, and update parameter types.
692         (class frame_command_helper): New class to wrap implementations of
693         frame related sub-commands.
694         (frame_apply_cmd_list): New static global.
695         (frame_cmd_list): Make static.
696         (select_frame_cmd_list): New global for sub-commands.
697         (info_frame_cmd_list): New global for sub-commands.
698         (_initialize_stack): Register sub-commands for 'frame',
699         'select-frame', and 'info frame'.  Update 'frame apply' commands
700         to use frame_apply_cmd_list.  Move function local static
701         frame_apply_list to file static frame_apply_cmd_list for
702         consistency.
703         * stack.h (select_frame_command): Delete declarationn.
704         (select_frame_for_mi): Declare new function.
705
706 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
707
708         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
709         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
710         and NOP.
711
712 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
713
714         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
715
716 2018-09-26  Tom Tromey  <tom@tromey.com>
717
718         * valops.c (auto_abandon): Remove dead code.
719
720 2018-09-26  Tom Tromey  <tom@tromey.com>
721
722         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
723
724 2018-09-24  Tom Tromey  <tom@tromey.com>
725
726         * common/pathstuff.c (get_standard_cache_dir): Make
727         "xdg_cache_home" and "home" const.
728         * top.c (init_history): Make "tmpenv" const.
729         * main.c (get_init_files): Make "homedir" const.
730
731 2018-09-23  Tom Tromey  <tom@tromey.com>
732
733         PR python/18852:
734         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
735
736 2018-09-23  Tom Tromey  <tom@tromey.com>
737
738         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
739         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
740         * python/python-internal.h (gdbpy_handle_exception): Declare.
741         * python/py-utils.c (gdbpy_handle_exception): New function.
742
743 2018-09-23  Tom Tromey  <tom@tromey.com>
744
745         PR python/17284:
746         * python/py-type.c (typy_template_argument): Check for negative
747         argument number.
748
749 2018-09-23  Tom Tromey  <tom@tromey.com>
750
751         PR python/14062:
752         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
753
754 2018-09-23  Tom Tromey  <tom@tromey.com>
755
756         PR python/18170:
757         * python/py-value.c (valpy_int): Allow conversion from pointer
758         type.
759
760 2018-09-23  Tom Tromey  <tom@tromey.com>
761
762         PR python/20126:
763         * python/py-value.c (valpy_int): Respect type sign.
764
765 2018-09-23  Tom Tromey  <tom@tromey.com>
766
767         PR python/18352;
768         * python/py-value.c (valpy_float): Allow conversions from int or
769         char.
770         (valpy_int, valpy_long): Allow conversions from float.
771
772 2018-09-23  Tom Tromey  <tom@tromey.com>
773
774         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
775         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
776
777 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
778
779         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
780         __sighndlr.
781         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
782
783 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
784
785         * windows-nat.c (windows_nat_target::wait): Remove a spurious
786         target_terminal::ours().
787
788 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
789
790         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
791         of vl to ULONGEST.
792
793 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
794
795         * breakpoint.c (update_inserted_breakpoint_locations): Remove
796         redundant condition.
797
798 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
799
800         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
801
802         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
803         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
804         * sol-thread.c (ps_pdmodel): Don't guard definition.
805
806         * procfs.c: Fix formatting.
807
808         * procfs.c (sysset_t_alloc): Remove.
809         (create_procinfo): Use XNEW instead of sysset_t_alloc.
810         (procfs_debug_inferior): Likewise.
811         (procfs_set_exec_trap): Likewise.
812         (proc_set_traced_sysentry): Don't allocate argp dynamically.
813         (proc_set_traced_sysexit): Likewise.
814
815         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
816         (dead_procinfo): Likewise.
817         (proc_warn): Likewise.
818         (proc_error): Likewise.
819         (proc_get_LDT_entry): Likewise.
820         (do_attach): Likewise.
821         (procfs_target::pid_to_str): Likewise.
822         (iterate_over_mappings): Likewise.
823
824         * procfs.c (create_procinfo): Fix ARI warning.
825         (proc_get_status): Likewise.
826         (proc_stop_process): Likewise.
827         (proc_run_process): Likewise.
828         (proc_kill): Likewise.
829         (proc_get_LDT_entry): Likewise.
830         (procfs_find_LDT_entry): Likewise.
831         (proc_update_threads): Likewise.
832         (proc_iterate_over_threads): Likewise.
833         (do_attach): Likewise.
834         (procfs_xfer_memory): Likewise.
835         (invalidate_cache): Likewise.
836         (procfs_target::resume): Likewise.
837         (procfs_init_inferior): Likewise.
838         (procfs_set_exec_trap): Likewise.
839         (procfs_target::thread_alive): Likewise.
840         (procfs_target::pid_to_exec_file): Likewise.
841         (iterate_over_mappings): Likewise.
842         (procfs_target::make_corefile_notes): Likewise.
843         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
844
845         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
846         (procfs_find_LDT_entry): Likewise.
847         * sol-thread.c (ps_lgetLDT): Likewise.
848
849 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
850
851         PR tdep/17903
852         * procfs.c (procfs_target): Declare pid_to_exec_file.
853         (procfs_target::pid_to_exec_file): New.
854
855 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
856
857         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
858         renaming.
859         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
860         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
861
862 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
863
864         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
865         (supply_fpregset, fill_fpregset): Move ...
866         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
867         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
868         Remove references to ioctl-based procfs.
869         Include <sys/reg.h>.
870         Remove PR_MODEL_NATIVE guards.
871         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
872         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
873
874 2018-09-19  Xavier Roirand  <roirand@adacore.com>
875
876         PR gdb/20981:
877         * solib-darwin.c (darwin_get_dyld_bfd): New function.
878         (darwin_solib_get_all_image_info_addr_at_init): Update call.
879         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
880
881 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
882
883         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
884         (fbsd_print_sockaddr_in6): Likewise.
885
886 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
887             Chris January  <chris.january@arm.com>
888
889         * eval.c (skip_undetermined_arglist): Skip argument list helper.
890         (evaluate_subexp_standard): Return a dummy type when
891         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
892         OP_F77_UNDETERMINED_ARGLIST case.
893         * expression.h (enum noside): Update comment.
894
895 2018-09-19  George Vasick <george.vasick@oracle.com>
896
897         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
898
899 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
900             April Chin <april.chin@oracle.com>
901             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
902
903         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
904         uint_t lwpid_t.
905         (create_procinfo): Print pids in /proc without leading zeros.
906
907 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
908
909         * nios2-tdep.c (nios2_gcc_target_options): New.
910         (nios2_gdb_arch_init): Install new hook.
911
912 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
913
914         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
915         New file.
916         * update-gnulib.sh: Apply patch.
917         * configure: Re-generate.
918
919 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
920
921         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
922         description.  Make "info proc" command descriptions more
923         consistent.
924
925 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
926
927         * NEWS: Mention 'info proc files' command.
928
929 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
930
931         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
932         descriptors for IP_FILES and IP_ALL.
933
934 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
935
936         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
937         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
938         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
939         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
940         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
941         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
942         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
943         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
944         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
945         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
946         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
947         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
948         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
949         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
950         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
951         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
952         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
953         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
954         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
955         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
956         (struct fbsd_sockaddr_un): New types.
957         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
958         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
959         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
960         (fbsd_core_info_proc_files): New functions.
961         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
962         IP_ALL.
963         * fbsd-tdep.h (fbsd_info_proc_files_header)
964         (fbsd_info_proc_files_entry): New.
965
966 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
967
968         * defs.h (enum info_proc_what) [IP_FILES]: New value.
969         * infcmd.c (info_proc_cmd_files): New function.
970         (_initialize_infcmd): Register 'info proc files' command.
971
972 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
973
974         * gnulib/aclocal-m4-deps.mk: Re-generate.
975         * gnulib/aclocal.m4: Re-generate.
976         * gnulib/config.in: Re-generate.
977         * gnulib/configure: Re-generate.
978         * gnulib/import/Makefile.am: Re-generate.
979         * gnulib/import/Makefile.in: Re-generate.
980         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
981         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
982         * gnulib/import/arpa_inet.in.h: New file.
983         * gnulib/import/inet_ntop.c: New file.
984         * gnulib/import/m4/arpa_inet_h.m4: New file.
985         * gnulib/import/m4/inet_ntop.m4: New file.
986         * gnulib/import/m4/netinet_in_h.m4: New file.
987         * gnulib/import/m4/socklen.m4: New file.
988         * gnulib/import/m4/sockpfaf.m4: New file.
989         * gnulib/import/m4/stdalign.m4: New file.
990         * gnulib/import/m4/sys_uio_h.m4: New file.
991         * gnulib/import/netinet_in.in.h: New file.
992         * gnulib/import/stdalign.in.h: New file.
993         * gnulib/import/sys_socket.c: New file.
994         * gnulib/import/sys_socket.in.h: New file.
995         * gnulib/import/sys_uio.in.h: New file.
996         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
997         module.
998
999 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1000
1001         * gnulib/aclocal-m4-deps.mk: New file.
1002         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
1003         deterministically.
1004
1005 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1006
1007         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
1008         KVE_PATH.
1009
1010 2018-09-18  Tom Tromey  <tom@tromey.com>
1011
1012         * compile/compile-object-load.c (struct
1013         link_hash_table_cleanup_data): Add constructor and destructor.
1014         Use DISABLE_COPY_AND_ASSIGN.
1015         (~link_hash_table_cleanup_data): Rename from
1016         link_hash_table_free.  Now a destructor.
1017         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
1018
1019 2018-09-18  Tom Tromey  <tom@tromey.com>
1020
1021         * compile/compile-object-run.c (do_module_cleanup): Use delete.
1022         * compile/compile-object-load.c (struct munmap_list): Move to
1023         header file.
1024         (munmap_list::add): Rename from munmap_list_add; rewrite.
1025         (munmap_list::~munmap_list): Rename from munmap_list_free.
1026         (munmap_listp_free_cleanup): Remove.
1027         (compile_object_load): Update.
1028         * compile/compile-object-load.h (struct munmap_list): Move from
1029         compile-object-load.c.  Rewrite.
1030
1031 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
1032
1033         * aarch64-tdep.c (pass_in_v): Use register size.
1034         (aarch64_extract_return_value): Likewise.
1035         (aarch64_store_return_value): Likewise.
1036
1037 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1038
1039         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
1040         rlim_t.
1041
1042 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1043
1044         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
1045         Fix short help line.
1046
1047 2018-09-17  Tom Tromey  <tom@tromey.com>
1048
1049         PR python/20445:
1050         * configure: Rebuild.
1051         * configure.ac: Conditionally use -DNDEBUG for Python.
1052
1053 2018-09-17  Tom Tromey  <tom@tromey.com>
1054
1055         * configure: Rebuild.
1056         * configure.ac: Use gmp as a library dependency when checking for
1057         mpfr.
1058
1059 2018-09-17  Pedro Alves  <palves@redhat.com>
1060
1061         * python/py-inferior.c (find_inferior_object): Delete.
1062
1063 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
1064
1065         * compile/compile-cplus-types.c
1066         (compile_cplus_instance::enter_scope): Don't use new_scope after
1067         std::move.
1068
1069 2018-09-17  Tom Tromey  <tom@tromey.com>
1070
1071         * common/pathstuff.c (get_standard_cache_dir): Use
1072         ~/Library/Caches on macOS.
1073         * common/pathstuff.h (get_standard_cache_dir): Update comment.
1074
1075 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
1076
1077         PR python/23669
1078         * breakpoint.c (commands_cmd_element): New.
1079         (_initialize_breakpoint): Assign commands_cmd_element.
1080         * breakpoint.h (commands_cmd_element): New.
1081         * cli/cli-script.c (while_cmd_element, if_command,
1082         define_cmd_element): New.
1083         (command_name_equals): Remove.
1084         (process_next_line): Compare commands by pointer, not by name.
1085         (_initialize_cli_script): Assign the various cmd_list_element
1086         variables.
1087         * compile/compile.c (compile_cmd_element): New.
1088         (_initialize_compile): Assign compile_cmd_element.
1089         * compile/compile.h (compile_cmd_element): New.
1090         * guile/guile.c (guile_cmd_element): New.
1091         (install_gdb_commands): Assign guile_cmd_element.
1092         * guile/guile.h (guile_cmd_element): New.
1093         * python/python.c (python_cmd_element): New.
1094         (_initialize_python): Assign python_cmd_element.
1095         * python/python.h (python_cmd_element): New.
1096         * tracepoint.c (while_stepping_cmd_element): New.
1097         (_initialize_tracepoint): Assign while_stepping_cmd_element.
1098         * tracepoint.h (while_stepping_cmd_element): New.
1099
1100 2018-09-17  Tom Tromey  <tom@tromey.com>
1101
1102         * infrun.c (save_infcall_suspend_state): Return
1103         infcall_suspend_state_up.
1104         (save_infcall_control_state): Return infcall_control_state_up.
1105         * inferior.h (save_infcall_suspend_state)
1106         (save_infcall_control_state): Declare later.  Return unique
1107         pointers.
1108
1109 2018-09-17  Tom Tromey  <tom@tromey.com>
1110
1111         * infrun.c (struct stop_context): Declare constructor,
1112         destructor, "changed" method.
1113         (stop_context::stop_context): Rename from save_stop_context.
1114         (stop_context::~stop_context): Rename from
1115         release_stop_context_cleanup.
1116         (normal_stop): Update.
1117         (stop_context::changed): Rename from stop_context_changed.  Return
1118         bool.
1119
1120 2018-09-17  Tom Tromey  <tom@tromey.com>
1121
1122         * inferior.h (struct infcall_suspend_state_deleter): New.
1123         (infcall_suspend_state_up): New typedef.
1124         (struct infcall_control_state_deleter): New.
1125         (infcall_control_state_up): New typedef.
1126         (make_cleanup_restore_infcall_suspend_state)
1127         (make_cleanup_restore_infcall_control_state): Don't declare.
1128         * infcall.c (call_function_by_hand_dummy): Update.
1129         * infrun.c (do_restore_infcall_suspend_state_cleanup)
1130         (make_cleanup_restore_infcall_suspend_state): Remove.
1131         (do_restore_infcall_control_state_cleanup)
1132         (make_cleanup_restore_infcall_control_state): Remove.
1133
1134 2018-09-17  Tom Tromey  <tom@tromey.com>
1135
1136         * gdbthread.h (struct thread_control_state): Add initializer.
1137         (class thread_info) <control>: Remove initializer.
1138         * inferior.h (struct inferior_control_state): Add initializer.
1139         (class inferior) <control>: Remove initializer.
1140         (exit_inferior_1): Update.
1141         * infrun.c (struct infcall_control_state): Add constructors.
1142         (save_infcall_control_state): Use new.
1143         (restore_infcall_control_state, discard_infcall_control_state):
1144         Use delete.
1145
1146 2018-09-17  Tom Tromey  <tom@tromey.com>
1147
1148         * infrun.c (struct infcall_suspend_state) <registers>: Now a
1149         unique_ptr.
1150         <siginfo_data>: Now a unique_xmalloc_ptr.
1151         (save_infcall_suspend_state, restore_infcall_suspend_state)
1152         (discard_infcall_suspend_state)
1153         (get_infcall_suspend_state_regcache): Update.
1154
1155 2018-09-17  Tom Tromey  <tom@tromey.com>
1156
1157         * gdbthread.h (struct thread_suspend_state): Add initializers.
1158         (class thread_info) <suspend>: Remove initializer.
1159         * infrun.c (struct infcall_suspend_state): Add initializers.
1160         (save_infcall_suspend_state): Use new.
1161         (discard_infcall_suspend_state): Use delete.
1162
1163 2018-09-16  Tom Tromey  <tom@tromey.com>
1164
1165         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
1166         Remove.
1167         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
1168         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
1169         (py_varobj_iter_new): Likewise.
1170         (py_varobj_get_iterator): Use gdbpy_ref.
1171
1172 2018-09-16  Tom Tromey  <tom@tromey.com>
1173
1174         * python/py-threadevent.c (py_get_event_thread): Simplify.
1175         * python/py-inferior.c (infpy_thread_from_thread_handle):
1176         Return immediately after calling thread_to_thread_object.  Use
1177         Py_RETURN_NONE.
1178         (thread_to_thread_object): Set the exception on a NULL return.
1179
1180 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
1181
1182         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
1183
1184 2018-09-16  Tom Tromey  <tom@tromey.com>
1185
1186         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
1187         Remove.
1188
1189 2018-09-16  Tom Tromey  <tom@tromey.com>
1190
1191         * python/python-internal.h (thread_to_thread_object): Change
1192         return type.
1193         * python/py-inferior.c (thread_to_thread_object): Return a new
1194         reference.
1195         (infpy_thread_from_thread_handle): Update.
1196         * python/py-infthread.c (gdbpy_selected_thread): Update.
1197         * python/py-stopevent.c (create_stop_event_object): Update.
1198         * python/py-threadevent.c (py_get_event_thread): Return a new
1199         reference.
1200         (py_get_event_thread): Update.
1201         * python/py-event.h (py_get_event_thread): Change return type.
1202         * python/py-continueevent.c (create_continue_event_object):
1203         Update.
1204
1205 2018-09-16  Tom Tromey  <tom@tromey.com>
1206
1207         * python/py-progspace.c (pspy_get_objfiles): Update.
1208         * python/python-internal.h (objfile_to_objfile_object): Change
1209         return type.
1210         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1211         Update.
1212         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1213         Update.
1214         * python/python.c (gdbpy_get_current_objfile): Update.
1215         (gdbpy_objfiles): Update.
1216         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
1217         Update.
1218         (objfile_to_objfile_object): Return a new reference.
1219         * python/py-symtab.c (stpy_get_objfile): Update.
1220         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
1221         Update.
1222
1223 2018-09-16  Tom Tromey  <tom@tromey.com>
1224
1225         * python/py-inferior.c (infpy_get_progspace): Update.
1226         * python/python-internal.h (pspace_to_pspace_object): Change
1227         return type.
1228         * python/py-newobjfileevent.c
1229         (create_clear_objfiles_event_object): Update.
1230         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1231         Update.
1232         * python/python.c (gdbpy_get_current_progspace): Update.
1233         (gdbpy_progspaces): Update.
1234         * python/py-progspace.c (pspace_to_pspace_object): Return a new
1235         reference.
1236         * python/py-objfile.c (objfpy_get_progspace): Update.
1237         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
1238         Update.
1239
1240 2018-09-16  Tom Tromey  <tom@tromey.com>
1241
1242         * python/lib/gdb/__init__.py (current_progspace, objfiles)
1243         (solib_name, block_for_pc, find_pc_line): New functions.
1244         (execute_unwinders): Update.
1245         * python/py-block.c (gdbpy_block_for_pc): Remove.
1246         * python/py-inferior.c (infpy_get_progspace): New function.
1247         (inferior_object_getset) <progspace>: Add.
1248         * python/py-progspace.c (pspy_objfiles): Rewrite.
1249         (pspy_solib_name, pspy_block_for_pc)
1250         (pspy_find_pc_line, pspy_is_valid): New functions.
1251         (progspace_object_methods): Add entries for solib_name,
1252         block_for_pc, find_pc_line, is_valid.
1253         * python/python-internal.h (gdbpy_block_for_pc)
1254         (build_objfiles_list): Don't declare.
1255         * python/python.c: Don't include solib.h.
1256         (gdbpy_solib_name, gdbpy_find_pc_line)
1257         (gdbpy_get_current_progspace, build_objfiles_list)
1258         (gdbpy_objfiles): Remove.
1259         (GdbMethods) <current_progspace, objfiles, block_for_pc,
1260         solib_name, find_pc_line>: Remove entries.
1261
1262 2018-09-16  Tom Tromey  <tom@tromey.com>
1263
1264         * top.c (new_ui_command): Use GNU style for metasyntactic
1265         variables.
1266         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
1267         variables.
1268         * maint.c (maintenance_translate_address): Remove "<>" around
1269         text.
1270         * interps.c (interpreter_exec_cmd): Use GNU style for
1271         metasyntactic variables.
1272         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
1273         metasyntactic variables.
1274         * tracepoint.c (tfind_range_command): Use GNU style for
1275         metasyntactic variables.
1276         (tfind_outside_command): Likewise.
1277         (_initialize_tracepoint): Likewise.
1278         * remote.c (extended_remote_target::create_inferior): Use GNU
1279         style for metasyntactic variables.
1280         * sparc64-tdep.c (adi_examine_command): Use GNU style for
1281         metasyntactic variables.
1282         (adi_assign_command): Likewise.
1283
1284 2018-09-16  Tom Tromey  <tom@tromey.com>
1285
1286         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
1287         metasyntactic variables.  Print message if no disassembler options
1288         are available.
1289
1290 2018-09-15  Tom Tromey  <tom@tromey.com>
1291
1292         * infcmd.c (get_inferior_args): Return const char *.
1293         * inferior.h (get_inferior_args): Return type now const.
1294         * linux-tdep.c (linux_fill_prpsinfo): Update.
1295         * procfs.c (procfs_target::make_corefile_notes): Update.
1296
1297 2018-09-07  Tom Tromey  <tom@tromey.com>
1298
1299         * python/python.c (execute_gdb_command): Call bpstat_do_actions
1300         inside the TRY.
1301
1302 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
1303
1304         * nios2-tdep.c (nios2_type_align): New.
1305         (nios2_gdb_arch_init): Install type_align hook.
1306
1307 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
1308
1309         * eval.c (fake_method::fake_method): Call xzalloc directly for a
1310         type that is neither object file owned, nor gdbarch owned.
1311         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
1312         gdbarch is non-NULL.
1313         (alloc_type_instance): Allocate non-objfile owned types on the
1314         gdbarch obstack.
1315         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
1316         using TYPE_ALLOC to ensure memory is allocated on the correct
1317         obstack.
1318         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
1319         obstack, or the gdbarch obstack.
1320         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
1321
1322 2018-09-14  Tom Tromey  <tom@tromey.com>
1323
1324         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
1325         block.
1326
1327 2018-09-14  Tom Tromey  <tom@tromey.com>
1328
1329         * nat/fork-inferior.c (get_startup_shell): Remove "static".
1330
1331 2018-09-13  Tom Tromey  <tom@tromey.com>
1332
1333         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
1334         static.
1335
1336 2018-09-13  Tom Tromey  <tom@tromey.com>
1337
1338         * exec.c (try_open_exec_file): Use std::string.
1339
1340 2018-09-13  Tom Tromey  <tom@tromey.com>
1341
1342         * utils.h (gdb_bfd_errmsg): Return std::string.
1343         * exec.c (exec_file_attach): Update.
1344         * compile/compile-object-load.c (compile_object_load): Update.
1345         * utils.c (gdb_bfd_errmsg): Return std::string.
1346
1347 2018-09-13  Tom Tromey  <tom@tromey.com>
1348
1349         * procfs.c (struct procinfo_deleter): New.
1350         (procinfo_up): New typedef.
1351         (do_destroy_procinfo_cleanup): Remove.
1352         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
1353
1354 2018-09-13  Tom Tromey  <tom@tromey.com>
1355
1356         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
1357
1358 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1359 2018-09-13  Tom Tromey  <tom@tromey.com>
1360
1361         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
1362         (pspy_get_objfiles): New function.
1363         (progspace_object_methods): New.
1364         (pspace_object_type): Add tp_methods callback.
1365         * python/python-internal.h (build_objfiles_list): New
1366         declaration.
1367         * python/python.c (build_objfiles_list): New function.
1368         (gdbpy_objfiles): Implement using build_objfiles_list.
1369         * NEWS: Mention the Progspace.objfiles method.
1370
1371 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1372
1373         * python/py-inferior.c (infpy_get_progspace): New function.
1374         (inferior_object_getset): Add progspace property.
1375         * NEWS: Mention the new property.
1376
1377 2018-09-13  Tom Tromey  <tom@tromey.com>
1378
1379         PR rust/23650:
1380         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
1381
1382 2018-09-13  Tom Tromey  <tom@tromey.com>
1383
1384         PR rust/23626:
1385         * rust-lang.c (rust_enum_variant): Now static.
1386         (rust_empty_enum_p): New function.
1387         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
1388         Handle empty enum.
1389
1390 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1391
1392         * python/py-inferior.c (infpy_repr): New.
1393         (inferior_object_type): Register infpy_repr.
1394         * python/py-objfile.c (objfpy_repr): New.
1395         (objfile_object_type): Register objfpy_repr.
1396
1397 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1398
1399         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
1400
1401 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1402
1403         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
1404         typo.
1405
1406 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
1407
1408         * common/common-utils.c: Don't include '<sys/stat.h>'.
1409         (is_regular_file): Move to...
1410         * common/filestuff.c (is_regular_file): ... here.
1411         * common/common-utils.h (is_regular_file): Move to...
1412         * common/filestuff.h (is_regular_file): ... here.
1413
1414 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
1415
1416         * skip.c (debug_skip): New variable.
1417         (skiplist_entry::do_skip_file_p): Add debug output.
1418         (skiplist_entry::do_skip_gfile_p): Likewise.
1419         (skiplist_entry::skip_function_p): Likewise.
1420         (_initialize_step_skip): Create debug command.
1421         * NEWS: Mention set/show debug skip.
1422
1423 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1424
1425         * darwin-nat.c (should_disable_startup_with_shell):
1426         New function.
1427         (darwin_nat_target::create_inferior): Add call.
1428
1429 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1430
1431         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
1432         inf_port, msg_state>: Initialize.
1433         (struct darwin_thread_info) <signaled, single_step>: Change
1434         type and initialize.
1435         (struct darwin_thread_info) <event>: Initialize.
1436
1437 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1438
1439         PR gdb/23555
1440         PR gdb/23558
1441         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
1442         guesses.
1443
1444 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1445
1446         Revert:
1447         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1448
1449         PR gdb/23555
1450         PR gdb/23558
1451         * gnulib/aclocal.m4: Regenerate.
1452         * gnulib/config.in: Regenerate.
1453         * gnulib/configure: Regenerate.
1454         * gnulib/import/Makefile.am: Update.
1455         * gnulib/import/Makefile.in: Update.
1456         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
1457         * gnulib/import/_Noreturn.h: ... this.
1458         * gnulib/import/alloca.in.h: Update.
1459         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
1460         * gnulib/import/arg-nonnull.h: ... this.
1461         * gnulib/import/assure.h: Update.
1462         * gnulib/import/at-func.c: Update.
1463         * gnulib/import/basename-lgpl.c: Update.
1464         * gnulib/import/extra/snippet/c++defs.h: Rename to...
1465         * gnulib/import/c++defs.h: ... this.
1466         * gnulib/import/canonicalize-lgpl.c: Update.
1467         * gnulib/import/cdefs.h: Update.
1468         * gnulib/import/chdir-long.c: Update.
1469         * gnulib/import/chdir-long.h: Update.
1470         * gnulib/import/cloexec.c: Update.
1471         * gnulib/import/cloexec.h: Update.
1472         * gnulib/import/close.c: Update.
1473         * gnulib/import/closedir.c: Update.
1474         * gnulib/import/config.charset: Update.
1475         * gnulib/import/dirent-private.h: Update.
1476         * gnulib/import/dirent.in.h: Update.
1477         * gnulib/import/dirfd.c: Update.
1478         * gnulib/import/dirname-lgpl.c: Update.
1479         * gnulib/import/dirname.h: Update.
1480         * gnulib/import/dosname.h: Update.
1481         * gnulib/import/dup-safer-flag.c: Update.
1482         * gnulib/import/dup-safer.c: Update.
1483         * gnulib/import/dup.c: Update.
1484         * gnulib/import/dup2.c: Update.
1485         * gnulib/import/errno.in.h: Update.
1486         * gnulib/import/error.c: Update.
1487         * gnulib/import/error.h: Update.
1488         * gnulib/import/exitfail.c: Update.
1489         * gnulib/import/exitfail.h: Update.
1490         * gnulib/import/extra/update-copyright: Update.
1491         * gnulib/import/fchdir.c: Update.
1492         * gnulib/import/fcntl.c: Update.
1493         * gnulib/import/fcntl.in.h: Update.
1494         * gnulib/import/fd-hook.c: Update.
1495         * gnulib/import/fd-hook.h: Update.
1496         * gnulib/import/fd-safer-flag.c: Update.
1497         * gnulib/import/fd-safer.c: Update.
1498         * gnulib/import/fdopendir.c: Update.
1499         * gnulib/import/filename.h: Update.
1500         * gnulib/import/filenamecat-lgpl.c: Update.
1501         * gnulib/import/filenamecat.h: Update.
1502         * gnulib/import/flexmember.h: Update.
1503         * gnulib/import/float+.h: Update.
1504         * gnulib/import/float.c: Update.
1505         * gnulib/import/float.in.h: Update.
1506         * gnulib/import/fnmatch.c: Update.
1507         * gnulib/import/fnmatch.in.h: Update.
1508         * gnulib/import/fnmatch_loop.c: Update.
1509         * gnulib/import/fpucw.h: Update.
1510         * gnulib/import/frexp.c: Update.
1511         * gnulib/import/frexpl.c: Update.
1512         * gnulib/import/fstat.c: Update.
1513         * gnulib/import/fstatat.c: Update.
1514         * gnulib/import/getcwd-lgpl.c: Update.
1515         * gnulib/import/getcwd.c: Update.
1516         * gnulib/import/getdtablesize.c: Update.
1517         * gnulib/import/getlogin_r.c: Update.
1518         * gnulib/import/getprogname.c: Update.
1519         * gnulib/import/getprogname.h: Update.
1520         * gnulib/import/gettext.h: Update.
1521         * gnulib/import/gettimeofday.c: Update.
1522         * gnulib/import/glob-libc.h: Update.
1523         * gnulib/import/glob.c: Update.
1524         * gnulib/import/glob.in.h: Update.
1525         * gnulib/import/glob_internal.h: Update.
1526         * gnulib/import/glob_pattern_p.c: Update.
1527         * gnulib/import/globfree.c: Update.
1528         * gnulib/import/hard-locale.c: Update.
1529         * gnulib/import/hard-locale.h: Update.
1530         * gnulib/import/intprops.h: Update.
1531         * gnulib/import/inttypes.in.h: Update.
1532         * gnulib/import/isnan.c: Update.
1533         * gnulib/import/isnand-nolibm.h: Update.
1534         * gnulib/import/isnand.c: Update.
1535         * gnulib/import/isnanl-nolibm.h: Update.
1536         * gnulib/import/isnanl.c: Update.
1537         * gnulib/import/itold.c: Update.
1538         * gnulib/import/libc-config.h: Update.
1539         * gnulib/import/limits.in.h: Update.
1540         * gnulib/import/localcharset.c: Update.
1541         * gnulib/import/localcharset.h: Update.
1542         * gnulib/import/localtime-buffer.c: Update.
1543         * gnulib/import/localtime-buffer.h: Update.
1544         * gnulib/import/lstat.c: Update.
1545         * gnulib/import/m4/00gnulib.m4: Update.
1546         * gnulib/import/m4/__inline.m4: Update.
1547         * gnulib/import/m4/absolute-header.m4: Update.
1548         * gnulib/import/m4/alloca.m4: Update.
1549         * gnulib/import/m4/builtin-expect.m4: Update.
1550         * gnulib/import/m4/canonicalize.m4: Update.
1551         * gnulib/import/m4/chdir-long.m4: Update.
1552         * gnulib/import/m4/close.m4: Update.
1553         * gnulib/import/m4/closedir.m4: Update.
1554         * gnulib/import/m4/configmake.m4: Update.
1555         * gnulib/import/m4/d-ino.m4: Update.
1556         * gnulib/import/m4/d-type.m4: Update.
1557         * gnulib/import/m4/dirent_h.m4: Update.
1558         * gnulib/import/m4/dirfd.m4: Update.
1559         * gnulib/import/m4/dirname.m4: Update.
1560         * gnulib/import/m4/double-slash-root.m4: Update.
1561         * gnulib/import/m4/dup.m4: Update.
1562         * gnulib/import/m4/dup2.m4: Update.
1563         * gnulib/import/m4/eealloc.m4: Update.
1564         * gnulib/import/m4/environ.m4: Update.
1565         * gnulib/import/m4/errno_h.m4: Update.
1566         * gnulib/import/m4/error.m4: Update.
1567         * gnulib/import/m4/exponentd.m4: Update.
1568         * gnulib/import/m4/exponentl.m4: Update.
1569         * gnulib/import/m4/extensions.m4: Update.
1570         * gnulib/import/m4/extern-inline.m4: Update.
1571         * gnulib/import/m4/fchdir.m4: Update.
1572         * gnulib/import/m4/fcntl-o.m4: Update.
1573         * gnulib/import/m4/fcntl.m4: Update.
1574         * gnulib/import/m4/fcntl_h.m4: Update.
1575         * gnulib/import/m4/fdopendir.m4: Update.
1576         * gnulib/import/m4/filenamecat.m4: Update.
1577         * gnulib/import/m4/flexmember.m4: Update.
1578         * gnulib/import/m4/float_h.m4: Update.
1579         * gnulib/import/m4/fnmatch.m4: Update.
1580         * gnulib/import/m4/fnmatch_h.m4: Update.
1581         * gnulib/import/m4/fpieee.m4: Update.
1582         * gnulib/import/m4/frexp.m4: Update.
1583         * gnulib/import/m4/frexpl.m4: Update.
1584         * gnulib/import/m4/fstat.m4: Update.
1585         * gnulib/import/m4/fstatat.m4: Update.
1586         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
1587         * gnulib/import/m4/getcwd-path-max.m4: Update.
1588         * gnulib/import/m4/getcwd.m4: Update.
1589         * gnulib/import/m4/getdtablesize.m4: Update.
1590         * gnulib/import/m4/getlogin.m4: Update.
1591         * gnulib/import/m4/getlogin_r.m4: Update.
1592         * gnulib/import/m4/getpagesize.m4: Update.
1593         * gnulib/import/m4/getprogname.m4: Update.
1594         * gnulib/import/m4/gettimeofday.m4: Update.
1595         * gnulib/import/m4/glibc21.m4: Update.
1596         * gnulib/import/m4/glob.m4: Update.
1597         * gnulib/import/m4/glob_h.m4: Update.
1598         * gnulib/import/m4/gnulib-cache.m4: Update.
1599         * gnulib/import/m4/gnulib-common.m4: Update.
1600         * gnulib/import/m4/gnulib-comp.m4: Update.
1601         * gnulib/import/m4/gnulib-tool.m4: Update.
1602         * gnulib/import/m4/hard-locale.m4: Update.
1603         * gnulib/import/m4/include_next.m4: Update.
1604         * gnulib/import/m4/inttypes-pri.m4: Update.
1605         * gnulib/import/m4/inttypes.m4: Update.
1606         * gnulib/import/m4/isnand.m4: Update.
1607         * gnulib/import/m4/isnanl.m4: Update.
1608         * gnulib/import/m4/largefile.m4: Update.
1609         * gnulib/import/m4/limits-h.m4: Update.
1610         * gnulib/import/m4/localcharset.m4: Update.
1611         * gnulib/import/m4/locale-fr.m4: Update.
1612         * gnulib/import/m4/locale-ja.m4: Update.
1613         * gnulib/import/m4/locale-zh.m4: Update.
1614         * gnulib/import/m4/localtime-buffer.m4: Update.
1615         * gnulib/import/m4/longlong.m4: Update.
1616         * gnulib/import/m4/lstat.m4: Update.
1617         * gnulib/import/m4/malloc.m4: Update.
1618         * gnulib/import/m4/malloca.m4: Update.
1619         * gnulib/import/m4/math_h.m4: Update.
1620         * gnulib/import/m4/mbrtowc.m4: Update.
1621         * gnulib/import/m4/mbsinit.m4: Update.
1622         * gnulib/import/m4/mbsrtowcs.m4: Update.
1623         * gnulib/import/m4/mbstate_t.m4: Update.
1624         * gnulib/import/m4/memchr.m4: Update.
1625         * gnulib/import/m4/memmem.m4: Update.
1626         * gnulib/import/m4/mempcpy.m4: Update.
1627         * gnulib/import/m4/memrchr.m4: Update.
1628         * gnulib/import/m4/mkdir.m4: Update.
1629         * gnulib/import/m4/mkstemp.m4: Update.
1630         * gnulib/import/m4/mmap-anon.m4: Update.
1631         * gnulib/import/m4/mode_t.m4: Update.
1632         * gnulib/import/m4/msvc-inval.m4: Update.
1633         * gnulib/import/m4/msvc-nothrow.m4: Update.
1634         * gnulib/import/m4/multiarch.m4: Update.
1635         * gnulib/import/m4/nocrash.m4: Update.
1636         * gnulib/import/m4/off_t.m4: Update.
1637         * gnulib/import/m4/onceonly.m4: Update.
1638         * gnulib/import/m4/open-cloexec.m4: Update.
1639         * gnulib/import/m4/open.m4: Update.
1640         * gnulib/import/m4/openat.m4: Update.
1641         * gnulib/import/m4/opendir.m4: Update.
1642         * gnulib/import/m4/pathmax.m4: Update.
1643         * gnulib/import/m4/rawmemchr.m4: Update.
1644         * gnulib/import/m4/readdir.m4: Update.
1645         * gnulib/import/m4/readlink.m4: Update.
1646         * gnulib/import/m4/realloc.m4: Update.
1647         * gnulib/import/m4/rename.m4: Update.
1648         * gnulib/import/m4/rewinddir.m4: Update.
1649         * gnulib/import/m4/rmdir.m4: Update.
1650         * gnulib/import/m4/save-cwd.m4: Update.
1651         * gnulib/import/m4/secure_getenv.m4: Update.
1652         * gnulib/import/m4/setenv.m4: Update.
1653         * gnulib/import/m4/signal_h.m4: Update.
1654         * gnulib/import/m4/ssize_t.m4: Update.
1655         * gnulib/import/m4/stat-time.m4: Update.
1656         * gnulib/import/m4/stat.m4: Update.
1657         * gnulib/import/m4/std-gnu11.m4: Update.
1658         * gnulib/import/m4/stdbool.m4: Update.
1659         * gnulib/import/m4/stddef_h.m4: Update.
1660         * gnulib/import/m4/stdint.m4: Update.
1661         * gnulib/import/m4/stdio_h.m4: Update.
1662         * gnulib/import/m4/stdlib_h.m4: Update.
1663         * gnulib/import/m4/strchrnul.m4: Update.
1664         * gnulib/import/m4/strdup.m4: Update.
1665         * gnulib/import/m4/strerror.m4: Update.
1666         * gnulib/import/m4/string_h.m4: Update.
1667         * gnulib/import/m4/strstr.m4: Update.
1668         * gnulib/import/m4/strtok_r.m4: Update.
1669         * gnulib/import/m4/sys_socket_h.m4: Update.
1670         * gnulib/import/m4/sys_stat_h.m4: Update.
1671         * gnulib/import/m4/sys_time_h.m4: Update.
1672         * gnulib/import/m4/sys_types_h.m4: Update.
1673         * gnulib/import/m4/tempname.m4: Update.
1674         * gnulib/import/m4/time_h.m4: Update.
1675         * gnulib/import/m4/unistd-safer.m4: Update.
1676         * gnulib/import/m4/unistd_h.m4: Update.
1677         * gnulib/import/m4/warn-on-use.m4: Update.
1678         * gnulib/import/m4/wchar_h.m4: Update.
1679         * gnulib/import/m4/wchar_t.m4: Update.
1680         * gnulib/import/m4/wctype_h.m4: Update.
1681         * gnulib/import/m4/wint_t.m4: Update.
1682         * gnulib/import/malloc.c: Update.
1683         * gnulib/import/malloc/scratch_buffer.h: Update.
1684         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
1685         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
1686         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
1687         * gnulib/import/malloca.c: Update.
1688         * gnulib/import/malloca.h: Update.
1689         * gnulib/import/malloca.valgrind: Update.
1690         * gnulib/import/math.in.h: Update.
1691         * gnulib/import/mbrtowc.c: Update.
1692         * gnulib/import/mbsinit.c: Update.
1693         * gnulib/import/mbsrtowcs-impl.h: Update.
1694         * gnulib/import/mbsrtowcs-state.c: Update.
1695         * gnulib/import/mbsrtowcs.c: Update.
1696         * gnulib/import/memchr.c: Update.
1697         * gnulib/import/memmem.c: Update.
1698         * gnulib/import/mempcpy.c: Update.
1699         * gnulib/import/memrchr.c: Update.
1700         * gnulib/import/mkdir.c: Update.
1701         * gnulib/import/mkstemp.c: Update.
1702         * gnulib/import/msvc-inval.c: Update.
1703         * gnulib/import/msvc-inval.h: Update.
1704         * gnulib/import/msvc-nothrow.c: Update.
1705         * gnulib/import/msvc-nothrow.h: Update.
1706         * gnulib/import/open.c: Update.
1707         * gnulib/import/openat-die.c: Update.
1708         * gnulib/import/openat-priv.h: Update.
1709         * gnulib/import/openat-proc.c: Update.
1710         * gnulib/import/openat.c: Update.
1711         * gnulib/import/openat.h: Update.
1712         * gnulib/import/opendir.c: Update.
1713         * gnulib/import/pathmax.h: Update.
1714         * gnulib/import/pipe-safer.c: Update.
1715         * gnulib/import/rawmemchr.c: Update.
1716         * gnulib/import/readdir.c: Update.
1717         * gnulib/import/readlink.c: Update.
1718         * gnulib/import/realloc.c: Update.
1719         * gnulib/import/ref-add.sin: Update.
1720         * gnulib/import/ref-del.sin: Update.
1721         * gnulib/import/rename.c: Update.
1722         * gnulib/import/rewinddir.c: Update.
1723         * gnulib/import/rmdir.c: Update.
1724         * gnulib/import/same-inode.h: Update.
1725         * gnulib/import/save-cwd.c: Update.
1726         * gnulib/import/save-cwd.h: Update.
1727         * gnulib/import/scratch_buffer.h: Update.
1728         * gnulib/import/secure_getenv.c: Update.
1729         * gnulib/import/setenv.c: Update.
1730         * gnulib/import/signal.in.h: Update.
1731         * gnulib/import/stat-time.c: Update.
1732         * gnulib/import/stat-time.h: Update.
1733         * gnulib/import/stat-w32.c: Update.
1734         * gnulib/import/stat-w32.h: Update.
1735         * gnulib/import/stat.c: Update.
1736         * gnulib/import/stdbool.in.h: Update.
1737         * gnulib/import/stddef.in.h: Update.
1738         * gnulib/import/stdint.in.h: Update.
1739         * gnulib/import/stdio.in.h: Update.
1740         * gnulib/import/stdlib.in.h: Update.
1741         * gnulib/import/str-two-way.h: Update.
1742         * gnulib/import/strchrnul.c: Update.
1743         * gnulib/import/strdup.c: Update.
1744         * gnulib/import/streq.h: Update.
1745         * gnulib/import/strerror-override.c: Update.
1746         * gnulib/import/strerror-override.h: Update.
1747         * gnulib/import/strerror.c: Update.
1748         * gnulib/import/string.in.h: Update.
1749         * gnulib/import/stripslash.c: Update.
1750         * gnulib/import/strnlen1.c: Update.
1751         * gnulib/import/strnlen1.h: Update.
1752         * gnulib/import/strstr.c: Update.
1753         * gnulib/import/strtok_r.c: Update.
1754         * gnulib/import/sys_stat.in.h: Update.
1755         * gnulib/import/sys_time.in.h: Update.
1756         * gnulib/import/sys_types.in.h: Update.
1757         * gnulib/import/tempname.c: Update.
1758         * gnulib/import/tempname.h: Update.
1759         * gnulib/import/time.in.h: Update.
1760         * gnulib/import/unistd--.h: Update.
1761         * gnulib/import/unistd-safer.h: Update.
1762         * gnulib/import/unistd.in.h: Update.
1763         * gnulib/import/unsetenv.c: Update.
1764         * gnulib/import/verify.h: Update.
1765         * gnulib/import/extra/snippet/warn-on-use.h: Update.
1766         * gnulib/import/wchar.in.h: Update.
1767         * gnulib/import/wctype.in.h: Update.
1768         * gnulib/import/xalloc-oversized.h: Update.
1769         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
1770         "53e2c179f26a890fa6685af4b6c1397ee370433b".
1771
1772 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
1773
1774         * record-btrace.c (get_thread_current_frame): Remove
1775         old_inferior_ptid.
1776
1777 2018-09-10  Jerome Guitton  <guitton@adacore.com>
1778
1779         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
1780         with check_tag to 1 if and only if the type is tagged and the
1781         component being searched cannot been found in the current
1782         view. Otherwise, always call ada_to_fixed_type with
1783         check_tag to 0.
1784
1785 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1786
1787         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
1788         declaration.
1789         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
1790         * ada-varobj.c (ada_varobj_get_number_of_children,
1791         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
1792
1793 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1794
1795         * ada-valprint.c (ada_value_print): Use type instead of
1796         enclosing type.
1797
1798 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1799
1800         * ada-lang.c (ada_value_subscript): Handle case when parameter is
1801         an array of access to unconstrained array.
1802
1803 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1804
1805         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
1806         (ada_check_typedef): Use it.
1807
1808 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1809
1810         * ada-varobj.c (ada_varobj_describe_struct_child)
1811         (ada_varobj_describe_child): Handle union case like struct one.
1812
1813 2018-09-10  Tom Tromey  <tom@tromey.com>
1814
1815         PR python/18380:
1816         * python/python.c (_initialize_python): Make example in "python"
1817         help work in Python 3.
1818
1819 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
1820
1821         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
1822         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
1823         $(EXEEXT) to the script, as it is not a program.
1824
1825 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
1826
1827         * python/py-prettyprint.c (pretty_print_one_value): Return
1828         gdbpy_ref<>.
1829         (print_string_repr): Adjust.
1830         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
1831         * python/python-internal.h (apply_varobj_pretty_printer): Return
1832         gdbpy_ref<>.
1833         * varobj.c (varobj_value_get_print_value): Adjust.
1834
1835 2018-09-08  Tom Tromey  <tom@tromey.com>
1836
1837         PR python/16047:
1838         * python/py-prettyprint.c (pretty_print_one_value): Check for
1839         to_string method.
1840
1841 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1842
1843         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
1844         replace_operator_with_call.
1845
1846 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1847
1848         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
1849
1850 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1851
1852         * ada-typeprint.c (print_range): Print the bounds using TYPE
1853         rather than its TYPE_TARGET_TYPE.
1854
1855 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1856
1857         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
1858         call to ada_to_fixed_value_create.
1859
1860 2018-09-08  Jerome Guitton  <guitton@adacore.com>
1861
1862         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
1863
1864 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1865
1866         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
1867         by calls to error.
1868
1869 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1870
1871         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
1872         Move update of loop variable "fi".
1873
1874 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1875
1876         * ada-lang.c (value_assign_to_component): In the case of
1877         big-endian targets, extract the bits of the given VAL
1878         using an src_offset of zero if container is not a scalar.
1879
1880 2018-09-06  Simon Ser  <contact@emersion.fr>
1881
1882         PR gdb/23105
1883         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
1884         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
1885         * fbsd-tdep.c (fbsd_make_note_desc): New.
1886         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
1887         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
1888         * target.h (enum target_object) Add FreeBSD-specific
1889         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
1890
1891 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
1892
1893         * compile/compile-c.h (generate_c_for_variable_locations):
1894         Change reference to pointer.
1895         * compile/compile-c-support.c (compile_program) <compute>:
1896         Likewise.
1897         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
1898         (generate_c_for_for_one_variable): Likewise
1899         (generate_c_for_variable_locations): Likewise
1900         * compile/compile-c-types.c (compile_c_instance::convert_type):
1901         Likewise
1902         * compile/compile-cplus-symbols.c (convert_one_symbol):
1903         std::move the scope passed to enter_scope.
1904         * compile/compile-cplus-types.c
1905         (compile_cplus_instance::enter_scope): Make parameter
1906         rvalue-reference.
1907         (compile_cplus_instance::new_scope): Change reference to
1908         pointer.
1909         (compile_cplus_instance::convert_type): Likewise
1910         (compile_cplus_convert_typedef): std::move the scope passed to
1911         enter_scope.
1912         (compile_cplus_convert_struct_or_union): Likewise.
1913         (compile_cplus_convert_enum): Likewise.
1914         (compile_cplus_convert_namespace): Likewise.
1915         * compile/compile-cplus.h (compile_cplus_instance)
1916         <enter_scope>: Make parameter rvalue-reference.
1917         * compile/compile-internal.h (compile_instance)
1918         <get_cached_type>: Likewise
1919         * compile/compile-loc2c.c (push): Likewise
1920         (pushf): Likewise
1921         (unary): Likewise
1922         (binary): Likewise
1923         (print_label): Likewise
1924         (pushf_register_address): Likewise
1925         (pushf_register): Likewise
1926         (do_compile_dwarf_expr_to_c): Likewise
1927         (compile_dwarf_expr_to_c): Likewise
1928         (compile_dwarf_bounds_to_c): Likewise
1929         * compile/compile.c (compile_instance::get_cached_type):
1930         Likewise
1931         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
1932         (compile_dwarf_bounds_to_c): Likewise
1933         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
1934         (dwarf2_compile_property_to_c): Likewise
1935         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
1936         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
1937         Likewise
1938
1939 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
1940
1941         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
1942         * tui/tui-data.c (init_content_element): Don't initialize it.
1943
1944 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
1945
1946         * tui/tui-data.h (struct tui_win_info)
1947         <detail::opaque>: Remove.
1948         * tui/tui-data.c (init_win_info): Remove assignment.
1949
1950 2018-09-05  Tom Tromey  <tom@tromey.com>
1951
1952         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
1953         -Wformat-nonliteral.
1954         * target-float.c (host_float_ops<T>::to_string)
1955         (host_float_ops<T>::from_string): Use
1956         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
1957         * configure: Rebuild.
1958
1959 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
1960
1961         * printcmd.c (printf_c_string): Use
1962         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
1963         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
1964
1965 2018-09-05  Tom Tromey  <tom@tromey.com>
1966
1967         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
1968
1969 2018-09-05  Tom de Vries  <tdevries@suse.de>
1970
1971         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
1972         with resolve_abstract_p == true.
1973         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
1974         defaulting to false. Propagate resolve_abstract_p to
1975         dwarf2_fetch_die_loc_sect_off.
1976         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
1977         parameter, defaulting to false.
1978         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
1979         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
1980         parameter.
1981         * dwarf2read.h (struct die_info): Forward-declare.
1982         (die_info_ptr): New typedef.
1983         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
1984
1985 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
1986
1987         GDB 8.2 released.
1988
1989 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
1990             Pedro Alves  <palves@redhat.com>
1991
1992         * gnulib/Makefile.in (aclocal_m4_deps): Move to
1993         "aclocal-m4-deps.mk".  Include file here.
1994         $(srcdir)/aclocal.m4: Add "configure.ac".
1995         * gnulib/aclocal-m4-deps.mk: New file.
1996         * gnulib/update-gnulib.sh: Automatically update
1997         "aclocal-m4-deps.mk".
1998
1999 2018-09-04  Tom Tromey  <tom@tromey.com>
2000
2001         * configure: Rebuild.
2002         * configure.ac: Remove multi-ice code.
2003
2004 2018-09-04  Tom Tromey  <tom@tromey.com>
2005
2006         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
2007         (ada-exp.o): Update.
2008
2009 2018-09-04  Tom Tromey  <tom@tromey.com>
2010
2011         * Makefile.in (printcmd.o, target-float.o): Remove.
2012         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
2013
2014 2018-09-04  Tom Tromey  <tom@tromey.com>
2015
2016         * gnulib/Makefile.in: Remove obsolete comment.
2017         * Makefile.in: Remove obsolete comment.
2018
2019 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
2020
2021         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
2022         line with '+'.
2023
2024 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2025
2026         * riscv-tdep.c: Add 'prologue-value.h' include.
2027         (struct riscv_unwind_cache): New struct.
2028         (riscv_debug_unwinder): New global.
2029         (riscv_scan_prologue): Update arguments, capture register details
2030         from prologue scan.
2031         (riscv_skip_prologue): Reformat arguments line, move end of
2032         prologue calculation into riscv_scan_prologue.
2033         (riscv_frame_cache): Update return type, create
2034         riscv_unwind_cache, scan the prologue, and fill in remaining cache
2035         details.
2036         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
2037         (riscv_frame_prev_register): Use the trad_frame within the
2038         riscv_unwind_cache.
2039         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
2040         flag.
2041
2042 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2043
2044         * trad-frame.h (trad_frame_set_realreg): Declare.
2045         (trad_frame_set_addr): Declare.
2046         * trad-frame.c (trad_frame_set_realreg): Define new function.
2047         (trad_frame_set_addr): Define new function.
2048         (trad_frame_set_reg_realreg): Use new function.
2049         (trad_frame_set_reg_addr): Use new function.
2050
2051 2018-09-01  Keith Seitz  <keiths@redhat.com>
2052
2053         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
2054         pulongest instead of "%lld".
2055         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
2056         ATTRIBUTE_UNUSED.
2057
2058 2018-08-31  Tom Tromey  <tom@tromey.com>
2059
2060         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
2061         variant part type.
2062
2063 2018-08-31  Pedro Alves  <palves@redhat.com>
2064
2065         * gdbarch.h: Regenerate.
2066
2067 2018-08-31  Pedro Alves  <palves@redhat.com>
2068
2069         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
2070         * target.h (Hardware watchpoint interfaces): Describe
2071         continuable/steppable/non-steppable watchpoints.
2072         * gdbarch.h, gdbarch.c: Regenerate.
2073
2074 2018-08-31  Pedro Alves  <palves@redhat.com>
2075
2076         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
2077         Delete.
2078         * s390-linux-nat.c
2079         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
2080         * target.h (target_ops::have_continuable_watchpoint): Delete.
2081         (target_have_continuable_watchpoint): Delete.
2082         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
2083         * target-delegates.c: Regenerate.
2084
2085 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
2086
2087         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
2088         the files present in "gnulib/import/m4/".
2089
2090 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2091
2092         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
2093         c.sw, c.swsp, and c.sdsp.
2094
2095 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2096
2097         * riscv-tdep.c (struct riscv_inferior_data): Delete.
2098         (riscv_read_misa_reg): Don't cache value read into inferior data.
2099         (riscv_new_inferior_data): Delete.
2100         (riscv_inferior_data_cleanup): Delete.
2101         (riscv_inferior_data): Delete.
2102         (riscv_invalidate_inferior_data): Delete.
2103         (_initialize_riscv_tdep): Remove initialisation of inferior data.
2104
2105 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
2106
2107         * compile/compile-cplus-types.c
2108         (compile_cplus_instance::leave_scope): Take the address of scope
2109         object.
2110         (compile_cplus_instance::convert_qualified_base): Compare quals
2111         to 0.
2112
2113 2018-08-30  Keith Seitz  <keiths@redhat.com>
2114
2115         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
2116         Use "%s" and host_address_to_string instead of "%p" in printf.
2117
2118 2018-08-29  Keith Seitz  <keiths@redhat.com>
2119
2120         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
2121         and compile-cplus-types.c.
2122         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
2123         * c-lang.c (cplus_language_defn): Set C++ compile functions.
2124         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
2125         Declare.
2126         * compile/compile-c-support.c: Include compile-cplus.h.
2127         (load_libcompile): Templatize.
2128         (get_compile_context): "New" function.
2129         (c_get_compile_context): Use get_compile_context.
2130         (cplus_get_compile_context): New function.
2131         (cplus_push_user_expression, cplus_pop_user_expression)
2132         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
2133         (cplus_compute_program): Define new structs/functions.
2134         * compile/compile-cplus-symmbols.c: New file.
2135         * compile/compile-cplus-types.c: New file.
2136         * compile/compile-cplus.h: New file.
2137         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
2138         Declare.
2139         * compile/compile-object-load.c (get_out_value_type): Use
2140         strncmp_iw when comparing symbol names.
2141         (compile_object_load): Add mst_bss and mst_data.
2142         * compile/compile.c (_initialize_compile): Remove
2143         -Wno-implicit-function-declaration from `compile_args'.
2144         * compile/gcc-cp-plugin.h: New file.
2145         * NEWS: Mention C++ compile support and new debug options.
2146
2147 2018-08-29  Keith Seitz  <keiths@redhat.com>
2148
2149         * linespec.c (collect_info::add_symbol): Make virtual.
2150         (struct symbol_searcher_collect_info): New struct.
2151         (symbol_searcher::find_all_symbols): New method.
2152         * symtab.h (class symbol_searcher): New class.
2153
2154 2018-08-29  Keith Seitz  <keiths@redhat.com>
2155
2156         * linespec.c (struct linespec) <function_symbols, label_symbols>:
2157         Change to vector of block_symbol.  Update all users.
2158         (struct collect_info) <symbols>: Likewise.
2159         (collect_info::add_symbol): Take block_symbol as argument.
2160         Update all callers.
2161         (decode_compound_collector) <m_symbols>: Change type to vector
2162         of block_symbol.  Update all users.
2163         (decode_compound_collector::operator ()): Change parameter type
2164         to block_symbol.
2165         (find_method, find_function_symbols, find_linespec_symbols)
2166         (find_label_symbols_in_block, find_label_symbols): Change symbol
2167         vectors to block_symbol vectors.
2168         * symtab.h (symbol_found_callback_ftype): Change parameter type to
2169         block_symbol.
2170
2171 2018-08-29  Keith Seitz  <keiths@redhat.com>
2172
2173         * linespec.c (symbolp): Remove typedef and VEC definitions.
2174         (bound_minimal_symbol_d): Likewise.
2175
2176 2018-08-29  Keith Seitz  <keiths@redhat.com>
2177
2178         * linespec.c (decode_compound_collector::decode_compound_collector):
2179         Remove initialization for `m_symtabs'.
2180         (decode_compound_collector::release_symbols): Change return type
2181         to std::vector.  Update all callers.
2182         (class decode_compound_collector) <m_symbols>: Change type to
2183         std::vector.
2184         (lookup_prefix_sym): Change return type to std::vector.  Update all
2185         callers.
2186         (compare_symbols): Remove.
2187         (std_compare_symbols): Rename to `compare_symbols'.
2188         (find_method): Change `sym_classes' parameter to std::vector.
2189         Update all callers.  Use std::sort to sort sym_classes.
2190         (find_linespec_symbols): Remove cleanup.
2191
2192 2018-08-29  Keith Seitz  <keiths@redhat.com>
2193
2194         * linespec.c (struct linespec) <minimal_symbols>: Change type to
2195         std::vector.  Update all users.
2196         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
2197         (struct collect_info) <minimal_symbols>: Likewise.
2198         (compare_msymbols): Return bool.  Change parameters to const
2199         bound_minimal_symbol references.
2200         (find_method, find_function_symbols, find_linespec_symbols): Change
2201         `minsyms' parameter to std::vector.  Update all callers.
2202
2203 2018-08-29  Keith Seitz  <keiths@redhat.com>
2204
2205         * linespec.c (struct linespec) <label_symbols>: Change type to
2206         std::vector.  Update all users.
2207         (find_label_symbols_in_block): Change `result' parameter to
2208         std::vector.  Update all callers.
2209         (find_label_symbols): Return std::vector.  Update all callers.
2210
2211 2018-08-29  Keith Seitz  <keiths@redhat.com>
2212
2213         * linespec.c (struct linespec) <function_symbols>: Change type to
2214         std::vector.  Update all users.
2215         (struct collect_info) <function_symbols>: Likewise.
2216         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
2217         (std_compare_symbols): New function.
2218         (find_method, find_function_symbols, find_linespec_symbols)
2219         (find_label_symbols_in_block): Change `symbols' parameter to
2220         std::vector.  Update all callers.
2221         (find_label_symbols): Likewise for `function_symbols' and
2222         `label_funcs_ret'.
2223
2224 2018-08-29  Keith Seitz  <keiths@redhat.com>
2225
2226         * linespec.c (symtab_vector_up): Define.
2227         (struct linespec) <file_symtabs>: Change type to std::vector *.
2228         Update all uses.
2229         (struct collect_info) <file_symtabs>: Likewise.
2230         (collect_symtabs_from_filename): Return symtab_vector_up.
2231         Update all callers.
2232         (decode_objc): Remove cleanup.
2233         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
2234         (symtab_collector::release_symtabs): Return symtab_vector_up.
2235         Update all callers.
2236         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
2237         Update all users.
2238         (collect_symtabs_from_filename, symtabs_from_filename): Return
2239         symtab_vector_up.  Update all callers.
2240
2241 2018-08-29  Tom Tromey  <tom@tromey.com>
2242
2243         * csky-tdep.c (csky_analyze_prologue): Use
2244         core_addr_to_string_nz.
2245
2246 2018-08-29  Tom Tromey  <tom@tromey.com>
2247
2248         * windows-nat.c (struct xlate_exception) <them>: Change type to
2249         DWORD.
2250         (xlate): Fix formatting.  Remove last entry.
2251         (struct xlate_exception, xlate): Comment out.
2252         (windows_nat_target::resume): Use ranged for.
2253
2254 2018-08-29  Jim Wilson  <jimw@sifive.com>
2255
2256         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
2257         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
2258         of NT_PRFPREG.
2259         (riscv_linux_nat_target::store_registers): Likewise.
2260
2261 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2262
2263         PR gdb/23555
2264         PR gdb/23558
2265         * gnulib/aclocal.m4: Regenerate.
2266         * gnulib/config.in: Regenerate.
2267         * gnulib/configure: Regenerate.
2268         * gnulib/import/Makefile.am: Update.
2269         * gnulib/import/Makefile.in: Update.
2270         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2271         * gnulib/import/_Noreturn.h: ... this.
2272         * gnulib/import/alloca.in.h: Update.
2273         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2274         * gnulib/import/arg-nonnull.h: ... this.
2275         * gnulib/import/assure.h: Update.
2276         * gnulib/import/at-func.c: Update.
2277         * gnulib/import/basename-lgpl.c: Update.
2278         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2279         * gnulib/import/c++defs.h: ... this.
2280         * gnulib/import/canonicalize-lgpl.c: Update.
2281         * gnulib/import/cdefs.h: Update.
2282         * gnulib/import/chdir-long.c: Update.
2283         * gnulib/import/chdir-long.h: Update.
2284         * gnulib/import/cloexec.c: Update.
2285         * gnulib/import/cloexec.h: Update.
2286         * gnulib/import/close.c: Update.
2287         * gnulib/import/closedir.c: Update.
2288         * gnulib/import/config.charset: Update.
2289         * gnulib/import/dirent-private.h: Update.
2290         * gnulib/import/dirent.in.h: Update.
2291         * gnulib/import/dirfd.c: Update.
2292         * gnulib/import/dirname-lgpl.c: Update.
2293         * gnulib/import/dirname.h: Update.
2294         * gnulib/import/dosname.h: Update.
2295         * gnulib/import/dup-safer-flag.c: Update.
2296         * gnulib/import/dup-safer.c: Update.
2297         * gnulib/import/dup.c: Update.
2298         * gnulib/import/dup2.c: Update.
2299         * gnulib/import/errno.in.h: Update.
2300         * gnulib/import/error.c: Update.
2301         * gnulib/import/error.h: Update.
2302         * gnulib/import/exitfail.c: Update.
2303         * gnulib/import/exitfail.h: Update.
2304         * gnulib/import/extra/update-copyright: Update.
2305         * gnulib/import/fchdir.c: Update.
2306         * gnulib/import/fcntl.c: Update.
2307         * gnulib/import/fcntl.in.h: Update.
2308         * gnulib/import/fd-hook.c: Update.
2309         * gnulib/import/fd-hook.h: Update.
2310         * gnulib/import/fd-safer-flag.c: Update.
2311         * gnulib/import/fd-safer.c: Update.
2312         * gnulib/import/fdopendir.c: Update.
2313         * gnulib/import/filename.h: Update.
2314         * gnulib/import/filenamecat-lgpl.c: Update.
2315         * gnulib/import/filenamecat.h: Update.
2316         * gnulib/import/flexmember.h: Update.
2317         * gnulib/import/float+.h: Update.
2318         * gnulib/import/float.c: Update.
2319         * gnulib/import/float.in.h: Update.
2320         * gnulib/import/fnmatch.c: Update.
2321         * gnulib/import/fnmatch.in.h: Update.
2322         * gnulib/import/fnmatch_loop.c: Update.
2323         * gnulib/import/fpucw.h: Update.
2324         * gnulib/import/frexp.c: Update.
2325         * gnulib/import/frexpl.c: Update.
2326         * gnulib/import/fstat.c: Update.
2327         * gnulib/import/fstatat.c: Update.
2328         * gnulib/import/getcwd-lgpl.c: Update.
2329         * gnulib/import/getcwd.c: Update.
2330         * gnulib/import/getdtablesize.c: Update.
2331         * gnulib/import/getlogin_r.c: Update.
2332         * gnulib/import/getprogname.c: Update.
2333         * gnulib/import/getprogname.h: Update.
2334         * gnulib/import/gettext.h: Update.
2335         * gnulib/import/gettimeofday.c: Update.
2336         * gnulib/import/glob-libc.h: Update.
2337         * gnulib/import/glob.c: Update.
2338         * gnulib/import/glob.in.h: Update.
2339         * gnulib/import/glob_internal.h: Update.
2340         * gnulib/import/glob_pattern_p.c: Update.
2341         * gnulib/import/globfree.c: Update.
2342         * gnulib/import/hard-locale.c: Update.
2343         * gnulib/import/hard-locale.h: Update.
2344         * gnulib/import/intprops.h: Update.
2345         * gnulib/import/inttypes.in.h: Update.
2346         * gnulib/import/isnan.c: Update.
2347         * gnulib/import/isnand-nolibm.h: Update.
2348         * gnulib/import/isnand.c: Update.
2349         * gnulib/import/isnanl-nolibm.h: Update.
2350         * gnulib/import/isnanl.c: Update.
2351         * gnulib/import/itold.c: Update.
2352         * gnulib/import/libc-config.h: Update.
2353         * gnulib/import/limits.in.h: Update.
2354         * gnulib/import/localcharset.c: Update.
2355         * gnulib/import/localcharset.h: Update.
2356         * gnulib/import/localtime-buffer.c: Update.
2357         * gnulib/import/localtime-buffer.h: Update.
2358         * gnulib/import/lstat.c: Update.
2359         * gnulib/import/m4/00gnulib.m4: Update.
2360         * gnulib/import/m4/__inline.m4: Update.
2361         * gnulib/import/m4/absolute-header.m4: Update.
2362         * gnulib/import/m4/alloca.m4: Update.
2363         * gnulib/import/m4/builtin-expect.m4: Update.
2364         * gnulib/import/m4/canonicalize.m4: Update.
2365         * gnulib/import/m4/chdir-long.m4: Update.
2366         * gnulib/import/m4/close.m4: Update.
2367         * gnulib/import/m4/closedir.m4: Update.
2368         * gnulib/import/m4/configmake.m4: Update.
2369         * gnulib/import/m4/d-ino.m4: Update.
2370         * gnulib/import/m4/d-type.m4: Update.
2371         * gnulib/import/m4/dirent_h.m4: Update.
2372         * gnulib/import/m4/dirfd.m4: Update.
2373         * gnulib/import/m4/dirname.m4: Update.
2374         * gnulib/import/m4/double-slash-root.m4: Update.
2375         * gnulib/import/m4/dup.m4: Update.
2376         * gnulib/import/m4/dup2.m4: Update.
2377         * gnulib/import/m4/eealloc.m4: Update.
2378         * gnulib/import/m4/environ.m4: Update.
2379         * gnulib/import/m4/errno_h.m4: Update.
2380         * gnulib/import/m4/error.m4: Update.
2381         * gnulib/import/m4/exponentd.m4: Update.
2382         * gnulib/import/m4/exponentl.m4: Update.
2383         * gnulib/import/m4/extensions.m4: Update.
2384         * gnulib/import/m4/extern-inline.m4: Update.
2385         * gnulib/import/m4/fchdir.m4: Update.
2386         * gnulib/import/m4/fcntl-o.m4: Update.
2387         * gnulib/import/m4/fcntl.m4: Update.
2388         * gnulib/import/m4/fcntl_h.m4: Update.
2389         * gnulib/import/m4/fdopendir.m4: Update.
2390         * gnulib/import/m4/filenamecat.m4: Update.
2391         * gnulib/import/m4/flexmember.m4: Update.
2392         * gnulib/import/m4/float_h.m4: Update.
2393         * gnulib/import/m4/fnmatch.m4: Update.
2394         * gnulib/import/m4/fnmatch_h.m4: Update.
2395         * gnulib/import/m4/fpieee.m4: Update.
2396         * gnulib/import/m4/frexp.m4: Update.
2397         * gnulib/import/m4/frexpl.m4: Update.
2398         * gnulib/import/m4/fstat.m4: Update.
2399         * gnulib/import/m4/fstatat.m4: Update.
2400         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2401         * gnulib/import/m4/getcwd-path-max.m4: Update.
2402         * gnulib/import/m4/getcwd.m4: Update.
2403         * gnulib/import/m4/getdtablesize.m4: Update.
2404         * gnulib/import/m4/getlogin.m4: Update.
2405         * gnulib/import/m4/getlogin_r.m4: Update.
2406         * gnulib/import/m4/getpagesize.m4: Update.
2407         * gnulib/import/m4/getprogname.m4: Update.
2408         * gnulib/import/m4/gettimeofday.m4: Update.
2409         * gnulib/import/m4/glibc21.m4: Update.
2410         * gnulib/import/m4/glob.m4: Update.
2411         * gnulib/import/m4/glob_h.m4: Update.
2412         * gnulib/import/m4/gnulib-cache.m4: Update.
2413         * gnulib/import/m4/gnulib-common.m4: Update.
2414         * gnulib/import/m4/gnulib-comp.m4: Update.
2415         * gnulib/import/m4/gnulib-tool.m4: Update.
2416         * gnulib/import/m4/hard-locale.m4: Update.
2417         * gnulib/import/m4/include_next.m4: Update.
2418         * gnulib/import/m4/inttypes-pri.m4: Update.
2419         * gnulib/import/m4/inttypes.m4: Update.
2420         * gnulib/import/m4/isnand.m4: Update.
2421         * gnulib/import/m4/isnanl.m4: Update.
2422         * gnulib/import/m4/largefile.m4: Update.
2423         * gnulib/import/m4/limits-h.m4: Update.
2424         * gnulib/import/m4/localcharset.m4: Update.
2425         * gnulib/import/m4/locale-fr.m4: Update.
2426         * gnulib/import/m4/locale-ja.m4: Update.
2427         * gnulib/import/m4/locale-zh.m4: Update.
2428         * gnulib/import/m4/localtime-buffer.m4: Update.
2429         * gnulib/import/m4/longlong.m4: Update.
2430         * gnulib/import/m4/lstat.m4: Update.
2431         * gnulib/import/m4/malloc.m4: Update.
2432         * gnulib/import/m4/malloca.m4: Update.
2433         * gnulib/import/m4/math_h.m4: Update.
2434         * gnulib/import/m4/mbrtowc.m4: Update.
2435         * gnulib/import/m4/mbsinit.m4: Update.
2436         * gnulib/import/m4/mbsrtowcs.m4: Update.
2437         * gnulib/import/m4/mbstate_t.m4: Update.
2438         * gnulib/import/m4/memchr.m4: Update.
2439         * gnulib/import/m4/memmem.m4: Update.
2440         * gnulib/import/m4/mempcpy.m4: Update.
2441         * gnulib/import/m4/memrchr.m4: Update.
2442         * gnulib/import/m4/mkdir.m4: Update.
2443         * gnulib/import/m4/mkstemp.m4: Update.
2444         * gnulib/import/m4/mmap-anon.m4: Update.
2445         * gnulib/import/m4/mode_t.m4: Update.
2446         * gnulib/import/m4/msvc-inval.m4: Update.
2447         * gnulib/import/m4/msvc-nothrow.m4: Update.
2448         * gnulib/import/m4/multiarch.m4: Update.
2449         * gnulib/import/m4/nocrash.m4: Update.
2450         * gnulib/import/m4/off_t.m4: Update.
2451         * gnulib/import/m4/onceonly.m4: Update.
2452         * gnulib/import/m4/open-cloexec.m4: Update.
2453         * gnulib/import/m4/open.m4: Update.
2454         * gnulib/import/m4/openat.m4: Update.
2455         * gnulib/import/m4/opendir.m4: Update.
2456         * gnulib/import/m4/pathmax.m4: Update.
2457         * gnulib/import/m4/rawmemchr.m4: Update.
2458         * gnulib/import/m4/readdir.m4: Update.
2459         * gnulib/import/m4/readlink.m4: Update.
2460         * gnulib/import/m4/realloc.m4: Update.
2461         * gnulib/import/m4/rename.m4: Update.
2462         * gnulib/import/m4/rewinddir.m4: Update.
2463         * gnulib/import/m4/rmdir.m4: Update.
2464         * gnulib/import/m4/save-cwd.m4: Update.
2465         * gnulib/import/m4/secure_getenv.m4: Update.
2466         * gnulib/import/m4/setenv.m4: Update.
2467         * gnulib/import/m4/signal_h.m4: Update.
2468         * gnulib/import/m4/ssize_t.m4: Update.
2469         * gnulib/import/m4/stat-time.m4: Update.
2470         * gnulib/import/m4/stat.m4: Update.
2471         * gnulib/import/m4/std-gnu11.m4: Update.
2472         * gnulib/import/m4/stdbool.m4: Update.
2473         * gnulib/import/m4/stddef_h.m4: Update.
2474         * gnulib/import/m4/stdint.m4: Update.
2475         * gnulib/import/m4/stdio_h.m4: Update.
2476         * gnulib/import/m4/stdlib_h.m4: Update.
2477         * gnulib/import/m4/strchrnul.m4: Update.
2478         * gnulib/import/m4/strdup.m4: Update.
2479         * gnulib/import/m4/strerror.m4: Update.
2480         * gnulib/import/m4/string_h.m4: Update.
2481         * gnulib/import/m4/strstr.m4: Update.
2482         * gnulib/import/m4/strtok_r.m4: Update.
2483         * gnulib/import/m4/sys_socket_h.m4: Update.
2484         * gnulib/import/m4/sys_stat_h.m4: Update.
2485         * gnulib/import/m4/sys_time_h.m4: Update.
2486         * gnulib/import/m4/sys_types_h.m4: Update.
2487         * gnulib/import/m4/tempname.m4: Update.
2488         * gnulib/import/m4/time_h.m4: Update.
2489         * gnulib/import/m4/unistd-safer.m4: Update.
2490         * gnulib/import/m4/unistd_h.m4: Update.
2491         * gnulib/import/m4/warn-on-use.m4: Update.
2492         * gnulib/import/m4/wchar_h.m4: Update.
2493         * gnulib/import/m4/wchar_t.m4: Update.
2494         * gnulib/import/m4/wctype_h.m4: Update.
2495         * gnulib/import/m4/wint_t.m4: Update.
2496         * gnulib/import/malloc.c: Update.
2497         * gnulib/import/malloc/scratch_buffer.h: Update.
2498         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2499         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2500         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2501         * gnulib/import/malloca.c: Update.
2502         * gnulib/import/malloca.h: Update.
2503         * gnulib/import/malloca.valgrind: Update.
2504         * gnulib/import/math.in.h: Update.
2505         * gnulib/import/mbrtowc.c: Update.
2506         * gnulib/import/mbsinit.c: Update.
2507         * gnulib/import/mbsrtowcs-impl.h: Update.
2508         * gnulib/import/mbsrtowcs-state.c: Update.
2509         * gnulib/import/mbsrtowcs.c: Update.
2510         * gnulib/import/memchr.c: Update.
2511         * gnulib/import/memmem.c: Update.
2512         * gnulib/import/mempcpy.c: Update.
2513         * gnulib/import/memrchr.c: Update.
2514         * gnulib/import/mkdir.c: Update.
2515         * gnulib/import/mkstemp.c: Update.
2516         * gnulib/import/msvc-inval.c: Update.
2517         * gnulib/import/msvc-inval.h: Update.
2518         * gnulib/import/msvc-nothrow.c: Update.
2519         * gnulib/import/msvc-nothrow.h: Update.
2520         * gnulib/import/open.c: Update.
2521         * gnulib/import/openat-die.c: Update.
2522         * gnulib/import/openat-priv.h: Update.
2523         * gnulib/import/openat-proc.c: Update.
2524         * gnulib/import/openat.c: Update.
2525         * gnulib/import/openat.h: Update.
2526         * gnulib/import/opendir.c: Update.
2527         * gnulib/import/pathmax.h: Update.
2528         * gnulib/import/pipe-safer.c: Update.
2529         * gnulib/import/rawmemchr.c: Update.
2530         * gnulib/import/readdir.c: Update.
2531         * gnulib/import/readlink.c: Update.
2532         * gnulib/import/realloc.c: Update.
2533         * gnulib/import/ref-add.sin: Update.
2534         * gnulib/import/ref-del.sin: Update.
2535         * gnulib/import/rename.c: Update.
2536         * gnulib/import/rewinddir.c: Update.
2537         * gnulib/import/rmdir.c: Update.
2538         * gnulib/import/same-inode.h: Update.
2539         * gnulib/import/save-cwd.c: Update.
2540         * gnulib/import/save-cwd.h: Update.
2541         * gnulib/import/scratch_buffer.h: Update.
2542         * gnulib/import/secure_getenv.c: Update.
2543         * gnulib/import/setenv.c: Update.
2544         * gnulib/import/signal.in.h: Update.
2545         * gnulib/import/stat-time.c: Update.
2546         * gnulib/import/stat-time.h: Update.
2547         * gnulib/import/stat-w32.c: Update.
2548         * gnulib/import/stat-w32.h: Update.
2549         * gnulib/import/stat.c: Update.
2550         * gnulib/import/stdbool.in.h: Update.
2551         * gnulib/import/stddef.in.h: Update.
2552         * gnulib/import/stdint.in.h: Update.
2553         * gnulib/import/stdio.in.h: Update.
2554         * gnulib/import/stdlib.in.h: Update.
2555         * gnulib/import/str-two-way.h: Update.
2556         * gnulib/import/strchrnul.c: Update.
2557         * gnulib/import/strdup.c: Update.
2558         * gnulib/import/streq.h: Update.
2559         * gnulib/import/strerror-override.c: Update.
2560         * gnulib/import/strerror-override.h: Update.
2561         * gnulib/import/strerror.c: Update.
2562         * gnulib/import/string.in.h: Update.
2563         * gnulib/import/stripslash.c: Update.
2564         * gnulib/import/strnlen1.c: Update.
2565         * gnulib/import/strnlen1.h: Update.
2566         * gnulib/import/strstr.c: Update.
2567         * gnulib/import/strtok_r.c: Update.
2568         * gnulib/import/sys_stat.in.h: Update.
2569         * gnulib/import/sys_time.in.h: Update.
2570         * gnulib/import/sys_types.in.h: Update.
2571         * gnulib/import/tempname.c: Update.
2572         * gnulib/import/tempname.h: Update.
2573         * gnulib/import/time.in.h: Update.
2574         * gnulib/import/unistd--.h: Update.
2575         * gnulib/import/unistd-safer.h: Update.
2576         * gnulib/import/unistd.in.h: Update.
2577         * gnulib/import/unsetenv.c: Update.
2578         * gnulib/import/verify.h: Update.
2579         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2580         * gnulib/import/wchar.in.h: Update.
2581         * gnulib/import/wctype.in.h: Update.
2582         * gnulib/import/xalloc-oversized.h: Update.
2583         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2584         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2585
2586 2018-08-16  Gary Benson <gbenson@redhat.com>
2587
2588         PR gdb/13000:
2589         * gdb/main.c (captured_main_1): Exit with nonzero status
2590         in batch mode if the last command to be executed failed.
2591         * NEWS: Mention the above.
2592
2593 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
2594
2595         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
2596         end of warning message.
2597
2598 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2599
2600         PR gdb/22943:
2601         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
2602         (aarch64_extract_return_value): Use
2603         aapcs_is_vfp_call_or_return_candidate.
2604         (aarch64_return_in_memory): Likewise.
2605         (aarch64_store_return_value): Likewise.
2606
2607 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2608
2609         * aarch64-tdep.c
2610         (aapcs_is_vfp_call_or_return_candidate): Make static
2611         (pass_in_v_or_stack): Remove function.
2612         (pass_in_v_vfp_candidate): New function.
2613         (aarch64_push_dummy_call): Check for float register candidates.
2614
2615 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2616
2617         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
2618         (aapcs_is_vfp_call_or_return_candidate_1): New function.
2619         (aapcs_is_vfp_call_or_return_candidate): Likewise.
2620
2621 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
2622
2623         PR build/23399
2624         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
2625         (struct ipa_sym_addresses): Rename to...
2626         (struct ipa_sym_addresses_common): ... this.
2627         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
2628
2629 2018-08-28  Tom Tromey  <tom@tromey.com>
2630
2631         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2632         (token_fifo): Now a std::vector.
2633         (yylex, c_parse): Update.
2634         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2635         (token_fifo): Now a std::vector.
2636         (yylex, d_parse): Update.
2637         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2638         (token_fifo): Now a std::vector.
2639         (yylex, go_parse): Update.
2640
2641 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
2642
2643         * parser-defs.h (struct type_stack) <elements>: Change type to
2644         std::vector<union type_stack_elt>.
2645         <depth, size>: Remove.
2646         * parse.c (parse_exp_in_context_1): Adjust.
2647         (type_stack_reserve): Remove.
2648         (check_type_stack_depth): Remove.
2649         (insert_into_type_stack): Adjust to std::vector.
2650         (insert_type): Likewise.
2651         (push_type): Likewise.
2652         (push_type_int): Likewise.
2653         (insert_type_address_space): Likewise.
2654         (pop_type): Likewise.
2655         (pop_type_int): Likewise.
2656         (pop_typelist): Likewise.
2657         (pop_type_stack): Likewise.
2658         (append_type_stack): Likewise.
2659         (push_type_stack): Likewise.
2660         (get_type_stack): Likewise.
2661         (type_stack_cleanup): Likewise.
2662         (push_typelist): Likewise.
2663         (follow_types): Likewise.
2664         (_initialize_parse): Likewise.
2665
2666 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
2667
2668         * NEWS: Mention csky target.
2669
2670 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
2671             Hafiz Abid Qadeer  <abidh@codesourcery.com>
2672             Don Breazeal  <donb@codesourcery.com>
2673
2674         * csky-linux-tdep.c: New file.
2675         * csky-tdep.c: Likewise.
2676         * csky-tdep.h: Likewise.
2677         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
2678         csky-tdep.o.
2679         (HFILES_NO_SRCDIR): Add csky-tdep.h.
2680         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
2681         * configure.tgt: Add csky support.
2682
2683 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
2684
2685         * python/py-framefilter.c (py_print_frame): Print frame architecture
2686         when printing on an MI output.
2687
2688 2018-08-27  Tom Tromey  <tom@tromey.com>
2689
2690         PR build/23087:
2691         * configure: Rebuild.
2692         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
2693
2694 2018-08-27  Tom Tromey  <tom@tromey.com>
2695
2696         * aarch64-linux-tdep.c
2697         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
2698         casts to int.
2699
2700 2018-08-27  Tom Tromey  <tom@tromey.com>
2701
2702         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
2703         unsigned.
2704         (ppc64_standard_linkage1, ppc64_standard_linkage2)
2705         (ppc64_standard_linkage3, ppc64_standard_linkage4)
2706         (ppc64_standard_linkage5, ppc64_standard_linkage6)
2707         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
2708         unsigned.
2709
2710 2018-08-27  Tom Tromey  <tom@tromey.com>
2711
2712         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
2713         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
2714
2715 2018-08-27  Tom Tromey  <tom@tromey.com>
2716
2717         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
2718         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
2719         ULONGEST_MAX.
2720         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
2721         ULONGEST_MAX.
2722         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
2723         ULONGEST_MAX.
2724         * sparc-linux-tdep.c (sparc32_linux_sigframe)
2725         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
2726         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
2727         ULONGEST_MAX.
2728         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
2729         (ppc64_linux_sigaction_tramp_frame)
2730         (ppc32_linux_sighandler_tramp_frame)
2731         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2732         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
2733         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
2734         * mn10300-linux-tdep.c (am33_linux_sigframe)
2735         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
2736         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
2737         * mips-linux-tdep.c (mips_linux_o32_sigframe)
2738         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
2739         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
2740         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
2741         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
2742         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
2743         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
2744         * microblaze-linux-tdep.c
2745         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2746         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
2747         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
2748         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
2749         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
2750         * common/common-types.h (ULONGEST_MAX): New define.
2751         (CORE_ADDR_MAX): Fix formatting.
2752         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
2753         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
2754         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
2755         (arm_linux_rt_sigreturn_tramp_frame)
2756         (arm_eabi_linux_sigreturn_tramp_frame)
2757         (arm_eabi_linux_rt_sigreturn_tramp_frame)
2758         (thumb2_eabi_linux_sigreturn_tramp_frame)
2759         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
2760         (arm_linux_restart_syscall_tramp_frame)
2761         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
2762         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
2763         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
2764         ULONGEST_MAX.
2765         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
2766
2767 2018-08-27  Tom Tromey  <tom@tromey.com>
2768
2769         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
2770         CORE_ADDR_MAX.
2771         * mips-tdep.c (mips_deal_with_atomic_sequence)
2772         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
2773         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
2774         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
2775         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
2776         CORE_ADDR_MAX.
2777         * aarch64-tdep.c (aarch64_software_single_step): Use
2778         CORE_ADDR_MAX.
2779
2780 2018-08-27  Tom Tromey  <tom@tromey.com>
2781
2782         * linespec.c (complete_linespec_component): Add cast to "char".
2783         * completer.c (completion_tracker::build_completion_result): Add
2784         cast to "char".
2785
2786 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2787
2788         * solist.h (struct solist, struct target_so_ops): Fix
2789         indentation.
2790
2791 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2792
2793         * ada-tasks.c (ada_task_info_s): Remove typedef.
2794         (DEF_VEC_O(ada_task_info_s)): Remove.
2795         (struct ada_tasks_inferior_data): Initialize fields.
2796         <task_list>: Make an std::vector.
2797         (get_ada_tasks_inferior_data): Allocate with new.
2798         (ada_get_task_number): Adjust.
2799         (get_task_number_from_id): Likewise.
2800         (valid_task_id): Likewise.
2801         (ada_get_task_info_from_ptid): Likewise.
2802         (iterate_over_live_ada_tasks): Likewise.
2803         (add_ada_task): Likewise.
2804         (read_known_tasks): Likewise.
2805         (ada_build_task_list): Likewise.
2806         (print_ada_task_info): Likewise.
2807         (info_task): Likewise.
2808         (task_command_1): Likewise.
2809
2810 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2811
2812         * ada-lang.c (add_angle_brackets): Return std::string.
2813
2814 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
2815
2816         * python/py-threadevent.c (py_get_event_thread): Initialize
2817         pythread.
2818
2819 2018-08-24  Pedro Alves  <palves@redhat.com>
2820
2821         * python/py-bpevent.c (create_breakpoint_event_object): Use
2822         copy-initialization.
2823         * python/py-continueevent.c (emit_continue_event): Use
2824         copy-initialization.
2825         * python/py-exitedevent.c (create_exited_event_object): Return a
2826         gdbpy_ref<>.
2827         (emit_exited_event): Use copy-initialization.
2828         * python/py-inferior.c (python_new_inferior)
2829         (python_inferior_deleted, add_thread_object): Use
2830         copy-initialization.
2831         * python/py-infevents.c (create_inferior_call_event_object)
2832         (create_register_changed_event_object)
2833         (create_memory_changed_event_object): Return a gdbpy_ref<>.
2834         (emit_inferior_call_event, emit_memory_changed_event)
2835         (emit_register_changed_event): Use copy-initialization.
2836         * python/py-newobjfileevent.c (create_new_objfile_event_object):
2837         Return a gdbpy_ref<>.
2838         (emit_new_objfile_event): Use copy-initialization.
2839         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
2840         (emit_clear_objfiles_event): Use copy-initialization.
2841         * python/py-signalevent.c (create_signal_event_object): Use
2842         copy-initialization.
2843         * python/py-threadevent.c (create_thread_event_object): Use
2844         copy-initialization.
2845
2846 2018-08-24  Pedro Alves  <palves@redhat.com>
2847             Simon Marchi  <simon.marchi@ericsson.com>
2848
2849         PR gdb/23379
2850         * python/py-continueevent.c: Include "gdbthread.h".
2851         (create_continue_event_object): Add intro comment.  Add 'ptid'
2852         parameter.  Use it to find thread to pass to
2853         create_thread_event_object.
2854         (emit_continue_event): Pass PTID down to
2855         create_continue_event_object.
2856         * python/py-event.h (py_get_event_thread): Declare.
2857         (create_thread_event_object): Remove default from 'thread'
2858         parameter.
2859         * python/py-stopevent.c (create_stop_event_object): Use
2860         py_get_event_thread.
2861         * python/py-threadevent.c (get_event_thread): Rename to ...
2862         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
2863         and use it to find the thread.
2864         (create_thread_event_object): Assert that THREAD isn't null.
2865         Don't find the event thread here.
2866
2867 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
2868
2869         * block.h (blockrange, blockranges): New struct declarations.
2870         (struct block): Add new field named `ranges'.
2871         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
2872         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
2873         macros for accessing ranges in struct block.
2874         (make_blockranges): New declaration.
2875         block.c (make_blockranges): New function.
2876         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
2877         for block.
2878         * symtab.h (find_pc_partial_function): Add new parameter `block'.
2879         * blockframe.c (cache_pc_function_block): New static global.
2880         (clear_pc_function_cache): Clear cache_pc_function_block.
2881         (find_pc_partial_function): Move comment to symtab.h.  Add
2882         support for non-contiguous blocks.
2883         * cli/cli-cmds.c (block.h): Include.
2884         (print_disassembly): Handle printing of non-contiguous blocks.
2885         (disassemble_current_function): Likewise.
2886         (disassemble_command): Likewise.
2887
2888         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
2889         BLOCK_START.
2890         * blockframe.c (get_pc_function_start): Likewise.
2891         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
2892         (gcc_symbol_address): Likewise.
2893         * compile/compile-object-run.c (compile_object_run): Likewise.
2894         * compile/compile.c (get_expr_block_and_pc): Likewise.
2895         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
2896         (func_addr_to_tail_call_list): Likewise.
2897         * findvar.c (default_read_var_value): Likewise.
2898         * inline-frame.c (inline_frame_this_id): Likewise.
2899         (skip-inline_frames): Likewise.
2900         * infcmd.c (until_next_command): Likewise.
2901         * linespec.c (convert_linespec_to_sals): Likewise.
2902         * parse.c (parse_exp_in_context_1): Likewise.
2903         * printcmd.c (build_address_symbolic): likewise.
2904         (info_address_command): Likewise.
2905         symtab.c (find_function_start_sal): Likewise.
2906         (skip_prologue_sal): Likewise.
2907         (find_function_alias_target): Likewise.
2908         (find_gnu_ifunc): Likewise.
2909         * stack.c (find_frame_funname): Likewise.
2910         * symtab.c (fixup_symbol_section): Likewise.
2911         (find_function_start_sal): Likewise.
2912         (skip_prologue_sal): Likewsie.
2913         (find_function_alias_target): Likewise.
2914         (find_gnu_ifunc): Likewise.
2915         * tracepoint.c (info_scope_command): Likewise.
2916         * value.c (value_fn_field): Likewise.
2917
2918         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
2919         in place of find_pc_partial_function.
2920         * blockframe.c (find_function_entry_range_from_pc): New function.
2921         * symtab.h (find_function_entry_range_from_pc): Declare and document.
2922         * objfiles.c (objfile_relocate1): Relocate start and end addresses
2923         for each range in a block.
2924
2925
2926 2018-08-23  Xavier Roirand  <roirand@adacore.com>
2927
2928         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
2929         incrementation.
2930
2931 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2932
2933         * solib-svr4.c (read_program_headers_from_bfd): Return
2934         gdb::optional<gdb::byte_vector>.
2935         (svr4_exec_displacement): Adjust.
2936
2937 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2938
2939         * solib-svr4.c (read_program_header): Return
2940         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
2941         (find_program_interpreter): Return
2942         gdb::optional<gdb::byte_vector>.
2943         (scan_dyntag_auxv): Adjust.
2944         (enable_break): Adjust.
2945         (svr4_exec_displacement): Adjust.
2946
2947 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2948
2949         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
2950         * inf-child.c (inf_child_target::terminal_save_inferior): New.
2951
2952 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2953
2954         * guile/scm-string.c (gdbscm_scm_from_printf): Use
2955         string_vprintf.
2956         * guile/scm-utils.c (gdbscm_printf): Likewise.
2957         * serial.c (serial_printf): Likewise.
2958         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
2959
2960 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
2961
2962         * stack.c (print_frame): Print frame architecture when printing on
2963         an MI output.
2964         * NEWS: Mention new "arch" attribute in frame output.
2965
2966 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
2967
2968         * arch/aarch64.h (aarch64_regnum): Update comment.
2969
2970 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
2971
2972         * NEWS: Add SVE to 8.2 section.
2973
2974 2018-08-21  Pedro Alves  <palves@redhat.com>
2975
2976         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
2977         out from gdbscm_parse_function_args.
2978         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
2979         gdbscm_parse_function_args_1.
2980
2981 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
2982
2983         PR gdb/17816
2984         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
2985         operator.
2986
2987 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
2988
2989         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
2990
2991 2018-08-19  Michael Spang  <spang@google.com>
2992
2993         PR gdb/11786
2994         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
2995         for PT_TLS segments.
2996
2997 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
2998
2999         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
3000         dwarf_variable_value.
3001         * dwarf2-frame.c (class dwarf_expr_executor):
3002         Add override for dwarf_variable_value.
3003         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
3004         (class symbol_needs_eval_context): Likewise.
3005         (indirect_synthetic_pointer): Add forward declaration.
3006         (sect_variable_value): New function.
3007         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
3008         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
3009         for DW_OP_GNU_variable_value.
3010
3011 2018-08-16  Tom Tromey  <tom@tromey.com>
3012
3013         * top.c (read_command_file): Update.
3014         (command_line_input): Remove "repeat" argument.
3015         * ada-lang.c (get_selections): Update.
3016         * linespec.c (decode_line_2): Update.
3017         * defs.h (command_line_input): Remove argument.
3018         * cli/cli-script.c (read_next_line): Update.
3019         * python/py-gdb-readline.c: Update.
3020
3021 2018-08-17  Tom Tromey  <tom@tromey.com>
3022
3023         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
3024         command_line_input.
3025
3026 2018-08-15  Tom Tromey  <tom@tromey.com>
3027
3028         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
3029
3030 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
3031
3032         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
3033         If used, use find_pc_partial_function to find address range
3034         to disassemble.
3035         * mi/mi-main.c (mi_cmd_list_features): Report
3036         "data-disassemble-a-option" feature.
3037         * NEWS: Mention new -data-disassemble option -a.
3038
3039 2018-08-13  Tom Tromey  <tom@tromey.com>
3040
3041         * common/common-defs.h (_FORTIFY_SOURCE): Define.
3042
3043 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3044
3045         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
3046         (aarch64_linux_collect_sve_regset): Likewise.
3047         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
3048         * regcache.h (regcache_map_entry_size): New function.
3049
3050 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3051
3052         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
3053         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
3054         (SVE_HEADER_VL_LENGTH): Likewise.
3055         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
3056         (SVE_HEADER_FLAGS_LENGTH): Likewise.
3057         (SVE_HEADER_RESERVED_LENGTH): Likewise.
3058         (SVE_HEADER_SIZE_OFFSET): Likewise.
3059         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
3060         (SVE_HEADER_VL_OFFSET): Likewise.
3061         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
3062         (SVE_HEADER_FLAGS_OFFSET): Likewise.
3063         (SVE_HEADER_RESERVED_OFFSET): Likewise.
3064         (SVE_HEADER_SIZE): Likewise.
3065         (aarch64_linux_core_read_vq): Add function.
3066         (aarch64_linux_core_read_description): Check for SVE section.
3067
3068 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3069
3070         * aarch64-fbsd-tdep.c
3071         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
3072         collect_size.
3073         * aarch64-linux-tdep.c
3074         (aarch64_linux_iterate_over_regset_sections): Likewise.
3075         * alpha-linux-tdep.c
3076         (alpha_linux_iterate_over_regset_sections):
3077         * alpha-nbsd-tdep.c
3078         (alphanbsd_iterate_over_regset_sections): Likewise.
3079         * amd64-fbsd-tdep.c
3080         (amd64fbsd_iterate_over_regset_sections): Likewise.
3081         * amd64-linux-tdep.c
3082         (amd64_linux_iterate_over_regset_sections): Likewise.
3083         * arm-bsd-tdep.c
3084         (armbsd_iterate_over_regset_sections): Likewise.
3085         * arm-fbsd-tdep.c
3086         (arm_fbsd_iterate_over_regset_sections): Likewise.
3087         * arm-linux-tdep.c
3088         (arm_linux_iterate_over_regset_sections): Likewise.
3089         * corelow.c (get_core_registers_cb): Likewise.
3090         (core_target::fetch_registers): Likewise.
3091         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
3092         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
3093         * gdbarch.h (void): Regenerate.
3094         * gdbarch.sh: Add supply_size and collect_size.
3095         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
3096         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
3097         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
3098         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
3099         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
3100         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
3101         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
3102         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
3103         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
3104         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
3105         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
3106         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
3107         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
3108         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
3109         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
3110         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
3111         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
3112         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
3113         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
3114         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
3115         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
3116         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
3117         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
3118         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
3119         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
3120         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
3121         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
3122         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
3123         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
3124         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
3125
3126 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
3127
3128         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
3129         with string_printf.
3130
3131 2018-08-10  Keith Seitz  <keiths@redhat.com>
3132
3133         * compile/compile-c-support.c (add_code_header, add_code_footer):
3134         Move into policy class.
3135         (c_push_user_expression, pop_user_expression_nop)
3136         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
3137         (compile_program): New host class.
3138         (c_compile_program): New typedef.
3139         (c_compute_porgram): Use c_compile_program.
3140
3141 2018-08-10  Keith Seitz  <keiths@redhat.com>
3142
3143         * compile/compile-internal.h (compile_instance::~compile_instance):
3144         Remove calls to htab_delete.
3145         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
3146         * compile.c (compile_instance::compile_instance): Initialize
3147         htab unique pointers.
3148         (compile_instance::get_cached_type, compile_instance::insert_type)
3149         (compile_instance::error_symbol_once): Update for unique_ptr.
3150
3151 2018-08-10  Keith Seitz  <keiths@redhat.com>
3152
3153         * compile/compile-c-symbols.c (struct symbol_error)
3154         (hash_symbol_error, eq_symbol_error, del_symbol_error)
3155         (compile_instance::insert_symbol_error)
3156         (compile_instance::error_symbol_once): Move to ...
3157         * compile/compile.c: ... here.
3158
3159 2018-08-10  Keith Seitz  <keiths@redhat.com>
3160
3161         * compile/compile-c-support.c (c_get_compile_context): Use `new'
3162         instead of `new_compile_instance'.
3163         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
3164         Update description.
3165         If the symbol error map is not initialized, create it.
3166         (generate_c_for_for_one_symbol): Do not check/initialize
3167         the symbol error map.
3168         * compile/compile-c-types.c (compile_c_instance): Make a class.
3169         Update all callers.
3170         (compile_instance::compile_instance): Initialize the type cache.
3171         (get_cached_type): New function.
3172         (insert_type): Update description.
3173         (compile_c_instance::m_default_cflags): Define.
3174         (convert_type): Update description.  Use get_cached_type.
3175         (delete_instance): Moved to destructor.
3176         (new_compile_instance): Moved to constructor.
3177         * compile/compile-c.h (compile_c_instance): Make class inheriting
3178         from compile_instance.
3179         <base>: Remove field.
3180         <type_map, symbol_err_map>: Move to base class.
3181         <c_plugin>: Rename to `m_plugin' and remove pointer type.
3182         * compile/compile-internal.h (compile_instance): Make class.
3183         <type_map_t, symbol_err_map_t>: Define.
3184         <fe>: Rename to `m_gcc_fe'.
3185         <scope, block, gcc_target_options>: Add `m_' prefix.
3186         <m_type_map, m_symbol_err_map>: New fields, moved from
3187         compile_c_instance.
3188         <destroy>: Remove.
3189         (convert_type, new_compile_instance): Remove.
3190         * compile/compile.c (cleanup_compile_instance): Remove.
3191         (compile_to_object): Use unique_ptr to eliminate cleanups.
3192         (compile_instance::set_print_callback, compile_instance::version)
3193         (compile_instance::set_verbose)
3194         (compile_instance::set_driver_filename)
3195         (compile_instance::set_triplet_regexp)
3196         (compile_instance::set_arguments)
3197         (compile_instance::set_source_file)
3198         (compile_instance::compile): Define.
3199
3200 2018-08-10  Keith Seitz  <keiths@redhat.com>
3201
3202         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
3203         * compile/compile-c-types.c: Define GCC_METHODN macros and include
3204         gcc-c-fe.def to define C plugin.
3205         (delete_instance): Delete `c_plugin'.
3206         (new_compile_instance): Initialize `c_plugin'.
3207         * compile/compile-c.h: Include gcc_c_plugin.h.
3208         (struct compile_c_instance) <c_plugin>: New member.
3209         * gcc-c-plugin.h: New file.
3210         Update all callers with API change.
3211
3212 2018-08-10  Keith Seitz  <keiths@redhat.com>
3213
3214         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
3215         (HFILES_NO_SRCDIR): ... to here.
3216         Add compile-internal.h and compile-c.h.
3217         * compile/compile-c-support.c: Include compile-c.h.
3218         * compile/compile-c-symbols.c: Include compile-c.h.
3219         (generate_c_for_variable_locations): Update comment.
3220         * compile/compile-c-types.c: Include compile-c.h.
3221         * compile/compile-c.h: New file -- moved C language declarations
3222         from other files here.
3223         * compile/compile-internal.h: Do not include hashtab.h or
3224         common/enum-flags.h.
3225         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
3226         (gcc_convert_symbol, gcc_symbol_address)
3227         (generate_c_for_variable_locations, c_get_mode_for_size)
3228         (c_get_range_decl_name): Definitions moved to compile-c.h.
3229         * compile/compile-loc2c.c: Include compile-c.h.
3230
3231 2018-08-10  Keith Seitz  <keiths@redhat.com>
3232
3233         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
3234         (c_symbol_substitution_name): ... this.
3235         Update all callers.
3236
3237 2018-08-10  Keith Seitz  <keiths@redhat.com>
3238
3239         * compile/compile-c-support.c (c_compute_program): Use
3240         unique_xmalloc_ptr to eliminate cleanup.
3241         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
3242         Return a unique_xmalloc_ptr and eliminate cleanup.
3243         * compile/compile-internal.h (generate_c_for_variable_locations):
3244         Return unique_xmalloc_ptr and update description.
3245
3246 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
3247
3248         * corelow.c (core_target::get_core_register_section): Rename
3249         min_size to section_min_size.
3250
3251 2018-08-09  Jim Wilson  <jimw@sifive.com>
3252
3253         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
3254         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
3255         * NEWS: Mention new GNU/Linux RISC-V target.
3256         * configure.host: Add riscv*-*-linux*.
3257         * configure.nat: Add riscv*.
3258         * configure.tgt: Add riscv*-*-linux*.
3259         * riscv-linux-nat.c: New file.
3260         * riscv-linux-tdep.c: New file.
3261
3262 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3263
3264         * infrun.c (resume): Make static, add forward declaration.
3265         (proceed): Update header comment.
3266         * infrun.h (resume): Delete declaration.
3267
3268 2018-08-09  Tom Tromey  <tom@tromey.com>
3269
3270         * riscv-tdep.h: Minor formatting fixes.
3271
3272 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
3273
3274         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
3275         * dwarf-index-cache.c (create_dir_and_check): Likewise.
3276         (test_mkdir_recursive): Likewise.
3277         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
3278
3279 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3280
3281         * valarith.c (value_subscripted_rvalue): If an array is not in
3282         memory, and we don't know the upper bound, then we can't know that
3283         the requested element exists or not.
3284
3285 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
3286
3287         * target.c (str_comma_list_concat_elem): Fix typo in comment.
3288         (target_options_to_string): Add comment.
3289
3290 2018-08-08  Tom Tromey  <tom@tromey.com>
3291
3292         * unittests/scoped_mmap-selftests.c: Check result of "write".
3293
3294 2018-08-08  Jim Wilson  <jimw@sifive.com>
3295
3296         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
3297         (decode_register_index_short): New.
3298         (decode_j_type_insn, decode_cj_type_insn): New.
3299         (decode_b_type_insn, decode_cb_type_insn): New.
3300         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
3301         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
3302         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
3303         is_c_sw_insn instead of is_sw_insn.
3304         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
3305         (riscv_software_single_step): New.
3306         * riscv-tdep.h (riscv_software_single_step): Declare.
3307
3308         * riscv-tdep.c (riscv_isa_xlen): Drop static.
3309         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
3310
3311 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
3312
3313         PR gdb/18050:
3314         * target.c (dispose_inferior): Don't dispose of inferiors that are
3315         already killed.
3316
3317 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
3318
3319         * remote.c (remote_target::download_tracepoint): Change char* to
3320         const char*.
3321
3322 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
3323
3324         * target.h (target_options_to_string): Return an std::string.
3325         * target.c (str_comma_list_concat_elem): Return void, use
3326         std::string.
3327         (do_option): Likewise.
3328         (target_options_to_string): Return an std::string.
3329         * linux-nat.c (linux_nat_target::wait): Adjust.
3330         * target-debug.h (target_debug_print_options): Adjust.
3331
3332 2018-08-07  Tom Tromey  <tom@tromey.com>
3333
3334         * Makefile.in (CPPFLAGS): New variable.
3335         (INTERNAL_CPPFLAGS): Use it.
3336
3337 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3338
3339         * NEWS: Mention the index cache.
3340
3341 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3342
3343         * common/pathstuff.h (get_standard_cache_dir): New.
3344         * common/pathstuff.c (get_standard_cache_dir): New.
3345         * build-id.h (build_id_to_string): New.
3346         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
3347         DEBUG_STR_SUFFIX): Move to here.
3348         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
3349         DEBUG_STR_SUFFIX): Move from there.
3350         (write_psymtabs_to_index): Make non-static, add basename
3351         parameter.  Write to temporary files, rename when done.
3352         (save_gdb_index_command): Adjust call to
3353         write_psymtabs_to_index.
3354         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
3355         field.
3356         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
3357         (get_gdb_index_contents_from_cache): New.
3358         (get_gdb_index_contents_from_cache_dwz): New.
3359         (dwarf2_initialize_objfile): Read index from cache.
3360         (dwarf2_build_psymtabs): Save to index.
3361         * dwarf-index-cache.h: New file.
3362         * dwarf-index-cache.c: New file.
3363         * dwarf-index-write.h: New file.
3364
3365 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3366
3367         * gnulib/aclocal.m4: Re-generate.
3368         * gnulib/config.in: Re-generate.
3369         * gnulib/configure: Re-generate.
3370         * gnulib/import/Makefile.am: Re-generate.
3371         * gnulib/import/Makefile.in: Re-generate.
3372         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3373         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3374         * gnulib/import/m4/mkdir.m4: New file.
3375         * gnulib/import/mkdir.c: New file.
3376         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
3377         module.
3378
3379 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3380
3381         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
3382         * common/scoped_mmap.c: New file.
3383         * common/scoped_mmap.h (destroy): New method.
3384         (~scoped_mmap, reset): Use destroy.
3385         (scoped_mmap): New move constructor.
3386         (mmap_file): New declaration.
3387         * unittests/scoped_mmap-selftests.c (test_normal,
3388         test_invalid_filename, run_tests): New functions.
3389         (_initialize_scoped_mmap_selftests): Register selftest.
3390
3391 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3392
3393         * dwarf2read.c (read_gdb_index_from_section): Rename to...
3394         (read_gdb_index_from_buffer): ... this.  Remove section
3395         parameter, add buffer parameter.
3396         (get_gdb_index_contents_ftype,
3397         get_gdb_index_contents_dwz_ftype): New typedefs.
3398         (dwarf2_read_gdb_index): Add callback parameters to get the
3399         index contents.
3400         (get_gdb_index_contents_from_section): New.
3401         (dwarf2_initialize_objfile): Update call to
3402         dwarf2_read_gdb_index.
3403
3404 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3405
3406         * common/filestuff.h (gdb_fopen_cloexec): New overload.
3407         (gdb_open_cloexec): Likewise.
3408         * nat/linux-osdata.c (command_from_pid): Use string_printf.
3409         (commandline_from_pid): Likewise.
3410         (linux_xfer_osdata_threads): Likewise.
3411         (linux_xfer_osdata_fds): Likewise.
3412         * ada-lang.c (is_package_name): Likewise.
3413         * auxv.c (procfs_xfer_auxv): Likewise.
3414         * breakpoint.c (print_one_breakpoint_location): Use
3415         uiout::field_fmt.
3416         (print_one_catch_solib): Use string_printf.
3417         * coff-pe-read.c (add_pe_exported_sym): Likewise.
3418         (add_pe_forwarded_sym): Likewise.
3419         * dwarf2read.c (create_type_unit_group): Likewise.
3420         (build_error_marker_type): Likewise.
3421         * infcall.c (get_function_name): Likewise.
3422         * valprint.c (print_converted_chars_to_obstack): Likewise.
3423         * xtensa-tdep.c (xtensa_register_type): Likewise.
3424
3425 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
3426
3427         * remote.c (remote_target::download_tracepoint): Fix format
3428         string errors.
3429
3430 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3431
3432         * tracefile.c: Include common/byte-vector.h.
3433         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
3434         with trace_regblock_size if needed.  Update uses of buf.
3435
3436 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3437
3438         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
3439         std::vector<unsigned char>.
3440         * tracepoint.c (collection_list::collection_list): Remove
3441         m_regs_mask initializer from initializer list.  Resize
3442         m_regs_mask using the largest remote register number.
3443         (collection_list::add_remote_register): Remove size check on
3444         m_regs_mask.  Use at to access element.
3445         (collection_list::stringify): Change type of temp_buf to
3446         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
3447         stringify the register mask.  Use pack_hex_byte for the register
3448         mask.
3449
3450 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3451
3452         * tracepoint.h (class collection_list) <add_register>: Remove.
3453         <add_remote_register, add_ax_registers, add_local_register>:
3454         Declare.
3455         <add_memrange>: Add scope parameter.
3456         * tracepoint.c (encode_actions_1): Likewise.
3457         (collection_list::add_register): Rename to ...
3458         (collection_list::add_remote_register): ... this.  Update
3459         comment.
3460         (collection_list::add_ax_registers, add_local_register): New
3461         methods.
3462         (collection_list::add_memrange): Add scope parameter.  Call
3463         add_local_register instead of add_register.
3464         (finalize_tracepoint_aexpr): New function.
3465         (collection_list::collect_symbol): Update calls to add_memrange.
3466         Call add_local_register instead of add_register.  Call
3467         add_ax_registers.  Call finalize_tracepoint_aexpr.
3468         (encode_actions_1): Get remote regnos for $reg action.  Call
3469         add_remote_register, add_ax_registers, and add_local_register.
3470         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
3471         (validate_actionline): Call finalize_tracepoint_aexpr.
3472
3473 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3474
3475         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
3476         Replace array buf with gdb::char_vector buf, of size
3477         get_remote_packet_size ().  Replace references to buf and
3478         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
3479         and xsnprintf with snprintf.  Raise errors if the buffer is too
3480         small.
3481
3482 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3483
3484         * remote.c (remote_target::download_tracepoint): Fix the has_more
3485         predicate in the QTDP action list iteration.
3486
3487 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3488
3489         * remote.c (remote_target::download_tracepoint): Fix indentation
3490         in for block.
3491
3492 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3493
3494         * proc-api.c (_initialize_proc_api): Remove c, unused.
3495         * procfs.c (procfs_init_inferior): Remove signals, unused.
3496         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
3497         unused.
3498
3499 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
3500             Andrew Burgess  <andrew.burgess@embecosm.com>
3501
3502         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
3503         'W_STOPCODE (0)' as this could be ambiguous.
3504
3505 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
3506
3507         * ser-tcp.c (net_open): Fix thinko when deciding whether to
3508         disable TCP's Nagle algorithm (use "ai_protocol" instead of
3509         "ai_socktype").
3510
3511 2018-08-02  Tom Tromey  <tom@tromey.com>
3512
3513         PR symtab/16842.
3514         * dwarf2read.c (read_func_scope): Set symtab on template parameter
3515         symbols.
3516         (process_structure_scope): Likewise.
3517
3518 2018-08-02  Xavier Roirand  <roirand@adacore.com>
3519
3520         PR gdb/22629:
3521         * darwin-nat.c (darwin_kill_inferior): Fix handling of
3522         kill inferior.
3523
3524 2018-08-02  Tom Tromey  <tom@tromey.com>
3525
3526         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
3527         (darwin_suspend_inferior, darwin_resume_inferior)
3528         (darwin_decode_notify_message, darwin_resume_inferior_threads)
3529         (darwin_check_new_threads): Check result of get_darwin_inferior.
3530
3531 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
3532
3533         GDB 8.1.1 released.
3534
3535 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
3536
3537         * varobj.c (varobj_get_path_expr_parent): Report an error if
3538         parent is a dynamic varobj.
3539
3540 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3541
3542         * gnulib/aclocal.m4: Re-generate.
3543         * gnulib/config.in: Re-generate.
3544         * gnulib/configure: Re-generate.
3545         * gnulib/import/Makefile.in: Re-generate.
3546         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3547         * gnulib/import/m4/onceonly.m4: Re-generate.
3548
3549 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3550
3551         * target-descriptions.c (struct xml_test_tdesc): New.
3552         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
3553         (record_xml_tdesc): Update.
3554         (maintenance_check_xml_descriptions): Update.
3555         * target-descriptions.h (record_xml_tdesc): Update comment.
3556
3557 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3558
3559         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
3560         checking array bounds are defined.
3561
3562 2018-07-30  Tom Tromey  <tom@tromey.com>
3563
3564         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
3565         irreflexivity violation.
3566
3567 2018-07-30  Tom Tromey  <tom@tromey.com>
3568
3569         * cli/cli-decode.c (lookup_cmd): Remove lint code.
3570         * value.c (unpack_long): Remove lint code.
3571         * valops.c (value_ind): Remove lint code.
3572         * valarith.c (value_x_binop, value_x_unop, value_equal)
3573         (value_pos): Remove lint code.
3574
3575 2018-07-28  Tom de Vries  <tdevries@suse.de>
3576
3577         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
3578         with undefined upper bound as <optimized out>.
3579
3580 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
3581
3582         * gcore.in: Rename variable "name" to "prefix".  Expand
3583         "usage" text.
3584
3585 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
3586
3587         * windows-nat.c (windows_nat_target::create_inferior): Update to
3588         call close() in global namespace.
3589
3590 2018-07-26  Tom Tromey  <tom@tromey.com>
3591
3592         * dwarf-index-write.c (add_address_entry): Don't add objfile
3593         offsets.
3594         * dbxread.c (find_stab_function): Rename from
3595         find_stab_function_addr.  Return a bound_minimal_symbol.
3596         (read_dbx_symtab): Use raw_text_low, raw_text_high.
3597         Don't add objfile offsets.
3598         (end_psymtab): Use raw_text_low, raw_text_high,
3599         MSYMBOL_VALUE_RAW_ADDRESS.
3600         (read_ofile_symtab): Update.
3601         (process_one_symbol): Update.
3602         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
3603         offsets.
3604         (dw2_relocate): Remove.
3605         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
3606         searching addrmap.
3607         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
3608         Update.
3609         (process_psymtab_comp_unit_reader, add_partial_symbol)
3610         (add_partial_subprogram, dwarf2_ranges_read): Update.
3611         (load_partial_dies): Update.
3612         (add_address_entry): Don't add objfile offsets.
3613         (dwarf2_build_include_psymtabs): Update.
3614         (create_addrmap_from_aranges): Don't add objfile offsets.
3615         (dw2_find_pc_sect_compunit_symtab): Update.
3616         * mdebugread.c (parse_symbol): Don't add objfile offsets.
3617         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
3618         Update.
3619         (parse_partial_symbols): Don't add objfile offsets.  Use
3620         raw_text_low, raw_text_high.  Update.
3621         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
3622         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
3623         or call 'relocate' quick function.  Clear psymbol_map.
3624         * psympriv.h (struct partial_symbol) <address>: Add section
3625         offset.
3626         <set_unrelocated_address>: Rename from set_address.
3627         <raw_text_low, raw_text_high>: New methods.
3628         <text_low, text_high>: Add objfile parameter.
3629         (add_psymbol_to_bcache): Add 'section' parameter.  Call
3630         set_unrelocated_address.
3631         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3632         (find_pc_psymbol): Update.
3633         (fixup_psymbol_section, relocate_psymtabs): Remove.
3634         (dump_psymtab, psym_functions): Update.
3635         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
3636         parameter.
3637         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
3638         (start_psymtab_common): Update.
3639         * symfile-debug.c (debug_qf_relocate): Remove.
3640         (debug_sym_quick_functions): Update.
3641         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
3642         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
3643         Update.
3644
3645 2018-07-26  Tom Tromey  <tromey@redhat.com>
3646
3647         * dbxread.c (end_psymtab): Use text_high_valid and
3648         text_low_valid.
3649         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
3650         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
3651         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3652         Update comment.
3653         <text_low_valid, text_high_valid>: New fields.
3654         <set_text_low, set_text_high>: Update.
3655         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
3656
3657 2018-07-26  Tom Tromey  <tom@tromey.com>
3658
3659         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
3660         Update.
3661         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
3662         textlow and texthigh fields.
3663         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
3664         Update.
3665         * mdebugread.c (parse_lines, parse_partial_symbols)
3666         (psymtab_to_symtab_1): Update.
3667         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3668         Rename fields.  Update comment.  Now private.
3669         <text_low, text_high, set_text_low, set_text_high>: New methods.
3670         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3671         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
3672         (start_psymtab_common, maintenance_info_psymtabs)
3673         (maintenance_check_psymtabs): Update.
3674         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
3675         texthigh fields.
3676         (scan_xcoff_symtab): Update.
3677
3678 2018-07-26  Tom Tromey  <tromey@redhat.com>
3679
3680         * psympriv.h (struct partial_symbol) <unrelocated_address,
3681         address, set_address>: New methods.
3682         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
3683         (fixup_psymbol_section, relocate_psymtabs): Update.
3684         (print_partial_symbols): Add 'objfile' parameter.  Update.
3685         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
3686         Update.
3687
3688 2018-07-26  Tom Tromey  <tom@tromey.com>
3689
3690         * dwarf-index-write.c (write_psymbols, debug_names::insert)
3691         (debug_names::write_psymbols): Update.
3692         * psympriv.h (struct partial_symbol): Derive from
3693         general_symbol_info.
3694         <obj_section>: New method.
3695         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
3696         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3697         (find_pc_sect_psymbol, fixup_psymbol_section)
3698         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
3699         (print_partial_symbols, recursively_search_psymtabs)
3700         (compare_psymbols, psymbol_hash, psymbol_compare)
3701         (add_psymbol_to_bcache, maintenance_check_psymtabs)
3702         (psymbol_name_matches, psym_fill_psymbol_map): Update.
3703
3704 2018-07-26  Tom Tromey  <tromey@redhat.com>
3705
3706         * dbxread.c (end_psymtab): Remove dead code.
3707
3708 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
3709
3710         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
3711         DWARF unwinders are disabled.
3712         * dwarf2-frame.c: Add dwarf2read.h include.
3713         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
3714         disabled.
3715         (dwarf2_frame_unwinders_enabled_p): Define.
3716         (show_dwarf_unwinders_enabled_p): New function.
3717         (_initialize_dwarf2_frame): Register switch to control DWARF
3718         unwinder use.
3719         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
3720         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
3721         (show_dwarf_cmdlist): Remove static keyword.
3722         * dwarf2read.h (set_dwarf_cmdlist): Declare.
3723         (show_dwarf_cmdlist): Declare.
3724         * NEWS: Document new feature.
3725
3726 2018-07-26  Tom de Vries  <tdevries@suse.de>
3727
3728         PR breakpoints/23366
3729         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
3730
3731 2018-07-26  Tom de Vries  <tdevries@suse.de>
3732
3733         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
3734         DW_AT_count can't be translated to a dynamic prop.
3735
3736 2018-07-25  Tom de Vries  <tdevries@suse.de>
3737
3738         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
3739         try/catch.
3740
3741 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
3742
3743         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
3744
3745 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
3746
3747         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
3748
3749 2018-07-24  Keith Seitz  <keiths@redhat.comt
3750
3751         PR symtab/23010
3752         * dwarf2read.c (dw2_add_symbol_to_list): New function.
3753         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
3754         instead of add_symbol_to_list.
3755         (read_file_scope): Call prepare_one_comp_unit before reading
3756         any other DIEs.
3757
3758 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
3759
3760         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
3761
3762 2018-07-24  Tom Tromey  <tom@tromey.com>
3763
3764         * utils.c (malloc, realloc, free): Don't declare.
3765         * configure, config.in: Rebuild.
3766         * configure.ac: Don't check for declarations of free, malloc, or
3767         realloc.
3768
3769 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3770
3771         * aarch64-linux-nat.c
3772         (aarch64_linux_nat_target::stopped_data_address): Remove unused
3773         variable.
3774         * arm-linux-nat.c (fetch_regs): Likewise.
3775         (store_regs): Likewise.
3776         (fetch_vfp_regs): Likewise.
3777         (store_vfp_regs): Likewise.
3778         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
3779         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
3780         (arm_linux_nat_target::insert_watchpoint): Likewise.
3781         (arm_linux_nat_target::remove_watchpoint): Likewise.
3782         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
3783         Likewise.
3784         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
3785         Likewise.
3786         * ppc-linux-nat.c (fetch_register): Likewise.
3787         (fetch_all_gp_regs): Likewise.
3788         (fetch_ppc_registers): Likewise.
3789         (store_all_gp_regs): Likewise.
3790         (store_ppc_registers): Likewise.
3791         (hwdebug_insert_point): Likewise.
3792         (can_use_watchpoint_cond_accel): Likewise.
3793         * remote-sim.c (gdb_os_write_stdout): Likewise.
3794
3795 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3796             Tom Tromey  <tom@tromey.com>
3797
3798         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
3799         test for it.
3800         * configure: Rebuild.
3801
3802 2018-07-22  Tom Tromey  <tom@tromey.com>
3803
3804         * regformats/regdat.sh: Define xmltarget_${name} inside
3805         #ifndef IN_PROCESS_AGENT.
3806
3807 2018-07-22  Tom Tromey  <tom@tromey.com>
3808
3809         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
3810
3811 2018-07-22  Tom Tromey  <tom@tromey.com>
3812
3813         * symfile.c (reread_symbols): Notify iter, not objfile.
3814
3815 2018-07-22  Tom Tromey  <tom@tromey.com>
3816
3817         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
3818         Use arch_ops.
3819         (ravenscar_thread_target::prepare_to_store): Likewise.
3820
3821 2018-07-22  Tom Tromey  <tom@tromey.com>
3822
3823         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
3824         unused variable.  Call value_fetch_lazy when needed.
3825         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
3826         Remove unused variable.  Call value_fetch_lazy when needed.
3827
3828 2018-07-22  Tom Tromey  <tom@tromey.com>
3829
3830         * m32c-tdep.c (mark_dma): Return void.
3831         (make_regs): Remove unused declarations.
3832
3833 2018-07-22  Tom Tromey  <tom@tromey.com>
3834
3835         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
3836         cmdscm_get_valid_command_smob_arg_unsafe for effect.
3837         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
3838         bkscm_get_valid_block_smob_arg_unsafe for effect.
3839
3840 2018-07-22  Tom Tromey  <tom@tromey.com>
3841
3842         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
3843         value_type.
3844
3845 2018-07-22  Tom Tromey  <tom@tromey.com>
3846
3847         * windows-nat.c (saved_context): Conditionally define.
3848         * remote.c (remote_target::remote_btrace_maybe_reopen):
3849         Conditionally declare "warned".
3850         * inflow.c (sigquit_ours): Conditionally define.
3851         (new_tty): Move "tty" declaration inside #if.
3852         * guile/guile.c (guile_datadir): Conditionally define.
3853         * charset.c (set_be_le_names): Move some declarations inside #if.
3854         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
3855         #if.
3856         (parse_xml_btrace_conf): Likewise.
3857
3858 2018-07-22  Tom Tromey  <tom@tromey.com>
3859
3860         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
3861
3862 2018-07-22  Tom Tromey  <tom@tromey.com>
3863
3864         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
3865         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
3866         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
3867         * buildsym-legacy.c (get_macro_table): Remove unused variable.
3868         * stack.c (frame_apply_level_command): Remove unused variable.
3869         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
3870         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
3871         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
3872         unused variable.
3873         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
3874         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
3875         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
3876         variable.
3877         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
3878         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
3879         variable.
3880         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
3881         Remove unused variable.
3882         * cli/cli-script.c (recurse_read_control_structure): Remove unused
3883         variable.
3884         * common/tdesc.c (print_xml_feature::visit): Remove unused
3885         variable.
3886         * compile/compile-object-load.c (store_regs): Remove unused
3887         variables.
3888         * complaints.c (clear_complaints): Remove unused variable.
3889         * corelow.c (core_target_open): Remove unused variable.
3890         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
3891         variable.
3892         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
3893         variable.
3894         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
3895         variable.
3896         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
3897         variable.
3898         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
3899         variable.
3900         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
3901         variable.
3902         * ia64-tdep.c (examine_prologue): Remove unused variable.
3903         * infcall.c (run_inferior_call): Remove unused variable.
3904         * inferior.c (exit_inferior): Remove unused variable.
3905         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
3906         * linespec.c (decode_line_2): Remove unused variable.
3907         * linux-nat.c (super_close): Remove.
3908         * linux-tdep.c (linux_info_proc): Remove unused variable.
3909         * mi/mi-main.c (mi_execute_command): Remove unused variable.
3910         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
3911         Remove unused variable.
3912         * parse.c (find_minsym_type_and_address): Remove unused variable.
3913         * printcmd.c (info_symbol_command, printf_floating): Remove unused
3914         variable.
3915         * python/py-breakpoint.c (bppy_set_commands): Remove unused
3916         variable.
3917         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
3918         variables.
3919         * record-btrace.c (record_btrace_target::store_registers): Remove
3920         unused variable.
3921         (cmd_show_record_btrace_cpu): Remove unused variable.
3922         * riscv-tdep.c (riscv_register_reggroup_p)
3923         (riscv_push_dummy_call, riscv_return_value): Remove unused
3924         variable.
3925         * rust-exp.y (literal): Remove unused variable.
3926         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
3927         unused variable.
3928         <STRUCTOP_ANONYMOUS>: Likewise.
3929         * s390-linux-tdep.c (s390_linux_init_abi_31)
3930         (s390_linux_init_abi_64): Remove unused variable.
3931         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
3932         (file_select_thread, net_windows_open, _initialize_ser_windows):
3933         Remove unused variables.
3934         * symtab.c (find_pc_sect_line): Remove unused variable.
3935         * target-memory.c (compute_garbled_blocks): Remove unused
3936         variable.
3937         (target_write_memory_blocks): Remove unused variable.
3938         * target.c (target_stack::unpush): Remove unused variables.
3939         * tracepoint.c (start_tracing, all_tracepoint_actions)
3940         (merge_uploaded_trace_state_variables)
3941         (print_one_static_tracepoint_marker): Remove unused variable.
3942         * unittests/basic_string_view/element_access/char/1.cc (test01):
3943         Remove unused variable.
3944         * windows-nat.c (windows_continue, windows_add_all_dlls)
3945         (do_initial_windows_stuff, windows_nat_target::create_inferior):
3946         Remove unused variables.
3947
3948 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
3949
3950         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
3951         attr_profile in HAVE_ELF.
3952         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
3953         HAVE_ELF.
3954
3955 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
3956
3957         * frame.c (frame_register_unwind): Change parameter name.
3958         (frame_unwind_register): Likewise.
3959         (frame_unwind_register_value): Likewise.
3960         (frame_unwind_register_signed): Likewise.
3961         (frame_unwind_register_unsigned): Likewise.
3962         * frame.h (frame_register_unwind): Likewise.
3963         (frame_unwind_register): Likewise.
3964         (frame_unwind_register_value): Likewise.
3965         (frame_unwind_register_signed): Likewise.
3966         (frame_unwind_register_unsigned): Likewise.
3967         (frame_unwind_arch): Likewise.
3968
3969 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
3970
3971         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
3972         ISA maintenance.
3973
3974 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
3975
3976         * mips-linux-nat.c (mips_linux_nat_target::read_description):
3977         Call `get_ptrace_pid' rather than extracting the ptrace PID by
3978         hand.
3979
3980 2018-07-20  Keith Seitz  <keiths@redhat.com>
3981
3982         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
3983         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
3984         m_compunit_symtab, m_language>: Add "m_" prefix.
3985         Update all uses.
3986         * buildsym.c: Update all uses.
3987
3988 2018-07-20  Tom Tromey  <tom@tromey.com>
3989
3990         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
3991         * buildsym.h (record_line_ftype): Remove typedef.
3992
3993 2018-07-20  Tom Tromey  <tom@tromey.com>
3994
3995         * buildsym-legacy.h (augment_type_symtab): Don't declare.
3996         (end_expandable_symtab): Likewise.
3997         (end_symtab_get_static_block): Likewise.
3998         (end_symtab_from_static_block): Likewise.
3999         * buildsym-legacy.c (augment_type_symtab): Remove.
4000         (end_expandable_symtab): Remove.
4001         (end_symtab_get_static_block): Remove.
4002         (end_symtab_from_static_block): Remove.
4003
4004 2018-07-20  Tom Tromey  <tom@tromey.com>
4005
4006         * dwarf2read.c: Include buildsym.h.
4007         (struct dwarf2_cu) <builder>: New method.
4008         (fixup_go_packaging): Update.
4009         (process_full_comp_unit, process_full_type_unit): Update.  Don't
4010         use scoped_free_pendings.
4011         (using_directives): Add "cu" parameter, remove "language".
4012         (read_import_statement, setup_type_unit_groups, )
4013         (read_func_scope, read_lexical_block_scope)
4014         (dwarf2_record_block_ranges, read_namespace): Update.
4015         (lnp_state_machine::lnp_state_machine): Add cu parameter.
4016         (lnp_state_machine::handle_end_sequence): Update.
4017         (class lnp_state_machine) <m_cu>: New member.
4018         <m_record_line_callback>: Remove.
4019         <m_currently_recording_lines>: New member.
4020         (lnp_state_machine::handle_set_file): Update.
4021         (noop_record_line): Remove.
4022         (dwarf_record_line_p): Add cu parameter.
4023         (dwarf_record_line_1, dwarf_finish_line): Likewise.
4024         (lnp_state_machine::record_line)
4025         (lnp_state_machine::lnp_state_machine)
4026         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
4027         (dwarf_decode_lines): Update.
4028         (dwarf2_start_subfile): Add cu parameter.
4029         (dwarf2_start_symtab, new_symbol): Update.
4030         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
4031         Remove dwarf2_per_objfile parameter.
4032         (dwarf_decode_macros): Update.
4033
4034 2018-07-20  Tom Tromey  <tom@tromey.com>
4035
4036         * stabsread.c (define_symbol): Update.
4037         * buildsym-legacy.h (get_buildsym_compunit): Declare.
4038         * dwarf2read.c (new_symbol): Update.
4039         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
4040         * cp-namespace.c: Include buildsym.h.
4041         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
4042         * buildsym-legacy.c (get_buildsym_compunit): New function.
4043
4044 2018-07-20  Tom Tromey  <tom@tromey.com>
4045
4046         * xcoffread.c: Include buildsym-legacy.h.
4047         * windows-nat.c: Include buildsym-legacy.h.
4048         * stabsread.c: Include buildsym-legacy.h.
4049         * mdebugread.c: Include buildsym-legacy.h.
4050         * buildsym-legacy.h: New file.
4051         * buildsym-legacy.c: New file, from buildsym.c.
4052         * go32-nat.c: Include buildsym-legacy.h.
4053         * dwarf2read.c: Include buildsym-legacy.h.
4054         * dbxread.c: Include buildsym-legacy.h.
4055         * cp-namespace.c: Include buildsym-legacy.h.
4056         * coffread.c: Include buildsym-legacy.h.
4057         * buildsym.h: Move some contents to buildsym-legacy.h.
4058         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
4059         buildsym-legacy.c.
4060         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
4061
4062 2018-07-20  Tom Tromey  <tom@tromey.com>
4063
4064         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
4065         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
4066         (buildsym_compunit::buildsym_compunit)
4067         (buildsym_compunit::~buildsym_compunit)
4068         (buildsym_compunit::get_macro_table): Define.
4069
4070 2018-07-20  Tom Tromey  <tom@tromey.com>
4071
4072         * buildsym.c (reset_symtab_globals): Remove.
4073         (buildsym_compunit::end_symtab_from_static_block): Update.
4074         (buildsym_compunit::augment_type_symtab): Update.
4075         (end_symtab_from_static_block): Call free_buildsym_compunit.
4076         (augment_type_symtab, end_symtab, end_expandable_symtab):
4077         Likewise.
4078
4079 2018-07-20  Tom Tromey  <tom@tromey.com>
4080
4081         * arch-utils.c: Do not include buildsym.h.
4082         * mipsread.c: Do not include buildsym.h.
4083         * machoread.c: Do not include buildsym.h.
4084         * elfread.c: Do not include buildsym.h.
4085
4086 2018-07-20  Tom Tromey  <tom@tromey.com>
4087
4088         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
4089         initialization.
4090         (buildsym_compunit): Add new constructor.
4091         (struct buildsym_compunit) <get_last_source_file, finish_block,
4092         record_block_range, start_subfile, patch_subfile_names,
4093         push_subfile, pop_subfile, record_line, get_compunit_symtab,
4094         set_last_source_start_addr, get_last_source_start_addr,
4095         get_local_using_directives, set_local_using_directives,
4096         get_global_using_directives, outermost_context_p,
4097         get_current_context_stack, get_context_stack_depth,
4098         get_current_subfile, get_local_symbols, get_file_symbols,
4099         get_global_symbols, record_debugformat, record_producer,
4100         push_context, pop_context, end_symtab_get_static_block,
4101         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
4102         New public methods.
4103         <record_pending_block, finish_block_internal, make_blockvector,
4104         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
4105         private methods.
4106         Update all users.
4107
4108 2018-05-22  Tom Tromey  <tom@tromey.com>
4109
4110         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4111         parameter.
4112         (finish_block_internal): Update.
4113
4114 2018-07-20  Tom Tromey  <tom@tromey.com>
4115
4116         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4117         parameter.
4118         (finish_block_internal): Update.
4119
4120 2018-07-20  Tom Tromey  <tom@tromey.com>
4121
4122         * buildsym.h (EXTERN): Don't define or undef.
4123         * buildsym.c (EXTERN): Don't define.
4124
4125 2018-07-20  Tom Tromey  <tom@tromey.com>
4126
4127         * buildsym.c: Remove TODO comment.
4128
4129 2018-07-20  Tom Tromey  <tom@tromey.com>
4130
4131         * coffread.c (coff_symtab_read): Update.
4132         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
4133         (xcoff_new_init): Update.
4134         * mipsread.c (mipscoff_new_init): Update.
4135         * mdebugread.c (mdebug_build_psymtabs): Update.
4136         * elfread.c (elf_new_init): Update.
4137         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
4138         Update.
4139         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
4140         (coffstab_build_psymtabs, elfstab_build_psymtabs)
4141         (stabsect_build_psymtabs): Update.
4142         * buildsym.h (buildsym_init): Don't declare.
4143         * buildsym.c: Update comment.
4144         (prepare_for_building): Remove.
4145         (start_symtab, restart_symtab): Update.
4146         (reset_symtab_globals): Update comment.
4147         (buildsym_init): Remove.
4148
4149 2018-07-20  Tom Tromey  <tom@tromey.com>
4150
4151         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
4152         * stabsread.c (patch_block_stabs, define_symbol, read_type)
4153         (read_enum_type, common_block_start, common_block_end)
4154         (cleanup_undefined_types_1, finish_global_stabs): Update.
4155         * mdebugread.c (psymtab_to_symtab_1): Update.
4156         * dwarf2read.c (fixup_go_packaging, read_func_scope)
4157         (read_lexical_block_scope, new_symbol): Update.
4158         * dbxread.c (process_one_symbol): Update.
4159         * coffread.c (coff_symtab_read, process_coff_symbol)
4160         (coff_read_enum_type): Update.
4161         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
4162         declare.
4163         (get_local_symbols, get_file_symbols, get_global_symbols): New
4164         functions.
4165         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
4166         m_global_symbols.
4167         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
4168         (~scoped_free_pendings): Update.
4169         (finish_block, prepare_for_building, reset_symtab_globals)
4170         (end_symtab_get_static_block, end_symtab_with_blockvector)
4171         (augment_type_symtab, push_context): Update.
4172         (get_local_symbols, get_file_symbols, get_global_symbols): New
4173         functions.
4174         (buildsym_init): Update.
4175
4176 2018-07-20  Tom Tromey  <tom@tromey.com>
4177
4178         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
4179         (process_full_type_unit): Likewise.
4180         (dwarf2_start_symtab): Set list_in_scope.
4181
4182 2018-07-20  Tom Tromey  <tom@tromey.com>
4183
4184         * dwarf2read.c (process_psymtab_comp_unit_reader)
4185         (build_type_psymtabs_reader): Do not set list_in_scope.
4186
4187 2018-07-20  Tom Tromey  <tom@tromey.com>
4188
4189         * buildsym.c (free_pendings): Remove.
4190         (add_symbol_to_list, scoped_free_pendings)
4191         (finish_block_internal, buildsym_init): Update.
4192
4193 2018-07-20  Tom Tromey  <tom@tromey.com>
4194
4195         * xcoffread.c (read_xcoff_symtab): Update.
4196         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
4197         Update.
4198         * dbxread.c (process_one_symbol): Update.
4199         * coffread.c (coff_symtab_read): Update.
4200         * buildsym.h (finish_block): Update.
4201         * buildsym.c (finish_block): Remove "listhead" argument.
4202         (end_symtab_get_static_block): Update.
4203
4204 2018-07-20  Tom Tromey  <tom@tromey.com>
4205
4206         * buildsym.h (class scoped_free_pendings): Remove constructor.
4207         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
4208         method.
4209         <m_pending_block_obstack, m_pending_blocks>: New members.
4210         (pending_block_obstack, pending_blocks): Remove.
4211         (scoped_free_pendings::scoped_free_pendings): Default.
4212         (~scoped_free_pendings): Update.
4213         (free_pending_blocks): Remove.
4214         (finish_block_internal, record_pending_block, make_blockvector)
4215         (end_symtab_get_static_block, augment_type_symtab, push_context)
4216         (buildsym_init): Update.
4217
4218 2018-07-20  Tom Tromey  <tom@tromey.com>
4219
4220         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
4221         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
4222         members.
4223         (pending_addrmap, pending_addrmap_obstack)
4224         (pending_addrmap_interesting): Remove.
4225         (scoped_free_pendings, record_block_range, make_blockvector)
4226         (prepare_for_building, reset_symtab_globals, buildsym_init):
4227         Update.
4228
4229 2018-07-20  Tom Tromey  <tom@tromey.com>
4230
4231         * xcoffread.c (process_linenos): Update.
4232         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
4233         * mdebugread.c (psymtab_to_symtab_1): Update.
4234         * dwarf2read.c (setup_type_unit_groups)
4235         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
4236         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
4237         * dbxread.c (process_one_symbol): Update.
4238         * coffread.c (coff_symtab_read, enter_linenos)
4239         (process_coff_symbol): Update.
4240         * buildsym.h (current_subfile): Don't declare.
4241         (get_current_subfile): Declare.
4242         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
4243         member.
4244         (start_subfile, free_buildsym_compunit, push_subfile)
4245         (prepare_for_building, start_symtab): Update.
4246         (get_current_subfile): New function.
4247
4248 2018-07-20  Tom Tromey  <tom@tromey.com>
4249
4250         * coffread.c (coff_symtab_read): Update.
4251         * xcoffread.c (read_xcoff_symtab): Update.
4252         * dwarf2read.c (new_symbol): Update.
4253         (read_func_scope, read_lexical_block_scope): Update.
4254         * dbxread.c (process_one_symbol): Update.
4255         * buildsym.h (context_stack, context_stack_depth): Don't declare.
4256         (outermost_context_p): Remove macro.
4257         (outermost_context_p, get_current_context_stack)
4258         (get_context_stack_depth): Declare.
4259         (pop_context): Return struct context_stack.
4260         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
4261         member.
4262         (context_stack_size): Remove.
4263         (INITIAL_CONTEXT_STACK_SIZE): Remove.
4264         (prepare_for_building, end_symtab_get_static_block)
4265         (augment_type_symtab, push_context): Update.
4266         (pop_context): Return struct context_stack.
4267         (outermost_context_p, get_current_context_stack)
4268         (get_context_stack_depth): New functions.
4269         (buildsym_init): Update.
4270
4271 2018-07-20  Tom Tromey  <tom@tromey.com>
4272
4273         * rust-exp.y: Now a pure parser.  Update all rules.
4274         (%union): Move earlier.
4275         (current_parser, work_obstack): Remove globals.
4276         (rust_parser, ~rust_parser): Update.
4277         (class rust_parser) <copy_name, concat3, crate_name, super_name,
4278         lex_character, lex_number, lex_string, lex_identifier,
4279         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
4280         convert_name, convert_params_to_expression,
4281         convert_ast_to_expression, ast_basic_type, ast_operation,
4282         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
4283         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
4284         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
4285         ast_array_type, ast_slice_type, ast_reference_type,
4286         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
4287         (rust_parse): Update.
4288         (rustyyerror, rustyylex): Add parser parameter.
4289         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
4290         (rust_lex_stringish_test, rust_lex_test_sequence)
4291         (rust_lex_test_trailing_dot, rust_lex_test_completion)
4292         (rust_lex_test_push_back, rust_lex_tests): Update.
4293
4294 2018-07-19  Pedro Alves  <palves@redhat.com>
4295
4296         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
4297         gdb::unique_xmalloc_ptr.
4298         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
4299         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
4300         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
4301         copy-initialization.
4302         * guile/scm-pretty-print.c (ppscm_print_children): Use
4303         gdb::unique_xmalloc_ptr instead of cleanups.
4304         (gdbscm_apply_val_pretty_printer): Remove cleanups.
4305         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
4306         gdb::unique_xmalloc_ptr.
4307         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4308         Adjust to use gdb::unique_xmalloc_ptr.
4309         * guile/scm-utils.c (extract_arg): Adjust.
4310         * guile/scm-value.c (gdbscm_value_field): Adjust to use
4311         gdb::unique_xmalloc_ptr instead of a cleanup.
4312
4313 2018-07-19  Tom Tromey  <tom@tromey.com>
4314
4315         * utils.c (do_value_free_to_mark)
4316         (make_cleanup_value_free_to_mark): Remove.
4317         * utils.h (make_cleanup_value_free_to_mark): Remove.
4318
4319 2018-07-19  Pedro Alves  <palves@redhat.com>
4320
4321         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
4322         forwarding reference.
4323
4324 2018-07-18  Pedro Alves  <palves@redhat.com>
4325
4326         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
4327         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
4328         cleanup.
4329
4330 2018-07-18  Pedro Alves  <palves@redhat.com>
4331
4332         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
4333         exceptions.
4334         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
4335         (gdbscm_wrap): New.
4336         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
4337         directly instead of a cleanup.
4338         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
4339         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
4340         (vlscm_binop_gdbthrow): New, factored out from ...
4341         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
4342         (vlscm_rich_compare): Use gdbscm_wrap.
4343         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
4344         instead of a cleanup.
4345         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
4346         cleanup.
4347         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4348         Use xfree directly instead of a cleanup.
4349         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
4350         Adjust to use gdbscm_wrap and scoped_value_mark.
4351         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
4352         (gdbscm_value_address, gdbscm_value_dereference)
4353         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
4354         scoped_value_mark.
4355         (gdbscm_value_dynamic_type): Use scoped_value_mark.
4356         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
4357         scoped_value_mark.
4358         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
4359         gdbscm_wrap and scoped_value_mark.
4360         (gdbscm_value_to_string): Use xfree directly instead of a
4361         cleanup.  Move 'buffer' unique_ptr to TRY scope.
4362         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
4363         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
4364         scoped_value_mark.
4365         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
4366         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
4367         scoped_value_mark.
4368         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
4369         gdbscm_wrap.
4370
4371 2018-07-18  Tom de Vries  <tdevries@suse.de>
4372
4373         * findvar.c (default_read_var_value): Also resolve dynamic type for
4374         LOC_OPTIMIZED_OUT vars.
4375
4376 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
4377
4378         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
4379         decoding.
4380
4381 2018-07-17  Tom Tromey  <tom@tromey.com>
4382
4383         * guile/scm-param.c (pascm_set_func, pascm_show_func)
4384         (compute_enum_list, pascm_set_param_value_x)
4385         (gdbscm_parameter_value): Update.
4386         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
4387         (gdbscm_scm_to_host_string): Update.
4388         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
4389         Update.
4390         * guile/scm-cmd.c (cmdscm_add_completion): Update.
4391         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
4392         * guile/scm-string.c (gdbscm_scm_to_string): Return
4393         unique_xmalloc_ptr.
4394         (gdbscm_scm_to_host_string): Likewise.
4395
4396 2018-07-17  Tom Tromey  <tom@tromey.com>
4397
4398         * guile/guile.c (gdbscm_eval_from_control_command): Update.
4399         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
4400         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
4401         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
4402         unique_xmalloc_ptr.
4403
4404 2018-07-17  Tom Tromey  <tom@tromey.com>
4405
4406         * guile/scm-param.c (pascm_signal_setshow_error): Update.
4407         * guile/guile-internal.h (gdbscm_exception_message_to_string):
4408         Update.
4409         * guile/scm-cmd.c (cmdscm_function): Update.
4410         * guile/scm-pretty-print.c
4411         (ppscm_print_exception_unless_memory_error): Update.
4412         * guile/scm-exception.c (gdbscm_exception_message_to_string):
4413         Return unique_xmalloc_ptr.
4414
4415 2018-07-17  Tom Tromey  <tom@tromey.com>
4416
4417         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
4418         Use string_printf.
4419
4420 2018-07-17  Jim Wilson  <jimw@sifive.com>
4421
4422         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
4423         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
4424         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
4425         unecessary braces after EF_RISCV_RVC test.  Delete call to
4426         set_gdbarch_decr_pc_after_break.
4427
4428         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
4429         RISCV_LAST_FP_REGNUM + 1.
4430         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
4431
4432 2018-07-17  Tom Tromey  <tom@tromey.com>
4433
4434         * configure.ac: Remove --disable-gdbcli.
4435         * configure: Rebuild.
4436         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
4437         (SUBDIR_CLI_CFLAGS): Remove.
4438         (SFILES): Use SUBDIR_CLI_SRCS.
4439         (COMMON_OBS): Use SUBDIR_CLI_OBS.
4440
4441 2018-07-17  Tom Tromey  <tom@tromey.com>
4442
4443         PR gdb/18624:
4444         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
4445
4446 2018-07-16  Jim Wilson  <jimw@sifive.com>
4447
4448         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
4449
4450 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4451
4452         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
4453         variable.
4454         (libunwind_frame_sniffer): Likewise.
4455         (libunwind_frame_prev_register): Likewise.
4456         (libunwind_sigtramp_frame_sniffer): Likewise.
4457         * ia64-tdep.c (ia64_access_reg): Likewise.
4458         (ia64_access_rse_reg): Likewise.
4459         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
4460         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
4461
4462 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4463
4464         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
4465
4466 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4467
4468         * remote-sim.c (gdbsim_target::close,
4469         gdbsim_target::mourn_inferior): Remove unused variables.
4470
4471 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
4472
4473         * ia64-tdep.c (ktab_buf): New global.
4474         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
4475         (get_kernel_table): Adjust.
4476
4477 2018-07-16  Tom Tromey  <tom@tromey.com>
4478
4479         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
4480         * dwarf2read.c (using_directives, new_symbol): Use
4481         outermost_context_p.
4482         * dbxread.c (process_one_symbol): Use outermost_context_p.
4483         * coffread.c (coff_symtab_read): Use outermost_context_p.
4484
4485 2018-07-16  Tom Tromey  <tom@tromey.com>
4486
4487         * dwarf2read.c (using_directives, read_func_scope)
4488         (read_lexical_block_scope): Update.
4489         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
4490         * buildsym.h (local_using_directives, global_using_directives):
4491         Don't declare.
4492         (get_local_using_directives, set_local_using_directives)
4493         (get_global_using_directives): Declare.
4494         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
4495         m_global_using_directives>: New members.
4496         (finish_block_internal, prepare_for_building)
4497         (reset_symtab_globals, end_symtab_get_static_block)
4498         (push_context): Update.
4499         (get_local_using_directives, set_local_using_directives)
4500         (get_global_using_directives): New functions.
4501         (buildsym_init): Update.
4502
4503 2018-07-16  Tom Tromey  <tom@tromey.com>
4504
4505         * xcoffread.c (xcoff_initial_scan): Don't call
4506         free_pending_blocks.
4507         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
4508         * buildsym.h (class scoped_free_pendings): Add constructor.
4509         (free_pending_blocks): Don't declare.
4510         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
4511         (free_pending_blocks): Now static.
4512
4513 2018-07-16  Tom Tromey  <tom@tromey.com>
4514
4515         * buildsym.h (push_subfile, pop_subfile): Update declarations.
4516         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
4517         member.
4518         (struct subfile_stack): Remove.
4519         (subfile_stack): Remove.
4520         (push_subfile, pop_subfile, buildsym_init): Update.
4521
4522 2018-07-16  Tom Tromey  <tom@tromey.com>
4523
4524         * buildsym.c (push_subfile): Use gdb_assert.
4525         (pop_subfile): Use gdb_assert.
4526
4527 2018-07-16  Tom Tromey  <tom@tromey.com>
4528
4529         * buildsym.h (merge_symbol_lists): Remove.
4530         * buildsym.c (merge_symbol_lists): Remove.
4531
4532 2018-07-16  Tom Tromey  <tom@tromey.com>
4533
4534         * stabsread.c (scan_file_globals): Update comment.
4535         * stabsread.h (scan_file_globals): Move from buildsym.h.
4536         * buildsym.h (scan_file_globals): Move to stabsread.h.
4537
4538 2018-07-16  Tom Tromey  <tom@tromey.com>
4539
4540         * xcoffread.c (xcoff_new_init): Update.
4541         * mipsread.c (mipscoff_new_init): Update.
4542         * mdebugread.c (mdebug_build_psymtabs): Update.
4543         * elfread.c (elf_new_init): Update.
4544         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
4545         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
4546         * buildsym.h (buildsym_new_init): Don't declare.
4547         * buildsym.c (buildsym_new_init): Remove.
4548
4549 2018-07-16  Tom Tromey  <tom@tromey.com>
4550
4551         * stabsread.h (within_function): Move from buildsym.h.
4552         * stabsread.c (start_stabs): Clear within_function.
4553         * coffread.c (coff_start_symtab): Clear within_function.
4554         * buildsym.h (within_function): Move to stabsread.h.
4555         * buildsym.c (prepare_for_building): Update.
4556
4557 2018-07-16  Tom Tromey  <tom@tromey.com>
4558
4559         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
4560         * dwarf2read.c (dwarf2_start_symtab): Don't set
4561         processing_gcc_compilation.
4562         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
4563
4564 2018-07-16  Tom Tromey  <tom@tromey.com>
4565
4566         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
4567         (next_symbol_text_func): Move from buildsym.h.
4568         * stabsread.c (hashname): Move from buildsym.c.
4569         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
4570         (next_symbol_text_func, hashname): Move to stabsread.h.
4571         * buildsym.c: Don't include bcache.h
4572         (hashname): Move to stasbread.c.
4573
4574 2018-07-16  Tom Tromey  <tom@tromey.com>
4575
4576         * buildsym.h (context_stack_size): Don't declare.
4577         * buildsym.c (context_stack_size): New global.
4578
4579 2018-07-16  Tom Tromey  <tom@tromey.com>
4580
4581         * dbxread.c (processing_acc_compilation): New global.
4582         * buildsym.h (processing_acc_compilation): Don't declare.
4583
4584 2018-07-16  Tom Tromey  <tom@tromey.com>
4585
4586         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
4587         * dbxread.c (read_ofile_symtab): Update.
4588         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
4589         * buildsym.h (last_source_start_addr): Remove.
4590         (set_last_source_start_addr, get_last_source_start_addr):
4591         Declare.
4592         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
4593         parameter.
4594         (struct buildsym_compunit) <m_last_source_start_addr>: New
4595         member.
4596         (prepare_for_building): Remove start_addr parameter.
4597         (start_symtab, restart_symtab, end_symtab_get_static_block)
4598         (end_symtab_with_blockvector): Update.
4599         (set_last_source_start_addr, get_last_source_start_addr): New
4600         functions.
4601
4602 2018-07-16  Tom Tromey  <tom@tromey.com>
4603
4604         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
4605         member.
4606         (have_line_numbers): Remove.
4607         (record_line, prepare_for_building, end_symtab_get_static_block)
4608         (augment_type_symtab): Update.
4609
4610 2018-07-16  Tom Tromey  <tom@tromey.com>
4611
4612         * buildsym.c (~buildsym_compunit): Free the macro table.
4613         (struct buildsym_compunit) <get_macro_table, release_macros>: New
4614         methods.
4615         <m_pending_macros>: New member.
4616         (pending_macros): Remove.
4617         (~scoped_free_pendings, get_macro_table, prepare_for_building)
4618         (reset_symtab_globals, end_symtab_get_static_block)
4619         (end_symtab_with_blockvector, augment_type_symtab)
4620         (buildsym_init): Update.
4621
4622 2018-07-16  Tom Tromey  <tom@tromey.com>
4623
4624         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
4625         parameter.
4626         (buildsym_compunit::set_last_source_file): New method.
4627         <m_last_source_file>: New member.
4628         (prepare_for_building): Remove "name" parameter.
4629         (start_symtab, restart_symtab, reset_symtab_globals): Update.
4630         (last_source_file): Remove.
4631         (set_last_source_file, get_last_source_file): Update.
4632
4633 2018-07-16  Tom Tromey  <tom@tromey.com>
4634
4635         * buildsym.c (prepare_for_building): Add assert.
4636
4637 2018-07-16  Tom Tromey  <tom@tromey.com>
4638
4639         * buildsym.c (~buildsym_compunit): Update.
4640         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
4641         (start_subfile, patch_subfile_names)
4642         (end_symtab_with_blockvector): Update.
4643
4644 2018-07-16  Tom Tromey  <tom@tromey.com>
4645
4646         * buildsym.c (struct buildsym_compunit): Add constructor,
4647         destructor, initializers.
4648         (start_buildsym_compunit): Remove.
4649         (free_buildsym_compunit): Use "delete".
4650         (start_symtab, restart_symtab): Use "new".
4651
4652 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
4653
4654         * symfile.c (set_objfile_default_section_offset): Remove struct
4655         keyword.
4656
4657 2018-07-14  Stafford Horne  <shorne@gmail.com>
4658
4659         * (Responsible Maintainers): Add myself as or1k maintainer.
4660
4661 2018-07-13  Tom Tromey  <tom@tromey.com>
4662
4663         * symfile.c (set_objfile_default_section_offset): Use extra braces
4664         around initializer.
4665
4666 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
4667
4668         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
4669         non-branching basr.
4670
4671 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4672
4673         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4674         unittests/cli-utils-selftests.c
4675         * unittests/cli-utils-selftests.c: New file.
4676
4677 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4678
4679         * NEWS: Mention new commands. Mention change to 'thread apply'.
4680
4681 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4682
4683         * thread.c (thr_try_catch_cmd): New function.
4684         (thread_apply_all_command): Handle qcs flags.
4685         (thread_apply_command): Handle qcs flags.
4686         (taas_command): New function.
4687         (tfaas_command): New function.
4688         (_initialize_thread): Update to setup the new commands 'taas
4689         and 'tfaas'. Change doc string for 'thread apply'.
4690
4691 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4692
4693         * stack.c: (trailing_outermost_frame): New function, mostly
4694         extracted from backtrace_command_1.
4695         (leading_innermost_frame): New function.
4696         (backtrace_command_1): Update to call trailing_outermost_frame.
4697         (frame_apply_command_count): New function.
4698         (frame_apply_level_command): New function.
4699         (frame_apply_all_command): New function.
4700         (frame_apply_command): New function.
4701         (faas_command): New function.
4702         (frame_cmd_list): New variable.
4703         (_initialize_stack): Update to setup the new commands 'frame apply'
4704         and 'faas'.
4705
4706 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4707
4708         * cli-utils.c (number_or_range_parser::get_number): Only handle
4709         numbers or convenience var as numbers.
4710         (parse_flags): New function.
4711         (parse_flags_qcs): New function.
4712         (number_or_range_parser::finished): Ensure parsing end is detected
4713         before end of string.
4714         * cli-utils.h (parse_flags): New function.
4715         (parse_flags_qcs): New function.
4716         (number_or_range_parser): Remove m_finished bool.
4717         (number_or_range_parser::skip_range): Set m_in_range to false.
4718
4719 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
4720
4721         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
4722         on Windows.
4723
4724 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4725             Jan Kratochvil  <jan.kratochvil@redhat.com>
4726             Paul Fertser  <fercerpav@gmail.com>
4727             Tsutomu Seki  <sekiriki@gmail.com>
4728             Pedro Alves  <palves@redhat.com>
4729
4730         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4731         'unittests/parse-connection-spec-selftests.c'.
4732         (COMMON_SFILES): Add 'common/netstuff.c'.
4733         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
4734         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
4735         * common/netstuff.c: New file.
4736         * common/netstuff.h: New file.
4737         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
4738         (wait_for_connect): Update comment.  New parameter
4739         'gdb::optional<int> sock' instead of 'struct serial *scb'.
4740         Use 'sock' directly instead of 'scb->fd'.
4741         (try_connect): New function, with code from 'net_open'.
4742         (net_open): Rewrite main loop to deal with multiple
4743         sockets/addresses.  Handle IPv6-style hostnames; implement
4744         support for IPv6 connections.
4745         * unittests/parse-connection-spec-selftests.c: New file.
4746
4747 2018-07-11  Pedro Alves  <palves@redhat.com>
4748
4749         PR gdb/23377
4750         * remote.c (remote_target::remote_detach_pid): Call
4751         set_current_process.
4752
4753 2018-07-11  Pedro Alves  <palves@redhat.com>
4754
4755         * h8300-tdep.c (h8300_gdbarch_init): Remove
4756         set_gdbarch_ecoff_reg_to_regnum calls.
4757
4758 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4759
4760         PR c++/23373
4761         * c-typeprint.c (c_type_print_base_struct_union): Don't print
4762         offsets/sizes for static members of a class/struct.
4763
4764 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
4765
4766         * target-descriptions.c (tdesc_register_bitsize): Rename.
4767         * target-descriptions.h (tdesc_register_bitsize): Likewise.
4768         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
4769         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
4770
4771 2018-07-10  Tom Tromey  <tom@tromey.com>
4772
4773         * breakpoint.c (moribund_locations): Now static and a
4774         std::vector.
4775         (breakpoint_init_inferior, moribund_breakpoint_here_p)
4776         (build_bpstat_chain, update_global_location_list)
4777         (breakpoint_retire_moribund): Update.
4778         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
4779         VEC.
4780
4781 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4782
4783         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
4784         (riscv_register_reggroup_p): Use new function, remove unneeded
4785         parenthesis.
4786         (riscv_push_dummy_call): Extend assert to compare against xlen or
4787         flen based on register type.
4788
4789 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4790
4791         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
4792
4793 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4794
4795         * remote.c (show_hardware_watchpoint_limit): New function.
4796         (show_hardware_watchpoint_length_limit): New function.
4797         (show_hardware_breakpoint_limit): New function.
4798         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
4799         where appropriate, update help text.
4800
4801 2018-07-09  Tom Tromey  <tom@tromey.com>
4802
4803         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
4804         (CLIBS): Don't mention NAT_CLIBS.
4805
4806 2018-07-09  Tom Tromey  <tom@tromey.com>
4807
4808         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
4809         (LIBGDB_OBS, clean mostlyclean): Update.
4810         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
4811
4812 2018-07-09  Tom Tromey  <tom@tromey.com>
4813
4814         * Makefile.in (%.c: %.y): Use ECHO_YACC.
4815         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
4816         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
4817
4818 2018-07-09  Tom Tromey  <tom@tromey.com>
4819
4820         * Makefile.in (ALLDEPFILES): Remove exec.c.
4821         (COMMON_OBS): Remove exec.o.
4822         (COMMON_SFILES): Add exec.c.
4823
4824 2018-07-09  Tom Tromey  <tom@tromey.com>
4825
4826         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
4827
4828 2018-07-09  Tom Tromey  <tom@tromey.com>
4829
4830         * Makefile.in (clean mostlyclean): Remove stamp-version.
4831         (version.c): Depend on stamp-version.
4832         (stamp-version): New rule, from version.c rule.
4833
4834 2018-07-09  Tom Tromey  <tom@tromey.com>
4835
4836         * Makefile.in (init.c): Depend on stamp-init.
4837         (stamp-init): New rule, from init.c rule.
4838         (clean mostlyclean): Remove stamp-init.
4839
4840 2018-07-09  Tom Tromey  <tom@tromey.com>
4841
4842         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
4843         SUBDIR_GCC_COMPILE_SRCS.
4844
4845 2018-07-09  Tom Tromey  <tom@tromey.com>
4846
4847         * Makefile.in (init.c): Remove some unused sed rules.
4848
4849 2018-07-09  Tom Tromey  <tom@tromey.com>
4850
4851         * Makefile.in (TSOBS): Remove.
4852         (INIT_FILES): Update.
4853         (LIBGDB_OBS): Update.
4854         (COMMON_SFILES): Add inflow.c.
4855         (SFILES): Remove inflow.c.
4856
4857 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
4858
4859         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
4860
4861 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
4862
4863         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
4864         get_saveloc_name, is_signal_frame_name, step_name,
4865         init_remote_name, create_addr_space_name,
4866         destroy_addr_space_name, search_unwind_table_name,
4867         find_dyn_list_name): Constify.
4868
4869 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
4870
4871         * darwin-nat.c (darwin_pthread_kill): New function.
4872         (darwin_resume_thread): Use darwin_pthread_kill.
4873
4874 2018-07-05  Tom de Vries  <tdevries@suse.de>
4875
4876         * macroexp.c (macro_buffer) <operator=>: New member function.
4877
4878 2018-07-04  Tom Tromey  <tom@tromey.com>
4879
4880         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
4881
4882 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
4883
4884         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
4885         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
4886         * maint.c: Likewise.
4887         * top.c: Likewise.
4888
4889 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
4890
4891         * NEWS: Create a new section for the next release branch.
4892         Rename the section of the current branch, now that it has
4893         been cut.
4894
4895 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
4896
4897         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
4898         * version.in: Bump version to 8.2.50.DATE-git.
4899
4900 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
4901             Pedro Alves  <palves@redhat.com>
4902
4903         * linux-nat.c (linux_init_ptrace): Rename to ...
4904         (linux_init_ptrace_procfs): ... this.  Call
4905         linux_proc_init_warnings.
4906         (linux_nat_target::post_attach)
4907         (linux_nat_target::post_startup_inferior): Adjust.
4908         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
4909         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
4910
4911 2018-07-04  Tom de Vries  <tdevries@suse.de>
4912
4913         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
4914         check ...
4915         (read_comp_unit_head): ... here.
4916
4917 2018-07-03  Tom Tromey  <tom@tromey.com>
4918
4919         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
4920         (stop_tracing, tstatus_command)
4921         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
4922         (print_one_static_tracepoint_marker): Update.
4923         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
4924         std::vector.
4925         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
4926         VEC.
4927         (all_tracepoints, static_tracepoints_here): Return std::vector.
4928
4929 2018-07-03  Tom Tromey  <tom@tromey.com>
4930
4931         * common/ptid.c (ptid_equal): Remove.
4932         * common/ptid.h (ptid_equal): Don't declare.
4933         * ada-tasks.c: Update.
4934         * breakpoint.c: Update.
4935         * common/agent.c: Update.
4936         * corelow.c: Update.
4937         * darwin-nat-info.c: Update.
4938         * darwin-nat.c: Update.
4939         * dcache.c: Update.
4940         * dtrace-probe.c: Update.
4941         * dummy-frame.c: Update.
4942         * fbsd-nat.c: Update.
4943         * frame.c: Update.
4944         * gdbthread.h: Update.
4945         * gnu-nat.c: Update.
4946         * go32-nat.c: Update.
4947         * inf-loop.c: Update.
4948         * inf-ptrace.c: Update.
4949         * infcall.c: Update.
4950         * infcmd.c: Update.
4951         * inflow.c: Update.
4952         * infrun.c: Update.
4953         * linux-fork.c: Update.
4954         * linux-nat.c: Update.
4955         * linux-thread-db.c: Update.
4956         * mi/mi-cmd-var.c: Update.
4957         * mi/mi-interp.c: Update.
4958         * mi/mi-main.c: Update.
4959         * nto-procfs.c: Update.
4960         * ppc-linux-tdep.c: Update.
4961         * procfs.c: Update.
4962         * python/py-inferior.c: Update.
4963         * python/py-record-btrace.c: Update.
4964         * python/py-record.c: Update.
4965         * ravenscar-thread.c: Update.
4966         * regcache.c: Update.
4967         * remote-sim.c: Update.
4968         * remote.c: Update.
4969         * sol-thread.c: Update.
4970         * solib.c: Update.
4971         * target.c: Update.
4972         * tui/tui-stack.c: Update.
4973         * varobj.c: Update.
4974         * windows-nat.c: Update.
4975         * windows-tdep.c: Update.
4976
4977 2018-07-03  Tom Tromey  <tom@tromey.com>
4978
4979         * common/ptid.c (ptid_match): Remove.
4980         * common/ptid.h (ptid_match): Don't declare.
4981         * fbsd-nat.c: Update.
4982         * infcmd.c: Update.
4983         * infrun.c: Update.
4984         * linux-nat.c: Update.
4985         * record-btrace.c: Update.
4986         * regcache.c: Update.
4987         * remote.c: Update.
4988
4989 2018-07-03  Tom Tromey  <tom@tromey.com>
4990
4991         * common/ptid.c (ptid_tid_p): Remove.
4992         * common/ptid.h (ptid_tid_p): Don't declare.
4993         * sol-thread.c: Update.
4994
4995 2018-07-03  Tom Tromey  <tom@tromey.com>
4996
4997         * common/ptid.c (ptid_lwp_p): Remove.
4998         * common/ptid.h (ptid_lwp_p): Don't declare.
4999         * fbsd-nat.c: Update.
5000         * linux-nat.c: Update.
5001         * nat/linux-procfs.c: Update.
5002         * nat/x86-linux-dregs.c: Update.
5003         * sol-thread.c: Update.
5004
5005 2018-07-03  Tom Tromey  <tom@tromey.com>
5006
5007         * common/ptid.c (ptid_is_pid): Remove.
5008         * common/ptid.h (ptid_is_pid): Don't declare.
5009         * infrun.c: Update.
5010         * linux-nat.c: Update.
5011         * mi/mi-interp.c: Update.
5012         * remote.c: Update.
5013         * thread.c: Update.
5014
5015 2018-07-03  Tom Tromey  <tom@tromey.com>
5016
5017         * common/ptid.c (ptid_get_tid): Remove.
5018         * common/ptid.h (ptid_get_tid): Don't declare.
5019         * ada-tasks.c: Update.
5020         * aix-thread.c: Update.
5021         * bsd-uthread.c: Update.
5022         * darwin-nat.c: Update.
5023         * fbsd-nat.c: Update.
5024         * i386-darwin-nat.c: Update.
5025         * infrun.c: Update.
5026         * linux-tdep.c: Update.
5027         * nto-procfs.c: Update.
5028         * ppc-ravenscar-thread.c: Update.
5029         * python/py-infthread.c: Update.
5030         * ravenscar-thread.c: Update.
5031         * sol-thread.c: Update.
5032         * sparc-ravenscar-thread.c: Update.
5033         * windows-nat.c: Update.
5034
5035 2018-07-03  Tom Tromey  <tom@tromey.com>
5036
5037         * common/ptid.c (ptid_get_lwp): Remove.
5038         * common/ptid.h (ptid_get_lwp): Don't declare.
5039         * aarch64-linux-nat.c: Update.
5040         * ada-tasks.c: Update.
5041         * aix-thread.c: Update.
5042         * amd64-linux-nat.c: Update.
5043         * arm-linux-nat.c: Update.
5044         * corelow.c: Update.
5045         * fbsd-nat.c: Update.
5046         * fbsd-tdep.c: Update.
5047         * gnu-nat.c: Update.
5048         * i386-cygwin-tdep.c: Update.
5049         * i386-gnu-nat.c: Update.
5050         * i386-linux-nat.c: Update.
5051         * ia64-linux-nat.c: Update.
5052         * inf-ptrace.c: Update.
5053         * infrun.c: Update.
5054         * linux-fork.c: Update.
5055         * linux-nat.c: Update.
5056         * linux-tdep.c: Update.
5057         * linux-thread-db.c: Update.
5058         * mips-linux-nat.c: Update.
5059         * nat/aarch64-linux-hw-point.c: Update.
5060         * nat/aarch64-linux.c: Update.
5061         * nat/linux-btrace.c: Update.
5062         * nat/linux-osdata.c: Update.
5063         * nat/linux-procfs.c: Update.
5064         * nat/x86-linux-dregs.c: Update.
5065         * obsd-nat.c: Update.
5066         * ppc-fbsd-nat.c: Update.
5067         * ppc-linux-nat.c: Update.
5068         * procfs.c: Update.
5069         * python/py-infthread.c: Update.
5070         * ravenscar-thread.c: Update.
5071         * remote.c: Update.
5072         * s390-linux-nat.c: Update.
5073         * sol-thread.c: Update.
5074         * sol2-tdep.c: Update.
5075         * spu-linux-nat.c: Update.
5076         * x86-linux-nat.c: Update.
5077         * xtensa-linux-nat.c: Update.
5078
5079 2018-07-03  Tom Tromey  <tom@tromey.com>
5080
5081         * common/ptid.c (ptid_get_pid): Remove.
5082         * common/ptid.h (ptid_get_pid): Don't declare.
5083         * aarch64-linux-nat.c: Update.
5084         * ada-lang.c: Update.
5085         * aix-thread.c: Update.
5086         * alpha-bsd-nat.c: Update.
5087         * amd64-fbsd-nat.c: Update.
5088         * amd64-linux-nat.c: Update.
5089         * arm-linux-nat.c: Update.
5090         * arm-nbsd-nat.c: Update.
5091         * auxv.c: Update.
5092         * break-catch-syscall.c: Update.
5093         * breakpoint.c: Update.
5094         * bsd-uthread.c: Update.
5095         * corelow.c: Update.
5096         * ctf.c: Update.
5097         * darwin-nat.c: Update.
5098         * fbsd-nat.c: Update.
5099         * fbsd-tdep.c: Update.
5100         * gcore.c: Update.
5101         * gnu-nat.c: Update.
5102         * hppa-nbsd-nat.c: Update.
5103         * hppa-obsd-nat.c: Update.
5104         * i386-fbsd-nat.c: Update.
5105         * ia64-linux-nat.c: Update.
5106         * inf-ptrace.c: Update.
5107         * infcmd.c: Update.
5108         * inferior.c: Update.
5109         * inferior.h: Update.
5110         * inflow.c: Update.
5111         * infrun.c: Update.
5112         * linux-fork.c: Update.
5113         * linux-nat.c: Update.
5114         * linux-tdep.c: Update.
5115         * linux-thread-db.c: Update.
5116         * m68k-bsd-nat.c: Update.
5117         * mi/mi-interp.c: Update.
5118         * mi/mi-main.c: Update.
5119         * mips-linux-nat.c: Update.
5120         * mips-nbsd-nat.c: Update.
5121         * mips64-obsd-nat.c: Update.
5122         * nat/aarch64-linux-hw-point.c: Update.
5123         * nat/aarch64-linux.c: Update.
5124         * nat/linux-btrace.c: Update.
5125         * nat/linux-osdata.c: Update.
5126         * nat/linux-procfs.c: Update.
5127         * nat/x86-linux-dregs.c: Update.
5128         * nto-procfs.c: Update.
5129         * obsd-nat.c: Update.
5130         * ppc-linux-nat.c: Update.
5131         * ppc-nbsd-nat.c: Update.
5132         * ppc-obsd-nat.c: Update.
5133         * proc-service.c: Update.
5134         * procfs.c: Update.
5135         * python/py-inferior.c: Update.
5136         * python/py-infthread.c: Update.
5137         * ravenscar-thread.c: Update.
5138         * record.c: Update.
5139         * remote-sim.c: Update.
5140         * remote.c: Update.
5141         * rs6000-nat.c: Update.
5142         * s390-linux-nat.c: Update.
5143         * sh-nbsd-nat.c: Update.
5144         * sol-thread.c: Update.
5145         * sparc-nat.c: Update.
5146         * sparc64-tdep.c: Update.
5147         * spu-linux-nat.c: Update.
5148         * spu-tdep.c: Update.
5149         * target-debug.h: Update.
5150         * target.c: Update.
5151         * thread.c: Update.
5152         * tid-parse.c: Update.
5153         * tracefile-tfile.c: Update.
5154         * vax-bsd-nat.c: Update.
5155         * windows-nat.c: Update.
5156         * x86-linux-nat.c: Update.
5157         * x86-nat.c: Update.
5158
5159 2018-07-03  Tom Tromey  <tom@tromey.com>
5160
5161         * common/ptid.c (pid_to_ptid): Remove.
5162         * common/ptid.h (pid_to_ptid): Don't declare.
5163         * aix-thread.c: Update.
5164         * arm-linux-nat.c: Update.
5165         * common/ptid.c: Update.
5166         * common/ptid.h: Update.
5167         * corelow.c: Update.
5168         * ctf.c: Update.
5169         * darwin-nat.c: Update.
5170         * fbsd-nat.c: Update.
5171         * fork-child.c: Update.
5172         * gnu-nat.c: Update.
5173         * go32-nat.c: Update.
5174         * inf-ptrace.c: Update.
5175         * infcmd.c: Update.
5176         * inferior.c: Update.
5177         * infrun.c: Update.
5178         * linux-fork.c: Update.
5179         * linux-nat.c: Update.
5180         * nat/aarch64-linux-hw-point.c: Update.
5181         * nat/fork-inferior.c: Update.
5182         * nat/x86-linux-dregs.c: Update.
5183         * nto-procfs.c: Update.
5184         * obsd-nat.c: Update.
5185         * procfs.c: Update.
5186         * progspace.c: Update.
5187         * remote.c: Update.
5188         * rs6000-nat.c: Update.
5189         * s390-linux-nat.c: Update.
5190         * sol-thread.c: Update.
5191         * spu-linux-nat.c: Update.
5192         * target.c: Update.
5193         * top.c: Update.
5194         * tracefile-tfile.c: Update.
5195         * windows-nat.c: Update.
5196
5197 2018-07-03  Tom Tromey  <tom@tromey.com>
5198
5199         * common/ptid.h (ptid_build): Don't declare.
5200         * common/ptid.c (ptid_build): Remove.
5201         * aix-thread.c: Update.
5202         * bsd-kvm.c: Update.
5203         * bsd-uthread.c: Update.
5204         * common/agent.c: Update.
5205         * common/ptid.c: Update.
5206         * common/ptid.h: Update.
5207         * corelow.c: Update.
5208         * darwin-nat.c: Update.
5209         * fbsd-nat.c: Update.
5210         * gnu-nat.c: Update.
5211         * linux-fork.c: Update.
5212         * linux-nat.c: Update.
5213         * linux-thread-db.c: Update.
5214         * nat/linux-osdata.c: Update.
5215         * nat/linux-procfs.c: Update.
5216         * nto-procfs.c: Update.
5217         * obsd-nat.c: Update.
5218         * proc-service.c: Update.
5219         * procfs.c: Update.
5220         * ravenscar-thread.c: Update.
5221         * remote-sim.c: Update.
5222         * remote.c: Update.
5223         * sol-thread.c: Update.
5224         * target.c: Update.
5225         * windows-nat.c: Update.
5226
5227 2018-07-03  Tom Tromey  <tom@tromey.com>
5228
5229         * infrun.c (follow_exec): Use exit_inferior_silent.
5230         * inferior.c (exit_inferior_num_silent): Remove.
5231         * inferior.h (exit_inferior_num_silent): Don't declare.
5232
5233 2018-07-03  Tom Tromey  <tom@tromey.com>
5234
5235         PR cli/23340:
5236         * darwin-nat.c (darwin_attach_pid): Reset inferior and
5237         inferior_ptid on error.
5238
5239 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
5240             Simon Marchi  <simon.marchi@polymtl.ca>
5241
5242         PR tdep/8282
5243         * disasm.h (gdb_disassembler): Add
5244         `m_disassembler_options_holder'. member
5245         * disasm.c (get_all_disassembler_options): New function.
5246         (gdb_disassembler::gdb_disassembler): Use it.
5247         (gdb_buffered_insn_length_init_dis): Likewise.
5248         (gdb_buffered_insn_length): Adjust accordingly.
5249         (set_disassembler_options): Handle options with arguments.
5250         (show_disassembler_options_sfunc): Likewise.  Add a leading new
5251         line if showing options with descriptions.
5252         (disassembler_options_completer): Adapt to using the
5253         `disasm_options_and_args_t' structure.
5254         * mips-tdep.c (mips_disassembler_options): New variable.
5255         (mips_disassembler_options_o32): Likewise.
5256         (mips_disassembler_options_n32): Likewise.
5257         (mips_disassembler_options_n64): Likewise.
5258         (gdb_print_insn_mips): Don't set `disassembler_options'.
5259         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
5260         functions.
5261         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
5262         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
5263         `gdbarch_disassembler_options_implicit' and
5264         `gdbarch_valid_disassembler_options'.
5265         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
5266         `disasm_options_and_args_t' structure.
5267         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
5268         method.
5269         (valid_disassembler_options): Switch from `disasm_options_t' to
5270         the `disasm_options_and_args_t' structure.
5271         * NEWS: Document `set disassembler-options' support for the MIPS
5272         target.
5273         * gdbarch.h: Regenerate.
5274         * gdbarch.c: Regenerate.
5275
5276 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
5277
5278         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
5279
5280 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
5281
5282         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
5283         parameter in call to amd64_target_description.
5284         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
5285         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
5286         (amd64fbsd_init_abi): Likewise.
5287         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
5288         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
5289         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
5290         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
5291
5292 2018-06-29  Pedro Alves  <palves@redhat.com>
5293
5294         * gdb/amd64-tdep.h (amd64_create_target_description): Add
5295         "segments" parameter.
5296         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
5297         (_initialize_amd64_tdep): Update call to
5298         amd64_create_target_description.
5299         (amd64_target_description): Add "segments" parameter.  Adjust
5300         the implementation to use it.
5301         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
5302         call to amd64_create_target_description.
5303         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
5304         * gdb/arch/amd64.h (amd64_create_target_description): Add
5305         "segments" register.
5306         * gdb/arch/amd64.c (amd64_create_target_description): Add
5307         "segments" parameter.  Call create_feature_i386_64bit_segments
5308         only if SEGMENTS is true.
5309         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
5310         call to amd64_create_target_description.
5311
5312 2018-06-29  Pedro Alves  <palves@redhat.com>
5313
5314         * thread.c (thread_target_id_str): New, factored out from ...
5315         (print_thread_info_1): ... here.  Use it to compute the max
5316         "Target Id" column width.
5317
5318 2018-06-29  Pedro Alves  <palves@redhat.com>
5319
5320         * remote.c (remote_target::extra_thread_info): Delete
5321         'display_buf' and 'n' locals.  from the cache, regardless of
5322         packet mechanims is in use.  Use cache for qThreadExtra and qP
5323         methods too.
5324
5325 2018-06-29  Pedro Alves  <palves@redhat.com>
5326
5327         * blockframe.c (find_pc_sect_containing_function): New function.
5328         * breakpoint.c (print_breakpoint_location): Don't call
5329         find_pc_sect_function.
5330         * linespec.c (create_sals_line_offset): Record the location's
5331         symbol in the sal.
5332         * linespec.c (convert_address_location_to_sals): Fill in sal's
5333         symbol with find_pc_sect_containing_function.
5334         * symtab.c (find_function_start_sal): Rename to ...
5335         (find_function_start_sal_1): ... this.
5336         (find_function_start_sal): Reimplement as wrapper around
5337         find_function_start_sal_1, and use
5338         find_pc_sect_containing_function to fill in the sal's symbol.
5339         (find_function_start_sal(symbol*, bool)): Adjust.
5340         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
5341         comments.
5342         (find_pc_sect_containing_function): Declare.
5343
5344 2018-06-29  Pedro Alves  <palves@redhat.com>
5345
5346         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
5347         true if the the location has no symbol.
5348
5349 2018-06-28  Tom Tromey  <tom@tromey.com>
5350
5351         * NEWS: Mention --enable-codesign.
5352         * silent-rules.mk (ECHO_SIGN): New variable.
5353         * configure.ac: Add --enable-codesign.
5354         * configure: Rebuild.
5355         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
5356         (gdb$(EXEEXT)): Optionally invoke codesign.
5357
5358 2018-06-28  Pedro Alves  <palves@redhat.com>
5359
5360         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
5361         comments.
5362         (switch_to_thread_no_regs): Adjust comment.
5363         * infcmd.c (stop_pc): Delete.
5364         (post_create_inferior, info_program_command): Replace references
5365         to stop_pc with references to thread_info->suspend.stop_pc.
5366         * inferior.h (stop_pc): Delete declaration.
5367         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
5368         (handle_inferior_event_1, handle_signal_stop)
5369         (process_event_stop_test, keep_going_stepped_thread)
5370         (handle_step_into_function, handle_step_into_function_backward)
5371         (print_stop_location): Replace references to stop_pc with
5372         references to thread_info->suspend.stop_pc.
5373         (struct infcall_suspend_state) <stop_pc>: Delete field.
5374         (save_infcall_suspend_state, restore_infcall_suspend_state):
5375         Remove references to inf_stat->stop_pc.
5376         * linux-fork.c (fork_load_infrun_state): Likewise.
5377         * record-btrace.c (record_btrace_set_replay): Likewise.
5378         * record-full.c (record_full_goto_entry): Likewise.
5379         * remote.c (print_one_stopped_thread): Likewise.
5380         * target.c (target_resume): Extend comment.
5381         * thread.c (set_executing_thread): New.
5382         (set_executing): Use it.
5383         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
5384         Remove references to stop_pc.
5385
5386 2018-06-28  Pedro Alves  <palves@redhat.com>
5387
5388         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
5389         Moving fetching stop_pc until after ecs->event_thread is refreshed.
5390
5391 2018-06-28  Tom Tromey  <tom@tromey.com>
5392
5393         * coffread.c (coff_symfile_finish): Update.
5394         * xcoffread.c (xcoff_symfile_finish): Update.
5395         * elfread.c (elf_symfile_finish): Update.
5396         * symfile.h (dwarf2_free_objfile): Don't declare.
5397         * dwarf2read.c (_initialize_dwarf2_read): Use
5398         register_objfile_data_with_cleanup.
5399         (dwarf2_free_objfile): Now static.  Change signature.
5400
5401 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5402
5403         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
5404         option "-o" to add-symbol-file-load to add an offset to each
5405         section's load address.
5406         * symfile.c (set_objfile_default_section_offset): New function.
5407
5408 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5409
5410         * symfile.c (add_symbol_file_command): Make sure that sections
5411         with the same name are sorted in the same order.
5412
5413 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5414
5415         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
5416         require the second argument.  If omitted, load sections at the
5417         addresses specified in the file.
5418
5419 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5420
5421         * symfile.c (symbol_file_command, symbol_file_add_main_1)
5422         (_initialize_symfile): Add option "-o" to symbol-file to add an
5423         offset to each section of the symbol file.
5424
5425 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5426
5427         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
5428
5429 2018-06-27  Tom Tromey  <tom@tromey.com>
5430
5431         * stack.c (_initialize_stack): Update "func" help text.
5432
5433 2018-06-27  Tom Tromey  <tom@tromey.com>
5434
5435         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
5436         std::vector.
5437         (unwind_infopy_str, pyuw_create_unwind_info)
5438         (unwind_infopy_add_saved_register, pyuw_sniffer)
5439         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
5440         Update.
5441         (struct saved_reg): Add constructor.
5442         <value>: Now a gdbpy_ref<>.
5443
5444 2018-06-27  Tom Tromey  <tom@tromey.com>
5445
5446         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
5447
5448 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5449
5450         * gdb-gdb.py.in: Format using autopep8.
5451
5452 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5453
5454         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
5455         (type_lookup_function): Recognize CORE_ADDR values.
5456
5457 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5458
5459         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
5460         print tag_name.
5461
5462 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5463
5464         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
5465         <__lt__>: Add.
5466
5467 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5468
5469         * gdb-gdb.py: Move to...
5470         * gdb-gdb.py.in: ... here.
5471         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
5472         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
5473         dependencies.
5474         (distclean): Remove gdb-gdb.py when cleaning.
5475         (gdb-gdb.py, gdb-gdb.gdb): New rules.
5476         * configure: Re-generate.
5477
5478 2018-06-27  Pedro Alves  <palves@redhat.com>
5479
5480         * proc-service.c (get_ps_regcache): New.
5481         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
5482         (ps_lsetfpregs): Use it.
5483
5484 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
5485
5486         PR gdb/21695
5487         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
5488         (dwarf_decode_lines_1): Adjust.
5489
5490 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5491
5492         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
5493         override.
5494         <info_proc>: Likewise.
5495
5496 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
5497
5498         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
5499         to windows_fetch_one_register, and only handle the case of
5500         fetching one register.  Move the code that reloads the context
5501         and iterates over all registers if R is negative to...
5502         (windows_nat_target::fetch_registers): ... here.
5503         (do_windows_store_inferior_registers): Rename to
5504         windows_store_one_register, and only handle the case of storing
5505         one register.  Move the code that handles the case where r is
5506         negative to...
5507         (windows_nat_target::store_registers) ... here.
5508
5509 2018-06-26  Tom Tromey  <tom@tromey.com>
5510
5511         PR rust/22574:
5512         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
5513         * rust-lang.c (rust_print_struct_def): Add podata parameter.
5514         Update.
5515         (rust_internal_print_type): Add podata parameter.
5516         (rust_print_type): Update.
5517
5518 2018-06-26  Tom Tromey  <tom@tromey.com>
5519
5520         * typeprint.h (struct print_offset_data) <update, finish,
5521         maybe_print_hole>: New methods.
5522         <indentation>: New constant.
5523         * typeprint.c (print_offset_data::indentation): Define.
5524         (print_offset_data::maybe_print_hole, print_offset_data::update)
5525         (print_offset_data::finish): Move from c-typeprint.c and rename.
5526         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
5527         (print_spaces_filtered_with_print_options): Update.
5528         (c_print_type_union_field_offset, maybe_print_hole)
5529         (c_print_type_struct_field_offset): Move to typeprint.c and
5530         rename.
5531         (c_type_print_base_struct_union): Update.
5532
5533 2018-06-25  Pedro Alves  <palves@redhat.com>
5534
5535         * gdbthread.h (thread_info_ref, delete_thread)
5536         (delete_thread_silent, first_thread_of_inferior)
5537         (any_thread_of_inferior, switch_to_thread)
5538         (enable_thread_stack_temporaries)
5539         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5540         (get_last_thread_stack_temporary)
5541         (value_in_thread_stack_temporaries, can_access_registers_thread):
5542         Spell out "struct thread_info" instead of just "thread_info".
5543         * inferior.h (notice_new_inferior): Likewise.
5544
5545 2018-06-25  Pedro Alves  <palves@redhat.com>
5546
5547         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5548         pass thread_info pointer to delete_thread.
5549         (windows_nat_target::detach): Pass inferior pointer to
5550         detach_inferior.
5551         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
5552         delete_thread.
5553         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
5554         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
5555         and pass a thread_info pointer to delete_thread.
5556         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
5557         pass thread_info pointer to delete_thread.
5558         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
5559         delete_thread_silent call.
5560         * procfs.c (procfs_target::detach): Pass inferior pointer to
5561         detach_inferior.
5562         (procfs_target::wait): Pass thread_info pointer to delete_thread.
5563         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
5564         delete_thread_silent call.
5565         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5566         pass thread_info pointer to delete_thread.
5567         (windows_nat_target::detach): Pass inferior pointer to
5568         delete_inferior.
5569
5570 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5571
5572         * regcache.c (readable_regcache::read_part): Fix asserts.
5573         (reg_buffer::raw_collect_part): New function.
5574         (regcache::write_part): Fix asserts.
5575         (reg_buffer::raw_supply_part): New function.
5576         (regcache::transfer_regset_register): New helper function.
5577         (regcache::transfer_regset): Call new functions.
5578         (regcache_supply_regset): Use gdb_byte*.
5579         (regcache::supply_regset): Likewise.
5580         (regcache_collect_regset): Likewise.
5581         (regcache::collect_regset): Likewise.
5582         * regcache.h (reg_buffer::raw_collect_part): New declaration.
5583         (reg_buffer::raw_supply_part): Likewise.
5584         (regcache::transfer_regset_register): Likewise.
5585         (regcache::transfer_regset): Use gdb_byte*.
5586
5587 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5588
5589         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
5590
5591 2018-06-21  Pedro Alves  <palves@redhat.com>
5592
5593         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
5594         instead of a ptid_t.  All callers adjusted.
5595         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
5596         adjusted.
5597         (print_ada_task_info, display_current_task_id, task_command_1):
5598         Adjust.
5599         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
5600         inferior_thread.
5601         (breakpoint_kind): Adjust.
5602         (remove_breakpoints_pid): Rename to ...
5603         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
5604         pointer.  All callers adjusted.
5605         (bpstat_clear_actions): Use inferior_thread.
5606         (get_bpstat_thread): New.
5607         (bpstat_do_actions): Use it.
5608         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
5609         to take a thread_info pointer.  All callers adjusted.
5610         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
5611         (breakpoint_re_set_thread): Use inferior_thread.
5612         * breakpoint.h (struct inferior): Forward declare.
5613         (bpstat_stop_status): Update.
5614         (remove_breakpoints_pid): Delete.
5615         (remove_breakpoints_inf): New.
5616         * bsd-uthread.c (bsd_uthread_target::wait)
5617         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
5618         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
5619         (maint_btrace_packet_history_cmd)
5620         (maint_btrace_clear_packet_history_cmd): Adjust.
5621         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
5622         inferior_thread.
5623         * cli/cli-interp.c: Include "inferior.h".
5624         * common/refcounted-object.h (struct
5625         refcounted_object_ref_policy): New.
5626         * compile/compile-object-load.c: Include gdbthread.h.
5627         (store_regs): Use inferior_thread.
5628         * corelow.c (core_target::close): Use current_inferior.
5629         (core_target_open): Adjust to use first_thread_of_inferior and use
5630         the current inferior.
5631         * ctf.c (ctf_target::close): Adjust to use current_inferior.
5632         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
5633         <thread>: ... this new field.  All references adjusted.
5634         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
5635         Take a thread_info pointer instead of a ptid_t.
5636         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
5637         (dummy_frame_discard, register_dummy_frame_dtor): Take a
5638         thread_info pointer instead of a ptid_t.
5639         * elfread.c: Include "inferior.h".
5640         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
5641         Use inferior_thread.
5642         * eval.c (evaluate_subexp): Likewise.
5643         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
5644         inferior_thread.
5645         * gdb_proc_service.h (struct thread_info): Forward declare.
5646         (struct ps_prochandle) <ptid>: Delete, replaced by ...
5647         <thread>: ... this new field.  All references adjusted.
5648         * gdbarch.h, gdbarch.c: Regenerate.
5649         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
5650         'thread' parameter.  All implementations and callers adjusted.
5651         * gdbthread.h (thread_info) <set_running>: New method.
5652         (delete_thread, delete_thread_silent): Take a thread_info pointer
5653         instead of a ptid.
5654         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
5655         (first_thread_of_process): Delete, replaced by ...
5656         (first_thread_of_inferior): ... this new function.  All callers
5657         adjusted.
5658         (any_live_thread_of_process): Delete, replaced by ...
5659         (any_live_thread_of_inferior): ... this new function.  All callers
5660         adjusted.
5661         (switch_to_thread, switch_to_no_thread): Declare.
5662         (is_executing): Delete.
5663         (enable_thread_stack_temporaries): Update comment.
5664         <enable_thread_stack_temporaries>: Take a thread_info pointer
5665         instead of a ptid_t.  Incref the thread.
5666         <~enable_thread_stack_temporaries>: Decref the thread.
5667         <m_ptid>: Delete
5668         <m_thr>: New.
5669         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5670         (get_last_thread_stack_temporary)
5671         (value_in_thread_stack_temporaries, can_access_registers_thread):
5672         Take a thread_info pointer instead of a ptid_t.  All callers
5673         adjusted.
5674         * infcall.c (get_call_return_value): Use inferior_thread.
5675         (run_inferior_call): Work with thread pointers instead of ptid_t.
5676         (call_function_by_hand_dummy): Work with thread pointers instead
5677         of ptid_t.  Use thread_info_ref.
5678         * infcmd.c (proceed_thread_callback): Access thread's state
5679         directly.
5680         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
5681         access thread's state directly.
5682         (continue_command): Use inferior_thread.
5683         (info_program_command): Use find_thread_ptid and access thread
5684         state directly.
5685         (proceed_after_attach_callback): Use thread state directly.
5686         (notice_new_inferior): Take a thread_info pointer instead of a
5687         ptid_t.  All callers adjusted.
5688         (exit_inferior): Take an inferior pointer instead of a pid.  All
5689         callers adjusted.
5690         (exit_inferior_silent): New.
5691         (detach_inferior): Delete.
5692         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
5693         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
5694         (detach_inferior_command, kill_inferior_command): Use
5695         find_inferior_id instead of valid_gdb_inferior_id and
5696         gdb_inferior_id_to_pid.
5697         (inferior_command): Use inferior and thread pointers.
5698         * inferior.h (struct thread_info): Forward declare.
5699         (notice_new_inferior): Take a thread_info pointer instead of a
5700         ptid_t.  All callers adjusted.
5701         (detach_inferior): Delete declaration.
5702         (exit_inferior, exit_inferior_silent): Take an inferior pointer
5703         instead of a pid.  All callers adjusted.
5704         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
5705         (valid_gdb_inferior_id): Delete.
5706         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
5707         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
5708         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
5709         ...
5710         <inf>: ... this new field.
5711         <step_ptid>: Delete, replaced by ...
5712         <step_thread>: ... this new field.
5713         (get_displaced_stepping_state): Take an inferior pointer instead
5714         of a pid.  All callers adjusted.
5715         (displaced_step_in_progress_any_inferior): Adjust.
5716         (displaced_step_in_progress_thread): Take a thread pointer instead
5717         of a ptid_t.  All callers adjusted.
5718         (displaced_step_in_progress, add_displaced_stepping_state): Take
5719         an inferior pointer instead of a pid.  All callers adjusted.
5720         (get_displaced_step_closure_by_addr): Adjust.
5721         (remove_displaced_stepping_state): Take an inferior pointer
5722         instead of a pid.  All callers adjusted.
5723         (displaced_step_prepare_throw, displaced_step_prepare)
5724         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
5725         All callers adjusted.
5726         (start_step_over): Adjust.
5727         (infrun_thread_ptid_changed): Remove bit updating ptids in the
5728         displaced step queue.
5729         (do_target_resume): Adjust.
5730         (fetch_inferior_event): Use inferior_thread.
5731         (context_switch, get_inferior_stop_soon): Take an
5732         execution_control_state pointer instead of a ptid_t.  All callers
5733         adjusted.
5734         (switch_to_thread_cleanup): Delete.
5735         (stop_all_threads): Use scoped_restore_current_thread.
5736         * inline-frame.c: Include "gdbthread.h".
5737         (inline_state) <inline_state>: Take a thread pointer instead of a
5738         ptid_t.  All callers adjusted.
5739         <ptid>: Delete, replaced by ...
5740         <thread>: ... this new field.
5741         (find_inline_frame_state): Take a thread pointer instead of a
5742         ptid_t.  All callers adjusted.
5743         (skip_inline_frames, step_into_inline_frame)
5744         (inline_skipped_frames, inline_skipped_symbol): Take a thread
5745         pointer instead of a ptid_t.  All callers adjusted.
5746         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
5747         (inline_skipped_frames, inline_skipped_symbol): Likewise.
5748         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
5749         pointers directly.
5750         * linux-nat.c (get_detach_signal): Likewise.
5751         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
5752         (thread_db_notice_clone): Adjust.
5753         (thread_db_find_new_threads_silently)
5754         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
5755         a thread pointer instead of a ptid_t.  All callers adjusted.
5756         * mi/mi-cmd-var.c: Include "inferior.h".
5757         (mi_cmd_var_update_iter): Update to use thread pointers.
5758         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
5759         inferior directly.
5760         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
5761         out to ...
5762         (mi_output_running): ... this new function.
5763         (mi_on_resume_1): Adjust to use it.
5764         (mi_user_selected_context_changed): Adjust to use inferior_thread.
5765         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
5766         directly.
5767         (interrupt_thread_callback): : Adjust to use thread and inferior
5768         pointers.
5769         * proc-service.c: Include "gdbthread.h".
5770         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
5771         * progspace-and-thread.c: Include "inferior.h".
5772         * progspace.c: Include "inferior.h".
5773         * python/py-exitedevent.c (create_exited_event_object): Adjust to
5774         hold a reference to an inferior_object.
5775         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
5776         inferior_thread.
5777         * python/py-inferior.c (struct inferior_object): Give the type a
5778         tag name instead of a typedef.
5779         (python_on_normal_stop): No need to check if the current thread is
5780         listed.
5781         (inferior_to_inferior_object): Change return type to
5782         inferior_object.  All callers adjusted.
5783         (find_thread_object): Delete, bits factored out to ...
5784         (thread_to_thread_object): ... this new function.
5785         * python/py-infthread.c (create_thread_object): Use
5786         inferior_to_inferior_object.
5787         (thpy_is_stopped): Use thread pointer directly.
5788         (gdbpy_selected_thread): Use inferior_thread.
5789         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
5790         field, replaced with ...
5791         <thread>: ... this new field.  All users adjusted.
5792         (btpy_insn_or_gap_new): Drop const.
5793         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
5794         callers adjusted.
5795         * python/py-record.c: Include "gdbthread.h".
5796         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5797         a ptid_t.  All callers adjusted.
5798         (gdbpy_current_recording): Use inferior_thread.
5799         * python/py-record.h (recpy_record_object) <ptid>: Delete
5800         field, replaced with ...
5801         <thread>: ... this new field.  All users adjusted.
5802         (recpy_element_object) <ptid>: Delete
5803         field, replaced with ...
5804         <thread>: ... this new field.  All users adjusted.
5805         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5806         a ptid_t.  All callers adjusted.
5807         * python/py-threadevent.c: Include "gdbthread.h".
5808         (get_event_thread): Use thread_to_thread_object.
5809         * python/python-internal.h (struct inferior_object): Forward
5810         declare.
5811         (find_thread_object, find_inferior_object): Delete declarations.
5812         (thread_to_thread_object, inferior_to_inferior_object): New
5813         declarations.
5814         * record-btrace.c: Include "inferior.h".
5815         (require_btrace_thread): Use inferior_thread.
5816         (record_btrace_frame_sniffer)
5817         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
5818         (get_thread_current_frame): Use scoped_restore_current_thread and
5819         switch_to_thread.
5820         (get_thread_current_frame): Use thread pointer directly.
5821         (record_btrace_replay_at_breakpoint): Use thread's inferior
5822         pointer directly.
5823         * record-full.c: Include "inferior.h".
5824         * regcache.c: Include "gdbthread.h".
5825         (get_thread_arch_regcache): Use the inferior's address space
5826         directly.
5827         (get_thread_regcache, registers_changed_thread): New.
5828         * regcache.h (get_thread_regcache(thread_info *thread)): New
5829         overload.
5830         (registers_changed_thread): New.
5831         (remote_target) <remote_detach_1>: Swap order of parameters.
5832         (remote_add_thread): <remote_add_thread>: Return the new thread.
5833         (get_remote_thread_info(ptid_t)): New overload.
5834         (remote_target::remote_notice_new_inferior): Use thread pointers
5835         directly.
5836         (remote_target::process_initial_stop_replies): Use
5837         thread_info::set_running.
5838         (remote_target::remote_detach_1, remote_target::detach)
5839         (extended_remote_target::detach): Adjust.
5840         * stack.c (frame_show_address): Use inferior_thread.
5841         * target-debug.h (target_debug_print_thread_info_pp): New.
5842         * target-delegates.c: Regenerate.
5843         * target.c (default_thread_address_space): Delete.
5844         (memory_xfer_partial_1): Use current_inferior.
5845         (target_detach): Use current_inferior.
5846         (target_thread_address_space): Delete.
5847         (generic_mourn_inferior): Use current_inferior.
5848         * target.h (struct target_ops) <thread_address_space>: Delete.
5849         (target_thread_address_space): Delete.
5850         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
5851         pointers directly.
5852         (delete_thread_1, delete_thread, delete_thread_silent): Take a
5853         thread pointer instead of a ptid_t.  Adjust all callers.
5854         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
5855         (first_thread_of_process): Delete, replaced by ...
5856         (first_thread_of_inferior): ... this new function.  All callers
5857         adjusted.
5858         (any_thread_of_process): Rename to ...
5859         (any_thread_of_inferior): ... this, and take an inferior pointer.
5860         (any_live_thread_of_process): Rename to ...
5861         (any_live_thread_of_inferior): ... this, and take an inferior
5862         pointer.
5863         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5864         (value_in_thread_stack_temporaries)
5865         (get_last_thread_stack_temporary): Take a thread pointer instead
5866         of a ptid_t.  Adjust all callers.
5867         (thread_info::set_running): New.
5868         (validate_registers_access): Use inferior_thread.
5869         (can_access_registers_ptid): Rename to ...
5870         (can_access_registers_thread): ... this, and take a thread
5871         pointer.
5872         (print_thread_info_1): Adjust to compare thread pointers instead
5873         of ptids.
5874         (switch_to_no_thread, switch_to_thread): Make extern.
5875         (scoped_restore_current_thread::~scoped_restore_current_thread):
5876         Use m_thread pointer directly.
5877         (scoped_restore_current_thread::scoped_restore_current_thread):
5878         Use inferior_thread.
5879         (thread_command): Use thread pointer directly.
5880         (thread_num_make_value_helper): Use inferior_thread.
5881         * top.c (execute_command): Use inferior_thread.
5882         * tui/tui-interp.c: Include "inferior.h".
5883         * varobj.c (varobj_create): Use inferior_thread.
5884         (value_of_root_1): Use find_thread_global_id instead of
5885         global_thread_id_to_ptid.
5886
5887 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
5888
5889         * regcache.c (readable_regcache::read_part): Avoid memcpy when
5890         possible.
5891         (regcache::write_part): Likewise.
5892         (readable_regcache::cooked_read_part): Update comment.
5893         (readable_regcache::cooked_write_part): Likewise.
5894         * regcache.h: (readable_regcache::read_part): Likewise.
5895         (regcache::write_part): Likewise.
5896
5897 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
5898             Dirk Schubert  <dirk.schubert@arm.com>
5899
5900         * aarch64-linux-nat.c (post_attach): New.
5901         (aarch64_linux_nat_target::post_attach): Override post_attach to
5902         record the number of hardware debug registers.
5903
5904 2018-06-20  Tom Tromey  <tom@tromey.com>
5905
5906         * python/py-param.c (add_setshow_generic): Make parameters const.
5907         (parmpy_init): Update.
5908
5909 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
5910
5911         * regcache.h (regcache_cooked_read_ftype): Rename to...
5912         (register_read_ftype): ...this, change type to function_view.
5913         (class reg_buffer) <save>: Remove src parameter.
5914         (readonly_detached_regcache) <readonly_detached_regcache>: Make
5915         parameter non-const in first overload.  Remove src parameter in
5916         second overload.
5917         * regcache.c (do_cooked_read): Remove.
5918         (readonly_detached_regcache::readonly_detached_regcache): Make
5919         parameter non-const, adjust call to other constructor.
5920         (reg_buffer::save): Remove src parameter.
5921         * frame.c (do_frame_register_read): Remove.
5922         (frame_save_as_regcache): Use lambda function.
5923         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
5924         parameter to ppu2spu_data *.
5925         (ppu2spu_sniffer): Use lambda function.
5926
5927 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
5928
5929         * record-full.c (record_full_target::insert_breakpoint): Remove
5930         "struct" keyword, add const.
5931
5932 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
5933
5934         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
5935         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
5936         * configure.ac: Remove AC_PREREQ, add missing quoting.
5937         * gnulib/configure.ac: Modernize usage of
5938         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
5939         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
5940         (AUTOMAKE_VERSION): Bump to 1.15.1.
5941         * configure: Re-generate.
5942         * config.in: Re-generate.
5943         * aclocal.m4: Re-generate.
5944         * gnulib/aclocal.m4: Re-generate.
5945         * gnulib/config.in: Re-generate.
5946         * gnulib/configure: Re-generate.
5947         * gnulib/import/Makefile.in: Re-generate.
5948
5949 2018-06-19  Pedro Alves  <palves@redhat.com>
5950
5951         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
5952         (lookup_minimal_symbol_by_pc_section): ... here with
5953         gdb_assert_not_reached added.
5954
5955 2018-06-19  Pedro Alves  <palves@redhat.com>
5956
5957         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
5958         parameter with a block parameter.  Compare location's block symbol
5959         with the frame's block instead of addresses.
5960         (skip_inline_frames): Pass the current block instead of the
5961         frame's address.  Break out as soon as we determine the frame
5962         should not be skipped.
5963
5964 2018-06-18  Tom Tromey  <tom@tromey.com>
5965
5966         * solib-aix.c (solib_aix_get_section_offsets): Return
5967         unique_xmalloc_ptr.
5968         (solib_aix_solib_create_inferior_hook): Update.
5969
5970 2018-06-18  Tom Tromey  <tom@tromey.com>
5971
5972         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
5973
5974 2018-06-18  Tom Tromey  <tom@tromey.com>
5975
5976         * solib-frv.c (frv_relocate_main_executable): Use
5977         unique_xmalloc_ptr.
5978         * solib-dsbt.c (dsbt_relocate_main_executable): Use
5979         unique_xmalloc_ptr.
5980
5981 2018-06-18  Tom Tromey  <tom@tromey.com>
5982
5983         * objfiles.h (inhibit_section_map_updates): Update.
5984         (resume_section_map_updates, resume_section_map_updates_cleanup):
5985         Remove.
5986         * solib-svr4.c (svr4_handle_solib_event): Update.
5987         * objfiles.c (inhibit_section_map_updates): Return
5988         scoped_restore_tmpl<int>.
5989         (resume_section_map_updates, resume_section_map_updates_cleanup):
5990         Remove.
5991
5992 2018-06-18  Tom Tromey  <tom@tromey.com>
5993
5994         * valprint.h (read_string): Update.
5995         * valprint.c (read_string): Change type of "buffer".
5996         (val_print_string): Update.
5997         * python/py-value.c (valpy_string): Update.
5998         * language.h (struct language_defn) <la_get_string>: Change
5999         type of "buffer".
6000         (default_get_string, c_get_string): Update.
6001         * language.c (default_get_string): Change type of "buffer".
6002         * guile/scm-value.c (gdbscm_value_to_string): Update.
6003         * c-lang.c (c_get_string): Change type of "buffer".
6004
6005 2018-06-18  Tom Tromey  <tom@tromey.com>
6006
6007         * ser-mingw.c (struct pipe_state_destroyer): New.
6008         (pipe_state_up): New typedef.
6009         (cleanup_pipe_state): Remove.
6010         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
6011
6012 2018-06-18  Tom Tromey  <tom@tromey.com>
6013
6014         * rust-lang.h (rust_yyerror): Don't declare.
6015         * rust-lang.c (rust_language_defn): Update.
6016         * rust-exp.y (yyerror): Now static.
6017         * parse.c (parse_exp_in_context_1): Update.
6018         * p-lang.h (p_yyerror): Don't declare.
6019         * p-lang.c (p_language_defn): Update.
6020         * p-exp.y (yyerror): Now static.
6021         * opencl-lang.c (opencl_language_defn): Update.
6022         * objc-lang.c (objc_language_defn): Update.
6023         * m2-lang.h (m2_yyerror): Don't declare.
6024         * m2-lang.c (m2_language_defn): Update.
6025         * m2-exp.y (yyerror): Now static.
6026         * language.h (struct language_defn) <la_error>: Remove.
6027         * language.c (unk_lang_error): Remove.
6028         (unknown_language_defn, auto_language_defn): Remove.
6029         * go-lang.h (go_yyerror): Don't declare.
6030         * go-lang.c (go_language_defn): Update.
6031         * go-exp.y (yyerror): Now static.
6032         * f-lang.h (f_yyerror): Don't declare.
6033         * f-lang.c (f_language_defn): Update.
6034         * f-exp.y (yyerror): Now static.
6035         * d-lang.h (d_yyerror): Don't declare.
6036         * d-lang.c (d_language_defn): Update.
6037         * d-exp.y (yyerror): Now static.
6038         * c-lang.h (c_yyerror): Don't declare.
6039         * c-lang.c (c_language_defn, cplus_language_defn)
6040         (asm_language_defn, minimal_language_defn): Update.
6041         * c-exp.y (yyerror): Now static.
6042         * ada-lang.h (ada_yyerror): Don't declare.
6043         * ada-lang.c (ada_language_defn): Update.
6044         * ada-exp.y (yyerror): Now static.
6045
6046 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6047
6048         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
6049         (store_sveregs_to_thread): Likewise.
6050         (aarch64_linux_fetch_inferior_registers): Check for SVE.
6051         (aarch64_linux_store_inferior_registers): Likewise.
6052         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
6053         function.
6054         (aarch64_sve_regs_copy_to_regcache): Likewise.
6055         (aarch64_sve_regs_copy_from_regcache): Likewise.
6056         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
6057         declaration.
6058         (aarch64_sve_regs_copy_to_regcache): Likewise.
6059         (aarch64_sve_regs_copy_from_regcache): Likewise.
6060         (sve_context): Structure from Linux headers.
6061         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
6062         (SVE_SIG_ZREG_SIZE): Likewise.
6063         (SVE_SIG_PREG_SIZE): Likewise.
6064         (SVE_SIG_FFR_SIZE): Likewise.
6065         (SVE_SIG_REGS_OFFSET): Likewise.
6066         (SVE_SIG_ZREGS_OFFSET): Likewise.
6067         (SVE_SIG_ZREG_OFFSET): Likewise.
6068         (SVE_SIG_ZREGS_SIZE): Likewise.
6069         (SVE_SIG_PREGS_OFFSET): Likewise.
6070         (SVE_SIG_PREG_OFFSET): Likewise.
6071         (SVE_SIG_PREGS_SIZE): Likewise.
6072         (SVE_SIG_FFR_OFFSET): Likewise.
6073         (SVE_SIG_REGS_SIZE): Likewise.
6074         (SVE_SIG_CONTEXT_SIZE): Likewise.
6075         (SVE_PT_REGS_MASK): Likewise.
6076         (SVE_PT_REGS_FPSIMD): Likewise.
6077         (SVE_PT_REGS_SVE): Likewise.
6078         (SVE_PT_VL_INHERIT): Likewise.
6079         (SVE_PT_VL_ONEXEC): Likewise.
6080         (SVE_PT_REGS_OFFSET): Likewise.
6081         (SVE_PT_FPSIMD_OFFSET): Likewise.
6082         (SVE_PT_FPSIMD_SIZE): Likewise.
6083         (SVE_PT_SVE_ZREG_SIZE): Likewise.
6084         (SVE_PT_SVE_PREG_SIZE): Likewise.
6085         (SVE_PT_SVE_FFR_SIZE): Likewise.
6086         (SVE_PT_SVE_FPSR_SIZE): Likewise.
6087         (SVE_PT_SVE_FPCR_SIZE): Likewise.
6088         (__SVE_SIG_TO_PT): Likewise.
6089         (SVE_PT_SVE_OFFSET): Likewise.
6090         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
6091         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
6092         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
6093         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
6094         (SVE_PT_SVE_PREG_OFFSET): Likewise.
6095         (SVE_PT_SVE_PREGS_SIZE): Likewise.
6096         (SVE_PT_SVE_FFR_OFFSET): Likewise.
6097         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
6098         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
6099         (SVE_PT_SVE_SIZE): Likewise.
6100         (SVE_PT_SIZE): Likewise.
6101         (HAS_SVE_STATE): New define.
6102
6103 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6104
6105         * nat/aarch64-sve-linux-sigcontext.h: New file.
6106         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
6107         new files.
6108         (SVE_VQ_MIN): Likewise.
6109         (SVE_VQ_MAX): Likewise.
6110         (SVE_VL_MIN): Likewise.
6111         (SVE_VL_MAX): Likewise.
6112         (SVE_NUM_ZREGS): Likewise.
6113         (SVE_NUM_PREGS): Likewise.
6114         (sve_vl_valid): Likewise.
6115         (struct user_sve_header): Likewise.
6116
6117 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
6118             Richard Bunt <Richard.Bunt@arm.com>
6119
6120         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
6121         was requested by GDB.
6122
6123 2018-06-15  Tom de Vries  <tdevries@suse.de>
6124
6125         * MAINTAINERS (Write After Approval): Add Tom de Vries.
6126
6127 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
6128
6129         * gnulib/update-gnulib.sh: Print expected versions of
6130         autoconf/aclocal.
6131
6132 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
6133
6134         * arch-utils.c (default_type_align): Use type_length_units.
6135         * gdbtypes.c (type_align): Use type_length_units.
6136
6137 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6138
6139         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
6140         of 'define' command.
6141
6142 2018-06-14  Tom de Vries  <tdevries@suse.de>
6143
6144         PR cli/22573
6145         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
6146         get_no_prettyformat_print_options.
6147
6148 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
6149
6150         * sparc-nat.h: Include target.h.
6151         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
6152         <fetch_registers>: Remove this argument in function call.
6153         <store_registers>: Remove this argument in function call, remove
6154         extra semicolon.
6155         <low_forget_process>: Call sparc64_forget_process instead of
6156         sparc_forget_process.
6157
6158 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6159
6160         * procfs.c (_initialize_procfs): Use add_inf_child_target.
6161         (procfs_target::make_corefile_notes): Adjust to new
6162         target_read_alloc return type.
6163
6164 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6165             Stephen Roberts  <stephen.roberts@arm.com>
6166
6167         PR gdb/22882
6168         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
6169         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
6170         Move should_notify_stop local into more inner scope.
6171
6172 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6173             Stephen Roberts  <stephen.roberts@arm.com>
6174
6175         PR gdb/22882
6176         * infrun.c (resume_1): Add call to mark_async_event_handler.
6177
6178 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6179
6180         * infrun.c (do_target_wait): Change old version of $pc printed.
6181
6182 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
6183
6184         * dwarf2read.c (read_index_from_section): Rename to...
6185         (read_gdb_index_from_section): ... this, update all callers.
6186         (dwarf2_read_index): Rename to...
6187         (dwarf2_read_gdb_index): ... this, update all callers.
6188
6189 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
6190
6191         * gdb/hppa-linux-nat.c
6192         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
6193         hppa_linux_nat_target::fetch_registers.
6194
6195 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6196
6197         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
6198         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
6199         (AARCH64_DWARF_SVE_FFR): Likewise.
6200         (AARCH64_DWARF_SVE_P0): Likewise.
6201         (AARCH64_DWARF_SVE_Z0): Likewise.
6202
6203 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6204
6205         * common/common-regcache.h (raw_compare): New function.
6206         * regcache.c (regcache::raw_compare): Likewise.
6207         * regcache.h (regcache::raw_compare): New declaration.
6208
6209 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6210
6211         * common/common-regcache.h (reg_buffer_common): New structure.
6212         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
6213         (reg_buffer::raw_supply): Likewise.
6214         (reg_buffer::raw_supply_integer): Likewise.
6215         (reg_buffer::raw_supply_zeroed): Likewise.
6216         (reg_buffer::raw_collect): Likewise.
6217         (reg_buffer::raw_collect_integer): Likewise.
6218         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
6219         (reg_buffer::raw_supply): Likewise.
6220         (reg_buffer::raw_supply_integer): Likewise.
6221         (reg_buffer::raw_supply_zeroed): Likewise.
6222         (reg_buffer::raw_collect): Likewise.
6223         (reg_buffer::raw_collect_integer): Likewise.
6224
6225 2018-06-10  Tom Tromey  <tom@tromey.com>
6226
6227         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
6228         (class remote_state) <stop_reply_queue>: Now std::vector.
6229         (remote_state::~remote_state)
6230         (remote_target::stop_reply_queue_length): Update.
6231         (struct queue_iter_param, remove_child_of_pending_fork)
6232         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
6233         (check_pending_event_prevents_wildcard_vcont_callback)
6234         (remove_stop_reply_for_inferior)
6235         (remove_stop_reply_of_remote_state)
6236         (remote_notif_remove_once_on_match)
6237         (stop_reply_match_ptid_and_ws)
6238         (remote_kill_child_of_pending_fork): Remove.
6239         (remote_target::remove_new_fork_children)
6240         (remote_target::check_pending_events_prevent_wildcard_vcont)
6241         (remote_target::discard_pending_stop_replies)
6242         (remote_target::discard_pending_stop_replies_in_queue)
6243         (remote_target::remote_notif_remove_queued_reply)
6244         (remote_target::queued_stop_reply)
6245         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
6246         (remote_target::wait, remote_target::kill_new_fork_children)
6247         (remote_target::async): Update.
6248
6249 2018-06-10  Tom Tromey  <tom@tromey.com>
6250
6251         * record-full.c (record_full_arch_list_cleanups): Remove.
6252         (record_full_message): Use try/catch.
6253         (record_full_wait_cleanups): Remove.
6254         (record_full_wait_1): Use try/catch.
6255         (record_full_restore): Likewise.
6256
6257 2018-06-10  Tom Tromey  <tom@tromey.com>
6258
6259         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
6260         declare VEC.  Add constructor.
6261         <in_target_beneath>: Now bool.
6262         (record_full_breakpoints): Now a std::vector, static.
6263         (record_full_sync_record_breakpoints)
6264         (record_full_init_record_breakpoints)
6265         (record_full_target::insert_breakpoint)
6266         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
6267
6268 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
6269
6270         * dwarf2read.c (process_cu_includes): Remove struct keyword.
6271         * serial.c (serial_interface_lookup): Remove struct keyword.
6272
6273 2018-06-10  Tom Tromey  <tom@tromey.com>
6274
6275         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
6276         method.
6277         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
6278         a method.
6279         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
6280         method.
6281         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
6282         "beneath" as a method.
6283         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
6284         Use "beneath" as a method.
6285
6286 2018-06-10  Tom Tromey  <tom@tromey.com>
6287
6288         * tracefile.c (struct trace_file_writer_deleter): New.
6289         <operator()>: Rename from trace_file_writer_xfree.
6290         (trace_file_writer_up): New typedef.
6291         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
6292
6293 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6294
6295         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
6296         <m_registers, m_register_status>: Change type to
6297         std::unique_ptr.
6298         * regcache.c (reg_buffer::reg_buffer): Use new instead of
6299         XCNEWVEC.
6300
6301 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6302
6303         * common/common-regcache.h (enum register_status): Add
6304         underlying type "signed char".
6305         * regcache.h (reg_buffer) <m_register_status>: Change type to
6306         register_status *.
6307         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
6308         register_status instead of signed char.
6309         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
6310         (reg_buffer::get_register_status): Remove cast.
6311         (readable_regcache::raw_read): Remove cast.
6312         (readable_regcache::cooked_read): Remove cast.
6313
6314 2018-06-09  Tom Tromey  <tom@tromey.com>
6315
6316         * source.c (reverse_search_command, forward_search_command): Use
6317         scoped_fd.
6318
6319 2018-06-09  Tom Tromey  <tom@tromey.com>
6320
6321         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
6322         (serial_ops_list): Now static, std::vector.
6323         (serial_interface_lookup, serial_add_interface): Update.
6324
6325 2018-06-09  Tom Tromey  <tom@tromey.com>
6326
6327         * dwarf2read.c (process_cu_includes): Update.
6328         (process_full_comp_unit): Update.
6329         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
6330         std::vector.
6331
6332 2018-06-08  Paul Koning  <paul_koning@dell.com>
6333
6334         PR gdb/23252
6335
6336         * python/python.c (do_start_initialization):
6337         Avoid call to internal Python API.
6338         (init__gdb_module): New function.
6339
6340 2018-06-08  Gary Benson <gbenson@redhat.com>
6341
6342         * linux-thread-db.c (valprint.h): New include.
6343         (struct check_thread_db_info): New structure.
6344         (check_thread_db_on_load, tdb_testinfo): New static globals.
6345         (check_thread_db, check_thread_db_callback): New functions.
6346         (try_thread_db_load_1): Run integrity checks if requested.
6347         (maintenance_check_libthread_db): New function.
6348         (_initialize_thread_db): Register "maint check libthread-db"
6349         and "maint set/show check-libthread-db".
6350         * NEWS: Mention the above new commands.
6351
6352 2018-06-08  Tom Tromey  <tom@tromey.com>
6353
6354         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
6355         now a method.
6356
6357 2018-06-08  Tom Tromey  <tom@tromey.com>
6358
6359         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
6360
6361 2018-06-08  Tom Tromey  <tom@tromey.com>
6362
6363         * common/btrace-common.h (struct btrace_data): Add constructor,
6364         destructor, move assignment operator.
6365         <empty, clear, fini>: New methods.
6366         <format>: Initialize.
6367         (btrace_data_init, btrace_data_fini, btrace_data_clear)
6368         (btrace_data_empty): Don't declare.
6369         * common/btrace-common.c (btrace_data_init): Remove.
6370         (btrace_data::fini): Rename from btrace_data_fini.
6371         (btrace_data::empty): Rename from btrace_data_empty.
6372         (btrace_data::clear): Rename from btrace_data_clear.  Return
6373         bool.
6374         * btrace.h (make_cleanup_btrace_data): Don't declare.
6375         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
6376         (parse_xml_btrace): Update.
6377         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
6378         (maint_btrace_clear_packet_history_cmd): Update.
6379
6380 2018-06-07  Pedro Alves  <palves@redhat.com>
6381
6382         * target.h (target_ops) <beneath>: Now a method.  All references
6383         updated.
6384         (class target_stack): New.
6385         * target.c (g_target_stack): New.
6386         (g_current_top_target): Delete.
6387         (current_top_target): Get the top target out of g_target_stack.
6388         (target_stack::push, target_stack::unpush): New.
6389         (push_target, unpush_target): Reimplement.
6390         (target_is_pushed): Reimplement in terms of g_target_stack.
6391         (target_ops::beneath, target_stack::find_beneath): New.
6392
6393 2018-06-07  Pedro Alves  <palves@redhat.com>
6394
6395         * target.h (find_target_beneath): Delete declaration.
6396         * target.c (find_target_beneath): Delete definition.
6397         * aix-thread.c: All callers of find_target_beneath adjusted to
6398         call target_ops::beneath instead.
6399         * bsd-uthread.c: Likewise.
6400         * linux-thread-db.c: Likewise.
6401         * ravenscar-thread.c: Likewise.
6402         * sol-thread.c: Likewise.
6403         * spu-multiarch.c: Likewise.
6404
6405 2018-06-07  Pedro Alves  <palves@redhat.com>
6406
6407         * target.h (target_ops) <beneath>: Now a method.  All references
6408         updated.
6409         (target_ops) <m_beneath>: New.
6410         * target.c (target_ops::beneath): New.
6411         * corelow.c: Adjust all references to target_ops::beneath.
6412         * linux-thread-db.c: Likewise.
6413         * make-target-delegates: Likewise.
6414         * record-btrace.c: Likewise.
6415         * record-full.c: Likewise.
6416         * remote.c: Likewise.
6417         * target.c: Likewise.
6418         * target-delegates.c: Regenerate.
6419
6420 2018-06-07  Pedro Alves  <palves@redhat.com>
6421
6422         * target.h (target_stack): Delete.
6423         (current_top_target): Declare function.
6424         * target.c (target_stack): Delete.
6425         (g_current_top_target): New.
6426         (current_top_target): New function.
6427         * auxv.c: Use current_top_target instead of target_stack
6428         throughout.
6429         * avr-tdep.c: Likewise.
6430         * breakpoint.c: Likewise.
6431         * corefile.c: Likewise.
6432         * elfread.c: Likewise.
6433         * eval.c: Likewise.
6434         * exceptions.c: Likewise.
6435         * frame.c: Likewise.
6436         * gdbarch-selftests.c: Likewise.
6437         * gnu-v3-abi.c: Likewise.
6438         * ia64-tdep.c: Likewise.
6439         * ia64-vms-tdep.c: Likewise.
6440         * infcall.c: Likewise.
6441         * infcmd.c: Likewise.
6442         * infrun.c: Likewise.
6443         * linespec.c: Likewise.
6444         * linux-tdep.c: Likewise.
6445         * minsyms.c: Likewise.
6446         * ppc-linux-nat.c: Likewise.
6447         * ppc-linux-tdep.c: Likewise.
6448         * procfs.c: Likewise.
6449         * regcache.c: Likewise.
6450         * remote.c: Likewise.
6451         * rs6000-tdep.c: Likewise.
6452         * s390-linux-nat.c: Likewise.
6453         * s390-tdep.c: Likewise.
6454         * solib-aix.c: Likewise.
6455         * solib-darwin.c: Likewise.
6456         * solib-dsbt.c: Likewise.
6457         * solib-spu.c: Likewise.
6458         * solib-svr4.c: Likewise.
6459         * solib-target.c: Likewise.
6460         * sparc-tdep.c: Likewise.
6461         * sparc64-tdep.c: Likewise.
6462         * spu-tdep.c: Likewise.
6463         * symfile.c: Likewise.
6464         * symtab.c: Likewise.
6465         * target-descriptions.c: Likewise.
6466         * target-memory.c: Likewise.
6467         * target.c: Likewise.
6468         * target.h: Likewise.
6469         * tracefile-tfile.c: Likewise.
6470         * tracepoint.c: Likewise.
6471         * valops.c: Likewise.
6472         * valprint.c: Likewise.
6473         * value.c: Likewise.
6474         * windows-tdep.c: Likewise.
6475         * mi/mi-main.c: Likewise.
6476
6477 2018-06-07  Tom Tromey  <tom@tromey.com>
6478
6479         * valprint.h (build_address_symbolic): Declare.
6480         * printcmd.c (print_address_symbolic): Update.
6481         (build_address_symbolic): Change "name" and "filename" to
6482         std::string.
6483         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
6484         Update.
6485         * defs.h (build_address_symbolic): Remove declaration.
6486
6487 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
6488
6489         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
6490         (aarch64_vnv_type): Add function.
6491         (aarch64_pseudo_register_name): Add V regs for SVE.
6492         (aarch64_pseudo_register_type): Likewise.
6493         (aarch64_pseudo_register_reggroup_p): Likewise.
6494         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
6495         (aarch64_pseudo_read_value): Add V regs for SVE.
6496         (aarch64_pseudo_write_2): Use V0 offset for SVE
6497         (aarch64_pseudo_write): Add V regs for SVE.
6498         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
6499
6500 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
6501
6502         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
6503         (sve_vl_from_vq): Likewise.
6504
6505 2018-06-05  Tom Tromey  <tom@tromey.com>
6506
6507         * cli/cli-cmds.c (show_version): Update.
6508         * top.c (print_gdb_version): Add "interactive" parameter.
6509         Update.
6510         * main.c (captured_main_1): Update.
6511         * top.h (print_gdb_version): Add "interactive" parameter and a
6512         comment.
6513
6514 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
6515
6516         * common/enum-flags.h: Add trailing semicolon to example in
6517         comment.
6518
6519 2018-06-05  Tom Tromey  <tom@tromey.com>
6520
6521         PR cli/12326:
6522         * NEWS: Add entry about pager.
6523         * utils.c (pagination_disabled_for_command): New global.
6524         (prompt_for_continue): Allow "c" response to prompt.
6525         (reinitialize_more_filter): Clear
6526         pagination_disabled_for_command.
6527         (fputs_maybe_filtered): Check pagination_disabled_for_command.
6528
6529 2018-06-04  Tom Tromey  <tom@tromey.com>
6530
6531         * ada-lang.h (ada_lookup_symbol_list): Update.
6532         * ada-lang.c (resolve_subexp): Update.
6533         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
6534         parameter.
6535         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
6536         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
6537         results parameter to std::vector.
6538         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
6539         Update.
6540         * ada-exp.y (block_lookup): Update.
6541         (select_possible_type_sym): Change type of syms.  Remove nsyms
6542         parameter.
6543         (write_var_or_type, write_name_assoc): Update.
6544
6545 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
6546
6547         * windows-nat.c (windows_nat_target::xfer_partial): Return
6548         TARGET_XFER_E_IO if we need to delegate to the target beneath
6549         but BENEATH is NULL.
6550
6551 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
6552
6553         * Makefile.in (config.status): Add configure.nat as a
6554         dependency.
6555
6556 2018-06-04  Tom Tromey  <tom@tromey.com>
6557
6558         * cp-name-parser.y (cpname_state): Add method declarations.
6559         (HANDLE_QUAL): Update.
6560         (cpname_state::d_grab, cpname_state::fill_comp)
6561         (cpname_state::make_operator, cpname_state::make_dtor)
6562         (cpname_state::make_builtin_type, cpname_state::make_name)
6563         (cpname_state::d_qualify, cpname_state::d_int_type)
6564         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
6565         (%union): Move earlier.
6566
6567 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6568
6569         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
6570
6571 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6572
6573         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
6574         (aarch64_pseudo_write_1): Likewise.
6575         (aarch64_pseudo_read_value): Use helper.
6576         (aarch64_pseudo_write): Likewise.
6577
6578 2018-06-04  Pedro Alves  <palves@redhat.com>
6579
6580         * darwin-nat.c (darwin_ops): Delete.
6581         (darwin_attach_pid): Use get_native_target.
6582
6583 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6584
6585         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
6586         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
6587
6588 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6589
6590         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
6591         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
6592         (aarch64_gdbarch_init): Check for SVE.
6593         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
6594
6595 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6596
6597         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
6598         * aarch64-tdep.h (aarch64_read_description): Likewise.
6599         * arch/aarch64.c (aarch64_create_target_description): Likewise.
6600         * arch/aarch64.h (aarch64_create_target_description): Likewise.
6601         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
6602         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
6603         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
6604
6605 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
6606
6607         * value.c (value_fetch_lazy_bitfield): New.
6608         (value_fetch_lazy_memory): New.
6609         (value_fetch_lazy_register): New.
6610         (value_fetch_lazy): Factor out to smaller functions.
6611
6612 2018-06-01  Tom Tromey  <tom@tromey.com>
6613
6614         * cp-name-parser.y (backslashable, represented): Now const.
6615
6616 2018-06-01  Tom Tromey  <tom@tromey.com>
6617
6618         * cp-name-parser.y: Include parser-defs.h.
6619         (parser_fprintf): Remove declaration.
6620
6621 2018-06-01  Tom Tromey  <tom@tromey.com>
6622
6623         * cp-name-parser.y: Use %pure-parser, %lex-param, and
6624         %parse-param.
6625         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
6626         (global_result): Remove globals.
6627         (struct cpname_state): New.
6628         (yyparse): Don't declare.
6629         (yylex, yyerror): Move declarations after %union.
6630         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
6631         (make_name): Add state parameter.
6632         Update all callers.
6633         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
6634         parameter.
6635         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
6636         Update.
6637         (yylex): Add lvalp, state parameters.
6638         (yyerror): Add state parameter.
6639         (cp_demangled_name_to_comp): Update.
6640
6641 2018-06-01  Tom Tromey  <tom@tromey.com>
6642
6643         * cp-name-parser.y (parser_fprintf): Declare.
6644         (GDB_YY_REMAP_PREFIX): Define.
6645         Include yy-remap.h.  Don't redefine yy* identifiers.
6646
6647 2018-06-01  Tom Tromey  <tom@tromey.com>
6648
6649         * python/py-type.c (typy_legacy_template_argument): Update.
6650         * cp-support.h (cp_demangled_name_to_comp): Update.
6651         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
6652         parameter to be a "std::string *".
6653         (main): Update.
6654
6655 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
6656
6657         * ada-lex.l: Include "diagnostics.h" instead of
6658         "common/diagnostics.h".
6659         * unittests/environ-selftests.c: Likewise.
6660         * common/diagnostics.h: Moved to ../include.
6661
6662 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
6663
6664         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
6665         to language_mode_manual while calling breakpoint_re_set_one.
6666
6667 2018-06-01  Tom Tromey  <tom@tromey.com>
6668
6669         * valops.c (value_cast_structs, destructor_name_p): Update.
6670         * symtab.c (gdb_mangle_name): Update.
6671         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
6672         Update.
6673         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
6674         (pascal_object_print_value_fields, pascal_object_print_value):
6675         Update.
6676         * p-typeprint.c (pascal_type_print_derivation_info): Update.
6677         * linespec.c (find_methods): Update.
6678         * gdbtypes.h (type_name_no_tag): Remove.
6679         (type_name_or_error): Rename from type_name_no_tag_or_error.
6680         * gdbtypes.c (type_name_no_tag): Remove.
6681         (type_name_or_error): Rename from type_name_no_tag_or_error.
6682         (lookup_struct_elt_type, check_typedef): Update.
6683         * expprint.c (print_subexp_standard): Update.
6684         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
6685         * d-namespace.c (d_lookup_nested_symbol): Update.
6686         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
6687         (cp_print_class_member): Update.
6688         * cp-namespace.c (cp_lookup_nested_symbol): Update.
6689         * completer.c (add_struct_fields): Update.
6690         * c-typeprint.c (cp_type_print_derivation_info)
6691         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
6692         Update.
6693         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
6694         (ada_prefer_type, ada_is_exception_sym): Update.
6695
6696 2018-06-01  Tom Tromey  <tom@tromey.com>
6697
6698         * valops.c (enum_constant_from_type, value_namespace_elt)
6699         (value_maybe_namespace_elt): Update.
6700         * valarith.c (find_size_for_pointer_math): Update.
6701         * target-descriptions.c (make_gdb_type): Update.
6702         * symmisc.c (print_symbol): Update.
6703         * stabsread.c (define_symbol, read_type)
6704         (complain_about_struct_wipeout, add_undefined_type)
6705         (cleanup_undefined_types_1): Update.
6706         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
6707         (rust_range_type_p, val_print_struct, rust_print_struct_def)
6708         (rust_internal_print_type, rust_composite_type)
6709         (rust_evaluate_funcall, rust_evaluate_subexp)
6710         (rust_inclusive_range_type_p): Update.
6711         * python/py-type.c (typy_get_tag): Update.
6712         * p-typeprint.c (pascal_type_print_base): Update.
6713         * mdebugread.c (parse_symbol, parse_type): Update.
6714         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
6715         Update.
6716         * guile/scm-type.c (gdbscm_type_tag): Update.
6717         * go-lang.c (sixg_string_p): Update.
6718         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
6719         Update.
6720         * gdbtypes.h (struct main_type) <tag_name>: Remove.
6721         (TYPE_TAG_NAME): Remove.
6722         * gdbtypes.c (type_name_no_tag): Simplify.
6723         (check_typedef, check_types_equal, recursive_dump_type)
6724         (copy_type_recursive, arch_composite_type): Update.
6725         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
6726         in summary mode when needed.
6727         * eval.c (evaluate_funcall): Update.
6728         * dwarf2read.c (fixup_go_packaging, read_structure_type)
6729         (process_structure_scope, read_enumeration_type)
6730         (read_namespace_type, read_module_type, determine_prefix): Update.
6731         * cp-support.c (inspect_type): Update.
6732         * coffread.c (process_coff_symbol, decode_base_type): Update.
6733         * c-varobj.c (c_is_path_expr_parent): Update.
6734         * c-typeprint.c (c_type_print_base_struct_union): Update.
6735         (c_type_print_base_1): Update.  Print struct/class/union/enum in
6736         summary when using C language.
6737         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
6738         (gen_maybe_namespace_elt): Update.
6739         * ada-lang.c (ada_type_name): Simplify.
6740         (empty_record, ada_template_to_fixed_record_type_1)
6741         (template_to_static_fixed_type)
6742         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
6743
6744 2018-06-01  Tom Tromey  <tom@tromey.com>
6745
6746         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
6747         c_print_type.
6748         * c-typeprint.c (c_print_type_1): Add "language" parameter.
6749         (c_print_type): Update.
6750         (c_print_type): New overload.
6751         (c_type_print_varspec_prefix, c_type_print_args)
6752         (c_type_print_varspec_suffix, c_print_type_no_offsets)
6753         (c_type_print_base_struct_union, c_type_print_base_1)
6754         (cp_type_print_method_args): Add "language" parameter.
6755         (c_type_print_base): Update.
6756         * c-lang.h (c_print_type): Add new overload.
6757
6758 2018-06-01  Tom Tromey  <tom@tromey.com>
6759
6760         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
6761         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
6762
6763 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
6764
6765         * aarch64-tdep.c (aarch64_sve_register_names): New const
6766         var.
6767         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
6768         (AARCH64_SVE_Z_REGS_NUM): New define.
6769         (AARCH64_SVE_P_REGS_NUM): Likewise.
6770         (AARCH64_SVE_NUM_REGS): Likewise.
6771
6772 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
6773
6774         * nat/linux-ptrace.h [__alpha__]
6775         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
6776         definitions.
6777
6778 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
6779
6780         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
6781         the endianness selected.
6782         * NEWS: Document `set endian auto' mode operation update.
6783
6784 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
6785
6786         * Makefile.in: Add new header.
6787         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
6788         (sve_vl_from_vg): Likewise.
6789         (sve_vq_from_vl): Likewise.
6790         (sve_vl_from_vq): Likewise.
6791         (sve_vq_from_vg): Likewise.
6792         (sve_vg_from_vq): Likewise.
6793         * configure.nat: Add new c file.
6794         * nat/aarch64-sve-linux-ptrace.c: New file.
6795         * nat/aarch64-sve-linux-ptrace.h: New file.
6796
6797 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
6798
6799         * aarch64-linux-nat.c (aarch64_linux_read_description):
6800         Add parmeter zero.
6801         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
6802         Likewise.
6803         * aarch64-tdep.c (tdesc_aarch64_list): Add.
6804         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
6805         (aarch64_gdbarch_init): Add parmeter zero.
6806         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
6807         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
6808         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
6809         parmeter.
6810         * doc/gdb.texinfo: Describe SVE feature
6811         * features/aarch64-sve.c: New file.
6812
6813 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
6814
6815         PR gdb/23210
6816         * gdbarch.sh (significant_addr_bit): Default to zero when
6817         not set by target architecture.
6818         * gdbarch.c: Re-generated.
6819         * utils.c (address_significant): Update.
6820
6821 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
6822
6823         * stack.c (func_command): Remove trailing newline in call to error.
6824
6825 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6826
6827         * regcache.h (regcache_raw_collect): Remove, update callers to
6828         use regcache::raw_collect.
6829         * regcache.c (regcache_raw_collect): Remove.
6830
6831 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6832
6833         * regcache.h (regcache_raw_supply): Remove, update callers to
6834         use detached_regcache::raw_supply.
6835         * regcache.c (regcache_raw_supply): Remove.
6836
6837 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6838
6839         * regcache.h (regcache_cooked_write_part): Remove, update
6840         callers to use regcache::cooked_write_part.
6841         * regcache.c (regcache_cooked_write_part): Remove.
6842
6843 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6844
6845         * regcache.h (regcache_cooked_read_part): Remove, update callers
6846         to use readable_regcache::cooked_read_part.
6847         * regcache.c (regcache_cooked_read_part): Remove.
6848
6849 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6850
6851         * regcache.h (regcache_cooked_read_value): Remove, update
6852         callers to use readable_regcache::cooked_read_value.
6853         * regcache.c (regcache_cooked_read_value): Remove.
6854
6855 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6856
6857         * regcache.h (regcache_cooked_write): Remove, update callers to
6858         use regcache::cooked_write.
6859         * regcache.c (regcache_cooked_write): Remove.
6860
6861 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6862
6863         * regcache.h (regcache_invalidate): Remove, update callers to
6864         use detached_regcache::invalidate instead.
6865         * regcache.c (regcache_invalidate): Remove.
6866
6867 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6868
6869         * regcache.h (regcache_raw_write_part): Remove, update callers
6870         to use regcache::raw_write_part instead.
6871         * regcache.c (regcache_raw_write_part): Remove.
6872
6873 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6874
6875         * regcache.h (regcache_raw_read_part): Remove, update callers to
6876         use readable_regcache::raw_read_part instead.
6877         * regcache.c (regcache_raw_read_part): Remove.
6878
6879 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6880
6881         * regcache.h (regcache_cooked_read): Remove, update callers to
6882         use readable_regcache::cooked_read instead.
6883         * regcache.c (regcache_cooked_read): Remove.
6884
6885 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6886
6887         * regcache.h (regcache_raw_write): Remove, update callers to use
6888         regcache::raw_write instead.
6889         * regcache.c (regcache_raw_write): Remove.
6890
6891 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6892
6893         * regcache.h (regcache_raw_read): Remove, update callers to use
6894         readable_regcache::raw_read instead.
6895         * regcache.c (regcache_raw_read): Remove.
6896
6897 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6898
6899         * regcache.h (regcache_raw_update): Remove, update callers to
6900         use readable_regcache::raw_update instead.
6901         * regcache.c (regcache_raw_update): Remove.
6902
6903 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6904
6905         * regcache.h (regcache_register_status): Remove, update callers
6906         to use reg_buffer::get_register_status directly instead.
6907         * regcache.c (regcache_register_status): Remove.
6908
6909 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6910
6911         * regcache.h (regcache_get_ptid): Remove, update all callers to
6912         call regcache::ptid instead.
6913         * regcache.c (regcache_get_ptid): Remove.
6914
6915 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6916
6917         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
6918
6919 2018-05-30  Pedro Alves  <palves@redhat.com>
6920
6921         * common/common-exceptions.h (exception_rethrow): Use
6922         ATTRIBUTE_NORETURN.
6923
6924 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
6925
6926         * breakpoint.c (print_solib_event, check_status_catch_solib):
6927         Remove struct keyword in range-based for loops.
6928         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
6929         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
6930         Likewise.
6931         * linespec.c (find_superclass_methods, search_minsyms_for_name):
6932         Likewise.
6933         * symfile.c (addr_info_make_relative): Likewise.
6934         * thread.c (value_in_thread_stack_temporaries): Likewise.
6935
6936 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
6937
6938         PR gdb/16841
6939         * valops.c (value_struct_elt_for_reference): Call check_typedef on
6940         aggregate type to get its real type before accessing it.
6941
6942 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
6943
6944         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
6945         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
6946         * coff-pe-read.c (add_pe_forwarded_sym): Replace
6947         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
6948         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
6949         * jit.c (jit_breakpoint_re_set_internal): Likewise.
6950         * printcmd.c (info_address_command): Likewise.
6951
6952 2018-05-29  Tom Tromey  <tom@tromey.com>
6953
6954         * windows-nat.c (handle_exception): Update fall-through comment.
6955
6956 2018-05-29  Tom Tromey  <tom@tromey.com>
6957
6958         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
6959         (struct program_space) <added_solibs>: Now a std::vector.
6960         * breakpoint.c (print_solib_event): Update.
6961         (check_status_catch_solib): Update.
6962         * progspace.c (clear_program_space_solib_cache): Update.
6963         * solib.c (update_solib_list): Update.
6964
6965 2018-05-29  Tom Tromey  <tom@tromey.com>
6966
6967         * python/py-type.c (typy_richcompare): Update.
6968         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
6969         * gdbtypes.h (types_deeply_equal): Return bool.
6970         (types_equal): Likewise.
6971         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
6972         declare VEC.
6973         (check_types_equal): Change worklist to std::vector.  Return
6974         bool.
6975         (struct type_equality_entry): Add constructor.
6976         (compare_maybe_null_strings): Return bool.
6977         (check_types_worklist): Return bool.  Change worklist to
6978         std::vector.
6979         (types_deeply_equal): Use std::vector.
6980         (types_equal): Return bool.
6981         (compare_maybe_null_strings): Simplify.
6982
6983 2018-05-29  Tom Tromey  <tom@tromey.com>
6984
6985         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
6986
6987 2018-05-29  Tom Tromey  <tom@tromey.com>
6988
6989         * objc-lang.h: Don't include cp-support.h.
6990         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
6991         declare VEC.
6992
6993 2018-05-27  Tom Tromey  <tom@tromey.com>
6994
6995         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
6996
6997 2018-05-25  Tom Tromey  <tom@tromey.com>
6998
6999         * value.c (value::location): Initialize.
7000
7001 2018-05-25  Tom Tromey  <tom@tromey.com>
7002
7003         * dbxread.c (init_bincl_list): Remove.
7004         (bincl_list): Now a std::vector.
7005         (bincls_allocated, next_bincl): Remove.
7006         (free_bincl_list, do_free_bincl_list_cleanup)
7007         (make_cleanup_free_bincl_list): Remove.
7008         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
7009         unique_xmalloc_ptr.
7010         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
7011         (struct header_file_location): Add constructor.
7012         (add_bincl_to_list): Remove.
7013
7014 2018-05-25  Tom Tromey  <tom@tromey.com>
7015
7016         * tui/tui.c (tui_enable): Update.
7017         * mi/mi-interp.c (mi_interp::init): Update.
7018         * interps.h (class interp) <name>: New method.
7019         <m_name>: Rename from name.
7020         (~scoped_restore_interp): Update.
7021         * interps.c (interp::interp): Update.
7022         (interp_add, interp_set, interp_lookup_existing)
7023         (current_interp_named_p): Update.
7024
7025 2018-05-25  Tom Tromey  <tom@tromey.com>
7026
7027         * interps.c (interp_name): Remove.
7028         * mi/mi-interp.c (mi_interp::init): Update.
7029         * interps.h (interp_name): Remove.
7030         (~scoped_restore_interp): Update.
7031         * tui/tui.c (tui_enable): Update.
7032
7033 2018-05-25  Tom Tromey  <tom@tromey.com>
7034
7035         * utils.c (fputs_maybe_filtered): Update.
7036         * linespec.c (decode_line_full): Update.
7037         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
7038         (mi_print_breakpoint_for_event, mi_solib_loaded)
7039         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
7040         (mi_user_selected_context_changed): Update.
7041         * mi/mi-main.c (mi_execute_command): Update.
7042         * cli/cli-script.c (execute_control_command): Update.
7043         * python/python.c (execute_gdb_command): Update.
7044         * solib.c (info_sharedlibrary_command): Update.
7045         * interps.c (interp_ui_out): Remove.
7046         * interps.h (interp_ui_out): Remove.
7047
7048 2018-05-25  Tom Tromey  <tom@tromey.com>
7049
7050         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
7051         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
7052         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
7053
7054 2018-05-25  Tom Tromey  <tom@tromey.com>
7055
7056         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
7057         * interps.c (interp_exec): Use scoped_restore.
7058
7059 2018-05-25  Tom Tromey  <tom@tromey.com>
7060
7061         * remote.c (remote_target::remote_file_get): Use
7062         gdb::byte_vector.
7063         (remote_target::remote_file_put): Likewise.
7064
7065 2018-05-25  Tom Tromey  <tom@tromey.com>
7066
7067         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
7068         a std::string.
7069         (get_pe_section_index, add_pe_exported_sym): Update.
7070         (read_pe_exported_syms): Use gdb::def_vector.
7071
7072 2018-05-25  Tom Tromey  <tom@tromey.com>
7073
7074         * frame.c (remove_prev_frame): Remove.
7075         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
7076
7077 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
7078
7079         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
7080         Remove prototypes.
7081         * mips-linux-nat.c (supply_fpregset): Always call
7082         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
7083         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
7084         `mips_fill_fpregset'.
7085         * mips-linux-tdep.c (mips_supply_fpregset)
7086         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
7087         (mips_fill_fpregset_wrapper): Remove functions.
7088         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
7089         (mips_linux_fpregset): Remove variable.
7090         (mips_linux_iterate_over_regset_sections): Use
7091         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
7092         (mips_linux_o32_sigframe_init): Remove comment.
7093
7094 2018-05-25  Pedro Alves  <palves@redhat.com>
7095
7096         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
7097         (struct readahead_cache, struct packet_reg, struct
7098         remote_arch_state, class remote_state): Move higher up in the
7099         file.
7100         (remote_target::m_remote_state): Now an object instead of a pointer.
7101         (remote_target::get_remote_state): Adjust.
7102
7103 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7104
7105         * stack.c (select_and_print_frame): Delete.
7106         (struct function_bounds): Move struct within function.
7107         (func_command): Most content moved into new function
7108         find_frame_for_function, use new function, print result, add
7109         function comment.
7110         (find_frame_for_function): New function, now returns a result.
7111
7112 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7113
7114         * stack.c (iterate_over_block_arg_vars): Fix comment.
7115         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
7116
7117 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7118
7119         PR gdb/23203
7120         * frame.c
7121         (scoped_restore_selected_frame::scoped_restore_selected_frame):
7122         Define.
7123         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
7124         Define.
7125         * frame.h (class scoped_restore_selected_frame): New class.
7126         * stack.c (print_frame_local_vars): Remove catching and rethrowing
7127         of any exception, use scoped_restore_selected_frame to restore the
7128         frame instead.
7129
7130 2018-05-24  Pedro Alves  <palves@redhat.com>
7131
7132         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
7133         override.
7134
7135 2018-05-23  Tom Tromey  <tom@tromey.com>
7136
7137         * complaints.c (struct complaints): Remove.
7138         (symfile_complaint_book): Remove.
7139         (series): New global.
7140         (complaint_internal): Update.
7141         (clear_complaints): Update.
7142
7143 2018-05-23  Tom Tromey  <tom@tromey.com>
7144
7145         * complaints.c (counters): New global.
7146         (struct complain): Remove.
7147         (struct complaints) <root>: Remove.
7148         (complaint_sentinel): Remove.
7149         (symfile_complaint_book): Update.
7150         (find_complaint) Remove.
7151         (complaint_internal, clear_complaints): Update.
7152
7153 2018-05-23  Tom Tromey  <tom@tromey.com>
7154
7155         * complaints.c (struct complain) <file, line>: Remove.
7156         (find_complaint): Remove file, line parameters.
7157         (complaint_internal): Update.
7158
7159 2018-05-23  Tom Tromey  <tom@tromey.com>
7160
7161         * complaints.c (vcomplaint): Remove.
7162         (complaint_internal) Merge in contents of vcomplaint.
7163
7164 2018-05-23  Tom Tromey  <tom@tromey.com>
7165
7166         * complaints.c (struct complaints) <explanation>: Remove.
7167         (symfile_explanations): Remove.
7168         (symfile_complaint_book): Update.
7169         (vcomplaint): Update.
7170         (struct explanation): Remove.
7171
7172 2018-05-23  Tom Tromey  <tom@tromey.com>
7173
7174         * complaints.c (symfile_complaints): Remove.
7175         (complaint_internal): Remove "complaints" parameter.
7176         (clear_complaints, vcomplaint): Remove "c" parameter.
7177         (get_complaints): Remove.
7178         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
7179         (dwarf2_debug_line_missing_file_complaint)
7180         (dwarf2_debug_line_missing_end_sequence_complaint)
7181         (dwarf2_complex_location_expr_complaint)
7182         (dwarf2_const_value_length_mismatch_complaint)
7183         (dwarf2_section_buffer_overflow_complaint)
7184         (dwarf2_macro_malformed_definition_complaint)
7185         (dwarf2_invalid_attrib_class_complaint)
7186         (create_addrmap_from_index, dw2_symtab_iter_next)
7187         (dw2_expand_marked_cus)
7188         (dw2_debug_names_iterator::find_vec_in_debug_names)
7189         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
7190         (create_debug_type_hash_table, init_cutu_and_read_dies)
7191         (partial_die_parent_scope, add_partial_enumeration)
7192         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
7193         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
7194         (read_import_statement, read_file_scope, create_dwo_cu_reader)
7195         (create_cus_hash_table, create_dwp_hash_table)
7196         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
7197         (dwarf2_rnglists_process, dwarf2_ranges_process)
7198         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
7199         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
7200         (handle_struct_member_die, process_structure_scope)
7201         (read_array_type, read_common_block, read_module_type)
7202         (read_tag_pointer_type, read_typedef, read_base_type)
7203         (read_subrange_type, load_partial_dies, partial_die_info::read)
7204         (partial_die_info::read, partial_die_info::read)
7205         (partial_die_info::read, read_checked_initial_length_and_offset)
7206         (dwarf2_string_attr, read_formatted_entries)
7207         (dwarf_decode_line_header)
7208         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
7209         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
7210         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
7211         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
7212         (get_signatured_type, get_DW_AT_signature_type)
7213         (decode_locdesc, file_file_name, consume_improper_spaces)
7214         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
7215         (dwarf_decode_macro_bytes, dwarf_decode_macros)
7216         (dwarf2_symbol_mark_computed, set_die_type)
7217         (read_attribute_value): Update.
7218         * stap-probe.c (handle_stap_probe, get_stap_base_address):
7219         Update.
7220         * dbxread.c (unknown_symtype_complaint)
7221         (lbrac_mismatch_complaint, repeated_header_complaint)
7222         (set_namestring, function_outside_compilation_unit_complaint)
7223         (read_dbx_symtab, process_one_symbol): Update.
7224         * gdbtypes.c (stub_noname_complaint): Update.
7225         * windows-nat.c (handle_unload_dll): Update.
7226         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
7227         (decode_base_type): Update.
7228         * xcoffread.c (bf_notfound_complaint, ef_complaint)
7229         (eb_complaint, record_include_begin, record_include_end)
7230         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
7231         (process_xcoff_symbol, read_symbol)
7232         (function_outside_compilation_unit_complaint)
7233         (scan_xcoff_symtab): Update.
7234         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
7235         * buildsym.c (finish_block_internal, make_blockvector)
7236         (end_symtab_get_static_block, augment_type_symtab): Update.
7237         * dtrace-probe.c (dtrace_process_dof)
7238         (dtrace_static_probe_ops::get_probes): Update.
7239         * complaints.h (struct complaint): Don't declare.
7240         (symfile_complaints): Remove.
7241         (complaint_internal): Remove "complaints" parameter.
7242         (complaint): Likewise.
7243         (clear_complaints): Likewise.
7244         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7245         (reread_symbols): Update.
7246         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
7247         (dwarf2_frame_cache, decode_frame_entry): Update.
7248         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
7249         * objc-lang.c (lookup_objc_class, lookup_child_selector)
7250         (info_selectors_command): Update.
7251         * macrotab.c (macro_include, check_for_redefinition)
7252         (macro_undef): Update.
7253         * objfiles.c (filter_overlapping_sections): Update.
7254         * stabsread.c (invalid_cpp_abbrev_complaint)
7255         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
7256         (define_symbol, error_type, read_type, rs6000_builtin_type)
7257         (stabs_method_name_from_physname, read_member_functions)
7258         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
7259         (attach_fields_to_type, complain_about_struct_wipeout)
7260         (read_range_type, read_args, common_block_start)
7261         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
7262         Update.
7263         * mdebugread.c (index_complaint, unknown_ext_complaint)
7264         (basic_type_complaint, bad_tag_guess_complaint)
7265         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
7266         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
7267         (parse_procedure, parse_lines)
7268         (function_outside_compilation_unit_complaint)
7269         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
7270         (bad_tag_guess_complaint, reg_value_complaint): Update.
7271         * cp-support.c (demangled_name_complaint): Update.
7272         * macroscope.c (sal_macro_scope): Update.
7273         * dwarf-index-write.c (class debug_names): Update.
7274
7275 2018-05-23  Tom Tromey  <tom@tromey.com>
7276
7277         * complaints.c (clear_complaints): Remove "noisy" parameter.
7278         * complaints.h (clear_complaints): Update.
7279         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7280         (reread_symbols): Update.
7281
7282 2018-05-23  Tom Tromey  <tom@tromey.com>
7283
7284         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
7285         SUBSEQUENT_MESSAGE.
7286         (vcomplaint, clear_complaints): Update.
7287         (symfile_explanations): Remove some messages.
7288
7289 2018-05-23  Tom Tromey  <tom@tromey.com>
7290
7291         * complaints.c (internal_complaint): Remove.
7292         * complaints.h (internal_complaint): Remove.
7293
7294 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7295
7296         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
7297
7298 2018-05-22  Pedro Alves  <palves@redhat.com>
7299
7300         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
7301         (remote_fileio_badfd, remote_fileio_return_errno)
7302         (remote_fileio_return_success, remote_fileio_func_open)
7303         (remote_fileio_func_open, remote_fileio_func_close)
7304         (remote_fileio_func_read, remote_fileio_func_write)
7305         (remote_fileio_func_lseek, remote_fileio_func_rename)
7306         (remote_fileio_func_unlink, remote_fileio_func_stat)
7307         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
7308         (remote_fileio_func_isatty, remote_fileio_func_system): Add
7309         remote_target parameter.
7310         (remote_fio_func_map) <func>: Add remote_target parameter.
7311         (do_remote_fileio_request, remote_fileio_request):
7312         * remote-fileio.h (remote_fileio_request):
7313         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
7314         remote_target parameter.
7315         (remote_notif_process, handle_notification): Adjust to pass down
7316         the remote.
7317         (remote_notif_state_allocate): Add remote_target parameter.  Save
7318         it.
7319         * remote-notif.h (struct remote_target): Forward declare.
7320         (struct notif_client) <parse, ack, can_get_pending_events>: Add
7321         remote_target parameter.
7322         (struct remote_notif_state) <remote>: New field.
7323         (remote_notif_ack, remote_notif_parse): Add remote_target
7324         parameter.
7325         (remote_notif_state_allocate, remote_notif_state_allocate): Add
7326         remote_target parameter.
7327         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
7328         (threads_listing_context, rmt_thread_action, protocol_feature)
7329         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
7330         (packet_result, struct threads_listing_context, remote_state):
7331         Move definitions and declarations higher up.
7332         (remote_target) <~remote_target>: Declare.
7333         (remote_download_command_source, remote_file_put, remote_file_get)
7334         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
7335         (remote_hostio_pread_vFile, remote_hostio_send_command)
7336         (remote_hostio_set_filesystem, remote_hostio_open)
7337         (remote_hostio_close, remote_hostio_unlink, remote_state)
7338         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
7339         (get_memory_write_packet_size, get_memory_read_packet_size)
7340         (append_pending_thread_resumptions, remote_detach_1)
7341         (append_resumption, remote_resume_with_vcont)
7342         (add_current_inferior_and_thread, wait_ns, wait_as)
7343         (process_stop_reply, remote_notice_new_inferior)
7344         (process_initial_stop_replies, remote_add_thread)
7345         (btrace_sync_conf, remote_btrace_maybe_reopen)
7346         (remove_new_fork_children, kill_new_fork_children)
7347         (discard_pending_stop_replies, stop_reply_queue_length)
7348         (check_pending_events_prevent_wildcard_vcont)
7349         (discard_pending_stop_replies_in_queue, stop_reply)
7350         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
7351         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
7352         (remote_interrupt_as, remote_interrupt_ns)
7353         (remote_get_noisy_reply, remote_query_attached)
7354         (remote_add_inferior, remote_current_thread, get_current_thread)
7355         (set_thread, set_general_thread, set_continue_thread)
7356         (set_general_process, write_ptid)
7357         (remote_unpack_thread_info_response, remote_get_threadinfo)
7358         (parse_threadlist_response, remote_get_threadlist)
7359         (remote_threadlist_iterator, remote_get_threads_with_ql)
7360         (remote_get_threads_with_qxfer)
7361         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
7362         (get_offsets, remote_check_symbols, remote_supported_packet)
7363         (remote_query_supported, remote_packet_size)
7364         (remote_serial_quit_handler, remote_detach_pid)
7365         (remote_vcont_probe, remote_resume_with_hc)
7366         (send_interrupt_sequence, interrupt_query)
7367         (remote_notif_get_pending_events, fetch_register_using_p)
7368         (send_g_packet, process_g_packet, fetch_registers_using_g)
7369         (store_register_using_P, store_registers_using_G)
7370         (set_remote_traceframe, check_binary_download)
7371         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
7372         (remote_xfer_live_readonly_partial, remote_read_bytes)
7373         (remote_send_printf, remote_flash_write, readchar)
7374         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
7375         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
7376         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
7377         (extended_remote_disable_randomization, extended_remote_run)
7378         (send_environment_packet, extended_remote_environment_support)
7379         (extended_remote_set_inferior_cwd, remote_write_qxfer)
7380         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
7381         (packet_command): Now methods of ...
7382         (remote_target): ... this class.
7383         (m_remote_state) <remote_target>: New field.
7384         (struct remote_state) <stop_reply_queue,
7385         remote_async_inferior_event_token, wait_forever_enabled_p>: New
7386         fields.
7387         (remote_state::remote_state): Allocate stop_reply_queue.
7388         (remote_state): Delete global.
7389         (get_remote_state_raw): Delete.
7390         (remote_target::get_remote_state): Allocate m_remote_state on
7391         demand.
7392         (get_current_remote_target): New.
7393         (remote_ops, extended_remote_ops): Delete.
7394         (wait_forever_enabled_p, remote_async_inferior_event_token):
7395         Delete, moved to struct remote_state.
7396         (remote_target::close): Delete self.  Destruction bits split to
7397         ...
7398         (remote_target::~remote_target): ... this.
7399         (show_memory_packet_size): Adjust to use
7400         get_current_remote_target.
7401         (struct protocol_feature) <func>: Add remote_target parameter.
7402         All callers adjusted.
7403         (curr_quit_handler_target): New.
7404         (remote_serial_quit_handler): Reimplement.
7405         (remote_target::open_1): Adjust to use get_current_remote_target.
7406         Heap-allocate remote_target/extended_remote_target instances.
7407         (vcont_builder::vcont_builder): Add remote_target parameter, and
7408         save it in m_remote.  All callers adjusted.
7409         (vcont_builder::m_remote): New field.
7410         (vcont_builder::restart, vcont_builder::flush)
7411         (vcont_builder::push_action): Use it.
7412         (remote_target::commit_resume): Use it.
7413         (struct queue_iter_param) <remote>: New field.
7414         (remote_target::remove_new_fork_children): Fill in 'remote' field.
7415         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
7416         (check_pending_event_prevents_wildcard_vcont_callback)
7417         (remote_target::check_pending_events_prevent_wildcard_vcont)
7418         (remote_target::discard_pending_stop_replies)
7419         (remote_target::discard_pending_stop_replies_in_queue)
7420         (remote_target::remote_notif_remove_queued_reply): Fill in
7421         'remote' field.
7422         (remote_notif_get_pending_events): New.
7423         (remote_target::readchar, remote_target::remote_serial_write):
7424         Save/restore curr_quit_handler_target.
7425         (putpkt): New.
7426         (kill_new_fork_children): Fill in 'remote' field.
7427         (packet_command): Use get_current_remote_target, defer to
7428         remote_target method of same name.
7429         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
7430         parameter, and save it in m_remote.  All callers adjusted.
7431         (scoped_remote_fd::release): Use m_remote.
7432         (scoped_remote_fd::m_remote): New field.
7433         (remote_file_put, remote_file_get, remote_file_delete): Use
7434         get_current_remote_target, defer to remote_target method of same
7435         name.
7436         (remote_btrace_reset): Add remote_state paremeter.  Update all
7437         callers.
7438         (remote_async_inferior_event_handler). Pass down 'data'.
7439         (remote_new_objfile): Use get_current_remote_target.
7440         (remote_target::vcont_r_supported): New.
7441         (set_range_stepping): Use get_current_remote_target and
7442         remote_target::vcont_r_supported.
7443         (_initialize_remote): Don't allocate 'remote_state' and
7444         'stop_reply_queue' globals.
7445         * remote.h (struct remote_target): Forward declare.
7446         (getpkt, putpkt, remote_notif_get_pending_events): Add
7447         'remote_target' parameter.
7448
7449 2018-05-22  Pedro Alves  <palves@redhat.com>
7450
7451         * remote.c (vcont_builder): Now a class.  Make all data members
7452         private.
7453         (vcont_builder) <vcont_builder, restart, flush, push_action>:
7454         Declare methods.
7455         (vcont_builder_restart): Rename to ...
7456         (vcont_builder::restart): ... this.
7457         (vcont_builder_flush): Rename to ...
7458         (vcont_builder::flush): ... this.
7459         (vcont_builder_push_action): Rename to ...
7460         (vcont_builder::push_action): ... this.
7461         (remote_target::commit_resume): Adjust.
7462
7463 2018-05-22  Pedro Alves  <palves@redhat.com>
7464
7465         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
7466         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
7467         (get_fixed_memory_packet_size): New.
7468         (get_memory_packet_size): Use it.
7469         (set_memory_packet_size): Don't override the config size with
7470         DEFAULT_MAX_MEMORY_PACKET_SIZE.
7471         (show_memory_packet_size): Use get_fixed_memory_packet_size.
7472         Don't refer to get_memory_packet_size if not connected to a remote
7473         target.  Show "(default)" if configured size is 0.
7474
7475 2018-05-22  Pedro Alves  <palves@redhat.com>
7476
7477         * remote.c (remote_target::mourn_inferior): Move
7478         discard_pending_stop_replies call here from ...
7479         (_initialize_remote): ... here.
7480
7481 2018-05-22  Pedro Alves  <palves@redhat.com>
7482
7483         * remote.c (compare_section_command): Remove set_general_process
7484         call.
7485
7486 2018-05-22  Pedro Alves  <palves@redhat.com>
7487
7488         * remote.c (struct packet_reg, struct remote_arch_state):
7489         Move higher up in the file.
7490         (remote_state) <m_arch_states>: Store remote_arch_state values
7491         instead of remote_arch_state pointers.
7492         (remote_state::get_remote_arch_state): Adjust.
7493
7494 2018-05-22  Pedro Alves  <palves@redhat.com>
7495
7496         * remote.c: Include <unordered_map>.
7497         (remote_state): Now a class.
7498         (remote_state) <get_remote_arch_state>: Declare method.
7499         <get_remote_arch_state>: New field.
7500         (remote_arch_state) <remote_arch_state>: Declare ctor.
7501         <regs>: Now a unique_ptr.
7502         (remote_gdbarch_data_handle): Delete.
7503         (get_remote_arch_state): Delete.
7504         (remote_state::get_remote_arch_state): New.
7505         (get_remote_state): Adjust to call remote_state's
7506         get_remote_arch_state method.
7507         (init_remote_state): Delete, bits factored out to ...
7508         (remote_arch_state::remote_arch_state): ... this new method.
7509         (get_remote_packet_size, get_memory_packet_size)
7510         (process_g_packet, remote_target::fetch_registers)
7511         (remote_target::prepare_to_store, store_registers_using_G)
7512         (remote_target::store_registers, remote_target::get_trace_status):
7513         Adjust to call remote_state's method.
7514         (_initialize_remote): Remove reference to
7515         remote_gdbarch_data_handle.
7516
7517 2018-05-22  Pedro Alves  <palves@redhat.com>
7518
7519         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
7520         pread>: New method declarations.
7521         (remote_target::open_1): Adjust.
7522         (readahead_cache_invalidate): Rename to ...
7523         (readahead_cache::invalidate): ... this, and adjust to be a class
7524         method.
7525         (readahead_cache_invalidate_fd): Rename to ...
7526         (readahead_cache::invalidate_fd): ... this, and adjust to be a
7527         class method.
7528         (remote_hostio_pwrite): Adjust.
7529         (remote_hostio_pread_from_cache): Rename to ...
7530         (readahead_cache::pread): ... this, and adjust to be a class
7531         method.
7532         (remote_hostio_close): Adjust.
7533
7534 2018-05-22  Pedro Alves  <palves@redhat.com>
7535
7536         * remote.c (remote_hostio_close_cleanup): Delete.
7537         (class scoped_remote_fd): New.
7538         (remote_file_put, remote_file_get): Use it.
7539
7540 2018-05-22  Pedro Alves  <palves@redhat.com>
7541
7542         (struct vCont_action_support): Use bool and initialize all fields.
7543         (struct readahead_cache): Initialize all fields.
7544         (remote_state): Use bool and initialize all fields.
7545         (remote_state::remote_state, remote_state::~remote_state): New.
7546         (new_remote_state): Delete.
7547         (_initialize_remote): Use new to allocate remote_state.
7548
7549 2018-05-22  Pedro Alves  <palves@redhat.com>
7550             張俊芝  <zjz@zjz.name>
7551
7552         PR gdb/22973
7553         * c-exp.y: Include "c-support.h".
7554         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
7555         of tolower.  Use c_ident_is_alpha to scan names.
7556         * c-lang.c: Include "c-support.h".
7557         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
7558         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
7559         * c-support.h: New file, with bits factored out from ...
7560         * cp-name-parser.y: ... this file.
7561         Include "c-support.h".
7562         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
7563         c-support.h and renamed.
7564         (symbol_end, yylex): Adjust.
7565
7566 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7567
7568         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
7569         parameter type to CORE_ADDR.
7570         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
7571         parameter type in declaration to CORE_ADDR.
7572         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
7573         target_auxv_search to get AT_HWCAP and use the result to get the
7574         target description.
7575         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
7576         to CORE_ADDR. Remove the cast of the return value to unsigned
7577         long. Fix error predicate of target_auxv_search.
7578         (ppc_linux_nat_target::read_description): Change the type of the
7579         hwcap variable to CORE_ADDR.
7580
7581 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7582
7583         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
7584         if the size of fpscr is larger than 32 bits.
7585
7586 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7587
7588         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
7589         (ppc32_linux_vsxregmap): New global.
7590         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
7591         regcache_supply_regset, and regcache_collect_regset.
7592         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
7593         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
7594         (fetch_vsx_register, store_vsx_register): Remove.
7595         (fetch_vsx_registers): Add regno parameter. Get regset using
7596         ppc_linux_vsxregset. Use regset to supply registers.
7597         (store_vsx_registers): Add regno parameter. Get regset using
7598         ppc_linux_vsxregset. Use regset to collect registers.
7599         (fetch_register): Call fetch_vsx_registers instead of
7600         fetch_vsx_register.
7601         (store_register): Call store_vsx_registers instead of
7602         store_vsx_register.
7603         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
7604         new regno parameter.
7605         (store_ppc_registers): Call store_vsx_registers with -1 for the
7606         new regno parameter.
7607         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
7608         (ppc_collect_vsxregset): Remove.
7609
7610 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7611
7612         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
7613         offset fields.
7614         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
7615         for vector register offset fields.
7616         (ppc64_fbsd_reg_offsets): Likewise.
7617         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7618         to vector register offset fields.
7619         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7620         to vector register offset fields.
7621         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
7622         vector register offset fields.
7623         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
7624         initializers for vector register offset fields.
7625         (rs6000_aix64_reg_offsets): Likewise.
7626         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
7627         (ppc_supply_vrregset): Remove.
7628         (ppc_collect_vrregset): Remove.
7629         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
7630         (ppc_linux_vrregset) : New function.
7631         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
7632         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
7633         (ppc32_linux_vrregset): Remove.
7634         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
7635         and use result instead of ppc32_linux_vrregset.
7636         (ppc32_linux_reg_offsets): Remove initializers for vector register
7637         offset fields.
7638         (ppc64_linux_reg_offsets): Likewise.
7639         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
7640         * ppc-linux-nat.c: Include regset.h.
7641         (gdb_vrregset_t): Adjust comment to account for little-endian
7642         mode.
7643         (supply_vrregset, fill_vrregset): Remove.
7644         (fetch_altivec_register, store_altivec_register): Remove.
7645         (fetch_altivec_registers): Add regno parameter. Get regset using
7646         ppc_linux_vrregset. Use regset to supply registers.
7647         (store_altivec_registers): Add regno parameter. Get regset using
7648         ppc_linux_vrregset. Use regset to collect registers.
7649         (fetch_register): Call fetch_altivec_registers instead of
7650         fetch_altivec_register.
7651         (store_register): Call store_altivec_registers instead of
7652         store_altivec_register.
7653         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
7654         the new regno parameter.
7655         (store_ppc_registers): Call store_altivec_registers with -1 for
7656         the new regno parameter.
7657
7658 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7659
7660         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
7661         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
7662         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
7663         (gdb_vrregset_t): Change array type size to
7664         PPC_LINUX_SIZEOF_VRREGSET.
7665         (gdb_vsxregset_t): Change array type size to
7666         PPC_LINUX_SIZEOF_VSXREGSET.
7667         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
7668         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
7669         PPC_LINUX_SIZEOF_VSXREGSET.
7670
7671 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7672
7673         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
7674         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
7675         nat/ppc-linux.c.
7676         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
7677         ppc_linux_target_wordsize with tid.
7678         (ppc_linux_nat_target::read_description): Call ppc_linux_target
7679         wordsize with tid.
7680         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
7681         (ppc64_64bit_inferior_p): Add static and inline specifiers.
7682         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
7683         tid parameter. Remove static specifier.
7684         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
7685         (ppc_linux_target_wordsize): New declaration.
7686
7687 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7688
7689         * arch/ppc-linux-common.c: New file.
7690         * arch/ppc-linux-common.h: New file.
7691         * arch/ppc-linux-tdesc.h: New file.
7692         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
7693         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
7694         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
7695         arch/ppc-linux-tdesc.h.
7696         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
7697         arch/ppc-linux-tdesc.h.
7698         (ppc_linux_nat_target::read_description): Remove target
7699         description matching code. Fill a ppc_linux_features struct and
7700         call ppc_linux_match_description with it. Move comment about ISA
7701         2.05 to ppc-linux-common.c.
7702         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
7703         arch/ppc-linux-tdesc.h.
7704         (ppc_linux_core_read_description): Remove target description
7705         matching code. Fill a ppc_linux_features struct and call
7706         ppc_linux_match_description with it.
7707         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
7708         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
7709         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
7710         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
7711         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
7712         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
7713         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
7714         (tdesc_powerpc_e500l): Remove.
7715
7716 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
7717
7718         * ada-lang.c (catch_assert_command): Pass empty string instead
7719         of NULL for excep_string argument.
7720
7721 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7722
7723         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
7724         the width of the requested register exceeds the width of the
7725         `ptrace' data type.
7726
7727 2018-05-21  Tom Tromey  <tom@tromey.com>
7728
7729         * printcmd.c (output_command): Remove.
7730         (output_command_const): Rename to output_command.
7731         * valprint.h (output_command): Rename from output_command_const.
7732         * tracepoint.c (trace_dump_actions): Call output_command.
7733
7734 2018-05-21  Tom Tromey  <tom@tromey.com>
7735
7736         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
7737         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
7738         * ada-lang.h (create_ada_exception_catchpoint): Update.
7739         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
7740         std::string.
7741         (create_excep_cond_exprs, ~ada_catchpoint)
7742         (should_stop_exception, print_one_exception)
7743         (print_mention_exception, print_recreate_exception): Update.
7744         (ada_get_next_arg): Remove.
7745         (catch_ada_exception_command_split): Use std::string.  Change type
7746         of "excep_string", "cond_string".
7747         (catch_ada_exception_command): Update.
7748         (create_ada_exception_catchpoint): Change type of excep_string.
7749         (ada_exception_sal): Remove excep_string parameter.
7750         (~ada_catchpoint): Remove.
7751
7752 2018-05-21  Tom Tromey  <tom@tromey.com>
7753
7754         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
7755         cleanup.
7756
7757 2018-05-21  Tom Tromey  <tom@tromey.com>
7758
7759         * ada-lang.c (ada_exception_message_1, ada_exception_message):
7760         Return unique_xmalloc_ptr.
7761         (print_it_exception): Update.
7762
7763 2018-05-21  Tom Tromey  <tom@tromey.com>
7764
7765         * tracepoint.c (trace_dump_actions): Use std::string.
7766
7767 2018-05-21  Tom Tromey  <tom@tromey.com>
7768
7769         * symfile.c (reread_symbols): Use std::string for original_name.
7770
7771 2018-05-21  Tom Tromey  <tom@tromey.com>
7772
7773         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
7774         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
7775         constructor.
7776
7777 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
7778
7779         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
7780         instance to...
7781         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
7782         * objfiles.c (get_objfile_bfd_data): Allocate
7783         objfile_per_bfd_storage with obstack_new when allocating on
7784         obstack.
7785
7786 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7787
7788         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
7789         OBSTACK_ZALLOC.
7790         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
7791         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
7792         * mdebugread.c (mdebug_build_psymtabs): Likewise.
7793         (add_pending): Likewise.
7794         (parse_symbol): Likewise.
7795         (parse_partial_symbols): Likewise.
7796         (psymtab_to_symtab_1): Likewise.
7797         (new_psymtab): Likewise.
7798         (elfmdebug_build_psymtabs): Likewise.
7799         * minsyms.c (terminate_minimal_symbol_table): Likewise.
7800         * objfiles.c (get_objfile_bfd_data): Likewise.
7801         (objfile_register_static_link): Likewise.
7802         * psymtab.c (allocate_psymtab): Likewise.
7803         * stabsread.c (read_member_functions): Likewise.
7804         * xcoffread.c (xcoff_end_psymtab): Likewise.
7805
7806 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7807
7808         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
7809         compiler supports std::is_trivially_constructible.
7810         * common/poison.h: Include obstack.h.
7811         (IsMallocable): Define to is_trivially_constructible if the
7812         compiler supports it, define to true_type otherwise.
7813         (xobnew): New.
7814         (XOBNEW): Redefine.
7815         (xobnewvec): New.
7816         (XOBNEWVEC): Redefine.
7817         * gdb_obstack.h (obstack_zalloc): New.
7818         (OBSTACK_ZALLOC): Redefine.
7819         (obstack_calloc): New.
7820         (OBSTACK_CALLOC): Redefine.
7821         (obstack_new): New.
7822         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
7823         (gdbarch_obstack): New declaration in gdbarch.h, definition in
7824         gdbarch.c.
7825         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
7826         obstack_calloc/obstack_zalloc.
7827         (gdbarch_obstack_zalloc): Remove.
7828         * target-descriptions.c (tdesc_data_init): Use obstack_new.
7829
7830 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7831
7832         * stack.c (backtrace_command_1): Remove useless variable int i.
7833
7834 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7835
7836         * stack.c (print_frame_info): Fix comment.
7837
7838 2018-05-18  Tom Tromey  <tom@tromey.com>
7839
7840         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
7841         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
7842         (~dwarf2_per_objfile): Update
7843         (dwarf2_get_dwz_file): Use new.
7844         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
7845         unique_ptr.
7846
7847 2018-05-18  Tom Tromey  <tom@tromey.com>
7848
7849         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
7850         unique_ptr.
7851         * dwarf2read.c (struct dwp_file): Add constructor and
7852         initializers.
7853         (open_and_init_dwp_file): Return a unique_ptr.
7854         (dwarf2_per_objfile, create_dwp_hash_table)
7855         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
7856         (lookup_dwo_unit_in_dwp): Update.
7857         (open_and_init_dwp_file, get_dwp_file): Update.
7858
7859 2018-05-18  Tom Tromey  <tom@tromey.com>
7860
7861         * dwarf2read.c (dwarf2_per_objfile): Update.
7862         (struct mapped_index): Add initializers.
7863         (dwarf2_read_index): Use new.
7864         (dw2_symtab_iter_init): Update.
7865         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
7866         unique_ptr.
7867
7868 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
7869
7870         * dwarf2read.c (mapped_index) <total_size>: Remove.
7871
7872 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
7873
7874         * unittests/format_pieces-selftests.c (test_format_specifier):
7875         Add ARI comments.
7876
7877 2018-05-18  Tom Tromey  <tom@tromey.com>
7878
7879         * c-typeprint.c (maybe_print_hole): New function.
7880         (c_print_type_struct_field_offset): Update.
7881         (c_type_print_base_struct_union): Call maybe_print_hole.
7882
7883 2018-05-17  Keith Seitz  <keiths@redhat.com>
7884
7885         * breakpoint.c (build_bpstat_chain): New function, moved from
7886         bpstat_stop_status.
7887         (bpstat_stop_status): Add optional parameter, `stop_chain'.
7888         If no stop chain is passed, call build_bpstat_chain to build it.
7889         * breakpoint.h (build_bpstat_chain): Declare.
7890         (bpstat_stop_status): Move documentation here from breakpoint.c.
7891         * infrun.c (handle_signal_stop): Before eliding inlined frames,
7892         build the stop chain and pass it to skip_inline_frames.
7893         Pass this stop chain to bpstat_stop_status.
7894         * inline-frame.c: Include breakpoint.h.
7895         (stopped_by_user_bp_inline_frame): New function.
7896         (skip_inline_frames): Add parameter `stop_chain'.
7897         Move documention to inline-frame.h.
7898         If non-NULL, use stopped_by_user_bp_inline_frame to determine
7899         whether the frame should be elided.
7900         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
7901         Add moved documentation and update for new parameter.
7902
7903 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
7904
7905         PR cli/14975
7906         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
7907         unittests/format_pieces-selftests.c.
7908         * common/format.h (format_piece) <operator==>: New.
7909         (format_pieces) <operator[]>: Remove.
7910         * common/format.c (format_pieces::format_pieces): Handle \e.
7911         * unittests/format_pieces-selftests.c: New.
7912
7913 2018-05-17  Tom Tromey  <tom@tromey.com>
7914
7915         PR symtab/23010:
7916         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
7917         (dw2_instantiate_symtab): Add skip_partial parameter.
7918         (dw2_find_last_source_symtab, dw2_map_expand_apply)
7919         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
7920         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
7921         (dw2_expand_symtabs_matching_one)
7922         (dw2_find_pc_sect_compunit_symtab)
7923         (dw2_debug_names_lookup_symbol)
7924         (dw2_debug_names_expand_symtabs_for_function): Update.
7925         (init_cutu_and_read_dies): Add skip_partial parameter.
7926         (process_psymtab_comp_unit, build_type_psymtabs_1)
7927         (process_skeletonless_type_unit, load_partial_comp_unit)
7928         (psymtab_to_symtab_1): Update.
7929         (load_full_comp_unit): Add skip_partial parameter.
7930         (process_imported_unit_die, dwarf2_read_addr_index)
7931         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
7932         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
7933         (read_signatured_type): Update.
7934
7935 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
7936
7937         * value.c (release_value): Remove unused variable.
7938         (record_latest_value): Likewise.
7939         (access_value_history): Likewise.
7940         (preserve_values): Likewise.
7941
7942 2018-05-17  Tom Tromey  <tom@tromey.com>
7943
7944         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
7945         Initialize.
7946
7947 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
7948
7949         PR gdb/22286
7950         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
7951         Also handle registers whose width is not a multiple of
7952         PTRACE_TYPE_RET.
7953         (linux_nat_trad_target::store_register): Likewise.
7954
7955 2018-05-16  Tom Tromey  <tom@tromey.com>
7956
7957         * gdbcore.h (core_bfd): Redefine.
7958         * corelow.c (core_target::close): Update.
7959         (core_target_open): Update.
7960         * progspace.h (struct program_space) <cbfd>: Now a
7961         gdb_bfd_ref_ptr.
7962
7963 2018-05-16  Tom Tromey  <tom@tromey.com>
7964
7965         PR cli/19551:
7966         * symfile-add-flags.h (enum symfile_add_flags)
7967         <SYMFILE_NOT_FILENAME>: New constant.
7968         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
7969         objfile name from BFD.
7970         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
7971         * minidebug.c (find_separate_debug_file_in_section): Put
7972         ".gnu_debugdata" into BFD's file name.
7973
7974 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
7975
7976         * regcache.c (regcache_read_ftype, regcache_write_ftype):
7977         Remove.
7978
7979 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
7980
7981         PR binutils/21446
7982         * aarch64-tdep.c (aarch64_analyze_prologue,
7983         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
7984         Indicate not interested in errors.
7985
7986 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
7987
7988         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
7989         Supply the MIPS_ZERO_REGNUM register.
7990
7991 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
7992
7993         * mips-tdep.c (mask_address_var): Make variable static.
7994
7995 2018-05-14  Tom Tromey  <tom@tromey.com>
7996
7997         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
7998
7999 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
8000
8001         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
8002         FXSAVE_ADDR for the mxcsr register.
8003
8004 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
8005
8006         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
8007
8008 2018-05-11  Pedro Alves  <palves@redhat.com>
8009
8010         * corelow.c (core_target) <core_target>: No longer inline.
8011         Initialize m_core_gdbarch, m_core_vec and build the section table
8012         here.
8013         <~core_target>: New.
8014         <core_gdbarch, get_core_register_section>: New methods.
8015         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
8016         factored out from ...
8017         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
8018         (core_ops): Delete.
8019         (sniff_core_bfd): Add gdbarch parameter.
8020         (core_close): Delete, merged into ...
8021         (core_target::close): ... here.  Delete self.
8022         (core_close_cleanup): Delete.
8023         (core_target_open): Allocate a core_target on the heap.  Use a
8024         unique_ptr instead of a cleanup.  Bits moved into the core_target
8025         ctor.  Adjust to use core_target methods instead of globals.
8026         (get_core_register_section): Rename to ...
8027         (core_target::get_core_register_section): ... this and adjust.
8028         (struct get_core_registers_cb_data): New.
8029         (get_core_registers_cb): Use it.  Use bool.
8030         (core_target::fetch_registers, core_target::files_info)
8031         (core_target::xfer_partial, core_target::read_description)
8032         (core_target::pid_to, core_target::thread_name): Adjust to
8033         reference class fields instead of globals.
8034         * target.h (struct target_ops_deleter, target_ops_up): New.
8035
8036 2018-05-11  Pedro Alves  <palves@redhat.com>
8037
8038         * corefile.c (core_file_command): Move to corelow.c.
8039         * corelow.c (the_core_target): Delete.
8040         (core_file_command): Moved from corefile.c.  Check exec_bfd
8041         instead of the_core_target.  Use target_detach instead of calling
8042         into the_core_target directly.
8043         (maybe_say_no_core_file_now): New.
8044         (core_target::detach): Use it.
8045         (_initialize_corelow): Remove references to the_core_target.
8046         * gdbcore.h (the_core_target): Delete.
8047
8048 2018-05-11  Tom Tromey  <tromey@redhat.com>
8049             Pedro Alves  <palves@redhat.com>
8050
8051         * corefile.c (core_bfd): Remove.
8052         * gdbcore.h (core_bfd): Now a macro.
8053         * progspace.h (struct program_space) <cbfd>: New field.
8054
8055 2018-05-11  Tom Tromey  <tom@tromey.com>
8056
8057         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
8058         gdb::def_vector.
8059
8060 2018-05-10  Tom Tromey  <tom@tromey.com>
8061
8062         * configure: Rebuild.
8063         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
8064
8065 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
8066
8067         PR server/23158:
8068         * regformats/regdat.sh: Adjust script, following the addition
8069         of the new expedite_regs parameter to init_target_desc.
8070
8071 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
8072     
8073         PR gdb/23127
8074         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
8075         set_gdbarch_significant_addr_bit.
8076         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
8077         set_gdbarch_significant_addr_bit.
8078         * utils.c (address_significant): Update to sign extend addr.
8079
8080 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
8081
8082         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
8083         (xtensa_linux_init_abi): Limit tdep->num_regs by
8084         tdep->num_nopriv_regs.
8085         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
8086         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
8087         not initialized.
8088
8089 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
8090
8091         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
8092
8093 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
8094
8095         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
8096         (I387_MXCSR_INIT_VAL): New constant.
8097         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
8098         buffer if it was supplied by the inferior.
8099         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
8100         (i387_xsave_get_clear_bv): New function.
8101         (i387_supply_xsave): Only read x87 control registers from the
8102         xsave buffer if the feature is enabled, and the state will have
8103         been written, otherwise, provide a suitable default.
8104         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
8105         including x87 control registers.  Update control registers if they
8106         have changed from the default value, and mark features as enabled
8107         as required.
8108         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
8109
8110 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
8111
8112         * spu-tdep.c (info_spu_event_command): Fix output formatting.
8113
8114 2018-05-07  Tom Tromey  <tom@tromey.com>
8115
8116         * configure: Rebuild.
8117         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
8118
8119 2018-05-07  Tom Tromey  <tom@tromey.com>
8120
8121         PR tdep/20362:
8122         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
8123         bit.  Use correct value for VDIV.
8124
8125 2018-05-04  Tom Tromey  <tom@tromey.com>
8126
8127         * configure: Rebuild.
8128         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
8129
8130 2018-05-04  Tom Tromey  <tom@tromey.com>
8131
8132         * linux-record.c (record_linux_system_call) <case
8133         RECORD_SYS_RECVFROM>: Add "break".
8134
8135 2018-05-04  Tom Tromey  <tom@tromey.com>
8136
8137         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
8138         Add missing "break".
8139         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
8140         Add missing "break".
8141
8142 2018-05-04  Tom Tromey  <tom@tromey.com>
8143
8144         * rs6000-tdep.c (ppc_process_record_op4)
8145         (ppc_process_record_op63): Add fall-through comment.
8146
8147 2018-05-04  Tom Tromey  <tom@tromey.com>
8148
8149         * i386-tdep.c (i386_process_record): Add fall-through comment.
8150
8151 2018-05-04  Tom Tromey  <tom@tromey.com>
8152
8153         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
8154         comment.
8155
8156 2018-05-04  Tom Tromey  <tom@tromey.com>
8157
8158         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
8159         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
8160         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
8161         comment.
8162         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
8163         comment.
8164         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
8165         comment.
8166
8167 2018-05-04  Tom Tromey  <tom@tromey.com>
8168
8169         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
8170
8171 2018-05-04  Tom Tromey  <tom@tromey.com>
8172
8173         * s390-tdep.c (s390_process_record): Fix fall-through comments.
8174         * xcoffread.c (scan_xcoff_symtab): Move comment later.
8175         * symfile.c (section_is_mapped): Fix fall-through comment.
8176         * stabsread.c (define_symbol, read_member_functions): Fix
8177         fall-through comment.
8178         * s390-linux-tdep.c (s390_process_record): Fix fall-through
8179         comment.
8180         * remote.c (remote_wait_as): Fix fall-through comment.
8181         * p-exp.y (yylex): Fix fall-through comment.
8182         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
8183         comment.
8184         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
8185         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
8186         * jv-exp.y (yylex): Fix fall-through comment.
8187         * go-exp.y (lex_one_token): Fix fall-through comment.
8188         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
8189         fall-through comment.
8190         * f-exp.y (yylex): Fix fall-through comment.
8191         * dwarf2read.c (process_die): Fix fall-through comments.
8192         * dbxread.c (process_one_symbol): Fix fall-through comment.
8193         * d-exp.y (lex_one_token): Fix fall-through comment.
8194         * cp-name-parser.y (yylex): Fix fall-through comment.
8195         * coffread.c (coff_symtab_read): Fix fall-through comment.
8196         * c-exp.y (lex_one_token): Fix fall-through comment.
8197         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
8198         comment.
8199         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
8200         comment.
8201
8202 2018-05-04  Tom Tromey  <tom@tromey.com>
8203
8204         PR python/22730:
8205         * NEWS: Mention gdb.execute change.
8206         * gdbcmd.h (execute_control_command): Don't declare.
8207         * python/python.c (execute_gdb_command): Use read_command_lines_1,
8208         execute_control_commands, execute_control_commands_to_string.
8209         * cli/cli-script.h (execute_control_commands)
8210         (execute_control_commands_to_string): Declare.
8211         (execute_control_command): Add from_tty parameter.
8212         * cli/cli-script.c (execute_control_commands)
8213         (execute_control_commands_to_string): New functions.
8214         (execute_user_command): Use execute_control_commands.
8215         (execute_control_command_1): Add "from_tty" parameter.  Update.
8216         (execute_control_command): Likewise.
8217
8218 2018-05-04  Tom Tromey  <tom@tromey.com>
8219
8220         PR python/22731:
8221         * NEWS: Mention that breakpoint commands are writable.
8222         * python/py-breakpoint.c (bppy_set_commands): New function.
8223         (breakpoint_object_getset) <"commands">: Use it.
8224
8225 2018-05-04  Tom Tromey  <tom@tromey.com>
8226
8227         * tracepoint.c (actions_command): Update.
8228         * mi/mi-cmd-break.c (mi_command_line_array)
8229         (mi_command_line_array_cnt, mi_command_line_array_ptr)
8230         (mi_read_next_line): Remove.
8231         (mi_cmd_break_commands): Update.
8232         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
8233         function_view.
8234         * cli/cli-script.c (get_command_line): Update.
8235         (process_next_line): Use function_view.  Constify.
8236         (recurse_read_control_structure, read_command_lines)
8237         (read_command_lines_1): Change argument types to function_view.
8238         (do_define_command, document_command): Update.
8239         * breakpoint.h (check_tracepoint_command): Don't declare.
8240         * breakpoint.c (check_tracepoint_command): Remove.
8241         (commands_command_1, create_tracepoint_from_upload): Update.
8242
8243 2018-05-04  Tom Tromey  <tom@tromey.com>
8244
8245         PR gdb/11750:
8246         * cli/cli-script.h (enum command_control_type) <define_control>:
8247         New constant.
8248         * cli/cli-script.c (multi_line_command_p): Handle define_control.
8249         (build_command_line, execute_control_command_1)
8250         (process_next_line): Likewise.
8251         (do_define_command): New function, extracted from define_command.
8252         (define_command): Use it.
8253
8254 2018-05-04  Tom Tromey  <tom@tromey.com>
8255
8256         * tracepoint.c (actions_command): Update.
8257         * cli/cli-script.h (read_command_lines): Update.
8258         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
8259         (MAX_TMPBUF): Remove define.
8260         (define_command): Use string_printf.
8261         (document_command): Likewise.
8262         * breakpoint.c (commands_command_1): Update.
8263
8264 2018-05-04  Tom Tromey  <tom@tromey.com>
8265
8266         * top.c (execute_command): Update.
8267         * cli/cli-script.h (print_command_lines): Now varargs.
8268         * cli/cli-script.c (print_command_lines): Now varargs.
8269         (execute_control_command_1) <case while_control, case if_control>:
8270         Update.
8271
8272 2018-05-04  Tom Tromey  <tom@tromey.com>
8273
8274         * tracepoint.c (all_tracepoint_actions): Rename from
8275         all_tracepoint_actions_and_cleanup.  Change return type.
8276         (actions_command, encode_actions_1, encode_actions)
8277         (trace_dump_actions, tdump_command): Update.
8278         * remote.c (remote_download_command_source): Update.
8279         * python/python.c (gdbpy_eval_from_control_command)
8280         (python_command, python_interactive_command): Update.
8281         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
8282         * guile/guile.c (guile_command)
8283         (gdbscm_eval_from_control_command, guile_command): Update.
8284         * compile/compile.c (compile_code_command)
8285         (compile_print_command, compile_to_object): Update.
8286         * cli/cli-script.h (struct command_lines_deleter): New.
8287         (counted_command_line): New typedef.
8288         (struct command_line): Add constructor, destructor.
8289         <body_list>: Remove.
8290         <body_list_0, body_list_1>: New members.
8291         (command_line_up): Remove typedef.
8292         (read_command_lines, read_command_lines_1, get_command_line):
8293         Update.
8294         (copy_command_lines): Don't declare.
8295         * cli/cli-script.c (build_command_line): Use "new".
8296         (get_command_line): Return counted_command_line.
8297         (print_command_lines, execute_user_command)
8298         (execute_control_command_1, while_command, if_command): Update.
8299         (realloc_body_list): Remove.
8300         (process_next_line, recurse_read_control_structure): Update.
8301         (read_command_lines, read_command_lines_1): Return counted_command_line.
8302         (free_command_lines): Use "delete".
8303         (copy_command_lines): Remove.
8304         (define_command, document_command, show_user_1): Update.
8305         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
8306         a counted_command_line.
8307         * breakpoint.h (counted_command_line): Remove typedef.
8308         (breakpoint_set_commands): Update.
8309         * breakpoint.c (check_no_tracepoint_commands)
8310         (validate_commands_for_breakpoint): Update.
8311         (breakpoint_set_commands): Change commands to be a
8312         counted_command_line.
8313         (commands_command_1, update_dprintf_command_list)
8314         (create_tracepoint_from_upload): Update.
8315
8316 2018-05-04  Tom Tromey  <tom@tromey.com>
8317
8318         * cli/cli-decode.h (cmd_list_element): New constructor.
8319         (~cmd_list_element): New destructor.
8320         (struct cmd_list_element): Add initializers.
8321         * cli/cli-decode.c (do_add_cmd): Use "new".
8322         (delete_cmd): Use "delete".
8323
8324 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
8325             Pedro Alves <palves@redhat.com>
8326
8327         PR breakpoints/19806 and support for PR external/20207.
8328         * NEWS: Mention Aarch64 watchpoint improvements.
8329         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
8330         watchpoints and PR external/20207 watchpoints.
8331         * nat/aarch64-linux-hw-point.c
8332         (kernel_supports_any_contiguous_range): New.
8333         (aarch64_watchpoint_offset): New.
8334         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
8335         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
8336         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
8337         (aarch64_align_watchpoint): New parameters aligned_offset_p and
8338         next_addr_orig_p.  Support PR external/20207 watchpoints.
8339         (aarch64_downgrade_regs): New.
8340         (aarch64_dr_state_insert_one_point): New parameters offset and
8341         addr_orig.
8342         (aarch64_dr_state_remove_one_point): Likewise.
8343         (aarch64_handle_breakpoint): Update caller.
8344         (aarch64_handle_aligned_watchpoint): Likewise.
8345         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
8346         aligned_offset.
8347         (aarch64_linux_set_debug_regs): Remove const from state.  Call
8348         aarch64_downgrade_regs.
8349         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
8350         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
8351         (DR_CONTROL_MASK): ... this.
8352         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
8353         (unsigned int aarch64_watchpoint_offset): New prototype.
8354         (aarch64_linux_set_debug_regs): Remove const from state.
8355         * utils.c (align_up, align_down): Move to ...
8356         * common/common-utils.c (align_up, align_down): ... here.
8357         * utils.h (align_up, align_down): Move to ...
8358         * common/common-utils.h (align_up, align_down): ... here.
8359
8360 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
8361
8362         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
8363         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
8364         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
8365         Re-implement to match the ABI as summarized in GCC's
8366         gcc/config/sparc/sparc.c.  All callers updated.
8367         (sparc32_store_arguments): Remove assertion.
8368
8369 2018-05-04  Tom Tromey  <tom@tromey.com>
8370
8371         * printcmd.c: Don't include tui.h.
8372         (decode_format): Use skip_spaces.
8373
8374 2018-05-04  Tom Tromey  <tom@tromey.com>
8375
8376         PR gdb/22619:
8377         * printcmd.c (last_count): New global.
8378         (x_command): Use saved count when repeating.
8379
8380 2018-05-04  Tom Tromey  <tom@tromey.com>
8381
8382         * nto-procfs.c (do_closedir_cleanup): Remove.
8383         (procfs_pidlist): Use gdb_dir_up.
8384         * procfs.c (do_closedir_cleanup): Remove.
8385         (proc_update_threads): Use gdb_dir_up.
8386         * common/filestuff.h (struct gdb_dir_deleter): New.
8387         (gdb_dir_up): New typedef.
8388
8389 2018-05-04  Tom Tromey  <tom@tromey.com>
8390
8391         * ada-lang.c (print_mention_exception): Use std::string.
8392
8393 2018-05-04  Tom Tromey  <tom@tromey.com>
8394
8395         * ada-lang.c (create_excep_cond_exprs): Update.
8396         (ada_exception_catchpoint_cond_string): Use std::string.
8397
8398 2018-05-04  Tom Tromey  <tom@tromey.com>
8399
8400         * ada-lang.c (xget_renaming_scope): Return std::string.
8401         (old_renaming_is_invisible): Update.
8402
8403 2018-05-04  Tom Tromey  <tom@tromey.com>
8404
8405         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
8406         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
8407
8408 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
8409
8410         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
8411
8412 2018-05-04  Tom Tromey  <tom@tromey.com>
8413
8414         * remote.c (remote_query_supported_append): Change type.
8415         (remote_check_symbols): Update.
8416
8417 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
8418
8419         PR gdb/11420
8420         * configure.ac: Prepend libpython.
8421         * python/python-config.py: Likewise.
8422         * configure: Regenerate.
8423
8424 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
8425
8426         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
8427
8428 2018-05-03  Pedro Alves  <palves@redhat.com>
8429
8430         * s390-linux-nat.c
8431         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
8432         override.  Write 'true' instead of '1'.
8433         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
8434         declaration.
8435
8436 2018-05-02  Pedro Alves  <palves@redhat.com>
8437
8438         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
8439         add_inf_child_target.
8440         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
8441         add_inf_child_target.
8442         * aix-thread.c (aix_thread_target_info): New.
8443         (aix_thread_target) <shortname, longname, doc>: Delete.
8444         <info>: New.
8445         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
8446         add_inf_child_target.
8447         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
8448         add_inf_child_target.
8449         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
8450         add_inf_child_target.
8451         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
8452         add_inf_child_target.
8453         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
8454         add_inf_child_target.
8455         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
8456         add_inf_child_target.
8457         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
8458         add_inf_child_target.
8459         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
8460         add_inf_child_target.
8461         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
8462         add_inf_child_target.
8463         * bfd-target.c (target_bfd_target_info): New.
8464         (target_bfd) <shortname, longname, doc>: Delete.
8465         <info>: New.
8466         * bsd-kvm.c (bsd_kvm_target_info): New.
8467         (bsd_kvm_target) <shortname, longname, doc>: Delete.
8468         <info>: New.
8469         (bsd_kvm_target::open): Rename to ...
8470         (bsd_kvm_target_open): ... this.  Adjust.
8471         * bsd-uthread.c (bsd_uthread_target_info): New.
8472         (bsd_uthread_target) <shortname, longname, doc>: Delete.
8473         <info>: New.
8474         * corefile.c (core_file_command): Adjust.
8475         * corelow.c (core_target_info): New.
8476         (core_target) <shortname, longname, doc>: Delete.
8477         <info>: New.
8478         (core_target::open): Rename to ...
8479         (core_target_open): ... this.  Adjust.
8480         * ctf.c (ctf_target_info): New.
8481         (ctf_target) <shortname, longname, doc>: Delete.
8482         <info>: New.
8483         (ctf_target::open): Rename to ...
8484         (ctf_target_open): ... this.
8485         (_initialize_ctf): Adjust.
8486         * exec.c (exec_target_info): New.
8487         (exec_target) <shortname, longname, doc>: Delete.
8488         <info>: New.
8489         (exec_target::open): Rename to ...
8490         (exec_target_open): ... this.
8491         * gdbcore.h (core_target_open): Declare.
8492         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
8493         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
8494         add_inf_child_target.
8495         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
8496         add_inf_child_target.
8497         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
8498         add_inf_child_target.
8499         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
8500         add_inf_child_target.
8501         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
8502         add_inf_child_target.
8503         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
8504         add_inf_child_target.
8505         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
8506         add_inf_child_target.
8507         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
8508         add_inf_child_target.
8509         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
8510         add_inf_child_target.
8511         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
8512         add_inf_child_target.
8513         * inf-child.c (inf_child_target_info): New.
8514         (inf_child_target::info): New.
8515         (inf_child_open_target): Remove 'target' parameter.  Use
8516         get_native_target instead.
8517         (inf_child_target::open): Delete.
8518         (add_inf_child_target): New.
8519         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
8520         Delete.
8521         <info>: New.
8522         (add_inf_child_target): Declare.
8523         (inf_child_open_target): Declare.
8524         * linux-thread-db.c (thread_db_target_info): New.
8525         (thread_db_target) <shortname, longname, doc>: Delete.
8526         <info>: New.
8527         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
8528         add_inf_child_target.
8529         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
8530         add_inf_child_target.
8531         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
8532         add_inf_child_target.
8533         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
8534         add_inf_child_target.
8535         * make-target-delegates (print_class): Adjust.
8536         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
8537         add_inf_child_target.
8538         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
8539         add_inf_child_target.
8540         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
8541         add_inf_child_target.
8542         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
8543         add_inf_child_target.
8544         * nto-procfs.c (nto_native_target_info): New.
8545         (nto_procfs_target_native) <shortname, longname, doc>:
8546         Delete.
8547         <info>: New.
8548         (nto_procfs_target_info): New.
8549         (nto_procfs_target_procfs) <shortname, longname, doc>:
8550         Delete.
8551         <info>: New.
8552         (init_procfs_targets): Adjust.
8553         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
8554         add_inf_child_target.
8555         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
8556         add_inf_child_target.
8557         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
8558         add_inf_child_target.
8559         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
8560         add_inf_child_target.
8561         * ravenscar-thread.c (ravenscar_target_info): New.
8562         (ravenscar_thread_target) <shortname, longname, doc>:
8563         Delete.
8564         <info>: New.
8565         * record-btrace.c (record_btrace_target_info):
8566         (record_btrace_target) <shortname, longname, doc>: Delete.
8567         <info>: New.
8568         (record_btrace_target::open): Rename to ...
8569         (record_btrace_target_open): ... this.  Adjust.
8570         * record-full.c (record_longname, record_doc): New.
8571         (record_full_base_target) <shortname, longname, doc>: Delete.
8572         <info>: New.
8573         (record_full_target_info): New.
8574         (record_full_target): <shortname>: Delete.
8575         <info>: New.
8576         (record_full_core_open_1, record_full_open_1): Update comments.
8577         (record_full_base_target::open): Rename to ...
8578         (record_full_open): ... this.
8579         (cmd_record_full_restore): Update.
8580         (_initialize_record_full): Update.
8581         * remote-sim.c (remote_sim_target_info): New.
8582         (gdbsim_target) <shortname, longname, doc>: Delete.
8583         <info>: New.
8584         (gdbsim_target::open): Rename to ...
8585         (gdbsim_target_open): ... this.
8586         (_initialize_remote_sim): Adjust.
8587         * remote.c (remote_doc): New.
8588         (remote_target_info): New.
8589         (remote_target) <shortname, longname, doc>: Delete.
8590         <info>: New.
8591         (extended_remote_target_info): New.
8592         (extended_remote_target) <shortname, longname, doc>: Delete.
8593         <info>: New.
8594         (remote_target::open_1): Make static.  Adjust.
8595         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
8596         * s390-linux-nat.c (_initialize_s390_nat): Use
8597         add_inf_child_target.
8598         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
8599         add_inf_child_target.
8600         * sol-thread.c (thread_db_target_info): New.
8601         (sol_thread_target) <shortname, longname, doc>: Delete.
8602         <info>: New.
8603         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
8604         add_inf_child_target.
8605         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
8606         add_inf_child_target.
8607         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
8608         add_inf_child_target.
8609         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
8610         add_inf_child_target.
8611         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
8612         add_inf_child_target.
8613         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
8614         add_inf_child_target.
8615         * spu-linux-nat.c (_initialize_spu_nat): Use
8616         add_inf_child_target.
8617         * spu-multiarch.c (spu_multiarch_target_info): New.
8618         (spu_multiarch_target) <shortname, longname, doc>: Delete.
8619         <info>: New.
8620         * target-delegates.c: Regenerate.
8621         * target.c: Include <unordered_map>.
8622         (target_ops_p): Delete.
8623         (DEF_VEC_P(target_ops_p)): Delete.
8624         (target_factories): New.
8625         (test_target_info): New.
8626         (test_target_ops::info): New.
8627         (open_target): Adjust to use target_factories.
8628         (add_target_with_completer): Rename to ...
8629         (add_target): ... this.  Change prototype.  Register target_info
8630         and open callback in target_factories.  Register target_info in
8631         command context instead of target_ops.
8632         (add_target): Delete old implementation.
8633         (add_deprecated_target_alias): Change prototype.  Adjust.
8634         (the_native_target): New.
8635         (set_native_target, get_native_target): New.
8636         (find_default_run_target): Use the_native_target.
8637         (find_attach_target, find_run_target): Simplify.
8638         (target_ops::open): Delete.
8639         (dummy_target_info): New.
8640         (dummy_target::shortname, dummy_target::longname)
8641         (dummy_target::doc): Delete.
8642         (dummy_target::info): New.
8643         (debug_target::shortname, debug_target::longname)
8644         (debug_target::doc): Delete.
8645         (debug_target::info): New.
8646         * target.h (struct target_info): New.
8647         (target_ops::~target_ops): Add comment.
8648         (target_ops::info): New.
8649         (target_ops::shortname, target_ops::longname, target_ops::doc): No
8650         longer virtual.  Implement in terms of target_info.
8651         (set_native_target, get_native_target): Declare.
8652         (target_open_ftype): New.
8653         (add_target, add_target_with_completer)
8654         (add_deprecated_target_alias): Change prototype.
8655         (test_target) <shortname, longname, doc>: Delete.
8656         <info>: New.
8657         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
8658         add_inf_child_target.
8659         * tracefile-tfile.c (tfile_target_info): New.
8660         (tfile_target) <shortname, longname, doc>: Delete.
8661         <info>: New.
8662         (tfile_target::open): Rename to ...
8663         (tfile_target_open): ... this.
8664         (_initialize_tracefile_tfile): Adjust.
8665         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
8666         add_inf_child_target.
8667         * windows-nat.c (_initialize_windows_nat): Use
8668         add_inf_child_target.
8669         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
8670         add_inf_child_target.
8671
8672 2018-05-02  Pedro Alves  <palves@redhat.com>
8673
8674         * linux-nat.h (linux_nat_target) <low_new_thread,
8675         low_delete_thread, low_new_fork, low_forget_process,
8676         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
8677         New virtual methods.
8678         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8679         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
8680         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
8681         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8682         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
8683         Delete.
8684         * linux-fork.c (delete_fork): Adjust to call low method.
8685         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
8686         (linux_nat_new_fork, linux_nat_forget_process_hook)
8687         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
8688         (linux_nat_status_is_event):
8689         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
8690         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
8691         to call low method.
8692         (sigtrap_is_event): Rename to ...
8693         (linux_nat_target::low_status_is_event): ... this.
8694         (linux_nat_set_status_is_event): Delete.
8695         (save_stop_reason, linux_nat_wait_1)
8696         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
8697         low methods.
8698         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8699         (linux_nat_set_new_fork, linux_nat_set_forget_process)
8700         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8701         (linux_nat_set_prepare_to_resume): Delete.
8702         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
8703         low virtual methods.
8704         * amd64-linux-nat.c: Likewise.
8705         * arm-linux-nat.c: Likewise.
8706         * i386-linux-nat.c: Likewise.
8707         * ia64-linux-nat.c: Likewise.
8708         * mips-linux-nat.c: Likewise.
8709         * ppc-linux-nat.c: Likewise.
8710         * s390-linux-nat.c: Likewise.
8711         * sparc64-linux-nat.c: Likewise.
8712         * x86-linux-nat.c: Likewise.
8713         * x86-linux-nat.h: Include "nat/x86-linux.h".
8714         (x86_linux_nat_target) <low_new_fork, low_forget_process,
8715         low_prepare_to_resume, low_new_thread, low_delete_thread>:
8716         Override methods.
8717
8718 2018-05-02  Pedro Alves  <palves@redhat.com>
8719
8720         * target.h (target_ops)
8721         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
8722         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
8723         stopped_by_watchpoint, have_continuable_watchpoint,
8724         stopped_data_address, watchpoint_addr_within_range,
8725         can_accel_watchpoint_condition, can_run, thread_alive,
8726         has_all_memory, has_memory, has_stack, has_registers,
8727         has_execution, can_async_p, is_async_p, supports_non_stop,
8728         always_non_stop_p, can_execute_reverse, supports_multi_process,
8729         supports_enable_disable_tracepoint,
8730         supports_disable_randomization, supports_string_tracing,
8731         supports_evaluation_of_breakpoint_conditions,
8732         can_run_breakpoint_commands, filesystem_is_local,
8733         can_download_tracepoint, get_trace_state_variable_value,
8734         set_trace_notes, get_tib_address, use_agent, can_use_agent,
8735         record_is_replaying, record_will_replay,
8736         augmented_libraries_svr4_read>: Adjust to return bool.
8737         * aarch64-linux-nat.c: All implementations adjusted.
8738         * aix-thread.c: All implementations adjusted.
8739         * arm-linux-nat.c: All implementations adjusted.
8740         * breakpoint.c: All implementations adjusted.
8741         * bsd-kvm.c: All implementations adjusted.
8742         * bsd-uthread.c: All implementations adjusted.
8743         * corelow.c: All implementations adjusted.
8744         * ctf.c: All implementations adjusted.
8745         * darwin-nat.c: All implementations adjusted.
8746         * darwin-nat.h: All implementations adjusted.
8747         * exec.c: All implementations adjusted.
8748         * fbsd-nat.c: All implementations adjusted.
8749         * fbsd-nat.h: All implementations adjusted.
8750         * gnu-nat.c: All implementations adjusted.
8751         * gnu-nat.h: All implementations adjusted.
8752         * go32-nat.c: All implementations adjusted.
8753         * ia64-linux-nat.c: All implementations adjusted.
8754         * inf-child.c: All implementations adjusted.
8755         * inf-child.h: All implementations adjusted.
8756         * inf-ptrace.c: All implementations adjusted.
8757         * inf-ptrace.h: All implementations adjusted.
8758         * linux-nat.c: All implementations adjusted.
8759         * linux-nat.h: All implementations adjusted.
8760         * mips-linux-nat.c: All implementations adjusted.
8761         * nto-procfs.c: All implementations adjusted.
8762         * ppc-linux-nat.c: All implementations adjusted.
8763         * procfs.c: All implementations adjusted.
8764         * ravenscar-thread.c: All implementations adjusted.
8765         * record-btrace.c: All implementations adjusted.
8766         * record-full.c: All implementations adjusted.
8767         * remote-sim.c: All implementations adjusted.
8768         * remote.c: All implementations adjusted.
8769         * s390-linux-nat.c: All implementations adjusted.
8770         * sol-thread.c: All implementations adjusted.
8771         * spu-multiarch.c: All implementations adjusted.
8772         * target-delegates.c: All implementations adjusted.
8773         * target.c: All implementations adjusted.
8774         * target.h: All implementations adjusted.
8775         * tracefile-tfile.c: All implementations adjusted.
8776         * tracefile.c: All implementations adjusted.
8777         * tracefile.h: All implementations adjusted.
8778         * windows-nat.c: All implementations adjusted.
8779         * x86-linux-nat.h: All implementations adjusted.
8780         * x86-nat.h: All implementations adjusted.
8781
8782 2018-05-02  Pedro Alves  <palves@redhat.com>
8783
8784         * make-target-delegates (scan_target_h): Don't trim lines here.
8785         Replace sequences of tabs and/or whitespace with a single
8786         whitespace.
8787         (top level, parsing methods): Trim each line before processing it
8788         here.
8789
8790 2018-05-02  Pedro Alves  <palves@redhat.com>
8791             John Baldwin  <jhb@freebsd.org>
8792
8793         * target.h (enum strata) <debug_stratum>: New.
8794         (struct target_ops) <all delegation methods>: Replace by C++
8795         virtual methods, and drop "to_" prefix.  All references updated
8796         throughout.
8797         <to_shortname, to_longname, to_doc, to_data,
8798         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
8799         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
8800         virtual methods.  All references updated throughout.
8801         <can_attach, supports_terminal_ours, can_create_inferior,
8802         get_thread_control_capabilities, attach_no_wait>: New
8803         virtual methods.
8804         <insert_breakpoint, remove_breakpoint>: Now
8805         TARGET_DEFAULT_NORETURN methods.
8806         <info_proc>: Now returns bool.
8807         <to_magic>: Delete.
8808         (OPS_MAGIC): Delete.
8809         (current_target): Delete.  All references replaced by references
8810         to ...
8811         (target_stack): ... this.  New.
8812         (target_shortname, target_longname): Adjust.
8813         (target_can_run): Now a function declaration.
8814         (default_child_has_all_memory, default_child_has_memory)
8815         (default_child_has_stack, default_child_has_registers)
8816         (default_child_has_execution): Remove target_ops parameter.
8817         (complete_target_initialization): Delete.
8818         (memory_breakpoint_target): New template class.
8819         (test_target_ops): Refactor as a C++ class with virtual methods.
8820         * make-target-delegates (NAME_PART): Tighten.
8821         (POINTER_PART, CP_SYMBOL): New.
8822         (SIMPLE_RETURN_PART): Reimplement.
8823         (VEC_RETURN_PART): Expect less.
8824         (RETURN_PART, VIRTUAL_PART): New.
8825         (METHOD): Adjust to C++ virtual methods.
8826         (scan_target_h): Remove reference to C99.
8827         (dname): Output "target_ops::" prefix.
8828         (write_function_header): Adjust to output a C++ class method.
8829         (write_declaration): New.
8830         (write_delegator): Adjust to output a C++ class method.
8831         (tdname): Output "dummy_target::" prefix.
8832         (write_tdefault, write_debugmethod): Adjust to output a C++ class
8833         method.
8834         (tdefault_names, debug_names): Delete.
8835         (return_types, tdefaults, styles, argtypes_array): New.
8836         (top level): All methods are delegators.
8837         (print_class): New.
8838         (top level): Print dummy_target and debug_target classes.
8839         * target-delegates.c: Regenerate.
8840         * target-debug.h (target_debug_print_enum_info_proc_what)
8841         (target_debug_print_thread_control_capabilities)
8842         (target_debug_print_thread_info_p): New.
8843         * target.c (dummy_target): Delete.
8844         (the_dummy_target, the_debug_target): New.
8845         (target_stack): Now extern.
8846         (set_targetdebug): Push/unpush debug target.
8847         (default_child_has_all_memory, default_child_has_memory)
8848         (default_child_has_stack, default_child_has_registers)
8849         (default_child_has_execution): Remove target_ops parameter.
8850         (complete_target_initialization): Delete.
8851         (add_target_with_completer): No longer call
8852         complete_target_initialization.
8853         (target_supports_terminal_ours): Use regular delegation.
8854         (update_current_target): Delete.
8855         (push_target): No longer check magic number.  Don't call
8856         update_current_target.
8857         (unpush_target): Don't call update_current_target.
8858         (target_is_pushed): No longer check magic number.
8859         (target_require_runnable): Skip for all stratums over
8860         process_stratum.
8861         (target_ops::info_proc): New.
8862         (target_info_proc): Use find_target_at and
8863         find_default_run_target.
8864         (target_supports_disable_randomization): Use regular delegation.
8865         (target_get_osdata): Use find_target_at.
8866         (target_ops::open, target_ops::close, target_ops::can_attach)
8867         (target_ops::attach, target_ops::can_create_inferior)
8868         (target_ops::create_inferior, target_ops::can_run)
8869         (target_can_run): New.
8870         (default_fileio_target): Use regular delegation.
8871         (target_ops::fileio_open, target_ops::fileio_pwrite)
8872         (target_ops::fileio_pread, target_ops::fileio_fstat)
8873         (target_ops::fileio_close, target_ops::fileio_unlink)
8874         (target_ops::fileio_readlink): New.
8875         (target_fileio_open_1, target_fileio_unlink)
8876         (target_fileio_readlink): Always call the target method.  Handle
8877         FILEIO_ENOSYS.
8878         (return_zero, return_zero_has_execution): Delete.
8879         (init_dummy_target): Delete.
8880         (dummy_target::dummy_target, dummy_target::shortname)
8881         (dummy_target::longname, dummy_target::doc)
8882         (debug_target::debug_target, debug_target::shortname)
8883         (debug_target::longname, debug_target::doc): New.
8884         (target_supports_delete_record): Use regular delegation.
8885         (setup_target_debug): Delete.
8886         (maintenance_print_target_stack): Skip debug_stratum.
8887         (initialize_targets): Instantiate the_dummy_target and
8888         the_debug_target.
8889         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
8890         use target_stack.
8891         (target_auxv_search, fprint_target_auxv): Adjust.
8892         (info_auxv_command): Adjust to use target_stack.
8893         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
8894         * exceptions.c (print_flush): Handle a NULL target_stack.
8895         * regcache.c (target_ops_no_register): Refactor as class with
8896         virtual methods.
8897
8898         * exec.c (exec_target): New class.
8899         (exec_ops): Now an exec_target.
8900         (exec_open, exec_close_1, exec_get_section_table)
8901         (exec_xfer_partial, exec_files_info, exec_has_memory)
8902         (exec_make_note_section): Refactor as exec_target methods.
8903         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
8904         Delete.
8905         (exec_target::find_memory_regions): New.
8906         (_initialize_exec): Don't call init_exec_ops.
8907         * gdbcore.h (exec_file_clear): Delete.
8908
8909         * corefile.c (core_target): Delete.
8910         (core_file_command): Adjust.
8911         * corelow.c (core_target): New class.
8912         (the_core_target): New.
8913         (core_close): Remove target_ops parameter.
8914         (core_close_cleanup): Adjust.
8915         (core_target::close): New.
8916         (core_open, core_detach, get_core_registers, core_files_info)
8917         (core_xfer_partial, core_thread_alive, core_read_description)
8918         (core_pid_to_str, core_thread_name, core_has_memory)
8919         (core_has_stack, core_has_registers, core_info_proc): Rework as
8920         core_target methods.
8921         (ignore, core_remove_breakpoint, init_core_ops): Delete.
8922         (_initialize_corelow): Initialize the_core_target.
8923         * gdbcore.h (core_target): Delete.
8924         (the_core_target): New.
8925
8926         * ctf.c: (ctf_target): New class.
8927         (ctf_ops): Now a ctf_target.
8928         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
8929         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
8930         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
8931         methods.
8932         (init_ctf_ops): Delete.
8933         (_initialize_ctf): Don't call it.
8934         * tracefile-tfile.c (tfile_target): New class.
8935         (tfile_ops): Now a tfile_target.
8936         (tfile_open, tfile_close, tfile_files_info)
8937         (tfile_get_tracepoint_status, tfile_trace_find)
8938         (tfile_fetch_registers, tfile_xfer_partial)
8939         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
8940         Refactor as tfile_target methods.
8941         (tfile_xfer_partial_features): Remove target_ops parameter.
8942         (init_tfile_ops): Delete.
8943         (_initialize_tracefile_tfile): Don't call it.
8944         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
8945         (tracefile_has_stack, tracefile_has_registers)
8946         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
8947         tracefile_target methods.
8948         (init_tracefile_ops): Delete.
8949         (tracefile_target::tracefile_target): New.
8950         * tracefile.h: Include "target.h".
8951         (tracefile_target): New class.
8952         (init_tracefile_ops): Delete.
8953
8954         * spu-multiarch.c (spu_multiarch_target): New class.
8955         (spu_ops): Now a spu_multiarch_target.
8956         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
8957         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
8958         (spu_search_memory, spu_mourn_inferior): Refactor as
8959         spu_multiarch_target methods.
8960         (init_spu_ops): Delete.
8961         (_initialize_spu_multiarch): Remove references to init_spu_ops,
8962         complete_target_initialization.
8963
8964         * ravenscar-thread.c (ravenscar_thread_target): New class.
8965         (ravenscar_ops): Now a ravenscar_thread_target.
8966         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
8967         (ravenscar_thread_alive, ravenscar_pid_to_str)
8968         (ravenscar_fetch_registers, ravenscar_store_registers)
8969         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
8970         (ravenscar_stopped_by_hw_breakpoint)
8971         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
8972         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
8973         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
8974         methods.
8975         (init_ravenscar_thread_ops): Delete.
8976         (_initialize_ravenscar): Remove references to
8977         init_ravenscar_thread_ops and complete_target_initialization.
8978
8979         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
8980         (bsd_uthread_target): New class.
8981         (bsd_uthread_ops): Now a bsd_uthread_target.
8982         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
8983         (bsd_uthread_close, bsd_uthread_mourn_inferior)
8984         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
8985         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
8986         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
8987         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
8988         (bsd_uthread_target): Delete function.
8989         (_initialize_bsd_uthread): Remove reference to
8990         complete_target_initialization.
8991
8992         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
8993         (target_bfd): ... this new class.
8994         (target_bfd_xfer_partial, target_bfd_get_section_table)
8995         (target_bfd_close): Refactor as target_bfd methods.
8996         (target_bfd::~target_bfd): New.
8997         (target_bfd_reopen): Adjust.
8998         (target_bfd::close): New.
8999
9000         * record-btrace.c (record_btrace_target): New class.
9001         (record_btrace_ops): Now a record_btrace_target.
9002         (record_btrace_open, record_btrace_stop_recording)
9003         (record_btrace_disconnect, record_btrace_close)
9004         (record_btrace_async, record_btrace_info)
9005         (record_btrace_insn_history, record_btrace_insn_history_range)
9006         (record_btrace_insn_history_from, record_btrace_call_history)
9007         (record_btrace_call_history_range)
9008         (record_btrace_call_history_from, record_btrace_record_method)
9009         (record_btrace_is_replaying, record_btrace_will_replay)
9010         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
9011         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
9012         (record_btrace_store_registers, record_btrace_prepare_to_store)
9013         (record_btrace_to_get_unwinder)
9014         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
9015         (record_btrace_commit_resume, record_btrace_wait)
9016         (record_btrace_stop, record_btrace_can_execute_reverse)
9017         (record_btrace_stopped_by_sw_breakpoint)
9018         (record_btrace_supports_stopped_by_sw_breakpoint)
9019         (record_btrace_stopped_by_hw_breakpoint)
9020         (record_btrace_supports_stopped_by_hw_breakpoint)
9021         (record_btrace_update_thread_list, record_btrace_thread_alive)
9022         (record_btrace_goto_begin, record_btrace_goto_end)
9023         (record_btrace_goto, record_btrace_stop_replaying_all)
9024         (record_btrace_execution_direction)
9025         (record_btrace_prepare_to_generate_core)
9026         (record_btrace_done_generating_core): Refactor as
9027         record_btrace_target methods.
9028         (init_record_btrace_ops): Delete.
9029         (_initialize_record_btrace): Remove reference to
9030         init_record_btrace_ops.
9031         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
9032         the execution_direction global.
9033         (record_full_base_target, record_full_target)
9034         (record_full_core_target): New classes.
9035         (record_full_ops): Now a record_full_target.
9036         (record_full_core_ops): Now a record_full_core_target.
9037         (record_full_target::detach, record_full_target::disconnect)
9038         (record_full_core_target::disconnect)
9039         (record_full_target::mourn_inferior, record_full_target::kill):
9040         New.
9041         (record_full_open, record_full_close, record_full_async): Refactor
9042         as methods of the record_full_base_target class.
9043         (record_full_resume, record_full_commit_resume): Refactor
9044         as methods of the record_full_target class.
9045         (record_full_wait, record_full_stopped_by_watchpoint)
9046         (record_full_stopped_data_address)
9047         (record_full_stopped_by_sw_breakpoint)
9048         (record_full_supports_stopped_by_sw_breakpoint)
9049         (record_full_stopped_by_hw_breakpoint)
9050         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
9051         methods of the record_full_base_target class.
9052         (record_full_store_registers, record_full_xfer_partial)
9053         (record_full_insert_breakpoint, record_full_remove_breakpoint):
9054         Refactor as methods of the record_full_target class.
9055         (record_full_can_execute_reverse, record_full_get_bookmark)
9056         (record_full_goto_bookmark, record_full_execution_direction)
9057         (record_full_record_method, record_full_info, record_full_delete)
9058         (record_full_is_replaying, record_full_will_replay)
9059         (record_full_goto_begin, record_full_goto_end, record_full_goto)
9060         (record_full_stop_replaying): Refactor as methods of the
9061         record_full_base_target class.
9062         (record_full_core_resume, record_full_core_kill)
9063         (record_full_core_fetch_registers)
9064         (record_full_core_prepare_to_store)
9065         (record_full_core_store_registers, record_full_core_xfer_partial)
9066         (record_full_core_insert_breakpoint)
9067         (record_full_core_remove_breakpoint)
9068         (record_full_core_has_execution): Refactor
9069         as methods of the record_full_core_target class.
9070         (record_full_base_target::supports_delete_record): New.
9071         (init_record_full_ops): Delete.
9072         (init_record_full_core_ops): Delete.
9073         (record_full_save): Refactor as method of the
9074         record_full_base_target class.
9075         (_initialize_record_full): Remove references to
9076         init_record_full_ops and init_record_full_core_ops.
9077
9078         * remote.c (remote_target, extended_remote_target): New classes.
9079         (remote_ops): Now a remote_target.
9080         (extended_remote_ops): Now an extended_remote_target.
9081         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
9082         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
9083         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
9084         (remote_pass_signals, remote_set_syscall_catchpoint)
9085         (remote_program_signals, )
9086         (remote_thread_always_alive): Remove target_ops parameter.
9087         (remote_thread_alive, remote_thread_name)
9088         (remote_update_thread_list, remote_threads_extra_info)
9089         (remote_static_tracepoint_marker_at)
9090         (remote_static_tracepoint_markers_by_strid)
9091         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
9092         (remote_open): Refactor as methods of remote_target.
9093         (extended_remote_open, extended_remote_detach)
9094         (extended_remote_attach, extended_remote_post_attach):
9095         (extended_remote_supports_disable_randomization)
9096         (extended_remote_create_inferior): : Refactor as method of
9097         extended_remote_target.
9098         (remote_set_permissions, remote_open_1, remote_detach)
9099         (remote_follow_fork, remote_follow_exec, remote_disconnect)
9100         (remote_resume, remote_commit_resume, remote_stop)
9101         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
9102         (remote_terminal_ours, remote_wait, remote_fetch_registers)
9103         (remote_prepare_to_store, remote_store_registers)
9104         (remote_flash_erase, remote_flash_done, remote_files_info)
9105         (remote_kill, remote_mourn, remote_insert_breakpoint)
9106         (remote_remove_breakpoint, remote_insert_watchpoint)
9107         (remote_watchpoint_addr_within_range)
9108         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
9109         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
9110         (remote_supports_stopped_by_sw_breakpoint)
9111         (remote_stopped_by_hw_breakpoint)
9112         (remote_supports_stopped_by_hw_breakpoint)
9113         (remote_stopped_by_watchpoint, remote_stopped_data_address)
9114         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
9115         (remote_verify_memory): Refactor as methods of remote_target.
9116         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
9117         parameter.
9118         (remote_xfer_partial, remote_get_memory_xfer_limit)
9119         (remote_search_memory, remote_rcmd, remote_memory_map)
9120         (remote_pid_to_str, remote_get_thread_local_address)
9121         (remote_get_tib_address, remote_read_description): Refactor as
9122         methods of remote_target.
9123         (remote_target::fileio_open, remote_target::fileio_pwrite)
9124         (remote_target::fileio_pread, remote_target::fileio_close): New.
9125         (remote_hostio_readlink, remote_hostio_fstat)
9126         (remote_filesystem_is_local, remote_can_execute_reverse)
9127         (remote_supports_non_stop, remote_supports_disable_randomization)
9128         (remote_supports_multi_process, remote_supports_cond_breakpoints)
9129         (remote_supports_enable_disable_tracepoint)
9130         (remote_supports_string_tracing)
9131         (remote_can_run_breakpoint_commands, remote_trace_init)
9132         (remote_download_tracepoint, remote_can_download_tracepoint)
9133         (remote_download_trace_state_variable, remote_enable_tracepoint)
9134         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
9135         (remote_trace_start, remote_get_trace_status)
9136         (remote_get_tracepoint_status, remote_trace_stop)
9137         (remote_trace_find, remote_get_trace_state_variable_value)
9138         (remote_save_trace_data, remote_get_raw_trace_data)
9139         (remote_set_disconnected_tracing, remote_core_of_thread)
9140         (remote_set_circular_trace_buffer, remote_traceframe_info)
9141         (remote_get_min_fast_tracepoint_insn_len)
9142         (remote_set_trace_buffer_size, remote_set_trace_notes)
9143         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
9144         (remote_disable_btrace, remote_teardown_btrace)
9145         (remote_read_btrace, remote_btrace_conf)
9146         (remote_augmented_libraries_svr4_read, remote_load)
9147         (remote_pid_to_exec_file, remote_can_do_single_step)
9148         (remote_execution_direction, remote_thread_handle_to_thread_info):
9149         Refactor as methods of remote_target.
9150         (init_remote_ops, init_extended_remote_ops): Delete.
9151         (remote_can_async_p, remote_is_async_p, remote_async)
9152         (remote_thread_events, remote_upload_tracepoints)
9153         (remote_upload_trace_state_variables): Refactor as methods of
9154         remote_target.
9155         (_initialize_remote): Remove references to init_remote_ops and
9156         init_extended_remote_ops.
9157
9158         * remote-sim.c (gdbsim_target): New class.
9159         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
9160         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
9161         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
9162         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
9163         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
9164         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
9165         Refactor as methods of gdbsim_target.
9166         (gdbsim_ops): Now a gdbsim_target.
9167         (init_gdbsim_ops): Delete.
9168         (gdbsim_cntrl_c): Adjust.
9169         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
9170
9171         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
9172         (the_amd64_linux_nat_target): New.
9173         (amd64_linux_fetch_inferior_registers)
9174         (amd64_linux_store_inferior_registers): Refactor as methods of
9175         amd64_linux_nat_target.
9176         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
9177         * i386-linux-nat.c: Don't include "linux-nat.h".
9178         (i386_linux_nat_target): New class.
9179         (the_i386_linux_nat_target): New.
9180         (i386_linux_fetch_inferior_registers)
9181         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
9182         as methods of i386_linux_nat_target.
9183         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
9184         * inf-child.c (inf_child_ops): Delete.
9185         (inf_child_fetch_inferior_registers)
9186         (inf_child_store_inferior_registers): Delete.
9187         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
9188         methods of inf_child_target.
9189         (inf_child_target::supports_terminal_ours)
9190         (inf_child_target::terminal_init)
9191         (inf_child_target::terminal_inferior)
9192         (inf_child_target::terminal_ours_for_output)
9193         (inf_child_target::terminal_ours, inf_child_target::interrupt)
9194         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
9195         New.
9196         (inf_child_open, inf_child_disconnect, inf_child_close)
9197         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
9198         (inf_child_post_startup_inferior, inf_child_can_run)
9199         (inf_child_pid_to_exec_file): Refactor as methods of
9200         inf_child_target.
9201         (inf_child_follow_fork): Delete.
9202         (inf_child_target::can_create_inferior)
9203         (inf_child_target::can_attach): New.
9204         (inf_child_target::has_all_memory, inf_child_target::has_memory)
9205         (inf_child_target::has_stack, inf_child_target::has_registers)
9206         (inf_child_target::has_execution): New.
9207         (inf_child_fileio_open, inf_child_fileio_pwrite)
9208         (inf_child_fileio_pread, inf_child_fileio_fstat)
9209         (inf_child_fileio_close, inf_child_fileio_unlink)
9210         (inf_child_fileio_readlink, inf_child_use_agent)
9211         (inf_child_can_use_agent): Refactor as methods of
9212         inf_child_target.
9213         (return_zero, inf_child_target): Delete.
9214         (inf_child_target::inf_child_target): New.
9215         * inf-child.h: Include "target.h".
9216         (inf_child_target): Delete function prototype.
9217         (inf_child_target): New class.
9218         (inf_child_open_target, inf_child_mourn_inferior)
9219         (inf_child_maybe_unpush_target): Delete.
9220         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
9221         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
9222         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
9223         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
9224         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
9225         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
9226         (inf_ptrace_wait, inf_ptrace_xfer_partial)
9227         (inf_ptrace_thread_alive, inf_ptrace_files_info)
9228         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
9229         methods of inf_ptrace_target.
9230         (inf_ptrace_target): Delete function.
9231         * inf-ptrace.h: Include "inf-child.h".
9232         (inf_ptrace_target): Delete function declaration.
9233         (inf_ptrace_target): New class.
9234         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
9235         * linux-nat.c (linux_target): New.
9236         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
9237         (linux_nat_target::~linux_nat_target): New.
9238         (linux_child_post_attach, linux_child_post_startup_inferior)
9239         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
9240         (linux_child_remove_fork_catchpoint)
9241         (linux_child_insert_vfork_catchpoint)
9242         (linux_child_remove_vfork_catchpoint)
9243         (linux_child_insert_exec_catchpoint)
9244         (linux_child_remove_exec_catchpoint)
9245         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
9246         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
9247         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
9248         (linux_nat_stopped_data_address)
9249         (linux_nat_stopped_by_sw_breakpoint)
9250         (linux_nat_supports_stopped_by_sw_breakpoint)
9251         (linux_nat_stopped_by_hw_breakpoint)
9252         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
9253         (linux_nat_kill, linux_nat_mourn_inferior)
9254         (linux_nat_xfer_partial, linux_nat_thread_alive)
9255         (linux_nat_update_thread_list, linux_nat_pid_to_str)
9256         (linux_nat_thread_name, linux_child_pid_to_exec_file)
9257         (linux_child_static_tracepoint_markers_by_strid)
9258         (linux_nat_is_async_p, linux_nat_can_async_p)
9259         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
9260         (linux_nat_supports_multi_process)
9261         (linux_nat_supports_disable_randomization, linux_nat_async)
9262         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
9263         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
9264         (linux_nat_fileio_open, linux_nat_fileio_readlink)
9265         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
9266         methods of linux_nat_target.
9267         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
9268         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
9269         parameter.
9270         (check_stopped_by_watchpoint): Adjust.
9271         (linux_xfer_partial): Delete.
9272         (linux_target_install_ops, linux_target, linux_nat_add_target):
9273         Delete.
9274         (linux_nat_target::linux_nat_target): New.
9275         * linux-nat.h: Include "inf-ptrace.h".
9276         (linux_nat_target): New.
9277         (linux_target, linux_target_install_ops, linux_nat_add_target):
9278         Delete function declarations.
9279         (linux_target): Declare global.
9280         * linux-thread-db.c (thread_db_target): New.
9281         (thread_db_target::thread_db_target): New.
9282         (thread_db_ops): Delete.
9283         (the_thread_db_target): New.
9284         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
9285         (thread_db_update_thread_list, thread_db_pid_to_str)
9286         (thread_db_extra_thread_info)
9287         (thread_db_thread_handle_to_thread_info)
9288         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
9289         (thread_db_resume): Refactor as methods of thread_db_target.
9290         (init_thread_db_ops): Delete.
9291         (_initialize_thread_db): Remove reference to init_thread_db_ops.
9292         * x86-linux-nat.c: Don't include "linux-nat.h".
9293         (super_post_startup_inferior): Delete.
9294         (x86_linux_nat_target::~x86_linux_nat_target): New.
9295         (x86_linux_child_post_startup_inferior)
9296         (x86_linux_read_description, x86_linux_enable_btrace)
9297         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
9298         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
9299         methods of x86_linux_nat_target.
9300         (x86_linux_create_target): Delete.  Bits folded ...
9301         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
9302         pointer.
9303         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
9304         (x86_linux_nat_target): New class.
9305         (x86_linux_create_target): Delete.
9306         (x86_linux_add_target): Now takes a linux_nat_target pointer.
9307         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
9308         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
9309         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
9310         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
9311         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
9312         make extern.
9313         (x86_use_watchpoints): Delete.
9314         * x86-nat.h: Include "breakpoint.h" and "target.h".
9315         (x86_use_watchpoints): Delete.
9316         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
9317         (x86_stopped_by_watchpoint, x86_stopped_data_address)
9318         (x86_insert_watchpoint, x86_remove_watchpoint)
9319         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
9320         (x86_stopped_by_hw_breakpoint): New declarations.
9321         (x86_nat_target): New template class.
9322
9323         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
9324         (the_ppc_linux_nat_target): New.
9325         (ppc_linux_fetch_inferior_registers)
9326         (ppc_linux_can_use_hw_breakpoint)
9327         (ppc_linux_region_ok_for_hw_watchpoint)
9328         (ppc_linux_ranged_break_num_registers)
9329         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
9330         (ppc_linux_insert_mask_watchpoint)
9331         (ppc_linux_remove_mask_watchpoint)
9332         (ppc_linux_can_accel_watchpoint_condition)
9333         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
9334         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
9335         (ppc_linux_watchpoint_addr_within_range)
9336         (ppc_linux_masked_watch_num_registers)
9337         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
9338         (ppc_linux_read_description): Refactor as methods of
9339         ppc_linux_nat_target.
9340         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
9341
9342         * procfs.c (procfs_xfer_partial): Delete forward declaration.
9343         (procfs_target): New class.
9344         (the_procfs_target): New.
9345         (procfs_target): Delete function.
9346         (procfs_auxv_parse, procfs_attach, procfs_detach)
9347         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
9348         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
9349         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
9350         (procfs_create_inferior, procfs_update_thread_list)
9351         (procfs_thread_alive, procfs_pid_to_str)
9352         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
9353         (procfs_stopped_data_address, procfs_insert_watchpoint)
9354         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
9355         (proc_find_memory_regions, procfs_info_proc)
9356         (procfs_make_note_section): Refactor as methods of procfs_target.
9357         (_initialize_procfs): Adjust.
9358         * sol-thread.c (sol_thread_target): New class.
9359         (sol_thread_ops): Now a sol_thread_target.
9360         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
9361         (sol_thread_fetch_registers, sol_thread_store_registers)
9362         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
9363         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
9364         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
9365         (init_sol_thread_ops): Delete.
9366         (_initialize_sol_thread): Adjust.  Remove references to
9367         init_sol_thread_ops and complete_target_initialization.
9368
9369         * windows-nat.c (windows_nat_target): New class.
9370         (windows_fetch_inferior_registers)
9371         (windows_store_inferior_registers, windows_resume, windows_wait)
9372         (windows_attach, windows_detach, windows_pid_to_exec_file)
9373         (windows_files_info, windows_create_inferior)
9374         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
9375         (windows_close, windows_pid_to_str, windows_xfer_partial)
9376         (windows_get_tib_address, windows_get_ada_task_ptid)
9377         (windows_thread_name, windows_thread_alive): Refactor as
9378         windows_nat_target methods.
9379         (do_initial_windows_stuff): Adjust.
9380         (windows_target): Delete function.
9381         (_initialize_windows_nat): Adjust.
9382
9383         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
9384         (darwin_mourn_inferior, darwin_kill_inferior)
9385         (darwin_create_inferior, darwin_attach, darwin_detach)
9386         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
9387         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
9388         (darwin_supports_multi_process): Refactor as darwin_nat_target
9389         methods.
9390         (darwin_resume_to, darwin_files_info): Delete.
9391         (_initialize_darwin_inferior): Rename to ...
9392         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
9393         * darwin-nat.h: Include "inf-child.h".
9394         (darwin_nat_target): New class.
9395         (darwin_complete_target): Delete.
9396         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
9397         (darwin_target): New.
9398         (i386_darwin_fetch_inferior_registers)
9399         (i386_darwin_store_inferior_registers): Refactor as methods of
9400         darwin_nat_target.
9401         (darwin_complete_target): Delete, with ...
9402         (_initialize_i386_darwin_nat): ... bits factored out here.
9403
9404         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
9405         (the_alpha_linux_nat_target): New.
9406         (alpha_linux_register_u_offset): Refactor as
9407         alpha_linux_nat_target method.
9408         (_initialize_alpha_linux_nat): Adjust.
9409         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
9410         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9411         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
9412         methods of linux_nat_trad_target.
9413         (linux_trad_target): Delete.
9414         * linux-nat-trad.h (linux_trad_target): Delete function.
9415         (linux_nat_trad_target): New class.
9416         * mips-linux-nat.c (mips_linux_nat_target): New class.
9417         (super_fetch_registers, super_store_registers, super_close):
9418         Delete.
9419         (the_mips_linux_nat_target): New.
9420         (mips64_linux_regsets_fetch_registers)
9421         (mips64_linux_regsets_store_registers)
9422         (mips64_linux_fetch_registers, mips64_linux_store_registers)
9423         (mips_linux_register_u_offset, mips_linux_read_description)
9424         (mips_linux_can_use_hw_breakpoint)
9425         (mips_linux_stopped_by_watchpoint)
9426         (mips_linux_stopped_data_address)
9427         (mips_linux_region_ok_for_hw_watchpoint)
9428         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
9429         (mips_linux_close): Refactor as methods of mips_linux_nat.
9430         (_initialize_mips_linux_nat): Adjust to C++ification.
9431
9432         * aix-thread.c (aix_thread_target): New class.
9433         (aix_thread_ops): Now an aix_thread_target.
9434         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
9435         (aix_thread_fetch_registers, aix_thread_store_registers)
9436         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
9437         (aix_thread_thread_alive, aix_thread_pid_to_str)
9438         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
9439         Refactor as methods of aix_thread_target.
9440         (init_aix_thread_ops): Delete.
9441         (_initialize_aix_thread): Remove references to init_aix_thread_ops
9442         and complete_target_initialization.
9443         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
9444         (rs6000_nat_target): New class.
9445         (the_rs6000_nat_target): New.
9446         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
9447         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
9448         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
9449         (super_create_inferior): Delete.
9450         (_initialize_rs6000_nat): Adjust to C++ification.
9451
9452         * arm-linux-nat.c (arm_linux_nat_target): New class.
9453         (the_arm_linux_nat_target): New.
9454         (arm_linux_fetch_inferior_registers)
9455         (arm_linux_store_inferior_registers, arm_linux_read_description)
9456         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
9457         (arm_linux_remove_hw_breakpoint)
9458         (arm_linux_region_ok_for_hw_watchpoint)
9459         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
9460         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
9461         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
9462         arm_linux_nat_target.
9463         (_initialize_arm_linux_nat): Adjust to C++ification.
9464
9465         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
9466         (the_aarch64_linux_nat_target): New.
9467         (aarch64_linux_fetch_inferior_registers)
9468         (aarch64_linux_store_inferior_registers)
9469         (aarch64_linux_child_post_startup_inferior)
9470         (aarch64_linux_read_description)
9471         (aarch64_linux_can_use_hw_breakpoint)
9472         (aarch64_linux_insert_hw_breakpoint)
9473         (aarch64_linux_remove_hw_breakpoint)
9474         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
9475         (aarch64_linux_region_ok_for_hw_watchpoint)
9476         (aarch64_linux_stopped_data_address)
9477         (aarch64_linux_stopped_by_watchpoint)
9478         (aarch64_linux_watchpoint_addr_within_range)
9479         (aarch64_linux_can_do_single_step): Refactor as methods of
9480         aarch64_linux_nat_target.
9481         (super_post_startup_inferior): Delete.
9482         (_initialize_aarch64_linux_nat): Adjust to C++ification.
9483
9484         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
9485         (the_hppa_linux_nat_target): New.
9486         (hppa_linux_fetch_inferior_registers)
9487         (hppa_linux_store_inferior_registers): Refactor as methods of
9488         hppa_linux_nat_target.
9489         (_initialize_hppa_linux_nat): Adjust to C++ification.
9490
9491         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
9492         (the_ia64_linux_nat_target): New.
9493         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
9494         (ia64_linux_stopped_data_address)
9495         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
9496         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
9497         ia64_linux_nat_target methods.
9498         (super_xfer_partial): Delete.
9499         (_initialize_ia64_linux_nat): Adjust to C++ification.
9500
9501         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
9502         (the_m32r_linux_nat_target): New.
9503         (m32r_linux_fetch_inferior_registers)
9504         (m32r_linux_store_inferior_registers): Refactor as
9505         m32r_linux_nat_target methods.
9506         (_initialize_m32r_linux_nat): Adjust to C++ification.
9507
9508         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
9509         (the_m68k_linux_nat_target): New.
9510         (m68k_linux_fetch_inferior_registers)
9511         (m68k_linux_store_inferior_registers): Refactor as
9512         m68k_linux_nat_target methods.
9513         (_initialize_m68k_linux_nat): Adjust to C++ification.
9514
9515         * s390-linux-nat.c (s390_linux_nat_target): New class.
9516         (the_s390_linux_nat_target): New.
9517         (s390_linux_fetch_inferior_registers)
9518         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
9519         (s390_insert_watchpoint, s390_remove_watchpoint)
9520         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
9521         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
9522         (s390_auxv_parse, s390_read_description): Refactor as methods of
9523         s390_linux_nat_target.
9524         (_initialize_s390_nat): Adjust to C++ification.
9525
9526         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
9527         (the_sparc_linux_nat_target): New.
9528         (_initialize_sparc_linux_nat): Adjust to C++ification.
9529         * sparc-nat.c (sparc_fetch_inferior_registers)
9530         (sparc_store_inferior_registers): Remove target_ops parameter.
9531         * sparc-nat.h (sparc_fetch_inferior_registers)
9532         (sparc_store_inferior_registers): Remove target_ops parameter.
9533         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
9534         (the_sparc64_linux_nat_target): New.
9535         (_initialize_sparc64_linux_nat): Adjust to C++ification.
9536
9537         * spu-linux-nat.c (spu_linux_nat_target): New class.
9538         (the_spu_linux_nat_target): New.
9539         (spu_child_post_startup_inferior, spu_child_post_attach)
9540         (spu_child_wait, spu_fetch_inferior_registers)
9541         (spu_store_inferior_registers, spu_xfer_partial)
9542         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
9543         methods.
9544         (_initialize_spu_nat): Adjust to C++ification.
9545
9546         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
9547         (the_tilegx_linux_nat_target): New.
9548         (fetch_inferior_registers, store_inferior_registers):
9549         Refactor as methods.
9550         (_initialize_tile_linux_nat): Adjust to C++ification.
9551
9552         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
9553         (the_xtensa_linux_nat_target): New.
9554         (xtensa_linux_fetch_inferior_registers)
9555         (xtensa_linux_store_inferior_registers): Refactor as
9556         xtensa_linux_nat_target methods.
9557         (_initialize_xtensa_linux_nat): Adjust to C++ification.
9558
9559         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
9560         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
9561         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
9562         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
9563         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
9564         (fbsd_stopped_by_sw_breakpoint)
9565         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
9566         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
9567         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
9568         (fbsd_post_startup_inferior, fbsd_post_attach)
9569         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
9570         (fbsd_set_syscall_catchpoint)
9571         (super_xfer_partial, super_resume, super_wait)
9572         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
9573         (fbsd_handle_debug_trap): Remove target_ops parameter.
9574         (fbsd_nat_add_target): Delete.
9575         * fbsd-nat.h: Include "inf-ptrace.h".
9576         (fbsd_nat_add_target): Delete.
9577         (USE_SIGTRAP_SIGINFO): Define.
9578         (fbsd_nat_target): New class.
9579
9580         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
9581         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
9582         (amd64bsd_target): Delete.
9583         * amd64-bsd-nat.h: New file.
9584         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
9585         "x86-bsd-nat.h".
9586         (amd64_fbsd_nat_target): New class.
9587         (the_amd64_fbsd_nat_target): New.
9588         (amd64fbsd_read_description): Refactor as method of
9589         amd64_fbsd_nat_target.
9590         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9591         (_initialize_amd64fbsd_nat): Adjust to C++ification.
9592         * amd64-nat.h (amd64bsd_target): Delete function declaration.
9593         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
9594         (i386bsd_store_inferior_registers): Remove target_ops parameter.
9595         (i386bsd_target): Delete.
9596         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
9597         (i386bsd_fetch_inferior_registers)
9598         (i386bsd_store_inferior_registers): Declare.
9599         (i386_bsd_nat_target): New class.
9600         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
9601         (the_i386_fbsd_nat_target): New.
9602         (i386fbsd_resume, i386fbsd_read_description): Refactor as
9603         i386_fbsd_nat_target methods.
9604         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9605         (_initialize_i386fbsd_nat): Adjust to C++ification.
9606         * x86-bsd-nat.c (super_mourn_inferior): Delete.
9607         (x86bsd_mourn_inferior, x86bsd_target): Delete.
9608         (_initialize_x86_bsd_nat): Adjust to C++ification.
9609         * x86-bsd-nat.h: Include "x86-nat.h".
9610         (x86bsd_target): Delete declaration.
9611         (x86bsd_nat_target): New class.
9612
9613         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
9614         (the_aarch64_fbsd_nat_target): New.
9615         (aarch64_fbsd_fetch_inferior_registers)
9616         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
9617         aarch64_fbsd_nat_target.
9618         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
9619         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
9620         (the_alpha_bsd_nat_target): New.
9621         (alphabsd_fetch_inferior_registers)
9622         (alphabsd_store_inferior_registers): Refactor as
9623         alpha_bsd_nat_target methods.
9624         (_initialize_alphabsd_nat): Refactor as methods of
9625         alpha_bsd_nat_target.
9626         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
9627         (the_amd64_nbsd_nat_target): New.
9628         (_initialize_amd64nbsd_nat): Adjust to C++ification.
9629         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
9630         (the_amd64_obsd_nat_target): New.
9631         (_initialize_amd64obsd_nat): Adjust to C++ification.
9632         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
9633         (the_arm_fbsd_nat_target): New.
9634         (arm_fbsd_fetch_inferior_registers)
9635         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
9636         (_initialize_arm_fbsd_nat): Refactor as methods of
9637         arm_fbsd_nat_target.
9638         (_initialize_arm_fbsd_nat): Adjust to C++ification.
9639         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
9640         (the_arm_netbsd_nat_target): New.
9641         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
9642         arm_netbsd_nat_target.
9643         (_initialize_arm_netbsd_nat): Adjust to C++ification.
9644         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
9645         (the_hppa_nbsd_nat_target): New.
9646         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
9647         hppa_nbsd_nat_target methods.
9648         (_initialize_hppanbsd_nat): Adjust to C++ification.
9649         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
9650         (the_hppa_obsd_nat_target): New.
9651         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
9652         methods of hppa_obsd_nat_target.
9653         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
9654         add_target.
9655         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
9656         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
9657         add_target.
9658         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
9659         (_initialize_i386obsd_nat): Use add_target.
9660         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
9661         (the_m68k_bsd_nat_target): New.
9662         (m68kbsd_fetch_inferior_registers)
9663         (m68kbsd_store_inferior_registers): Refactor as methods of
9664         m68k_bsd_nat_target.
9665         (_initialize_m68kbsd_nat): Adjust to C++ification.
9666         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
9667         (the_mips_fbsd_nat_target): New.
9668         (mips_fbsd_fetch_inferior_registers)
9669         (mips_fbsd_store_inferior_registers): Refactor as methods of
9670         mips_fbsd_nat_target.
9671         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
9672         add_target.
9673         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
9674         (the_mips_nbsd_nat_target): New.
9675         (mipsnbsd_fetch_inferior_registers)
9676         (mipsnbsd_store_inferior_registers): Refactor as methods of
9677         mips_nbsd_nat_target.
9678         (_initialize_mipsnbsd_nat): Adjust to C++ification.
9679         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
9680         (the_mips64_obsd_nat_target): New.
9681         (mips64obsd_fetch_inferior_registers)
9682         (mips64obsd_store_inferior_registers): Refactor as methods of
9683         mips64_obsd_nat_target.
9684         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
9685         add_target.
9686         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
9687         nbsd_nat_target.
9688         * nbsd-nat.h: Include "inf-ptrace.h".
9689         (nbsd_nat_target): New class.
9690         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
9691         (obsd_wait): Refactor as methods of obsd_nat_target.
9692         (obsd_add_target): Delete.
9693         * obsd-nat.h: Include "inf-ptrace.h".
9694         (obsd_nat_target): New class.
9695         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
9696         (the_ppc_fbsd_nat_target): New.
9697         (ppcfbsd_fetch_inferior_registers)
9698         (ppcfbsd_store_inferior_registers): Refactor as methods of
9699         ppc_fbsd_nat_target.
9700         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
9701         add_target.
9702         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
9703         (the_ppc_nbsd_nat_target): New.
9704         (ppcnbsd_fetch_inferior_registers)
9705         (ppcnbsd_store_inferior_registers): Refactor as methods of
9706         ppc_nbsd_nat_target.
9707         (_initialize_ppcnbsd_nat): Adjust to C++ification.
9708         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
9709         (the_ppc_obsd_nat_target): New.
9710         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
9711         methods of ppc_obsd_nat_target.
9712         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
9713         add_target.
9714         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
9715         (the_sh_nbsd_nat_target): New.
9716         (shnbsd_fetch_inferior_registers)
9717         (shnbsd_store_inferior_registers): Refactor as methods of
9718         sh_nbsd_nat_target.
9719         (_initialize_shnbsd_nat): Adjust to C++ification.
9720         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
9721         (inf_ptrace_xfer_partial): Delete.
9722         (sparc_xfer_partial, sparc_target): Delete.
9723         * sparc-nat.h (sparc_fetch_inferior_registers)
9724         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
9725         (sparc_target): Delete function declaration.
9726         (sparc_target): New template class.
9727         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
9728         (_initialize_sparcnbsd_nat): Adjust to C++ification.
9729         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
9730         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
9731         add_target.
9732         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
9733         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
9734         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
9735         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
9736         add_target.
9737         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
9738         (the_vax_bsd_nat_target): New.
9739         (vaxbsd_fetch_inferior_registers)
9740         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
9741         methods.
9742         (_initialize_vaxbsd_nat): Adjust to C++ification.
9743
9744         * bsd-kvm.c (bsd_kvm_target): New class.
9745         (bsd_kvm_ops): Now a bsd_kvm_target.
9746         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
9747         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
9748         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
9749         bsd_kvm_target.
9750         (bsd_kvm_return_one): Delete.
9751         (bsd_kvm_add_target): Adjust to C++ification.
9752
9753         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
9754         (nto_procfs_target_procfs): New classes.
9755         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
9756         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
9757         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
9758         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
9759         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
9760         (procfs_remove_hw_breakpoint, procfs_resume)
9761         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
9762         (procfs_kill_inferior, procfs_store_registers)
9763         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
9764         as methods of nto_procfs_target.
9765         (nto_procfs_ops): Now an nto_procfs_target_procfs.
9766         (nto_native_ops): Delete.
9767         (procfs_open, procfs_native_open): Delete.
9768         (nto_native_ops): Now an nto_procfs_target_native.
9769         (init_procfs_targets): Adjust to C++ification.
9770         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
9771         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
9772         Refactor as methods of nto_procfs_target.
9773
9774         * go32-nat.c (go32_nat_target): New class.
9775         (the_go32_nat_target): New.
9776         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
9777         (go32_store_registers, go32_xfer_partial, go32_files_info)
9778         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
9779         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
9780         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
9781         (go32_pid_to_str): Refactor as methods of go32_nat_target.
9782         (go32_target): Delete.
9783         (_initialize_go32_nat): Adjust to C++ification.
9784
9785         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
9786         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
9787         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
9788         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
9789         gnu_nat_target.
9790         (gnu_target): Delete.
9791         * gnu-nat.h (gnu_target): Delete.
9792         (gnu_nat_target): New class.
9793         * i386-gnu-nat.c (gnu_base_target): New.
9794         (i386_gnu_nat_target): New class.
9795         (the_i386_gnu_nat_target): New.
9796         (_initialize_i386gnu_nat): Adjust to C++ification.
9797
9798 2018-05-02  Pedro Alves  <palves@redhat.com>
9799
9800         * bfd-target.c (target_bfd_xclose): Rename to ...
9801         (target_bfd_close): ... this.
9802         (target_bfd_reopen): Adjust.
9803         * target.c (target_close): Remove references to to_xclose.
9804         * target.h (target_ops::to_xclose): Delete.
9805         (target_ops::to_close): Update comments.
9806
9807 2018-05-02  Pedro Alves  <palves@redhat.com>
9808
9809         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
9810         "linux-nat.h".
9811         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
9812         * inf-ptrace.c (inf_ptrace_register_u_offset)
9813         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9814         (inf_ptrace_store_register, inf_ptrace_store_registers)
9815         (inf_ptrace_trad_target): Move to ...
9816         * linux-nat-trad.c: ... this new file.
9817         * linux-nat-trad.h: New file.
9818         * linux-nat.c (linux_target_install_ops): Make extern.
9819         (linux_trad_target): Delete.
9820         * linux-nat.h (linux_trad_target): Delete declaration.
9821         (linux_target_install_ops): Declare.
9822         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
9823         "linux-nat.h".
9824
9825 2018-05-02  Pedro Alves  <palves@redhat.com>
9826
9827         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
9828         procfs_target/add_target here.
9829         * procfs.c (procfs_target): Make static.
9830         (_initialize_procfs): Call add_target here.
9831         * procfs.h (struct target_ops): Remove forward declaration.
9832         (procfs_target): Remove declaration.
9833         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
9834
9835 2018-05-02  Pedro Alves  <palves@redhat.com>
9836
9837         * procfs.c (procfs_stopped_by_watchpoint)
9838         (procfs_insert_watchpoint, procfs_remove_watchpoint)
9839         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
9840         Forward declare.
9841         (procfs_use_watchpoints): Delete, move contents...
9842         (procfs_target): ... here.
9843         * procfs.h (procfs_use_watchpoints): Delete declaration.
9844         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
9845         procfs_use_watchpoints.
9846         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
9847         procfs_use_watchpoints.
9848
9849 2018-05-02  Tom Tromey  <tom@tromey.com>
9850
9851         PR python/20084:
9852         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
9853         and var_zuinteger_unlimited.
9854         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
9855         and PARAM_ZUINTEGER_UNLIMITED.
9856         (set_parameter_value): Handle var_zuinteger and
9857         var_zuinteger_unlimited.
9858         (add_setshow_generic): Likewise.
9859         (parmpy_init): Likewise.
9860
9861 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
9862
9863         PR rust/23124
9864         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
9865         pointer is not null before dereferencing it.
9866
9867 2018-04-30  Tom Tromey  <tom@tromey.com>
9868
9869         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
9870         is_mi_like_p.
9871
9872 2018-04-30  Tom Tromey  <tom@tromey.com>
9873
9874         * breakpoint.c (mention): Remove use of is_mi_like_p.
9875         (print_mention_ranged_breakpoint): Likewise.
9876         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
9877         of is_mi_like_p.
9878
9879 2018-04-30  Tom Tromey  <tom@tromey.com>
9880
9881         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
9882
9883 2018-04-30  Tom Tromey  <tom@tromey.com>
9884
9885         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
9886         (info_spu_event_command): Remove some uses of is_mi_like_p.
9887
9888 2018-04-30  Tom Tromey  <tom@tromey.com>
9889
9890         * python/py-framefilter.c (py_print_single_arg)
9891         (enumerate_locals, py_print_args, py_print_frame): Remove some
9892         uses of is_mi_like_p.
9893
9894 2018-04-30  Tom Tromey  <tom@tromey.com>
9895
9896         * ui-out.c: Update.
9897         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
9898         * ui-out.h (ui_out::is_mi_like_p): Now const.
9899         (ui_out::do_is_mi_like_p): Now const.
9900         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
9901
9902 2018-04-30  Tom Tromey  <tom@tromey.com>
9903
9904         * varobj.c (varobj_set_visualizer): Use new_reference.
9905         * python/python.c (gdbpy_decode_line): Use new_reference.
9906         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
9907         new_reference.
9908
9909 2018-04-30  Tom Tromey  <tom@tromey.com>
9910
9911         * varobj.c (install_new_value): Use new_reference.
9912         * value.h (value_incref): Return void.  Swap intro comment with
9913         value_decref.
9914         * value.c (set_value_parent): Use new_reference.
9915         (value_incref): Return void.  Update intro comment.
9916         (release_value): Use new_reference.
9917         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
9918
9919 2018-04-30  Tom Tromey  <tom@tromey.com>
9920
9921         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
9922         * gdb_bfd.h (new_bfd_ref): Remove.
9923         (gdb_bfd_open): Update comment.
9924         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
9925         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
9926         (gdb_bfd_fdopenr): Use new_reference.
9927         * exec.c (exec_file_attach): Use new_reference.
9928
9929 2018-04-30  Tom Tromey  <tom@tromey.com>
9930
9931         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
9932         method.
9933
9934 2018-04-30  Tom Tromey  <tom@tromey.com>
9935
9936         * jit.c (jit_read_code_entry): Use type_align.
9937         * i386-tdep.c (i386_gdbarch_init): Don't call
9938         set_gdbarch_long_long_align_bit.
9939         * gdbarch.sh: Remove long_long_align_bit.
9940         * gdbarch.c, gdbarch.h: Rebuild.
9941         * arc-tdep.c (arc_type_align): New function.
9942         (arc_gdbarch_init): Use arc_type_align.  Don't call
9943         set_gdbarch_long_long_align_bit.
9944
9945 2018-04-30  Tom Tromey  <tom@tromey.com>
9946
9947         * rust-lang.c (rust_type_alignment): Remove.
9948         (rust_composite_type): Use type_align.
9949
9950 2018-04-30  Tom Tromey  <tom@tromey.com>
9951
9952         * NEWS: Mention Type.align.
9953         * python/py-type.c (typy_get_alignof): New function.
9954         (type_object_getset): Add "alignof".
9955
9956 2018-04-30  Tom Tromey  <tom@tromey.com>
9957
9958         PR exp/17095:
9959         * NEWS: Update.
9960         * std-operator.def (UNOP_ALIGNOF): New operator.
9961         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
9962         New.
9963         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
9964         * c-lang.c (c_op_print_tab): Add alignof.
9965         * c-exp.y (ALIGNOF): New token.
9966         (exp): Add "ALIGNOF" production.
9967         (ident_tokens): Add _Alignof and alignof.
9968
9969 2018-04-30  Tom Tromey  <tom@tromey.com>
9970
9971         * i386-tdep.c (i386_type_align): New function.
9972         (i386_gdbarch_init): Update.
9973         * gdbarch.sh (type_align): New method.
9974         * gdbarch.c, gdbarch.h: Rebuild.
9975         * arch-utils.h (default_type_align): Declare.
9976         * arch-utils.c (default_type_align): New function.
9977         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
9978         (struct type) <align_log2>: New field.
9979         <instance_flags>: Now a bitfield.
9980         (TYPE_RAW_ALIGN): New macro.
9981         (type_align, type_raw_align, set_type_align): Declare.
9982         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
9983         functions.
9984         * dwarf2read.c (quirk_rust_enum): Set type alignment.
9985         (get_alignment, maybe_set_alignment): New functions.
9986         (read_structure_type, read_enumeration_type, read_array_type)
9987         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
9988         (read_subrange_type, read_base_type): Set type alignment.
9989
9990 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
9991
9992         * dwarf2read.c (read_index_from_section): Use bool.
9993
9994 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
9995
9996         PR gdb/22950
9997         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
9998         with #ifdef.
9999
10000 2018-04-29  John Reiser  <jreiser@BitWagon.com>
10001
10002         PR build/22873
10003         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
10004         last step, and do it atomically.
10005
10006 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
10007
10008         * compile/compile-c-types.c (convert_int, convert_float):
10009         Update for C FE v1.
10010
10011 2018-04-27  Tom Tromey  <tom@tromey.com>
10012
10013         PR rust/22545:
10014         * rust-lang.c (rust_inclusive_range_type_p): New function.
10015         (rust_range): Handle inclusive ranges.
10016         (rust_compute_range): Likewise.
10017         * rust-exp.y (struct rust_op) <inclusive>: New field.
10018         (DOTDOTEQ): New constant.
10019         (range_expr): Add "..=" productions.
10020         (operator_tokens): Add "..=" token.
10021         (ast_range): Add "inclusive" parameter.
10022         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
10023         ranges.
10024         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
10025         bounds values.
10026         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
10027         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
10028         Update comments.
10029         * expprint.c (print_subexp_standard): Handle new bounds values.
10030         (dump_subexp_body_standard): Likewise.
10031
10032 2018-04-27  Tom Tromey  <tom@tromey.com>
10033
10034         * configure: Rebuild.
10035         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
10036         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
10037         "OVERRIDE".
10038         (class symbol_needs_eval_context): Likewise.
10039         * dwarf2read.c (mock_mapped_index::symbol_name_count)
10040         (mock_mapped_index::symbol_name_at): Use "override".  Remove
10041         "virtual".
10042         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
10043         "override".
10044         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
10045         * aarch64-tdep.c (instruction_reader::read): Use "override".
10046         (instruction_reader_test::read): Likewise.
10047         * arm-tdep.c (instruction_reader::read): Use "override".
10048         (instruction_reader_thumb::read): Likewise.
10049
10050 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
10051
10052         PR remote/9665
10053         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
10054         instead of remote_send.
10055         (remote_send): Remove.
10056
10057 2018-04-26  Pedro Alves  <palves@redhat.com>
10058
10059         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
10060         find_function_start_sal instead of find_pc_line.
10061
10062 2018-04-26  Pedro Alves  <palves@redhat.com>
10063
10064         * breakpoint.c (set_breakpoint_location_function): Handle
10065         mst_data_gnu_ifunc.
10066         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
10067         * elfread.c (elf_symtab_read): Give data symbols with
10068         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
10069         (elf_rel_plt_read): Update comment.
10070         * linespec.c (convert_linespec_to_sals): Handle
10071         mst_data_gnu_ifunc.
10072         (minsym_found): Handle mst_data_gnu_ifunc.
10073         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
10074         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
10075         * parse.c (find_minsym_type_and_address): Handle
10076         mst_data_gnu_ifunc.
10077         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
10078         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
10079         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
10080         comment.
10081         <mst_data_gnu_ifunc>: New enumerator.
10082
10083 2018-04-26  Pedro Alves  <palves@redhat.com>
10084
10085         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
10086         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
10087         'want_trampoline' parameter by a lookup_msym_prefer parameter.
10088         Handle it.
10089         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
10090         (lookup_minimal_symbol_by_pc): Adjust.
10091         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
10092         (lookup_solib_trampoline_symbol_by_pc): Adjust.
10093         * minsyms.h (lookup_msym_prefer): New enum.
10094         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10095         parameter by a lookup_msym_prefer parameter.
10096
10097 2018-04-26  Pedro Alves  <palves@redhat.com>
10098
10099         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
10100         ends in "@plt" instead of looking at the symbol's section.
10101
10102 2018-04-26  Pedro Alves  <palves@redhat.com>
10103
10104         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
10105         all references.
10106         (find_pc_partial_function_gnu_ifunc): Rename to ...
10107         (find_pc_partial_function): ... this, and remove references to
10108         'is_gnu_ifunc_p'.
10109         (find_pc_partial_function): Delete old implementation.
10110         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
10111
10112 2018-04-26  Pedro Alves  <palves@redhat.com>
10113
10114         * linespec.c (struct bound_minimal_symbol_search_key): New.
10115         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
10116         skip first line if we found a GNU ifunc minimal symbol by name.
10117         (compare_msymbols): Change parameters to work with a destructured
10118         lhs minsym.
10119         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
10120         functions.
10121
10122 2018-04-26  Pedro Alves  <palves@redhat.com>
10123
10124         * breakpoint.c (set_breakpoint_location_function): Don't resolve
10125         ifunc targets here.  Instead, if we have an ifunc minsym, use its
10126         address/name.
10127         (add_location_to_breakpoint): Store the minsym and the objfile in
10128         the breakpoint location.
10129         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
10130         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
10131         Record the minsym in the sal.
10132         * symtab.h (symtab_and_line) <msymbol>: New field.
10133
10134 2018-04-26  Pedro Alves  <palves@redhat.com>
10135
10136         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
10137         unless we actually resolved the ifunc.
10138
10139 2018-04-26  Pedro Alves  <palves@redhat.com>
10140
10141         * c-exp.y (variable production): Prefer ifunc minsyms over
10142         regular function symbols.
10143         * symtab.c (find_gnu_ifunc): New function.
10144         * minsyms.h (lookup_msym_prefer): New enum.
10145         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10146         parameter by a lookup_msym_prefer parameter.
10147         * symtab.h (find_gnu_ifunc): New declaration.
10148
10149 2018-04-26  Pedro Alves  <palves@redhat.com>
10150
10151         * blockframe.c (find_gnu_ifunc_target_type): New function.
10152         (find_function_type): New.
10153         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
10154         return a value with a memory address.
10155         (eval_call): For calls to GNU ifunc functions, try to find the
10156         type of the target function from the type that the resolver
10157         returns.
10158         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
10159         symbols.
10160         * infcall.c (find_function_return_type): Delete.
10161         (find_function_addr): Add 'function_type' parameter.  For calls to
10162         GNU ifunc functions, try to find the type of the target function
10163         from the type that the resolver returns, and return it via
10164         FUNCTION_TYPE.
10165         (call_function_by_hand_dummy): Adjust to use the function type
10166         returned by find_function_addr.
10167         (find_function_addr): Add 'function_type' parameter and move
10168         description here.
10169         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
10170         declarations.
10171
10172 2018-04-26  Pedro Alves  <palves@redhat.com>
10173
10174         * c-exp.y (variable production): Skip finding an alias for ifunc
10175         symbols.
10176
10177 2018-04-26  Pedro Alves  <palves@redhat.com>
10178
10179         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
10180
10181 2018-04-25  Pedro Alves  <palves@redhat.com>
10182
10183         * infcmd.c (kill_command): Print the pid as string, not the whole
10184         thread's ptid.  Add comment.  s/has been killed/killed/ in output
10185         message.
10186         * remote.c (remote_detach_1): Print the pid as string, not the
10187         whole thread's ptid.
10188
10189 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
10190             Sergio Durigan Junior  <sergiodj@redhat.com>
10191             Pedro Alves  <palves@redhat.com>
10192
10193         * infcmd.c (kill_command): Print message when inferior has
10194         been killed.
10195         * inferior.c (print_inferior_events): Remove 'static'.  Set as
10196         '1'.
10197         (add_inferior): Improve message printed when
10198         'print_inferior_events' is on.
10199         (exit_inferior): Remove message printed when
10200         'print_inferior_events' is on.
10201         (detach_inferior): Improve message printed when
10202         'print_inferior_events' is on.
10203         (initialize_inferiors): Use 'add_inferior_silent' to set
10204         'current_inferior_'.
10205         * inferior.h (print_inferior_events): Declare here as
10206         'extern'.
10207         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
10208         '[Detaching...]' messages when 'print_inferior_events' is on.
10209         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
10210         as prefix/suffix for messages.  Remove periods.  Fix erroneous
10211         'Detaching after fork from child...', replace it by '... from
10212         parent...'.
10213         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
10214         prefix/suffix when printing 'Detaching...' messages.  Print
10215         them when 'print_inferior_events' is on.
10216         * remote.c (remote_detach_1): Print message when detaching
10217         from inferior and '!is_fork_parent'.
10218
10219 2018-04-24  Tom Tromey  <tom@tromey.com>
10220
10221         * cli-out.h: Reindent.
10222
10223 2018-04-24  Tom Tromey  <tom@tromey.com>
10224
10225         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
10226         (cli_ui_out::do_field_string): Use fputs_filtered.
10227         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
10228
10229 2018-04-23  Tom Tromey  <tom@tromey.com>
10230
10231         * guile/scm-frame.c (gdbscm_frame_read_var): Use
10232         gdb::unique_xmalloc_ptr.
10233
10234 2018-04-23  Tom Tromey  <tom@tromey.com>
10235
10236         * configure: Rebuild.
10237
10238 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
10239
10240         PR gdb/23095
10241         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
10242         prepare_for_testing.  Set normal_bp to r_debug_state if target
10243         is bsd.
10244
10245 2018-04-21  Pedro Alves  <palves@redhat.com>
10246             Rajendra SY  <rajendra.sy@gmail.com>
10247
10248         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
10249         * remote.c (extended_remote_attach): In all-stop mode, mark the
10250         thread as executing.
10251
10252 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10253
10254         * thread.c (thread_apply_all_command): Fix comment.
10255         (thread_command): Fix comment.
10256
10257 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
10258
10259         * common/tdesc.h (tdesc_create_feature): Remove xml filename
10260         parameter.
10261         * features/aarch64-core.c (create_feature_aarch64_core):
10262         Regenerate.
10263         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
10264         Likewise.
10265         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
10266         Likewise.
10267         * features/i386/32bit-avx512.c
10268         (create_feature_i386_32bit_avx512): Likewise.
10269         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
10270         Likewise.
10271         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
10272         Likewise.
10273         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
10274         Likewise.
10275         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
10276         Likewise.
10277         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
10278         Likewise.
10279         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
10280         Likewise.
10281         * features/i386/64bit-avx512.c
10282         (create_feature_i386_64bit_avx512): Likewise.
10283         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
10284         Likewise.
10285         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
10286         Likewise.
10287         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
10288         Likewise.
10289         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
10290         Likewise.
10291         * features/i386/64bit-segments.c
10292         (create_feature_i386_64bit_segments): Likewise.
10293         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
10294         Likewise.
10295         * features/i386/x32-core.c
10296         (create_feature_i386_x32_core): Likewise.
10297         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
10298         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
10299         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
10300         * target-descriptions.c: In generated code, don't pass xml
10301         filename.
10302
10303 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10304
10305         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
10306         (print_xml_feature::visit_post): Likewise.
10307         (print_xml_feature::visit): Likewise.
10308         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
10309         (print_xml_feature): Add new class.
10310         * regformats/regdat.sh: Null xmltarget on feature targets.
10311         * target-descriptions.c (struct target_desc): Add xmltarget.
10312         (maintenance_check_tdesc_xml_convert): Add unittest function.
10313         (tdesc_get_features_xml): Add function to get xml.
10314         (maintenance_check_xml_descriptions): Test xml generation.
10315         * xml-tdesc.c (string_read_description_xml): Add function.
10316         * xml-tdesc.h (string_read_description_xml): Add declaration.
10317
10318 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10319
10320         * features/Makefile: Add feature marker to targets with new style
10321         target descriptions.
10322         * regformats/aarch64.dat: Regenerate.
10323         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
10324         * regformats/i386/amd64-avx-linux.dat: Likewise.
10325         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
10326         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
10327         * regformats/i386/amd64-linux.dat: Likewise.
10328         * regformats/i386/amd64-mpx-linux.dat: Likewise.
10329         * regformats/i386/amd64.dat: Likewise.
10330         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
10331         * regformats/i386/i386-avx-linux.dat: Likewise.
10332         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
10333         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
10334         * regformats/i386/i386-linux.dat: Likewise.
10335         * regformats/i386/i386-mmx-linux.dat: Likewise.
10336         * regformats/i386/i386-mpx-linux.dat: Likewise.
10337         * regformats/i386/i386.dat: Likewise.
10338         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
10339         * regformats/i386/x32-avx-linux.dat: Likewise.
10340         * regformats/i386/x32-linux.dat: Likewise.
10341         * regformats/tic6x-c62x-linux.dat: Likewise.
10342         * regformats/tic6x-c64x-linux.dat: Likewise.
10343         * regformats/tic6x-c64xp-linux.dat: Likewise.
10344         * regformats/regdat.sh: Parse feature marker.
10345
10346 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10347
10348         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
10349         (tdesc_osabi_name): Likewise.
10350         * target-descriptions.c (tdesc_architecture_name): Add new
10351         function.
10352         (tdesc_osabi_name): Likewise.
10353
10354 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10355
10356         * common/tdesc.c (tdesc_predefined_type): Move to here.
10357         (tdesc_named_type): Likewise.
10358         (tdesc_create_vector): Likewise.
10359         (tdesc_create_struct): Likewise.
10360         (tdesc_set_struct_size): Likewise.
10361         (tdesc_create_union): Likewise.
10362         (tdesc_create_flags): Likewise.
10363         (tdesc_create_enum): Likewise.
10364         (tdesc_add_field): Likewise.
10365         (tdesc_add_typed_bitfield): Likewise.
10366         (tdesc_add_bitfield): Likewise.
10367         (tdesc_add_flag): Likewise.
10368         (tdesc_add_enum_value): Likewise.
10369         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
10370         (struct tdesc_type_vector): Likewise.
10371         (struct tdesc_type_field): Likewise.
10372         (struct tdesc_type_with_fields): Likewise.
10373         (tdesc_create_enum): Add declaration.
10374         (tdesc_add_typed_bitfield): Likewise.
10375         (tdesc_add_enum_value): Likewise.
10376         * target-descriptions.c (tdesc_type_field): Move from here.
10377         (tdesc_type_builtin): Likewise.
10378         (tdesc_type_vector): Likewise.
10379         (tdesc_type_with_fields): Likewise.
10380         (tdesc_predefined_types): Likewise.
10381         (tdesc_named_type): Likewise.
10382         (tdesc_create_vector): Likewise.
10383         (tdesc_create_struct): Likewise.
10384         (tdesc_set_struct_size): Likewise.
10385         (tdesc_create_union): Likewise.
10386         (tdesc_create_flags): Likewise.
10387         (tdesc_create_enum): Likewise.
10388         (tdesc_add_field): Likewise.
10389         (tdesc_add_typed_bitfield): Likewise.
10390         (tdesc_add_bitfield): Likewise.
10391         (tdesc_add_flag): Likewise.
10392         (tdesc_add_enum_value): Likewise.
10393         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
10394         (tdesc_add_typed_bitfield): Likewise.
10395         (tdesc_add_enum_value): Likewise.
10396
10397 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10398
10399         * common/tdesc.c (tdesc_feature::accept): Move to here.
10400         (tdesc_feature::operator==): Likewise.
10401         (tdesc_create_reg): Likewise.
10402         * common/tdesc.h (tdesc_type_kind): Likewise.
10403         (struct tdesc_type): Likewise.
10404         (struct tdesc_feature): Likewise.
10405         * regformats/regdat.sh: Create a feature.
10406         * target-descriptions.c (tdesc_type_kind): Move from here.
10407         (tdesc_type): Likewise.
10408         (tdesc_type_up): Likewise.
10409         (tdesc_feature): Likewise.
10410         (tdesc_create_reg): Likewise.
10411
10412 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10413
10414         * Makefile.in: Add arch/tdesc.c
10415         * common/tdesc.c: New file.
10416         * common/tdesc.h (tdesc_element_visitor): Move to here.
10417         (tdesc_element): Likewise.
10418         (tdesc_reg): Likewise.
10419         (tdesc_reg_up): Likewise.
10420         * regformats/regdef.h (reg): Add offset to constructors.
10421         * target-descriptions.c (tdesc_element_visitor): Move from here.
10422         (tdesc_element): Likewise.
10423         (tdesc_reg): Likewise.
10424         (tdesc_reg_up): Likewise.
10425
10426 2018-04-17  Tom Tromey  <tom@tromey.com>
10427
10428         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
10429         discriminant field.
10430
10431 2018-04-17  Tom Tromey  <tom@tromey.com>
10432
10433         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
10434
10435 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10436
10437         * symtab.c (print_symbol_info): Skip printing filename and line
10438         number when `last' is NULL.
10439         (symtab_symbol_info): Use empty string instead of NULL for first
10440         invocation of print_symbol_info.
10441         (rbreak_command): Pass NULL to `last' parameter of
10442         print_symbol_info.
10443
10444 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
10445
10446         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
10447         instead of nullptr.
10448
10449 2018-04-16  Pedro Alves  <palves@redhat.com>
10450
10451         * MAINTAINERS (sh): Remove.
10452         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
10453         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
10454         (ALLDEPFILES): Remove sh64-tdep.c.
10455         * NEWS: Mentions that support for SH-5/SH64 is removed.
10456         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
10457         (sh*-*-openbsd*): Ditto.
10458         (sh64-*-elf*): Remove.
10459         (sh*): Remove.
10460         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
10461         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
10462         * sh-tdep.c: No longer include "sh64-tdep.h".
10463         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
10464         * sh64-tdep.c, sh64-tdep.h: Remove files.
10465
10466 2018-04-16  Pedro Alves  <palves@redhat.com>
10467
10468         * MAINTAINERS: Remove m88k.
10469         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
10470         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
10471         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
10472         * NEWS: Mention that support for m88k was removed.
10473         * configure.host (m88*-*-*): Remove support.
10474         * configure.nat (m88k-*-*): Remove support.
10475         * configure.tgt (m88*-*-openbsd*): Remove.
10476         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
10477
10478 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
10479
10480         * configure.tgt (x86_tobjs): New variable.
10481         (amd64_tobjs, i386_tobjs): Use it.
10482
10483 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10484
10485         * symtab.c (print_symbol_info): Precede the symbol definition by
10486         the line number when available.
10487         * NEWS: Advertise this enhancement.
10488
10489 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10490
10491         * NEWS (New options): announce set/show record btrace cpu.
10492         * btrace.c: Include record-btrace.h.
10493         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
10494         the vendor is unknown.
10495         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
10496         Maybe overwrite the btrace configuration's cpu.
10497         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
10498         (btrace_fetch): Add cpu parameter.  Update callers.
10499         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
10500         Maybe overwrite the btrace configuration's cpu.  Skip enabling
10501         errata workarounds if the vendor is unknown.
10502         * python/py-record-btrace.c: Include record-btrace.h.
10503         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
10504         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
10505         * record-btrace.c (record_btrace_cpu_state_kind): New.
10506         (record_btrace_cpu): New.
10507         (set_record_btrace_cpu_cmdlist): New.
10508         (record_btrace_get_cpu): New.
10509         (require_btrace_thread, record_btrace_info)
10510         (record_btrace_resume_thread): Call record_btrace_get_cpu.
10511         (cmd_set_record_btrace_cpu_none): New.
10512         (cmd_set_record_btrace_cpu_auto): New.
10513         (cmd_set_record_btrace_cpu): New.
10514         (cmd_show_record_btrace_cpu): New.
10515         (_initialize_record_btrace): Initialize set/show record btrace cpu
10516         commands.
10517         * record-btrace.h (record_btrace_get_cpu): New.
10518
10519 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10520
10521         * record.c (set_record_command): Fix typo in message.
10522
10523 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10524
10525         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
10526
10527 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10528
10529         * infrun.c (process_event_stop_test): Call
10530         gdbarch_in_indirect_branch_thunk.
10531         * gdbarch.sh (in_indirect_branch_thunk): New.
10532         * gdbarch.c: Regenerated.
10533         * gdbarch.h: Regenerated.
10534         * x86-tdep.h: New.
10535         * x86-tdep.c: New.
10536         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
10537         (HFILES_NO_SRCDIR): Add x86-tdep.h.
10538         (ALLDEPFILES): Add x86-tdep.c.
10539         * arch-utils.h (default_in_indirect_branch_thunk): New.
10540         * arch-utils.c (default_in_indirect_branch_thunk): New.
10541         * i386-tdep: Include x86-tdep.h.
10542         (i386_in_indirect_branch_thunk): New.
10543         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
10544         function.
10545         * amd64-tdep: Include x86-tdep.h.
10546         (amd64_in_indirect_branch_thunk): New.
10547         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
10548
10549 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
10550
10551         PR gdb/23053
10552         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
10553         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
10554         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
10555         regression.
10556
10557 2018-04-12  Tom Tromey  <tom@tromey.com>
10558
10559         * rust-lang.c (rust_print_struct_def): Remove univariant code.
10560         (rust_evaluate_subexp): Likewise.
10561
10562 2018-04-12  Pedro Alves  <palves@redhat.com>
10563
10564         * procfs.c (procfs_detach): Make forward declaration's prototype
10565         match definition's protototype.
10566         (proc_get_LDT_entry): Remove stale do_cleanups call.
10567
10568 2018-04-12  Pedro Alves  <palves@redhat.com>
10569
10570         * target.h (target_ops::to_has_exited): Delete.
10571         (target_has_exited): Delete.
10572         * target-delegates.c: Regenerate.
10573
10574 2018-04-11  Pedro Alves  <palves@redhat.com>
10575
10576         * target.c (fileio_fh_t::t): Add comment.
10577         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10578         (target_fileio_close): Handle a NULL target.
10579         (invalidate_fileio_fh): New.
10580         (target_close): Call it.
10581         * remote.c (remote_hostio_send_command): No longer check whether
10582         remote_desc is open.
10583
10584 2018-04-11  Pedro Alves  <palves@redhat.com>
10585
10586         * target.c (fileio_fh_t): Make it a named struct instead of a
10587         typedef.
10588         (fileio_fh_t::is_closed): New method.
10589         (DEF_VEC_O (fileio_fh_t)): Remove.
10590         (fileio_fhandles): Now a std::vector.
10591         (is_closed_fileio_fh): Delete.
10592         (acquire_fileio_fd): Adjust.  Rename parameters.
10593         (release_fileio_fd): Adjust.
10594         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
10595         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10596         (target_fileio_close): Adjust.
10597
10598 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
10599
10600         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
10601         index.
10602
10603 2018-04-10  Pedro Alves  <palves@redhat.com>
10604
10605         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
10606         (scoped_finish_thread_state): New class.
10607         * infcmd.c (run_command_1): Use it instead of finish_thread_state
10608         cleanup.
10609         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
10610         (fetch_inferior_event, normal_stop): Likewise.
10611         * thread.c (finish_thread_state_cleanup): Delete.
10612
10613 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10614             Pedro Alves  <palves@redhat.com>
10615
10616         * value.c: Include "selftest.h" and "common/array-view.h".
10617         (struct range) <operator ==>: New.
10618         (test_ranges_contain): New.
10619         (check_ranges_vector): New.
10620         (test_insert_into_bit_range_vector): New.
10621         (_initialize_values): Register selftests.
10622         * common/array-view.h (operator==, operator!=): New.
10623
10624 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10625
10626         * common/gdb_vecs.h (unordered_remove): Add overload that takes
10627         an iterator.
10628         * inline-frame.c: Include <algorithm>.
10629         (struct inline_state): Add constructor.
10630         (inline_state_s): Remove.
10631         (DEF_VEC_O(inline_state_s)): Remove.
10632         (inline_states): Change type to std::vector.
10633         (find_inline_frame_state): Adjust to std::vector.
10634         (allocate_inline_frame_state): Remove.
10635         (clear_inline_frame_state): Adjust to std::vector.
10636         (skip_inline_frames): Adjust to std::vector.
10637
10638 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10639
10640         * tracepoint.h (struct trace_state_variable): Add constructor.
10641         <name>: Change type to std::string.
10642         * tracepoint.c (tsv_s): Remove.
10643         (DEF_VEC_O(tsv_s)): Remove.
10644         (tvariables): Change to std::vector.
10645         (create_trace_state_variable): Adjust to std::vector.
10646         (find_trace_state_variable): Likewise.
10647         (find_trace_state_variable_by_number): Likewise.
10648         (delete_trace_state_variable): Likewise.
10649         (trace_variable_command): Adjust to std::string.
10650         (delete_trace_variable_command): Likewise.
10651         (tvariables_info_1): Adjust to std::vector.
10652         (save_trace_state_variables): Likewise.
10653         (start_tracing): Likewise.
10654         (merge_uploaded_trace_state_variables): Adjust to std::vector
10655         and std::string.
10656         * target.h (struct target_ops)
10657         <to_download_trace_state_variable>: Pass reference to
10658         trace_state_variable.
10659         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
10660         * target-delegates.c: Re-generate.
10661         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
10662         (mi_tsv_deleted): Likewise.
10663         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
10664         * remote.c (remote_download_trace_state_variable): Change
10665         pointer to reference and adjust.
10666         * make-target-delegates (parse_argtypes): Handle references.
10667         (write_function_header): Likewise.
10668         (munge_type): Likewise.
10669
10670 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10671
10672         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10673         string_view-selftests.c.
10674         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
10675         testsuite.
10676         * unittests/basic_string_view/cons/char/1.cc: Likewise.
10677         * unittests/basic_string_view/cons/char/2.cc: Likewise.
10678         * unittests/basic_string_view/cons/char/3.cc: Likewise.
10679         * unittests/basic_string_view/element_access/char/1.cc:
10680         Likewise.
10681         * unittests/basic_string_view/element_access/char/empty.cc:
10682         Likewise.
10683         * unittests/basic_string_view/element_access/char/front_back.cc:
10684         Likewise.
10685         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
10686         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
10687         Likewise.
10688         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
10689         Likewise.
10690         * unittests/basic_string_view/modifiers/swap/char/1.cc:
10691         Likewise.
10692         * unittests/basic_string_view/operations/compare/char/1.cc:
10693         Likewise.
10694         * unittests/basic_string_view/operations/compare/char/13650.cc:
10695         Likewise.
10696         * unittests/basic_string_view/operations/copy/char/1.cc:
10697         Likewise.
10698         * unittests/basic_string_view/operations/data/char/1.cc:
10699         Likewise.
10700         * unittests/basic_string_view/operations/find/char/1.cc:
10701         Likewise.
10702         * unittests/basic_string_view/operations/find/char/2.cc:
10703         Likewise.
10704         * unittests/basic_string_view/operations/find/char/3.cc:
10705         Likewise.
10706         * unittests/basic_string_view/operations/find/char/4.cc:
10707         Likewise.
10708         * unittests/basic_string_view/operations/rfind/char/1.cc:
10709         Likewise.
10710         * unittests/basic_string_view/operations/rfind/char/2.cc:
10711         Likewise.
10712         * unittests/basic_string_view/operations/rfind/char/3.cc:
10713         Likewise.
10714         * unittests/basic_string_view/operations/substr/char/1.cc:
10715         Likewise.
10716         * unittests/basic_string_view/operators/char/2.cc: Likewise.
10717         * unittests/string_view-selftests.c: New file.
10718
10719 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10720
10721         * unittests/basic_string_view/capacity/1.cc: New file.
10722         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
10723         * unittests/basic_string_view/cons/char/1.cc: New file.
10724         * unittests/basic_string_view/cons/char/2.cc: New file.
10725         * unittests/basic_string_view/cons/char/3.cc: New file.
10726         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
10727         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
10728         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
10729         * unittests/basic_string_view/element_access/char/1.cc: New file.
10730         * unittests/basic_string_view/element_access/char/2.cc: New file.
10731         * unittests/basic_string_view/element_access/char/empty.cc: New file.
10732         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
10733         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
10734         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
10735         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
10736         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
10737         * unittests/basic_string_view/include.cc: New file.
10738         * unittests/basic_string_view/inserters/char/1.cc: New file.
10739         * unittests/basic_string_view/inserters/char/2.cc: New file.
10740         * unittests/basic_string_view/inserters/char/3.cc: New file.
10741         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
10742         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
10743         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
10744         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
10745         * unittests/basic_string_view/literals/types.cc: New file.
10746         * unittests/basic_string_view/literals/values.cc: New file.
10747         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
10748         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
10749         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
10750         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
10751         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
10752         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
10753         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
10754         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
10755         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
10756         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
10757         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
10758         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
10759         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
10760         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
10761         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
10762         * unittests/basic_string_view/operations/data/char/1.cc: New file.
10763         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
10764         * unittests/basic_string_view/operations/find/char/1.cc: New file.
10765         * unittests/basic_string_view/operations/find/char/2.cc: New file.
10766         * unittests/basic_string_view/operations/find/char/3.cc: New file.
10767         * unittests/basic_string_view/operations/find/char/4.cc: New file.
10768         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
10769         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
10770         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
10771         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
10772         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
10773         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
10774         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
10775         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
10776         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
10777         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
10778         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
10779         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
10780         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
10781         * unittests/basic_string_view/operators/char/2.cc: New file.
10782         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
10783         * unittests/basic_string_view/range_access/char/1.cc: New file.
10784         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
10785         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
10786         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
10787         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
10788         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
10789         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
10790         * unittests/basic_string_view/requirements/typedefs.cc: New file.
10791         * unittests/basic_string_view/typedefs.cc: New file.
10792         * unittests/basic_string_view/types/1.cc: New file.
10793
10794 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10795
10796         * common/gdb_string_view.h: Remove libstdc++ implementation
10797         details, adjust to gdb reality.
10798         * common/gdb_string_view.tcc: Likewise.
10799         * cli/cli-script.c (struct string_view): Remove.
10800         (user_args) <m_args>: Change element type to gdb::string_view.
10801         (user_args::insert_args): Adjust.
10802
10803 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10804
10805         * common/gdb_string_view.h: New file.
10806         * common/gdb_string_view.tcc: New file.
10807
10808 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10809
10810         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
10811         * configure: Re-generate.
10812
10813 2018-04-09  Pedro Alves  <palves@redhat.com>
10814
10815         * gdbarch.sh: Include "observable.h" instead of "observer.h".
10816         (set_target_gdbarch): Call
10817         gdb::observers::architecture_changed.notify instead of
10818         observer_notify_architecture_changed.
10819
10820 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10821
10822         * tracepoint.c (struct current_traceframe_cleanup): Remove.
10823         (do_restore_current_traceframe_cleanup): Remove.
10824         (restore_current_traceframe_cleanup_dtor): Remove.
10825         (make_cleanup_restore_current_traceframe): Remove.
10826         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
10827         New.
10828         * tracepoint.h (struct scoped_restore_current_traceframe): New.
10829         * infrun.c (fetch_inferior_event): Use
10830         scoped_restore_current_traceframe.
10831
10832 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10833
10834         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
10835         Remove.
10836         <n_allocated_type_units>: Remove.
10837         <all_type_units>: Change to std::vector.
10838         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
10839         to std::vector change.
10840         (dwarf2_per_objfile::get_cutu): Likewise.
10841         (dwarf2_per_objfile::get_tu): Likewise.
10842         (create_signatured_type_table_from_index): Likewise.
10843         (create_signatured_type_table_from_debug_names): Likewise.
10844         (dw2_symtab_iter_next): Likewise.
10845         (dw2_print_stats): Likewise.
10846         (dw2_expand_all_symtabs): Likewise.
10847         (dw2_expand_marked_cus): Likewise.
10848         (dw2_debug_names_iterator::next): Likewise.
10849         (dwarf2_initialize_objfile): Likewise.
10850         (add_signatured_type_cu_to_table): Likewise.
10851         (create_all_type_units): Likewise.
10852         (add_type_unit): Likewise.
10853         (struct tu_abbrev_offset): Add constructor.
10854         (build_type_psymtabs_1): Adjust to std::vector change.
10855         (print_tu_stats): Likewise.
10856         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
10857         (write_debug_names): Likewise.
10858
10859 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10860
10861         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
10862         Make an std::vector.
10863         <n_comp_units>: Remove.
10864         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
10865         to std::vector change.
10866         (dwarf2_per_objfile::get_cutu): Likewise.
10867         (dwarf2_per_objfile::get_cu): Likewise.
10868         (create_cus_from_index): Likewise.
10869         (create_addrmap_from_index): Likewise.
10870         (create_addrmap_from_aranges): Likewise.
10871         (dwarf2_read_index): Likewise.
10872         (dw2_find_last_source_symtab): Likewise.
10873         (dw2_map_symtabs_matching_filename): Likewise.
10874         (dw2_symtab_iter_next): Likewise.
10875         (dw2_print_stats): Likewise.
10876         (dw2_expand_all_symtabs): Likewise.
10877         (dw2_expand_symtabs_with_fullname): Likewise.
10878         (dw2_expand_marked_cus): Likewise.
10879         (dw2_map_symbol_filenames): Likewise.
10880         (create_cus_from_debug_names): Likewise.
10881         (dwarf2_read_debug_names): Likewise.
10882         (dw2_debug_names_iterator::next): Likewise.
10883         (dwarf2_initialize_objfile): Likewise.
10884         (set_partial_user): Likewise.
10885         (dwarf2_build_psymtabs_hard): Likewise.
10886         (read_comp_units_from_section): Remove arguments, adjust to
10887         std::vector change.
10888         (create_all_comp_units): Adjust to std::vector and
10889         read_comp_units_from_section changes.
10890         (dwarf2_find_containing_comp_unit): Adjust to std::vector
10891         change.
10892         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
10893         (psyms_seen_size): Likewise.
10894         (write_gdbindex): Likewise.
10895         (write_debug_names): Likewise.
10896
10897 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10898
10899         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
10900         with dwarf2_per_objfile.
10901         (create_cus_from_index): Likewise.
10902         (create_signatured_type_table_from_index): Likewise.
10903         (dwarf2_read_index): Likewise.
10904         (dwarf2_initialize_objfile): Likewise.
10905         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
10906         per_cu rather than get_dwarf2_per_objfile.
10907
10908 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10909
10910         * dwarf2read.h (struct signatured_type): Forward declare.
10911         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
10912         New methods.
10913         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
10914         (dw2_get_cutu): ...this.
10915         (dwarf2_per_objfile::get_cu): Rename from...
10916         (dw2_get_cu): ...this.
10917         (dwarf2_per_objfile::get_tu): New.
10918         (create_addrmap_from_index): Adjust.
10919         (create_addrmap_from_aranges): Adjust.
10920         (dw2_find_last_source_symtab): Adjust.
10921         (dw2_map_symtabs_matching_filename): Adjust.
10922         (dw2_symtab_iter_next): Adjust.
10923         (dw2_print_stats): Adjust.
10924         (dw2_expand_all_symtabs): Adjust.
10925         (dw2_expand_symtabs_with_fullname): Adjust.
10926         (dw2_expand_marked_cus): Adjust.
10927         (dw_expand_symtabs_matching_file_matcher): Adjust.
10928         (dw2_map_symbol_filenames): Adjust.
10929         (dw2_debug_names_iterator::next): Adjust.
10930         (dwarf2_initialize_objfile): Adjust.
10931         (set_partial_user): Adjust.
10932         (dwarf2_build_psymtabs_hard): Adjust.
10933
10934 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10935
10936         * dwarf2read.c (create_signatured_type_table_from_debug_names):
10937         Remove unused variables.
10938         (dw2_map_symtabs_matching_filename): Likewise.
10939         (dwarf2_record_block_ranges): Likewise.
10940         (dwarf2_read_addr_index): Likewise.
10941         (follow_die_offset): Likewise.
10942
10943 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10944
10945         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
10946         to symbol_file_add_main.
10947
10948 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10949
10950         PR mi/22299
10951         * mi/mi-console.c (do_fputc_async_safe): New.
10952         (mi_console_file::write_async_safe): New.
10953         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
10954         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
10955         New.
10956         * ui-file.c (ui_file::putstrn): Adjust call to
10957         fputstrn_unfiltered.
10958         * utils.c (printchar): Replace do_fputs and do_fprintf
10959         parameters by do_fputc.
10960         (fputstr_filtered): Adjust call to printchar.
10961         (fputstr_unfiltered): Likewise.
10962         (fputstrn_filtered): Likewise.
10963         (fputstrn_unfiltered): Add do_fputc parameter, pass to
10964         printchar.
10965         * utils.h (do_fputc_ftype): New typedef.
10966         (fputstrn_unfiltered): Add do_fputc parameter.
10967
10968 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10969
10970         * regformats/i386/i386-avx.dat: Remove.
10971
10972 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
10973
10974         PR gdb/22979
10975         * amd64-tdep.c (amd64_none_init_abi): New function.
10976         (amd64_x32_none_init_abi): New function.
10977         (_initialize_amd64_tdep): Register handlers for x86-64 and
10978         x64_32 with GDB_OSABI_NONE.
10979         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
10980         GDB_OSABI_NONE osabi.
10981
10982 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
10983
10984         PR gdb/22980
10985         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
10986         GDB_OSABI_NONE.
10987         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
10988         * osabi.c (gdb_osabi_names): Add "unknown" entry.
10989
10990 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
10991
10992         * common/byte-vector.h (char_vector): New type.
10993         * target.h (target_read_alloc): Return
10994         gdb::optional<byte_vector>.
10995         (target_read_stralloc): Return gdb::optional<char_vector>.
10996         (target_get_osdata): Return gdb::optional<char_vector>.
10997         * target.c (target_read_alloc_1): Templatize.  Replacement
10998         manual memory management with vector.
10999         (target_read_alloc): Change return type, adjust.
11000         (target_read_stralloc): Change return type, adjust.
11001         (target_get_osdata): Change return type, adjust.
11002         * auxv.c (struct auxv_info) <length>: Remove.
11003         <data>: Change type to gdb::optional<byte_vector>.
11004         (auxv_inferior_data_cleanup): Free auxv_info with delete.
11005         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
11006         (target_auxv_search): Adjust.
11007         (fprint_target_auxv): Adjust.
11008         * avr-tdep.c (avr_io_reg_read_command): Adjust.
11009         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
11010         (linux_make_corefile_notes): Adjust.
11011         * osdata.c (get_osdata): Adjust.
11012         * remote.c (remote_get_threads_with_qxfer): Adjust.
11013         (remote_memory_map): Adjust.
11014         (remote_traceframe_info): Adjust.
11015         (btrace_read_config): Adjust.
11016         (remote_read_btrace): Adjust.
11017         (remote_pid_to_exec_file): Adjust.
11018         * solib-aix.c (solib_aix_get_library_list): Adjust.
11019         * solib-dsbt.c (decode_loadmap): Don't free buf.
11020         (dsbt_get_initial_loadmaps): Adjust.
11021         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
11022         * solib-target.c (solib_target_current_sos): Adjust.
11023         * tracepoint.c (sdata_make_value): Adjust.
11024         * xml-support.c (xinclude_start_include): Adjust.
11025         (xml_fetch_content_from_file): Adjust.
11026         * xml-support.h (xml_fetch_another): Change return type.
11027         (xml_fetch_content_from_file): Change return type.
11028         * xml-syscall.c (xml_init_syscalls_info): Adjust.
11029         * xml-tdesc.c (file_read_description_xml): Adjust.
11030         (fetch_available_features_from_target): Change return type.
11031         (target_fetch_description_xml): Adjust.
11032         (target_read_description_xml): Adjust.
11033
11034 2018-04-06  Tom Tromey  <tom@tromey.com>
11035
11036         * value.c (~value): Update.
11037         (struct value) <contents>: Now unique_xmalloc_ptr.
11038         (value_contents_bits_eq, allocate_value_contents)
11039         (value_contents_raw, value_contents_all_raw)
11040         (value_contents_for_printing, value_contents_for_printing_const)
11041         (set_value_enclosing_type): Update.
11042
11043 2018-04-06  Tom Tromey  <tom@tromey.com>
11044
11045         * value.c (range_s): Remove typedef, VEC.
11046         (struct range): Add operator<.
11047         (range_lessthan): Remove.
11048         (ranges_contain): Change type.
11049         (~value): Update.
11050         (struct value) <unavailable, optimized_out>: Now std::vector.
11051         (value_entirely_available)
11052         (value_entirely_covered_by_range_vector)
11053         (value_entirely_unavailable, value_entirely_optimized_out):
11054         Update.
11055         (insert_into_bit_range_vector): Change argument type.
11056         (find_first_range_overlap): Likewise.
11057         (struct ranges_and_idx, value_contents_bits_eq)
11058         (require_not_optimized_out, require_available): Update.
11059         (ranges_copy_adjusted): Change argument types.
11060         (value_optimized_out, value_copy, value_fetch_lazy): Update.
11061
11062 2018-04-06  Tom Tromey  <tom@tromey.com>
11063
11064         * value.c (~value): Update.
11065         (struct value) <parent>: Now a value_ref_ptr.
11066         (value_parent, set_value_parent, value_address, value_copy):
11067         Update.
11068
11069 2018-04-06  Tom Tromey  <tom@tromey.com>
11070
11071         * value.c (struct value): Add constructor, destructor, and member
11072         initializers.
11073         (allocate_value_lazy, value_decref): Update.
11074
11075 2018-04-06  Tom Tromey  <tom@tromey.com>
11076
11077         * value.c (struct value) <released, next>: Remove.
11078         (all_values): Now a std::vector.
11079         (allocate_value_lazy): Update.
11080         (value_next): Remove.
11081         (value_mark, value_free_to_mark, release_value)
11082         (value_release_to_mark): Update.
11083
11084 2018-04-06  Tom Tromey  <tom@tromey.com>
11085
11086         * value.h (fetch_subexp_value, value_release_to_mark): Update.
11087         (free_value_chain): Remove.
11088         * value.c (free_value_chain): Remove.
11089         (value_release_to_mark): Return a std::vector.
11090         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
11091         std::vector.
11092         (check_condition): Update.
11093         * eval.c (fetch_subexp_value): Change "val_chain" to a
11094         std::vector.
11095         * breakpoint.c (update_watchpoint): Update.
11096         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
11097
11098 2018-04-06  Tom Tromey  <tom@tromey.com>
11099
11100         * value.h (free_all_values): Remove.
11101         * value.c (free_all_values): Remove.
11102
11103 2018-04-06  Tom Tromey  <tom@tromey.com>
11104
11105         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
11106         (value_history_chain, value_history_count): Remove.
11107         (value_history): New global.
11108         (record_latest_value, access_value_history, show_values)
11109         (preserve_values): Update.
11110
11111 2018-04-06  Tom Tromey  <tom@tromey.com>
11112
11113         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
11114         * varobj.c (varobj_set_display_format, varobj_set_value)
11115         (install_default_visualizer, construct_visualizer)
11116         (install_new_value, ~varobj, varobj_get_value_type)
11117         (my_value_of_variable, varobj_editable_p): Update.
11118         * c-varobj.c (c_describe_child, c_value_of_variable)
11119         (cplus_number_of_children, cplus_describe_child): Update.
11120         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
11121         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
11122         (ada_value_of_variable, ada_value_is_changeable_p): Update.
11123
11124 2018-04-06  Tom Tromey  <tom@tromey.com>
11125
11126         * printcmd.c (last_examine_address): Change type to
11127         value_ref_ptr.
11128         (do_examine, x_command): Update.
11129
11130 2018-04-06  Tom Tromey  <tom@tromey.com>
11131
11132         * value.c (release_value): Update.
11133         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
11134         (struct bpstats) <val>: Now a value_ref_ptr.
11135         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11136         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11137         (~watchpoint, print_it_watchpoint, watch_command_1)
11138         (invalidate_bp_value_on_memory_change): Update.
11139
11140 2018-04-06  Tom Tromey  <tom@tromey.com>
11141
11142         * varobj.c (varobj_clear_saved_item)
11143         (update_dynamic_varobj_children, install_new_value, ~varobj):
11144         Update.
11145         * value.h (value_incref): Move declaration earlier.
11146         (value_decref): Rename from value_free.
11147         (struct value_ref_policy): New.
11148         (value_ref_ptr): New typedef.
11149         (struct value_deleter): Remove.
11150         (gdb_value_up): Remove typedef.
11151         (release_value): Change return type.
11152         (release_value_or_incref): Remove.
11153         * value.c (set_value_parent): Update.
11154         (value_incref): Change return type.
11155         (value_decref): Rename from value_free.
11156         (value_free_to_mark, free_all_values, free_value_chain): Update.
11157         (release_value): Return value_ref_ptr.
11158         (release_value_or_incref): Remove.
11159         (record_latest_value, set_internalvar, clear_internalvar):
11160         Update.
11161         * stack.c (info_frame_command): Don't call value_free.
11162         * python/py-value.c (valpy_dealloc, valpy_new)
11163         (value_to_value_object): Update.
11164         * printcmd.c (do_examine): Update.
11165         * opencl-lang.c (lval_func_free_closure): Update.
11166         * mi/mi-main.c (register_changed_p): Don't call value_free.
11167         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
11168         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
11169         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
11170         value_free.
11171         * guile/scm-value.c (vlscm_free_value_smob)
11172         (vlscm_scm_from_value): Update.
11173         * frame.c (frame_register_unwind, frame_unwind_register_signed)
11174         (frame_unwind_register_unsigned, get_frame_register_bytes)
11175         (put_frame_register_bytes): Don't call value_free.
11176         * findvar.c (address_from_register): Don't call value_free.
11177         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
11178         * dwarf2loc.c (entry_data_value_free_closure)
11179         (value_of_dwarf_reg_entry, free_pieced_value_closure)
11180         (dwarf2_evaluate_loc_desc_full): Update.
11181         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11182         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11183         (~watchpoint, watch_command_1)
11184         (invalidate_bp_value_on_memory_change): Update.
11185         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
11186
11187 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
11188
11189         PR gdb/23022
11190         * warning.m4: Add -Wno-error=deprecated-register.
11191         * configure: Re-generate.
11192
11193 2018-04-05  Tom Tromey  <tom@tromey.com>
11194
11195         * linespec.h: Remove include of "vec.h".
11196
11197 2018-04-05  Tom Tromey  <tom@tromey.com>
11198
11199         * linespec.c (typep): Remove typedef.
11200         (find_methods, find_superclass_methods): Take a std::vector.
11201         (find_method): Use std::vector.
11202
11203 2018-04-05  Tom Tromey  <tom@tromey.com>
11204
11205         * utils.c (compare_strings): Remove.
11206         * utils.h (compare_strings): Remove.
11207         * objc-lang.h (find_imps): Update.
11208         * objc-lang.c (find_methods): Take a std::vector.
11209         (uniquify_strings, find_imps): Likewise.
11210         * linespec.c (find_methods): Take a std::vector.
11211         (decode_objc): Use std::vector.
11212         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
11213         a std::vector.
11214         (find_method, find_function_symbols): Use std::vector.
11215
11216 2018-04-05  Tom Tromey  <tom@tromey.com>
11217
11218         * completer.c (completion_tracker::completion_tracker): Remove
11219         cast.
11220         (completion_tracker::discard_completions): Likewise.
11221         * breakpoint.c (ambiguous_names_p): Remove cast.
11222         * ada-lang.c (_initialize_ada_language): Remove cast.
11223         * utils.h (streq): Update.
11224         (streq_hash): Add new declaration.
11225         * utils.c (streq): Return bool.
11226         (streq_hash): New function.
11227
11228 2018-04-05  Tom Tromey  <tom@tromey.com>
11229
11230         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
11231         Remove a string copy.
11232
11233 2018-04-05  Tom Tromey  <tom@tromey.com>
11234
11235         * linespec.c (filter_results): Use std::vector.
11236         (decode_line_2, decode_line_full): Update.
11237
11238 2018-04-05  Tom Tromey  <tom@tromey.com>
11239
11240         * linespec.c (canonical_to_fullform): Return std::string.
11241         (filter_results): Update.
11242         (struct decode_line_2_item): Add constructor.
11243         <fullform, displayform>: Now std::string.
11244         (decode_line_2_compare_items): Now a std::sort comparator.
11245         (decode_line_2): Update.
11246
11247 2018-04-05  Tom Tromey  <tom@tromey.com>
11248
11249         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
11250         (unexpected_linespec_error): Update.
11251         (linespec_parse_basic, parse_linespec): Update.
11252
11253 2018-04-05  Tom Tromey  <tom@tromey.com>
11254
11255         * linespec.c (linespec_parse_basic): Reindent.
11256
11257 2018-04-05  Tom Tromey  <tom@tromey.com>
11258
11259         * minsyms.h (iterate_over_minimal_symbols): Update.
11260         * minsyms.c (iterate_over_minimal_symbols): Take a
11261         gdb::function_view.
11262         * linespec.c (struct collect_minsyms): Remove.
11263         (compare_msyms): Now a std::sort comparator.
11264         (add_minsym): Add parameters.
11265         (search_minsyms_for_name): Update.  Use std::vector.
11266
11267 2018-04-03  Tom Tromey  <tom@tromey.com>
11268
11269         * mipsread.c (read_alphacoff_dynamic_symtab): Use
11270         gdb::byte_vector.
11271
11272 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11273
11274         * MAINTAINERS (Write After Approval): Add Weimin Pan.
11275
11276 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11277
11278         PR gdb/16959
11279         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
11280         printing static type.
11281
11282 2018-04-01  Tom Tromey  <tom@tromey.com>
11283
11284         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
11285         (rs6000_xfer_shared_libraries): Update.
11286
11287 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
11288
11289         * common/gdb_vecs.h (char_ptr): Remove.
11290         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
11291
11292 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11293
11294         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
11295         with std::vector.
11296         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
11297
11298 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11299
11300         * tracepoint.h (struct uploaded_tp): Initialize fields.
11301         <actions, step_actions, cmd_strings>: Change type to
11302         std::vector<char *>.
11303         * tracepoint.c (get_uploaded_tp): Allocate with new.
11304         (free_uploaded_tps): Free with delete.
11305         (parse_tracepoint_definition): Adjust to std::vector change.
11306         * breakpoint.c (read_uploaded_action): Likewise.
11307         (create_tracepoint_from_upload): Likewise.
11308         * ctf.c (ctf_write_uploaded_tp): Likewise.
11309         (SET_ARRAY_FIELD): Likewise.
11310         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
11311
11312 2018-03-30  Tom Tromey  <tom@tromey.com>
11313
11314         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
11315         std::unique_ptr.
11316         (svr4_keep_data_in_core): Update.
11317         (svr4_read_so_list): Update.
11318
11319 2018-03-30  Tom Tromey  <tom@tromey.com>
11320
11321         * windows-nat.c (handle_output_debug_string, handle_exception):
11322         Update.
11323         * target.h (target_read_string): Update.
11324         * target.c (target_read_string): Change "string" to
11325         unique_xmalloc_ptr.
11326         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
11327         Update.
11328         * solib-frv.c (frv_current_sos): Update.
11329         * solib-dsbt.c (dsbt_current_sos): Update.
11330         * solib-darwin.c (darwin_current_sos): Update.
11331         * linux-thread-db.c (inferior_has_bug): Update.
11332         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
11333         Update.  Remove alloca.
11334         * ada-lang.c (ada_main_name): Update.
11335
11336 2018-03-30  Tom Tromey  <tom@tromey.com>
11337
11338         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
11339         (struct dwo_file_deleter): New.
11340         (dwo_file_up): New typedef.
11341         (open_and_init_dwo_file): Use dwo_file_up.
11342         (free_dwo_file_cleanup): Remove.
11343
11344 2018-03-30  Tom Tromey  <tom@tromey.com>
11345
11346         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
11347         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
11348
11349 2018-03-30  Tom Tromey  <tom@tromey.com>
11350
11351         * dwarf2read.c (class free_cached_comp_units): New class.
11352         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
11353         (free_cached_comp_units): Remove function.
11354
11355 2018-03-30  Tom Tromey  <tom@tromey.com>
11356
11357         * utils.h (make_cleanup_unpush_target): Remove.
11358         * inf-ptrace.c (struct target_unpusher): New.
11359         (target_unpush_up) New typedef.
11360         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
11361         target_unpush_up.
11362         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
11363
11364 2018-03-27  Tom Tromey  <tom@tromey.com>
11365
11366         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
11367
11368 2018-03-27  Pedro Alves  <palves@redhat.com>
11369             Tom Tromey  <tom@tromey.com>
11370
11371         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
11372         destructor.  Now a class.
11373         (gdb_readline_wrapper_cleanup): Remove function.
11374         (gdb_readline_wrapper): Remove cleanups.
11375
11376 2018-03-27  Tom Tromey  <tom@tromey.com>
11377
11378         * typeprint.h (struct type_print_options) <local_typedefs,
11379         global_typedefs>: Remove "struct" keyword.
11380         (class typedef_hash_table): New class.
11381         (recursively_update_typedef_hash, add_template_parameters)
11382         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
11383         (find_typedef_in_hash): Don't declare.
11384         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
11385         (typedef_hash_table::recursively_update): Rename from
11386         recursively_update_typedef_hash.  Now a member.
11387         (typedef_hash_table::add_template_parameters): Rename from
11388         add_template_parameters.  Now a member.
11389         (typedef_hash_table::typedef_hash_table): Now a constructor;
11390         rename from create_typedef_hash.
11391         (typedef_hash_table::~typedef_hash_table): Now a destructor;
11392         rename from free_typedef_hash.
11393         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
11394         (do_free_global_table): Remove.
11395         (typedef_hash_table::typedef_hash_table): New constructor; renamed
11396         from copy_type_recursive.
11397         (create_global_typedef_table): Remove.
11398         (typedef_hash_table::find_global_typedef): Now a member of
11399         typedef_hash_table.
11400         (typedef_hash_table::find_typedef): Rename from
11401         find_typedef_in_hash; now a member.
11402         (whatis_exp): Update.
11403         * extension.h (struct ext_lang_type_printers): Add constructor and
11404         destructor.
11405         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
11406         declare.
11407         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
11408         Now a constructor; rename from start_ext_lang_type_printers.
11409         (ext_lang_type_printers): Now a destructor; rename from
11410         free_ext_lang_type_printers.
11411         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
11412         Update.
11413         (c_type_print_base_struct_union): Update.  Remove cleanups.
11414
11415 2018-03-27  Tom Tromey  <tom@tromey.com>
11416
11417         * dwarf-index-write.c: Include <cmath>.
11418
11419 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11420
11421         * NEWS: Add entry describing new "set|show varsize-limit" command.
11422         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
11423         command.
11424         * printcmd.c (_initialize_printcmd): Add "set var" alias of
11425         "set variable".
11426
11427 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
11428
11429         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
11430         dwarf-index-write.c
11431         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
11432         * dwarf-index-common.c: New file.
11433         * dwarf-index-common.h: New file.
11434         * dwarf-index-write.c: New file.
11435         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
11436         (struct dwarf2_section_info): Move from here.
11437         (dwarf2_section_info_def): Likewise.
11438         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
11439         (offset_type): Likewise.
11440         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
11441         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
11442         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
11443         (byte_swap): Likewise.
11444         (MAYBE_SWAP): Likewise.
11445         (dwarf2_per_cu_ptr): Likewise.
11446         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
11447         (struct tu_stats): Likewise.
11448         (struct dwarf2_per_objfile): Likewise.
11449         (struct dwarf2_per_cu_data): Likewise.
11450         (struct signatured_type): Likewise.
11451         (sig_type_ptr): Likewise.
11452         (DEF_VEC_P (sig_type_ptr)): Likewise.
11453         (INDEX4_SUFFIX): Likewise.
11454         (INDEX5_SUFFIX): Likewise.
11455         (DEBUG_STR_SUFFIX): Likewise.
11456         (dwarf2_read_section): Make non-static.
11457         (mapped_index_string_hash): Move from here.
11458         (dwarf5_djb_hash): Likewise.
11459         (file_write): Likewise.
11460         (class data_buf): Likewise.
11461         (struct symtab_index_entry): Likewise.
11462         (struct mapped_symtab): Likewise.
11463         (find_slot): Likewise.
11464         (hash_expand): Likewise.
11465         (add_index_entry): Likewise.
11466         (uniquify_cu_indices): Likewise.
11467         (class c_str_view): Likewise.
11468         (class c_str_view_hasher): Likewise.
11469         (class vector_hasher): Likewise.
11470         (write_hash_table): Likewise.
11471         (psym_index_map): Likewise.
11472         (struct addrmap_index_data): Likewise.
11473         (add_address_entry): Likewise.
11474         (add_address_entry_worker): Likewise.
11475         (write_address_map): Likewise.
11476         (symbol_kind): Likewise.
11477         (write_psymbols): Likewise.
11478         (struct signatured_type_index_data): Likewise.
11479         (write_one_signatured_type): Likewise.
11480         (recursively_count_psymbols): Likewise.
11481         (recursively_write_psymbols): Likewise.
11482         (class debug_names): Likewise.
11483         (check_dwarf64_offsets): Likewise.
11484         (psyms_seen_size): Likewise.
11485         (write_gdbindex): Likewise.
11486         (write_debug_names): Likewise.
11487         (assert_file_size): Likewise.
11488         (write_psymtabs_to_index): Likewise.
11489         (save_gdb_index_command): Likewise.
11490         (_initialize_dwarf2_read): Don't register the "save gdb-index"
11491         command.
11492         * dwarf2read.h: New file.
11493
11494 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11495
11496         PR gdb/22670
11497         * dwarf2read.c (dwarf2_physname): Do not return the demangled
11498         symbol name if the CU's language stores symbol names in linkage
11499         format.
11500         * language.h (struct language_defn)
11501         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
11502         all instances of this struct.
11503
11504 2018-03-26  Tom Tromey  <tom@tromey.com>
11505
11506         * stack.c (backtrace_command_1): Remove verbose code.
11507
11508 2018-03-26  Tom Tromey  <tom@tromey.com>
11509
11510         * python/py-framefilter.c (py_print_type): Don't catch
11511         exceptions.  Return void.
11512         (py_print_value): Likewise.
11513         (py_print_single_arg): Likewise.
11514         (enumerate_args): Don't catch exceptions.
11515         (py_print_args): Likewise.
11516         (py_print_frame): Likewise.
11517         (gdbpy_apply_frame_filter): Catch exceptions here.
11518
11519 2018-03-26  Tom Tromey  <tom@tromey.com>
11520
11521         * stack.c (_initialize_stack): Remove trailing newlines from help
11522         text.  Add "Usage" line to "backtrace" help.
11523
11524 2018-03-26  Tom Tromey  <tom@tromey.com>
11525
11526         PR python/16486:
11527         * python/py-framefilter.c (py_print_args): Call wrap_hint.
11528
11529 2018-03-26  Tom Tromey  <tom@tromey.com>
11530
11531         * python/py-framefilter.c (py_print_single_arg): Return
11532         EXT_LANG_BT_ERROR from catch.
11533
11534 2018-03-26  Tom Tromey  <tom@tromey.com>
11535
11536         PR backtrace/15584:
11537         * stack.c (backtrace_command_1): Move some code into no-filters
11538         "if".
11539
11540 2018-03-26  Tom Tromey  <tom@tromey.com>
11541
11542         * python/py-framefilter.c (throw_quit_or_print_exception): New
11543         function.
11544         (gdbpy_apply_frame_filter): Use it.
11545
11546 2018-03-26  Tom Tromey  <tom@tromey.com>
11547
11548         PR cli/17716:
11549         * python/py-framefilter.c (py_print_type, py_print_value)
11550         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
11551         RETURN_MASK_ERROR.
11552
11553 2018-03-26  Tom Tromey  <tom@tromey.com>
11554
11555         * python/py-framefilter.c (enumerate_args): Use
11556         gdb::unique_xmalloc_ptr.
11557
11558 2018-03-26  Tom Tromey  <tom@tromey.com>
11559
11560         * python/py-framefilter.c (py_print_frame): Return
11561         EXT_LANG_BT_OK.
11562         (gdbpy_apply_frame_filter): Update comment.
11563         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
11564         Remove.
11565         <EXT_LANG_BT_NO_FILTERS>: Change value.
11566
11567 2018-03-26  Tom Tromey  <tom@tromey.com>
11568
11569         PR backtrace/15582:
11570         * stack.c (backtrace_command): Parse "hide" argument.
11571         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
11572         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
11573         constant.
11574
11575 2018-03-26  Tom Tromey  <tom@tromey.com>
11576
11577         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
11578         add "flags".
11579         (backtrace_command): Remove "fulltrace", add "flags".
11580
11581 2018-03-26  Tom Tromey  <tom@tromey.com>
11582
11583         * stack.c (backtrace_command): Rewrite command line parsing.
11584
11585 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11586
11587         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
11588
11589 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11590
11591         * filename-seen-cache.h: Add include guard.
11592
11593 2018-03-26  Keith Seitz  <keiths@redhat.com>
11594
11595         * symfile.c (place_section): Remove "struct" from section_addr_info
11596         in comment.
11597         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
11598         "struct" keyword from section_addr_info.
11599
11600 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
11601
11602         * regformats/regdef.h (reg): Add constructors.
11603
11604 2018-03-25  Pedro Alves  <palves@redhat.com>
11605
11606         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
11607         if then/else bodies in var_func_name extraction.
11608
11609 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
11610
11611         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
11612         lookup_minimal_symbol() to find symbol entry.
11613         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
11614
11615 2018-03-23  Keith Seitz  <keiths@redhat.com>
11616
11617         PR c++/22968
11618         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
11619         nested type definitions for C++, too.
11620
11621 2018-03-23  Tom Tromey  <tom@tromey.com>
11622
11623         * machoread.c (struct oso_el): Add a constructor.  Don't define as
11624         a typedef.
11625         (macho_register_oso): Remove.
11626         (macho_symtab_read): Take a std::vector.
11627         (oso_el_compare_name): Now a std::sort comparator.
11628         (macho_symfile_read_all_oso): Take a std::vector.
11629         (macho_symfile_read): Use std::vector.  Remove cleanups.
11630
11631 2018-03-22  Tom Tromey  <tom@tromey.com>
11632
11633         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
11634         (record_full_goto_bookmark): Use std::string.
11635
11636 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11637
11638         PR tdep/18295
11639         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
11640         a single mask.
11641
11642 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11643
11644         * rs6000-tdep.c (store_insn_p): New function.
11645         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
11646         and cr_reg to their unshifted values. Use store_insn_p to
11647         match LR saves using either R1 or fdata->alloca_reg. Use
11648         store_insn_p to match CR saves. Set alloca_reg_offset
11649         when alloca_reg and framep are set. Remove lr_reg shift
11650         when assigning to fdata->lr_register.
11651
11652 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11653
11654         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
11655         command line args instead of emitting a warning.
11656
11657 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11658
11659         * tracepoint.h (struct static_tracepoint_marker): Initialize
11660         fields, define default constructor, move constructor and move
11661         assignment, disable the rest.
11662         <str_id, extra>: Make std::string.
11663         (release_static_tracepoint_marker): Remove.
11664         (free_current_marker): Remove.
11665         * tracepoint.c (free_current_marker): Remove.
11666         (parse_static_tracepoint_marker_definition): Adjust to
11667         std::string, use new hex2str overload.
11668         (release_static_tracepoint_marker): Remove.
11669         (print_one_static_tracepoint_marker): Get marker by reference
11670         and adjust to std::string.
11671         (info_static_tracepoint_markers_command): Adjust to std::vector
11672         changes
11673         * target.h (static_tracepoint_marker_p): Remove typedef.
11674         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
11675         (struct target_ops) <to_static_tracepoint_marker_at>: Return
11676         bool.
11677         <to_static_tracepoint_markers_by_strid>: Return std::vector.
11678         * target-debug.h
11679         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
11680         (target_debug_print_std_vector_static_tracepoint_marker): New.
11681         (target_debug_print_struct_static_tracepoint_marker_p): Rename
11682         to...
11683         (target_debug_print_static_tracepoint_marker_p): ... this.
11684         * target-delegates.c: Re-generate.
11685         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
11686         Make std::string.
11687         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
11688         (decode_static_tracepoint_spec): Adjust to std::vector.
11689         (tracepoint_print_one_detail): Adjust to std::string.
11690         (strace_marker_decode_location): Adjust to std::string.
11691         (update_static_tracepoint): Adjust to std::string, remove call
11692         to release_static_tracepoint_marker.
11693         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
11694         Adjust to std::vector.
11695         * remote.c (remote_static_tracepoint_marker_at): Return bool.
11696         (remote_static_tracepoint_markers_by_strid): Adjust to
11697         std::vector.
11698         * common/rsp-low.h (hex2str): New overload with explicit count
11699         of bytes.
11700         * common/rsp-low.c (hex2str): New overload with explicit count
11701         of bytes.
11702         * unittests/rsp-low-selftests.c (test_hex2str): New function.
11703         (_initialize_rsp_low_selftests): Add test_hex2str test.
11704         * unittests/tracepoint-selftests.c
11705         (test_parse_static_tracepoint_marker_definition): Adjust to
11706         std::string.
11707
11708 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11709
11710         * tracepoint.c (parse_static_tracepoint_marker_definition):
11711         Consider case where the definition is followed by more
11712         definitions.
11713         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11714         tracepoint-selftests.c.
11715         * unittests/tracepoint-selftests.c: New.
11716
11717 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11718
11719         * MAINTAINERS (Write After Approval): Add Pedro Franco de
11720         Carvalho.
11721
11722 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11723
11724         * symtab.c (find_pc_sect_line): fixed indentation.
11725
11726 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11727
11728         * symtab.c (find_pc_sect_line): now uses binary search.
11729
11730 2018-03-19  Tom Tromey  <tom@tromey.com>
11731
11732         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
11733         "IDENT" production.
11734
11735 2018-03-19  Pedro Alves  <palves@redhat.com>
11736             Tom Tromey  <tom@tromey.com>
11737
11738         * unittests/observable-selftests.c: New file.
11739         * common/observable.h: New file.
11740         * observable.h: New file.
11741         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
11742         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
11743         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
11744         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
11745         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
11746         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
11747         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
11748         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
11749         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
11750         python/py-breakpoint.c, python/py-finishbreakpoint.c,
11751         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
11752         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
11753         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
11754         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
11755         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
11756         tui/tui-interp.c, valops.c: Update all users.
11757         * tui/tui-hooks.c (tui_bp_created_observer)
11758         (tui_bp_deleted_observer, tui_bp_modified_observer)
11759         (tui_inferior_exit_observer, tui_before_prompt_observer)
11760         (tui_normal_stop_observer, tui_register_changed_observer):
11761         Remove.
11762         (tui_observers_token): New global.
11763         (attach_or_detach, tui_attach_detach_observers): New functions.
11764         (tui_install_hooks, tui_remove_hooks): Use
11765         tui_attach_detach_observers.
11766         * record-btrace.c (record_btrace_thread_observer): Remove.
11767         (record_btrace_thread_observer_token): New global.
11768         * observer.sh: Remove.
11769         * observer.c: Rename to observable.c.
11770         * observable.c (namespace gdb_observers): Define new objects.
11771         (observer_debug): Move into gdb_observers namespace.
11772         (struct observer, struct observer_list, xalloc_observer_list_node)
11773         (xfree_observer_list_node, generic_observer_attach)
11774         (generic_observer_detach, generic_observer_notify): Remove.
11775         (_initialize_observer): Update.
11776         Don't include observer.inc.
11777         * Makefile.in (generated_files): Remove observer.h, observer.inc.
11778         (clean mostlyclean): Likewise.
11779         (observer.h, observer.inc): Remove targets.
11780         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
11781         (COMMON_SFILES): Use observable.c, not observer.c.
11782         * .gitignore: Remove observer.h.
11783
11784 2018-03-18  Tom Tromey  <tom@tromey.com>
11785
11786         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
11787         gdb::def_vector.
11788         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
11789
11790 2018-03-17  Tom Tromey  <tom@tromey.com>
11791
11792         * auto-load.c (auto_load_objfile_script_1): Use std::string.
11793
11794 2018-03-17  Tom Tromey  <tom@tromey.com>
11795
11796         * target.c (class scoped_target_fd): New.
11797         (target_fileio_close_cleanup): Remove.
11798         (target_fileio_read_alloc_1): Use scoped_target_fd.
11799
11800 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
11801
11802         * silent-rules.mk: New.
11803         * Makefile.in: Include silent-rules.mk
11804         (srcdir, VPATH, top_srcdir): Move up.
11805         (COMPILE): Add ECHO_CXX.
11806         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
11807         (init.c): Add ECHO_INIT_C.
11808         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
11809         (version.c): Add ECHO_GEN.
11810         (printcmd.o): Add ECHO_CXX.
11811         (target-float.o): Add ECHO_CXX.
11812         (ada-exp.o): Add ECHO_CXX.
11813         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
11814         (insight$(EXEEXT)): Add ECHO_CXXLD.
11815         * gnulib/configure.ac: Add AM_SILENT_RULES.
11816         * gnulib/aclocal.m4: Re-generate.
11817         * gnulib/configure: Re-generate.
11818         * gnulib/import/Makefile.in: Re-generate.
11819
11820 2018-03-16  Tom Tromey  <tom@tromey.com>
11821
11822         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
11823         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
11824         * utils.c (do_free_section_addr_info)
11825         (make_cleanup_free_section_addr_info): Remove.
11826         * symfile.h (struct other_sections): Add constructor.
11827         (struct section_addr_info): Remove.
11828         (section_addr_info): New typedef.
11829         (struct sym_fns) <sym_offsets>: Change type of parameter.
11830         (build_section_addr_info_from_objfile)
11831         (relative_addr_info_to_section_offsets, addr_info_make_relative)
11832         (default_symfile_offsets, symbol_file_add)
11833         (symbol_file_add_from_bfd)
11834         (build_section_addr_info_from_section_table): Update.
11835         (alloc_section_addr_info, free_section_addr_info): Don't declare.
11836         * symfile.c (alloc_section_addr_info): Remove.
11837         (build_section_addr_info_from_section_table): Change return type.
11838         Update.
11839         (build_section_addr_info_from_bfd)
11840         (build_section_addr_info_from_objfile): Likewise.
11841         (free_section_addr_info): Remove.
11842         (relative_addr_info_to_section_offsets): Change type of "addrs".
11843         (addrs_section_compar): Now a std::sort comparator.
11844         (addrs_section_sort): Change return type.
11845         (addr_info_make_relative): Change type of "addrs".  Update.
11846         (default_symfile_offsets, syms_from_objfile_1)
11847         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
11848         (symbol_file_add_separate): Update.
11849         (symbol_file_add): Change type of "addrs".  Update.
11850         (add_symbol_file_command): Update.  Remove cleanups.
11851         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
11852         cleanups.
11853         * symfile-debug.c (debug_sym_offsets): Change type of "info".
11854         * solib.c (solib_read_symbols): Update.
11855         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
11856         * machoread.c (macho_symfile_offsets): Update.
11857         * jit.c (jit_bfd_try_read_symtab): Update.
11858
11859 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
11860
11861         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11862         unittests/utils-selftests.c.
11863         * unittests/utils-selftests.c: New file.
11864
11865 2018-03-14  Tom Tromey  <tom@tromey.com>
11866
11867         PR cli/14977:
11868         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
11869         for NULL.
11870
11871 2018-03-14  Tom Tromey  <tom@tromey.com>
11872
11873         PR cli/19918:
11874         * printcmd.c (printf_pointer): Allow "-" in format.
11875
11876 2018-03-14  Tom Tromey  <tom@tromey.com>
11877
11878         * printcmd.c (_initialize_printcmd): Add usage to printf.
11879
11880 2018-03-14  Yao Qi  <qiyao@sourceware.org>
11881
11882         * MAINTAINERS: Update my email address.
11883
11884 2018-03-13  Tom Tromey  <tom@tromey.com>
11885
11886         * machoread.c (macho_check_dsym): Change filenamep to a
11887         std::string*.
11888         (macho_symfile_read): Update.
11889         * symfile.c (load_command): Use std::string.
11890
11891 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
11892
11893         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
11894         to error message string.
11895         (riscv_register_name): Use xsnprintf instead of sprintf.
11896         (riscv_insn::fetch_instruction): Use gdb_assert instead of
11897         internal_error.
11898         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
11899         error.
11900         (riscv_push_dummy_call): Likewise.
11901
11902 2018-03-12  Tom Tromey  <tom@tromey.com>
11903
11904         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
11905         Use gdb::byte_vector.
11906         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
11907
11908 2018-03-12  Yao Qi  <yao.qi@linaro.org>
11909
11910         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
11911         parameter type to readable_regcache.
11912         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
11913         the declaration.
11914
11915 2018-03-11  Tom Tromey  <tom@tromey.com>
11916
11917         * dwarf2read.c (struct nextfield): Add initializers.
11918         (struct nextfnfield): Remove.
11919         (struct fnfieldlist): Add initializers.  Remove "length" and
11920         "head", use std::vector.
11921         (struct decl_field_list): Remove.
11922         (struct field_info): Add initializers.
11923         <fields, baseclasses>: Now std::vector.
11924         <nbaseclasses, nfnfields, typedef_field_list_count,
11925         nested_types_list_count>: Remove.
11926         (dwarf2_add_field, dwarf2_add_type_defn)
11927         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
11928         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
11929         (process_structure_scope): Update.
11930
11931 2018-03-11  Tom Tromey  <tom@tromey.com>
11932
11933         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
11934         for use by std::sort.
11935         (build_type_psymtabs_1): Use std::vector.
11936
11937 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
11938
11939         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
11940         and LIBMPFR in the printed configuration.
11941
11942 2018-03-08  Tom Tromey  <tom@tromey.com>
11943
11944         * source.c (get_filename_and_charpos): Use scoped_fd.
11945         * nto-procfs.c (procfs_open_1): Use scoped_fd.
11946         (procfs_pidlist): Likewise.
11947         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
11948         (iterate_over_mappings): Likewise.
11949
11950 2018-03-08  Tom Tromey  <tom@tromey.com>
11951
11952         * infcall.c (struct call_return_meta_info)
11953         <stack_temporaries_enabled>: Remove.
11954         (get_call_return_value, call_function_by_hand_dummy): Update.
11955         * thread.c (disable_thread_stack_temporaries): Remove.
11956         (enable_thread_stack_temporaries): Remove.
11957         (thread_stack_temporaries_enabled_p): Return bool.
11958         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
11959         (get_last_thread_stack_temporary): Update.
11960         * eval.c (evaluate_subexp): Update.
11961         * gdbthread.h (class enable_thread_stack_temporaries): Now a
11962         class, not a function.
11963         (value_ptr, value_vec): Remove typedefs.
11964         (class thread_info) <stack_temporaries_enabled>: Now bool.
11965         <stack_temporaries>: Now a std::vector.
11966         (thread_stack_temporaries_enabled_p)
11967         (value_in_thread_stack_temporaries): Return bool.
11968
11969 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
11970
11971         * remote.c (putpkt_binary): Fix omitted bytes reporting.
11972         (getpkt_or_notif_sane_1): Likewise.
11973
11974 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
11975
11976         * build-id.c (build_id_to_debug_bfd): Use std::string.
11977
11978 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
11979
11980         * build-id.c (find_separate_debug_file_by_buildid): Return
11981         std::string.
11982         * build-id.h (find_separate_debug_file_by_buildid): Return
11983         std::string.
11984         * coffread.c (coff_symfile_read): Adjust to std::string.
11985         * elfread.c (elf_symfile_read): Adjust to std::string.
11986         * symfile.c (separate_debug_file_exists): Change parameter to
11987         std::string.
11988         (find_separate_debug_file): Return std::string.
11989         (find_separate_debug_file_by_debuglink): Return std::string.
11990         * symfile.h (find_separate_debug_file_by_debuglink): Return
11991         std::string.
11992
11993 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
11994
11995         * common/xml-utils.c (xml_escape_text): Move code to...
11996         (xml_escape_text_append): ... this new function.
11997         * common/xml-utils.h (xml_escape_text_append): New declaration.
11998         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
11999         New function.
12000         (_initialize_xml_utils): register test_xml_escape_text_append as
12001         a selftest.
12002
12003 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
12004
12005         * defs.h: Remove MAX_REGISTER_SIZE.
12006         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
12007         asserts.
12008         * python/py-unwind.c (pyuw_sniffer): Likewise.
12009
12010 2018-03-07  Tom Tromey  <tom@tromey.com>
12011
12012         * linux-tdep.c (linux_info_proc): Update.
12013         * target.h (struct target_ops) <to_fileio_readlink>: Return
12014         optional<string>.
12015         (target_fileio_readlink): Return optional<string>.
12016         * remote.c (remote_hostio_readlink): Return optional<string>.
12017         * inf-child.c (inf_child_fileio_readlink): Return
12018         optional<string>.
12019         * target.c (target_fileio_readlink): Return optional<string>.
12020
12021 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
12022
12023         * regcache.c (cooked_read_test): Add riscv to the list of
12024         architectures that have a save_reggroup.
12025
12026 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12027
12028         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
12029         value is not a dynamic class object.
12030
12031 2018-03-06  Tom Tromey  <tom@tromey.com>
12032
12033         * rust-exp.y: Formatting fixes.
12034
12035 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12036
12037         * riscv-tdep.c (riscv_register_name): Remove target description
12038         support.
12039         (riscv_gdbarch_init): Remove target description check.
12040
12041 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12042
12043         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
12044         comment.
12045         * riscv-tdep.h: Likewise.
12046
12047 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12048
12049         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
12050         (riscv_pseudo_register_write): Delete.
12051         (riscv_gdbarch_init): Remove all use of pseudo registers.
12052
12053 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12054
12055         * record-btrace.c (btrace_print_lines): Replace cleanup
12056         parameter with RAII equivalents.
12057         (btrace_insn_history): Replace cleanup with RAII equivalents.
12058         * ui-out.h (make_cleanup_ui_out_list_begin_end,
12059         make_cleanup_ui_out_tuple_begin_end): Remove.
12060         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
12061         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
12062         make_cleanup_ui_out_list_begin_end): Remove.
12063
12064 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12065
12066         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
12067         parameter types to std::vector.  Use bool.
12068         (record_btrace_wait): Replace VEC(tp_t) with
12069         std::vector<thread_info *>.
12070         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
12071
12072 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12073
12074         * record-btrace.c (record_btrace_disable_callback): Remove.
12075         (struct scoped_btrace_disable): New.
12076         (record_btrace_open): Use scoped_btrace_disable.
12077
12078 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12079
12080         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
12081         reading values from registers.
12082
12083 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12084
12085         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
12086         where appropriate.
12087
12088 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12089
12090         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
12091         change parameter type.  Use GDB's print functions, and use
12092         core_addr_to_string where appropriate.
12093         (riscv_push_dummy_call): Use core_addr_to_string where
12094         appropriate, update call to riscv_print_arg_location, and reindent
12095         a few lines.
12096         (riscv_return_value): Update call to riscv_print_arg_location.
12097
12098 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12099             Tim Newsome <tim@sifive.com>
12100             Albert Ou <a0u@eecs.berkeley.edu>
12101             Darius Rad <darius@bluespec.com>
12102
12103         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
12104         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
12105         (ALLDEPFILES): Add riscv-tdep.c
12106         * configure.tgt: Add riscv support.
12107         * riscv-tdep.c: New file.
12108         * riscv-tdep.h: New file.
12109         * NEWS: Mention new target.
12110         * MAINTAINERS: Add entry for riscv.
12111
12112 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12113
12114         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
12115         fields within aggregates.
12116
12117 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
12118
12119         * record-btrace.c (btrace_print_lines): Change type of flags to
12120         gdb_disassembly_flags.
12121
12122 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12123
12124         * fbsd-nat.c: Include "inf-ptrace.h".
12125         (USE_SIGTRAP_SIGINFO): Conditionally define.
12126         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
12127         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
12128         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
12129         function.
12130         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
12131         Likewise.
12132         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
12133         Likewise.
12134         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
12135         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
12136         "supports_stopped_by_hw_breakpoint" target methods.
12137
12138 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12139
12140         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
12141         * fbsd-nat.c (debug_fbsd_nat): New variable.
12142         (show_fbsd_nat_debug): New function.
12143         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
12144         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
12145
12146 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12147
12148         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
12149         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
12150         prototype.
12151         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
12152         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
12153         method.
12154
12155 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12156
12157         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
12158         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
12159
12160 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12161
12162         * charset.c (struct charset_vector): New.
12163         (charsets): Change type to charset_vector.
12164         (find_charset_names): Adjust.
12165         (add_one): Adjust.
12166         (_initialize_charset): Adjust.
12167
12168 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12169
12170         * progspace.h (struct program_space) <deleted_solibs>: Change
12171         type to std::vector<std::string>.
12172         * progspace.c (clear_program_space_solib_cache): Adjust.
12173         * breakpoint.c (print_solib_event): Adjust.
12174         (check_status_catch_solib): Adjust.
12175         * solib.c (update_solib_list): Adjust.
12176         * ui-out.h (class ui_out) <field_string>: New overload.
12177         * ui-out.c (ui_out::field_string): New overload.
12178
12179 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12180
12181         * progspace.h (struct program_space): Add constructor and
12182         destructor, initialize fields.
12183         (add_program_space): Remove.
12184         * progspace.c (add_program_space): Rename to...
12185         (program_space::program_space): ... this.
12186         (release_program_space): Rename to...
12187         (program_space::~program_space): ... this.
12188         (delete_program_space): Use delete to delete program_space.
12189         (initialize_progspace): Use new to allocate program_space.
12190         * inferior.c (add_inferior_with_spaces): Likewise.
12191         (clone_inferior_command): Likewise.
12192         * infrun.c (follow_fork_inferior): Likewise.
12193         (handle_vfork_child_exec_or_exit): Likewise.
12194
12195 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12196
12197         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
12198         (delim_string_to_char_ptr_vec): Return std::vector of
12199         gdb::unique_xmalloc_ptr.
12200         (dirnames_to_char_ptr_vec_append): Take std::vector of
12201         gdb::unique_xmalloc_ptr.
12202         (dirnames_to_char_ptr_vec): Return std::vector of
12203         gdb::unique_xmalloc_ptr.
12204         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
12205         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
12206         (delim_string_to_char_ptr_vec): Return an std::vector of
12207         gdb::unique_xmalloc_ptr, adjust the code.
12208         (dirnames_to_char_ptr_vec_append): Take an std::vector of
12209         gdb::unique_xmalloc_ptr, adjust the code.
12210         (dirnames_to_char_ptr_vec): Return an std::vector of
12211         gdb::unique_xmalloc_ptr, adjust the code.
12212         * auto-load.c (auto_load_safe_path_vec): Change type to
12213         std::vector of gdb::unique_xmalloc_ptr.
12214         (auto_load_expand_dir_vars): Return an std::vector of
12215         gdb::unique_xmalloc_ptr, adjust the code.
12216         (auto_load_safe_path_vec_update): Adjust.
12217         (filename_is_in_auto_load_safe_path_vec): Adjust.
12218         (auto_load_objfile_script_1): Adjust.
12219         * build-id.c (build_id_to_debug_bfd): Adjust.
12220         * linux-thread-db.c (thread_db_load_search): Adjust.
12221         * source.c (add_path): Adjust.
12222         (openp): Adjust.
12223         * symfile.c (find_separate_debug_file): Adjust.
12224         * utils.c (do_free_char_ptr_vec): Remove.
12225         (make_cleanup_free_char_ptr_vec): Remove.
12226
12227 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
12228
12229         PR gdb/22907
12230         * common/pathstuff.c: Conditionally include "<windows.h>".
12231
12232 2018-03-01  Georg Sauthoff  <mail@georg.so>
12233
12234         PR gdb/22888
12235         * gcore.in: Quote variables and switch interpreter to bash.
12236
12237 2018-03-01  Tom Tromey  <tom@tromey.com>
12238
12239         * dwarf2read.c (alloc_discriminant_info): Fix default_index
12240         assertion.  Add assertion for discriminant_index.
12241         (quirk_rust_enum): Use correct base type name in univariant case.
12242
12243 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
12244
12245         * record.c (get_call_history_modifiers): Return a
12246         record_print_flags.
12247         (cmd_record_call_history): Adjust.
12248         * record-btrace.c (record_btrace_call_history): Adjust.
12249         (record_btrace_call_history_range): Adjust.
12250         (record_btrace_call_history_from): Adjust.
12251         * target-debug.h (target_debug_print_record_print_flags): New.
12252         * target-delegates.c: Re-generate.
12253         * target.c (target_call_history): Change flags type.
12254         (target_call_history_from): Likewise.
12255         (target_call_history_range): Likewise.
12256         * target.h (struct target_ops) <target_call_history>: Likewise.
12257         (target_call_history_from): Likewise.
12258         (target_call_history_range): Likewise.
12259
12260 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12261             Simon Marchi  <simon.marchi@polymtl.ca>
12262
12263         * common/common-utils.c: Include "sys/stat.h".
12264         (is_regular_file): Move here from "source.c"; change return
12265         type to "bool".
12266         * common/common-utils.h (is_regular_file): New prototype.
12267         * common/pathstuff.c (contains_dir_separator): New function.
12268         * common/pathstuff.h (contains_dir_separator): New prototype.
12269         * source.c: Don't include "sys/stat.h".
12270         (is_regular_file): Move to "common/common-utils.c".
12271
12272 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12273
12274         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
12275         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
12276         * auto-load.c: Include "common/pathstuff.h".
12277         * common/common-def.h (current_directory): Move here.
12278         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
12279         function.
12280         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
12281         prototype.
12282         * common/pathstuff.c: New file.
12283         * common/pathstuff.h: New file.
12284         * compile/compile.c: Include "common/pathstuff.h".
12285         * defs.h (current_directory): Move to "common/common-defs.h".
12286         * dwarf2read.c: Include "common/pathstuff.h".
12287         * exec.c: Likewise.
12288         * guile/scm-safe-call.c: Likewise.
12289         * linux-thread-db.c: Likewise.
12290         * main.c: Likewise.
12291         * nto-tdep.c: Likewise.
12292         * objfiles.c: Likewise.
12293         * source.c: Likewise.
12294         * symtab.c: Likewise.
12295         * utils.c: Include "common/pathstuff.h".
12296         (gdb_realpath): Move to "common/pathstuff.c".
12297         (gdb_realpath_keepfile): Likewise.
12298         (gdb_abspath): Likewise.
12299         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
12300         (gdb_realpath_keepfile): Likewise.
12301         (gdb_abspath): Likewise.
12302
12303 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
12304
12305         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
12306         wildcard process pid for super_resume for kernels with a
12307         specific bug.
12308
12309 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
12310
12311         * compile/compile.c (get_args): Add additional comments
12312         explaining function.
12313
12314 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
12315             Tom Tromey  <tom@tromey.com>
12316
12317         * target.h (memory_write_request_s): Remove typedef.  Don't define
12318         VEC.
12319         (target_write_memory_blocks): Change argument to std::vector.
12320         (struct memory_write_request): Add constructor.
12321         * target-memory.c (compare_block_starting_address): Return bool.
12322         Change argument types.
12323         (claim_memory): Change arguments to use std::vector.
12324         (split_regular_and_flash_blocks, blocks_to_erase)
12325         (compute_garbled_blocks): Likewise.
12326         (cleanup_request_data, cleanup_write_requests_vector): Remove.
12327         (target_write_memory_blocks): Change argument to std::vector.
12328         * symfile.c (struct load_section_data): Add constructor and
12329         destructor.  Use std::vector for "requests".
12330         (struct load_progress_data): Add initializers.
12331         (load_section_callback): Update.  Use "new".
12332         (clear_memory_write_data): Remove.
12333         (generic_load): Update.
12334
12335 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
12336
12337         * arch/aarch64.h: Use common/tdesc.h.
12338
12339 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12340
12341         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
12342         architecture with a 64-bit ABI.
12343
12344 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12345
12346         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
12347         ahead of target description loading.
12348
12349 2018-02-26  Tom Tromey  <tom@tromey.com>
12350
12351         * stack.c (backtrace_command_1): Update.
12352         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
12353         of "flags".
12354         * python/py-framefilter.c (py_print_frame)
12355         (gdbpy_apply_frame_filter): Change type of "flags".
12356         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
12357         of "flags".
12358         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
12359         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
12360         * extension.h (enum frame_filter_flag): Rename from
12361         frame_filter_flags.
12362         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
12363         (apply_ext_lang_frame_filter): Change type of "flags".
12364         * extension.c (apply_ext_lang_frame_filter): Change type of
12365         "flags".
12366         * extension-priv.h (struct extension_language_ops)
12367         <apply_frame_filter>: Change type of "flags".
12368
12369 2018-02-26  Tom Tromey  <tom@tromey.com>
12370
12371         PR python/16497:
12372         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
12373         off-by-one in py_end computation.
12374         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
12375         PRINT_MORE_FRAMES.
12376         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
12377         constant.
12378
12379 2018-02-26  Tom Tromey  <tom@tromey.com>
12380
12381         * dwarf2read.c (struct variant_field): New.
12382         (struct nextfield) <variant>: New field.
12383         (dwarf2_add_field): Handle DW_TAG_variant_part.
12384         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
12385         discriminated union.
12386         (read_structure_type): Handle DW_TAG_variant_part.
12387         (handle_struct_member_die): New function, extracted from
12388         process_structure_scope.  Handle DW_TAG_variant.
12389         (process_structure_scope): Handle discriminated unions.  Call
12390         handle_struct_member_die.
12391
12392 2018-02-26  Tom Tromey  <tom@tromey.com>
12393
12394         * rust-lang.h (rust_last_path_segment): Declare.
12395         * rust-lang.c (rust_last_path_segment): Now public.  Change
12396         contract.
12397         (struct disr_info): Remove.
12398         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
12399         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
12400         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
12401         (rust_enum_p, rust_enum_variant): New function.
12402         (rust_underscore_fields): Remove "offset" parameter.
12403         (rust_print_enum): New function.
12404         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
12405         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
12406         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
12407         enums.
12408         (rust_internal_print_type): New function, from rust_print_type.
12409         Remove enum code.
12410         (rust_print_type): Call rust_internal_print_type.
12411         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
12412         Update enum handling.
12413         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
12414         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
12415         (rust_union_quirks): New functions.
12416         (process_full_comp_unit, process_full_type_unit): Call
12417         rust_union_quirks.
12418         (process_structure_scope): Update rust_unions if necessary.
12419
12420 2018-02-26  Tom Tromey  <tom@tromey.com>
12421
12422         * value.h (value_union_variant): Declare.
12423         * valops.c (value_union_variant): New function.
12424         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
12425         (struct discriminant_info): New.
12426         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
12427         enumerator.
12428         (struct main_type) <flag_discriminated_union>: New field.
12429
12430 2018-02-26  Tom Tromey  <tom@tromey.com>
12431
12432         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12433         unittests/unpack-selftests.c.
12434         * unittests/unpack-selftests.c: New file.
12435         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
12436
12437 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12438
12439         * dwarf2read.c (struct partial_die_info) <read>: New method.
12440         (read_partial_die): Remove the declaration.
12441         (load_partial_dies): Update.
12442         (partial_die_info::partial_die_info):
12443         (read_partial_die): Change it to partial_die_info::read.
12444
12445 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12446
12447         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
12448         (fixup_partial_die): Remove declaration.
12449         (scan_partial_symbols): Update.
12450         (partial_die_parent_scope): Likewise.
12451         (partial_die_full_name): Likewise.
12452         (fixup_partial_die): Change it to partial_die_info::fixup.
12453
12454 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12455
12456         * dwarf2read.c (read_partial_die): Update the declaration.
12457         (load_partial_dies): Caller update.
12458         (read_partial_die): Remove one argument abbrev_len.
12459
12460 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12461
12462         * dwarf2read.c (struct partial_die_info): Add ctor, delete
12463         assignment operator.
12464         (load_partial_dies): Use ctor and copy ctor.
12465         (read_partial_die): Update.
12466         (dwarf2_cu::find_partial_die): Use ctor.
12467
12468 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12469
12470         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
12471         (find_partial_die_in_comp_unit): Change it to
12472         dwarf2_cu::find_partial_die.
12473         (find_partial_die): Update.
12474
12475 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12476
12477         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
12478         is NULL.
12479
12480 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12481
12482         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
12483
12484 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
12485
12486         * arch/amd64.h: Use common/tdesc.h.
12487         * arch/i386.c: Likewise.
12488         * arch/i386.h: Likewise.
12489         * arch/tic6x.c: Likewise.
12490         * arch/tdesc.h: Move file from here...
12491         * common/tdesc.h: ...to here.
12492         * features/aarch64-core.c: Regenerate.
12493         * features/aarch64-fpu.c: Regenerate.
12494         * features/i386/32bit-avx.c: Regenerate.
12495         * features/i386/32bit-avx512.c: Regenerate.
12496         * features/i386/32bit-core.c: Regenerate.
12497         * features/i386/32bit-linux.c: Regenerate.
12498         * features/i386/32bit-mpx.c: Regenerate.
12499         * features/i386/32bit-pkeys.c: Regenerate.
12500         * features/i386/32bit-sse.c: Regenerate.
12501         * features/i386/64bit-avx.c: Regenerate.
12502         * features/i386/64bit-avx512.c: Regenerate.
12503         * features/i386/64bit-core.c: Regenerate.
12504         * features/i386/64bit-linux.c: Regenerate.
12505         * features/i386/64bit-mpx.c: Regenerate.
12506         * features/i386/64bit-pkeys.c: Regenerate.
12507         * features/i386/64bit-segments.c: Regenerate.
12508         * features/i386/64bit-sse.c: Regenerate.
12509         * features/i386/x32-core.c: Regenerate.
12510         * features/tic6x-c6xp.c: Regenerate.
12511         * features/tic6x-core.c: Regenerate.
12512         * features/tic6x-gp.c: Regenerate.
12513         * target-descriptions.c: Use common/tdesc.h.
12514         * target-descriptions.h: Likewise.
12515
12516 2018-02-24  Tom Tromey  <tom@tromey.com>
12517
12518         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
12519         (try_thread_db_load_from_dir, thread_db_load_search): Use
12520         std::string.
12521         (info_auto_load_libthread_db_compare): Return bool.  Change
12522         argument types.
12523         (info_auto_load_libthread_db): Use std::vector, std::string.
12524         Remove cleanups.
12525
12526 2018-02-24  Tom Tromey  <tom@tromey.com>
12527
12528         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
12529         std::string.
12530         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
12531         std::string*.
12532         * gdbarch.c: Rebuild.
12533         * gdbarch.h: Rebuild.
12534         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
12535         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
12536         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
12537         std::string*.
12538
12539 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
12540
12541         * gdbtypes.h (sect_offset): Change type to uint64_t.
12542         (sect_offset_str): New function.
12543         * dwarf2read.c (create_addrmap_from_aranges): Use
12544         sect_offset_str.
12545         (error_check_comp_unit_head): Likewise.
12546         (create_debug_type_hash_table): Likewise.
12547         (read_cutu_die_from_dwo): Likewise.
12548         (init_cutu_and_read_dies): Likewise.
12549         (init_cutu_and_read_dies_no_follow): Likewise.
12550         (process_psymtab_comp_unit_reader): Likewise.
12551         (partial_die_parent_scope): Likewise.
12552         (peek_die_abbrev): Likewise.
12553         (process_queue): Likewise.
12554         (dwarf2_physname): Likewise.
12555         (read_namespace_alias): Likewise.
12556         (read_import_statement): Likewise.
12557         (create_dwo_cu_reader): Likewise.
12558         (create_cus_hash_table): Likewise.
12559         (lookup_dwo_cutu): Likewise.
12560         (inherit_abstract_dies): Likewise.
12561         (read_func_scope): Likewise.
12562         (read_call_site_scope): Likewise.
12563         (dwarf2_add_member_fn): Likewise.
12564         (read_common_block): Likewise.
12565         (read_module_type): Likewise.
12566         (read_typedef): Likewise.
12567         (read_subrange_type): Likewise.
12568         (load_partial_dies): Likewise.
12569         (read_partial_die): Likewise.
12570         (find_partial_die): Likewise.
12571         (read_str_index): Likewise.
12572         (dwarf2_string_attr): Likewise.
12573         (build_error_marker_type): Likewise.
12574         (lookup_die_type): Likewise.
12575         (dump_die_shallow): Likewise.
12576         (follow_die_ref): Likewise.
12577         (dwarf2_fetch_die_loc_sect_off): Likewise.
12578         (dwarf2_fetch_constant_bytes): Likewise.
12579         (follow_die_sig): Likewise.
12580         (get_signatured_type): Likewise.
12581         (get_DW_AT_signature_type): Likewise.
12582         (dwarf2_find_containing_comp_unit): Likewise.
12583         (set_die_type): Likewise.
12584
12585 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
12586
12587         * arch/aarch64.c: Include "common-defs.h".
12588         * arch/amd64.c: Likewise.
12589         * arch/i386.c: Likewise.
12590
12591 2018-02-21  Tom Tromey  <tom@tromey.com>
12592
12593         * value.h: (extract_field_op): Update.
12594         * eval.c (extract_field_op): Return a const char *.
12595         * expression.h (parse_expression_for_completion): Update.
12596         * completer.c (complete_expression): Update.
12597         (add_struct_fields): Make fieldname const.
12598         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
12599         (mark_completion_tag, parse_exp_in_context_1): Update.
12600         (parse_expression_for_completion): Change "name" to
12601         unique_xmalloc_ptr*.
12602
12603 2018-02-21  Tom Tromey  <tom@tromey.com>
12604
12605         * infcall.c (call_function_by_hand_dummy): Use std::vector.
12606
12607 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12608
12609         * avr-tdep.c (avr_read_pc): Change parameter type to
12610         readable_regcache.
12611         * gdbarch.sh (read_pc): Likewise.
12612         * gdbarch.c: Re-generated.
12613         * gdbarch.h: Re-generated.
12614         * hppa-tdep.c (hppa_read_pc): Change parameter type to
12615         readable_regcache.
12616         * ia64-tdep.c (ia64_read_pc): Likewise.
12617         * mips-tdep.c (mips_read_pc): Likewise.
12618         * spu-tdep.c (spu_read_pc): Likewise.
12619
12620 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12621
12622         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
12623         * regcache-dump.c: New file.
12624         * regcache.c: Move register_dump to regcache-dump.c.
12625         (maintenance_print_registers): Likewise.
12626         (maintenance_print_raw_registers): Likewise.
12627         (maintenance_print_cooked_registers): Likewise.
12628         (maintenance_print_register_groups): Likewise.
12629         (maintenance_print_remote_registers): Likewise.
12630         (_initialize_regcache): Likewise.
12631         * regcache.h (register_dump): Moved from regcache.c.
12632
12633 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12634
12635         * regcache.c (regcache::regcache): Update.
12636         (regcache::invalidate): Move it to detached_regcache::invalidate.
12637         (get_thread_arch_aspace_regcache): Update.
12638         (regcache::raw_update): Update.
12639         (regcache::cooked_read): Remove some code.
12640         (regcache::cooked_read_value): Likewise.
12641         (regcache::raw_write): Remove assert on m_readonly_p.
12642         (regcache::raw_supply_integer): Move it to
12643         detached_regcache::raw_supply_integer.
12644         (regcache::raw_supply_zeroed): Likewise.
12645         * regcache.h (detached_regcache) <raw_supply_integer>: New
12646         declaration.
12647         <raw_supply_zeroed, invalidate>: Likewise.
12648         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
12649         <invalidate>: Likewise.
12650         <m_readonly_p>: Removed.
12651
12652 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12653
12654         * infcmd.c (get_return_value): Let stop_regs point to
12655         get_current_regcache.
12656         * regcache.c (regcache::regcache): Remove.
12657         (register_dump_reg_buffer): New class.
12658         (regcache_print): Adjust.
12659         * regcache.h (regcache): Remove constructors.
12660
12661 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12662
12663         * regcache.c (class register_dump): New class.
12664         (register_dump_regcache, register_dump_none): New class.
12665         (register_dump_remote, register_dump_groups): New class.
12666         (regcache_print): Update.
12667         * regcache.h (regcache_dump_what): Move it to regcache.c.
12668         (regcache) <dump>: Remove.
12669
12670 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12671
12672         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
12673          reg_buffer_rw *.
12674         (jit_unwind_reg_set_impl): Call raw_supply.
12675         (jit_frame_sniffer): Use reg_buffer_rw.
12676         * record-full.c (record_full_core_regbuf): Change its type.
12677         (record_full_core_open_1): Use reg_buffer_rw.
12678         (record_full_close): Likewise.
12679         (record_full_core_fetch_registers): Use regcache->raw_supply.
12680         (record_full_core_store_registers): Likewise.
12681         * regcache.c (regcache::get_register_status): Move it to
12682         reg_buffer.
12683         (regcache_raw_set_cached_value): Remove.
12684         (regcache::raw_set_cached_value): Remove.
12685         (regcache::raw_write): Call raw_supply.
12686         (regcache::raw_supply): Move it to reg_buffer_rw.
12687         * regcache.h (regcache_raw_set_cached_value): Remove.
12688         (reg_buffer_rw): New class.
12689
12690 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12691
12692         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
12693         readonly_detached_regcache.
12694         (dummy_frame_prev_register): Use regcache->cooked_read.
12695         * frame.c (frame_save_as_regcache): Change return type.
12696         (frame_pop): Update.
12697         * frame.h (frame_save_as_regcache): Update declaration.
12698         * inferior.h (get_infcall_suspend_state_regcache): Update
12699         declaration.
12700         * infrun.c (infcall_suspend_state) <registers>: use
12701         readonly_detached_regcache.
12702         (save_infcall_suspend_state): Don't use regcache_dup.
12703         (get_infcall_suspend_state_regcache): Change return type.
12704         * linux-fork.c (struct fork_info) <savedregs>: Change to
12705         readonly_detached_regcache.
12706         <pc>: New field.
12707         (fork_save_infrun_state): Don't use regcache_dup.
12708         (info_checkpoints_command): Adjust.
12709         * mi/mi-main.c (register_changed_p): Update declaration.
12710         (mi_cmd_data_list_changed_registers): Use
12711         readonly_detached_regcache.
12712         (register_changed_p): Change parameter type to
12713         readonly_detached_regcache.
12714         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
12715         readonly_detached_regcache.
12716         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
12717         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
12718         New.
12719         (regcache::save): Move it to reg_buffer.
12720         (regcache::restore): Change parameter type.
12721         (regcache_dup): Remove.
12722         * regcache.h (reg_buffer) <save>: New method.
12723         (readonly_detached_regcache): New class.
12724         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
12725         readonly_detached_regcache.
12726         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
12727
12728 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12729
12730         * frame.c (frame_save_as_regcache): Use regcache method save.
12731         (frame_pop): Use regcache method restore.
12732         * infrun.c (restore_infcall_suspend_state): Likewise.
12733         * linux-fork.c (fork_load_infrun_state): Likewise.
12734         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
12735         save.
12736         * regcache.c (regcache_save): Remove.
12737         (regcache::restore): More asserts.
12738         (regcache_cpy): Remove.
12739         * regcache.h (regcache_save): Remove the declaration.
12740         (regcache::restore): Move from private to public.
12741         Remove the friend declaration of regcache_cpy.
12742         (regcache_cpy): Remove declaration.
12743
12744 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12745
12746         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
12747         parameter type to 'readable_regcache *'.
12748         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
12749         * arm-tdep.c (arm_neon_quad_read): Likewise.
12750         (arm_pseudo_read): Likewise.
12751         * avr-tdep.c (avr_pseudo_register_read): Likewise.
12752         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
12753         * frv-tdep.c (frv_pseudo_register_read): Likewise.
12754         * gdbarch.c: Re-generated.
12755         * gdbarch.h: Re-generated.
12756         * gdbarch.sh (pseudo_register_read): Change parameter type to
12757         'readable_regcache *'.
12758         (pseudo_register_read_value): Likewise.
12759         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
12760         (h8300_pseudo_register_read): Likewise.
12761         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
12762         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
12763         (i386_pseudo_register_read_into_value): Likewise.
12764         (i386_pseudo_register_read_value): Likewise.
12765         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
12766         declaration.
12767         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
12768         * m32c-tdep.c (m32c_raw_read): Likewise.
12769         (m32c_read_flg): Likewise.
12770         (m32c_banked_register): Likewise.
12771         (m32c_banked_read): Likewise.
12772         (m32c_sb_read): Likewise.
12773         (m32c_part_read): Likewise.
12774         (m32c_cat_read): Likewise.
12775         (m32c_r3r2r1r0_read): Likewise.
12776         (m32c_pseudo_register_read): Likewise.
12777         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
12778         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
12779         (mep_pseudo_cr64_read): Likewise.
12780         (mep_pseudo_register_read): Likewise.
12781         * mips-tdep.c (mips_pseudo_register_read): Likewise.
12782         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
12783         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
12784         * regcache.c (regcache::raw_read): Move it to readable_regcache.
12785         (regcache::cooked_read): Likewise.
12786         (regcache::cooked_read_value): Likewise.
12787         (regcache_cooked_read_signed):
12788         (regcache::cooked_read): Likewise.
12789         * regcache.h (readable_regcache): New class.
12790         (regcache): Inherit readable_regcache.  Move some methods to
12791         readable_regcache.
12792         * rl78-tdep.c (rl78_pseudo_register_read): Change
12793         parameter type to 'readable_regcache *'.
12794         * rs6000-tdep.c (do_regcache_raw_read): Remove.
12795         (e500_pseudo_register_read): Change parameter type to
12796         'readable_regcache *'.
12797         (dfp_pseudo_register_read): Likewise.
12798         (vsx_pseudo_register_read): Likewise.
12799         (efpr_pseudo_register_read): Likewise.
12800         * s390-tdep.c (s390_pseudo_register_read): Likewise.
12801         * sh-tdep.c (sh_pseudo_register_read): Likewise.
12802         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
12803         (sh64_pseudo_register_read): Likewise.
12804         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
12805         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
12806         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
12807         (spu_pseudo_register_read): Likewise.
12808         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
12809         (xtensa_pseudo_register_read): Likewise.
12810
12811 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12812
12813         * regcache.c (regcache::regcache): Call reg_buffer ctor.
12814         (regcache::arch): Move it to reg_buffer::arch.
12815         (regcache::register_buffer): Likewise.
12816         (regcache::assert_regnum): Likewise.
12817         (regcache::num_raw_registers): Likewise.
12818         * regcache.h (reg_buffer): New class.
12819         (regcache): Inherit reg_buffer.
12820
12821 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
12822
12823         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
12824         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
12825
12826 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
12827
12828         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
12829
12830 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
12831
12832         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
12833         (SFILES): Remove common/*.c files.
12834         (COMMON_OBS): Remove some *.o files built from common/*.c files.
12835         * common/common.host: Add common reference.
12836         * configure.ac: Likewise.
12837         * configure: Regenerate.
12838
12839 2018-02-16  Yao Qi  <yao.qi@linaro.org>
12840
12841         * block.c (block_namespace_info): Inherit allocate_on_obstack.
12842         (block_initialize_namespace): Use new.
12843         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
12844         (dwarf2_free_objfile): Use delete.
12845         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
12846         (copy_type_recursive): Use new.
12847         * gdb_obstack.h (allocate_on_obstack): New.
12848
12849 2018-02-15  Yao Qi  <yao.qi@linaro.org>
12850
12851         PR gdb/22849
12852         * inferior.c (exit_inferior_1): Reset inf->control.
12853
12854 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
12855
12856         * ada-lang.c (ada_to_fixed_value_create): Delete advance
12857         declaration.
12858
12859 2018-02-14  Pedro Alves  <palves@redhat.com>
12860
12861         * frame-unwind.c (frame_unwind_try_unwinder): Always call
12862         frame_cleanup_after_sniffer on exception.
12863
12864 2018-02-14  Tom Tromey  <tom@tromey.com>
12865
12866         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
12867         const.
12868         (solib_bfd_open): Make pathname const.
12869         * solib.c (solib_bfd_open): Make pathname const.
12870         * solib-spu.c (spu_bfd_fopen): Make name const.
12871         (spu_bfd_open): Make pathname const.
12872         * solib-darwin.c (darwin_bfd_open): Make pathname const.
12873         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
12874
12875 2018-02-14  Tom Tromey  <tom@tromey.com>
12876
12877         * symfile.c (symfile_bfd_open): Update.
12878         * source.h (openp, source_full_path_of, find_and_open_source):
12879         Change argument type to unique_xmalloc_ptr.
12880         * source.c (openp): Take a unique_xmalloc_ptr.
12881         (source_full_path_of, find_and_open_source): Likewise.
12882         (open_source_file, symtab_to_fullname): Update.
12883         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
12884         unique_xmalloc_ptr.
12885         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
12886         (exec_file_find): Update.
12887         * psymtab.c (psymtab_to_fullname): Update.
12888         * nto-tdep.h (nto_find_and_open_solib): Update.
12889         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
12890         unique_xmalloc_ptr.
12891         * exec.c (exec_file_attach): Update.
12892         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
12893         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
12894
12895 2018-02-14  Tom Tromey  <tom@tromey.com>
12896
12897         * solib.c: Include source.h.
12898         * nto-tdep.c: Include source.h.
12899         * mi/mi-cmd-env.c: Include source.h.
12900         * infcmd.c: Include source.h.
12901         * exec.c: Include source.h.
12902         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
12903         (add_path, directory_switch, source_path, init_source_path): Move
12904         declarations...
12905         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
12906         (add_path, directory_switch, source_path, init_source_path):
12907         ...here.
12908
12909 2018-02-14  Tom Tromey  <tom@tromey.com>
12910
12911         * solist.h (exec_file_find, solib_find): Return
12912         unique_xmalloc_ptr.
12913         (solib_bfd_fopen): Take a const char *.
12914         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
12915         (exec_file_find, solib_find): Likewise.
12916         (solib_bfd_fopen): Do not take ownership of "pathname".
12917         (solib_bfd_open): Use unique_xmalloc_ptr.
12918         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
12919         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
12920         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
12921         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
12922
12923 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
12924
12925         * ada-lang.c (name_match_type_from_name): Remove reference to
12926         ada_name_for_lookup in function's documentation.
12927         * ada-lang.h (ada_name_for_lookup): Delete declaration.
12928
12929 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
12930
12931         * defs.h (enum openp_flags): New enum.
12932         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
12933         Move to enum openp_flags.
12934         (openp_flags): New enum flags.
12935         (openp): Change parameter type to openp_flags.
12936         * source.c (openp): Change parameter type to openp_flags.
12937         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
12938         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
12939
12940 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
12941
12942         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
12943         per-command.
12944
12945 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12946
12947         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
12948         into...
12949         (class dwarf2_queue_guard): ...the destructor of this new class.
12950         (dw2_do_instantiate_symtab): Create instance of the new class
12951         dwarf2_queue_guard, remove cleanup.
12952
12953 2018-02-09  Tom Tromey  <tom@tromey.com>
12954
12955         * source.c (find_source_lines): Don't reference past the end of
12956         the vector.
12957
12958 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12959
12960         * remote.c (remote_btrace_maybe_reopen): Change error message.
12961         * btrace.c (btrace_enable): Likewise.
12962         (parse_xml_btrace): Likewise.
12963         (parse_xml_btrace_conf): Likewise.
12964
12965 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12966
12967         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
12968         (linux_enable_pt, linux_enable_bts): Call
12969         diagnose_perf_event_open_fail.
12970
12971 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12972
12973         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
12974         Remove parameter and change return type.  Update callers.  Move it.
12975         (linux_enable_bts, linux_enable_pt): Improve error message.
12976         (linux_enable_pt): Remove zero buffer size check.
12977         (linux_enable_btrace): Improve error messages.  Remove NULL return
12978         check.
12979
12980 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12981
12982         * btrace.c (btrace_enable): Remove target_supports_btrace call.
12983         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
12984         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
12985         (linux_supports_pt, linux_supports_btrace): Remove.
12986         (linux_enable_bts): Call cpu_supports_bts.
12987         * nat/linux-btrace.h (linux_supports_btrace): Remove.
12988         * remote.c (remote_supports_btrace): Remove.
12989         (init_remote_ops): Remove remote_supports_btrace.
12990         * target-delegates.c: Regenerated.
12991         * target.c (target_supports_btrace): Remove.
12992         * target.h (target_ops) <to_supports_btrace>: Remove
12993         (target_supports_btrace): Remove.
12994         * x86-linux-nat.c (x86_linux_create_target): Remove
12995         linux_supports_btrace.
12996
12997 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12998
12999         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
13000         btrace failed.
13001         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
13002         exception and use message in own exception.
13003
13004 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13005
13006         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
13007         (perf_event_pt_event_type): Use gdb_file_up.
13008         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
13009         scoped_fd, and scoped_mmap.
13010
13011 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13012
13013         * common/scoped_mmap.h: New.
13014         * unittests/scoped_mmap-selftest.c: New.
13015         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13016         unittests/scoped_mmap-selftest.c.
13017
13018 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13019
13020         * common/scoped_fd.h: New.
13021         * unittests/scoped_fd-selftest.c: New.
13022         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13023         unittests/scoped_fd-selftest.c.
13024
13025 2018-02-09  Tom Tromey  <tom@tromey.com>
13026
13027         * auto-load.c (auto_load_section_scripts): Use
13028         gdb::unique_xmalloc_ptr.
13029
13030 2018-02-09  Tom Tromey  <tom@tromey.com>
13031
13032         * auto-load.c (execute_script_contents): Use std::string.
13033
13034 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
13035
13036         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
13037         Python function, rather than a new command.
13038
13039 2018-02-08  Tom Tromey  <tom@tromey.com>
13040
13041         * solib.c (solib_find_1): Use std::string.
13042         (solib_bfd_fopen): Use unique_xmalloc_ptr.
13043
13044 2018-02-08  Tom Tromey  <tom@tromey.com>
13045
13046         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
13047
13048 2018-02-08  Tom Tromey  <tom@tromey.com>
13049
13050         * source.c (find_source_lines): Use gdb::def_vector.
13051
13052 2018-02-08  Tom Tromey  <tom@tromey.com>
13053
13054         * macrocmd.c (struct temporary_macro_definition): New.
13055         (macro_define_command): Use temporary_macro_definition.  Remove
13056         cleanups.
13057         (free_macro_definition_ptr): Remove.
13058
13059 2018-02-08  Tom Tromey  <tom@tromey.com>
13060
13061         * macroexp.c (maybe_expand): Use std::string.
13062
13063 2018-02-08  Tom Tromey  <tom@tromey.com>
13064
13065         * macroexp.c (struct macro_buffer): Add initializers for some
13066         members.
13067         (init_buffer, init_shared_buffer, free_buffer)
13068         (free_buffer_return_text): Remove.
13069         (macro_buffer): New constructors.
13070         (~macro_buffer): New destructor.
13071         (macro_buffer::set_shared): New method.
13072         (macro_buffer::resize_buffer, macro_buffer::appendc)
13073         (macro_buffer::appendmem): Now methods, not free functions.
13074         (set_token, append_tokens_without_splicing, stringify)
13075         (macro_stringify): Update.
13076         (gather_arguments): Change return type.  Remove argc_p argument,
13077         add args_ptr argument.  Use std::vector.
13078         (substitute_args): Remove argc argument.  Accept std::vector.
13079         (expand): Update.  Use std::vector.
13080         (scan, macro_expand, macro_expand_next): Update.
13081
13082 2018-02-08  Tom Tromey  <tom@tromey.com>
13083
13084         * symtab.c (default_collect_symbol_completion_matches_break_on):
13085         Use unique_xmalloc_ptr.
13086         * macroscope.h: (sal_macro_scope, user_macro_scope)
13087         (default_macro_scope): Return unique_xmalloc_ptr.
13088         * macroscope.c (sal_macro_scope, user_macro_scope)
13089         (default_macro_scope): Return unique_xmalloc_ptr.
13090         * macroexp.h (macro_expand, macro_expand_once): Return
13091         unique_xmalloc_ptr.
13092         * macroexp.c (macro_expand, macro_expand_once): Return
13093         unique_xmalloc_ptr.
13094         * macrocmd.c (macro_expand_command, macro_expand_once_command)
13095         (info_macro_command, info_macros_command): Use
13096         unique_xmalloc_ptr.
13097         * compile/compile-c-support.c (write_macro_definitions): Use
13098         unique_xmalloc_ptr.
13099         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
13100
13101 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
13102
13103         * value.c (value_static_field): Assign field type instead of
13104         containing type when returning an optimized out value.
13105
13106 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13107
13108         * ft32-tdep.c (ft32_read_pc): Remove.
13109         (ft32_write_pc): Remove.
13110         (ft32_gdbarch_init): Update.
13111         * m32r-tdep.c (m32r_read_pc): Remove.
13112         (m32r_gdbarch_init): Update.
13113         * mep-tdep.c (mep_read_pc): Remove.
13114         (mep_gdbarch_init): Update.
13115         * microblaze-tdep.c (microblaze_write_pc): Remove.
13116         (microblaze_gdbarch_init): Update.
13117         * mn10300-tdep.c (mn10300_read_pc): Remove.
13118         (mn10300_write_pc): Remove.
13119         (mn10300_gdbarch_init): Update.
13120         * moxie-tdep.c (moxie_read_pc): Remove.
13121         (moxie_write_pc): Remove.
13122         (moxie_gdbarch_init): Update.
13123
13124 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13125
13126         * expprint.c (print_subexp_standard): Handle
13127         OP_F77_UNDETERMINED_ARGLIST.
13128         (dump_subexp_body_standard): Likewise.
13129
13130 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
13131
13132         * target-descriptions.c (tdesc_element_visitor) Add empty
13133         implementations.
13134         (tdesc_type): Move make_gdb_type from here.
13135         (tdesc_type_builtin): Likewise.
13136         (tdesc_type_vector): Likewise.
13137         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
13138         (make_gdb_type_struct): Move from tdesc_type_with_fields.
13139         (make_gdb_type_union): Likewise.
13140         (make_gdb_type_flags): Likewise.
13141         (make_gdb_type_enum): Likewise.
13142         (make_gdb_type): New function.
13143         (tdesc_register_type): Use static make_gdb_type.
13144
13145 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
13146
13147         * infcmd.c (default_print_one_register_info): Align natural-format
13148         column values consistently one under another.
13149         (pad_to_column): New function.
13150
13151 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
13152
13153         * dwarf2read.c (dwarf2_physname): Move commment.
13154
13155 2018-02-01  Leszek Swirski  <leszeks@google.com>
13156
13157         * varobj.c (varobj_formatted_print_options): Allow recursive
13158         pretty printing if pretty printing is enabled.
13159
13160 2018-02-01  Leszek Swirski  <leszeks@google.com>
13161
13162         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
13163         names after a structop as a filename.
13164
13165 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13166
13167         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
13168         (arm_record_coproc_data_proc): Likewise.
13169
13170 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13171
13172         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
13173
13174 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
13175
13176         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
13177         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
13178
13179 2018-01-31  Pedro Alves  <palves@redhat.com>
13180
13181         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
13182         * inflow.c (child_terminal_save_inferior): Wrap reference to
13183         tcgetpgrp in HAVE_TERMIOS_H.
13184         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
13185         _WIN32.
13186         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
13187         always iterate over all inferiors.
13188         (gdbsim_cntrl_c): Adjust.
13189         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
13190
13191 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13192
13193         * gdbtypes.c (lookup_array_range_type): Make sure the array's
13194         index type is objfile-owned if the element type is as well.
13195
13196 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13197
13198         GDB 8.1 released.
13199
13200 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13201
13202         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
13203         "features/s390x-linux64.c".
13204         (_initialize_s390_linux_tdep): Remove initialization of tdescs
13205         s390_linux32 and s390x_linux64.
13206         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
13207         default tdesc.
13208         * s390-tdep.c: Include "features/s390-linux32.c" and
13209         "features/s390x-linux64.c".
13210         (s390_tdesc_valid): Add check for tdesc_has_registers.
13211         (s390_gdbarch_init): Make sure there is always a valid tdesc.
13212         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
13213         tdesc_s390x_linux64.
13214         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
13215         tdesc_s390x_linux64 to...
13216         * s390-tdep.h: ...here.
13217
13218 2018-01-30  Pedro Alves  <palves@redhat.com>
13219
13220         PR gdb/13211
13221         * config.in, configure: Regenerate.
13222         * configure.ac: Check for getpgid.
13223         * go32-nat.c (go32_pass_ctrlc): New.
13224         (go32_target): Install it.
13225         * inf-child.c (inf_child_target): Install
13226         child_terminal_save_inferior, child_pass_ctrlc and
13227         child_interrupt.
13228         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
13229         (inf_ptrace_target): No longer install it.
13230         * infcmd.c (interrupt_target_1): Adjust.
13231         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
13232         (child_interrupt): Declare.
13233         (inferior::terminal_state): New.
13234         * inflow.c (struct terminal_info): Update comments.
13235         (inferior_process_group): Delete.
13236         (terminal_is_ours): Delete.
13237         (gdb_tty_state): New.
13238         (child_terminal_init): Adjust.
13239         (is_gdb_terminal, sharing_input_terminal_1)
13240         (sharing_input_terminal): New functions.
13241         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
13242         Set the process's actual process group in the foreground if
13243         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
13244         mark terminal as the inferior's if not sharing GDB's terminal.
13245         Don't check attach_flag.
13246         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
13247         pass down a target_terminal_state.
13248         (child_terminal_save_inferior): New, factored out from ...
13249         (child_terminal_ours_1): ... this.  Handle
13250         target_terminal_state::is_ours_for_output.
13251         (child_interrupt, child_pass_ctrlc): New.
13252         (inflow_inferior_exit): Clear the inferior's terminal_state.
13253         (copy_terminal_info): Copy the inferior's terminal state.
13254         (_initialize_inflow): Remove reference to terminal_is_ours.
13255         * inflow.h (inferior_process_group): Delete.
13256         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
13257         * procfs.c (procfs_target): Don't install procfs_interrupt.
13258         (procfs_interrupt): Delete.
13259         * remote.c (remote_serial_quit_handler): Adjust.
13260         (remote_interrupt): Remove ptid parameter.  Adjust.
13261         * target-delegates.c: Regenerate.
13262         * target.c: Include "terminal.h".
13263         (target_terminal::terminal_state): Rename to ...
13264         (target_terminal::m_terminal_state): ... this.
13265         (target_terminal::init): Adjust.
13266         (target_terminal::inferior): Adjust to per-inferior
13267         terminal_state.
13268         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
13269         (target_terminal::ours, target_terminal::ours_for_output): Use
13270         target_terminal_is_ours_kind.
13271         (target_interrupt): Remove ptid parameter.  Adjust.
13272         (default_target_pass_ctrlc): Adjust.
13273         * target.h (target_ops::to_terminal_save_inferior): New field.
13274         (target_ops::to_interrupt): Remove ptid_t parameter.
13275         (target_interrupt): Remove ptid_t parameter.  Update comment.
13276         (target_pass_ctrlc): Update comment.
13277         * target/target.h (target_terminal_state): New scoped enum,
13278         factored out of ...
13279         (target_terminal::terminal_state): ... here.
13280         (target_terminal::inferior): Update comments.
13281         (target_terminal::restore_inferior): New.
13282         (target_terminal::is_inferior, target_terminal::is_ours)
13283         (target_terminal::is_ours_for_output): Adjust.
13284         (target_terminal::scoped_restore_terminal_state): Adjust to
13285         rename, and call restore_inferior() instead of inferior().
13286         (target_terminal::scoped_restore_terminal_state::m_state): Change
13287         type.
13288         (target_terminal::terminal_state): Rename to ...
13289         (target_terminal::m_terminal_state): ... this and change type.
13290
13291 2018-01-30  Pedro Alves  <palves@redhat.com>
13292
13293         * linux-nat.c (wait_for_signal): New function.
13294         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
13295         directly.
13296         (async_terminal_is_ours)
13297         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
13298         (linux_nat_add_target): Don't override
13299         to_terminal_inferior/to_terminal_ours.
13300
13301 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
13302
13303         * remote.c (remote_follow_fork): Don't call "detach_inferior".
13304
13305 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
13306
13307         * dwarf2read.c (free_dwo_files): Add forward-declaration.
13308         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
13309         dwarf2_per_objfile_free here.
13310         (dwarf2_per_objfile_free): Remove.
13311         (_initialize_dwarf2_read): Don't register
13312         dwarf2_per_objfile_free as a registry cleanup.
13313
13314 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
13315
13316         Avoid compilation errors in MinGW native builds
13317
13318         The error is triggered by including python-internal.h, and the
13319         error message is:
13320
13321              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
13322                       from build-gnulib/import/math.h:27,
13323                       from d:/usr/Python26/include/pyport.h:235,
13324                       from d:/usr/Python26/include/Python.h:58,
13325                       from python/python-internal.h:94,
13326                       from python/py-arch.c:24:
13327              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
13328         using ::hypot;
13329                 ^~~~~
13330
13331         This happens because Python headers define 'hypot' to expand t
13332         '_hypot' in the Windows builds.
13333         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
13334         'hypoth'.  This avoids a compilation error.
13335
13336 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13337
13338         * MAINTAINERS (Write After Approval): Fix ordering.
13339
13340 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13341
13342         * MAINTAINERS (Write After Approval): Add Alan Hayward.
13343
13344 2018-01-26  Alan Modra  <amodra@gmail.com>
13345
13346         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
13347         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
13348         Remove nop.  Make const.  Comment.
13349         (powerpc32_plt_stub_so_2): New.
13350         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
13351         Correct count.  Update uses.
13352         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
13353         Move common code reading PLT entry word.  Correct
13354         powerpc32_plt_stub PLT address calculation.
13355         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
13356         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
13357         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
13358         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
13359         (ppc64_standard_linkage8): Likewise.
13360         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
13361         Correct insns description.
13362         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
13363
13364 2018-01-24  Pedro Alves  <palves@redhat.com>
13365
13366         GCC PR libstdc++/83906
13367         * gdbtypes.c (operator==(const dynamic_prop &,
13368         const dynamic_prop &)): New.
13369         (operator==(const range_bounds &, const range_bounds &)): New.
13370         (check_types_equal): Use them instead of memcmp.
13371         * gdbtypes.h (operator==(const dynamic_prop &,
13372         const dynamic_prop &)): Declare.
13373         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
13374         (operator==(const range_bounds &, const range_bounds &)): Declare.
13375         (operator!=(const range_bounds &, const range_bounds &)): Declare.
13376
13377 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13378
13379         * s390-linux-tdep.c (s390_record_address_mask)
13380         (s390_record_calc_disp_common, s390_record_calc_disp)
13381         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13382         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13383         (s390_process_record): Move to s390-tdep.c.
13384         (s390_linux_init_abi_any): Adjust.
13385         * s390-tdep.c (s390_record_address_mask)
13386         (s390_record_calc_disp_common, s390_record_calc_disp)
13387         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13388         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13389         (s390_process_record): Moved from s390-linux-tdep.c
13390         (s390_gdbarch_init): Adjust.
13391
13392 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13393
13394         * s390-linux-nat.c (s390-tdep.h): New include.
13395         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
13396         (HFILES_NO_SRCDIR): Add s390-tdep.h.
13397         (ALLDEPFILES): Add s390-tdep.c.
13398         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
13399         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
13400         * s390-tdep.h: ...this.  New file.
13401         * s390-linux-tdep.c (s390-tdep.h): New include.
13402         (_initialize_s390_tdep): Rename to...
13403         (_initialize_s390_linux_tdep): ...this and adjust.
13404         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
13405         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
13406         s390-tdep.h.
13407         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
13408         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
13409         (s390_is_partial_instruction, s390_software_single_step)
13410         (is_non_branch_ril, s390_displaced_step_copy_insn)
13411         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
13412         (s390_prologue_data, s390_addr, s390_store, s390_load)
13413         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
13414         (s390_register_call_saved, s390_guess_tracepoint_registers)
13415         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
13416         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
13417         (s390_pseudo_register_name, s390_pseudo_register_type)
13418         (s390_pseudo_register_read, s390_pseudo_register_write)
13419         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
13420         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
13421         (s390_addr_bits_remove, s390_address_class_type_flags)
13422         (s390_address_class_type_flags_to_name)
13423         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
13424         (s390_function_arg_float, s390_function_arg_vector)
13425         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
13426         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
13427         (s390_frame_align, s390_register_return_value, s390_return_value)
13428         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
13429         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
13430         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
13431         (s390_trad_frame_prev_register, s390_unwind_cache)
13432         (s390_prologue_frame_unwind_cache)
13433         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
13434         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
13435         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
13436         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
13437         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
13438         (s390_frame_base_address, s390_local_base_address)
13439         (s390_frame_base, s390_gcc_target_options)
13440         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
13441         (s390_validate_reg_range, s390_tdesc_valid)
13442         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
13443         * s390-tdep.c: ...this.  New file.
13444
13445 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13446
13447         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
13448         (s390_process_record, s390_gdbarch_tdep_alloc)
13449         (s390_linux_init_abi_any): Use/set new hook.
13450
13451 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13452
13453         * s390-linux-tdep.c (osabi.h): New include.
13454         (s390_linux_init_abi_31, s390_linux_init_abi_64)
13455         (s390_linux_init_abi_any): New functions.
13456         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
13457
13458 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13459
13460         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
13461         tdesc_has_registers check
13462
13463 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13464
13465         * s390-linux-tdep.c (s390_tdesc_valid): New function.
13466         (s390_validate_reg_range): New macro.
13467         (s390_gdbarch_init): Adjust.
13468
13469 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13470
13471         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
13472         (s390_gdbarch_tdep_alloc): Adjust.
13473         (s390_gdbarch_init): Adjust.
13474
13475 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13476
13477         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
13478         <have_tdb>: Change type to bool.
13479         (s390_gdbarch_tdep_alloc): Adjust.
13480         (s390_gdbarch_init): Adjust.
13481
13482 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13483
13484         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
13485         (gdbarch_tdep) <have_upper, have_vx>: New fields.
13486         (s390_gdbarch_tdep_alloc): New function.
13487         (s390_gdbarch_init): Allocate tdep at start and use its fields
13488         instead of separate variables.
13489
13490 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13491
13492         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
13493         when looking for cached gdbarch and add comment for remaining.
13494
13495 2018-01-22  Pedro Alves  <palves@redhat.com>
13496             Sergio Durigan Junior  <sergiodj@redhat.com>
13497
13498         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
13499         case.
13500
13501 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
13502
13503         * MAINTAINERS: Update my company e-mail address.
13504
13505 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13506
13507         * regcache.c (cooked_write_test): New function.
13508         (_initialize_regcache): Register the test.
13509
13510 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13511
13512         * ia64-tdep.c (ia64_pseudo_register_read): Call
13513         regcache->cooked_read instead of regcache_cooked_read_unsigned.
13514         * m32c-tdep.c (m32c_cat_read): Likewise.
13515         (m32c_r3r2r1r0_read): Likewise.
13516         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13517         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13518
13519 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13520
13521         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
13522         method raw_read instead of regcache_raw_read.
13523         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13524         * arm-tdep.c (arm_neon_quad_read): Likewise.
13525         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13526         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13527         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13528         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
13529         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13530         (i386_pseudo_register_read_into_value): Likewise.
13531         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13532         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13533         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13534         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
13535         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
13536         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
13537         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13538         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
13539         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
13540
13541 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13542
13543         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
13544         * configure.tgt: Remove target mt.
13545         * mt-tdep.c: Remove.
13546         * regcache.c (cooked_read_test): Remove the check for mt.
13547
13548 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13549
13550         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
13551         instead of gdbarch_pseudo_register_read_value.
13552
13553 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13554
13555         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
13556         language is Ada.
13557
13558 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13559
13560         * linespec.c (create_sals_line_offset): Remove code that preserved
13561         the symtab_and_line's line number.
13562
13563 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13564
13565         * varobj.c (varobj_create): Don't set valid_block when creating a
13566         floating varobj.
13567
13568 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13569
13570         * varobj.c (varobj_create): Remove out of date comment.
13571
13572 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13573
13574         PR mi/20395
13575         * ada-exp.y (write_var_from_sym): Pass extra parameter when
13576         updating innermost block.
13577         * parse.c (innermost_block_tracker::update): Take extra type
13578         parameter, and check types match before updating innermost block.
13579         (write_dollar_variable): Update innermost block for registers.
13580         * parser-defs.h (enum innermost_block_tracker_type): New enum.
13581         (innermost_block_tracker::innermost_block_tracker): Initialise
13582         m_types member.
13583         (innermost_block_tracker::reset): Take type parameter.
13584         (innermost_block_tracker::update): Take type parameter, and pass
13585         type through as needed.
13586         (innermost_block_tracker::m_types): New member.
13587         * varobj.c (varobj_create): Pass type when reseting innermost
13588         block.
13589
13590 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13591
13592         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
13593         * ada-lang.c (resolve_subexp): Likewise.
13594         * breakpoint.c (set_breakpoint_condition) Likewise.
13595         (watch_command_1) Likewise.
13596         * c-exp.y (variable): Likewise.
13597         * d-exp.y (PrimaryExpression): Likewise.
13598         * f-exp.y (variable): Likewise.
13599         * go-exp.y (variable): Likewise.
13600         * m2-exp.y (variable): Likewise.
13601         * objfiles.c (objfile::~objfile): Likewise.
13602         * p-exp.y (variable): Likewise.
13603         * parse.c (innermost_block): Change type.
13604         * parser-defs.h (class innermost_block_tracker): New.
13605         (innermost_block): Change to innermost_block_tracker.
13606         * printcmd.c (display_command): Switch to innermost_block API.
13607         (do_one_display): Likewise.
13608         * rust-exp.y (do_one_display): Likewise.
13609         * symfile.c (clear_symtab_users): Likewise.
13610         * varobj.c (varobj_create): Switch to innermost_block API, replace
13611         use of innermost_block with block stored on varobj object.
13612
13613 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13614
13615         * expression.h (innermost_block): Remove declaration.
13616         * varobj.c: Add 'parser-defs.h' include.
13617
13618 2018-01-19  Tom Tromey  <tom@tromey.com>
13619
13620         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
13621         symbols in the static and global blocks.
13622
13623 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
13624
13625         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
13626         gdb_ptrace.h, and move including gdb_wait.h ...
13627         * nat/linux-ptrace.h: ... to here.
13628
13629 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13630
13631         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
13632         inf_ptrace_detach_success.
13633         (inf_ptrace_detach_success): Add inferior parameter, use it
13634         instead of inferior_ptid, pass it to detach_inferior.
13635         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
13636         parameter.
13637         * inferior.c (detach_inferior): Add overload that takes an
13638         inferior object.
13639         * inferior.h (detach_inferior): Likewise.
13640         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
13641         use inferior_ptid, adjust call to inf_ptrace_detach_success.
13642         * linux-thread-db.c (thread_db_detach): Use inf parameter.
13643
13644 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13645
13646         * target.h (struct target_ops) <to_detach>: Add inferior
13647         parameter.
13648         (target_detach): Likewise.
13649         * target.c (dispose_inferior): Pass inferior down.
13650         (target_detach): Pass inferior down.  Assert that it is equal to
13651         the current inferior.
13652         * aix-thread.c (aix_thread_detach): Pass inferior down.
13653         * corefile.c (core_file_command): Pass current_inferior() down.
13654         * corelow.c (core_detach): Add inferior parameter.
13655         * darwin-nat.c (darwin_detach): Likewise.
13656         * gnu-nat.c (gnu_detach): Likewise.
13657         * inf-ptrace.c (inf_ptrace_detach): Likewise.
13658         * infcmd.c (detach_command): Pass current_inferior() down to
13659         target_detach.
13660         * infrun.c (follow_fork_inferior): Pass parent_inf to
13661         target_detach.
13662         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
13663         target_detach.
13664         * linux-nat.c (linux_nat_detach): Add inferior parameter.
13665         * linux-thread-db.c (thread_db_detach): Likewise.
13666         * nto-procfs.c (procfs_detach): Likewise.
13667         * procfs.c (procfs_detach): Likewise.
13668         * record.c (record_detach): Likewise.
13669         * record.h (struct inferior): Forward-declare.
13670         (record_detach): Add inferior parameter.
13671         * remote-sim.c (gdbsim_detach): Likewise.
13672         * remote.c (remote_detach_1): Likewise.
13673         (remote_detach): Likewise.
13674         (extended_remote_detach): Likewise.
13675         * sol-thread.c (sol_thread_detach): Likewise.
13676         * target-debug.h (target_debug_print_inferior_p): New macro.
13677         * target-delegates.c: Re-generate.
13678         * top.c (kill_or_detach): Pass inferior down to target_detach.
13679         * windows-nat.c (windows_detach): Add inferior parameter.
13680
13681 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13682
13683         * target.h (struct target_ops) <to_detach>: Remove args
13684         parameter.
13685         (target_detach): Likewise.
13686         * target.c (dispose_inferior): Adjust.
13687         (target_detach): Remove args parameter, adjust.
13688         * aix-thread.c (aix_thread_detach): Adjust.
13689         * corefile.c (core_file_command): Adjust.
13690         * corelow.c (core_detach): Adjust.
13691         * darwin-nat.c (darwin_detach): Adjust.
13692         * gnu-nat.c (gnu_detach): Adjust.
13693         * inf-ptrace.c (inf_ptrace_detach): Adjust.
13694         * infcmd.c (detach_command): Adjust
13695         * infrun.c (follow_fork_inferior): Adjust.
13696         (handle_vfork_child_exec_or_exit): Adjust.
13697         * linux-fork.c (linux_fork_detach): Remove args parameter.
13698         * linux-fork.h (linux_fork_detach): Likewise.
13699         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
13700         * linux-thread-db.c (thread_db_detach): Likewise.
13701         * nto-procfs.c (procfs_detach): Likewise.
13702         * procfs.c (procfs_detach): Likewise.
13703         (do_detach): Remove signo parameter.
13704         * record.c (record_detach): Remove args parameter.
13705         * record.h (record_detach): Likewise.
13706         * remote-sim.c (gdbsim_detach): Likewise.
13707         * remote.c (remote_detach_1): Likewise.
13708         (remote_detach): Likewise.
13709         (extended_remote_detach): Likewise.
13710         * sol-thread.c (sol_thread_detach): Likewise.
13711         * target-delegates.c: Re-generate.
13712         * top.c (struct qt_args) <args>: Remove field.
13713         (kill_or_detach): Don't pass args.
13714         (quit_force): Don't set args.
13715         * windows-nat.c (windows_detach): Remove args parameter.
13716
13717 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13718
13719         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
13720         (arm_linux_init_abi): Install it.
13721
13722 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13723
13724         * osabi.c (gdb_osabi_names): Extend the regexp for
13725         arm-linux-gnueabihf.
13726
13727 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13728
13729         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
13730         m_abbrevs.
13731         (abbrev_table::add_abbrev): Update.
13732         (abbrev_table::lookup_abbrev): Update.
13733
13734 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13735
13736         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
13737
13738 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
13739
13740         * compile/compile.c (compile_to_object): Convert "triplet_rx"
13741         to "std::string".
13742
13743 2018-01-17  Tom Tromey  <tom@tromey.com>
13744
13745         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
13746
13747 2018-01-17  Tom Tromey  <tom@tromey.com>
13748
13749         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
13750         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
13751         (create_array_type_with_stride): Update.
13752         * dwarf2read.c (set_die_type): Update.
13753
13754 2018-01-17  Tom Tromey  <tom@tromey.com>
13755
13756         * dwarf2read.c (delayed_method_info): Remove typedef.
13757         (dwarf2_cu::method_info): Now a std::vector.
13758         (add_to_method_list): Update.
13759         (free_delayed_list): Remove.
13760         (compute_delayed_physnames): Update.
13761         (process_full_comp_unit, process_full_type_unit): Clear the method
13762         list.  Remove cleanups.
13763         (psymtab_include_file_name): Add name_holder parameter.  Use
13764         unique_xmalloc_ptr.
13765         (dwarf_decode_lines): Update.
13766
13767 2018-01-17  Tom Tromey  <tom@tromey.com>
13768             Simon Marchi  <simon.marchi@ericsson.com>
13769
13770         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
13771         (dwarf2_per_objfile::free_cached_comp_units)
13772         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13773         (init_cutu_and_read_dies_no_follow): Update.
13774         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
13775         (dwarf2_cu::~dwarf2_cu): New.
13776         (free_heap_comp_unit, free_stack_comp_unit): Remove.
13777         (age_cached_comp_units, free_one_cached_comp_unit): Update.
13778
13779 2018-01-17  Tom Tromey  <tom@tromey.com>
13780             Simon Marchi  <simon.marchi@ericsson.com>
13781
13782         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
13783         (struct die_reader_specs) <abbrev_table>: New member.
13784         (struct abbrev_table): Add constructor.
13785         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
13786         <abbrev_obstack>: Now an auto_obstack.
13787         (abbrev_table_up): New typedef.
13788         (init_cu_die_reader): Add abbrev_table parameter.
13789         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
13790         Add result_dwo_abbrev_table.
13791         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13792         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
13793         Update.
13794         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
13795         parameter.
13796         (skip_children): Update.
13797         (abbrev_table::alloc_abbrev): Rename from
13798         abbrev_table_alloc_abbrev.
13799         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
13800         (abbrev_table::lookup_abbrev): Rename from
13801         abbrev_table_lookup_abbrev.
13802         (abbrev_table_read_table): Return abbrev_table_up.
13803         (abbrev_table_free, abbrev_table_free_cleanup)
13804         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
13805         (load_partial_dies): Update.
13806
13807 2018-01-17  Tom Tromey  <tom@tromey.com>
13808
13809         * dwarf2read.c (dwarf2_compute_name): Update comment.
13810         (read_func_scope, read_variable): Update.
13811         (new_symbol): Remove.
13812         (new_symbol_full): Rename to new_symbol.
13813
13814 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
13815
13816         PR gdb/16577
13817         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
13818         a warning instead of throwing an error, set section size to 0 and return
13819         NULL.
13820         * gdb_bfd.h (gdb_bfd_map_section): Update description.
13821
13822 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
13823
13824         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
13825         std::string.
13826         (linux_ptrace_attach_fail_reason_string): Likewise.
13827         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
13828         Likewise.
13829         (linux_ptrace_attach_fail_reason_string): Likewise.
13830         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
13831
13832 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
13833
13834         * linux-nat.c (linux_nat_attach): Remove xstrdup.
13835
13836 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
13837
13838         PR gdb/21559
13839         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
13840         checking for fs_base/gs_base fields in struct user_regs_struct.
13841         * configure: Regenerate.
13842
13843 2018-01-17  Yao Qi  <yao.qi@linaro.org>
13844
13845         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
13846         function.
13847         (aarch64_linux_init_abi): Install it to gdbarch hook
13848         gcc_target_options.
13849
13850 2018-01-15  Pedro Alves  <palves@redhat.com>
13851
13852         * common/signals-state-save-restore.c
13853         (save_original_signals_state): Fix typos.
13854
13855 2017-01-12  Tom Tromey  <tom@tromey.com>
13856             Sergio Durigan Junior  <sergiodj@redhat.com>
13857
13858         * Makefile.in (install-only): Install gdb-add-index.
13859
13860 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
13861
13862         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
13863
13864 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13865
13866         * infrun.c (keep_going_pass_signal): Clear step-over info when
13867         insert_breakpoints fails.
13868
13869 2018-01-11  Pedro Alves  <palves@redhat.com>
13870
13871         PR gdb/22583
13872         * infrun.c (resume): Rename to ...
13873         (resume_1): ... this.
13874         (resume): Reimplement as wrapper around resume_1.
13875
13876 2018-01-11  Pedro Alves  <palves@redhat.com>
13877
13878         PR remote/22597
13879         * remote.c (remote_parse_stop_reply): Default to the last-set
13880         general thread instead of to 'magic_null_ptid'.
13881
13882 2018-01-10  Pedro Alves  <palves@redhat.com>
13883
13884         * language.h (language_get_symbol_name_matcher): Rename ...
13885         (get_symbol_name_matcher): ... this.
13886         * language.c (language_get_symbol_name_matcher): Ditto.
13887         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
13888         callers adjusted.
13889
13890 2018-01-10  Pedro Alves  <palves@redhat.com>
13891
13892         PR gdb/22670
13893         * dwarf2read.c
13894         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
13895         Adjust to use language_get_symbol_name_matcher instead of
13896         language_defn::la_get_symbol_name_matcher.
13897         * language.c (language_get_symbol_name_matcher): If in Ada mode
13898         and the lookup name is a verbatim match, return Ada's matcher.
13899         * language.h (language_get_symbol_name_matcher): Adjust comment.
13900         (ada_lookup_name_info::verbatim_p):: New method.
13901
13902 2018-01-10  Pedro Alves  <palves@redhat.com>
13903
13904         PR gdb/22670
13905         * ada-lang.c (ada_collect_symbol_completion_matches): If the
13906         minsym's language is language_auto or language_cplus, pass down
13907         language_ada instead.
13908         * symtab.c (compare_symbol_name): Don't frob symbol language here.
13909
13910 2018-01-10  Pedro Alves  <palves@redhat.com>
13911
13912         PR gdb/22670
13913         * minsyms.c (linkage_name_str): New function.
13914         (iterate_over_minimal_symbols): Use it.
13915
13916 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13917
13918         * NEWS: Document that 'info proc' now works on FreeBSD.
13919
13920 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13921
13922         * configure.ac: Check for kinfo_getfile in libutil.
13923         * configure: Regenerate.
13924         * config.in: Regenerate.
13925         * fbsd-nat.c: Include "fbsd-tdep.h".
13926         (fbsd_fetch_cmdline): New.
13927         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
13928         rather than calling error.
13929         (fbsd_info_proc): New.
13930         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
13931         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
13932         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
13933
13934 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13935
13936         * fbsd-nat.c (struct free_deleter): Remove.
13937         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
13938
13939 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13940
13941         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
13942         NULL for an empty pathname.
13943
13944 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13945
13946         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
13947         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
13948         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
13949         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
13950         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
13951         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
13952         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
13953         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
13954         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
13955         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
13956         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
13957         (fbsd_core_fetch_timeval, fbsd_print_sigset)
13958         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
13959         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
13960         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
13961
13962 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
13963
13964         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
13965         (gnu_xfer_auxv): New function.
13966         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
13967         TARGET_OBJECT_AUXV.
13968
13969 2018-01-08  Yao Qi  <yao.qi@linaro.org>
13970             Simon Marchi  <simon.marchi@ericsson.com>
13971
13972         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
13973         common/selftest.c.
13974         (COMMON_OBS): Remove selftest.o.
13975         * configure.ac: Append selftest-arch.c and common/selftest.c to
13976         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
13977         * configure: Re-generated.
13978         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
13979         GDB_SELF_TEST.
13980         (maintenance_info_selftests): Likewise.
13981
13982 2018-01-08  Xavier Roirand  <roirand@adacore.com>
13983
13984         * ada-valprint.c (val_print_packed_array_elements): Use
13985         proper number of elements when printing an array indexed
13986         by an enumeration type.
13987
13988 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13989
13990         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
13991         (dw2_get_file_names_reader): Adjust.
13992         (lookup_dwo_signatured_type): Adjust.
13993         (lookup_dwp_signatured_type): Adjust.
13994         (lookup_signatured_type): Adjust.
13995         (create_type_unit_group): Adjust.
13996         (get_type_unit_group): Adjust.
13997         (process_psymtab_comp_unit_reader): Adjust.
13998         (build_type_psymtabs_reader): Adjust.
13999         (scan_partial_symbols): Adjust.
14000         (add_partial_symbol): Adjust.
14001         (add_partial_subprogram): Adjust.
14002         (peek_die_abbrev): Adjust.
14003         (fixup_go_packaging): Adjust.
14004         (process_imported_unit_die): Adjust.
14005         (dwarf2_compute_name): Adjust.
14006         (dwarf2_physname): Adjust.
14007         (read_import_statement): Adjust.
14008         (handle_DW_AT_stmt_list): Adjust.
14009         (read_file_scope): Adjust.
14010         (read_func_scope): Adjust.
14011         (read_lexical_block_scope): Adjust.
14012         (read_call_site_scope): Adjust.
14013         (read_variable): Adjust.
14014         (dwarf2_rnglists_process): Adjust.
14015         (dwarf2_ranges_process): Adjust.
14016         (dwarf2_ranges_read): Adjust.
14017         (dwarf2_get_pc_bounds): Adjust.
14018         (dwarf2_record_block_ranges): Adjust.
14019         (dwarf2_add_field): Adjust.
14020         (dwarf2_add_member_fn): Adjust.
14021         (read_structure_type): Adjust.
14022         (process_structure_scope): Adjust.
14023         (read_enumeration_type): Adjust.
14024         (read_array_type): Adjust.
14025         (mark_common_block_symbol_computed): Adjust.
14026         (read_common_block): Adjust.
14027         (read_namespace_type): Adjust.
14028         (read_namespace): Adjust.
14029         (read_module_type): Adjust.
14030         (read_tag_pointer_type): Adjust.
14031         (read_tag_ptr_to_member_type): Adjust.
14032         (read_tag_string_type): Adjust.
14033         (read_subroutine_type): Adjust.
14034         (read_typedef): Adjust.
14035         (read_base_type): Adjust.
14036         (attr_to_dynamic_prop): Adjust.
14037         (read_subrange_type): Adjust.
14038         (read_unspecified_type): Adjust.
14039         (dwarf2_read_abbrevs): Adjust.
14040         (load_partial_dies): Adjust.
14041         (read_partial_die): Adjust.
14042         (find_partial_die): Adjust.
14043         (guess_partial_die_structure_name): Adjust.
14044         (fixup_partial_die): Adjust.
14045         (read_attribute_value): Adjust.
14046         (read_addr_index): Adjust.
14047         (read_addr_index_from_leb128): Adjust.
14048         (read_str_index): Adjust.
14049         (dwarf2_string_attr): Adjust.
14050         (get_debug_line_section): Adjust.
14051         (dwarf_decode_line_header): Adjust.
14052         (lnp_state_machine::check_line_address): Adjust.
14053         (dwarf_decode_lines_1): Adjust.
14054         (dwarf_decode_lines): Adjust.
14055         (dwarf2_start_symtab): Adjust.
14056         (var_decode_location): Adjust.
14057         (new_symbol_full): Adjust.
14058         (dwarf2_const_value_data): Adjust.
14059         (dwarf2_const_value_attr): Adjust.
14060         (dwarf2_const_value): Adjust.
14061         (die_type): Adjust.
14062         (die_containing_type): Adjust.
14063         (build_error_marker_type): Adjust.
14064         (lookup_die_type): Adjust.
14065         (guess_full_die_structure_name): Adjust.
14066         (anonymous_struct_prefix): Adjust.
14067         (determine_prefix): Adjust.
14068         (dwarf2_name): Adjust.
14069         (follow_die_ref_or_sig): Adjust.
14070         (follow_die_offset): Adjust.
14071         (follow_die_ref): Adjust.
14072         (follow_die_sig_1): Adjust.
14073         (follow_die_sig): Adjust.
14074         (get_signatured_type): Adjust.
14075         (get_DW_AT_signature_type): Adjust.
14076         (decode_locdesc): Adjust.
14077         (dwarf_decode_macros): Adjust.
14078         (cu_debug_loc_section): Adjust.
14079         (fill_in_loclist_baton): Adjust.
14080         (dwarf2_symbol_mark_computed): Adjust.
14081         (init_one_comp_unit): Don't assign
14082         dwarf2_cu::dwarf2_per_objfile.
14083         (set_die_type): Adjust.
14084
14085 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14086
14087         * dwarf2read.c (struct mapped_debug_names): Add constructor.
14088         <dwarf2_per_objfile>: New field.
14089         (dwarf2_per_objfile): Remove global.
14090         (get_dwarf2_per_objfile): New function.
14091         (set_dwarf2_per_objfile): New function.
14092         (dwarf2_build_psymtabs_hard): Change objfile parameter to
14093         dwarf2_per_objfile.
14094         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14095         (read_abbrev_offset): Likewise.
14096         (read_indirect_string): Likewise.
14097         (read_indirect_line_string): Likewise.
14098         (read_indirect_string_at_offset): Likewise.
14099         (read_indirect_string_from_dwz): Likewise.
14100         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14101         dwarf2_per_objfile.
14102         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14103         (create_all_comp_units): Change objfile parameter to
14104         dwarf2_per_objfile.
14105         (create_all_type_units): Likewise.
14106         (process_queue): Add dwarf2_per_objfile parameter.
14107         (read_and_check_comp_unit_head): Likewise.
14108         (lookup_dwo_unit_in_dwp): Likewise.
14109         (get_dwp_file): Likewise.
14110         (process_cu_includes): Likewise.
14111         (struct free_dwo_file_cleanup_data): New struct.
14112         (dwarf2_has_info): Use get_dwarf2_per_objfile and
14113         set_dwarf2_per_objfile.
14114         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
14115         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
14116         context, adjust calls.
14117         (dw2_instantiate_symtab): Likewise.
14118         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
14119         (dw2_get_cu): Likewise.
14120         (create_cu_from_index_list): Change objfile parameter to
14121         dwarf2_per_objfile.
14122         (create_cus_from_index_list): Get dwarf2_per_objfile from
14123         context, adjust calls.
14124         (create_cus_from_index): Likewise.
14125         (create_signatured_type_table_from_index): Change objfile
14126         parameter to dwarf2_per_objfile.
14127         (create_signatured_type_table_from_debug_names): Change objfile
14128         parameter to dwarf2_per_objfile.
14129         (create_addrmap_from_index): Likewise.
14130         (create_addrmap_from_aranges): Likewise.
14131         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
14132         (dw2_setup): Remove.
14133         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
14134         context.
14135         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
14136         get_dwarf2_per_objfile.
14137         (dw2_forget_cached_source_info): Likewise.
14138         (dw2_map_symtabs_matching_filename): Likewise.
14139         (struct dw2_symtab_iterator) <index>: Remove.
14140         <dwarf2_per_objfile>: New field.
14141         (dw2_symtab_iter_init): Replace index parameter with
14142         dwarf2_per_objfile.
14143         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
14144         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
14145         (dw2_print_stats): Likewise.
14146         (dw2_dump): Likewise.
14147         (dw2_expand_symtabs_for_function): Likewise.
14148         (dw2_expand_all_symtabs): Likewise.
14149         (dw2_expand_symtabs_with_fullname): Likewise.
14150         (dw2_expand_marked_cus): Replace index and objfile parameters
14151         with dwarf2_per_objfile.
14152         (dw_expand_symtabs_matching_file_matcher): Add
14153         dwarf2_per_objfile parameter and adjust calls.
14154         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
14155         adjust calls.
14156         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
14157         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
14158         adjust calls.
14159         (create_cus_from_debug_names_list): Replace objfile parameter
14160         with dwarf2_per_objfile and adjust calls.
14161         (create_cus_from_debug_names): Likewise.
14162         (dwarf2_read_debug_names): Likewise.
14163         (mapped_debug_names::namei_to_name): Adjust call.
14164         (dw2_debug_names_iterator::next): Likewise.
14165         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
14166         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
14167         (dw2_debug_names_dump): Likewise.
14168         (dw2_debug_names_expand_symtabs_for_function): Likewise.
14169         (dw2_debug_names_expand_symtabs_matching): Likewise.
14170         (dwarf2_initialize_objfile): Likewise.
14171         (dwarf2_build_psymtabs): Likewise.
14172         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
14173         this_cu.
14174         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
14175         (read_and_check_comp_unit_head): Likewise.
14176         (read_abbrev_offset): Likewise.
14177         (create_debug_type_hash_table): Likewise.
14178         (create_debug_types_hash_table): Likewise.
14179         (create_all_type_units): Replace objfile parameter with
14180         dwarf2_per_objfile.
14181         (add_type_unit): Add dwarf2_per_objfile parameter.
14182         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
14183         with dwarf2_per_objfile.
14184         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
14185         (lookup_dwp_signatured_type): Likewise.
14186         (lookup_signatured_type): Likewise.
14187         (read_cutu_die_from_dwo): Likewise.
14188         (init_tu_and_read_dwo_dies): Likewise.
14189         (init_cutu_and_read_dies): Likewise.
14190         (init_cutu_and_read_dies_no_follow): Likewise.
14191         (allocate_type_unit_groups_table): Add objfile parameter.
14192         (create_type_unit_group): Use dwarf2_per_objfile from cu.
14193         (get_type_unit_group): Likewise.
14194         (process_psymtab_comp_unit): Update call.
14195         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
14196         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
14197         (print_tu_stats): Likewise.
14198         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
14199         in void* parameter.
14200         (build_type_psymtabs): Change objfile parameter to
14201         dwarf2_per_objfile.
14202         (process_skeletonless_type_unit): Use dwarf2_per_objfile
14203         passed in void* parameter.
14204         (process_skeletonless_type_units): Change objfile parameter to
14205         dwarf2_per_objfile.
14206         (set_partial_user): Likewise.
14207         (dwarf2_build_psymtabs_hard): Likewise.
14208         (read_comp_units_from_section): Likewise.
14209         (create_all_comp_units): Likewise.
14210         (scan_partial_symbols): Update calls.
14211         (add_partial_symbol): Likewise.
14212         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
14213         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
14214         (process_queue): Add dwarf2_per_objfile parameter.
14215         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
14216         (compute_compunit_symtab_includes): Likewise.
14217         (process_cu_includes): Add dwarf2_per_objfile parameter.
14218         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
14219         (process_full_type_unit): Likewise.
14220         (process_imported_unit_die): Update call.
14221         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
14222         (read_file_scope): Likewise.
14223         (allocate_dwo_file_hash_table): Add objfile parameter.
14224         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
14225         (create_cus_hash_table): Likewise.
14226         (create_dwp_hash_table): Likewise.
14227         (create_dwo_unit_in_dwp_v1): Likewise.
14228         (create_dwp_v2_section): Likewise.
14229         (create_dwo_unit_in_dwp_v2): Likewise.
14230         (lookup_dwo_unit_in_dwp): Likewise.
14231         (try_open_dwop_file): Likewise.
14232         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
14233         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
14234         cleanup to include a reference to dwarf2_per_objfile.
14235         (open_dwp_file): Add dwarf2_per_objfile parameter.
14236         (open_and_init_dwp_file): Likewise.
14237         (get_dwp_file): Likewise.
14238         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
14239         (queue_and_load_all_dwo_tus): Update call.
14240         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
14241         data.
14242         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
14243         (dwarf2_ranges_process): Likewise.
14244         (dwarf2_get_pc_bounds): Likewise.
14245         (mark_common_block_symbol_computed): Likewise.
14246         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14247         (dwarf2_read_abbrevs): Update call.
14248         (read_partial_die): Use dwarf2_per_objfile from cu.
14249         (find_partial_die): Likewise.
14250         (fixup_partial_die): Likewise.
14251         (read_attribute_value): Likewise.
14252         (read_indirect_string_at_offset_from): Add objfile parameter.
14253         (read_indirect_string_at_offset): Add dwarf2_per_objfile
14254         parameter.
14255         (read_indirect_string_from_dwz): Add objfile parameter.
14256         (read_indirect_string): Add objfile parameter.
14257         (read_addr_index_1): Add dwarf2_per_objfile parameter.
14258         (read_addr_index): Use dwarf2_per_objfile from cu.
14259         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
14260         call dw2_setup.
14261         (read_str_index): Use dwarf2_per_objfile from cu.
14262         (get_debug_line_section): Likewise.
14263         (read_formatted_entries): Add dwarf2_per_objfile parameter.
14264         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
14265         (new_symbol_full): Use dwarf2_per_objfile from cu.
14266         (build_error_marker_type): Likewise.
14267         (lookup_die_type): Likewise.
14268         (determine_prefix): Likewise.
14269         (follow_die_offset): Likewise.
14270         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
14271         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
14272         (dwarf2_fetch_die_type_sect_off): Likewise.
14273         (dwarf2_get_die_type): Likewise.
14274         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
14275         (get_signatured_type): Likewise.
14276         (get_DW_AT_signature_type): Likewise.
14277         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
14278         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
14279         (cu_debug_loc_section): Likewise.
14280         (fill_in_loclist_baton): Likewise.
14281         (dwarf2_symbol_mark_computed): Likewise.
14282         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14283         dwarf2_per_objfile.
14284         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
14285         parameter.
14286         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14287         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
14288         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
14289         (set_die_type): Use dwarf2_free_objfile from cu.
14290         (get_die_type_at_offset): Likewise.
14291         (dwarf2_per_objfile_free): Don't assign global variable.
14292         (debug_names) <constructor>: Add dwarf2_per_objfile
14293         parameter, update m_debugstrlookup construction.
14294         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
14295         parameter.
14296         <m_dwarf2_per_objfile>: New field.
14297         <lookup>: Use m_dwarf2_per_objfile.
14298         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
14299         (psyms_seen_size): Likewise.
14300         (write_gdbindex): Replace objfile parameter with
14301         dwarf2_per_objfile.
14302         (write_debug_names): Likewise.
14303         (write_psymtabs_to_index): Likewise.
14304         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
14305         calls.
14306
14307 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14308
14309         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
14310         <dwarf2_per_objfile>: New field.
14311         (struct dwarf2_per_cu_data) <objfile>: Remove.
14312         <dwarf2_per_objfile>: New field.
14313         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
14314         of objfile.
14315         (create_signatured_type_table_from_index): Likewise.
14316         (create_debug_type_hash_table): Likewise.
14317         (fill_in_sig_entry_from_dwo_entry): Likewise.
14318         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
14319         (create_type_unit_group): Assign dwarf2_per_objfile instead of
14320         objfile.
14321         (create_partial_symtab): Access objfile through
14322         dwarf2_per_objfile.
14323         (process_psymtab_comp_unit_reader): Likewise.
14324         (read_comp_units_from_section): Likewise.
14325         (scan_partial_symbols): Likewise.
14326         (add_partial_symbol): Likewise.
14327         (add_partial_subprogram): Likewise.
14328         (peek_die_abbrev): Likewise.
14329         (fixup_go_packaging): Likewise.
14330         (process_full_comp_unit): Likewise.
14331         (process_full_type_unit): Likewise.
14332         (process_imported_unit_die): Likewise.
14333         (dwarf2_compute_name): Likewise.
14334         (dwarf2_physname): Likewise.
14335         (read_import_statement): Likewise.
14336         (create_cus_hash_table): Assign dwarf2_physname instead of
14337         objfile.
14338         (read_func_scope): Access objfile through dwarf2_per_objfile.
14339         (read_lexical_block_scope): Likewise.
14340         (read_call_site_scope): Likewise.
14341         (read_variable): Likewise.
14342         (dwarf2_rnglists_process): Likewise.
14343         (dwarf2_ranges_process): Likewise.
14344         (dwarf2_ranges_read): Likewise.
14345         (dwarf2_record_block_ranges): Likewise.
14346         (dwarf2_add_field): Likewise.
14347         (dwarf2_add_member_fn): Likewise.
14348         (read_structure_type): Likewise.
14349         (process_structure_scope): Likewise.
14350         (read_enumeration_type): Likewise.
14351         (read_array_type): Likewise.
14352         (read_common_block): Likewise.
14353         (read_namespace_type): Likewise.
14354         (read_namespace): Likewise.
14355         (read_module_type): Likewise.
14356         (read_tag_pointer_type): Likewise.
14357         (read_tag_ptr_to_member_type): Likewise.
14358         (read_tag_string_type): Likewise.
14359         (read_subroutine_type): Likewise.
14360         (read_typedef): Likewise.
14361         (read_base_type): Likewise.
14362         (attr_to_dynamic_prop): Likewise.
14363         (read_subrange_type): Likewise.
14364         (read_unspecified_type): Likewise.
14365         (load_partial_dies): Likewise.
14366         (read_partial_die): Likewise.
14367         (find_partial_die): Likewise.
14368         (guess_partial_die_structure_name): Likewise.
14369         (fixup_partial_die): Likewise.
14370         (read_attribute_value): Likewise.
14371         (read_addr_index_from_leb128): Likewise.
14372         (dwarf2_read_addr_index): Likewise.
14373         (dwarf2_string_attr): Likewise.
14374         (lnp_state_machine::check_line_address): Likewise.
14375         (dwarf_decode_lines_1): Likewise.
14376         (dwarf_decode_lines): Likewise.
14377         (dwarf2_start_symtab): Likewise.
14378         (var_decode_location): Likewise.
14379         (new_symbol_full): Likewise.
14380         (dwarf2_const_value_data): Likewise.
14381         (dwarf2_const_value_attr): Likewise.
14382         (dwarf2_const_value): Likewise.
14383         (die_type): Likewise.
14384         (die_containing_type): Likewise.
14385         (lookup_die_type): Likewise.
14386         (guess_full_die_structure_name): Likewise.
14387         (anonymous_struct_prefix): Likewise.
14388         (dwarf2_name): Likewise.
14389         (follow_die_ref_or_sig): Likewise.
14390         (follow_die_offset): Likewise.
14391         (follow_die_ref): Likewise.
14392         (dwarf2_fetch_die_loc_sect_off): Likewise.
14393         (dwarf2_fetch_constant_bytes): Likewise.
14394         (dwarf2_fetch_die_type_sect_off): Likewise.
14395         (dwarf2_get_die_type): Likewise.
14396         (follow_die_sig): Likewise.
14397         (decode_locdesc): Likewise.
14398         (dwarf2_per_cu_objfile): Likewise.
14399         (dwarf2_per_cu_text_offset): Likewise.
14400         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
14401         objfile.
14402         (set_die_type): Access objfile through
14403         dwarf2_per_objfile.
14404
14405 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14406
14407         * valprint.c (converted_character_d): Remove typedef.
14408         (DEF_VEC_O (converted_character_d)): Remove.
14409         (count_next_character): Use std::vector.
14410         (print_converted_chars_to_obstack): Likewise.
14411         (generic_printstr): Likewise.
14412
14413 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14414
14415         * xml-support.h (struct gdb_xml_value): Add constructor.
14416         <value>: Change type to unique_xmalloc_ptr.
14417         (gdb_xml_value_s): Remove typedef.
14418         (DEF_VEC_O (gdb_xml_value_s)): Remove.
14419         (gdb_xml_element_start_handler): Change parameter type to
14420         std::vector.
14421         (xml_find_attribute): Likewise.
14422         * xml-support.c (xml_find_attribute): Change parameter type to
14423         std::vector and adjust.
14424         (gdb_xml_values_cleanup): Remove.
14425         (gdb_xml_parser::start_element): Adjust to std::vector.
14426         (xinclude_start_include): Change paraeter type to std::vector
14427         and adjust.
14428         * btrace.c (check_xml_btrace_version): Likewise.
14429         (parse_xml_btrace_block): Likewise.
14430         (parse_xml_btrace_pt_config_cpu): Likewise.
14431         (parse_xml_btrace_pt): Likewise.
14432         (parse_xml_btrace_conf_bts): Likewise.
14433         (parse_xml_btrace_conf_pt): Likewise.
14434         * memory-map.c (memory_map_start_memory): Likewise.
14435         (memory_map_start_property): Likewise.
14436         * osdata.c (osdata_start_osdata): Likewise.
14437         (osdata_start_item): Likewise.
14438         (osdata_start_column): Likewise.
14439         * remote.c (start_thread): Likewise.
14440         * solib-aix.c (library_list_start_library): Likewise.
14441         (library_list_start_list): Likewise.
14442         * solib-svr4.c (library_list_start_library): Likewise.
14443         (svr4_library_list_start_list): Likewise.
14444         * solib-target.c (library_list_start_segment): Likewise.
14445         (library_list_start_section): Likewise.
14446         (library_list_start_library): Likewise.
14447         (library_list_start_list): Likewise.
14448         * tracepoint.c (traceframe_info_start_memory): Likewise.
14449         (traceframe_info_start_tvar): Likewise.
14450         * xml-syscall.c (syscall_start_syscall): Likewise.
14451         * xml-tdesc.c (tdesc_start_target): Likewise.
14452         (tdesc_start_feature): Likewise.
14453         (tdesc_start_reg): Likewise.
14454         (tdesc_start_union): Likewise.
14455         (tdesc_start_struct): Likewise.
14456         (tdesc_start_flags): Likewise.
14457         (tdesc_start_enum): Likewise.
14458         (tdesc_start_field): Likewise.
14459         (tdesc_start_enum_value): Likewise.
14460         (tdesc_start_vector): Likewise.
14461
14462 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14463
14464         * extension.h (struct xmethod_worker) <clone>: Remove.
14465         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
14466         Remove.
14467         (python_xmethod_worker::clone): Remove.
14468         * valops.c (find_overload_match): Use std::move instead of
14469         clone.
14470
14471 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14472
14473         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
14474         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
14475         <free_xmethod_worker_data>: Remove.
14476         <get_matching_xmethod_workers>: Chance VEC to std::vector.
14477         <get_xmethod_arg_types>: Remove.
14478         <get_xmethod_result_type>: Remove.
14479         <invoke_xmethod>: Remove.
14480         * extension.c (new_xmethod_worker): Remove.
14481         (clone_xmethod_worker): Remove.
14482         (get_matching_xmethod_workers): Return void, pass std::vector by
14483         pointer.
14484         (get_xmethod_arg_types): Rename to...
14485         (xmethod_worker::get_arg_types): ... this, and adjust.
14486         (get_xmethod_result_type): Rename to...
14487         (xmethod_worker::get_result_type): ... this, and adjust.
14488         (invoke_xmethod): Remove.
14489         (free_xmethod_worker): Remove.
14490         (free_xmethod_worker_vec): Remove.
14491         * extension.h (enum ext_lang_rc): Move here from
14492         extension-priv.h.
14493         (struct xmethod_worker): Add constructor and destructor.
14494         <data>: Remove.
14495         <value>: Remove.
14496         <invoke, clone, do_get_result_type, do_get_arg_types>: New
14497         virtual pure methods.
14498         <get_arg_types, get_result_type>: New methods.
14499         (xmethod_worker_ptr): Remove typedef.
14500         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
14501         (xmethod_worker_vec): Remove typedef.
14502         (xmethod_worker_up): New typedef.
14503         (invoke_xmethod): Remove.
14504         (clone_xmethod_worker): Remove.
14505         (free_xmethod_worker): Remove.
14506         (free_xmethod_worker_vec): Remove.
14507         (get_xmethod_arg_types): Remove.
14508         (get_xmethod_result_type): Remove.
14509         * valops.c (find_method_list): Use std::vector, don't use
14510         intermediate vector.
14511         (value_find_oload_method_list): Use std::vector.
14512         (find_overload_match): Use std::vector.
14513         (find_oload_champ): Use std::vector.
14514         * value.c (value_free): Use operator delete.
14515         (value_of_xmethod): Rename to...
14516         (value_from_xmethod): ... this.  Don't assign
14517         xmethod_worker::value, take rvalue-reference.
14518         (result_type_of_xmethod): Adjust.
14519         (call_xmethod): Adjust.
14520         * value.h: Include extension.h.
14521         (struct xmethod_worker): Don't forward-declare.
14522         (value_of_xmethod): Rename to...
14523         (value_from_xmethod): ... this, take rvalue-reference.
14524         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
14525         (struct python_xmethod_worker): ... this, add constructor and
14526         destructor.
14527         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
14528         (gdbpy_free_xmethod_worker_data): Rename to...
14529         (python_xmethod_worker::~python_xmethod_worker): ... this and
14530         adjust.
14531         (gdbpy_clone_xmethod_worker_data): Rename to...
14532         (python_xmethod_worker::clone): ... this and adjust.
14533         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
14534         temporary vector.
14535         (gdbpy_get_xmethod_arg_types): Rename to...
14536         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
14537         (gdbpy_get_xmethod_result_type): Rename to...
14538         (python_xmethod_worker::do_get_result_type): ... this and
14539         adjust.
14540         (gdbpy_invoke_xmethod): Rename to...
14541         (python_xmethod_worker::invoke): ... this and adjust.
14542         (new_python_xmethod_worker): Rename to...
14543         (python_xmethod_worker::python_xmethod_worker): ... this and
14544         adjust.
14545         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
14546         Remove.
14547         (gdbpy_free_xmethod_worker_data): Remove.
14548         (gdbpy_get_matching_xmethod_workers): Use std::vector.
14549         (gdbpy_get_xmethod_arg_types): Remove.
14550         (gdbpy_get_xmethod_result_type): Remove.
14551         (gdbpy_invoke_xmethod): Remove.
14552         * python/python.c (python_extension_ops): Remove obsolete
14553         callbacks.
14554
14555 2018-01-05  Pedro Alves  <palves@redhat.com>
14556
14557         PR gdb/18653
14558         * common/signals-state-save-restore.c
14559         (save_original_signals_state): New parameter 'quiet'.  Warn if we
14560         find a custom handler preinstalled, instead of internal erroring.
14561         But only warn if !quiet.
14562         * common/signals-state-save-restore.h
14563         (save_original_signals_state): New parameter 'quiet'.
14564         * main.c (captured_main_1): Move save_original_signals_state call
14565         after option handling, and pass QUIET.
14566
14567 2018-01-05  Pedro Alves  <palves@redhat.com>
14568
14569         * spu-tdep.c (spu_catch_start): Pass
14570         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
14571
14572 2018-01-05  Pedro Alves  <palves@redhat.com>
14573
14574         PR gdb/22670
14575         * ada-lang.c (literal_symbol_name_matcher): New function.
14576         (ada_get_symbol_name_matcher): Use it for
14577         symbol_name_match_type::SEARCH_NAME.
14578         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
14579         it down instead of assuming symbol_name_match_type::FULL.
14580         * block.h (block_lookup_symbol): New parameter 'match_type'.
14581         * c-valprint.c (print_unpacked_pointer): Use
14582         lookup_symbol_search_name instead of lookup_symbol.
14583         * compile/compile-object-load.c (get_out_value_type): Pass down
14584         symbol_name_match_type::SEARCH_NAME.
14585         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
14586         symbol_name_match_type::FULL.
14587         * cp-support.c (cp_get_symbol_name_matcher): Handle
14588         symbol_name_match_type::SEARCH_NAME.
14589         * infrun.c (insert_exception_resume_breakpoint): Use
14590         lookup_symbol_search_name.
14591         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
14592         * psymtab.c (maintenance_check_psymtabs): Use
14593         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
14594         * stack.c (print_frame_args): Use lookup_symbol_search_name and
14595         SYMBOL_SEARCH_NAME.
14596         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
14597         if symbol_name_match_type::SEARCH_NAME.
14598         (lookup_symbol_in_language): Pass down
14599         symbol_name_match_type::FULL.
14600         (lookup_symbol_search_name): New.
14601         (lookup_language_this): Pass down
14602         symbol_name_match_type::SEARCH_NAME.
14603         (lookup_symbol_aux, lookup_local_symbol): New parameter
14604         'match_type'.  Pass it down.
14605         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
14606         (lookup_symbol_search_name): New declaration.
14607         (lookup_symbol_in_block): New 'match_type' parameter.
14608
14609 2018-01-05  Pedro Alves  <palves@redhat.com>
14610
14611         PR gdb/22670
14612         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
14613         ada_lookup_symbol.
14614         (ada_lookup_symbol): Reimplement in terms of
14615         ada_lookup_symbol_list, bits factored out from
14616         ada_lookup_encoded_symbol.
14617
14618 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14619
14620         * ada-exp.y (write_object_renaming): When subscripting an array
14621         using a symbol as the index, pass the block in call to
14622         ada_lookup_encoded_symbol when looking that symbol up.
14623
14624 2018-01-05  Jerome Guitton  <guitton@adacore.com>
14625
14626         * ada-lang.c (ada_array_length): Use ada_index_type instead of
14627         TYPE_INDEX_TYPE.
14628
14629 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14630
14631         * ada-lang.c (ada_to_fixed_value_create): Add handling of
14632         the case where VALUE_LVAL (val0) is not lval_memory.
14633
14634 2018-01-05  Xavier Roirand  <roirand@adacore.com>
14635
14636         * ada-valprint.c (print_optional_low_bound): Handle
14637         character-indexed array printing like boolean-indexed array
14638         printing.
14639
14640 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14641
14642         * NEWS: Create a new section for the next release branch.
14643         Rename the section of the current branch, now that it has
14644         been cut.
14645
14646 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14647
14648         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
14649         * version.in: Bump version to 8.1.50.DATE-git.
14650
14651 2018-01-03  Xavier Roirand  <roirand@adacore.com>
14652
14653         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
14654         Add field.
14655         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
14656         Add field.
14657         (default_exception_support_info) <catch_handlers_sym>: Add field.
14658         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
14659         (ada_exception_name_addr_1): Add "catch handlers" handling.
14660         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
14661         Update all callers.
14662         (create_excep_cond_exprs) <ex>: Add parameter.
14663         (re_set_exception): Update create_excep_cond_exprs call.
14664         (print_it_exception, print_one_exception, print_mention_exception)
14665         (print_recreate_exception): Add "catch handler" handling.
14666         (allocate_location_catch_handlers, re_set_catch_handlers)
14667         (check_status_catch_handlers, print_it_catch_handlers)
14668         (print_one_catch_handlers, print_mention_catch_handlers)
14669         (print_recreate_catch_handlers): New function.
14670         (catch_handlers_breakpoint_ops): New variable.
14671         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
14672         Add parameter.  Add "catch handler" handling.
14673         (ada_exception_sym_name, ada_exception_breakpoint_ops):
14674         Add "catch handler" handling.
14675         (ada_exception_catchpoint_cond_string): Add "catch handler"
14676         handling.
14677         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
14678         call.
14679         (catch_ada_handlers_command): New function.
14680         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
14681         operations structure.
14682         (_initialize_ada_language): Add "catch handlers" command entry.
14683         * NEWS: Document "catch handlers" feature.
14684
14685 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14686
14687         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
14688         account when creating the array type of the slice.
14689         (ada_value_slice): Likewise.
14690
14691 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14692
14693         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
14694         New enum value.
14695         (create_array_type_with_stride): Add byte_stride_prop parameter.
14696         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
14697         New parameter.  Update all callers in this file.
14698         (array_type_has_dynamic_stride): New function.
14699         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
14700         of arrays with dynamic byte strides.
14701         * dwarf2read.c (read_array_type): Add support for dynamic
14702         DW_AT_byte_stride attributes.
14703
14704 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14705
14706         * dwarf2read.c (read_unspecified_type): Treat
14707         DW_TAG_enumeration_type DIEs from Ada units as stubs.
14708
14709 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14710
14711         Update copyright year range in all GDB files.
14712
14713 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
14714
14715         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
14716         and gdb/testsuite/gdb.base/step-line.c.
14717
14718 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14719
14720         * copyright.py (main): Dump the contents of
14721         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
14722         even if BY_HAND is empty.
14723
14724 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14725
14726         * top.c (print_gdb_version): Update Copyright year in version
14727         message.
14728
14729 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14730
14731         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
14732
14733 For older changes see ChangeLog-2017.
14734 \f
14735 Local Variables:
14736 mode: change-log
14737 left-margin: 8
14738 fill-column: 74
14739 version-control: never
14740 coding: utf-8
14741 End: