Call nonl before wgetch in TUI
[external/binutils.git] / gdb / ChangeLog
1 2018-10-06  Tom Tromey  <tom@tromey.com>
2
3         PR tui/28819:
4         * tui/tui-io.c (gdb_wgetch): New function.
5         (tui_mld_getc, tui_getc): Use it.
6
7 2018-10-05  Tom Tromey  <tom@tromey.com>
8
9         * sol-thread.c (sol_thread_target::wait): Rename inner
10         "save_ptid".
11
12 2018-10-04  Tom Tromey  <tom@tromey.com>
13
14         * configure: Rebuild.
15         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
16
17 2018-10-04  Tom Tromey  <tom@tromey.com>
18
19         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
20         declaration of "block".
21
22 2018-10-04  Tom Tromey  <tom@tromey.com>
23
24         * common/filestuff.c (fdwalk): Remove inner declaration of
25         "result".
26
27 2018-10-04  Tom Tromey  <tom@tromey.com>
28
29         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
30         "structs_addr" and hoist declaration.
31
32 2018-10-04  Tom Tromey  <tom@tromey.com>
33
34         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
35         variable "size".
36
37 2018-10-04  Tom Tromey  <tom@tromey.com>
38
39         * mdebugread.c (parse_partial_symbols): Use std::string.
40
41 2018-10-04  Tom Tromey  <tom@tromey.com>
42
43         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
44         * p-valprint.c (pascal_val_print): Split inner "i" variable.
45         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
46         header.
47         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
48         more inner scope.
49         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
50         * varobj.c (varobj_update): Rename inner "newobj",
51         "type_changed".
52         * valprint.c (generic_emit_char): Rename inner "buf".
53         * valops.c (find_overload_match): Rename inner "temp".
54         (value_struct_elt_for_reference): Declare "v" in more inner
55         scope.
56         * v850-tdep.c (v850_push_dummy_call): Rename "len".
57         * unittests/array-view-selftests.c (run_tests): Rename inner
58         "vec".
59         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
60         header.
61         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
62         "tsv" in more inner scope.
63         (print_one_static_tracepoint_marker): Rename inner
64         "tuple_emitter".
65         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
66         (tic6x_push_dummy_call): Don't redeclare "addr".
67         * target-float.c: Declare "dto" lower.
68         * symtab.c (lookup_local_symbol): Rename inner "sym".
69         (find_pc_sect_line): Rename inner "pc".
70         * stack.c (print_frame): Don't redeclare "gdbarch".
71         (return_command): Rename inner "gdbarch".
72         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
73         "sp".
74         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
75         header.
76         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
77         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
78         scope.
79         * remote.c (remote_target::update_thread_list): Don't redeclare
80         "tp".
81         (remote_target::process_initial_stop_replies): Rename inner
82         "thread".
83         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
84         (remote_target::wait_as): Don't redeclare "stop_reply".
85         (remote_target::get_thread_local_address): Rename inner
86         "result".
87         (remote_target::get_tib_address): Likewise.
88
89         * regcache.c (cooked_read_test): Rename "regnum".
90         * record-btrace.c (cmd_record_btrace_start): Rename inner
91         "exception".
92         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
93         loop header.
94         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
95         header.
96         (ppu2spu_sniffer): Rename inner "buf".
97         * parse.c (operator_check_standard): Rename inner "type",
98         "objfile".
99         * p-valprint.c (pascal_val_print): Introduce new scope for
100         "low_bound", "high_bound".
101         * p-exp.y (yylex): Declare "i" in loop header.
102         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
103         Lower declaration of "s".
104         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
105         header.
106         (nios2_push_dummy_call): Rename "len".
107         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
108         "buf".
109         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
110         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
111         (linux_xfer_osdata_modules): Likewise.
112         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
113         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
114         (mips_o64_push_dummy_call): Likewise.
115         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
116         "op".
117         * mi/mi-main.c (list_available_thread_groups): Rename inner
118         "tuple_emitter".
119         (mi_cmd_data_read_memory): Rename inner "opts".
120         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
121         "tuple_emitter".
122         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
123         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
124         more inner scope.
125         (parse_partial_symbols): Rename inner "pst", "p", "name"
126         * main.c (captured_main_1): Rename inner "i"s.
127         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
128         "oso2".
129         * linux-tdep.c (linux_info_proc): Rename inner "filename".
130         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
131         * infrun.c (handle_no_resumed): Don't redeclare "thread".
132         (handle_signal_stop): Rename inner "gdbarch".
133         (handle_command): Declare "signum" in loop header.
134         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
135         "status".
136         (examine_prologue): Rename inner "sol" and "sof".
137         (ia64_extract_return_value): Rename inner "val".  Declare another
138         "val" in a more inner scope.
139         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
140         inner scope.
141         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
142         "except".
143         * findvar.c (default_read_var_value): Don't redeclare "addr".
144         * f-exp.y (yylex): Declare "i" in loop header.
145         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
146         Rename inner "type", "expect_type".
147         (evaluate_subexp_for_sizeof): Rename inner "pc".
148         * elfread.c (elf_symfile_read): Rename inner "abfd".
149         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
150         "bytes_read".
151         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
152         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
153         (dwarf_decode_line_header): Rename inner "lh".
154         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
155         "offset".  Declare "i" in loop header.
156         (disassemble_dwarf_expression): Rename inner "addr_size".
157         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
158         inner "result".
159         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
160         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
161         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
162         "inner_list_emitter".
163         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
164         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
165         declaration in a block.
166         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
167         * cp-valprint.c (cp_print_value_fields): Don't redeclare
168         "obstack_final_size".
169         * cp-support.c (inspect_type): Declare "i" in loop header.
170         * compile/compile.c (compile_instance::insert_symbol_error):
171         Rename inner "e".
172         * common/agent.c (agent_run_command): Remove inner "ret"
173         declaration.
174         * coffread.c (coff_symfile_read): Rename inner "name".
175         (coff_symfile_read): Rename inner "abfd".
176         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
177         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
178         "high".
179         * c-exp.y (lex_one_token): Move "len" declaration lower.
180         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
181         "gdbarch".
182         (create_exception_master_breakpoint): Likewise.  Don't redeclare
183         "b".
184         (watch_command_1): Declare "mark" later.
185         (clear_command): Don't shadow "a" or "b".
186         (delete_command): Rename inner "b".
187         (delete_trace_command): Likewise.
188         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
189         "op".
190         (arm_gdbarch_init): Remove inner "e_flags".
191         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
192         "offset" in inner blocks.
193
194 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
195
196         * dwarf-index-write.c (file_write): Don't write if the vector is
197         empty.
198
199 2018-10-05  Tom de Vries  <tdevries@suse.de>
200
201         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
202         PyArg_ParseTuple call.
203
204 2018-10-05  Tom de Vries  <tdevries@suse.de>
205
206         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
207         PyArg_ParseTuple call.
208
209 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
210
211         * psymtab.c (recursively_search_psymtabs): Reformat parameters
212         to avoid exceeding 80 characters per line limit.
213
214 2018-10-04  Tom Tromey  <tom@tromey.com>
215
216         * symfile.c (syms_from_objfile_1, finish_new_objfile)
217         (reread_symbols): Update.
218         * complaints.h (clear_complaints): Remove argument.
219         * complaints.c (enum complaint_series): Remove.
220         (series): Remove global.
221         (complaint_internal): Update.
222         (clear_complaints): Remove argument.
223
224 2018-10-04  Tom Tromey  <tom@tromey.com>
225
226         * symfile.c (symbol_file_add_with_addrs): Do not print "no
227         debugging symbols" message if there is a separate debug objfile.
228
229 2018-10-04  Tom Tromey  <tom@tromey.com>
230
231         PR cli/19551:
232         * symfile.c (symbol_file_add_with_addrs): Update output.
233         * psymtab.c (require_partial_symbols): Update output.
234
235 2018-10-04  Tom Tromey  <tom@tromey.com>
236
237         PR cli/22234:
238         * complaints.c: Emit \n.
239
240 2018-10-04  Tom Tromey  <tom@tromey.com>
241
242         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
243         (separate_debug_file_exists, find_separate_debug_file)
244         (add_symbol_file_command, reread_symbols, allocate_symtab)
245         (allocate_compunit_symtab): Use filtered printing, not
246         unfiltered.
247         * psymtab.c (require_partial_symbols, dump_psymtab)
248         (allocate_psymtab): Use filtered printing, not unfiltered.
249
250 2018-10-04  Tom Tromey  <tom@tromey.com>
251
252         * complaints.c (complaint_internal): Correctly check complaint
253         count.
254
255 2018-10-04  Tom Tromey  <tom@tromey.com>
256
257         * complaints.h (struct complaints): Remove declaration.
258         * complaints.c (clear_complaints): Remove an unused variable.
259
260 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
261
262         * MAINTAINERS (Write After Approval): Add self.
263
264 2018-10-03  Tom Tromey  <tom@tromey.com>
265
266         * guile/scm-value.c (gdbscm_value_to_string): Initialize
267         "buffer_contents".
268         * coffread.c (coff_symtab_read): Initialize "newobj".
269
270 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
271
272         * dwarf2read.c (read_func_scope): Remove struct keyword in
273         range-based for.
274
275 2018-10-03  Tom Tromey  <tom@tromey.com>
276
277         * README: Mention --enable-ubsan.
278         * NEWS: Mention --enable-ubsan.
279         * acinclude.m4: Include sanitize.m4.
280         * configure: Rebuild.
281         * configure.ac: Call AM_GDB_UBSAN.
282         * sanitize.m4: New file.
283
284 2018-10-03  Tom Tromey  <tom@tromey.com>
285
286         * expression.h (enum exp_opcode): Use uint8_t as base type.
287         * expprint.c (op_name): Handle invalid opcodes.
288
289 2018-10-03  Tom Tromey  <tom@tromey.com>
290
291         * parse.c (prefixify_expression): Add assert.
292         (parse_exp_in_context_1): Throw exception if the expression is
293         empty.
294
295 2018-10-03  Tom Tromey  <tom@tromey.com>
296
297         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
298
299 2018-10-03  Tom Tromey  <tom@tromey.com>
300
301         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
302
303 2018-10-03  Tom Tromey  <tom@tromey.com>
304
305         * dwarf2read.c (read_subrange_type): Make "negative_mask"
306         unsigned.
307
308 2018-10-03  Tom Tromey  <tom@tromey.com>
309
310         * findvar.c (extract_integer): Do work in an unsigned type.
311
312 2018-10-03  Tom Tromey  <tom@tromey.com>
313
314         * common/enum-flags.h (enum_flags::operator~): Add static assert.
315         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
316         base type.
317         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
318         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
319         type.
320         * c-lang.h (enum c_string_type_values): Use unsigned as base
321         type.
322         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
323
324 2018-10-03  Tom Tromey  <tom@tromey.com>
325
326         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
327         <~dwarf2_frame_state_reg_info>: Update.
328         <dwarf2_frame_state_reg_info>: Update.
329         <alloc_regs>: Add assertion.  Update.
330         <reg>: Now a std::vector.
331         <num_regs>: Remove.
332         <swap>: Update.
333         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
334         (execute_cfa_program_test, dwarf2_frame_cache): Update.
335
336 2018-10-03  Tom Tromey  <tom@tromey.com>
337
338         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
339
340 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
341
342         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
343
344 2018-10-02  Tom Tromey  <tom@tromey.com>
345
346         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
347
348 2018-10-02  John Darrington <john@darrington.wattle.id.au>
349
350         * NEWS: Mention changed commands.
351         * ser-uds.c: New file.
352         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
353         * configure: Regenerate.
354         * Makefile.in: Add new file.
355         * serial.c (serial_open): Check if filename is a socket
356           and lookup the appropriate interface accordingly.
357
358 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
359
360         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
361         define.
362         (AARCH64_EXTRA_MAGIC): Likewise.
363         (AARCH64_FPSIMD_MAGIC): Likewise.
364         (AARCH64_SVE_MAGIC): Likewise.
365         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
366         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
367         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
368         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
369         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
370         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
371         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
372         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
373         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
374         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
375         (read_aarch64_ctx): Add function.
376         (aarch64_linux_sigframe_init): Detect FP registers.
377
378 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
379
380         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
381         (AARCH64_D0_REGNUM): Likewise.
382         (AARCH64_S0_REGNUM): Likewise.
383         (AARCH64_H0_REGNUM): Likewise.
384         (AARCH64_B0_REGNUM): Likewise.
385         (AARCH64_SVE_V0_REGNUM): Likewise.
386         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
387         (AARCH64_D0_REGNUM): Likewise.
388         (AARCH64_S0_REGNUM): Likewise.
389         (AARCH64_H0_REGNUM): Likewise.
390         (AARCH64_B0_REGNUM): Likewise.
391         (AARCH64_SVE_V0_REGNUM): Likewise.
392
393 2018-10-01  Gary Benson <gbenson@redhat.com>
394
395         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
396         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
397         prfpregset_t instead of gdb_prfpregset_t.
398         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
399         * configure, config.in: Rebuild.
400
401 2018-10-01  Gary Benson <gbenson@redhat.com>
402
403         * common/gdb_proc_service.h: New file, factored out from...
404         * gdb_proc_service.h: Moved common code to the above file.
405         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
406
407 2018-10-01  Gary Benson <gbenson@redhat.com>
408
409         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
410         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
411
412 2018-10-01  Gary Benson <gbenson@redhat.com>
413
414         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
415         (AC_CHECK_HEADERS): Check for linux/elf.h.
416         * configure, config.in: Rebuild.
417         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
418         doesn't define elf_fpregset_t.
419
420 2018-10-01  Gary Benson <gbenson@redhat.com>
421
422         * gdb_proc_service.h: Whitespace change.
423
424 2018-10-01  Tom Tromey  <tom@tromey.com>
425
426         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
427         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
428         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
429
430 2018-10-01  Tom Tromey  <tom@tromey.com>
431
432         * README: Minor change.
433
434 2018-09-30  Pedro Alves  <palves@redhat.com>
435
436         * darwin-nat-info.c (darwin_debug_regions_recurse)
437         (info_mach_exceptions_command): Remove unused local variables.
438         * darwin-nat.c (darwin_decode_notify_message)
439         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
440         (darwin_stop_inferior, darwin_setup_exceptions)
441         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
442         (darwin_nat_target::attach, darwin_nat_target::detach)
443         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
444         local variables.
445         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
446         variables.
447
448 2018-09-29  Tom Tromey  <tom@tromey.com>
449
450         * README: Remove some leftover text.
451
452 2018-09-29  Tom Tromey  <tom@tromey.com>
453
454         * PROBLEMS: Rewrite.
455         * README: Update.
456
457 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
458
459         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
460         case with explicit breakpoint kind.
461         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
462         'additional_info' and related logic.
463         (riscv_debug_breakpoints): New variable.
464         (riscv_breakpoint_kind_from_pc): Use the length of the existing
465         instruction to determine the breakpoint kind.
466         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
467         flag.  Update description of 'set/show riscv
468         use-compressed-breakpoints' flag.
469
470 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
471
472         (NEWS): Mention changes to frame related commands.
473         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
474         (add_prefix_cmd_suppress_notification): New function.
475         (add_com_suppress_notification): Call
476         add_cmd_suppress_notification.
477         * command.h (add_cmd_suppress_notification): Declare.
478         (add_prefix_cmd_suppress_notification): Declare.
479         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
480         (parse_frame_specification): Moved from stack.c, with
481         simplification to handle a single argument.
482         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
483         switch to the selected frame.  Add a header comment.
484         * stack.c: Remove 'safe-ctype.h' include.
485         (find_frame_for_function): Add declaration.
486         (find_frame_for_address): New function.
487         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
488         (frame_selection_by_function_completer): New function.
489         (info_frame_command): Rename to...
490         (info_frame_command_core): ...this, and update parameter types.
491         (select_frame_command): Rename to...
492         (select_frame_command_core): ...this, and update parameter types.
493         (frame_command): Rename to...
494         (frame_command_core): ...this, and update parameter types.
495         (class frame_command_helper): New class to wrap implementations of
496         frame related sub-commands.
497         (frame_apply_cmd_list): New static global.
498         (frame_cmd_list): Make static.
499         (select_frame_cmd_list): New global for sub-commands.
500         (info_frame_cmd_list): New global for sub-commands.
501         (_initialize_stack): Register sub-commands for 'frame',
502         'select-frame', and 'info frame'.  Update 'frame apply' commands
503         to use frame_apply_cmd_list.  Move function local static
504         frame_apply_list to file static frame_apply_cmd_list for
505         consistency.
506         * stack.h (select_frame_command): Delete declarationn.
507         (select_frame_for_mi): Declare new function.
508
509 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
510
511         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
512         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
513         and NOP.
514
515 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
516
517         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
518
519 2018-09-26  Tom Tromey  <tom@tromey.com>
520
521         * valops.c (auto_abandon): Remove dead code.
522
523 2018-09-26  Tom Tromey  <tom@tromey.com>
524
525         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
526
527 2018-09-24  Tom Tromey  <tom@tromey.com>
528
529         * common/pathstuff.c (get_standard_cache_dir): Make
530         "xdg_cache_home" and "home" const.
531         * top.c (init_history): Make "tmpenv" const.
532         * main.c (get_init_files): Make "homedir" const.
533
534 2018-09-23  Tom Tromey  <tom@tromey.com>
535
536         PR python/18852:
537         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
538
539 2018-09-23  Tom Tromey  <tom@tromey.com>
540
541         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
542         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
543         * python/python-internal.h (gdbpy_handle_exception): Declare.
544         * python/py-utils.c (gdbpy_handle_exception): New function.
545
546 2018-09-23  Tom Tromey  <tom@tromey.com>
547
548         PR python/17284:
549         * python/py-type.c (typy_template_argument): Check for negative
550         argument number.
551
552 2018-09-23  Tom Tromey  <tom@tromey.com>
553
554         PR python/14062:
555         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
556
557 2018-09-23  Tom Tromey  <tom@tromey.com>
558
559         PR python/18170:
560         * python/py-value.c (valpy_int): Allow conversion from pointer
561         type.
562
563 2018-09-23  Tom Tromey  <tom@tromey.com>
564
565         PR python/20126:
566         * python/py-value.c (valpy_int): Respect type sign.
567
568 2018-09-23  Tom Tromey  <tom@tromey.com>
569
570         PR python/18352;
571         * python/py-value.c (valpy_float): Allow conversions from int or
572         char.
573         (valpy_int, valpy_long): Allow conversions from float.
574
575 2018-09-23  Tom Tromey  <tom@tromey.com>
576
577         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
578         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
579
580 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
581
582         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
583         __sighndlr.
584         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
585
586 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
587
588         * windows-nat.c (windows_nat_target::wait): Remove a spurious
589         target_terminal::ours().
590
591 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
592
593         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
594         of vl to ULONGEST.
595
596 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
597
598         * breakpoint.c (update_inserted_breakpoint_locations): Remove
599         redundant condition.
600
601 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
602
603         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
604
605         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
606         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
607         * sol-thread.c (ps_pdmodel): Don't guard definition.
608
609         * procfs.c: Fix formatting.
610
611         * procfs.c (sysset_t_alloc): Remove.
612         (create_procinfo): Use XNEW instead of sysset_t_alloc.
613         (procfs_debug_inferior): Likewise.
614         (procfs_set_exec_trap): Likewise.
615         (proc_set_traced_sysentry): Don't allocate argp dynamically.
616         (proc_set_traced_sysexit): Likewise.
617
618         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
619         (dead_procinfo): Likewise.
620         (proc_warn): Likewise.
621         (proc_error): Likewise.
622         (proc_get_LDT_entry): Likewise.
623         (do_attach): Likewise.
624         (procfs_target::pid_to_str): Likewise.
625         (iterate_over_mappings): Likewise.
626
627         * procfs.c (create_procinfo): Fix ARI warning.
628         (proc_get_status): Likewise.
629         (proc_stop_process): Likewise.
630         (proc_run_process): Likewise.
631         (proc_kill): Likewise.
632         (proc_get_LDT_entry): Likewise.
633         (procfs_find_LDT_entry): Likewise.
634         (proc_update_threads): Likewise.
635         (proc_iterate_over_threads): Likewise.
636         (do_attach): Likewise.
637         (procfs_xfer_memory): Likewise.
638         (invalidate_cache): Likewise.
639         (procfs_target::resume): Likewise.
640         (procfs_init_inferior): Likewise.
641         (procfs_set_exec_trap): Likewise.
642         (procfs_target::thread_alive): Likewise.
643         (procfs_target::pid_to_exec_file): Likewise.
644         (iterate_over_mappings): Likewise.
645         (procfs_target::make_corefile_notes): Likewise.
646         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
647
648         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
649         (procfs_find_LDT_entry): Likewise.
650         * sol-thread.c (ps_lgetLDT): Likewise.
651
652 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
653
654         PR tdep/17903
655         * procfs.c (procfs_target): Declare pid_to_exec_file.
656         (procfs_target::pid_to_exec_file): New.
657
658 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
659
660         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
661         renaming.
662         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
663         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
664
665 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
666
667         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
668         (supply_fpregset, fill_fpregset): Move ...
669         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
670         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
671         Remove references to ioctl-based procfs.
672         Include <sys/reg.h>.
673         Remove PR_MODEL_NATIVE guards.
674         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
675         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
676
677 2018-09-19  Xavier Roirand  <roirand@adacore.com>
678
679         PR gdb/20981:
680         * solib-darwin.c (darwin_get_dyld_bfd): New function.
681         (darwin_solib_get_all_image_info_addr_at_init): Update call.
682         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
683
684 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
685
686         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
687         (fbsd_print_sockaddr_in6): Likewise.
688
689 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
690             Chris January  <chris.january@arm.com>
691
692         * eval.c (skip_undetermined_arglist): Skip argument list helper.
693         (evaluate_subexp_standard): Return a dummy type when
694         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
695         OP_F77_UNDETERMINED_ARGLIST case.
696         * expression.h (enum noside): Update comment.
697
698 2018-09-19  George Vasick <george.vasick@oracle.com>
699
700         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
701
702 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
703             April Chin <april.chin@oracle.com>
704             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
705
706         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
707         uint_t lwpid_t.
708         (create_procinfo): Print pids in /proc without leading zeros.
709
710 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
711
712         * nios2-tdep.c (nios2_gcc_target_options): New.
713         (nios2_gdb_arch_init): Install new hook.
714
715 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
716
717         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
718         New file.
719         * update-gnulib.sh: Apply patch.
720         * configure: Re-generate.
721
722 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
723
724         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
725         description.  Make "info proc" command descriptions more
726         consistent.
727
728 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
729
730         * NEWS: Mention 'info proc files' command.
731
732 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
733
734         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
735         descriptors for IP_FILES and IP_ALL.
736
737 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
738
739         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
740         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
741         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
742         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
743         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
744         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
745         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
746         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
747         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
748         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
749         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
750         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
751         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
752         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
753         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
754         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
755         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
756         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
757         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
758         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
759         (struct fbsd_sockaddr_un): New types.
760         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
761         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
762         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
763         (fbsd_core_info_proc_files): New functions.
764         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
765         IP_ALL.
766         * fbsd-tdep.h (fbsd_info_proc_files_header)
767         (fbsd_info_proc_files_entry): New.
768
769 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
770
771         * defs.h (enum info_proc_what) [IP_FILES]: New value.
772         * infcmd.c (info_proc_cmd_files): New function.
773         (_initialize_infcmd): Register 'info proc files' command.
774
775 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
776
777         * gnulib/aclocal-m4-deps.mk: Re-generate.
778         * gnulib/aclocal.m4: Re-generate.
779         * gnulib/config.in: Re-generate.
780         * gnulib/configure: Re-generate.
781         * gnulib/import/Makefile.am: Re-generate.
782         * gnulib/import/Makefile.in: Re-generate.
783         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
784         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
785         * gnulib/import/arpa_inet.in.h: New file.
786         * gnulib/import/inet_ntop.c: New file.
787         * gnulib/import/m4/arpa_inet_h.m4: New file.
788         * gnulib/import/m4/inet_ntop.m4: New file.
789         * gnulib/import/m4/netinet_in_h.m4: New file.
790         * gnulib/import/m4/socklen.m4: New file.
791         * gnulib/import/m4/sockpfaf.m4: New file.
792         * gnulib/import/m4/stdalign.m4: New file.
793         * gnulib/import/m4/sys_uio_h.m4: New file.
794         * gnulib/import/netinet_in.in.h: New file.
795         * gnulib/import/stdalign.in.h: New file.
796         * gnulib/import/sys_socket.c: New file.
797         * gnulib/import/sys_socket.in.h: New file.
798         * gnulib/import/sys_uio.in.h: New file.
799         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
800         module.
801
802 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
803
804         * gnulib/aclocal-m4-deps.mk: New file.
805         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
806         deterministically.
807
808 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
809
810         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
811         KVE_PATH.
812
813 2018-09-18  Tom Tromey  <tom@tromey.com>
814
815         * compile/compile-object-load.c (struct
816         link_hash_table_cleanup_data): Add constructor and destructor.
817         Use DISABLE_COPY_AND_ASSIGN.
818         (~link_hash_table_cleanup_data): Rename from
819         link_hash_table_free.  Now a destructor.
820         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
821
822 2018-09-18  Tom Tromey  <tom@tromey.com>
823
824         * compile/compile-object-run.c (do_module_cleanup): Use delete.
825         * compile/compile-object-load.c (struct munmap_list): Move to
826         header file.
827         (munmap_list::add): Rename from munmap_list_add; rewrite.
828         (munmap_list::~munmap_list): Rename from munmap_list_free.
829         (munmap_listp_free_cleanup): Remove.
830         (compile_object_load): Update.
831         * compile/compile-object-load.h (struct munmap_list): Move from
832         compile-object-load.c.  Rewrite.
833
834 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
835
836         * aarch64-tdep.c (pass_in_v): Use register size.
837         (aarch64_extract_return_value): Likewise.
838         (aarch64_store_return_value): Likewise.
839
840 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
841
842         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
843         rlim_t.
844
845 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
846
847         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
848         Fix short help line.
849
850 2018-09-17  Tom Tromey  <tom@tromey.com>
851
852         PR python/20445:
853         * configure: Rebuild.
854         * configure.ac: Conditionally use -DNDEBUG for Python.
855
856 2018-09-17  Tom Tromey  <tom@tromey.com>
857
858         * configure: Rebuild.
859         * configure.ac: Use gmp as a library dependency when checking for
860         mpfr.
861
862 2018-09-17  Pedro Alves  <palves@redhat.com>
863
864         * python/py-inferior.c (find_inferior_object): Delete.
865
866 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
867
868         * compile/compile-cplus-types.c
869         (compile_cplus_instance::enter_scope): Don't use new_scope after
870         std::move.
871
872 2018-09-17  Tom Tromey  <tom@tromey.com>
873
874         * common/pathstuff.c (get_standard_cache_dir): Use
875         ~/Library/Caches on macOS.
876         * common/pathstuff.h (get_standard_cache_dir): Update comment.
877
878 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
879
880         PR python/23669
881         * breakpoint.c (commands_cmd_element): New.
882         (_initialize_breakpoint): Assign commands_cmd_element.
883         * breakpoint.h (commands_cmd_element): New.
884         * cli/cli-script.c (while_cmd_element, if_command,
885         define_cmd_element): New.
886         (command_name_equals): Remove.
887         (process_next_line): Compare commands by pointer, not by name.
888         (_initialize_cli_script): Assign the various cmd_list_element
889         variables.
890         * compile/compile.c (compile_cmd_element): New.
891         (_initialize_compile): Assign compile_cmd_element.
892         * compile/compile.h (compile_cmd_element): New.
893         * guile/guile.c (guile_cmd_element): New.
894         (install_gdb_commands): Assign guile_cmd_element.
895         * guile/guile.h (guile_cmd_element): New.
896         * python/python.c (python_cmd_element): New.
897         (_initialize_python): Assign python_cmd_element.
898         * python/python.h (python_cmd_element): New.
899         * tracepoint.c (while_stepping_cmd_element): New.
900         (_initialize_tracepoint): Assign while_stepping_cmd_element.
901         * tracepoint.h (while_stepping_cmd_element): New.
902
903 2018-09-17  Tom Tromey  <tom@tromey.com>
904
905         * infrun.c (save_infcall_suspend_state): Return
906         infcall_suspend_state_up.
907         (save_infcall_control_state): Return infcall_control_state_up.
908         * inferior.h (save_infcall_suspend_state)
909         (save_infcall_control_state): Declare later.  Return unique
910         pointers.
911
912 2018-09-17  Tom Tromey  <tom@tromey.com>
913
914         * infrun.c (struct stop_context): Declare constructor,
915         destructor, "changed" method.
916         (stop_context::stop_context): Rename from save_stop_context.
917         (stop_context::~stop_context): Rename from
918         release_stop_context_cleanup.
919         (normal_stop): Update.
920         (stop_context::changed): Rename from stop_context_changed.  Return
921         bool.
922
923 2018-09-17  Tom Tromey  <tom@tromey.com>
924
925         * inferior.h (struct infcall_suspend_state_deleter): New.
926         (infcall_suspend_state_up): New typedef.
927         (struct infcall_control_state_deleter): New.
928         (infcall_control_state_up): New typedef.
929         (make_cleanup_restore_infcall_suspend_state)
930         (make_cleanup_restore_infcall_control_state): Don't declare.
931         * infcall.c (call_function_by_hand_dummy): Update.
932         * infrun.c (do_restore_infcall_suspend_state_cleanup)
933         (make_cleanup_restore_infcall_suspend_state): Remove.
934         (do_restore_infcall_control_state_cleanup)
935         (make_cleanup_restore_infcall_control_state): Remove.
936
937 2018-09-17  Tom Tromey  <tom@tromey.com>
938
939         * gdbthread.h (struct thread_control_state): Add initializer.
940         (class thread_info) <control>: Remove initializer.
941         * inferior.h (struct inferior_control_state): Add initializer.
942         (class inferior) <control>: Remove initializer.
943         (exit_inferior_1): Update.
944         * infrun.c (struct infcall_control_state): Add constructors.
945         (save_infcall_control_state): Use new.
946         (restore_infcall_control_state, discard_infcall_control_state):
947         Use delete.
948
949 2018-09-17  Tom Tromey  <tom@tromey.com>
950
951         * infrun.c (struct infcall_suspend_state) <registers>: Now a
952         unique_ptr.
953         <siginfo_data>: Now a unique_xmalloc_ptr.
954         (save_infcall_suspend_state, restore_infcall_suspend_state)
955         (discard_infcall_suspend_state)
956         (get_infcall_suspend_state_regcache): Update.
957
958 2018-09-17  Tom Tromey  <tom@tromey.com>
959
960         * gdbthread.h (struct thread_suspend_state): Add initializers.
961         (class thread_info) <suspend>: Remove initializer.
962         * infrun.c (struct infcall_suspend_state): Add initializers.
963         (save_infcall_suspend_state): Use new.
964         (discard_infcall_suspend_state): Use delete.
965
966 2018-09-16  Tom Tromey  <tom@tromey.com>
967
968         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
969         Remove.
970         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
971         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
972         (py_varobj_iter_new): Likewise.
973         (py_varobj_get_iterator): Use gdbpy_ref.
974
975 2018-09-16  Tom Tromey  <tom@tromey.com>
976
977         * python/py-threadevent.c (py_get_event_thread): Simplify.
978         * python/py-inferior.c (infpy_thread_from_thread_handle):
979         Return immediately after calling thread_to_thread_object.  Use
980         Py_RETURN_NONE.
981         (thread_to_thread_object): Set the exception on a NULL return.
982
983 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
984
985         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
986
987 2018-09-16  Tom Tromey  <tom@tromey.com>
988
989         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
990         Remove.
991
992 2018-09-16  Tom Tromey  <tom@tromey.com>
993
994         * python/python-internal.h (thread_to_thread_object): Change
995         return type.
996         * python/py-inferior.c (thread_to_thread_object): Return a new
997         reference.
998         (infpy_thread_from_thread_handle): Update.
999         * python/py-infthread.c (gdbpy_selected_thread): Update.
1000         * python/py-stopevent.c (create_stop_event_object): Update.
1001         * python/py-threadevent.c (py_get_event_thread): Return a new
1002         reference.
1003         (py_get_event_thread): Update.
1004         * python/py-event.h (py_get_event_thread): Change return type.
1005         * python/py-continueevent.c (create_continue_event_object):
1006         Update.
1007
1008 2018-09-16  Tom Tromey  <tom@tromey.com>
1009
1010         * python/py-progspace.c (pspy_get_objfiles): Update.
1011         * python/python-internal.h (objfile_to_objfile_object): Change
1012         return type.
1013         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1014         Update.
1015         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1016         Update.
1017         * python/python.c (gdbpy_get_current_objfile): Update.
1018         (gdbpy_objfiles): Update.
1019         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
1020         Update.
1021         (objfile_to_objfile_object): Return a new reference.
1022         * python/py-symtab.c (stpy_get_objfile): Update.
1023         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
1024         Update.
1025
1026 2018-09-16  Tom Tromey  <tom@tromey.com>
1027
1028         * python/py-inferior.c (infpy_get_progspace): Update.
1029         * python/python-internal.h (pspace_to_pspace_object): Change
1030         return type.
1031         * python/py-newobjfileevent.c
1032         (create_clear_objfiles_event_object): Update.
1033         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1034         Update.
1035         * python/python.c (gdbpy_get_current_progspace): Update.
1036         (gdbpy_progspaces): Update.
1037         * python/py-progspace.c (pspace_to_pspace_object): Return a new
1038         reference.
1039         * python/py-objfile.c (objfpy_get_progspace): Update.
1040         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
1041         Update.
1042
1043 2018-09-16  Tom Tromey  <tom@tromey.com>
1044
1045         * python/lib/gdb/__init__.py (current_progspace, objfiles)
1046         (solib_name, block_for_pc, find_pc_line): New functions.
1047         (execute_unwinders): Update.
1048         * python/py-block.c (gdbpy_block_for_pc): Remove.
1049         * python/py-inferior.c (infpy_get_progspace): New function.
1050         (inferior_object_getset) <progspace>: Add.
1051         * python/py-progspace.c (pspy_objfiles): Rewrite.
1052         (pspy_solib_name, pspy_block_for_pc)
1053         (pspy_find_pc_line, pspy_is_valid): New functions.
1054         (progspace_object_methods): Add entries for solib_name,
1055         block_for_pc, find_pc_line, is_valid.
1056         * python/python-internal.h (gdbpy_block_for_pc)
1057         (build_objfiles_list): Don't declare.
1058         * python/python.c: Don't include solib.h.
1059         (gdbpy_solib_name, gdbpy_find_pc_line)
1060         (gdbpy_get_current_progspace, build_objfiles_list)
1061         (gdbpy_objfiles): Remove.
1062         (GdbMethods) <current_progspace, objfiles, block_for_pc,
1063         solib_name, find_pc_line>: Remove entries.
1064
1065 2018-09-16  Tom Tromey  <tom@tromey.com>
1066
1067         * top.c (new_ui_command): Use GNU style for metasyntactic
1068         variables.
1069         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
1070         variables.
1071         * maint.c (maintenance_translate_address): Remove "<>" around
1072         text.
1073         * interps.c (interpreter_exec_cmd): Use GNU style for
1074         metasyntactic variables.
1075         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
1076         metasyntactic variables.
1077         * tracepoint.c (tfind_range_command): Use GNU style for
1078         metasyntactic variables.
1079         (tfind_outside_command): Likewise.
1080         (_initialize_tracepoint): Likewise.
1081         * remote.c (extended_remote_target::create_inferior): Use GNU
1082         style for metasyntactic variables.
1083         * sparc64-tdep.c (adi_examine_command): Use GNU style for
1084         metasyntactic variables.
1085         (adi_assign_command): Likewise.
1086
1087 2018-09-16  Tom Tromey  <tom@tromey.com>
1088
1089         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
1090         metasyntactic variables.  Print message if no disassembler options
1091         are available.
1092
1093 2018-09-15  Tom Tromey  <tom@tromey.com>
1094
1095         * infcmd.c (get_inferior_args): Return const char *.
1096         * inferior.h (get_inferior_args): Return type now const.
1097         * linux-tdep.c (linux_fill_prpsinfo): Update.
1098         * procfs.c (procfs_target::make_corefile_notes): Update.
1099
1100 2018-09-07  Tom Tromey  <tom@tromey.com>
1101
1102         * python/python.c (execute_gdb_command): Call bpstat_do_actions
1103         inside the TRY.
1104
1105 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
1106
1107         * nios2-tdep.c (nios2_type_align): New.
1108         (nios2_gdb_arch_init): Install type_align hook.
1109
1110 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
1111
1112         * eval.c (fake_method::fake_method): Call xzalloc directly for a
1113         type that is neither object file owned, nor gdbarch owned.
1114         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
1115         gdbarch is non-NULL.
1116         (alloc_type_instance): Allocate non-objfile owned types on the
1117         gdbarch obstack.
1118         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
1119         using TYPE_ALLOC to ensure memory is allocated on the correct
1120         obstack.
1121         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
1122         obstack, or the gdbarch obstack.
1123         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
1124
1125 2018-09-14  Tom Tromey  <tom@tromey.com>
1126
1127         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
1128         block.
1129
1130 2018-09-14  Tom Tromey  <tom@tromey.com>
1131
1132         * nat/fork-inferior.c (get_startup_shell): Remove "static".
1133
1134 2018-09-13  Tom Tromey  <tom@tromey.com>
1135
1136         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
1137         static.
1138
1139 2018-09-13  Tom Tromey  <tom@tromey.com>
1140
1141         * exec.c (try_open_exec_file): Use std::string.
1142
1143 2018-09-13  Tom Tromey  <tom@tromey.com>
1144
1145         * utils.h (gdb_bfd_errmsg): Return std::string.
1146         * exec.c (exec_file_attach): Update.
1147         * compile/compile-object-load.c (compile_object_load): Update.
1148         * utils.c (gdb_bfd_errmsg): Return std::string.
1149
1150 2018-09-13  Tom Tromey  <tom@tromey.com>
1151
1152         * procfs.c (struct procinfo_deleter): New.
1153         (procinfo_up): New typedef.
1154         (do_destroy_procinfo_cleanup): Remove.
1155         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
1156
1157 2018-09-13  Tom Tromey  <tom@tromey.com>
1158
1159         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
1160
1161 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1162 2018-09-13  Tom Tromey  <tom@tromey.com>
1163
1164         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
1165         (pspy_get_objfiles): New function.
1166         (progspace_object_methods): New.
1167         (pspace_object_type): Add tp_methods callback.
1168         * python/python-internal.h (build_objfiles_list): New
1169         declaration.
1170         * python/python.c (build_objfiles_list): New function.
1171         (gdbpy_objfiles): Implement using build_objfiles_list.
1172         * NEWS: Mention the Progspace.objfiles method.
1173
1174 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1175
1176         * python/py-inferior.c (infpy_get_progspace): New function.
1177         (inferior_object_getset): Add progspace property.
1178         * NEWS: Mention the new property.
1179
1180 2018-09-13  Tom Tromey  <tom@tromey.com>
1181
1182         PR rust/23650:
1183         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
1184
1185 2018-09-13  Tom Tromey  <tom@tromey.com>
1186
1187         PR rust/23626:
1188         * rust-lang.c (rust_enum_variant): Now static.
1189         (rust_empty_enum_p): New function.
1190         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
1191         Handle empty enum.
1192
1193 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1194
1195         * python/py-inferior.c (infpy_repr): New.
1196         (inferior_object_type): Register infpy_repr.
1197         * python/py-objfile.c (objfpy_repr): New.
1198         (objfile_object_type): Register objfpy_repr.
1199
1200 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1201
1202         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
1203
1204 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1205
1206         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
1207         typo.
1208
1209 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
1210
1211         * common/common-utils.c: Don't include '<sys/stat.h>'.
1212         (is_regular_file): Move to...
1213         * common/filestuff.c (is_regular_file): ... here.
1214         * common/common-utils.h (is_regular_file): Move to...
1215         * common/filestuff.h (is_regular_file): ... here.
1216
1217 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
1218
1219         * skip.c (debug_skip): New variable.
1220         (skiplist_entry::do_skip_file_p): Add debug output.
1221         (skiplist_entry::do_skip_gfile_p): Likewise.
1222         (skiplist_entry::skip_function_p): Likewise.
1223         (_initialize_step_skip): Create debug command.
1224         * NEWS: Mention set/show debug skip.
1225
1226 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1227
1228         * darwin-nat.c (should_disable_startup_with_shell):
1229         New function.
1230         (darwin_nat_target::create_inferior): Add call.
1231
1232 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1233
1234         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
1235         inf_port, msg_state>: Initialize.
1236         (struct darwin_thread_info) <signaled, single_step>: Change
1237         type and initialize.
1238         (struct darwin_thread_info) <event>: Initialize.
1239
1240 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1241
1242         PR gdb/23555
1243         PR gdb/23558
1244         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
1245         guesses.
1246
1247 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1248
1249         Revert:
1250         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1251
1252         PR gdb/23555
1253         PR gdb/23558
1254         * gnulib/aclocal.m4: Regenerate.
1255         * gnulib/config.in: Regenerate.
1256         * gnulib/configure: Regenerate.
1257         * gnulib/import/Makefile.am: Update.
1258         * gnulib/import/Makefile.in: Update.
1259         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
1260         * gnulib/import/_Noreturn.h: ... this.
1261         * gnulib/import/alloca.in.h: Update.
1262         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
1263         * gnulib/import/arg-nonnull.h: ... this.
1264         * gnulib/import/assure.h: Update.
1265         * gnulib/import/at-func.c: Update.
1266         * gnulib/import/basename-lgpl.c: Update.
1267         * gnulib/import/extra/snippet/c++defs.h: Rename to...
1268         * gnulib/import/c++defs.h: ... this.
1269         * gnulib/import/canonicalize-lgpl.c: Update.
1270         * gnulib/import/cdefs.h: Update.
1271         * gnulib/import/chdir-long.c: Update.
1272         * gnulib/import/chdir-long.h: Update.
1273         * gnulib/import/cloexec.c: Update.
1274         * gnulib/import/cloexec.h: Update.
1275         * gnulib/import/close.c: Update.
1276         * gnulib/import/closedir.c: Update.
1277         * gnulib/import/config.charset: Update.
1278         * gnulib/import/dirent-private.h: Update.
1279         * gnulib/import/dirent.in.h: Update.
1280         * gnulib/import/dirfd.c: Update.
1281         * gnulib/import/dirname-lgpl.c: Update.
1282         * gnulib/import/dirname.h: Update.
1283         * gnulib/import/dosname.h: Update.
1284         * gnulib/import/dup-safer-flag.c: Update.
1285         * gnulib/import/dup-safer.c: Update.
1286         * gnulib/import/dup.c: Update.
1287         * gnulib/import/dup2.c: Update.
1288         * gnulib/import/errno.in.h: Update.
1289         * gnulib/import/error.c: Update.
1290         * gnulib/import/error.h: Update.
1291         * gnulib/import/exitfail.c: Update.
1292         * gnulib/import/exitfail.h: Update.
1293         * gnulib/import/extra/update-copyright: Update.
1294         * gnulib/import/fchdir.c: Update.
1295         * gnulib/import/fcntl.c: Update.
1296         * gnulib/import/fcntl.in.h: Update.
1297         * gnulib/import/fd-hook.c: Update.
1298         * gnulib/import/fd-hook.h: Update.
1299         * gnulib/import/fd-safer-flag.c: Update.
1300         * gnulib/import/fd-safer.c: Update.
1301         * gnulib/import/fdopendir.c: Update.
1302         * gnulib/import/filename.h: Update.
1303         * gnulib/import/filenamecat-lgpl.c: Update.
1304         * gnulib/import/filenamecat.h: Update.
1305         * gnulib/import/flexmember.h: Update.
1306         * gnulib/import/float+.h: Update.
1307         * gnulib/import/float.c: Update.
1308         * gnulib/import/float.in.h: Update.
1309         * gnulib/import/fnmatch.c: Update.
1310         * gnulib/import/fnmatch.in.h: Update.
1311         * gnulib/import/fnmatch_loop.c: Update.
1312         * gnulib/import/fpucw.h: Update.
1313         * gnulib/import/frexp.c: Update.
1314         * gnulib/import/frexpl.c: Update.
1315         * gnulib/import/fstat.c: Update.
1316         * gnulib/import/fstatat.c: Update.
1317         * gnulib/import/getcwd-lgpl.c: Update.
1318         * gnulib/import/getcwd.c: Update.
1319         * gnulib/import/getdtablesize.c: Update.
1320         * gnulib/import/getlogin_r.c: Update.
1321         * gnulib/import/getprogname.c: Update.
1322         * gnulib/import/getprogname.h: Update.
1323         * gnulib/import/gettext.h: Update.
1324         * gnulib/import/gettimeofday.c: Update.
1325         * gnulib/import/glob-libc.h: Update.
1326         * gnulib/import/glob.c: Update.
1327         * gnulib/import/glob.in.h: Update.
1328         * gnulib/import/glob_internal.h: Update.
1329         * gnulib/import/glob_pattern_p.c: Update.
1330         * gnulib/import/globfree.c: Update.
1331         * gnulib/import/hard-locale.c: Update.
1332         * gnulib/import/hard-locale.h: Update.
1333         * gnulib/import/intprops.h: Update.
1334         * gnulib/import/inttypes.in.h: Update.
1335         * gnulib/import/isnan.c: Update.
1336         * gnulib/import/isnand-nolibm.h: Update.
1337         * gnulib/import/isnand.c: Update.
1338         * gnulib/import/isnanl-nolibm.h: Update.
1339         * gnulib/import/isnanl.c: Update.
1340         * gnulib/import/itold.c: Update.
1341         * gnulib/import/libc-config.h: Update.
1342         * gnulib/import/limits.in.h: Update.
1343         * gnulib/import/localcharset.c: Update.
1344         * gnulib/import/localcharset.h: Update.
1345         * gnulib/import/localtime-buffer.c: Update.
1346         * gnulib/import/localtime-buffer.h: Update.
1347         * gnulib/import/lstat.c: Update.
1348         * gnulib/import/m4/00gnulib.m4: Update.
1349         * gnulib/import/m4/__inline.m4: Update.
1350         * gnulib/import/m4/absolute-header.m4: Update.
1351         * gnulib/import/m4/alloca.m4: Update.
1352         * gnulib/import/m4/builtin-expect.m4: Update.
1353         * gnulib/import/m4/canonicalize.m4: Update.
1354         * gnulib/import/m4/chdir-long.m4: Update.
1355         * gnulib/import/m4/close.m4: Update.
1356         * gnulib/import/m4/closedir.m4: Update.
1357         * gnulib/import/m4/configmake.m4: Update.
1358         * gnulib/import/m4/d-ino.m4: Update.
1359         * gnulib/import/m4/d-type.m4: Update.
1360         * gnulib/import/m4/dirent_h.m4: Update.
1361         * gnulib/import/m4/dirfd.m4: Update.
1362         * gnulib/import/m4/dirname.m4: Update.
1363         * gnulib/import/m4/double-slash-root.m4: Update.
1364         * gnulib/import/m4/dup.m4: Update.
1365         * gnulib/import/m4/dup2.m4: Update.
1366         * gnulib/import/m4/eealloc.m4: Update.
1367         * gnulib/import/m4/environ.m4: Update.
1368         * gnulib/import/m4/errno_h.m4: Update.
1369         * gnulib/import/m4/error.m4: Update.
1370         * gnulib/import/m4/exponentd.m4: Update.
1371         * gnulib/import/m4/exponentl.m4: Update.
1372         * gnulib/import/m4/extensions.m4: Update.
1373         * gnulib/import/m4/extern-inline.m4: Update.
1374         * gnulib/import/m4/fchdir.m4: Update.
1375         * gnulib/import/m4/fcntl-o.m4: Update.
1376         * gnulib/import/m4/fcntl.m4: Update.
1377         * gnulib/import/m4/fcntl_h.m4: Update.
1378         * gnulib/import/m4/fdopendir.m4: Update.
1379         * gnulib/import/m4/filenamecat.m4: Update.
1380         * gnulib/import/m4/flexmember.m4: Update.
1381         * gnulib/import/m4/float_h.m4: Update.
1382         * gnulib/import/m4/fnmatch.m4: Update.
1383         * gnulib/import/m4/fnmatch_h.m4: Update.
1384         * gnulib/import/m4/fpieee.m4: Update.
1385         * gnulib/import/m4/frexp.m4: Update.
1386         * gnulib/import/m4/frexpl.m4: Update.
1387         * gnulib/import/m4/fstat.m4: Update.
1388         * gnulib/import/m4/fstatat.m4: Update.
1389         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
1390         * gnulib/import/m4/getcwd-path-max.m4: Update.
1391         * gnulib/import/m4/getcwd.m4: Update.
1392         * gnulib/import/m4/getdtablesize.m4: Update.
1393         * gnulib/import/m4/getlogin.m4: Update.
1394         * gnulib/import/m4/getlogin_r.m4: Update.
1395         * gnulib/import/m4/getpagesize.m4: Update.
1396         * gnulib/import/m4/getprogname.m4: Update.
1397         * gnulib/import/m4/gettimeofday.m4: Update.
1398         * gnulib/import/m4/glibc21.m4: Update.
1399         * gnulib/import/m4/glob.m4: Update.
1400         * gnulib/import/m4/glob_h.m4: Update.
1401         * gnulib/import/m4/gnulib-cache.m4: Update.
1402         * gnulib/import/m4/gnulib-common.m4: Update.
1403         * gnulib/import/m4/gnulib-comp.m4: Update.
1404         * gnulib/import/m4/gnulib-tool.m4: Update.
1405         * gnulib/import/m4/hard-locale.m4: Update.
1406         * gnulib/import/m4/include_next.m4: Update.
1407         * gnulib/import/m4/inttypes-pri.m4: Update.
1408         * gnulib/import/m4/inttypes.m4: Update.
1409         * gnulib/import/m4/isnand.m4: Update.
1410         * gnulib/import/m4/isnanl.m4: Update.
1411         * gnulib/import/m4/largefile.m4: Update.
1412         * gnulib/import/m4/limits-h.m4: Update.
1413         * gnulib/import/m4/localcharset.m4: Update.
1414         * gnulib/import/m4/locale-fr.m4: Update.
1415         * gnulib/import/m4/locale-ja.m4: Update.
1416         * gnulib/import/m4/locale-zh.m4: Update.
1417         * gnulib/import/m4/localtime-buffer.m4: Update.
1418         * gnulib/import/m4/longlong.m4: Update.
1419         * gnulib/import/m4/lstat.m4: Update.
1420         * gnulib/import/m4/malloc.m4: Update.
1421         * gnulib/import/m4/malloca.m4: Update.
1422         * gnulib/import/m4/math_h.m4: Update.
1423         * gnulib/import/m4/mbrtowc.m4: Update.
1424         * gnulib/import/m4/mbsinit.m4: Update.
1425         * gnulib/import/m4/mbsrtowcs.m4: Update.
1426         * gnulib/import/m4/mbstate_t.m4: Update.
1427         * gnulib/import/m4/memchr.m4: Update.
1428         * gnulib/import/m4/memmem.m4: Update.
1429         * gnulib/import/m4/mempcpy.m4: Update.
1430         * gnulib/import/m4/memrchr.m4: Update.
1431         * gnulib/import/m4/mkdir.m4: Update.
1432         * gnulib/import/m4/mkstemp.m4: Update.
1433         * gnulib/import/m4/mmap-anon.m4: Update.
1434         * gnulib/import/m4/mode_t.m4: Update.
1435         * gnulib/import/m4/msvc-inval.m4: Update.
1436         * gnulib/import/m4/msvc-nothrow.m4: Update.
1437         * gnulib/import/m4/multiarch.m4: Update.
1438         * gnulib/import/m4/nocrash.m4: Update.
1439         * gnulib/import/m4/off_t.m4: Update.
1440         * gnulib/import/m4/onceonly.m4: Update.
1441         * gnulib/import/m4/open-cloexec.m4: Update.
1442         * gnulib/import/m4/open.m4: Update.
1443         * gnulib/import/m4/openat.m4: Update.
1444         * gnulib/import/m4/opendir.m4: Update.
1445         * gnulib/import/m4/pathmax.m4: Update.
1446         * gnulib/import/m4/rawmemchr.m4: Update.
1447         * gnulib/import/m4/readdir.m4: Update.
1448         * gnulib/import/m4/readlink.m4: Update.
1449         * gnulib/import/m4/realloc.m4: Update.
1450         * gnulib/import/m4/rename.m4: Update.
1451         * gnulib/import/m4/rewinddir.m4: Update.
1452         * gnulib/import/m4/rmdir.m4: Update.
1453         * gnulib/import/m4/save-cwd.m4: Update.
1454         * gnulib/import/m4/secure_getenv.m4: Update.
1455         * gnulib/import/m4/setenv.m4: Update.
1456         * gnulib/import/m4/signal_h.m4: Update.
1457         * gnulib/import/m4/ssize_t.m4: Update.
1458         * gnulib/import/m4/stat-time.m4: Update.
1459         * gnulib/import/m4/stat.m4: Update.
1460         * gnulib/import/m4/std-gnu11.m4: Update.
1461         * gnulib/import/m4/stdbool.m4: Update.
1462         * gnulib/import/m4/stddef_h.m4: Update.
1463         * gnulib/import/m4/stdint.m4: Update.
1464         * gnulib/import/m4/stdio_h.m4: Update.
1465         * gnulib/import/m4/stdlib_h.m4: Update.
1466         * gnulib/import/m4/strchrnul.m4: Update.
1467         * gnulib/import/m4/strdup.m4: Update.
1468         * gnulib/import/m4/strerror.m4: Update.
1469         * gnulib/import/m4/string_h.m4: Update.
1470         * gnulib/import/m4/strstr.m4: Update.
1471         * gnulib/import/m4/strtok_r.m4: Update.
1472         * gnulib/import/m4/sys_socket_h.m4: Update.
1473         * gnulib/import/m4/sys_stat_h.m4: Update.
1474         * gnulib/import/m4/sys_time_h.m4: Update.
1475         * gnulib/import/m4/sys_types_h.m4: Update.
1476         * gnulib/import/m4/tempname.m4: Update.
1477         * gnulib/import/m4/time_h.m4: Update.
1478         * gnulib/import/m4/unistd-safer.m4: Update.
1479         * gnulib/import/m4/unistd_h.m4: Update.
1480         * gnulib/import/m4/warn-on-use.m4: Update.
1481         * gnulib/import/m4/wchar_h.m4: Update.
1482         * gnulib/import/m4/wchar_t.m4: Update.
1483         * gnulib/import/m4/wctype_h.m4: Update.
1484         * gnulib/import/m4/wint_t.m4: Update.
1485         * gnulib/import/malloc.c: Update.
1486         * gnulib/import/malloc/scratch_buffer.h: Update.
1487         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
1488         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
1489         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
1490         * gnulib/import/malloca.c: Update.
1491         * gnulib/import/malloca.h: Update.
1492         * gnulib/import/malloca.valgrind: Update.
1493         * gnulib/import/math.in.h: Update.
1494         * gnulib/import/mbrtowc.c: Update.
1495         * gnulib/import/mbsinit.c: Update.
1496         * gnulib/import/mbsrtowcs-impl.h: Update.
1497         * gnulib/import/mbsrtowcs-state.c: Update.
1498         * gnulib/import/mbsrtowcs.c: Update.
1499         * gnulib/import/memchr.c: Update.
1500         * gnulib/import/memmem.c: Update.
1501         * gnulib/import/mempcpy.c: Update.
1502         * gnulib/import/memrchr.c: Update.
1503         * gnulib/import/mkdir.c: Update.
1504         * gnulib/import/mkstemp.c: Update.
1505         * gnulib/import/msvc-inval.c: Update.
1506         * gnulib/import/msvc-inval.h: Update.
1507         * gnulib/import/msvc-nothrow.c: Update.
1508         * gnulib/import/msvc-nothrow.h: Update.
1509         * gnulib/import/open.c: Update.
1510         * gnulib/import/openat-die.c: Update.
1511         * gnulib/import/openat-priv.h: Update.
1512         * gnulib/import/openat-proc.c: Update.
1513         * gnulib/import/openat.c: Update.
1514         * gnulib/import/openat.h: Update.
1515         * gnulib/import/opendir.c: Update.
1516         * gnulib/import/pathmax.h: Update.
1517         * gnulib/import/pipe-safer.c: Update.
1518         * gnulib/import/rawmemchr.c: Update.
1519         * gnulib/import/readdir.c: Update.
1520         * gnulib/import/readlink.c: Update.
1521         * gnulib/import/realloc.c: Update.
1522         * gnulib/import/ref-add.sin: Update.
1523         * gnulib/import/ref-del.sin: Update.
1524         * gnulib/import/rename.c: Update.
1525         * gnulib/import/rewinddir.c: Update.
1526         * gnulib/import/rmdir.c: Update.
1527         * gnulib/import/same-inode.h: Update.
1528         * gnulib/import/save-cwd.c: Update.
1529         * gnulib/import/save-cwd.h: Update.
1530         * gnulib/import/scratch_buffer.h: Update.
1531         * gnulib/import/secure_getenv.c: Update.
1532         * gnulib/import/setenv.c: Update.
1533         * gnulib/import/signal.in.h: Update.
1534         * gnulib/import/stat-time.c: Update.
1535         * gnulib/import/stat-time.h: Update.
1536         * gnulib/import/stat-w32.c: Update.
1537         * gnulib/import/stat-w32.h: Update.
1538         * gnulib/import/stat.c: Update.
1539         * gnulib/import/stdbool.in.h: Update.
1540         * gnulib/import/stddef.in.h: Update.
1541         * gnulib/import/stdint.in.h: Update.
1542         * gnulib/import/stdio.in.h: Update.
1543         * gnulib/import/stdlib.in.h: Update.
1544         * gnulib/import/str-two-way.h: Update.
1545         * gnulib/import/strchrnul.c: Update.
1546         * gnulib/import/strdup.c: Update.
1547         * gnulib/import/streq.h: Update.
1548         * gnulib/import/strerror-override.c: Update.
1549         * gnulib/import/strerror-override.h: Update.
1550         * gnulib/import/strerror.c: Update.
1551         * gnulib/import/string.in.h: Update.
1552         * gnulib/import/stripslash.c: Update.
1553         * gnulib/import/strnlen1.c: Update.
1554         * gnulib/import/strnlen1.h: Update.
1555         * gnulib/import/strstr.c: Update.
1556         * gnulib/import/strtok_r.c: Update.
1557         * gnulib/import/sys_stat.in.h: Update.
1558         * gnulib/import/sys_time.in.h: Update.
1559         * gnulib/import/sys_types.in.h: Update.
1560         * gnulib/import/tempname.c: Update.
1561         * gnulib/import/tempname.h: Update.
1562         * gnulib/import/time.in.h: Update.
1563         * gnulib/import/unistd--.h: Update.
1564         * gnulib/import/unistd-safer.h: Update.
1565         * gnulib/import/unistd.in.h: Update.
1566         * gnulib/import/unsetenv.c: Update.
1567         * gnulib/import/verify.h: Update.
1568         * gnulib/import/extra/snippet/warn-on-use.h: Update.
1569         * gnulib/import/wchar.in.h: Update.
1570         * gnulib/import/wctype.in.h: Update.
1571         * gnulib/import/xalloc-oversized.h: Update.
1572         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
1573         "53e2c179f26a890fa6685af4b6c1397ee370433b".
1574
1575 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
1576
1577         * record-btrace.c (get_thread_current_frame): Remove
1578         old_inferior_ptid.
1579
1580 2018-09-10  Jerome Guitton  <guitton@adacore.com>
1581
1582         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
1583         with check_tag to 1 if and only if the type is tagged and the
1584         component being searched cannot been found in the current
1585         view. Otherwise, always call ada_to_fixed_type with
1586         check_tag to 0.
1587
1588 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1589
1590         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
1591         declaration.
1592         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
1593         * ada-varobj.c (ada_varobj_get_number_of_children,
1594         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
1595
1596 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1597
1598         * ada-valprint.c (ada_value_print): Use type instead of
1599         enclosing type.
1600
1601 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1602
1603         * ada-lang.c (ada_value_subscript): Handle case when parameter is
1604         an array of access to unconstrained array.
1605
1606 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1607
1608         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
1609         (ada_check_typedef): Use it.
1610
1611 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1612
1613         * ada-varobj.c (ada_varobj_describe_struct_child)
1614         (ada_varobj_describe_child): Handle union case like struct one.
1615
1616 2018-09-10  Tom Tromey  <tom@tromey.com>
1617
1618         PR python/18380:
1619         * python/python.c (_initialize_python): Make example in "python"
1620         help work in Python 3.
1621
1622 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
1623
1624         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
1625         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
1626         $(EXEEXT) to the script, as it is not a program.
1627
1628 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
1629
1630         * python/py-prettyprint.c (pretty_print_one_value): Return
1631         gdbpy_ref<>.
1632         (print_string_repr): Adjust.
1633         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
1634         * python/python-internal.h (apply_varobj_pretty_printer): Return
1635         gdbpy_ref<>.
1636         * varobj.c (varobj_value_get_print_value): Adjust.
1637
1638 2018-09-08  Tom Tromey  <tom@tromey.com>
1639
1640         PR python/16047:
1641         * python/py-prettyprint.c (pretty_print_one_value): Check for
1642         to_string method.
1643
1644 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1645
1646         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
1647         replace_operator_with_call.
1648
1649 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1650
1651         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
1652
1653 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1654
1655         * ada-typeprint.c (print_range): Print the bounds using TYPE
1656         rather than its TYPE_TARGET_TYPE.
1657
1658 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1659
1660         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
1661         call to ada_to_fixed_value_create.
1662
1663 2018-09-08  Jerome Guitton  <guitton@adacore.com>
1664
1665         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
1666
1667 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1668
1669         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
1670         by calls to error.
1671
1672 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1673
1674         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
1675         Move update of loop variable "fi".
1676
1677 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1678
1679         * ada-lang.c (value_assign_to_component): In the case of
1680         big-endian targets, extract the bits of the given VAL
1681         using an src_offset of zero if container is not a scalar.
1682
1683 2018-09-06  Simon Ser  <contact@emersion.fr>
1684
1685         PR gdb/23105
1686         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
1687         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
1688         * fbsd-tdep.c (fbsd_make_note_desc): New.
1689         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
1690         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
1691         * target.h (enum target_object) Add FreeBSD-specific
1692         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
1693
1694 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
1695
1696         * compile/compile-c.h (generate_c_for_variable_locations):
1697         Change reference to pointer.
1698         * compile/compile-c-support.c (compile_program) <compute>:
1699         Likewise.
1700         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
1701         (generate_c_for_for_one_variable): Likewise
1702         (generate_c_for_variable_locations): Likewise
1703         * compile/compile-c-types.c (compile_c_instance::convert_type):
1704         Likewise
1705         * compile/compile-cplus-symbols.c (convert_one_symbol):
1706         std::move the scope passed to enter_scope.
1707         * compile/compile-cplus-types.c
1708         (compile_cplus_instance::enter_scope): Make parameter
1709         rvalue-reference.
1710         (compile_cplus_instance::new_scope): Change reference to
1711         pointer.
1712         (compile_cplus_instance::convert_type): Likewise
1713         (compile_cplus_convert_typedef): std::move the scope passed to
1714         enter_scope.
1715         (compile_cplus_convert_struct_or_union): Likewise.
1716         (compile_cplus_convert_enum): Likewise.
1717         (compile_cplus_convert_namespace): Likewise.
1718         * compile/compile-cplus.h (compile_cplus_instance)
1719         <enter_scope>: Make parameter rvalue-reference.
1720         * compile/compile-internal.h (compile_instance)
1721         <get_cached_type>: Likewise
1722         * compile/compile-loc2c.c (push): Likewise
1723         (pushf): Likewise
1724         (unary): Likewise
1725         (binary): Likewise
1726         (print_label): Likewise
1727         (pushf_register_address): Likewise
1728         (pushf_register): Likewise
1729         (do_compile_dwarf_expr_to_c): Likewise
1730         (compile_dwarf_expr_to_c): Likewise
1731         (compile_dwarf_bounds_to_c): Likewise
1732         * compile/compile.c (compile_instance::get_cached_type):
1733         Likewise
1734         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
1735         (compile_dwarf_bounds_to_c): Likewise
1736         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
1737         (dwarf2_compile_property_to_c): Likewise
1738         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
1739         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
1740         Likewise
1741
1742 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
1743
1744         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
1745         * tui/tui-data.c (init_content_element): Don't initialize it.
1746
1747 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
1748
1749         * tui/tui-data.h (struct tui_win_info)
1750         <detail::opaque>: Remove.
1751         * tui/tui-data.c (init_win_info): Remove assignment.
1752
1753 2018-09-05  Tom Tromey  <tom@tromey.com>
1754
1755         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
1756         -Wformat-nonliteral.
1757         * target-float.c (host_float_ops<T>::to_string)
1758         (host_float_ops<T>::from_string): Use
1759         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
1760         * configure: Rebuild.
1761
1762 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
1763
1764         * printcmd.c (printf_c_string): Use
1765         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
1766         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
1767
1768 2018-09-05  Tom Tromey  <tom@tromey.com>
1769
1770         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
1771
1772 2018-09-05  Tom de Vries  <tdevries@suse.de>
1773
1774         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
1775         with resolve_abstract_p == true.
1776         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
1777         defaulting to false. Propagate resolve_abstract_p to
1778         dwarf2_fetch_die_loc_sect_off.
1779         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
1780         parameter, defaulting to false.
1781         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
1782         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
1783         parameter.
1784         * dwarf2read.h (struct die_info): Forward-declare.
1785         (die_info_ptr): New typedef.
1786         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
1787
1788 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
1789
1790         GDB 8.2 released.
1791
1792 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
1793             Pedro Alves  <palves@redhat.com>
1794
1795         * gnulib/Makefile.in (aclocal_m4_deps): Move to
1796         "aclocal-m4-deps.mk".  Include file here.
1797         $(srcdir)/aclocal.m4: Add "configure.ac".
1798         * gnulib/aclocal-m4-deps.mk: New file.
1799         * gnulib/update-gnulib.sh: Automatically update
1800         "aclocal-m4-deps.mk".
1801
1802 2018-09-04  Tom Tromey  <tom@tromey.com>
1803
1804         * configure: Rebuild.
1805         * configure.ac: Remove multi-ice code.
1806
1807 2018-09-04  Tom Tromey  <tom@tromey.com>
1808
1809         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
1810         (ada-exp.o): Update.
1811
1812 2018-09-04  Tom Tromey  <tom@tromey.com>
1813
1814         * Makefile.in (printcmd.o, target-float.o): Remove.
1815         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
1816
1817 2018-09-04  Tom Tromey  <tom@tromey.com>
1818
1819         * gnulib/Makefile.in: Remove obsolete comment.
1820         * Makefile.in: Remove obsolete comment.
1821
1822 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
1823
1824         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
1825         line with '+'.
1826
1827 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
1828
1829         * riscv-tdep.c: Add 'prologue-value.h' include.
1830         (struct riscv_unwind_cache): New struct.
1831         (riscv_debug_unwinder): New global.
1832         (riscv_scan_prologue): Update arguments, capture register details
1833         from prologue scan.
1834         (riscv_skip_prologue): Reformat arguments line, move end of
1835         prologue calculation into riscv_scan_prologue.
1836         (riscv_frame_cache): Update return type, create
1837         riscv_unwind_cache, scan the prologue, and fill in remaining cache
1838         details.
1839         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
1840         (riscv_frame_prev_register): Use the trad_frame within the
1841         riscv_unwind_cache.
1842         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
1843         flag.
1844
1845 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
1846
1847         * trad-frame.h (trad_frame_set_realreg): Declare.
1848         (trad_frame_set_addr): Declare.
1849         * trad-frame.c (trad_frame_set_realreg): Define new function.
1850         (trad_frame_set_addr): Define new function.
1851         (trad_frame_set_reg_realreg): Use new function.
1852         (trad_frame_set_reg_addr): Use new function.
1853
1854 2018-09-01  Keith Seitz  <keiths@redhat.com>
1855
1856         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
1857         pulongest instead of "%lld".
1858         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
1859         ATTRIBUTE_UNUSED.
1860
1861 2018-08-31  Tom Tromey  <tom@tromey.com>
1862
1863         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
1864         variant part type.
1865
1866 2018-08-31  Pedro Alves  <palves@redhat.com>
1867
1868         * gdbarch.h: Regenerate.
1869
1870 2018-08-31  Pedro Alves  <palves@redhat.com>
1871
1872         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
1873         * target.h (Hardware watchpoint interfaces): Describe
1874         continuable/steppable/non-steppable watchpoints.
1875         * gdbarch.h, gdbarch.c: Regenerate.
1876
1877 2018-08-31  Pedro Alves  <palves@redhat.com>
1878
1879         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
1880         Delete.
1881         * s390-linux-nat.c
1882         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
1883         * target.h (target_ops::have_continuable_watchpoint): Delete.
1884         (target_have_continuable_watchpoint): Delete.
1885         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
1886         * target-delegates.c: Regenerate.
1887
1888 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
1889
1890         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
1891         the files present in "gnulib/import/m4/".
1892
1893 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
1894
1895         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
1896         c.sw, c.swsp, and c.sdsp.
1897
1898 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
1899
1900         * riscv-tdep.c (struct riscv_inferior_data): Delete.
1901         (riscv_read_misa_reg): Don't cache value read into inferior data.
1902         (riscv_new_inferior_data): Delete.
1903         (riscv_inferior_data_cleanup): Delete.
1904         (riscv_inferior_data): Delete.
1905         (riscv_invalidate_inferior_data): Delete.
1906         (_initialize_riscv_tdep): Remove initialisation of inferior data.
1907
1908 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
1909
1910         * compile/compile-cplus-types.c
1911         (compile_cplus_instance::leave_scope): Take the address of scope
1912         object.
1913         (compile_cplus_instance::convert_qualified_base): Compare quals
1914         to 0.
1915
1916 2018-08-30  Keith Seitz  <keiths@redhat.com>
1917
1918         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
1919         Use "%s" and host_address_to_string instead of "%p" in printf.
1920
1921 2018-08-29  Keith Seitz  <keiths@redhat.com>
1922
1923         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
1924         and compile-cplus-types.c.
1925         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
1926         * c-lang.c (cplus_language_defn): Set C++ compile functions.
1927         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
1928         Declare.
1929         * compile/compile-c-support.c: Include compile-cplus.h.
1930         (load_libcompile): Templatize.
1931         (get_compile_context): "New" function.
1932         (c_get_compile_context): Use get_compile_context.
1933         (cplus_get_compile_context): New function.
1934         (cplus_push_user_expression, cplus_pop_user_expression)
1935         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
1936         (cplus_compute_program): Define new structs/functions.
1937         * compile/compile-cplus-symmbols.c: New file.
1938         * compile/compile-cplus-types.c: New file.
1939         * compile/compile-cplus.h: New file.
1940         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
1941         Declare.
1942         * compile/compile-object-load.c (get_out_value_type): Use
1943         strncmp_iw when comparing symbol names.
1944         (compile_object_load): Add mst_bss and mst_data.
1945         * compile/compile.c (_initialize_compile): Remove
1946         -Wno-implicit-function-declaration from `compile_args'.
1947         * compile/gcc-cp-plugin.h: New file.
1948         * NEWS: Mention C++ compile support and new debug options.
1949
1950 2018-08-29  Keith Seitz  <keiths@redhat.com>
1951
1952         * linespec.c (collect_info::add_symbol): Make virtual.
1953         (struct symbol_searcher_collect_info): New struct.
1954         (symbol_searcher::find_all_symbols): New method.
1955         * symtab.h (class symbol_searcher): New class.
1956
1957 2018-08-29  Keith Seitz  <keiths@redhat.com>
1958
1959         * linespec.c (struct linespec) <function_symbols, label_symbols>:
1960         Change to vector of block_symbol.  Update all users.
1961         (struct collect_info) <symbols>: Likewise.
1962         (collect_info::add_symbol): Take block_symbol as argument.
1963         Update all callers.
1964         (decode_compound_collector) <m_symbols>: Change type to vector
1965         of block_symbol.  Update all users.
1966         (decode_compound_collector::operator ()): Change parameter type
1967         to block_symbol.
1968         (find_method, find_function_symbols, find_linespec_symbols)
1969         (find_label_symbols_in_block, find_label_symbols): Change symbol
1970         vectors to block_symbol vectors.
1971         * symtab.h (symbol_found_callback_ftype): Change parameter type to
1972         block_symbol.
1973
1974 2018-08-29  Keith Seitz  <keiths@redhat.com>
1975
1976         * linespec.c (symbolp): Remove typedef and VEC definitions.
1977         (bound_minimal_symbol_d): Likewise.
1978
1979 2018-08-29  Keith Seitz  <keiths@redhat.com>
1980
1981         * linespec.c (decode_compound_collector::decode_compound_collector):
1982         Remove initialization for `m_symtabs'.
1983         (decode_compound_collector::release_symbols): Change return type
1984         to std::vector.  Update all callers.
1985         (class decode_compound_collector) <m_symbols>: Change type to
1986         std::vector.
1987         (lookup_prefix_sym): Change return type to std::vector.  Update all
1988         callers.
1989         (compare_symbols): Remove.
1990         (std_compare_symbols): Rename to `compare_symbols'.
1991         (find_method): Change `sym_classes' parameter to std::vector.
1992         Update all callers.  Use std::sort to sort sym_classes.
1993         (find_linespec_symbols): Remove cleanup.
1994
1995 2018-08-29  Keith Seitz  <keiths@redhat.com>
1996
1997         * linespec.c (struct linespec) <minimal_symbols>: Change type to
1998         std::vector.  Update all users.
1999         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
2000         (struct collect_info) <minimal_symbols>: Likewise.
2001         (compare_msymbols): Return bool.  Change parameters to const
2002         bound_minimal_symbol references.
2003         (find_method, find_function_symbols, find_linespec_symbols): Change
2004         `minsyms' parameter to std::vector.  Update all callers.
2005
2006 2018-08-29  Keith Seitz  <keiths@redhat.com>
2007
2008         * linespec.c (struct linespec) <label_symbols>: Change type to
2009         std::vector.  Update all users.
2010         (find_label_symbols_in_block): Change `result' parameter to
2011         std::vector.  Update all callers.
2012         (find_label_symbols): Return std::vector.  Update all callers.
2013
2014 2018-08-29  Keith Seitz  <keiths@redhat.com>
2015
2016         * linespec.c (struct linespec) <function_symbols>: Change type to
2017         std::vector.  Update all users.
2018         (struct collect_info) <function_symbols>: Likewise.
2019         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
2020         (std_compare_symbols): New function.
2021         (find_method, find_function_symbols, find_linespec_symbols)
2022         (find_label_symbols_in_block): Change `symbols' parameter to
2023         std::vector.  Update all callers.
2024         (find_label_symbols): Likewise for `function_symbols' and
2025         `label_funcs_ret'.
2026
2027 2018-08-29  Keith Seitz  <keiths@redhat.com>
2028
2029         * linespec.c (symtab_vector_up): Define.
2030         (struct linespec) <file_symtabs>: Change type to std::vector *.
2031         Update all uses.
2032         (struct collect_info) <file_symtabs>: Likewise.
2033         (collect_symtabs_from_filename): Return symtab_vector_up.
2034         Update all callers.
2035         (decode_objc): Remove cleanup.
2036         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
2037         (symtab_collector::release_symtabs): Return symtab_vector_up.
2038         Update all callers.
2039         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
2040         Update all users.
2041         (collect_symtabs_from_filename, symtabs_from_filename): Return
2042         symtab_vector_up.  Update all callers.
2043
2044 2018-08-29  Tom Tromey  <tom@tromey.com>
2045
2046         * csky-tdep.c (csky_analyze_prologue): Use
2047         core_addr_to_string_nz.
2048
2049 2018-08-29  Tom Tromey  <tom@tromey.com>
2050
2051         * windows-nat.c (struct xlate_exception) <them>: Change type to
2052         DWORD.
2053         (xlate): Fix formatting.  Remove last entry.
2054         (struct xlate_exception, xlate): Comment out.
2055         (windows_nat_target::resume): Use ranged for.
2056
2057 2018-08-29  Jim Wilson  <jimw@sifive.com>
2058
2059         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
2060         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
2061         of NT_PRFPREG.
2062         (riscv_linux_nat_target::store_registers): Likewise.
2063
2064 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2065
2066         PR gdb/23555
2067         PR gdb/23558
2068         * gnulib/aclocal.m4: Regenerate.
2069         * gnulib/config.in: Regenerate.
2070         * gnulib/configure: Regenerate.
2071         * gnulib/import/Makefile.am: Update.
2072         * gnulib/import/Makefile.in: Update.
2073         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2074         * gnulib/import/_Noreturn.h: ... this.
2075         * gnulib/import/alloca.in.h: Update.
2076         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2077         * gnulib/import/arg-nonnull.h: ... this.
2078         * gnulib/import/assure.h: Update.
2079         * gnulib/import/at-func.c: Update.
2080         * gnulib/import/basename-lgpl.c: Update.
2081         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2082         * gnulib/import/c++defs.h: ... this.
2083         * gnulib/import/canonicalize-lgpl.c: Update.
2084         * gnulib/import/cdefs.h: Update.
2085         * gnulib/import/chdir-long.c: Update.
2086         * gnulib/import/chdir-long.h: Update.
2087         * gnulib/import/cloexec.c: Update.
2088         * gnulib/import/cloexec.h: Update.
2089         * gnulib/import/close.c: Update.
2090         * gnulib/import/closedir.c: Update.
2091         * gnulib/import/config.charset: Update.
2092         * gnulib/import/dirent-private.h: Update.
2093         * gnulib/import/dirent.in.h: Update.
2094         * gnulib/import/dirfd.c: Update.
2095         * gnulib/import/dirname-lgpl.c: Update.
2096         * gnulib/import/dirname.h: Update.
2097         * gnulib/import/dosname.h: Update.
2098         * gnulib/import/dup-safer-flag.c: Update.
2099         * gnulib/import/dup-safer.c: Update.
2100         * gnulib/import/dup.c: Update.
2101         * gnulib/import/dup2.c: Update.
2102         * gnulib/import/errno.in.h: Update.
2103         * gnulib/import/error.c: Update.
2104         * gnulib/import/error.h: Update.
2105         * gnulib/import/exitfail.c: Update.
2106         * gnulib/import/exitfail.h: Update.
2107         * gnulib/import/extra/update-copyright: Update.
2108         * gnulib/import/fchdir.c: Update.
2109         * gnulib/import/fcntl.c: Update.
2110         * gnulib/import/fcntl.in.h: Update.
2111         * gnulib/import/fd-hook.c: Update.
2112         * gnulib/import/fd-hook.h: Update.
2113         * gnulib/import/fd-safer-flag.c: Update.
2114         * gnulib/import/fd-safer.c: Update.
2115         * gnulib/import/fdopendir.c: Update.
2116         * gnulib/import/filename.h: Update.
2117         * gnulib/import/filenamecat-lgpl.c: Update.
2118         * gnulib/import/filenamecat.h: Update.
2119         * gnulib/import/flexmember.h: Update.
2120         * gnulib/import/float+.h: Update.
2121         * gnulib/import/float.c: Update.
2122         * gnulib/import/float.in.h: Update.
2123         * gnulib/import/fnmatch.c: Update.
2124         * gnulib/import/fnmatch.in.h: Update.
2125         * gnulib/import/fnmatch_loop.c: Update.
2126         * gnulib/import/fpucw.h: Update.
2127         * gnulib/import/frexp.c: Update.
2128         * gnulib/import/frexpl.c: Update.
2129         * gnulib/import/fstat.c: Update.
2130         * gnulib/import/fstatat.c: Update.
2131         * gnulib/import/getcwd-lgpl.c: Update.
2132         * gnulib/import/getcwd.c: Update.
2133         * gnulib/import/getdtablesize.c: Update.
2134         * gnulib/import/getlogin_r.c: Update.
2135         * gnulib/import/getprogname.c: Update.
2136         * gnulib/import/getprogname.h: Update.
2137         * gnulib/import/gettext.h: Update.
2138         * gnulib/import/gettimeofday.c: Update.
2139         * gnulib/import/glob-libc.h: Update.
2140         * gnulib/import/glob.c: Update.
2141         * gnulib/import/glob.in.h: Update.
2142         * gnulib/import/glob_internal.h: Update.
2143         * gnulib/import/glob_pattern_p.c: Update.
2144         * gnulib/import/globfree.c: Update.
2145         * gnulib/import/hard-locale.c: Update.
2146         * gnulib/import/hard-locale.h: Update.
2147         * gnulib/import/intprops.h: Update.
2148         * gnulib/import/inttypes.in.h: Update.
2149         * gnulib/import/isnan.c: Update.
2150         * gnulib/import/isnand-nolibm.h: Update.
2151         * gnulib/import/isnand.c: Update.
2152         * gnulib/import/isnanl-nolibm.h: Update.
2153         * gnulib/import/isnanl.c: Update.
2154         * gnulib/import/itold.c: Update.
2155         * gnulib/import/libc-config.h: Update.
2156         * gnulib/import/limits.in.h: Update.
2157         * gnulib/import/localcharset.c: Update.
2158         * gnulib/import/localcharset.h: Update.
2159         * gnulib/import/localtime-buffer.c: Update.
2160         * gnulib/import/localtime-buffer.h: Update.
2161         * gnulib/import/lstat.c: Update.
2162         * gnulib/import/m4/00gnulib.m4: Update.
2163         * gnulib/import/m4/__inline.m4: Update.
2164         * gnulib/import/m4/absolute-header.m4: Update.
2165         * gnulib/import/m4/alloca.m4: Update.
2166         * gnulib/import/m4/builtin-expect.m4: Update.
2167         * gnulib/import/m4/canonicalize.m4: Update.
2168         * gnulib/import/m4/chdir-long.m4: Update.
2169         * gnulib/import/m4/close.m4: Update.
2170         * gnulib/import/m4/closedir.m4: Update.
2171         * gnulib/import/m4/configmake.m4: Update.
2172         * gnulib/import/m4/d-ino.m4: Update.
2173         * gnulib/import/m4/d-type.m4: Update.
2174         * gnulib/import/m4/dirent_h.m4: Update.
2175         * gnulib/import/m4/dirfd.m4: Update.
2176         * gnulib/import/m4/dirname.m4: Update.
2177         * gnulib/import/m4/double-slash-root.m4: Update.
2178         * gnulib/import/m4/dup.m4: Update.
2179         * gnulib/import/m4/dup2.m4: Update.
2180         * gnulib/import/m4/eealloc.m4: Update.
2181         * gnulib/import/m4/environ.m4: Update.
2182         * gnulib/import/m4/errno_h.m4: Update.
2183         * gnulib/import/m4/error.m4: Update.
2184         * gnulib/import/m4/exponentd.m4: Update.
2185         * gnulib/import/m4/exponentl.m4: Update.
2186         * gnulib/import/m4/extensions.m4: Update.
2187         * gnulib/import/m4/extern-inline.m4: Update.
2188         * gnulib/import/m4/fchdir.m4: Update.
2189         * gnulib/import/m4/fcntl-o.m4: Update.
2190         * gnulib/import/m4/fcntl.m4: Update.
2191         * gnulib/import/m4/fcntl_h.m4: Update.
2192         * gnulib/import/m4/fdopendir.m4: Update.
2193         * gnulib/import/m4/filenamecat.m4: Update.
2194         * gnulib/import/m4/flexmember.m4: Update.
2195         * gnulib/import/m4/float_h.m4: Update.
2196         * gnulib/import/m4/fnmatch.m4: Update.
2197         * gnulib/import/m4/fnmatch_h.m4: Update.
2198         * gnulib/import/m4/fpieee.m4: Update.
2199         * gnulib/import/m4/frexp.m4: Update.
2200         * gnulib/import/m4/frexpl.m4: Update.
2201         * gnulib/import/m4/fstat.m4: Update.
2202         * gnulib/import/m4/fstatat.m4: Update.
2203         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2204         * gnulib/import/m4/getcwd-path-max.m4: Update.
2205         * gnulib/import/m4/getcwd.m4: Update.
2206         * gnulib/import/m4/getdtablesize.m4: Update.
2207         * gnulib/import/m4/getlogin.m4: Update.
2208         * gnulib/import/m4/getlogin_r.m4: Update.
2209         * gnulib/import/m4/getpagesize.m4: Update.
2210         * gnulib/import/m4/getprogname.m4: Update.
2211         * gnulib/import/m4/gettimeofday.m4: Update.
2212         * gnulib/import/m4/glibc21.m4: Update.
2213         * gnulib/import/m4/glob.m4: Update.
2214         * gnulib/import/m4/glob_h.m4: Update.
2215         * gnulib/import/m4/gnulib-cache.m4: Update.
2216         * gnulib/import/m4/gnulib-common.m4: Update.
2217         * gnulib/import/m4/gnulib-comp.m4: Update.
2218         * gnulib/import/m4/gnulib-tool.m4: Update.
2219         * gnulib/import/m4/hard-locale.m4: Update.
2220         * gnulib/import/m4/include_next.m4: Update.
2221         * gnulib/import/m4/inttypes-pri.m4: Update.
2222         * gnulib/import/m4/inttypes.m4: Update.
2223         * gnulib/import/m4/isnand.m4: Update.
2224         * gnulib/import/m4/isnanl.m4: Update.
2225         * gnulib/import/m4/largefile.m4: Update.
2226         * gnulib/import/m4/limits-h.m4: Update.
2227         * gnulib/import/m4/localcharset.m4: Update.
2228         * gnulib/import/m4/locale-fr.m4: Update.
2229         * gnulib/import/m4/locale-ja.m4: Update.
2230         * gnulib/import/m4/locale-zh.m4: Update.
2231         * gnulib/import/m4/localtime-buffer.m4: Update.
2232         * gnulib/import/m4/longlong.m4: Update.
2233         * gnulib/import/m4/lstat.m4: Update.
2234         * gnulib/import/m4/malloc.m4: Update.
2235         * gnulib/import/m4/malloca.m4: Update.
2236         * gnulib/import/m4/math_h.m4: Update.
2237         * gnulib/import/m4/mbrtowc.m4: Update.
2238         * gnulib/import/m4/mbsinit.m4: Update.
2239         * gnulib/import/m4/mbsrtowcs.m4: Update.
2240         * gnulib/import/m4/mbstate_t.m4: Update.
2241         * gnulib/import/m4/memchr.m4: Update.
2242         * gnulib/import/m4/memmem.m4: Update.
2243         * gnulib/import/m4/mempcpy.m4: Update.
2244         * gnulib/import/m4/memrchr.m4: Update.
2245         * gnulib/import/m4/mkdir.m4: Update.
2246         * gnulib/import/m4/mkstemp.m4: Update.
2247         * gnulib/import/m4/mmap-anon.m4: Update.
2248         * gnulib/import/m4/mode_t.m4: Update.
2249         * gnulib/import/m4/msvc-inval.m4: Update.
2250         * gnulib/import/m4/msvc-nothrow.m4: Update.
2251         * gnulib/import/m4/multiarch.m4: Update.
2252         * gnulib/import/m4/nocrash.m4: Update.
2253         * gnulib/import/m4/off_t.m4: Update.
2254         * gnulib/import/m4/onceonly.m4: Update.
2255         * gnulib/import/m4/open-cloexec.m4: Update.
2256         * gnulib/import/m4/open.m4: Update.
2257         * gnulib/import/m4/openat.m4: Update.
2258         * gnulib/import/m4/opendir.m4: Update.
2259         * gnulib/import/m4/pathmax.m4: Update.
2260         * gnulib/import/m4/rawmemchr.m4: Update.
2261         * gnulib/import/m4/readdir.m4: Update.
2262         * gnulib/import/m4/readlink.m4: Update.
2263         * gnulib/import/m4/realloc.m4: Update.
2264         * gnulib/import/m4/rename.m4: Update.
2265         * gnulib/import/m4/rewinddir.m4: Update.
2266         * gnulib/import/m4/rmdir.m4: Update.
2267         * gnulib/import/m4/save-cwd.m4: Update.
2268         * gnulib/import/m4/secure_getenv.m4: Update.
2269         * gnulib/import/m4/setenv.m4: Update.
2270         * gnulib/import/m4/signal_h.m4: Update.
2271         * gnulib/import/m4/ssize_t.m4: Update.
2272         * gnulib/import/m4/stat-time.m4: Update.
2273         * gnulib/import/m4/stat.m4: Update.
2274         * gnulib/import/m4/std-gnu11.m4: Update.
2275         * gnulib/import/m4/stdbool.m4: Update.
2276         * gnulib/import/m4/stddef_h.m4: Update.
2277         * gnulib/import/m4/stdint.m4: Update.
2278         * gnulib/import/m4/stdio_h.m4: Update.
2279         * gnulib/import/m4/stdlib_h.m4: Update.
2280         * gnulib/import/m4/strchrnul.m4: Update.
2281         * gnulib/import/m4/strdup.m4: Update.
2282         * gnulib/import/m4/strerror.m4: Update.
2283         * gnulib/import/m4/string_h.m4: Update.
2284         * gnulib/import/m4/strstr.m4: Update.
2285         * gnulib/import/m4/strtok_r.m4: Update.
2286         * gnulib/import/m4/sys_socket_h.m4: Update.
2287         * gnulib/import/m4/sys_stat_h.m4: Update.
2288         * gnulib/import/m4/sys_time_h.m4: Update.
2289         * gnulib/import/m4/sys_types_h.m4: Update.
2290         * gnulib/import/m4/tempname.m4: Update.
2291         * gnulib/import/m4/time_h.m4: Update.
2292         * gnulib/import/m4/unistd-safer.m4: Update.
2293         * gnulib/import/m4/unistd_h.m4: Update.
2294         * gnulib/import/m4/warn-on-use.m4: Update.
2295         * gnulib/import/m4/wchar_h.m4: Update.
2296         * gnulib/import/m4/wchar_t.m4: Update.
2297         * gnulib/import/m4/wctype_h.m4: Update.
2298         * gnulib/import/m4/wint_t.m4: Update.
2299         * gnulib/import/malloc.c: Update.
2300         * gnulib/import/malloc/scratch_buffer.h: Update.
2301         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2302         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2303         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2304         * gnulib/import/malloca.c: Update.
2305         * gnulib/import/malloca.h: Update.
2306         * gnulib/import/malloca.valgrind: Update.
2307         * gnulib/import/math.in.h: Update.
2308         * gnulib/import/mbrtowc.c: Update.
2309         * gnulib/import/mbsinit.c: Update.
2310         * gnulib/import/mbsrtowcs-impl.h: Update.
2311         * gnulib/import/mbsrtowcs-state.c: Update.
2312         * gnulib/import/mbsrtowcs.c: Update.
2313         * gnulib/import/memchr.c: Update.
2314         * gnulib/import/memmem.c: Update.
2315         * gnulib/import/mempcpy.c: Update.
2316         * gnulib/import/memrchr.c: Update.
2317         * gnulib/import/mkdir.c: Update.
2318         * gnulib/import/mkstemp.c: Update.
2319         * gnulib/import/msvc-inval.c: Update.
2320         * gnulib/import/msvc-inval.h: Update.
2321         * gnulib/import/msvc-nothrow.c: Update.
2322         * gnulib/import/msvc-nothrow.h: Update.
2323         * gnulib/import/open.c: Update.
2324         * gnulib/import/openat-die.c: Update.
2325         * gnulib/import/openat-priv.h: Update.
2326         * gnulib/import/openat-proc.c: Update.
2327         * gnulib/import/openat.c: Update.
2328         * gnulib/import/openat.h: Update.
2329         * gnulib/import/opendir.c: Update.
2330         * gnulib/import/pathmax.h: Update.
2331         * gnulib/import/pipe-safer.c: Update.
2332         * gnulib/import/rawmemchr.c: Update.
2333         * gnulib/import/readdir.c: Update.
2334         * gnulib/import/readlink.c: Update.
2335         * gnulib/import/realloc.c: Update.
2336         * gnulib/import/ref-add.sin: Update.
2337         * gnulib/import/ref-del.sin: Update.
2338         * gnulib/import/rename.c: Update.
2339         * gnulib/import/rewinddir.c: Update.
2340         * gnulib/import/rmdir.c: Update.
2341         * gnulib/import/same-inode.h: Update.
2342         * gnulib/import/save-cwd.c: Update.
2343         * gnulib/import/save-cwd.h: Update.
2344         * gnulib/import/scratch_buffer.h: Update.
2345         * gnulib/import/secure_getenv.c: Update.
2346         * gnulib/import/setenv.c: Update.
2347         * gnulib/import/signal.in.h: Update.
2348         * gnulib/import/stat-time.c: Update.
2349         * gnulib/import/stat-time.h: Update.
2350         * gnulib/import/stat-w32.c: Update.
2351         * gnulib/import/stat-w32.h: Update.
2352         * gnulib/import/stat.c: Update.
2353         * gnulib/import/stdbool.in.h: Update.
2354         * gnulib/import/stddef.in.h: Update.
2355         * gnulib/import/stdint.in.h: Update.
2356         * gnulib/import/stdio.in.h: Update.
2357         * gnulib/import/stdlib.in.h: Update.
2358         * gnulib/import/str-two-way.h: Update.
2359         * gnulib/import/strchrnul.c: Update.
2360         * gnulib/import/strdup.c: Update.
2361         * gnulib/import/streq.h: Update.
2362         * gnulib/import/strerror-override.c: Update.
2363         * gnulib/import/strerror-override.h: Update.
2364         * gnulib/import/strerror.c: Update.
2365         * gnulib/import/string.in.h: Update.
2366         * gnulib/import/stripslash.c: Update.
2367         * gnulib/import/strnlen1.c: Update.
2368         * gnulib/import/strnlen1.h: Update.
2369         * gnulib/import/strstr.c: Update.
2370         * gnulib/import/strtok_r.c: Update.
2371         * gnulib/import/sys_stat.in.h: Update.
2372         * gnulib/import/sys_time.in.h: Update.
2373         * gnulib/import/sys_types.in.h: Update.
2374         * gnulib/import/tempname.c: Update.
2375         * gnulib/import/tempname.h: Update.
2376         * gnulib/import/time.in.h: Update.
2377         * gnulib/import/unistd--.h: Update.
2378         * gnulib/import/unistd-safer.h: Update.
2379         * gnulib/import/unistd.in.h: Update.
2380         * gnulib/import/unsetenv.c: Update.
2381         * gnulib/import/verify.h: Update.
2382         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2383         * gnulib/import/wchar.in.h: Update.
2384         * gnulib/import/wctype.in.h: Update.
2385         * gnulib/import/xalloc-oversized.h: Update.
2386         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2387         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2388
2389 2018-08-16  Gary Benson <gbenson@redhat.com>
2390
2391         PR gdb/13000:
2392         * gdb/main.c (captured_main_1): Exit with nonzero status
2393         in batch mode if the last command to be executed failed.
2394         * NEWS: Mention the above.
2395
2396 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
2397
2398         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
2399         end of warning message.
2400
2401 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2402
2403         PR gdb/22943:
2404         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
2405         (aarch64_extract_return_value): Use
2406         aapcs_is_vfp_call_or_return_candidate.
2407         (aarch64_return_in_memory): Likewise.
2408         (aarch64_store_return_value): Likewise.
2409
2410 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2411
2412         * aarch64-tdep.c
2413         (aapcs_is_vfp_call_or_return_candidate): Make static
2414         (pass_in_v_or_stack): Remove function.
2415         (pass_in_v_vfp_candidate): New function.
2416         (aarch64_push_dummy_call): Check for float register candidates.
2417
2418 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2419
2420         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
2421         (aapcs_is_vfp_call_or_return_candidate_1): New function.
2422         (aapcs_is_vfp_call_or_return_candidate): Likewise.
2423
2424 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
2425
2426         PR build/23399
2427         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
2428         (struct ipa_sym_addresses): Rename to...
2429         (struct ipa_sym_addresses_common): ... this.
2430         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
2431
2432 2018-08-28  Tom Tromey  <tom@tromey.com>
2433
2434         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2435         (token_fifo): Now a std::vector.
2436         (yylex, c_parse): Update.
2437         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2438         (token_fifo): Now a std::vector.
2439         (yylex, d_parse): Update.
2440         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2441         (token_fifo): Now a std::vector.
2442         (yylex, go_parse): Update.
2443
2444 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
2445
2446         * parser-defs.h (struct type_stack) <elements>: Change type to
2447         std::vector<union type_stack_elt>.
2448         <depth, size>: Remove.
2449         * parse.c (parse_exp_in_context_1): Adjust.
2450         (type_stack_reserve): Remove.
2451         (check_type_stack_depth): Remove.
2452         (insert_into_type_stack): Adjust to std::vector.
2453         (insert_type): Likewise.
2454         (push_type): Likewise.
2455         (push_type_int): Likewise.
2456         (insert_type_address_space): Likewise.
2457         (pop_type): Likewise.
2458         (pop_type_int): Likewise.
2459         (pop_typelist): Likewise.
2460         (pop_type_stack): Likewise.
2461         (append_type_stack): Likewise.
2462         (push_type_stack): Likewise.
2463         (get_type_stack): Likewise.
2464         (type_stack_cleanup): Likewise.
2465         (push_typelist): Likewise.
2466         (follow_types): Likewise.
2467         (_initialize_parse): Likewise.
2468
2469 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
2470
2471         * NEWS: Mention csky target.
2472
2473 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
2474             Hafiz Abid Qadeer  <abidh@codesourcery.com>
2475             Don Breazeal  <donb@codesourcery.com>
2476
2477         * csky-linux-tdep.c: New file.
2478         * csky-tdep.c: Likewise.
2479         * csky-tdep.h: Likewise.
2480         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
2481         csky-tdep.o.
2482         (HFILES_NO_SRCDIR): Add csky-tdep.h.
2483         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
2484         * configure.tgt: Add csky support.
2485
2486 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
2487
2488         * python/py-framefilter.c (py_print_frame): Print frame architecture
2489         when printing on an MI output.
2490
2491 2018-08-27  Tom Tromey  <tom@tromey.com>
2492
2493         PR build/23087:
2494         * configure: Rebuild.
2495         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
2496
2497 2018-08-27  Tom Tromey  <tom@tromey.com>
2498
2499         * aarch64-linux-tdep.c
2500         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
2501         casts to int.
2502
2503 2018-08-27  Tom Tromey  <tom@tromey.com>
2504
2505         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
2506         unsigned.
2507         (ppc64_standard_linkage1, ppc64_standard_linkage2)
2508         (ppc64_standard_linkage3, ppc64_standard_linkage4)
2509         (ppc64_standard_linkage5, ppc64_standard_linkage6)
2510         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
2511         unsigned.
2512
2513 2018-08-27  Tom Tromey  <tom@tromey.com>
2514
2515         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
2516         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
2517
2518 2018-08-27  Tom Tromey  <tom@tromey.com>
2519
2520         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
2521         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
2522         ULONGEST_MAX.
2523         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
2524         ULONGEST_MAX.
2525         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
2526         ULONGEST_MAX.
2527         * sparc-linux-tdep.c (sparc32_linux_sigframe)
2528         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
2529         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
2530         ULONGEST_MAX.
2531         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
2532         (ppc64_linux_sigaction_tramp_frame)
2533         (ppc32_linux_sighandler_tramp_frame)
2534         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2535         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
2536         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
2537         * mn10300-linux-tdep.c (am33_linux_sigframe)
2538         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
2539         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
2540         * mips-linux-tdep.c (mips_linux_o32_sigframe)
2541         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
2542         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
2543         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
2544         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
2545         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
2546         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
2547         * microblaze-linux-tdep.c
2548         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2549         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
2550         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
2551         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
2552         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
2553         * common/common-types.h (ULONGEST_MAX): New define.
2554         (CORE_ADDR_MAX): Fix formatting.
2555         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
2556         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
2557         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
2558         (arm_linux_rt_sigreturn_tramp_frame)
2559         (arm_eabi_linux_sigreturn_tramp_frame)
2560         (arm_eabi_linux_rt_sigreturn_tramp_frame)
2561         (thumb2_eabi_linux_sigreturn_tramp_frame)
2562         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
2563         (arm_linux_restart_syscall_tramp_frame)
2564         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
2565         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
2566         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
2567         ULONGEST_MAX.
2568         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
2569
2570 2018-08-27  Tom Tromey  <tom@tromey.com>
2571
2572         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
2573         CORE_ADDR_MAX.
2574         * mips-tdep.c (mips_deal_with_atomic_sequence)
2575         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
2576         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
2577         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
2578         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
2579         CORE_ADDR_MAX.
2580         * aarch64-tdep.c (aarch64_software_single_step): Use
2581         CORE_ADDR_MAX.
2582
2583 2018-08-27  Tom Tromey  <tom@tromey.com>
2584
2585         * linespec.c (complete_linespec_component): Add cast to "char".
2586         * completer.c (completion_tracker::build_completion_result): Add
2587         cast to "char".
2588
2589 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2590
2591         * solist.h (struct solist, struct target_so_ops): Fix
2592         indentation.
2593
2594 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2595
2596         * ada-tasks.c (ada_task_info_s): Remove typedef.
2597         (DEF_VEC_O(ada_task_info_s)): Remove.
2598         (struct ada_tasks_inferior_data): Initialize fields.
2599         <task_list>: Make an std::vector.
2600         (get_ada_tasks_inferior_data): Allocate with new.
2601         (ada_get_task_number): Adjust.
2602         (get_task_number_from_id): Likewise.
2603         (valid_task_id): Likewise.
2604         (ada_get_task_info_from_ptid): Likewise.
2605         (iterate_over_live_ada_tasks): Likewise.
2606         (add_ada_task): Likewise.
2607         (read_known_tasks): Likewise.
2608         (ada_build_task_list): Likewise.
2609         (print_ada_task_info): Likewise.
2610         (info_task): Likewise.
2611         (task_command_1): Likewise.
2612
2613 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2614
2615         * ada-lang.c (add_angle_brackets): Return std::string.
2616
2617 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
2618
2619         * python/py-threadevent.c (py_get_event_thread): Initialize
2620         pythread.
2621
2622 2018-08-24  Pedro Alves  <palves@redhat.com>
2623
2624         * python/py-bpevent.c (create_breakpoint_event_object): Use
2625         copy-initialization.
2626         * python/py-continueevent.c (emit_continue_event): Use
2627         copy-initialization.
2628         * python/py-exitedevent.c (create_exited_event_object): Return a
2629         gdbpy_ref<>.
2630         (emit_exited_event): Use copy-initialization.
2631         * python/py-inferior.c (python_new_inferior)
2632         (python_inferior_deleted, add_thread_object): Use
2633         copy-initialization.
2634         * python/py-infevents.c (create_inferior_call_event_object)
2635         (create_register_changed_event_object)
2636         (create_memory_changed_event_object): Return a gdbpy_ref<>.
2637         (emit_inferior_call_event, emit_memory_changed_event)
2638         (emit_register_changed_event): Use copy-initialization.
2639         * python/py-newobjfileevent.c (create_new_objfile_event_object):
2640         Return a gdbpy_ref<>.
2641         (emit_new_objfile_event): Use copy-initialization.
2642         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
2643         (emit_clear_objfiles_event): Use copy-initialization.
2644         * python/py-signalevent.c (create_signal_event_object): Use
2645         copy-initialization.
2646         * python/py-threadevent.c (create_thread_event_object): Use
2647         copy-initialization.
2648
2649 2018-08-24  Pedro Alves  <palves@redhat.com>
2650             Simon Marchi  <simon.marchi@ericsson.com>
2651
2652         PR gdb/23379
2653         * python/py-continueevent.c: Include "gdbthread.h".
2654         (create_continue_event_object): Add intro comment.  Add 'ptid'
2655         parameter.  Use it to find thread to pass to
2656         create_thread_event_object.
2657         (emit_continue_event): Pass PTID down to
2658         create_continue_event_object.
2659         * python/py-event.h (py_get_event_thread): Declare.
2660         (create_thread_event_object): Remove default from 'thread'
2661         parameter.
2662         * python/py-stopevent.c (create_stop_event_object): Use
2663         py_get_event_thread.
2664         * python/py-threadevent.c (get_event_thread): Rename to ...
2665         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
2666         and use it to find the thread.
2667         (create_thread_event_object): Assert that THREAD isn't null.
2668         Don't find the event thread here.
2669
2670 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
2671
2672         * block.h (blockrange, blockranges): New struct declarations.
2673         (struct block): Add new field named `ranges'.
2674         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
2675         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
2676         macros for accessing ranges in struct block.
2677         (make_blockranges): New declaration.
2678         block.c (make_blockranges): New function.
2679         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
2680         for block.
2681         * symtab.h (find_pc_partial_function): Add new parameter `block'.
2682         * blockframe.c (cache_pc_function_block): New static global.
2683         (clear_pc_function_cache): Clear cache_pc_function_block.
2684         (find_pc_partial_function): Move comment to symtab.h.  Add
2685         support for non-contiguous blocks.
2686         * cli/cli-cmds.c (block.h): Include.
2687         (print_disassembly): Handle printing of non-contiguous blocks.
2688         (disassemble_current_function): Likewise.
2689         (disassemble_command): Likewise.
2690
2691         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
2692         BLOCK_START.
2693         * blockframe.c (get_pc_function_start): Likewise.
2694         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
2695         (gcc_symbol_address): Likewise.
2696         * compile/compile-object-run.c (compile_object_run): Likewise.
2697         * compile/compile.c (get_expr_block_and_pc): Likewise.
2698         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
2699         (func_addr_to_tail_call_list): Likewise.
2700         * findvar.c (default_read_var_value): Likewise.
2701         * inline-frame.c (inline_frame_this_id): Likewise.
2702         (skip-inline_frames): Likewise.
2703         * infcmd.c (until_next_command): Likewise.
2704         * linespec.c (convert_linespec_to_sals): Likewise.
2705         * parse.c (parse_exp_in_context_1): Likewise.
2706         * printcmd.c (build_address_symbolic): likewise.
2707         (info_address_command): Likewise.
2708         symtab.c (find_function_start_sal): Likewise.
2709         (skip_prologue_sal): Likewise.
2710         (find_function_alias_target): Likewise.
2711         (find_gnu_ifunc): Likewise.
2712         * stack.c (find_frame_funname): Likewise.
2713         * symtab.c (fixup_symbol_section): Likewise.
2714         (find_function_start_sal): Likewise.
2715         (skip_prologue_sal): Likewsie.
2716         (find_function_alias_target): Likewise.
2717         (find_gnu_ifunc): Likewise.
2718         * tracepoint.c (info_scope_command): Likewise.
2719         * value.c (value_fn_field): Likewise.
2720
2721         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
2722         in place of find_pc_partial_function.
2723         * blockframe.c (find_function_entry_range_from_pc): New function.
2724         * symtab.h (find_function_entry_range_from_pc): Declare and document.
2725         * objfiles.c (objfile_relocate1): Relocate start and end addresses
2726         for each range in a block.
2727
2728
2729 2018-08-23  Xavier Roirand  <roirand@adacore.com>
2730
2731         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
2732         incrementation.
2733
2734 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2735
2736         * solib-svr4.c (read_program_headers_from_bfd): Return
2737         gdb::optional<gdb::byte_vector>.
2738         (svr4_exec_displacement): Adjust.
2739
2740 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2741
2742         * solib-svr4.c (read_program_header): Return
2743         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
2744         (find_program_interpreter): Return
2745         gdb::optional<gdb::byte_vector>.
2746         (scan_dyntag_auxv): Adjust.
2747         (enable_break): Adjust.
2748         (svr4_exec_displacement): Adjust.
2749
2750 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2751
2752         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
2753         * inf-child.c (inf_child_target::terminal_save_inferior): New.
2754
2755 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2756
2757         * guile/scm-string.c (gdbscm_scm_from_printf): Use
2758         string_vprintf.
2759         * guile/scm-utils.c (gdbscm_printf): Likewise.
2760         * serial.c (serial_printf): Likewise.
2761         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
2762
2763 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
2764
2765         * stack.c (print_frame): Print frame architecture when printing on
2766         an MI output.
2767         * NEWS: Mention new "arch" attribute in frame output.
2768
2769 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
2770
2771         * arch/aarch64.h (aarch64_regnum): Update comment.
2772
2773 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
2774
2775         * NEWS: Add SVE to 8.2 section.
2776
2777 2018-08-21  Pedro Alves  <palves@redhat.com>
2778
2779         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
2780         out from gdbscm_parse_function_args.
2781         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
2782         gdbscm_parse_function_args_1.
2783
2784 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
2785
2786         PR gdb/17816
2787         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
2788         operator.
2789
2790 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
2791
2792         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
2793
2794 2018-08-19  Michael Spang  <spang@google.com>
2795
2796         PR gdb/11786
2797         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
2798         for PT_TLS segments.
2799
2800 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
2801
2802         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
2803         dwarf_variable_value.
2804         * dwarf2-frame.c (class dwarf_expr_executor):
2805         Add override for dwarf_variable_value.
2806         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
2807         (class symbol_needs_eval_context): Likewise.
2808         (indirect_synthetic_pointer): Add forward declaration.
2809         (sect_variable_value): New function.
2810         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
2811         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
2812         for DW_OP_GNU_variable_value.
2813
2814 2018-08-16  Tom Tromey  <tom@tromey.com>
2815
2816         * top.c (read_command_file): Update.
2817         (command_line_input): Remove "repeat" argument.
2818         * ada-lang.c (get_selections): Update.
2819         * linespec.c (decode_line_2): Update.
2820         * defs.h (command_line_input): Remove argument.
2821         * cli/cli-script.c (read_next_line): Update.
2822         * python/py-gdb-readline.c: Update.
2823
2824 2018-08-17  Tom Tromey  <tom@tromey.com>
2825
2826         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
2827         command_line_input.
2828
2829 2018-08-15  Tom Tromey  <tom@tromey.com>
2830
2831         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
2832
2833 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
2834
2835         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
2836         If used, use find_pc_partial_function to find address range
2837         to disassemble.
2838         * mi/mi-main.c (mi_cmd_list_features): Report
2839         "data-disassemble-a-option" feature.
2840         * NEWS: Mention new -data-disassemble option -a.
2841
2842 2018-08-13  Tom Tromey  <tom@tromey.com>
2843
2844         * common/common-defs.h (_FORTIFY_SOURCE): Define.
2845
2846 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
2847
2848         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
2849         (aarch64_linux_collect_sve_regset): Likewise.
2850         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
2851         * regcache.h (regcache_map_entry_size): New function.
2852
2853 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
2854
2855         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
2856         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
2857         (SVE_HEADER_VL_LENGTH): Likewise.
2858         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
2859         (SVE_HEADER_FLAGS_LENGTH): Likewise.
2860         (SVE_HEADER_RESERVED_LENGTH): Likewise.
2861         (SVE_HEADER_SIZE_OFFSET): Likewise.
2862         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
2863         (SVE_HEADER_VL_OFFSET): Likewise.
2864         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
2865         (SVE_HEADER_FLAGS_OFFSET): Likewise.
2866         (SVE_HEADER_RESERVED_OFFSET): Likewise.
2867         (SVE_HEADER_SIZE): Likewise.
2868         (aarch64_linux_core_read_vq): Add function.
2869         (aarch64_linux_core_read_description): Check for SVE section.
2870
2871 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
2872
2873         * aarch64-fbsd-tdep.c
2874         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
2875         collect_size.
2876         * aarch64-linux-tdep.c
2877         (aarch64_linux_iterate_over_regset_sections): Likewise.
2878         * alpha-linux-tdep.c
2879         (alpha_linux_iterate_over_regset_sections):
2880         * alpha-nbsd-tdep.c
2881         (alphanbsd_iterate_over_regset_sections): Likewise.
2882         * amd64-fbsd-tdep.c
2883         (amd64fbsd_iterate_over_regset_sections): Likewise.
2884         * amd64-linux-tdep.c
2885         (amd64_linux_iterate_over_regset_sections): Likewise.
2886         * arm-bsd-tdep.c
2887         (armbsd_iterate_over_regset_sections): Likewise.
2888         * arm-fbsd-tdep.c
2889         (arm_fbsd_iterate_over_regset_sections): Likewise.
2890         * arm-linux-tdep.c
2891         (arm_linux_iterate_over_regset_sections): Likewise.
2892         * corelow.c (get_core_registers_cb): Likewise.
2893         (core_target::fetch_registers): Likewise.
2894         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
2895         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
2896         * gdbarch.h (void): Regenerate.
2897         * gdbarch.sh: Add supply_size and collect_size.
2898         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
2899         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
2900         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
2901         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
2902         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
2903         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
2904         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
2905         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
2906         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
2907         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
2908         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
2909         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
2910         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
2911         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
2912         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
2913         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
2914         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
2915         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
2916         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
2917         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
2918         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
2919         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
2920         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
2921         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
2922         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
2923         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
2924         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
2925         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
2926         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
2927         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
2928
2929 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
2930
2931         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
2932         with string_printf.
2933
2934 2018-08-10  Keith Seitz  <keiths@redhat.com>
2935
2936         * compile/compile-c-support.c (add_code_header, add_code_footer):
2937         Move into policy class.
2938         (c_push_user_expression, pop_user_expression_nop)
2939         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
2940         (compile_program): New host class.
2941         (c_compile_program): New typedef.
2942         (c_compute_porgram): Use c_compile_program.
2943
2944 2018-08-10  Keith Seitz  <keiths@redhat.com>
2945
2946         * compile/compile-internal.h (compile_instance::~compile_instance):
2947         Remove calls to htab_delete.
2948         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
2949         * compile.c (compile_instance::compile_instance): Initialize
2950         htab unique pointers.
2951         (compile_instance::get_cached_type, compile_instance::insert_type)
2952         (compile_instance::error_symbol_once): Update for unique_ptr.
2953
2954 2018-08-10  Keith Seitz  <keiths@redhat.com>
2955
2956         * compile/compile-c-symbols.c (struct symbol_error)
2957         (hash_symbol_error, eq_symbol_error, del_symbol_error)
2958         (compile_instance::insert_symbol_error)
2959         (compile_instance::error_symbol_once): Move to ...
2960         * compile/compile.c: ... here.
2961
2962 2018-08-10  Keith Seitz  <keiths@redhat.com>
2963
2964         * compile/compile-c-support.c (c_get_compile_context): Use `new'
2965         instead of `new_compile_instance'.
2966         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
2967         Update description.
2968         If the symbol error map is not initialized, create it.
2969         (generate_c_for_for_one_symbol): Do not check/initialize
2970         the symbol error map.
2971         * compile/compile-c-types.c (compile_c_instance): Make a class.
2972         Update all callers.
2973         (compile_instance::compile_instance): Initialize the type cache.
2974         (get_cached_type): New function.
2975         (insert_type): Update description.
2976         (compile_c_instance::m_default_cflags): Define.
2977         (convert_type): Update description.  Use get_cached_type.
2978         (delete_instance): Moved to destructor.
2979         (new_compile_instance): Moved to constructor.
2980         * compile/compile-c.h (compile_c_instance): Make class inheriting
2981         from compile_instance.
2982         <base>: Remove field.
2983         <type_map, symbol_err_map>: Move to base class.
2984         <c_plugin>: Rename to `m_plugin' and remove pointer type.
2985         * compile/compile-internal.h (compile_instance): Make class.
2986         <type_map_t, symbol_err_map_t>: Define.
2987         <fe>: Rename to `m_gcc_fe'.
2988         <scope, block, gcc_target_options>: Add `m_' prefix.
2989         <m_type_map, m_symbol_err_map>: New fields, moved from
2990         compile_c_instance.
2991         <destroy>: Remove.
2992         (convert_type, new_compile_instance): Remove.
2993         * compile/compile.c (cleanup_compile_instance): Remove.
2994         (compile_to_object): Use unique_ptr to eliminate cleanups.
2995         (compile_instance::set_print_callback, compile_instance::version)
2996         (compile_instance::set_verbose)
2997         (compile_instance::set_driver_filename)
2998         (compile_instance::set_triplet_regexp)
2999         (compile_instance::set_arguments)
3000         (compile_instance::set_source_file)
3001         (compile_instance::compile): Define.
3002
3003 2018-08-10  Keith Seitz  <keiths@redhat.com>
3004
3005         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
3006         * compile/compile-c-types.c: Define GCC_METHODN macros and include
3007         gcc-c-fe.def to define C plugin.
3008         (delete_instance): Delete `c_plugin'.
3009         (new_compile_instance): Initialize `c_plugin'.
3010         * compile/compile-c.h: Include gcc_c_plugin.h.
3011         (struct compile_c_instance) <c_plugin>: New member.
3012         * gcc-c-plugin.h: New file.
3013         Update all callers with API change.
3014
3015 2018-08-10  Keith Seitz  <keiths@redhat.com>
3016
3017         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
3018         (HFILES_NO_SRCDIR): ... to here.
3019         Add compile-internal.h and compile-c.h.
3020         * compile/compile-c-support.c: Include compile-c.h.
3021         * compile/compile-c-symbols.c: Include compile-c.h.
3022         (generate_c_for_variable_locations): Update comment.
3023         * compile/compile-c-types.c: Include compile-c.h.
3024         * compile/compile-c.h: New file -- moved C language declarations
3025         from other files here.
3026         * compile/compile-internal.h: Do not include hashtab.h or
3027         common/enum-flags.h.
3028         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
3029         (gcc_convert_symbol, gcc_symbol_address)
3030         (generate_c_for_variable_locations, c_get_mode_for_size)
3031         (c_get_range_decl_name): Definitions moved to compile-c.h.
3032         * compile/compile-loc2c.c: Include compile-c.h.
3033
3034 2018-08-10  Keith Seitz  <keiths@redhat.com>
3035
3036         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
3037         (c_symbol_substitution_name): ... this.
3038         Update all callers.
3039
3040 2018-08-10  Keith Seitz  <keiths@redhat.com>
3041
3042         * compile/compile-c-support.c (c_compute_program): Use
3043         unique_xmalloc_ptr to eliminate cleanup.
3044         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
3045         Return a unique_xmalloc_ptr and eliminate cleanup.
3046         * compile/compile-internal.h (generate_c_for_variable_locations):
3047         Return unique_xmalloc_ptr and update description.
3048
3049 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
3050
3051         * corelow.c (core_target::get_core_register_section): Rename
3052         min_size to section_min_size.
3053
3054 2018-08-09  Jim Wilson  <jimw@sifive.com>
3055
3056         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
3057         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
3058         * NEWS: Mention new GNU/Linux RISC-V target.
3059         * configure.host: Add riscv*-*-linux*.
3060         * configure.nat: Add riscv*.
3061         * configure.tgt: Add riscv*-*-linux*.
3062         * riscv-linux-nat.c: New file.
3063         * riscv-linux-tdep.c: New file.
3064
3065 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3066
3067         * infrun.c (resume): Make static, add forward declaration.
3068         (proceed): Update header comment.
3069         * infrun.h (resume): Delete declaration.
3070
3071 2018-08-09  Tom Tromey  <tom@tromey.com>
3072
3073         * riscv-tdep.h: Minor formatting fixes.
3074
3075 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
3076
3077         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
3078         * dwarf-index-cache.c (create_dir_and_check): Likewise.
3079         (test_mkdir_recursive): Likewise.
3080         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
3081
3082 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3083
3084         * valarith.c (value_subscripted_rvalue): If an array is not in
3085         memory, and we don't know the upper bound, then we can't know that
3086         the requested element exists or not.
3087
3088 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
3089
3090         * target.c (str_comma_list_concat_elem): Fix typo in comment.
3091         (target_options_to_string): Add comment.
3092
3093 2018-08-08  Tom Tromey  <tom@tromey.com>
3094
3095         * unittests/scoped_mmap-selftests.c: Check result of "write".
3096
3097 2018-08-08  Jim Wilson  <jimw@sifive.com>
3098
3099         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
3100         (decode_register_index_short): New.
3101         (decode_j_type_insn, decode_cj_type_insn): New.
3102         (decode_b_type_insn, decode_cb_type_insn): New.
3103         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
3104         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
3105         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
3106         is_c_sw_insn instead of is_sw_insn.
3107         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
3108         (riscv_software_single_step): New.
3109         * riscv-tdep.h (riscv_software_single_step): Declare.
3110
3111         * riscv-tdep.c (riscv_isa_xlen): Drop static.
3112         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
3113
3114 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
3115
3116         PR gdb/18050:
3117         * target.c (dispose_inferior): Don't dispose of inferiors that are
3118         already killed.
3119
3120 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
3121
3122         * remote.c (remote_target::download_tracepoint): Change char* to
3123         const char*.
3124
3125 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
3126
3127         * target.h (target_options_to_string): Return an std::string.
3128         * target.c (str_comma_list_concat_elem): Return void, use
3129         std::string.
3130         (do_option): Likewise.
3131         (target_options_to_string): Return an std::string.
3132         * linux-nat.c (linux_nat_target::wait): Adjust.
3133         * target-debug.h (target_debug_print_options): Adjust.
3134
3135 2018-08-07  Tom Tromey  <tom@tromey.com>
3136
3137         * Makefile.in (CPPFLAGS): New variable.
3138         (INTERNAL_CPPFLAGS): Use it.
3139
3140 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3141
3142         * NEWS: Mention the index cache.
3143
3144 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3145
3146         * common/pathstuff.h (get_standard_cache_dir): New.
3147         * common/pathstuff.c (get_standard_cache_dir): New.
3148         * build-id.h (build_id_to_string): New.
3149         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
3150         DEBUG_STR_SUFFIX): Move to here.
3151         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
3152         DEBUG_STR_SUFFIX): Move from there.
3153         (write_psymtabs_to_index): Make non-static, add basename
3154         parameter.  Write to temporary files, rename when done.
3155         (save_gdb_index_command): Adjust call to
3156         write_psymtabs_to_index.
3157         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
3158         field.
3159         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
3160         (get_gdb_index_contents_from_cache): New.
3161         (get_gdb_index_contents_from_cache_dwz): New.
3162         (dwarf2_initialize_objfile): Read index from cache.
3163         (dwarf2_build_psymtabs): Save to index.
3164         * dwarf-index-cache.h: New file.
3165         * dwarf-index-cache.c: New file.
3166         * dwarf-index-write.h: New file.
3167
3168 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3169
3170         * gnulib/aclocal.m4: Re-generate.
3171         * gnulib/config.in: Re-generate.
3172         * gnulib/configure: Re-generate.
3173         * gnulib/import/Makefile.am: Re-generate.
3174         * gnulib/import/Makefile.in: Re-generate.
3175         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3176         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3177         * gnulib/import/m4/mkdir.m4: New file.
3178         * gnulib/import/mkdir.c: New file.
3179         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
3180         module.
3181
3182 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3183
3184         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
3185         * common/scoped_mmap.c: New file.
3186         * common/scoped_mmap.h (destroy): New method.
3187         (~scoped_mmap, reset): Use destroy.
3188         (scoped_mmap): New move constructor.
3189         (mmap_file): New declaration.
3190         * unittests/scoped_mmap-selftests.c (test_normal,
3191         test_invalid_filename, run_tests): New functions.
3192         (_initialize_scoped_mmap_selftests): Register selftest.
3193
3194 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3195
3196         * dwarf2read.c (read_gdb_index_from_section): Rename to...
3197         (read_gdb_index_from_buffer): ... this.  Remove section
3198         parameter, add buffer parameter.
3199         (get_gdb_index_contents_ftype,
3200         get_gdb_index_contents_dwz_ftype): New typedefs.
3201         (dwarf2_read_gdb_index): Add callback parameters to get the
3202         index contents.
3203         (get_gdb_index_contents_from_section): New.
3204         (dwarf2_initialize_objfile): Update call to
3205         dwarf2_read_gdb_index.
3206
3207 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3208
3209         * common/filestuff.h (gdb_fopen_cloexec): New overload.
3210         (gdb_open_cloexec): Likewise.
3211         * nat/linux-osdata.c (command_from_pid): Use string_printf.
3212         (commandline_from_pid): Likewise.
3213         (linux_xfer_osdata_threads): Likewise.
3214         (linux_xfer_osdata_fds): Likewise.
3215         * ada-lang.c (is_package_name): Likewise.
3216         * auxv.c (procfs_xfer_auxv): Likewise.
3217         * breakpoint.c (print_one_breakpoint_location): Use
3218         uiout::field_fmt.
3219         (print_one_catch_solib): Use string_printf.
3220         * coff-pe-read.c (add_pe_exported_sym): Likewise.
3221         (add_pe_forwarded_sym): Likewise.
3222         * dwarf2read.c (create_type_unit_group): Likewise.
3223         (build_error_marker_type): Likewise.
3224         * infcall.c (get_function_name): Likewise.
3225         * valprint.c (print_converted_chars_to_obstack): Likewise.
3226         * xtensa-tdep.c (xtensa_register_type): Likewise.
3227
3228 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
3229
3230         * remote.c (remote_target::download_tracepoint): Fix format
3231         string errors.
3232
3233 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3234
3235         * tracefile.c: Include common/byte-vector.h.
3236         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
3237         with trace_regblock_size if needed.  Update uses of buf.
3238
3239 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3240
3241         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
3242         std::vector<unsigned char>.
3243         * tracepoint.c (collection_list::collection_list): Remove
3244         m_regs_mask initializer from initializer list.  Resize
3245         m_regs_mask using the largest remote register number.
3246         (collection_list::add_remote_register): Remove size check on
3247         m_regs_mask.  Use at to access element.
3248         (collection_list::stringify): Change type of temp_buf to
3249         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
3250         stringify the register mask.  Use pack_hex_byte for the register
3251         mask.
3252
3253 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3254
3255         * tracepoint.h (class collection_list) <add_register>: Remove.
3256         <add_remote_register, add_ax_registers, add_local_register>:
3257         Declare.
3258         <add_memrange>: Add scope parameter.
3259         * tracepoint.c (encode_actions_1): Likewise.
3260         (collection_list::add_register): Rename to ...
3261         (collection_list::add_remote_register): ... this.  Update
3262         comment.
3263         (collection_list::add_ax_registers, add_local_register): New
3264         methods.
3265         (collection_list::add_memrange): Add scope parameter.  Call
3266         add_local_register instead of add_register.
3267         (finalize_tracepoint_aexpr): New function.
3268         (collection_list::collect_symbol): Update calls to add_memrange.
3269         Call add_local_register instead of add_register.  Call
3270         add_ax_registers.  Call finalize_tracepoint_aexpr.
3271         (encode_actions_1): Get remote regnos for $reg action.  Call
3272         add_remote_register, add_ax_registers, and add_local_register.
3273         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
3274         (validate_actionline): Call finalize_tracepoint_aexpr.
3275
3276 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3277
3278         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
3279         Replace array buf with gdb::char_vector buf, of size
3280         get_remote_packet_size ().  Replace references to buf and
3281         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
3282         and xsnprintf with snprintf.  Raise errors if the buffer is too
3283         small.
3284
3285 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3286
3287         * remote.c (remote_target::download_tracepoint): Fix the has_more
3288         predicate in the QTDP action list iteration.
3289
3290 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3291
3292         * remote.c (remote_target::download_tracepoint): Fix indentation
3293         in for block.
3294
3295 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3296
3297         * proc-api.c (_initialize_proc_api): Remove c, unused.
3298         * procfs.c (procfs_init_inferior): Remove signals, unused.
3299         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
3300         unused.
3301
3302 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
3303             Andrew Burgess  <andrew.burgess@embecosm.com>
3304
3305         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
3306         'W_STOPCODE (0)' as this could be ambiguous.
3307
3308 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
3309
3310         * ser-tcp.c (net_open): Fix thinko when deciding whether to
3311         disable TCP's Nagle algorithm (use "ai_protocol" instead of
3312         "ai_socktype").
3313
3314 2018-08-02  Tom Tromey  <tom@tromey.com>
3315
3316         PR symtab/16842.
3317         * dwarf2read.c (read_func_scope): Set symtab on template parameter
3318         symbols.
3319         (process_structure_scope): Likewise.
3320
3321 2018-08-02  Xavier Roirand  <roirand@adacore.com>
3322
3323         PR gdb/22629:
3324         * darwin-nat.c (darwin_kill_inferior): Fix handling of
3325         kill inferior.
3326
3327 2018-08-02  Tom Tromey  <tom@tromey.com>
3328
3329         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
3330         (darwin_suspend_inferior, darwin_resume_inferior)
3331         (darwin_decode_notify_message, darwin_resume_inferior_threads)
3332         (darwin_check_new_threads): Check result of get_darwin_inferior.
3333
3334 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
3335
3336         GDB 8.1.1 released.
3337
3338 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
3339
3340         * varobj.c (varobj_get_path_expr_parent): Report an error if
3341         parent is a dynamic varobj.
3342
3343 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3344
3345         * gnulib/aclocal.m4: Re-generate.
3346         * gnulib/config.in: Re-generate.
3347         * gnulib/configure: Re-generate.
3348         * gnulib/import/Makefile.in: Re-generate.
3349         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3350         * gnulib/import/m4/onceonly.m4: Re-generate.
3351
3352 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3353
3354         * target-descriptions.c (struct xml_test_tdesc): New.
3355         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
3356         (record_xml_tdesc): Update.
3357         (maintenance_check_xml_descriptions): Update.
3358         * target-descriptions.h (record_xml_tdesc): Update comment.
3359
3360 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3361
3362         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
3363         checking array bounds are defined.
3364
3365 2018-07-30  Tom Tromey  <tom@tromey.com>
3366
3367         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
3368         irreflexivity violation.
3369
3370 2018-07-30  Tom Tromey  <tom@tromey.com>
3371
3372         * cli/cli-decode.c (lookup_cmd): Remove lint code.
3373         * value.c (unpack_long): Remove lint code.
3374         * valops.c (value_ind): Remove lint code.
3375         * valarith.c (value_x_binop, value_x_unop, value_equal)
3376         (value_pos): Remove lint code.
3377
3378 2018-07-28  Tom de Vries  <tdevries@suse.de>
3379
3380         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
3381         with undefined upper bound as <optimized out>.
3382
3383 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
3384
3385         * gcore.in: Rename variable "name" to "prefix".  Expand
3386         "usage" text.
3387
3388 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
3389
3390         * windows-nat.c (windows_nat_target::create_inferior): Update to
3391         call close() in global namespace.
3392
3393 2018-07-26  Tom Tromey  <tom@tromey.com>
3394
3395         * dwarf-index-write.c (add_address_entry): Don't add objfile
3396         offsets.
3397         * dbxread.c (find_stab_function): Rename from
3398         find_stab_function_addr.  Return a bound_minimal_symbol.
3399         (read_dbx_symtab): Use raw_text_low, raw_text_high.
3400         Don't add objfile offsets.
3401         (end_psymtab): Use raw_text_low, raw_text_high,
3402         MSYMBOL_VALUE_RAW_ADDRESS.
3403         (read_ofile_symtab): Update.
3404         (process_one_symbol): Update.
3405         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
3406         offsets.
3407         (dw2_relocate): Remove.
3408         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
3409         searching addrmap.
3410         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
3411         Update.
3412         (process_psymtab_comp_unit_reader, add_partial_symbol)
3413         (add_partial_subprogram, dwarf2_ranges_read): Update.
3414         (load_partial_dies): Update.
3415         (add_address_entry): Don't add objfile offsets.
3416         (dwarf2_build_include_psymtabs): Update.
3417         (create_addrmap_from_aranges): Don't add objfile offsets.
3418         (dw2_find_pc_sect_compunit_symtab): Update.
3419         * mdebugread.c (parse_symbol): Don't add objfile offsets.
3420         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
3421         Update.
3422         (parse_partial_symbols): Don't add objfile offsets.  Use
3423         raw_text_low, raw_text_high.  Update.
3424         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
3425         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
3426         or call 'relocate' quick function.  Clear psymbol_map.
3427         * psympriv.h (struct partial_symbol) <address>: Add section
3428         offset.
3429         <set_unrelocated_address>: Rename from set_address.
3430         <raw_text_low, raw_text_high>: New methods.
3431         <text_low, text_high>: Add objfile parameter.
3432         (add_psymbol_to_bcache): Add 'section' parameter.  Call
3433         set_unrelocated_address.
3434         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3435         (find_pc_psymbol): Update.
3436         (fixup_psymbol_section, relocate_psymtabs): Remove.
3437         (dump_psymtab, psym_functions): Update.
3438         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
3439         parameter.
3440         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
3441         (start_psymtab_common): Update.
3442         * symfile-debug.c (debug_qf_relocate): Remove.
3443         (debug_sym_quick_functions): Update.
3444         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
3445         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
3446         Update.
3447
3448 2018-07-26  Tom Tromey  <tromey@redhat.com>
3449
3450         * dbxread.c (end_psymtab): Use text_high_valid and
3451         text_low_valid.
3452         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
3453         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
3454         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3455         Update comment.
3456         <text_low_valid, text_high_valid>: New fields.
3457         <set_text_low, set_text_high>: Update.
3458         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
3459
3460 2018-07-26  Tom Tromey  <tom@tromey.com>
3461
3462         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
3463         Update.
3464         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
3465         textlow and texthigh fields.
3466         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
3467         Update.
3468         * mdebugread.c (parse_lines, parse_partial_symbols)
3469         (psymtab_to_symtab_1): Update.
3470         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3471         Rename fields.  Update comment.  Now private.
3472         <text_low, text_high, set_text_low, set_text_high>: New methods.
3473         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3474         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
3475         (start_psymtab_common, maintenance_info_psymtabs)
3476         (maintenance_check_psymtabs): Update.
3477         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
3478         texthigh fields.
3479         (scan_xcoff_symtab): Update.
3480
3481 2018-07-26  Tom Tromey  <tromey@redhat.com>
3482
3483         * psympriv.h (struct partial_symbol) <unrelocated_address,
3484         address, set_address>: New methods.
3485         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
3486         (fixup_psymbol_section, relocate_psymtabs): Update.
3487         (print_partial_symbols): Add 'objfile' parameter.  Update.
3488         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
3489         Update.
3490
3491 2018-07-26  Tom Tromey  <tom@tromey.com>
3492
3493         * dwarf-index-write.c (write_psymbols, debug_names::insert)
3494         (debug_names::write_psymbols): Update.
3495         * psympriv.h (struct partial_symbol): Derive from
3496         general_symbol_info.
3497         <obj_section>: New method.
3498         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
3499         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3500         (find_pc_sect_psymbol, fixup_psymbol_section)
3501         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
3502         (print_partial_symbols, recursively_search_psymtabs)
3503         (compare_psymbols, psymbol_hash, psymbol_compare)
3504         (add_psymbol_to_bcache, maintenance_check_psymtabs)
3505         (psymbol_name_matches, psym_fill_psymbol_map): Update.
3506
3507 2018-07-26  Tom Tromey  <tromey@redhat.com>
3508
3509         * dbxread.c (end_psymtab): Remove dead code.
3510
3511 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
3512
3513         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
3514         DWARF unwinders are disabled.
3515         * dwarf2-frame.c: Add dwarf2read.h include.
3516         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
3517         disabled.
3518         (dwarf2_frame_unwinders_enabled_p): Define.
3519         (show_dwarf_unwinders_enabled_p): New function.
3520         (_initialize_dwarf2_frame): Register switch to control DWARF
3521         unwinder use.
3522         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
3523         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
3524         (show_dwarf_cmdlist): Remove static keyword.
3525         * dwarf2read.h (set_dwarf_cmdlist): Declare.
3526         (show_dwarf_cmdlist): Declare.
3527         * NEWS: Document new feature.
3528
3529 2018-07-26  Tom de Vries  <tdevries@suse.de>
3530
3531         PR breakpoints/23366
3532         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
3533
3534 2018-07-26  Tom de Vries  <tdevries@suse.de>
3535
3536         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
3537         DW_AT_count can't be translated to a dynamic prop.
3538
3539 2018-07-25  Tom de Vries  <tdevries@suse.de>
3540
3541         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
3542         try/catch.
3543
3544 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
3545
3546         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
3547
3548 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
3549
3550         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
3551
3552 2018-07-24  Keith Seitz  <keiths@redhat.comt
3553
3554         PR symtab/23010
3555         * dwarf2read.c (dw2_add_symbol_to_list): New function.
3556         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
3557         instead of add_symbol_to_list.
3558         (read_file_scope): Call prepare_one_comp_unit before reading
3559         any other DIEs.
3560
3561 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
3562
3563         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
3564
3565 2018-07-24  Tom Tromey  <tom@tromey.com>
3566
3567         * utils.c (malloc, realloc, free): Don't declare.
3568         * configure, config.in: Rebuild.
3569         * configure.ac: Don't check for declarations of free, malloc, or
3570         realloc.
3571
3572 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3573
3574         * aarch64-linux-nat.c
3575         (aarch64_linux_nat_target::stopped_data_address): Remove unused
3576         variable.
3577         * arm-linux-nat.c (fetch_regs): Likewise.
3578         (store_regs): Likewise.
3579         (fetch_vfp_regs): Likewise.
3580         (store_vfp_regs): Likewise.
3581         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
3582         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
3583         (arm_linux_nat_target::insert_watchpoint): Likewise.
3584         (arm_linux_nat_target::remove_watchpoint): Likewise.
3585         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
3586         Likewise.
3587         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
3588         Likewise.
3589         * ppc-linux-nat.c (fetch_register): Likewise.
3590         (fetch_all_gp_regs): Likewise.
3591         (fetch_ppc_registers): Likewise.
3592         (store_all_gp_regs): Likewise.
3593         (store_ppc_registers): Likewise.
3594         (hwdebug_insert_point): Likewise.
3595         (can_use_watchpoint_cond_accel): Likewise.
3596         * remote-sim.c (gdb_os_write_stdout): Likewise.
3597
3598 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3599             Tom Tromey  <tom@tromey.com>
3600
3601         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
3602         test for it.
3603         * configure: Rebuild.
3604
3605 2018-07-22  Tom Tromey  <tom@tromey.com>
3606
3607         * regformats/regdat.sh: Define xmltarget_${name} inside
3608         #ifndef IN_PROCESS_AGENT.
3609
3610 2018-07-22  Tom Tromey  <tom@tromey.com>
3611
3612         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
3613
3614 2018-07-22  Tom Tromey  <tom@tromey.com>
3615
3616         * symfile.c (reread_symbols): Notify iter, not objfile.
3617
3618 2018-07-22  Tom Tromey  <tom@tromey.com>
3619
3620         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
3621         Use arch_ops.
3622         (ravenscar_thread_target::prepare_to_store): Likewise.
3623
3624 2018-07-22  Tom Tromey  <tom@tromey.com>
3625
3626         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
3627         unused variable.  Call value_fetch_lazy when needed.
3628         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
3629         Remove unused variable.  Call value_fetch_lazy when needed.
3630
3631 2018-07-22  Tom Tromey  <tom@tromey.com>
3632
3633         * m32c-tdep.c (mark_dma): Return void.
3634         (make_regs): Remove unused declarations.
3635
3636 2018-07-22  Tom Tromey  <tom@tromey.com>
3637
3638         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
3639         cmdscm_get_valid_command_smob_arg_unsafe for effect.
3640         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
3641         bkscm_get_valid_block_smob_arg_unsafe for effect.
3642
3643 2018-07-22  Tom Tromey  <tom@tromey.com>
3644
3645         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
3646         value_type.
3647
3648 2018-07-22  Tom Tromey  <tom@tromey.com>
3649
3650         * windows-nat.c (saved_context): Conditionally define.
3651         * remote.c (remote_target::remote_btrace_maybe_reopen):
3652         Conditionally declare "warned".
3653         * inflow.c (sigquit_ours): Conditionally define.
3654         (new_tty): Move "tty" declaration inside #if.
3655         * guile/guile.c (guile_datadir): Conditionally define.
3656         * charset.c (set_be_le_names): Move some declarations inside #if.
3657         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
3658         #if.
3659         (parse_xml_btrace_conf): Likewise.
3660
3661 2018-07-22  Tom Tromey  <tom@tromey.com>
3662
3663         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
3664
3665 2018-07-22  Tom Tromey  <tom@tromey.com>
3666
3667         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
3668         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
3669         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
3670         * buildsym-legacy.c (get_macro_table): Remove unused variable.
3671         * stack.c (frame_apply_level_command): Remove unused variable.
3672         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
3673         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
3674         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
3675         unused variable.
3676         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
3677         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
3678         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
3679         variable.
3680         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
3681         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
3682         variable.
3683         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
3684         Remove unused variable.
3685         * cli/cli-script.c (recurse_read_control_structure): Remove unused
3686         variable.
3687         * common/tdesc.c (print_xml_feature::visit): Remove unused
3688         variable.
3689         * compile/compile-object-load.c (store_regs): Remove unused
3690         variables.
3691         * complaints.c (clear_complaints): Remove unused variable.
3692         * corelow.c (core_target_open): Remove unused variable.
3693         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
3694         variable.
3695         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
3696         variable.
3697         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
3698         variable.
3699         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
3700         variable.
3701         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
3702         variable.
3703         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
3704         variable.
3705         * ia64-tdep.c (examine_prologue): Remove unused variable.
3706         * infcall.c (run_inferior_call): Remove unused variable.
3707         * inferior.c (exit_inferior): Remove unused variable.
3708         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
3709         * linespec.c (decode_line_2): Remove unused variable.
3710         * linux-nat.c (super_close): Remove.
3711         * linux-tdep.c (linux_info_proc): Remove unused variable.
3712         * mi/mi-main.c (mi_execute_command): Remove unused variable.
3713         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
3714         Remove unused variable.
3715         * parse.c (find_minsym_type_and_address): Remove unused variable.
3716         * printcmd.c (info_symbol_command, printf_floating): Remove unused
3717         variable.
3718         * python/py-breakpoint.c (bppy_set_commands): Remove unused
3719         variable.
3720         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
3721         variables.
3722         * record-btrace.c (record_btrace_target::store_registers): Remove
3723         unused variable.
3724         (cmd_show_record_btrace_cpu): Remove unused variable.
3725         * riscv-tdep.c (riscv_register_reggroup_p)
3726         (riscv_push_dummy_call, riscv_return_value): Remove unused
3727         variable.
3728         * rust-exp.y (literal): Remove unused variable.
3729         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
3730         unused variable.
3731         <STRUCTOP_ANONYMOUS>: Likewise.
3732         * s390-linux-tdep.c (s390_linux_init_abi_31)
3733         (s390_linux_init_abi_64): Remove unused variable.
3734         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
3735         (file_select_thread, net_windows_open, _initialize_ser_windows):
3736         Remove unused variables.
3737         * symtab.c (find_pc_sect_line): Remove unused variable.
3738         * target-memory.c (compute_garbled_blocks): Remove unused
3739         variable.
3740         (target_write_memory_blocks): Remove unused variable.
3741         * target.c (target_stack::unpush): Remove unused variables.
3742         * tracepoint.c (start_tracing, all_tracepoint_actions)
3743         (merge_uploaded_trace_state_variables)
3744         (print_one_static_tracepoint_marker): Remove unused variable.
3745         * unittests/basic_string_view/element_access/char/1.cc (test01):
3746         Remove unused variable.
3747         * windows-nat.c (windows_continue, windows_add_all_dlls)
3748         (do_initial_windows_stuff, windows_nat_target::create_inferior):
3749         Remove unused variables.
3750
3751 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
3752
3753         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
3754         attr_profile in HAVE_ELF.
3755         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
3756         HAVE_ELF.
3757
3758 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
3759
3760         * frame.c (frame_register_unwind): Change parameter name.
3761         (frame_unwind_register): Likewise.
3762         (frame_unwind_register_value): Likewise.
3763         (frame_unwind_register_signed): Likewise.
3764         (frame_unwind_register_unsigned): Likewise.
3765         * frame.h (frame_register_unwind): Likewise.
3766         (frame_unwind_register): Likewise.
3767         (frame_unwind_register_value): Likewise.
3768         (frame_unwind_register_signed): Likewise.
3769         (frame_unwind_register_unsigned): Likewise.
3770         (frame_unwind_arch): Likewise.
3771
3772 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
3773
3774         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
3775         ISA maintenance.
3776
3777 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
3778
3779         * mips-linux-nat.c (mips_linux_nat_target::read_description):
3780         Call `get_ptrace_pid' rather than extracting the ptrace PID by
3781         hand.
3782
3783 2018-07-20  Keith Seitz  <keiths@redhat.com>
3784
3785         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
3786         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
3787         m_compunit_symtab, m_language>: Add "m_" prefix.
3788         Update all uses.
3789         * buildsym.c: Update all uses.
3790
3791 2018-07-20  Tom Tromey  <tom@tromey.com>
3792
3793         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
3794         * buildsym.h (record_line_ftype): Remove typedef.
3795
3796 2018-07-20  Tom Tromey  <tom@tromey.com>
3797
3798         * buildsym-legacy.h (augment_type_symtab): Don't declare.
3799         (end_expandable_symtab): Likewise.
3800         (end_symtab_get_static_block): Likewise.
3801         (end_symtab_from_static_block): Likewise.
3802         * buildsym-legacy.c (augment_type_symtab): Remove.
3803         (end_expandable_symtab): Remove.
3804         (end_symtab_get_static_block): Remove.
3805         (end_symtab_from_static_block): Remove.
3806
3807 2018-07-20  Tom Tromey  <tom@tromey.com>
3808
3809         * dwarf2read.c: Include buildsym.h.
3810         (struct dwarf2_cu) <builder>: New method.
3811         (fixup_go_packaging): Update.
3812         (process_full_comp_unit, process_full_type_unit): Update.  Don't
3813         use scoped_free_pendings.
3814         (using_directives): Add "cu" parameter, remove "language".
3815         (read_import_statement, setup_type_unit_groups, )
3816         (read_func_scope, read_lexical_block_scope)
3817         (dwarf2_record_block_ranges, read_namespace): Update.
3818         (lnp_state_machine::lnp_state_machine): Add cu parameter.
3819         (lnp_state_machine::handle_end_sequence): Update.
3820         (class lnp_state_machine) <m_cu>: New member.
3821         <m_record_line_callback>: Remove.
3822         <m_currently_recording_lines>: New member.
3823         (lnp_state_machine::handle_set_file): Update.
3824         (noop_record_line): Remove.
3825         (dwarf_record_line_p): Add cu parameter.
3826         (dwarf_record_line_1, dwarf_finish_line): Likewise.
3827         (lnp_state_machine::record_line)
3828         (lnp_state_machine::lnp_state_machine)
3829         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
3830         (dwarf_decode_lines): Update.
3831         (dwarf2_start_subfile): Add cu parameter.
3832         (dwarf2_start_symtab, new_symbol): Update.
3833         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
3834         Remove dwarf2_per_objfile parameter.
3835         (dwarf_decode_macros): Update.
3836
3837 2018-07-20  Tom Tromey  <tom@tromey.com>
3838
3839         * stabsread.c (define_symbol): Update.
3840         * buildsym-legacy.h (get_buildsym_compunit): Declare.
3841         * dwarf2read.c (new_symbol): Update.
3842         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
3843         * cp-namespace.c: Include buildsym.h.
3844         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
3845         * buildsym-legacy.c (get_buildsym_compunit): New function.
3846
3847 2018-07-20  Tom Tromey  <tom@tromey.com>
3848
3849         * xcoffread.c: Include buildsym-legacy.h.
3850         * windows-nat.c: Include buildsym-legacy.h.
3851         * stabsread.c: Include buildsym-legacy.h.
3852         * mdebugread.c: Include buildsym-legacy.h.
3853         * buildsym-legacy.h: New file.
3854         * buildsym-legacy.c: New file, from buildsym.c.
3855         * go32-nat.c: Include buildsym-legacy.h.
3856         * dwarf2read.c: Include buildsym-legacy.h.
3857         * dbxread.c: Include buildsym-legacy.h.
3858         * cp-namespace.c: Include buildsym-legacy.h.
3859         * coffread.c: Include buildsym-legacy.h.
3860         * buildsym.h: Move some contents to buildsym-legacy.h.
3861         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
3862         buildsym-legacy.c.
3863         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
3864
3865 2018-07-20  Tom Tromey  <tom@tromey.com>
3866
3867         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
3868         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
3869         (buildsym_compunit::buildsym_compunit)
3870         (buildsym_compunit::~buildsym_compunit)
3871         (buildsym_compunit::get_macro_table): Define.
3872
3873 2018-07-20  Tom Tromey  <tom@tromey.com>
3874
3875         * buildsym.c (reset_symtab_globals): Remove.
3876         (buildsym_compunit::end_symtab_from_static_block): Update.
3877         (buildsym_compunit::augment_type_symtab): Update.
3878         (end_symtab_from_static_block): Call free_buildsym_compunit.
3879         (augment_type_symtab, end_symtab, end_expandable_symtab):
3880         Likewise.
3881
3882 2018-07-20  Tom Tromey  <tom@tromey.com>
3883
3884         * arch-utils.c: Do not include buildsym.h.
3885         * mipsread.c: Do not include buildsym.h.
3886         * machoread.c: Do not include buildsym.h.
3887         * elfread.c: Do not include buildsym.h.
3888
3889 2018-07-20  Tom Tromey  <tom@tromey.com>
3890
3891         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
3892         initialization.
3893         (buildsym_compunit): Add new constructor.
3894         (struct buildsym_compunit) <get_last_source_file, finish_block,
3895         record_block_range, start_subfile, patch_subfile_names,
3896         push_subfile, pop_subfile, record_line, get_compunit_symtab,
3897         set_last_source_start_addr, get_last_source_start_addr,
3898         get_local_using_directives, set_local_using_directives,
3899         get_global_using_directives, outermost_context_p,
3900         get_current_context_stack, get_context_stack_depth,
3901         get_current_subfile, get_local_symbols, get_file_symbols,
3902         get_global_symbols, record_debugformat, record_producer,
3903         push_context, pop_context, end_symtab_get_static_block,
3904         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
3905         New public methods.
3906         <record_pending_block, finish_block_internal, make_blockvector,
3907         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
3908         private methods.
3909         Update all users.
3910
3911 2018-05-22  Tom Tromey  <tom@tromey.com>
3912
3913         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
3914         parameter.
3915         (finish_block_internal): Update.
3916
3917 2018-07-20  Tom Tromey  <tom@tromey.com>
3918
3919         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
3920         parameter.
3921         (finish_block_internal): Update.
3922
3923 2018-07-20  Tom Tromey  <tom@tromey.com>
3924
3925         * buildsym.h (EXTERN): Don't define or undef.
3926         * buildsym.c (EXTERN): Don't define.
3927
3928 2018-07-20  Tom Tromey  <tom@tromey.com>
3929
3930         * buildsym.c: Remove TODO comment.
3931
3932 2018-07-20  Tom Tromey  <tom@tromey.com>
3933
3934         * coffread.c (coff_symtab_read): Update.
3935         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
3936         (xcoff_new_init): Update.
3937         * mipsread.c (mipscoff_new_init): Update.
3938         * mdebugread.c (mdebug_build_psymtabs): Update.
3939         * elfread.c (elf_new_init): Update.
3940         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
3941         Update.
3942         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
3943         (coffstab_build_psymtabs, elfstab_build_psymtabs)
3944         (stabsect_build_psymtabs): Update.
3945         * buildsym.h (buildsym_init): Don't declare.
3946         * buildsym.c: Update comment.
3947         (prepare_for_building): Remove.
3948         (start_symtab, restart_symtab): Update.
3949         (reset_symtab_globals): Update comment.
3950         (buildsym_init): Remove.
3951
3952 2018-07-20  Tom Tromey  <tom@tromey.com>
3953
3954         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
3955         * stabsread.c (patch_block_stabs, define_symbol, read_type)
3956         (read_enum_type, common_block_start, common_block_end)
3957         (cleanup_undefined_types_1, finish_global_stabs): Update.
3958         * mdebugread.c (psymtab_to_symtab_1): Update.
3959         * dwarf2read.c (fixup_go_packaging, read_func_scope)
3960         (read_lexical_block_scope, new_symbol): Update.
3961         * dbxread.c (process_one_symbol): Update.
3962         * coffread.c (coff_symtab_read, process_coff_symbol)
3963         (coff_read_enum_type): Update.
3964         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
3965         declare.
3966         (get_local_symbols, get_file_symbols, get_global_symbols): New
3967         functions.
3968         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
3969         m_global_symbols.
3970         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
3971         (~scoped_free_pendings): Update.
3972         (finish_block, prepare_for_building, reset_symtab_globals)
3973         (end_symtab_get_static_block, end_symtab_with_blockvector)
3974         (augment_type_symtab, push_context): Update.
3975         (get_local_symbols, get_file_symbols, get_global_symbols): New
3976         functions.
3977         (buildsym_init): Update.
3978
3979 2018-07-20  Tom Tromey  <tom@tromey.com>
3980
3981         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
3982         (process_full_type_unit): Likewise.
3983         (dwarf2_start_symtab): Set list_in_scope.
3984
3985 2018-07-20  Tom Tromey  <tom@tromey.com>
3986
3987         * dwarf2read.c (process_psymtab_comp_unit_reader)
3988         (build_type_psymtabs_reader): Do not set list_in_scope.
3989
3990 2018-07-20  Tom Tromey  <tom@tromey.com>
3991
3992         * buildsym.c (free_pendings): Remove.
3993         (add_symbol_to_list, scoped_free_pendings)
3994         (finish_block_internal, buildsym_init): Update.
3995
3996 2018-07-20  Tom Tromey  <tom@tromey.com>
3997
3998         * xcoffread.c (read_xcoff_symtab): Update.
3999         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
4000         Update.
4001         * dbxread.c (process_one_symbol): Update.
4002         * coffread.c (coff_symtab_read): Update.
4003         * buildsym.h (finish_block): Update.
4004         * buildsym.c (finish_block): Remove "listhead" argument.
4005         (end_symtab_get_static_block): Update.
4006
4007 2018-07-20  Tom Tromey  <tom@tromey.com>
4008
4009         * buildsym.h (class scoped_free_pendings): Remove constructor.
4010         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
4011         method.
4012         <m_pending_block_obstack, m_pending_blocks>: New members.
4013         (pending_block_obstack, pending_blocks): Remove.
4014         (scoped_free_pendings::scoped_free_pendings): Default.
4015         (~scoped_free_pendings): Update.
4016         (free_pending_blocks): Remove.
4017         (finish_block_internal, record_pending_block, make_blockvector)
4018         (end_symtab_get_static_block, augment_type_symtab, push_context)
4019         (buildsym_init): Update.
4020
4021 2018-07-20  Tom Tromey  <tom@tromey.com>
4022
4023         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
4024         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
4025         members.
4026         (pending_addrmap, pending_addrmap_obstack)
4027         (pending_addrmap_interesting): Remove.
4028         (scoped_free_pendings, record_block_range, make_blockvector)
4029         (prepare_for_building, reset_symtab_globals, buildsym_init):
4030         Update.
4031
4032 2018-07-20  Tom Tromey  <tom@tromey.com>
4033
4034         * xcoffread.c (process_linenos): Update.
4035         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
4036         * mdebugread.c (psymtab_to_symtab_1): Update.
4037         * dwarf2read.c (setup_type_unit_groups)
4038         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
4039         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
4040         * dbxread.c (process_one_symbol): Update.
4041         * coffread.c (coff_symtab_read, enter_linenos)
4042         (process_coff_symbol): Update.
4043         * buildsym.h (current_subfile): Don't declare.
4044         (get_current_subfile): Declare.
4045         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
4046         member.
4047         (start_subfile, free_buildsym_compunit, push_subfile)
4048         (prepare_for_building, start_symtab): Update.
4049         (get_current_subfile): New function.
4050
4051 2018-07-20  Tom Tromey  <tom@tromey.com>
4052
4053         * coffread.c (coff_symtab_read): Update.
4054         * xcoffread.c (read_xcoff_symtab): Update.
4055         * dwarf2read.c (new_symbol): Update.
4056         (read_func_scope, read_lexical_block_scope): Update.
4057         * dbxread.c (process_one_symbol): Update.
4058         * buildsym.h (context_stack, context_stack_depth): Don't declare.
4059         (outermost_context_p): Remove macro.
4060         (outermost_context_p, get_current_context_stack)
4061         (get_context_stack_depth): Declare.
4062         (pop_context): Return struct context_stack.
4063         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
4064         member.
4065         (context_stack_size): Remove.
4066         (INITIAL_CONTEXT_STACK_SIZE): Remove.
4067         (prepare_for_building, end_symtab_get_static_block)
4068         (augment_type_symtab, push_context): Update.
4069         (pop_context): Return struct context_stack.
4070         (outermost_context_p, get_current_context_stack)
4071         (get_context_stack_depth): New functions.
4072         (buildsym_init): Update.
4073
4074 2018-07-20  Tom Tromey  <tom@tromey.com>
4075
4076         * rust-exp.y: Now a pure parser.  Update all rules.
4077         (%union): Move earlier.
4078         (current_parser, work_obstack): Remove globals.
4079         (rust_parser, ~rust_parser): Update.
4080         (class rust_parser) <copy_name, concat3, crate_name, super_name,
4081         lex_character, lex_number, lex_string, lex_identifier,
4082         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
4083         convert_name, convert_params_to_expression,
4084         convert_ast_to_expression, ast_basic_type, ast_operation,
4085         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
4086         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
4087         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
4088         ast_array_type, ast_slice_type, ast_reference_type,
4089         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
4090         (rust_parse): Update.
4091         (rustyyerror, rustyylex): Add parser parameter.
4092         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
4093         (rust_lex_stringish_test, rust_lex_test_sequence)
4094         (rust_lex_test_trailing_dot, rust_lex_test_completion)
4095         (rust_lex_test_push_back, rust_lex_tests): Update.
4096
4097 2018-07-19  Pedro Alves  <palves@redhat.com>
4098
4099         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
4100         gdb::unique_xmalloc_ptr.
4101         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
4102         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
4103         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
4104         copy-initialization.
4105         * guile/scm-pretty-print.c (ppscm_print_children): Use
4106         gdb::unique_xmalloc_ptr instead of cleanups.
4107         (gdbscm_apply_val_pretty_printer): Remove cleanups.
4108         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
4109         gdb::unique_xmalloc_ptr.
4110         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4111         Adjust to use gdb::unique_xmalloc_ptr.
4112         * guile/scm-utils.c (extract_arg): Adjust.
4113         * guile/scm-value.c (gdbscm_value_field): Adjust to use
4114         gdb::unique_xmalloc_ptr instead of a cleanup.
4115
4116 2018-07-19  Tom Tromey  <tom@tromey.com>
4117
4118         * utils.c (do_value_free_to_mark)
4119         (make_cleanup_value_free_to_mark): Remove.
4120         * utils.h (make_cleanup_value_free_to_mark): Remove.
4121
4122 2018-07-19  Pedro Alves  <palves@redhat.com>
4123
4124         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
4125         forwarding reference.
4126
4127 2018-07-18  Pedro Alves  <palves@redhat.com>
4128
4129         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
4130         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
4131         cleanup.
4132
4133 2018-07-18  Pedro Alves  <palves@redhat.com>
4134
4135         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
4136         exceptions.
4137         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
4138         (gdbscm_wrap): New.
4139         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
4140         directly instead of a cleanup.
4141         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
4142         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
4143         (vlscm_binop_gdbthrow): New, factored out from ...
4144         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
4145         (vlscm_rich_compare): Use gdbscm_wrap.
4146         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
4147         instead of a cleanup.
4148         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
4149         cleanup.
4150         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4151         Use xfree directly instead of a cleanup.
4152         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
4153         Adjust to use gdbscm_wrap and scoped_value_mark.
4154         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
4155         (gdbscm_value_address, gdbscm_value_dereference)
4156         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
4157         scoped_value_mark.
4158         (gdbscm_value_dynamic_type): Use scoped_value_mark.
4159         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
4160         scoped_value_mark.
4161         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
4162         gdbscm_wrap and scoped_value_mark.
4163         (gdbscm_value_to_string): Use xfree directly instead of a
4164         cleanup.  Move 'buffer' unique_ptr to TRY scope.
4165         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
4166         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
4167         scoped_value_mark.
4168         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
4169         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
4170         scoped_value_mark.
4171         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
4172         gdbscm_wrap.
4173
4174 2018-07-18  Tom de Vries  <tdevries@suse.de>
4175
4176         * findvar.c (default_read_var_value): Also resolve dynamic type for
4177         LOC_OPTIMIZED_OUT vars.
4178
4179 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
4180
4181         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
4182         decoding.
4183
4184 2018-07-17  Tom Tromey  <tom@tromey.com>
4185
4186         * guile/scm-param.c (pascm_set_func, pascm_show_func)
4187         (compute_enum_list, pascm_set_param_value_x)
4188         (gdbscm_parameter_value): Update.
4189         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
4190         (gdbscm_scm_to_host_string): Update.
4191         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
4192         Update.
4193         * guile/scm-cmd.c (cmdscm_add_completion): Update.
4194         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
4195         * guile/scm-string.c (gdbscm_scm_to_string): Return
4196         unique_xmalloc_ptr.
4197         (gdbscm_scm_to_host_string): Likewise.
4198
4199 2018-07-17  Tom Tromey  <tom@tromey.com>
4200
4201         * guile/guile.c (gdbscm_eval_from_control_command): Update.
4202         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
4203         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
4204         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
4205         unique_xmalloc_ptr.
4206
4207 2018-07-17  Tom Tromey  <tom@tromey.com>
4208
4209         * guile/scm-param.c (pascm_signal_setshow_error): Update.
4210         * guile/guile-internal.h (gdbscm_exception_message_to_string):
4211         Update.
4212         * guile/scm-cmd.c (cmdscm_function): Update.
4213         * guile/scm-pretty-print.c
4214         (ppscm_print_exception_unless_memory_error): Update.
4215         * guile/scm-exception.c (gdbscm_exception_message_to_string):
4216         Return unique_xmalloc_ptr.
4217
4218 2018-07-17  Tom Tromey  <tom@tromey.com>
4219
4220         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
4221         Use string_printf.
4222
4223 2018-07-17  Jim Wilson  <jimw@sifive.com>
4224
4225         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
4226         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
4227         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
4228         unecessary braces after EF_RISCV_RVC test.  Delete call to
4229         set_gdbarch_decr_pc_after_break.
4230
4231         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
4232         RISCV_LAST_FP_REGNUM + 1.
4233         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
4234
4235 2018-07-17  Tom Tromey  <tom@tromey.com>
4236
4237         * configure.ac: Remove --disable-gdbcli.
4238         * configure: Rebuild.
4239         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
4240         (SUBDIR_CLI_CFLAGS): Remove.
4241         (SFILES): Use SUBDIR_CLI_SRCS.
4242         (COMMON_OBS): Use SUBDIR_CLI_OBS.
4243
4244 2018-07-17  Tom Tromey  <tom@tromey.com>
4245
4246         PR gdb/18624:
4247         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
4248
4249 2018-07-16  Jim Wilson  <jimw@sifive.com>
4250
4251         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
4252
4253 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4254
4255         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
4256         variable.
4257         (libunwind_frame_sniffer): Likewise.
4258         (libunwind_frame_prev_register): Likewise.
4259         (libunwind_sigtramp_frame_sniffer): Likewise.
4260         * ia64-tdep.c (ia64_access_reg): Likewise.
4261         (ia64_access_rse_reg): Likewise.
4262         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
4263         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
4264
4265 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4266
4267         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
4268
4269 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4270
4271         * remote-sim.c (gdbsim_target::close,
4272         gdbsim_target::mourn_inferior): Remove unused variables.
4273
4274 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
4275
4276         * ia64-tdep.c (ktab_buf): New global.
4277         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
4278         (get_kernel_table): Adjust.
4279
4280 2018-07-16  Tom Tromey  <tom@tromey.com>
4281
4282         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
4283         * dwarf2read.c (using_directives, new_symbol): Use
4284         outermost_context_p.
4285         * dbxread.c (process_one_symbol): Use outermost_context_p.
4286         * coffread.c (coff_symtab_read): Use outermost_context_p.
4287
4288 2018-07-16  Tom Tromey  <tom@tromey.com>
4289
4290         * dwarf2read.c (using_directives, read_func_scope)
4291         (read_lexical_block_scope): Update.
4292         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
4293         * buildsym.h (local_using_directives, global_using_directives):
4294         Don't declare.
4295         (get_local_using_directives, set_local_using_directives)
4296         (get_global_using_directives): Declare.
4297         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
4298         m_global_using_directives>: New members.
4299         (finish_block_internal, prepare_for_building)
4300         (reset_symtab_globals, end_symtab_get_static_block)
4301         (push_context): Update.
4302         (get_local_using_directives, set_local_using_directives)
4303         (get_global_using_directives): New functions.
4304         (buildsym_init): Update.
4305
4306 2018-07-16  Tom Tromey  <tom@tromey.com>
4307
4308         * xcoffread.c (xcoff_initial_scan): Don't call
4309         free_pending_blocks.
4310         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
4311         * buildsym.h (class scoped_free_pendings): Add constructor.
4312         (free_pending_blocks): Don't declare.
4313         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
4314         (free_pending_blocks): Now static.
4315
4316 2018-07-16  Tom Tromey  <tom@tromey.com>
4317
4318         * buildsym.h (push_subfile, pop_subfile): Update declarations.
4319         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
4320         member.
4321         (struct subfile_stack): Remove.
4322         (subfile_stack): Remove.
4323         (push_subfile, pop_subfile, buildsym_init): Update.
4324
4325 2018-07-16  Tom Tromey  <tom@tromey.com>
4326
4327         * buildsym.c (push_subfile): Use gdb_assert.
4328         (pop_subfile): Use gdb_assert.
4329
4330 2018-07-16  Tom Tromey  <tom@tromey.com>
4331
4332         * buildsym.h (merge_symbol_lists): Remove.
4333         * buildsym.c (merge_symbol_lists): Remove.
4334
4335 2018-07-16  Tom Tromey  <tom@tromey.com>
4336
4337         * stabsread.c (scan_file_globals): Update comment.
4338         * stabsread.h (scan_file_globals): Move from buildsym.h.
4339         * buildsym.h (scan_file_globals): Move to stabsread.h.
4340
4341 2018-07-16  Tom Tromey  <tom@tromey.com>
4342
4343         * xcoffread.c (xcoff_new_init): Update.
4344         * mipsread.c (mipscoff_new_init): Update.
4345         * mdebugread.c (mdebug_build_psymtabs): Update.
4346         * elfread.c (elf_new_init): Update.
4347         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
4348         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
4349         * buildsym.h (buildsym_new_init): Don't declare.
4350         * buildsym.c (buildsym_new_init): Remove.
4351
4352 2018-07-16  Tom Tromey  <tom@tromey.com>
4353
4354         * stabsread.h (within_function): Move from buildsym.h.
4355         * stabsread.c (start_stabs): Clear within_function.
4356         * coffread.c (coff_start_symtab): Clear within_function.
4357         * buildsym.h (within_function): Move to stabsread.h.
4358         * buildsym.c (prepare_for_building): Update.
4359
4360 2018-07-16  Tom Tromey  <tom@tromey.com>
4361
4362         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
4363         * dwarf2read.c (dwarf2_start_symtab): Don't set
4364         processing_gcc_compilation.
4365         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
4366
4367 2018-07-16  Tom Tromey  <tom@tromey.com>
4368
4369         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
4370         (next_symbol_text_func): Move from buildsym.h.
4371         * stabsread.c (hashname): Move from buildsym.c.
4372         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
4373         (next_symbol_text_func, hashname): Move to stabsread.h.
4374         * buildsym.c: Don't include bcache.h
4375         (hashname): Move to stasbread.c.
4376
4377 2018-07-16  Tom Tromey  <tom@tromey.com>
4378
4379         * buildsym.h (context_stack_size): Don't declare.
4380         * buildsym.c (context_stack_size): New global.
4381
4382 2018-07-16  Tom Tromey  <tom@tromey.com>
4383
4384         * dbxread.c (processing_acc_compilation): New global.
4385         * buildsym.h (processing_acc_compilation): Don't declare.
4386
4387 2018-07-16  Tom Tromey  <tom@tromey.com>
4388
4389         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
4390         * dbxread.c (read_ofile_symtab): Update.
4391         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
4392         * buildsym.h (last_source_start_addr): Remove.
4393         (set_last_source_start_addr, get_last_source_start_addr):
4394         Declare.
4395         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
4396         parameter.
4397         (struct buildsym_compunit) <m_last_source_start_addr>: New
4398         member.
4399         (prepare_for_building): Remove start_addr parameter.
4400         (start_symtab, restart_symtab, end_symtab_get_static_block)
4401         (end_symtab_with_blockvector): Update.
4402         (set_last_source_start_addr, get_last_source_start_addr): New
4403         functions.
4404
4405 2018-07-16  Tom Tromey  <tom@tromey.com>
4406
4407         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
4408         member.
4409         (have_line_numbers): Remove.
4410         (record_line, prepare_for_building, end_symtab_get_static_block)
4411         (augment_type_symtab): Update.
4412
4413 2018-07-16  Tom Tromey  <tom@tromey.com>
4414
4415         * buildsym.c (~buildsym_compunit): Free the macro table.
4416         (struct buildsym_compunit) <get_macro_table, release_macros>: New
4417         methods.
4418         <m_pending_macros>: New member.
4419         (pending_macros): Remove.
4420         (~scoped_free_pendings, get_macro_table, prepare_for_building)
4421         (reset_symtab_globals, end_symtab_get_static_block)
4422         (end_symtab_with_blockvector, augment_type_symtab)
4423         (buildsym_init): Update.
4424
4425 2018-07-16  Tom Tromey  <tom@tromey.com>
4426
4427         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
4428         parameter.
4429         (buildsym_compunit::set_last_source_file): New method.
4430         <m_last_source_file>: New member.
4431         (prepare_for_building): Remove "name" parameter.
4432         (start_symtab, restart_symtab, reset_symtab_globals): Update.
4433         (last_source_file): Remove.
4434         (set_last_source_file, get_last_source_file): Update.
4435
4436 2018-07-16  Tom Tromey  <tom@tromey.com>
4437
4438         * buildsym.c (prepare_for_building): Add assert.
4439
4440 2018-07-16  Tom Tromey  <tom@tromey.com>
4441
4442         * buildsym.c (~buildsym_compunit): Update.
4443         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
4444         (start_subfile, patch_subfile_names)
4445         (end_symtab_with_blockvector): Update.
4446
4447 2018-07-16  Tom Tromey  <tom@tromey.com>
4448
4449         * buildsym.c (struct buildsym_compunit): Add constructor,
4450         destructor, initializers.
4451         (start_buildsym_compunit): Remove.
4452         (free_buildsym_compunit): Use "delete".
4453         (start_symtab, restart_symtab): Use "new".
4454
4455 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
4456
4457         * symfile.c (set_objfile_default_section_offset): Remove struct
4458         keyword.
4459
4460 2018-07-14  Stafford Horne  <shorne@gmail.com>
4461
4462         * (Responsible Maintainers): Add myself as or1k maintainer.
4463
4464 2018-07-13  Tom Tromey  <tom@tromey.com>
4465
4466         * symfile.c (set_objfile_default_section_offset): Use extra braces
4467         around initializer.
4468
4469 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
4470
4471         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
4472         non-branching basr.
4473
4474 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4475
4476         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4477         unittests/cli-utils-selftests.c
4478         * unittests/cli-utils-selftests.c: New file.
4479
4480 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4481
4482         * NEWS: Mention new commands. Mention change to 'thread apply'.
4483
4484 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4485
4486         * thread.c (thr_try_catch_cmd): New function.
4487         (thread_apply_all_command): Handle qcs flags.
4488         (thread_apply_command): Handle qcs flags.
4489         (taas_command): New function.
4490         (tfaas_command): New function.
4491         (_initialize_thread): Update to setup the new commands 'taas
4492         and 'tfaas'. Change doc string for 'thread apply'.
4493
4494 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4495
4496         * stack.c: (trailing_outermost_frame): New function, mostly
4497         extracted from backtrace_command_1.
4498         (leading_innermost_frame): New function.
4499         (backtrace_command_1): Update to call trailing_outermost_frame.
4500         (frame_apply_command_count): New function.
4501         (frame_apply_level_command): New function.
4502         (frame_apply_all_command): New function.
4503         (frame_apply_command): New function.
4504         (faas_command): New function.
4505         (frame_cmd_list): New variable.
4506         (_initialize_stack): Update to setup the new commands 'frame apply'
4507         and 'faas'.
4508
4509 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4510
4511         * cli-utils.c (number_or_range_parser::get_number): Only handle
4512         numbers or convenience var as numbers.
4513         (parse_flags): New function.
4514         (parse_flags_qcs): New function.
4515         (number_or_range_parser::finished): Ensure parsing end is detected
4516         before end of string.
4517         * cli-utils.h (parse_flags): New function.
4518         (parse_flags_qcs): New function.
4519         (number_or_range_parser): Remove m_finished bool.
4520         (number_or_range_parser::skip_range): Set m_in_range to false.
4521
4522 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
4523
4524         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
4525         on Windows.
4526
4527 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4528             Jan Kratochvil  <jan.kratochvil@redhat.com>
4529             Paul Fertser  <fercerpav@gmail.com>
4530             Tsutomu Seki  <sekiriki@gmail.com>
4531             Pedro Alves  <palves@redhat.com>
4532
4533         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4534         'unittests/parse-connection-spec-selftests.c'.
4535         (COMMON_SFILES): Add 'common/netstuff.c'.
4536         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
4537         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
4538         * common/netstuff.c: New file.
4539         * common/netstuff.h: New file.
4540         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
4541         (wait_for_connect): Update comment.  New parameter
4542         'gdb::optional<int> sock' instead of 'struct serial *scb'.
4543         Use 'sock' directly instead of 'scb->fd'.
4544         (try_connect): New function, with code from 'net_open'.
4545         (net_open): Rewrite main loop to deal with multiple
4546         sockets/addresses.  Handle IPv6-style hostnames; implement
4547         support for IPv6 connections.
4548         * unittests/parse-connection-spec-selftests.c: New file.
4549
4550 2018-07-11  Pedro Alves  <palves@redhat.com>
4551
4552         PR gdb/23377
4553         * remote.c (remote_target::remote_detach_pid): Call
4554         set_current_process.
4555
4556 2018-07-11  Pedro Alves  <palves@redhat.com>
4557
4558         * h8300-tdep.c (h8300_gdbarch_init): Remove
4559         set_gdbarch_ecoff_reg_to_regnum calls.
4560
4561 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4562
4563         PR c++/23373
4564         * c-typeprint.c (c_type_print_base_struct_union): Don't print
4565         offsets/sizes for static members of a class/struct.
4566
4567 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
4568
4569         * target-descriptions.c (tdesc_register_bitsize): Rename.
4570         * target-descriptions.h (tdesc_register_bitsize): Likewise.
4571         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
4572         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
4573
4574 2018-07-10  Tom Tromey  <tom@tromey.com>
4575
4576         * breakpoint.c (moribund_locations): Now static and a
4577         std::vector.
4578         (breakpoint_init_inferior, moribund_breakpoint_here_p)
4579         (build_bpstat_chain, update_global_location_list)
4580         (breakpoint_retire_moribund): Update.
4581         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
4582         VEC.
4583
4584 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4585
4586         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
4587         (riscv_register_reggroup_p): Use new function, remove unneeded
4588         parenthesis.
4589         (riscv_push_dummy_call): Extend assert to compare against xlen or
4590         flen based on register type.
4591
4592 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4593
4594         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
4595
4596 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4597
4598         * remote.c (show_hardware_watchpoint_limit): New function.
4599         (show_hardware_watchpoint_length_limit): New function.
4600         (show_hardware_breakpoint_limit): New function.
4601         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
4602         where appropriate, update help text.
4603
4604 2018-07-09  Tom Tromey  <tom@tromey.com>
4605
4606         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
4607         (CLIBS): Don't mention NAT_CLIBS.
4608
4609 2018-07-09  Tom Tromey  <tom@tromey.com>
4610
4611         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
4612         (LIBGDB_OBS, clean mostlyclean): Update.
4613         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
4614
4615 2018-07-09  Tom Tromey  <tom@tromey.com>
4616
4617         * Makefile.in (%.c: %.y): Use ECHO_YACC.
4618         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
4619         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
4620
4621 2018-07-09  Tom Tromey  <tom@tromey.com>
4622
4623         * Makefile.in (ALLDEPFILES): Remove exec.c.
4624         (COMMON_OBS): Remove exec.o.
4625         (COMMON_SFILES): Add exec.c.
4626
4627 2018-07-09  Tom Tromey  <tom@tromey.com>
4628
4629         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
4630
4631 2018-07-09  Tom Tromey  <tom@tromey.com>
4632
4633         * Makefile.in (clean mostlyclean): Remove stamp-version.
4634         (version.c): Depend on stamp-version.
4635         (stamp-version): New rule, from version.c rule.
4636
4637 2018-07-09  Tom Tromey  <tom@tromey.com>
4638
4639         * Makefile.in (init.c): Depend on stamp-init.
4640         (stamp-init): New rule, from init.c rule.
4641         (clean mostlyclean): Remove stamp-init.
4642
4643 2018-07-09  Tom Tromey  <tom@tromey.com>
4644
4645         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
4646         SUBDIR_GCC_COMPILE_SRCS.
4647
4648 2018-07-09  Tom Tromey  <tom@tromey.com>
4649
4650         * Makefile.in (init.c): Remove some unused sed rules.
4651
4652 2018-07-09  Tom Tromey  <tom@tromey.com>
4653
4654         * Makefile.in (TSOBS): Remove.
4655         (INIT_FILES): Update.
4656         (LIBGDB_OBS): Update.
4657         (COMMON_SFILES): Add inflow.c.
4658         (SFILES): Remove inflow.c.
4659
4660 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
4661
4662         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
4663
4664 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
4665
4666         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
4667         get_saveloc_name, is_signal_frame_name, step_name,
4668         init_remote_name, create_addr_space_name,
4669         destroy_addr_space_name, search_unwind_table_name,
4670         find_dyn_list_name): Constify.
4671
4672 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
4673
4674         * darwin-nat.c (darwin_pthread_kill): New function.
4675         (darwin_resume_thread): Use darwin_pthread_kill.
4676
4677 2018-07-05  Tom de Vries  <tdevries@suse.de>
4678
4679         * macroexp.c (macro_buffer) <operator=>: New member function.
4680
4681 2018-07-04  Tom Tromey  <tom@tromey.com>
4682
4683         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
4684
4685 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
4686
4687         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
4688         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
4689         * maint.c: Likewise.
4690         * top.c: Likewise.
4691
4692 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
4693
4694         * NEWS: Create a new section for the next release branch.
4695         Rename the section of the current branch, now that it has
4696         been cut.
4697
4698 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
4699
4700         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
4701         * version.in: Bump version to 8.2.50.DATE-git.
4702
4703 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
4704             Pedro Alves  <palves@redhat.com>
4705
4706         * linux-nat.c (linux_init_ptrace): Rename to ...
4707         (linux_init_ptrace_procfs): ... this.  Call
4708         linux_proc_init_warnings.
4709         (linux_nat_target::post_attach)
4710         (linux_nat_target::post_startup_inferior): Adjust.
4711         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
4712         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
4713
4714 2018-07-04  Tom de Vries  <tdevries@suse.de>
4715
4716         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
4717         check ...
4718         (read_comp_unit_head): ... here.
4719
4720 2018-07-03  Tom Tromey  <tom@tromey.com>
4721
4722         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
4723         (stop_tracing, tstatus_command)
4724         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
4725         (print_one_static_tracepoint_marker): Update.
4726         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
4727         std::vector.
4728         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
4729         VEC.
4730         (all_tracepoints, static_tracepoints_here): Return std::vector.
4731
4732 2018-07-03  Tom Tromey  <tom@tromey.com>
4733
4734         * common/ptid.c (ptid_equal): Remove.
4735         * common/ptid.h (ptid_equal): Don't declare.
4736         * ada-tasks.c: Update.
4737         * breakpoint.c: Update.
4738         * common/agent.c: Update.
4739         * corelow.c: Update.
4740         * darwin-nat-info.c: Update.
4741         * darwin-nat.c: Update.
4742         * dcache.c: Update.
4743         * dtrace-probe.c: Update.
4744         * dummy-frame.c: Update.
4745         * fbsd-nat.c: Update.
4746         * frame.c: Update.
4747         * gdbthread.h: Update.
4748         * gnu-nat.c: Update.
4749         * go32-nat.c: Update.
4750         * inf-loop.c: Update.
4751         * inf-ptrace.c: Update.
4752         * infcall.c: Update.
4753         * infcmd.c: Update.
4754         * inflow.c: Update.
4755         * infrun.c: Update.
4756         * linux-fork.c: Update.
4757         * linux-nat.c: Update.
4758         * linux-thread-db.c: Update.
4759         * mi/mi-cmd-var.c: Update.
4760         * mi/mi-interp.c: Update.
4761         * mi/mi-main.c: Update.
4762         * nto-procfs.c: Update.
4763         * ppc-linux-tdep.c: Update.
4764         * procfs.c: Update.
4765         * python/py-inferior.c: Update.
4766         * python/py-record-btrace.c: Update.
4767         * python/py-record.c: Update.
4768         * ravenscar-thread.c: Update.
4769         * regcache.c: Update.
4770         * remote-sim.c: Update.
4771         * remote.c: Update.
4772         * sol-thread.c: Update.
4773         * solib.c: Update.
4774         * target.c: Update.
4775         * tui/tui-stack.c: Update.
4776         * varobj.c: Update.
4777         * windows-nat.c: Update.
4778         * windows-tdep.c: Update.
4779
4780 2018-07-03  Tom Tromey  <tom@tromey.com>
4781
4782         * common/ptid.c (ptid_match): Remove.
4783         * common/ptid.h (ptid_match): Don't declare.
4784         * fbsd-nat.c: Update.
4785         * infcmd.c: Update.
4786         * infrun.c: Update.
4787         * linux-nat.c: Update.
4788         * record-btrace.c: Update.
4789         * regcache.c: Update.
4790         * remote.c: Update.
4791
4792 2018-07-03  Tom Tromey  <tom@tromey.com>
4793
4794         * common/ptid.c (ptid_tid_p): Remove.
4795         * common/ptid.h (ptid_tid_p): Don't declare.
4796         * sol-thread.c: Update.
4797
4798 2018-07-03  Tom Tromey  <tom@tromey.com>
4799
4800         * common/ptid.c (ptid_lwp_p): Remove.
4801         * common/ptid.h (ptid_lwp_p): Don't declare.
4802         * fbsd-nat.c: Update.
4803         * linux-nat.c: Update.
4804         * nat/linux-procfs.c: Update.
4805         * nat/x86-linux-dregs.c: Update.
4806         * sol-thread.c: Update.
4807
4808 2018-07-03  Tom Tromey  <tom@tromey.com>
4809
4810         * common/ptid.c (ptid_is_pid): Remove.
4811         * common/ptid.h (ptid_is_pid): Don't declare.
4812         * infrun.c: Update.
4813         * linux-nat.c: Update.
4814         * mi/mi-interp.c: Update.
4815         * remote.c: Update.
4816         * thread.c: Update.
4817
4818 2018-07-03  Tom Tromey  <tom@tromey.com>
4819
4820         * common/ptid.c (ptid_get_tid): Remove.
4821         * common/ptid.h (ptid_get_tid): Don't declare.
4822         * ada-tasks.c: Update.
4823         * aix-thread.c: Update.
4824         * bsd-uthread.c: Update.
4825         * darwin-nat.c: Update.
4826         * fbsd-nat.c: Update.
4827         * i386-darwin-nat.c: Update.
4828         * infrun.c: Update.
4829         * linux-tdep.c: Update.
4830         * nto-procfs.c: Update.
4831         * ppc-ravenscar-thread.c: Update.
4832         * python/py-infthread.c: Update.
4833         * ravenscar-thread.c: Update.
4834         * sol-thread.c: Update.
4835         * sparc-ravenscar-thread.c: Update.
4836         * windows-nat.c: Update.
4837
4838 2018-07-03  Tom Tromey  <tom@tromey.com>
4839
4840         * common/ptid.c (ptid_get_lwp): Remove.
4841         * common/ptid.h (ptid_get_lwp): Don't declare.
4842         * aarch64-linux-nat.c: Update.
4843         * ada-tasks.c: Update.
4844         * aix-thread.c: Update.
4845         * amd64-linux-nat.c: Update.
4846         * arm-linux-nat.c: Update.
4847         * corelow.c: Update.
4848         * fbsd-nat.c: Update.
4849         * fbsd-tdep.c: Update.
4850         * gnu-nat.c: Update.
4851         * i386-cygwin-tdep.c: Update.
4852         * i386-gnu-nat.c: Update.
4853         * i386-linux-nat.c: Update.
4854         * ia64-linux-nat.c: Update.
4855         * inf-ptrace.c: Update.
4856         * infrun.c: Update.
4857         * linux-fork.c: Update.
4858         * linux-nat.c: Update.
4859         * linux-tdep.c: Update.
4860         * linux-thread-db.c: Update.
4861         * mips-linux-nat.c: Update.
4862         * nat/aarch64-linux-hw-point.c: Update.
4863         * nat/aarch64-linux.c: Update.
4864         * nat/linux-btrace.c: Update.
4865         * nat/linux-osdata.c: Update.
4866         * nat/linux-procfs.c: Update.
4867         * nat/x86-linux-dregs.c: Update.
4868         * obsd-nat.c: Update.
4869         * ppc-fbsd-nat.c: Update.
4870         * ppc-linux-nat.c: Update.
4871         * procfs.c: Update.
4872         * python/py-infthread.c: Update.
4873         * ravenscar-thread.c: Update.
4874         * remote.c: Update.
4875         * s390-linux-nat.c: Update.
4876         * sol-thread.c: Update.
4877         * sol2-tdep.c: Update.
4878         * spu-linux-nat.c: Update.
4879         * x86-linux-nat.c: Update.
4880         * xtensa-linux-nat.c: Update.
4881
4882 2018-07-03  Tom Tromey  <tom@tromey.com>
4883
4884         * common/ptid.c (ptid_get_pid): Remove.
4885         * common/ptid.h (ptid_get_pid): Don't declare.
4886         * aarch64-linux-nat.c: Update.
4887         * ada-lang.c: Update.
4888         * aix-thread.c: Update.
4889         * alpha-bsd-nat.c: Update.
4890         * amd64-fbsd-nat.c: Update.
4891         * amd64-linux-nat.c: Update.
4892         * arm-linux-nat.c: Update.
4893         * arm-nbsd-nat.c: Update.
4894         * auxv.c: Update.
4895         * break-catch-syscall.c: Update.
4896         * breakpoint.c: Update.
4897         * bsd-uthread.c: Update.
4898         * corelow.c: Update.
4899         * ctf.c: Update.
4900         * darwin-nat.c: Update.
4901         * fbsd-nat.c: Update.
4902         * fbsd-tdep.c: Update.
4903         * gcore.c: Update.
4904         * gnu-nat.c: Update.
4905         * hppa-nbsd-nat.c: Update.
4906         * hppa-obsd-nat.c: Update.
4907         * i386-fbsd-nat.c: Update.
4908         * ia64-linux-nat.c: Update.
4909         * inf-ptrace.c: Update.
4910         * infcmd.c: Update.
4911         * inferior.c: Update.
4912         * inferior.h: Update.
4913         * inflow.c: Update.
4914         * infrun.c: Update.
4915         * linux-fork.c: Update.
4916         * linux-nat.c: Update.
4917         * linux-tdep.c: Update.
4918         * linux-thread-db.c: Update.
4919         * m68k-bsd-nat.c: Update.
4920         * mi/mi-interp.c: Update.
4921         * mi/mi-main.c: Update.
4922         * mips-linux-nat.c: Update.
4923         * mips-nbsd-nat.c: Update.
4924         * mips64-obsd-nat.c: Update.
4925         * nat/aarch64-linux-hw-point.c: Update.
4926         * nat/aarch64-linux.c: Update.
4927         * nat/linux-btrace.c: Update.
4928         * nat/linux-osdata.c: Update.
4929         * nat/linux-procfs.c: Update.
4930         * nat/x86-linux-dregs.c: Update.
4931         * nto-procfs.c: Update.
4932         * obsd-nat.c: Update.
4933         * ppc-linux-nat.c: Update.
4934         * ppc-nbsd-nat.c: Update.
4935         * ppc-obsd-nat.c: Update.
4936         * proc-service.c: Update.
4937         * procfs.c: Update.
4938         * python/py-inferior.c: Update.
4939         * python/py-infthread.c: Update.
4940         * ravenscar-thread.c: Update.
4941         * record.c: Update.
4942         * remote-sim.c: Update.
4943         * remote.c: Update.
4944         * rs6000-nat.c: Update.
4945         * s390-linux-nat.c: Update.
4946         * sh-nbsd-nat.c: Update.
4947         * sol-thread.c: Update.
4948         * sparc-nat.c: Update.
4949         * sparc64-tdep.c: Update.
4950         * spu-linux-nat.c: Update.
4951         * spu-tdep.c: Update.
4952         * target-debug.h: Update.
4953         * target.c: Update.
4954         * thread.c: Update.
4955         * tid-parse.c: Update.
4956         * tracefile-tfile.c: Update.
4957         * vax-bsd-nat.c: Update.
4958         * windows-nat.c: Update.
4959         * x86-linux-nat.c: Update.
4960         * x86-nat.c: Update.
4961
4962 2018-07-03  Tom Tromey  <tom@tromey.com>
4963
4964         * common/ptid.c (pid_to_ptid): Remove.
4965         * common/ptid.h (pid_to_ptid): Don't declare.
4966         * aix-thread.c: Update.
4967         * arm-linux-nat.c: Update.
4968         * common/ptid.c: Update.
4969         * common/ptid.h: Update.
4970         * corelow.c: Update.
4971         * ctf.c: Update.
4972         * darwin-nat.c: Update.
4973         * fbsd-nat.c: Update.
4974         * fork-child.c: Update.
4975         * gnu-nat.c: Update.
4976         * go32-nat.c: Update.
4977         * inf-ptrace.c: Update.
4978         * infcmd.c: Update.
4979         * inferior.c: Update.
4980         * infrun.c: Update.
4981         * linux-fork.c: Update.
4982         * linux-nat.c: Update.
4983         * nat/aarch64-linux-hw-point.c: Update.
4984         * nat/fork-inferior.c: Update.
4985         * nat/x86-linux-dregs.c: Update.
4986         * nto-procfs.c: Update.
4987         * obsd-nat.c: Update.
4988         * procfs.c: Update.
4989         * progspace.c: Update.
4990         * remote.c: Update.
4991         * rs6000-nat.c: Update.
4992         * s390-linux-nat.c: Update.
4993         * sol-thread.c: Update.
4994         * spu-linux-nat.c: Update.
4995         * target.c: Update.
4996         * top.c: Update.
4997         * tracefile-tfile.c: Update.
4998         * windows-nat.c: Update.
4999
5000 2018-07-03  Tom Tromey  <tom@tromey.com>
5001
5002         * common/ptid.h (ptid_build): Don't declare.
5003         * common/ptid.c (ptid_build): Remove.
5004         * aix-thread.c: Update.
5005         * bsd-kvm.c: Update.
5006         * bsd-uthread.c: Update.
5007         * common/agent.c: Update.
5008         * common/ptid.c: Update.
5009         * common/ptid.h: Update.
5010         * corelow.c: Update.
5011         * darwin-nat.c: Update.
5012         * fbsd-nat.c: Update.
5013         * gnu-nat.c: Update.
5014         * linux-fork.c: Update.
5015         * linux-nat.c: Update.
5016         * linux-thread-db.c: Update.
5017         * nat/linux-osdata.c: Update.
5018         * nat/linux-procfs.c: Update.
5019         * nto-procfs.c: Update.
5020         * obsd-nat.c: Update.
5021         * proc-service.c: Update.
5022         * procfs.c: Update.
5023         * ravenscar-thread.c: Update.
5024         * remote-sim.c: Update.
5025         * remote.c: Update.
5026         * sol-thread.c: Update.
5027         * target.c: Update.
5028         * windows-nat.c: Update.
5029
5030 2018-07-03  Tom Tromey  <tom@tromey.com>
5031
5032         * infrun.c (follow_exec): Use exit_inferior_silent.
5033         * inferior.c (exit_inferior_num_silent): Remove.
5034         * inferior.h (exit_inferior_num_silent): Don't declare.
5035
5036 2018-07-03  Tom Tromey  <tom@tromey.com>
5037
5038         PR cli/23340:
5039         * darwin-nat.c (darwin_attach_pid): Reset inferior and
5040         inferior_ptid on error.
5041
5042 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
5043             Simon Marchi  <simon.marchi@polymtl.ca>
5044
5045         PR tdep/8282
5046         * disasm.h (gdb_disassembler): Add
5047         `m_disassembler_options_holder'. member
5048         * disasm.c (get_all_disassembler_options): New function.
5049         (gdb_disassembler::gdb_disassembler): Use it.
5050         (gdb_buffered_insn_length_init_dis): Likewise.
5051         (gdb_buffered_insn_length): Adjust accordingly.
5052         (set_disassembler_options): Handle options with arguments.
5053         (show_disassembler_options_sfunc): Likewise.  Add a leading new
5054         line if showing options with descriptions.
5055         (disassembler_options_completer): Adapt to using the
5056         `disasm_options_and_args_t' structure.
5057         * mips-tdep.c (mips_disassembler_options): New variable.
5058         (mips_disassembler_options_o32): Likewise.
5059         (mips_disassembler_options_n32): Likewise.
5060         (mips_disassembler_options_n64): Likewise.
5061         (gdb_print_insn_mips): Don't set `disassembler_options'.
5062         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
5063         functions.
5064         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
5065         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
5066         `gdbarch_disassembler_options_implicit' and
5067         `gdbarch_valid_disassembler_options'.
5068         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
5069         `disasm_options_and_args_t' structure.
5070         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
5071         method.
5072         (valid_disassembler_options): Switch from `disasm_options_t' to
5073         the `disasm_options_and_args_t' structure.
5074         * NEWS: Document `set disassembler-options' support for the MIPS
5075         target.
5076         * gdbarch.h: Regenerate.
5077         * gdbarch.c: Regenerate.
5078
5079 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
5080
5081         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
5082
5083 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
5084
5085         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
5086         parameter in call to amd64_target_description.
5087         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
5088         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
5089         (amd64fbsd_init_abi): Likewise.
5090         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
5091         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
5092         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
5093         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
5094
5095 2018-06-29  Pedro Alves  <palves@redhat.com>
5096
5097         * gdb/amd64-tdep.h (amd64_create_target_description): Add
5098         "segments" parameter.
5099         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
5100         (_initialize_amd64_tdep): Update call to
5101         amd64_create_target_description.
5102         (amd64_target_description): Add "segments" parameter.  Adjust
5103         the implementation to use it.
5104         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
5105         call to amd64_create_target_description.
5106         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
5107         * gdb/arch/amd64.h (amd64_create_target_description): Add
5108         "segments" register.
5109         * gdb/arch/amd64.c (amd64_create_target_description): Add
5110         "segments" parameter.  Call create_feature_i386_64bit_segments
5111         only if SEGMENTS is true.
5112         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
5113         call to amd64_create_target_description.
5114
5115 2018-06-29  Pedro Alves  <palves@redhat.com>
5116
5117         * thread.c (thread_target_id_str): New, factored out from ...
5118         (print_thread_info_1): ... here.  Use it to compute the max
5119         "Target Id" column width.
5120
5121 2018-06-29  Pedro Alves  <palves@redhat.com>
5122
5123         * remote.c (remote_target::extra_thread_info): Delete
5124         'display_buf' and 'n' locals.  from the cache, regardless of
5125         packet mechanims is in use.  Use cache for qThreadExtra and qP
5126         methods too.
5127
5128 2018-06-29  Pedro Alves  <palves@redhat.com>
5129
5130         * blockframe.c (find_pc_sect_containing_function): New function.
5131         * breakpoint.c (print_breakpoint_location): Don't call
5132         find_pc_sect_function.
5133         * linespec.c (create_sals_line_offset): Record the location's
5134         symbol in the sal.
5135         * linespec.c (convert_address_location_to_sals): Fill in sal's
5136         symbol with find_pc_sect_containing_function.
5137         * symtab.c (find_function_start_sal): Rename to ...
5138         (find_function_start_sal_1): ... this.
5139         (find_function_start_sal): Reimplement as wrapper around
5140         find_function_start_sal_1, and use
5141         find_pc_sect_containing_function to fill in the sal's symbol.
5142         (find_function_start_sal(symbol*, bool)): Adjust.
5143         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
5144         comments.
5145         (find_pc_sect_containing_function): Declare.
5146
5147 2018-06-29  Pedro Alves  <palves@redhat.com>
5148
5149         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
5150         true if the the location has no symbol.
5151
5152 2018-06-28  Tom Tromey  <tom@tromey.com>
5153
5154         * NEWS: Mention --enable-codesign.
5155         * silent-rules.mk (ECHO_SIGN): New variable.
5156         * configure.ac: Add --enable-codesign.
5157         * configure: Rebuild.
5158         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
5159         (gdb$(EXEEXT)): Optionally invoke codesign.
5160
5161 2018-06-28  Pedro Alves  <palves@redhat.com>
5162
5163         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
5164         comments.
5165         (switch_to_thread_no_regs): Adjust comment.
5166         * infcmd.c (stop_pc): Delete.
5167         (post_create_inferior, info_program_command): Replace references
5168         to stop_pc with references to thread_info->suspend.stop_pc.
5169         * inferior.h (stop_pc): Delete declaration.
5170         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
5171         (handle_inferior_event_1, handle_signal_stop)
5172         (process_event_stop_test, keep_going_stepped_thread)
5173         (handle_step_into_function, handle_step_into_function_backward)
5174         (print_stop_location): Replace references to stop_pc with
5175         references to thread_info->suspend.stop_pc.
5176         (struct infcall_suspend_state) <stop_pc>: Delete field.
5177         (save_infcall_suspend_state, restore_infcall_suspend_state):
5178         Remove references to inf_stat->stop_pc.
5179         * linux-fork.c (fork_load_infrun_state): Likewise.
5180         * record-btrace.c (record_btrace_set_replay): Likewise.
5181         * record-full.c (record_full_goto_entry): Likewise.
5182         * remote.c (print_one_stopped_thread): Likewise.
5183         * target.c (target_resume): Extend comment.
5184         * thread.c (set_executing_thread): New.
5185         (set_executing): Use it.
5186         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
5187         Remove references to stop_pc.
5188
5189 2018-06-28  Pedro Alves  <palves@redhat.com>
5190
5191         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
5192         Moving fetching stop_pc until after ecs->event_thread is refreshed.
5193
5194 2018-06-28  Tom Tromey  <tom@tromey.com>
5195
5196         * coffread.c (coff_symfile_finish): Update.
5197         * xcoffread.c (xcoff_symfile_finish): Update.
5198         * elfread.c (elf_symfile_finish): Update.
5199         * symfile.h (dwarf2_free_objfile): Don't declare.
5200         * dwarf2read.c (_initialize_dwarf2_read): Use
5201         register_objfile_data_with_cleanup.
5202         (dwarf2_free_objfile): Now static.  Change signature.
5203
5204 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5205
5206         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
5207         option "-o" to add-symbol-file-load to add an offset to each
5208         section's load address.
5209         * symfile.c (set_objfile_default_section_offset): New function.
5210
5211 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5212
5213         * symfile.c (add_symbol_file_command): Make sure that sections
5214         with the same name are sorted in the same order.
5215
5216 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5217
5218         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
5219         require the second argument.  If omitted, load sections at the
5220         addresses specified in the file.
5221
5222 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5223
5224         * symfile.c (symbol_file_command, symbol_file_add_main_1)
5225         (_initialize_symfile): Add option "-o" to symbol-file to add an
5226         offset to each section of the symbol file.
5227
5228 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5229
5230         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
5231
5232 2018-06-27  Tom Tromey  <tom@tromey.com>
5233
5234         * stack.c (_initialize_stack): Update "func" help text.
5235
5236 2018-06-27  Tom Tromey  <tom@tromey.com>
5237
5238         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
5239         std::vector.
5240         (unwind_infopy_str, pyuw_create_unwind_info)
5241         (unwind_infopy_add_saved_register, pyuw_sniffer)
5242         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
5243         Update.
5244         (struct saved_reg): Add constructor.
5245         <value>: Now a gdbpy_ref<>.
5246
5247 2018-06-27  Tom Tromey  <tom@tromey.com>
5248
5249         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
5250
5251 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5252
5253         * gdb-gdb.py.in: Format using autopep8.
5254
5255 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5256
5257         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
5258         (type_lookup_function): Recognize CORE_ADDR values.
5259
5260 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5261
5262         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
5263         print tag_name.
5264
5265 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5266
5267         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
5268         <__lt__>: Add.
5269
5270 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5271
5272         * gdb-gdb.py: Move to...
5273         * gdb-gdb.py.in: ... here.
5274         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
5275         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
5276         dependencies.
5277         (distclean): Remove gdb-gdb.py when cleaning.
5278         (gdb-gdb.py, gdb-gdb.gdb): New rules.
5279         * configure: Re-generate.
5280
5281 2018-06-27  Pedro Alves  <palves@redhat.com>
5282
5283         * proc-service.c (get_ps_regcache): New.
5284         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
5285         (ps_lsetfpregs): Use it.
5286
5287 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
5288
5289         PR gdb/21695
5290         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
5291         (dwarf_decode_lines_1): Adjust.
5292
5293 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5294
5295         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
5296         override.
5297         <info_proc>: Likewise.
5298
5299 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
5300
5301         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
5302         to windows_fetch_one_register, and only handle the case of
5303         fetching one register.  Move the code that reloads the context
5304         and iterates over all registers if R is negative to...
5305         (windows_nat_target::fetch_registers): ... here.
5306         (do_windows_store_inferior_registers): Rename to
5307         windows_store_one_register, and only handle the case of storing
5308         one register.  Move the code that handles the case where r is
5309         negative to...
5310         (windows_nat_target::store_registers) ... here.
5311
5312 2018-06-26  Tom Tromey  <tom@tromey.com>
5313
5314         PR rust/22574:
5315         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
5316         * rust-lang.c (rust_print_struct_def): Add podata parameter.
5317         Update.
5318         (rust_internal_print_type): Add podata parameter.
5319         (rust_print_type): Update.
5320
5321 2018-06-26  Tom Tromey  <tom@tromey.com>
5322
5323         * typeprint.h (struct print_offset_data) <update, finish,
5324         maybe_print_hole>: New methods.
5325         <indentation>: New constant.
5326         * typeprint.c (print_offset_data::indentation): Define.
5327         (print_offset_data::maybe_print_hole, print_offset_data::update)
5328         (print_offset_data::finish): Move from c-typeprint.c and rename.
5329         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
5330         (print_spaces_filtered_with_print_options): Update.
5331         (c_print_type_union_field_offset, maybe_print_hole)
5332         (c_print_type_struct_field_offset): Move to typeprint.c and
5333         rename.
5334         (c_type_print_base_struct_union): Update.
5335
5336 2018-06-25  Pedro Alves  <palves@redhat.com>
5337
5338         * gdbthread.h (thread_info_ref, delete_thread)
5339         (delete_thread_silent, first_thread_of_inferior)
5340         (any_thread_of_inferior, switch_to_thread)
5341         (enable_thread_stack_temporaries)
5342         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5343         (get_last_thread_stack_temporary)
5344         (value_in_thread_stack_temporaries, can_access_registers_thread):
5345         Spell out "struct thread_info" instead of just "thread_info".
5346         * inferior.h (notice_new_inferior): Likewise.
5347
5348 2018-06-25  Pedro Alves  <palves@redhat.com>
5349
5350         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5351         pass thread_info pointer to delete_thread.
5352         (windows_nat_target::detach): Pass inferior pointer to
5353         detach_inferior.
5354         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
5355         delete_thread.
5356         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
5357         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
5358         and pass a thread_info pointer to delete_thread.
5359         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
5360         pass thread_info pointer to delete_thread.
5361         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
5362         delete_thread_silent call.
5363         * procfs.c (procfs_target::detach): Pass inferior pointer to
5364         detach_inferior.
5365         (procfs_target::wait): Pass thread_info pointer to delete_thread.
5366         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
5367         delete_thread_silent call.
5368         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5369         pass thread_info pointer to delete_thread.
5370         (windows_nat_target::detach): Pass inferior pointer to
5371         delete_inferior.
5372
5373 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5374
5375         * regcache.c (readable_regcache::read_part): Fix asserts.
5376         (reg_buffer::raw_collect_part): New function.
5377         (regcache::write_part): Fix asserts.
5378         (reg_buffer::raw_supply_part): New function.
5379         (regcache::transfer_regset_register): New helper function.
5380         (regcache::transfer_regset): Call new functions.
5381         (regcache_supply_regset): Use gdb_byte*.
5382         (regcache::supply_regset): Likewise.
5383         (regcache_collect_regset): Likewise.
5384         (regcache::collect_regset): Likewise.
5385         * regcache.h (reg_buffer::raw_collect_part): New declaration.
5386         (reg_buffer::raw_supply_part): Likewise.
5387         (regcache::transfer_regset_register): Likewise.
5388         (regcache::transfer_regset): Use gdb_byte*.
5389
5390 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5391
5392         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
5393
5394 2018-06-21  Pedro Alves  <palves@redhat.com>
5395
5396         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
5397         instead of a ptid_t.  All callers adjusted.
5398         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
5399         adjusted.
5400         (print_ada_task_info, display_current_task_id, task_command_1):
5401         Adjust.
5402         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
5403         inferior_thread.
5404         (breakpoint_kind): Adjust.
5405         (remove_breakpoints_pid): Rename to ...
5406         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
5407         pointer.  All callers adjusted.
5408         (bpstat_clear_actions): Use inferior_thread.
5409         (get_bpstat_thread): New.
5410         (bpstat_do_actions): Use it.
5411         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
5412         to take a thread_info pointer.  All callers adjusted.
5413         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
5414         (breakpoint_re_set_thread): Use inferior_thread.
5415         * breakpoint.h (struct inferior): Forward declare.
5416         (bpstat_stop_status): Update.
5417         (remove_breakpoints_pid): Delete.
5418         (remove_breakpoints_inf): New.
5419         * bsd-uthread.c (bsd_uthread_target::wait)
5420         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
5421         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
5422         (maint_btrace_packet_history_cmd)
5423         (maint_btrace_clear_packet_history_cmd): Adjust.
5424         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
5425         inferior_thread.
5426         * cli/cli-interp.c: Include "inferior.h".
5427         * common/refcounted-object.h (struct
5428         refcounted_object_ref_policy): New.
5429         * compile/compile-object-load.c: Include gdbthread.h.
5430         (store_regs): Use inferior_thread.
5431         * corelow.c (core_target::close): Use current_inferior.
5432         (core_target_open): Adjust to use first_thread_of_inferior and use
5433         the current inferior.
5434         * ctf.c (ctf_target::close): Adjust to use current_inferior.
5435         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
5436         <thread>: ... this new field.  All references adjusted.
5437         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
5438         Take a thread_info pointer instead of a ptid_t.
5439         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
5440         (dummy_frame_discard, register_dummy_frame_dtor): Take a
5441         thread_info pointer instead of a ptid_t.
5442         * elfread.c: Include "inferior.h".
5443         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
5444         Use inferior_thread.
5445         * eval.c (evaluate_subexp): Likewise.
5446         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
5447         inferior_thread.
5448         * gdb_proc_service.h (struct thread_info): Forward declare.
5449         (struct ps_prochandle) <ptid>: Delete, replaced by ...
5450         <thread>: ... this new field.  All references adjusted.
5451         * gdbarch.h, gdbarch.c: Regenerate.
5452         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
5453         'thread' parameter.  All implementations and callers adjusted.
5454         * gdbthread.h (thread_info) <set_running>: New method.
5455         (delete_thread, delete_thread_silent): Take a thread_info pointer
5456         instead of a ptid.
5457         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
5458         (first_thread_of_process): Delete, replaced by ...
5459         (first_thread_of_inferior): ... this new function.  All callers
5460         adjusted.
5461         (any_live_thread_of_process): Delete, replaced by ...
5462         (any_live_thread_of_inferior): ... this new function.  All callers
5463         adjusted.
5464         (switch_to_thread, switch_to_no_thread): Declare.
5465         (is_executing): Delete.
5466         (enable_thread_stack_temporaries): Update comment.
5467         <enable_thread_stack_temporaries>: Take a thread_info pointer
5468         instead of a ptid_t.  Incref the thread.
5469         <~enable_thread_stack_temporaries>: Decref the thread.
5470         <m_ptid>: Delete
5471         <m_thr>: New.
5472         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5473         (get_last_thread_stack_temporary)
5474         (value_in_thread_stack_temporaries, can_access_registers_thread):
5475         Take a thread_info pointer instead of a ptid_t.  All callers
5476         adjusted.
5477         * infcall.c (get_call_return_value): Use inferior_thread.
5478         (run_inferior_call): Work with thread pointers instead of ptid_t.
5479         (call_function_by_hand_dummy): Work with thread pointers instead
5480         of ptid_t.  Use thread_info_ref.
5481         * infcmd.c (proceed_thread_callback): Access thread's state
5482         directly.
5483         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
5484         access thread's state directly.
5485         (continue_command): Use inferior_thread.
5486         (info_program_command): Use find_thread_ptid and access thread
5487         state directly.
5488         (proceed_after_attach_callback): Use thread state directly.
5489         (notice_new_inferior): Take a thread_info pointer instead of a
5490         ptid_t.  All callers adjusted.
5491         (exit_inferior): Take an inferior pointer instead of a pid.  All
5492         callers adjusted.
5493         (exit_inferior_silent): New.
5494         (detach_inferior): Delete.
5495         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
5496         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
5497         (detach_inferior_command, kill_inferior_command): Use
5498         find_inferior_id instead of valid_gdb_inferior_id and
5499         gdb_inferior_id_to_pid.
5500         (inferior_command): Use inferior and thread pointers.
5501         * inferior.h (struct thread_info): Forward declare.
5502         (notice_new_inferior): Take a thread_info pointer instead of a
5503         ptid_t.  All callers adjusted.
5504         (detach_inferior): Delete declaration.
5505         (exit_inferior, exit_inferior_silent): Take an inferior pointer
5506         instead of a pid.  All callers adjusted.
5507         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
5508         (valid_gdb_inferior_id): Delete.
5509         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
5510         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
5511         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
5512         ...
5513         <inf>: ... this new field.
5514         <step_ptid>: Delete, replaced by ...
5515         <step_thread>: ... this new field.
5516         (get_displaced_stepping_state): Take an inferior pointer instead
5517         of a pid.  All callers adjusted.
5518         (displaced_step_in_progress_any_inferior): Adjust.
5519         (displaced_step_in_progress_thread): Take a thread pointer instead
5520         of a ptid_t.  All callers adjusted.
5521         (displaced_step_in_progress, add_displaced_stepping_state): Take
5522         an inferior pointer instead of a pid.  All callers adjusted.
5523         (get_displaced_step_closure_by_addr): Adjust.
5524         (remove_displaced_stepping_state): Take an inferior pointer
5525         instead of a pid.  All callers adjusted.
5526         (displaced_step_prepare_throw, displaced_step_prepare)
5527         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
5528         All callers adjusted.
5529         (start_step_over): Adjust.
5530         (infrun_thread_ptid_changed): Remove bit updating ptids in the
5531         displaced step queue.
5532         (do_target_resume): Adjust.
5533         (fetch_inferior_event): Use inferior_thread.
5534         (context_switch, get_inferior_stop_soon): Take an
5535         execution_control_state pointer instead of a ptid_t.  All callers
5536         adjusted.
5537         (switch_to_thread_cleanup): Delete.
5538         (stop_all_threads): Use scoped_restore_current_thread.
5539         * inline-frame.c: Include "gdbthread.h".
5540         (inline_state) <inline_state>: Take a thread pointer instead of a
5541         ptid_t.  All callers adjusted.
5542         <ptid>: Delete, replaced by ...
5543         <thread>: ... this new field.
5544         (find_inline_frame_state): Take a thread pointer instead of a
5545         ptid_t.  All callers adjusted.
5546         (skip_inline_frames, step_into_inline_frame)
5547         (inline_skipped_frames, inline_skipped_symbol): Take a thread
5548         pointer instead of a ptid_t.  All callers adjusted.
5549         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
5550         (inline_skipped_frames, inline_skipped_symbol): Likewise.
5551         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
5552         pointers directly.
5553         * linux-nat.c (get_detach_signal): Likewise.
5554         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
5555         (thread_db_notice_clone): Adjust.
5556         (thread_db_find_new_threads_silently)
5557         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
5558         a thread pointer instead of a ptid_t.  All callers adjusted.
5559         * mi/mi-cmd-var.c: Include "inferior.h".
5560         (mi_cmd_var_update_iter): Update to use thread pointers.
5561         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
5562         inferior directly.
5563         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
5564         out to ...
5565         (mi_output_running): ... this new function.
5566         (mi_on_resume_1): Adjust to use it.
5567         (mi_user_selected_context_changed): Adjust to use inferior_thread.
5568         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
5569         directly.
5570         (interrupt_thread_callback): : Adjust to use thread and inferior
5571         pointers.
5572         * proc-service.c: Include "gdbthread.h".
5573         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
5574         * progspace-and-thread.c: Include "inferior.h".
5575         * progspace.c: Include "inferior.h".
5576         * python/py-exitedevent.c (create_exited_event_object): Adjust to
5577         hold a reference to an inferior_object.
5578         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
5579         inferior_thread.
5580         * python/py-inferior.c (struct inferior_object): Give the type a
5581         tag name instead of a typedef.
5582         (python_on_normal_stop): No need to check if the current thread is
5583         listed.
5584         (inferior_to_inferior_object): Change return type to
5585         inferior_object.  All callers adjusted.
5586         (find_thread_object): Delete, bits factored out to ...
5587         (thread_to_thread_object): ... this new function.
5588         * python/py-infthread.c (create_thread_object): Use
5589         inferior_to_inferior_object.
5590         (thpy_is_stopped): Use thread pointer directly.
5591         (gdbpy_selected_thread): Use inferior_thread.
5592         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
5593         field, replaced with ...
5594         <thread>: ... this new field.  All users adjusted.
5595         (btpy_insn_or_gap_new): Drop const.
5596         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
5597         callers adjusted.
5598         * python/py-record.c: Include "gdbthread.h".
5599         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5600         a ptid_t.  All callers adjusted.
5601         (gdbpy_current_recording): Use inferior_thread.
5602         * python/py-record.h (recpy_record_object) <ptid>: Delete
5603         field, replaced with ...
5604         <thread>: ... this new field.  All users adjusted.
5605         (recpy_element_object) <ptid>: Delete
5606         field, replaced with ...
5607         <thread>: ... this new field.  All users adjusted.
5608         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5609         a ptid_t.  All callers adjusted.
5610         * python/py-threadevent.c: Include "gdbthread.h".
5611         (get_event_thread): Use thread_to_thread_object.
5612         * python/python-internal.h (struct inferior_object): Forward
5613         declare.
5614         (find_thread_object, find_inferior_object): Delete declarations.
5615         (thread_to_thread_object, inferior_to_inferior_object): New
5616         declarations.
5617         * record-btrace.c: Include "inferior.h".
5618         (require_btrace_thread): Use inferior_thread.
5619         (record_btrace_frame_sniffer)
5620         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
5621         (get_thread_current_frame): Use scoped_restore_current_thread and
5622         switch_to_thread.
5623         (get_thread_current_frame): Use thread pointer directly.
5624         (record_btrace_replay_at_breakpoint): Use thread's inferior
5625         pointer directly.
5626         * record-full.c: Include "inferior.h".
5627         * regcache.c: Include "gdbthread.h".
5628         (get_thread_arch_regcache): Use the inferior's address space
5629         directly.
5630         (get_thread_regcache, registers_changed_thread): New.
5631         * regcache.h (get_thread_regcache(thread_info *thread)): New
5632         overload.
5633         (registers_changed_thread): New.
5634         (remote_target) <remote_detach_1>: Swap order of parameters.
5635         (remote_add_thread): <remote_add_thread>: Return the new thread.
5636         (get_remote_thread_info(ptid_t)): New overload.
5637         (remote_target::remote_notice_new_inferior): Use thread pointers
5638         directly.
5639         (remote_target::process_initial_stop_replies): Use
5640         thread_info::set_running.
5641         (remote_target::remote_detach_1, remote_target::detach)
5642         (extended_remote_target::detach): Adjust.
5643         * stack.c (frame_show_address): Use inferior_thread.
5644         * target-debug.h (target_debug_print_thread_info_pp): New.
5645         * target-delegates.c: Regenerate.
5646         * target.c (default_thread_address_space): Delete.
5647         (memory_xfer_partial_1): Use current_inferior.
5648         (target_detach): Use current_inferior.
5649         (target_thread_address_space): Delete.
5650         (generic_mourn_inferior): Use current_inferior.
5651         * target.h (struct target_ops) <thread_address_space>: Delete.
5652         (target_thread_address_space): Delete.
5653         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
5654         pointers directly.
5655         (delete_thread_1, delete_thread, delete_thread_silent): Take a
5656         thread pointer instead of a ptid_t.  Adjust all callers.
5657         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
5658         (first_thread_of_process): Delete, replaced by ...
5659         (first_thread_of_inferior): ... this new function.  All callers
5660         adjusted.
5661         (any_thread_of_process): Rename to ...
5662         (any_thread_of_inferior): ... this, and take an inferior pointer.
5663         (any_live_thread_of_process): Rename to ...
5664         (any_live_thread_of_inferior): ... this, and take an inferior
5665         pointer.
5666         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5667         (value_in_thread_stack_temporaries)
5668         (get_last_thread_stack_temporary): Take a thread pointer instead
5669         of a ptid_t.  Adjust all callers.
5670         (thread_info::set_running): New.
5671         (validate_registers_access): Use inferior_thread.
5672         (can_access_registers_ptid): Rename to ...
5673         (can_access_registers_thread): ... this, and take a thread
5674         pointer.
5675         (print_thread_info_1): Adjust to compare thread pointers instead
5676         of ptids.
5677         (switch_to_no_thread, switch_to_thread): Make extern.
5678         (scoped_restore_current_thread::~scoped_restore_current_thread):
5679         Use m_thread pointer directly.
5680         (scoped_restore_current_thread::scoped_restore_current_thread):
5681         Use inferior_thread.
5682         (thread_command): Use thread pointer directly.
5683         (thread_num_make_value_helper): Use inferior_thread.
5684         * top.c (execute_command): Use inferior_thread.
5685         * tui/tui-interp.c: Include "inferior.h".
5686         * varobj.c (varobj_create): Use inferior_thread.
5687         (value_of_root_1): Use find_thread_global_id instead of
5688         global_thread_id_to_ptid.
5689
5690 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
5691
5692         * regcache.c (readable_regcache::read_part): Avoid memcpy when
5693         possible.
5694         (regcache::write_part): Likewise.
5695         (readable_regcache::cooked_read_part): Update comment.
5696         (readable_regcache::cooked_write_part): Likewise.
5697         * regcache.h: (readable_regcache::read_part): Likewise.
5698         (regcache::write_part): Likewise.
5699
5700 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
5701             Dirk Schubert  <dirk.schubert@arm.com>
5702
5703         * aarch64-linux-nat.c (post_attach): New.
5704         (aarch64_linux_nat_target::post_attach): Override post_attach to
5705         record the number of hardware debug registers.
5706
5707 2018-06-20  Tom Tromey  <tom@tromey.com>
5708
5709         * python/py-param.c (add_setshow_generic): Make parameters const.
5710         (parmpy_init): Update.
5711
5712 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
5713
5714         * regcache.h (regcache_cooked_read_ftype): Rename to...
5715         (register_read_ftype): ...this, change type to function_view.
5716         (class reg_buffer) <save>: Remove src parameter.
5717         (readonly_detached_regcache) <readonly_detached_regcache>: Make
5718         parameter non-const in first overload.  Remove src parameter in
5719         second overload.
5720         * regcache.c (do_cooked_read): Remove.
5721         (readonly_detached_regcache::readonly_detached_regcache): Make
5722         parameter non-const, adjust call to other constructor.
5723         (reg_buffer::save): Remove src parameter.
5724         * frame.c (do_frame_register_read): Remove.
5725         (frame_save_as_regcache): Use lambda function.
5726         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
5727         parameter to ppu2spu_data *.
5728         (ppu2spu_sniffer): Use lambda function.
5729
5730 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
5731
5732         * record-full.c (record_full_target::insert_breakpoint): Remove
5733         "struct" keyword, add const.
5734
5735 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
5736
5737         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
5738         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
5739         * configure.ac: Remove AC_PREREQ, add missing quoting.
5740         * gnulib/configure.ac: Modernize usage of
5741         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
5742         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
5743         (AUTOMAKE_VERSION): Bump to 1.15.1.
5744         * configure: Re-generate.
5745         * config.in: Re-generate.
5746         * aclocal.m4: Re-generate.
5747         * gnulib/aclocal.m4: Re-generate.
5748         * gnulib/config.in: Re-generate.
5749         * gnulib/configure: Re-generate.
5750         * gnulib/import/Makefile.in: Re-generate.
5751
5752 2018-06-19  Pedro Alves  <palves@redhat.com>
5753
5754         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
5755         (lookup_minimal_symbol_by_pc_section): ... here with
5756         gdb_assert_not_reached added.
5757
5758 2018-06-19  Pedro Alves  <palves@redhat.com>
5759
5760         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
5761         parameter with a block parameter.  Compare location's block symbol
5762         with the frame's block instead of addresses.
5763         (skip_inline_frames): Pass the current block instead of the
5764         frame's address.  Break out as soon as we determine the frame
5765         should not be skipped.
5766
5767 2018-06-18  Tom Tromey  <tom@tromey.com>
5768
5769         * solib-aix.c (solib_aix_get_section_offsets): Return
5770         unique_xmalloc_ptr.
5771         (solib_aix_solib_create_inferior_hook): Update.
5772
5773 2018-06-18  Tom Tromey  <tom@tromey.com>
5774
5775         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
5776
5777 2018-06-18  Tom Tromey  <tom@tromey.com>
5778
5779         * solib-frv.c (frv_relocate_main_executable): Use
5780         unique_xmalloc_ptr.
5781         * solib-dsbt.c (dsbt_relocate_main_executable): Use
5782         unique_xmalloc_ptr.
5783
5784 2018-06-18  Tom Tromey  <tom@tromey.com>
5785
5786         * objfiles.h (inhibit_section_map_updates): Update.
5787         (resume_section_map_updates, resume_section_map_updates_cleanup):
5788         Remove.
5789         * solib-svr4.c (svr4_handle_solib_event): Update.
5790         * objfiles.c (inhibit_section_map_updates): Return
5791         scoped_restore_tmpl<int>.
5792         (resume_section_map_updates, resume_section_map_updates_cleanup):
5793         Remove.
5794
5795 2018-06-18  Tom Tromey  <tom@tromey.com>
5796
5797         * valprint.h (read_string): Update.
5798         * valprint.c (read_string): Change type of "buffer".
5799         (val_print_string): Update.
5800         * python/py-value.c (valpy_string): Update.
5801         * language.h (struct language_defn) <la_get_string>: Change
5802         type of "buffer".
5803         (default_get_string, c_get_string): Update.
5804         * language.c (default_get_string): Change type of "buffer".
5805         * guile/scm-value.c (gdbscm_value_to_string): Update.
5806         * c-lang.c (c_get_string): Change type of "buffer".
5807
5808 2018-06-18  Tom Tromey  <tom@tromey.com>
5809
5810         * ser-mingw.c (struct pipe_state_destroyer): New.
5811         (pipe_state_up): New typedef.
5812         (cleanup_pipe_state): Remove.
5813         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
5814
5815 2018-06-18  Tom Tromey  <tom@tromey.com>
5816
5817         * rust-lang.h (rust_yyerror): Don't declare.
5818         * rust-lang.c (rust_language_defn): Update.
5819         * rust-exp.y (yyerror): Now static.
5820         * parse.c (parse_exp_in_context_1): Update.
5821         * p-lang.h (p_yyerror): Don't declare.
5822         * p-lang.c (p_language_defn): Update.
5823         * p-exp.y (yyerror): Now static.
5824         * opencl-lang.c (opencl_language_defn): Update.
5825         * objc-lang.c (objc_language_defn): Update.
5826         * m2-lang.h (m2_yyerror): Don't declare.
5827         * m2-lang.c (m2_language_defn): Update.
5828         * m2-exp.y (yyerror): Now static.
5829         * language.h (struct language_defn) <la_error>: Remove.
5830         * language.c (unk_lang_error): Remove.
5831         (unknown_language_defn, auto_language_defn): Remove.
5832         * go-lang.h (go_yyerror): Don't declare.
5833         * go-lang.c (go_language_defn): Update.
5834         * go-exp.y (yyerror): Now static.
5835         * f-lang.h (f_yyerror): Don't declare.
5836         * f-lang.c (f_language_defn): Update.
5837         * f-exp.y (yyerror): Now static.
5838         * d-lang.h (d_yyerror): Don't declare.
5839         * d-lang.c (d_language_defn): Update.
5840         * d-exp.y (yyerror): Now static.
5841         * c-lang.h (c_yyerror): Don't declare.
5842         * c-lang.c (c_language_defn, cplus_language_defn)
5843         (asm_language_defn, minimal_language_defn): Update.
5844         * c-exp.y (yyerror): Now static.
5845         * ada-lang.h (ada_yyerror): Don't declare.
5846         * ada-lang.c (ada_language_defn): Update.
5847         * ada-exp.y (yyerror): Now static.
5848
5849 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
5850
5851         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
5852         (store_sveregs_to_thread): Likewise.
5853         (aarch64_linux_fetch_inferior_registers): Check for SVE.
5854         (aarch64_linux_store_inferior_registers): Likewise.
5855         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
5856         function.
5857         (aarch64_sve_regs_copy_to_regcache): Likewise.
5858         (aarch64_sve_regs_copy_from_regcache): Likewise.
5859         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
5860         declaration.
5861         (aarch64_sve_regs_copy_to_regcache): Likewise.
5862         (aarch64_sve_regs_copy_from_regcache): Likewise.
5863         (sve_context): Structure from Linux headers.
5864         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
5865         (SVE_SIG_ZREG_SIZE): Likewise.
5866         (SVE_SIG_PREG_SIZE): Likewise.
5867         (SVE_SIG_FFR_SIZE): Likewise.
5868         (SVE_SIG_REGS_OFFSET): Likewise.
5869         (SVE_SIG_ZREGS_OFFSET): Likewise.
5870         (SVE_SIG_ZREG_OFFSET): Likewise.
5871         (SVE_SIG_ZREGS_SIZE): Likewise.
5872         (SVE_SIG_PREGS_OFFSET): Likewise.
5873         (SVE_SIG_PREG_OFFSET): Likewise.
5874         (SVE_SIG_PREGS_SIZE): Likewise.
5875         (SVE_SIG_FFR_OFFSET): Likewise.
5876         (SVE_SIG_REGS_SIZE): Likewise.
5877         (SVE_SIG_CONTEXT_SIZE): Likewise.
5878         (SVE_PT_REGS_MASK): Likewise.
5879         (SVE_PT_REGS_FPSIMD): Likewise.
5880         (SVE_PT_REGS_SVE): Likewise.
5881         (SVE_PT_VL_INHERIT): Likewise.
5882         (SVE_PT_VL_ONEXEC): Likewise.
5883         (SVE_PT_REGS_OFFSET): Likewise.
5884         (SVE_PT_FPSIMD_OFFSET): Likewise.
5885         (SVE_PT_FPSIMD_SIZE): Likewise.
5886         (SVE_PT_SVE_ZREG_SIZE): Likewise.
5887         (SVE_PT_SVE_PREG_SIZE): Likewise.
5888         (SVE_PT_SVE_FFR_SIZE): Likewise.
5889         (SVE_PT_SVE_FPSR_SIZE): Likewise.
5890         (SVE_PT_SVE_FPCR_SIZE): Likewise.
5891         (__SVE_SIG_TO_PT): Likewise.
5892         (SVE_PT_SVE_OFFSET): Likewise.
5893         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
5894         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
5895         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
5896         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
5897         (SVE_PT_SVE_PREG_OFFSET): Likewise.
5898         (SVE_PT_SVE_PREGS_SIZE): Likewise.
5899         (SVE_PT_SVE_FFR_OFFSET): Likewise.
5900         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
5901         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
5902         (SVE_PT_SVE_SIZE): Likewise.
5903         (SVE_PT_SIZE): Likewise.
5904         (HAS_SVE_STATE): New define.
5905
5906 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
5907
5908         * nat/aarch64-sve-linux-sigcontext.h: New file.
5909         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
5910         new files.
5911         (SVE_VQ_MIN): Likewise.
5912         (SVE_VQ_MAX): Likewise.
5913         (SVE_VL_MIN): Likewise.
5914         (SVE_VL_MAX): Likewise.
5915         (SVE_NUM_ZREGS): Likewise.
5916         (SVE_NUM_PREGS): Likewise.
5917         (sve_vl_valid): Likewise.
5918         (struct user_sve_header): Likewise.
5919
5920 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
5921             Richard Bunt <Richard.Bunt@arm.com>
5922
5923         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
5924         was requested by GDB.
5925
5926 2018-06-15  Tom de Vries  <tdevries@suse.de>
5927
5928         * MAINTAINERS (Write After Approval): Add Tom de Vries.
5929
5930 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
5931
5932         * gnulib/update-gnulib.sh: Print expected versions of
5933         autoconf/aclocal.
5934
5935 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
5936
5937         * arch-utils.c (default_type_align): Use type_length_units.
5938         * gdbtypes.c (type_align): Use type_length_units.
5939
5940 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5941
5942         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
5943         of 'define' command.
5944
5945 2018-06-14  Tom de Vries  <tdevries@suse.de>
5946
5947         PR cli/22573
5948         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
5949         get_no_prettyformat_print_options.
5950
5951 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
5952
5953         * sparc-nat.h: Include target.h.
5954         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
5955         <fetch_registers>: Remove this argument in function call.
5956         <store_registers>: Remove this argument in function call, remove
5957         extra semicolon.
5958         <low_forget_process>: Call sparc64_forget_process instead of
5959         sparc_forget_process.
5960
5961 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5962
5963         * procfs.c (_initialize_procfs): Use add_inf_child_target.
5964         (procfs_target::make_corefile_notes): Adjust to new
5965         target_read_alloc return type.
5966
5967 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
5968             Stephen Roberts  <stephen.roberts@arm.com>
5969
5970         PR gdb/22882
5971         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
5972         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
5973         Move should_notify_stop local into more inner scope.
5974
5975 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
5976             Stephen Roberts  <stephen.roberts@arm.com>
5977
5978         PR gdb/22882
5979         * infrun.c (resume_1): Add call to mark_async_event_handler.
5980
5981 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
5982
5983         * infrun.c (do_target_wait): Change old version of $pc printed.
5984
5985 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
5986
5987         * dwarf2read.c (read_index_from_section): Rename to...
5988         (read_gdb_index_from_section): ... this, update all callers.
5989         (dwarf2_read_index): Rename to...
5990         (dwarf2_read_gdb_index): ... this, update all callers.
5991
5992 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
5993
5994         * gdb/hppa-linux-nat.c
5995         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
5996         hppa_linux_nat_target::fetch_registers.
5997
5998 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
5999
6000         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
6001         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
6002         (AARCH64_DWARF_SVE_FFR): Likewise.
6003         (AARCH64_DWARF_SVE_P0): Likewise.
6004         (AARCH64_DWARF_SVE_Z0): Likewise.
6005
6006 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6007
6008         * common/common-regcache.h (raw_compare): New function.
6009         * regcache.c (regcache::raw_compare): Likewise.
6010         * regcache.h (regcache::raw_compare): New declaration.
6011
6012 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6013
6014         * common/common-regcache.h (reg_buffer_common): New structure.
6015         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
6016         (reg_buffer::raw_supply): Likewise.
6017         (reg_buffer::raw_supply_integer): Likewise.
6018         (reg_buffer::raw_supply_zeroed): Likewise.
6019         (reg_buffer::raw_collect): Likewise.
6020         (reg_buffer::raw_collect_integer): Likewise.
6021         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
6022         (reg_buffer::raw_supply): Likewise.
6023         (reg_buffer::raw_supply_integer): Likewise.
6024         (reg_buffer::raw_supply_zeroed): Likewise.
6025         (reg_buffer::raw_collect): Likewise.
6026         (reg_buffer::raw_collect_integer): Likewise.
6027
6028 2018-06-10  Tom Tromey  <tom@tromey.com>
6029
6030         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
6031         (class remote_state) <stop_reply_queue>: Now std::vector.
6032         (remote_state::~remote_state)
6033         (remote_target::stop_reply_queue_length): Update.
6034         (struct queue_iter_param, remove_child_of_pending_fork)
6035         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
6036         (check_pending_event_prevents_wildcard_vcont_callback)
6037         (remove_stop_reply_for_inferior)
6038         (remove_stop_reply_of_remote_state)
6039         (remote_notif_remove_once_on_match)
6040         (stop_reply_match_ptid_and_ws)
6041         (remote_kill_child_of_pending_fork): Remove.
6042         (remote_target::remove_new_fork_children)
6043         (remote_target::check_pending_events_prevent_wildcard_vcont)
6044         (remote_target::discard_pending_stop_replies)
6045         (remote_target::discard_pending_stop_replies_in_queue)
6046         (remote_target::remote_notif_remove_queued_reply)
6047         (remote_target::queued_stop_reply)
6048         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
6049         (remote_target::wait, remote_target::kill_new_fork_children)
6050         (remote_target::async): Update.
6051
6052 2018-06-10  Tom Tromey  <tom@tromey.com>
6053
6054         * record-full.c (record_full_arch_list_cleanups): Remove.
6055         (record_full_message): Use try/catch.
6056         (record_full_wait_cleanups): Remove.
6057         (record_full_wait_1): Use try/catch.
6058         (record_full_restore): Likewise.
6059
6060 2018-06-10  Tom Tromey  <tom@tromey.com>
6061
6062         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
6063         declare VEC.  Add constructor.
6064         <in_target_beneath>: Now bool.
6065         (record_full_breakpoints): Now a std::vector, static.
6066         (record_full_sync_record_breakpoints)
6067         (record_full_init_record_breakpoints)
6068         (record_full_target::insert_breakpoint)
6069         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
6070
6071 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
6072
6073         * dwarf2read.c (process_cu_includes): Remove struct keyword.
6074         * serial.c (serial_interface_lookup): Remove struct keyword.
6075
6076 2018-06-10  Tom Tromey  <tom@tromey.com>
6077
6078         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
6079         method.
6080         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
6081         a method.
6082         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
6083         method.
6084         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
6085         "beneath" as a method.
6086         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
6087         Use "beneath" as a method.
6088
6089 2018-06-10  Tom Tromey  <tom@tromey.com>
6090
6091         * tracefile.c (struct trace_file_writer_deleter): New.
6092         <operator()>: Rename from trace_file_writer_xfree.
6093         (trace_file_writer_up): New typedef.
6094         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
6095
6096 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6097
6098         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
6099         <m_registers, m_register_status>: Change type to
6100         std::unique_ptr.
6101         * regcache.c (reg_buffer::reg_buffer): Use new instead of
6102         XCNEWVEC.
6103
6104 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6105
6106         * common/common-regcache.h (enum register_status): Add
6107         underlying type "signed char".
6108         * regcache.h (reg_buffer) <m_register_status>: Change type to
6109         register_status *.
6110         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
6111         register_status instead of signed char.
6112         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
6113         (reg_buffer::get_register_status): Remove cast.
6114         (readable_regcache::raw_read): Remove cast.
6115         (readable_regcache::cooked_read): Remove cast.
6116
6117 2018-06-09  Tom Tromey  <tom@tromey.com>
6118
6119         * source.c (reverse_search_command, forward_search_command): Use
6120         scoped_fd.
6121
6122 2018-06-09  Tom Tromey  <tom@tromey.com>
6123
6124         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
6125         (serial_ops_list): Now static, std::vector.
6126         (serial_interface_lookup, serial_add_interface): Update.
6127
6128 2018-06-09  Tom Tromey  <tom@tromey.com>
6129
6130         * dwarf2read.c (process_cu_includes): Update.
6131         (process_full_comp_unit): Update.
6132         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
6133         std::vector.
6134
6135 2018-06-08  Paul Koning  <paul_koning@dell.com>
6136
6137         PR gdb/23252
6138
6139         * python/python.c (do_start_initialization):
6140         Avoid call to internal Python API.
6141         (init__gdb_module): New function.
6142
6143 2018-06-08  Gary Benson <gbenson@redhat.com>
6144
6145         * linux-thread-db.c (valprint.h): New include.
6146         (struct check_thread_db_info): New structure.
6147         (check_thread_db_on_load, tdb_testinfo): New static globals.
6148         (check_thread_db, check_thread_db_callback): New functions.
6149         (try_thread_db_load_1): Run integrity checks if requested.
6150         (maintenance_check_libthread_db): New function.
6151         (_initialize_thread_db): Register "maint check libthread-db"
6152         and "maint set/show check-libthread-db".
6153         * NEWS: Mention the above new commands.
6154
6155 2018-06-08  Tom Tromey  <tom@tromey.com>
6156
6157         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
6158         now a method.
6159
6160 2018-06-08  Tom Tromey  <tom@tromey.com>
6161
6162         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
6163
6164 2018-06-08  Tom Tromey  <tom@tromey.com>
6165
6166         * common/btrace-common.h (struct btrace_data): Add constructor,
6167         destructor, move assignment operator.
6168         <empty, clear, fini>: New methods.
6169         <format>: Initialize.
6170         (btrace_data_init, btrace_data_fini, btrace_data_clear)
6171         (btrace_data_empty): Don't declare.
6172         * common/btrace-common.c (btrace_data_init): Remove.
6173         (btrace_data::fini): Rename from btrace_data_fini.
6174         (btrace_data::empty): Rename from btrace_data_empty.
6175         (btrace_data::clear): Rename from btrace_data_clear.  Return
6176         bool.
6177         * btrace.h (make_cleanup_btrace_data): Don't declare.
6178         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
6179         (parse_xml_btrace): Update.
6180         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
6181         (maint_btrace_clear_packet_history_cmd): Update.
6182
6183 2018-06-07  Pedro Alves  <palves@redhat.com>
6184
6185         * target.h (target_ops) <beneath>: Now a method.  All references
6186         updated.
6187         (class target_stack): New.
6188         * target.c (g_target_stack): New.
6189         (g_current_top_target): Delete.
6190         (current_top_target): Get the top target out of g_target_stack.
6191         (target_stack::push, target_stack::unpush): New.
6192         (push_target, unpush_target): Reimplement.
6193         (target_is_pushed): Reimplement in terms of g_target_stack.
6194         (target_ops::beneath, target_stack::find_beneath): New.
6195
6196 2018-06-07  Pedro Alves  <palves@redhat.com>
6197
6198         * target.h (find_target_beneath): Delete declaration.
6199         * target.c (find_target_beneath): Delete definition.
6200         * aix-thread.c: All callers of find_target_beneath adjusted to
6201         call target_ops::beneath instead.
6202         * bsd-uthread.c: Likewise.
6203         * linux-thread-db.c: Likewise.
6204         * ravenscar-thread.c: Likewise.
6205         * sol-thread.c: Likewise.
6206         * spu-multiarch.c: Likewise.
6207
6208 2018-06-07  Pedro Alves  <palves@redhat.com>
6209
6210         * target.h (target_ops) <beneath>: Now a method.  All references
6211         updated.
6212         (target_ops) <m_beneath>: New.
6213         * target.c (target_ops::beneath): New.
6214         * corelow.c: Adjust all references to target_ops::beneath.
6215         * linux-thread-db.c: Likewise.
6216         * make-target-delegates: Likewise.
6217         * record-btrace.c: Likewise.
6218         * record-full.c: Likewise.
6219         * remote.c: Likewise.
6220         * target.c: Likewise.
6221         * target-delegates.c: Regenerate.
6222
6223 2018-06-07  Pedro Alves  <palves@redhat.com>
6224
6225         * target.h (target_stack): Delete.
6226         (current_top_target): Declare function.
6227         * target.c (target_stack): Delete.
6228         (g_current_top_target): New.
6229         (current_top_target): New function.
6230         * auxv.c: Use current_top_target instead of target_stack
6231         throughout.
6232         * avr-tdep.c: Likewise.
6233         * breakpoint.c: Likewise.
6234         * corefile.c: Likewise.
6235         * elfread.c: Likewise.
6236         * eval.c: Likewise.
6237         * exceptions.c: Likewise.
6238         * frame.c: Likewise.
6239         * gdbarch-selftests.c: Likewise.
6240         * gnu-v3-abi.c: Likewise.
6241         * ia64-tdep.c: Likewise.
6242         * ia64-vms-tdep.c: Likewise.
6243         * infcall.c: Likewise.
6244         * infcmd.c: Likewise.
6245         * infrun.c: Likewise.
6246         * linespec.c: Likewise.
6247         * linux-tdep.c: Likewise.
6248         * minsyms.c: Likewise.
6249         * ppc-linux-nat.c: Likewise.
6250         * ppc-linux-tdep.c: Likewise.
6251         * procfs.c: Likewise.
6252         * regcache.c: Likewise.
6253         * remote.c: Likewise.
6254         * rs6000-tdep.c: Likewise.
6255         * s390-linux-nat.c: Likewise.
6256         * s390-tdep.c: Likewise.
6257         * solib-aix.c: Likewise.
6258         * solib-darwin.c: Likewise.
6259         * solib-dsbt.c: Likewise.
6260         * solib-spu.c: Likewise.
6261         * solib-svr4.c: Likewise.
6262         * solib-target.c: Likewise.
6263         * sparc-tdep.c: Likewise.
6264         * sparc64-tdep.c: Likewise.
6265         * spu-tdep.c: Likewise.
6266         * symfile.c: Likewise.
6267         * symtab.c: Likewise.
6268         * target-descriptions.c: Likewise.
6269         * target-memory.c: Likewise.
6270         * target.c: Likewise.
6271         * target.h: Likewise.
6272         * tracefile-tfile.c: Likewise.
6273         * tracepoint.c: Likewise.
6274         * valops.c: Likewise.
6275         * valprint.c: Likewise.
6276         * value.c: Likewise.
6277         * windows-tdep.c: Likewise.
6278         * mi/mi-main.c: Likewise.
6279
6280 2018-06-07  Tom Tromey  <tom@tromey.com>
6281
6282         * valprint.h (build_address_symbolic): Declare.
6283         * printcmd.c (print_address_symbolic): Update.
6284         (build_address_symbolic): Change "name" and "filename" to
6285         std::string.
6286         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
6287         Update.
6288         * defs.h (build_address_symbolic): Remove declaration.
6289
6290 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
6291
6292         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
6293         (aarch64_vnv_type): Add function.
6294         (aarch64_pseudo_register_name): Add V regs for SVE.
6295         (aarch64_pseudo_register_type): Likewise.
6296         (aarch64_pseudo_register_reggroup_p): Likewise.
6297         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
6298         (aarch64_pseudo_read_value): Add V regs for SVE.
6299         (aarch64_pseudo_write_2): Use V0 offset for SVE
6300         (aarch64_pseudo_write): Add V regs for SVE.
6301         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
6302
6303 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
6304
6305         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
6306         (sve_vl_from_vq): Likewise.
6307
6308 2018-06-05  Tom Tromey  <tom@tromey.com>
6309
6310         * cli/cli-cmds.c (show_version): Update.
6311         * top.c (print_gdb_version): Add "interactive" parameter.
6312         Update.
6313         * main.c (captured_main_1): Update.
6314         * top.h (print_gdb_version): Add "interactive" parameter and a
6315         comment.
6316
6317 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
6318
6319         * common/enum-flags.h: Add trailing semicolon to example in
6320         comment.
6321
6322 2018-06-05  Tom Tromey  <tom@tromey.com>
6323
6324         PR cli/12326:
6325         * NEWS: Add entry about pager.
6326         * utils.c (pagination_disabled_for_command): New global.
6327         (prompt_for_continue): Allow "c" response to prompt.
6328         (reinitialize_more_filter): Clear
6329         pagination_disabled_for_command.
6330         (fputs_maybe_filtered): Check pagination_disabled_for_command.
6331
6332 2018-06-04  Tom Tromey  <tom@tromey.com>
6333
6334         * ada-lang.h (ada_lookup_symbol_list): Update.
6335         * ada-lang.c (resolve_subexp): Update.
6336         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
6337         parameter.
6338         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
6339         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
6340         results parameter to std::vector.
6341         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
6342         Update.
6343         * ada-exp.y (block_lookup): Update.
6344         (select_possible_type_sym): Change type of syms.  Remove nsyms
6345         parameter.
6346         (write_var_or_type, write_name_assoc): Update.
6347
6348 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
6349
6350         * windows-nat.c (windows_nat_target::xfer_partial): Return
6351         TARGET_XFER_E_IO if we need to delegate to the target beneath
6352         but BENEATH is NULL.
6353
6354 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
6355
6356         * Makefile.in (config.status): Add configure.nat as a
6357         dependency.
6358
6359 2018-06-04  Tom Tromey  <tom@tromey.com>
6360
6361         * cp-name-parser.y (cpname_state): Add method declarations.
6362         (HANDLE_QUAL): Update.
6363         (cpname_state::d_grab, cpname_state::fill_comp)
6364         (cpname_state::make_operator, cpname_state::make_dtor)
6365         (cpname_state::make_builtin_type, cpname_state::make_name)
6366         (cpname_state::d_qualify, cpname_state::d_int_type)
6367         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
6368         (%union): Move earlier.
6369
6370 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6371
6372         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
6373
6374 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6375
6376         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
6377         (aarch64_pseudo_write_1): Likewise.
6378         (aarch64_pseudo_read_value): Use helper.
6379         (aarch64_pseudo_write): Likewise.
6380
6381 2018-06-04  Pedro Alves  <palves@redhat.com>
6382
6383         * darwin-nat.c (darwin_ops): Delete.
6384         (darwin_attach_pid): Use get_native_target.
6385
6386 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6387
6388         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
6389         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
6390
6391 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6392
6393         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
6394         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
6395         (aarch64_gdbarch_init): Check for SVE.
6396         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
6397
6398 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6399
6400         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
6401         * aarch64-tdep.h (aarch64_read_description): Likewise.
6402         * arch/aarch64.c (aarch64_create_target_description): Likewise.
6403         * arch/aarch64.h (aarch64_create_target_description): Likewise.
6404         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
6405         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
6406         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
6407
6408 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
6409
6410         * value.c (value_fetch_lazy_bitfield): New.
6411         (value_fetch_lazy_memory): New.
6412         (value_fetch_lazy_register): New.
6413         (value_fetch_lazy): Factor out to smaller functions.
6414
6415 2018-06-01  Tom Tromey  <tom@tromey.com>
6416
6417         * cp-name-parser.y (backslashable, represented): Now const.
6418
6419 2018-06-01  Tom Tromey  <tom@tromey.com>
6420
6421         * cp-name-parser.y: Include parser-defs.h.
6422         (parser_fprintf): Remove declaration.
6423
6424 2018-06-01  Tom Tromey  <tom@tromey.com>
6425
6426         * cp-name-parser.y: Use %pure-parser, %lex-param, and
6427         %parse-param.
6428         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
6429         (global_result): Remove globals.
6430         (struct cpname_state): New.
6431         (yyparse): Don't declare.
6432         (yylex, yyerror): Move declarations after %union.
6433         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
6434         (make_name): Add state parameter.
6435         Update all callers.
6436         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
6437         parameter.
6438         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
6439         Update.
6440         (yylex): Add lvalp, state parameters.
6441         (yyerror): Add state parameter.
6442         (cp_demangled_name_to_comp): Update.
6443
6444 2018-06-01  Tom Tromey  <tom@tromey.com>
6445
6446         * cp-name-parser.y (parser_fprintf): Declare.
6447         (GDB_YY_REMAP_PREFIX): Define.
6448         Include yy-remap.h.  Don't redefine yy* identifiers.
6449
6450 2018-06-01  Tom Tromey  <tom@tromey.com>
6451
6452         * python/py-type.c (typy_legacy_template_argument): Update.
6453         * cp-support.h (cp_demangled_name_to_comp): Update.
6454         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
6455         parameter to be a "std::string *".
6456         (main): Update.
6457
6458 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
6459
6460         * ada-lex.l: Include "diagnostics.h" instead of
6461         "common/diagnostics.h".
6462         * unittests/environ-selftests.c: Likewise.
6463         * common/diagnostics.h: Moved to ../include.
6464
6465 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
6466
6467         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
6468         to language_mode_manual while calling breakpoint_re_set_one.
6469
6470 2018-06-01  Tom Tromey  <tom@tromey.com>
6471
6472         * valops.c (value_cast_structs, destructor_name_p): Update.
6473         * symtab.c (gdb_mangle_name): Update.
6474         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
6475         Update.
6476         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
6477         (pascal_object_print_value_fields, pascal_object_print_value):
6478         Update.
6479         * p-typeprint.c (pascal_type_print_derivation_info): Update.
6480         * linespec.c (find_methods): Update.
6481         * gdbtypes.h (type_name_no_tag): Remove.
6482         (type_name_or_error): Rename from type_name_no_tag_or_error.
6483         * gdbtypes.c (type_name_no_tag): Remove.
6484         (type_name_or_error): Rename from type_name_no_tag_or_error.
6485         (lookup_struct_elt_type, check_typedef): Update.
6486         * expprint.c (print_subexp_standard): Update.
6487         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
6488         * d-namespace.c (d_lookup_nested_symbol): Update.
6489         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
6490         (cp_print_class_member): Update.
6491         * cp-namespace.c (cp_lookup_nested_symbol): Update.
6492         * completer.c (add_struct_fields): Update.
6493         * c-typeprint.c (cp_type_print_derivation_info)
6494         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
6495         Update.
6496         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
6497         (ada_prefer_type, ada_is_exception_sym): Update.
6498
6499 2018-06-01  Tom Tromey  <tom@tromey.com>
6500
6501         * valops.c (enum_constant_from_type, value_namespace_elt)
6502         (value_maybe_namespace_elt): Update.
6503         * valarith.c (find_size_for_pointer_math): Update.
6504         * target-descriptions.c (make_gdb_type): Update.
6505         * symmisc.c (print_symbol): Update.
6506         * stabsread.c (define_symbol, read_type)
6507         (complain_about_struct_wipeout, add_undefined_type)
6508         (cleanup_undefined_types_1): Update.
6509         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
6510         (rust_range_type_p, val_print_struct, rust_print_struct_def)
6511         (rust_internal_print_type, rust_composite_type)
6512         (rust_evaluate_funcall, rust_evaluate_subexp)
6513         (rust_inclusive_range_type_p): Update.
6514         * python/py-type.c (typy_get_tag): Update.
6515         * p-typeprint.c (pascal_type_print_base): Update.
6516         * mdebugread.c (parse_symbol, parse_type): Update.
6517         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
6518         Update.
6519         * guile/scm-type.c (gdbscm_type_tag): Update.
6520         * go-lang.c (sixg_string_p): Update.
6521         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
6522         Update.
6523         * gdbtypes.h (struct main_type) <tag_name>: Remove.
6524         (TYPE_TAG_NAME): Remove.
6525         * gdbtypes.c (type_name_no_tag): Simplify.
6526         (check_typedef, check_types_equal, recursive_dump_type)
6527         (copy_type_recursive, arch_composite_type): Update.
6528         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
6529         in summary mode when needed.
6530         * eval.c (evaluate_funcall): Update.
6531         * dwarf2read.c (fixup_go_packaging, read_structure_type)
6532         (process_structure_scope, read_enumeration_type)
6533         (read_namespace_type, read_module_type, determine_prefix): Update.
6534         * cp-support.c (inspect_type): Update.
6535         * coffread.c (process_coff_symbol, decode_base_type): Update.
6536         * c-varobj.c (c_is_path_expr_parent): Update.
6537         * c-typeprint.c (c_type_print_base_struct_union): Update.
6538         (c_type_print_base_1): Update.  Print struct/class/union/enum in
6539         summary when using C language.
6540         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
6541         (gen_maybe_namespace_elt): Update.
6542         * ada-lang.c (ada_type_name): Simplify.
6543         (empty_record, ada_template_to_fixed_record_type_1)
6544         (template_to_static_fixed_type)
6545         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
6546
6547 2018-06-01  Tom Tromey  <tom@tromey.com>
6548
6549         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
6550         c_print_type.
6551         * c-typeprint.c (c_print_type_1): Add "language" parameter.
6552         (c_print_type): Update.
6553         (c_print_type): New overload.
6554         (c_type_print_varspec_prefix, c_type_print_args)
6555         (c_type_print_varspec_suffix, c_print_type_no_offsets)
6556         (c_type_print_base_struct_union, c_type_print_base_1)
6557         (cp_type_print_method_args): Add "language" parameter.
6558         (c_type_print_base): Update.
6559         * c-lang.h (c_print_type): Add new overload.
6560
6561 2018-06-01  Tom Tromey  <tom@tromey.com>
6562
6563         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
6564         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
6565
6566 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
6567
6568         * aarch64-tdep.c (aarch64_sve_register_names): New const
6569         var.
6570         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
6571         (AARCH64_SVE_Z_REGS_NUM): New define.
6572         (AARCH64_SVE_P_REGS_NUM): Likewise.
6573         (AARCH64_SVE_NUM_REGS): Likewise.
6574
6575 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
6576
6577         * nat/linux-ptrace.h [__alpha__]
6578         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
6579         definitions.
6580
6581 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
6582
6583         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
6584         the endianness selected.
6585         * NEWS: Document `set endian auto' mode operation update.
6586
6587 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
6588
6589         * Makefile.in: Add new header.
6590         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
6591         (sve_vl_from_vg): Likewise.
6592         (sve_vq_from_vl): Likewise.
6593         (sve_vl_from_vq): Likewise.
6594         (sve_vq_from_vg): Likewise.
6595         (sve_vg_from_vq): Likewise.
6596         * configure.nat: Add new c file.
6597         * nat/aarch64-sve-linux-ptrace.c: New file.
6598         * nat/aarch64-sve-linux-ptrace.h: New file.
6599
6600 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
6601
6602         * aarch64-linux-nat.c (aarch64_linux_read_description):
6603         Add parmeter zero.
6604         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
6605         Likewise.
6606         * aarch64-tdep.c (tdesc_aarch64_list): Add.
6607         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
6608         (aarch64_gdbarch_init): Add parmeter zero.
6609         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
6610         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
6611         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
6612         parmeter.
6613         * doc/gdb.texinfo: Describe SVE feature
6614         * features/aarch64-sve.c: New file.
6615
6616 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
6617
6618         PR gdb/23210
6619         * gdbarch.sh (significant_addr_bit): Default to zero when
6620         not set by target architecture.
6621         * gdbarch.c: Re-generated.
6622         * utils.c (address_significant): Update.
6623
6624 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
6625
6626         * stack.c (func_command): Remove trailing newline in call to error.
6627
6628 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6629
6630         * regcache.h (regcache_raw_collect): Remove, update callers to
6631         use regcache::raw_collect.
6632         * regcache.c (regcache_raw_collect): Remove.
6633
6634 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6635
6636         * regcache.h (regcache_raw_supply): Remove, update callers to
6637         use detached_regcache::raw_supply.
6638         * regcache.c (regcache_raw_supply): Remove.
6639
6640 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6641
6642         * regcache.h (regcache_cooked_write_part): Remove, update
6643         callers to use regcache::cooked_write_part.
6644         * regcache.c (regcache_cooked_write_part): Remove.
6645
6646 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6647
6648         * regcache.h (regcache_cooked_read_part): Remove, update callers
6649         to use readable_regcache::cooked_read_part.
6650         * regcache.c (regcache_cooked_read_part): Remove.
6651
6652 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6653
6654         * regcache.h (regcache_cooked_read_value): Remove, update
6655         callers to use readable_regcache::cooked_read_value.
6656         * regcache.c (regcache_cooked_read_value): Remove.
6657
6658 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6659
6660         * regcache.h (regcache_cooked_write): Remove, update callers to
6661         use regcache::cooked_write.
6662         * regcache.c (regcache_cooked_write): Remove.
6663
6664 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6665
6666         * regcache.h (regcache_invalidate): Remove, update callers to
6667         use detached_regcache::invalidate instead.
6668         * regcache.c (regcache_invalidate): Remove.
6669
6670 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6671
6672         * regcache.h (regcache_raw_write_part): Remove, update callers
6673         to use regcache::raw_write_part instead.
6674         * regcache.c (regcache_raw_write_part): Remove.
6675
6676 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6677
6678         * regcache.h (regcache_raw_read_part): Remove, update callers to
6679         use readable_regcache::raw_read_part instead.
6680         * regcache.c (regcache_raw_read_part): Remove.
6681
6682 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6683
6684         * regcache.h (regcache_cooked_read): Remove, update callers to
6685         use readable_regcache::cooked_read instead.
6686         * regcache.c (regcache_cooked_read): Remove.
6687
6688 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6689
6690         * regcache.h (regcache_raw_write): Remove, update callers to use
6691         regcache::raw_write instead.
6692         * regcache.c (regcache_raw_write): Remove.
6693
6694 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6695
6696         * regcache.h (regcache_raw_read): Remove, update callers to use
6697         readable_regcache::raw_read instead.
6698         * regcache.c (regcache_raw_read): Remove.
6699
6700 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6701
6702         * regcache.h (regcache_raw_update): Remove, update callers to
6703         use readable_regcache::raw_update instead.
6704         * regcache.c (regcache_raw_update): Remove.
6705
6706 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6707
6708         * regcache.h (regcache_register_status): Remove, update callers
6709         to use reg_buffer::get_register_status directly instead.
6710         * regcache.c (regcache_register_status): Remove.
6711
6712 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6713
6714         * regcache.h (regcache_get_ptid): Remove, update all callers to
6715         call regcache::ptid instead.
6716         * regcache.c (regcache_get_ptid): Remove.
6717
6718 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6719
6720         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
6721
6722 2018-05-30  Pedro Alves  <palves@redhat.com>
6723
6724         * common/common-exceptions.h (exception_rethrow): Use
6725         ATTRIBUTE_NORETURN.
6726
6727 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
6728
6729         * breakpoint.c (print_solib_event, check_status_catch_solib):
6730         Remove struct keyword in range-based for loops.
6731         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
6732         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
6733         Likewise.
6734         * linespec.c (find_superclass_methods, search_minsyms_for_name):
6735         Likewise.
6736         * symfile.c (addr_info_make_relative): Likewise.
6737         * thread.c (value_in_thread_stack_temporaries): Likewise.
6738
6739 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
6740
6741         PR gdb/16841
6742         * valops.c (value_struct_elt_for_reference): Call check_typedef on
6743         aggregate type to get its real type before accessing it.
6744
6745 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
6746
6747         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
6748         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
6749         * coff-pe-read.c (add_pe_forwarded_sym): Replace
6750         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
6751         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
6752         * jit.c (jit_breakpoint_re_set_internal): Likewise.
6753         * printcmd.c (info_address_command): Likewise.
6754
6755 2018-05-29  Tom Tromey  <tom@tromey.com>
6756
6757         * windows-nat.c (handle_exception): Update fall-through comment.
6758
6759 2018-05-29  Tom Tromey  <tom@tromey.com>
6760
6761         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
6762         (struct program_space) <added_solibs>: Now a std::vector.
6763         * breakpoint.c (print_solib_event): Update.
6764         (check_status_catch_solib): Update.
6765         * progspace.c (clear_program_space_solib_cache): Update.
6766         * solib.c (update_solib_list): Update.
6767
6768 2018-05-29  Tom Tromey  <tom@tromey.com>
6769
6770         * python/py-type.c (typy_richcompare): Update.
6771         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
6772         * gdbtypes.h (types_deeply_equal): Return bool.
6773         (types_equal): Likewise.
6774         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
6775         declare VEC.
6776         (check_types_equal): Change worklist to std::vector.  Return
6777         bool.
6778         (struct type_equality_entry): Add constructor.
6779         (compare_maybe_null_strings): Return bool.
6780         (check_types_worklist): Return bool.  Change worklist to
6781         std::vector.
6782         (types_deeply_equal): Use std::vector.
6783         (types_equal): Return bool.
6784         (compare_maybe_null_strings): Simplify.
6785
6786 2018-05-29  Tom Tromey  <tom@tromey.com>
6787
6788         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
6789
6790 2018-05-29  Tom Tromey  <tom@tromey.com>
6791
6792         * objc-lang.h: Don't include cp-support.h.
6793         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
6794         declare VEC.
6795
6796 2018-05-27  Tom Tromey  <tom@tromey.com>
6797
6798         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
6799
6800 2018-05-25  Tom Tromey  <tom@tromey.com>
6801
6802         * value.c (value::location): Initialize.
6803
6804 2018-05-25  Tom Tromey  <tom@tromey.com>
6805
6806         * dbxread.c (init_bincl_list): Remove.
6807         (bincl_list): Now a std::vector.
6808         (bincls_allocated, next_bincl): Remove.
6809         (free_bincl_list, do_free_bincl_list_cleanup)
6810         (make_cleanup_free_bincl_list): Remove.
6811         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
6812         unique_xmalloc_ptr.
6813         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
6814         (struct header_file_location): Add constructor.
6815         (add_bincl_to_list): Remove.
6816
6817 2018-05-25  Tom Tromey  <tom@tromey.com>
6818
6819         * tui/tui.c (tui_enable): Update.
6820         * mi/mi-interp.c (mi_interp::init): Update.
6821         * interps.h (class interp) <name>: New method.
6822         <m_name>: Rename from name.
6823         (~scoped_restore_interp): Update.
6824         * interps.c (interp::interp): Update.
6825         (interp_add, interp_set, interp_lookup_existing)
6826         (current_interp_named_p): Update.
6827
6828 2018-05-25  Tom Tromey  <tom@tromey.com>
6829
6830         * interps.c (interp_name): Remove.
6831         * mi/mi-interp.c (mi_interp::init): Update.
6832         * interps.h (interp_name): Remove.
6833         (~scoped_restore_interp): Update.
6834         * tui/tui.c (tui_enable): Update.
6835
6836 2018-05-25  Tom Tromey  <tom@tromey.com>
6837
6838         * utils.c (fputs_maybe_filtered): Update.
6839         * linespec.c (decode_line_full): Update.
6840         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
6841         (mi_print_breakpoint_for_event, mi_solib_loaded)
6842         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
6843         (mi_user_selected_context_changed): Update.
6844         * mi/mi-main.c (mi_execute_command): Update.
6845         * cli/cli-script.c (execute_control_command): Update.
6846         * python/python.c (execute_gdb_command): Update.
6847         * solib.c (info_sharedlibrary_command): Update.
6848         * interps.c (interp_ui_out): Remove.
6849         * interps.h (interp_ui_out): Remove.
6850
6851 2018-05-25  Tom Tromey  <tom@tromey.com>
6852
6853         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
6854         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
6855         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
6856
6857 2018-05-25  Tom Tromey  <tom@tromey.com>
6858
6859         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
6860         * interps.c (interp_exec): Use scoped_restore.
6861
6862 2018-05-25  Tom Tromey  <tom@tromey.com>
6863
6864         * remote.c (remote_target::remote_file_get): Use
6865         gdb::byte_vector.
6866         (remote_target::remote_file_put): Likewise.
6867
6868 2018-05-25  Tom Tromey  <tom@tromey.com>
6869
6870         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
6871         a std::string.
6872         (get_pe_section_index, add_pe_exported_sym): Update.
6873         (read_pe_exported_syms): Use gdb::def_vector.
6874
6875 2018-05-25  Tom Tromey  <tom@tromey.com>
6876
6877         * frame.c (remove_prev_frame): Remove.
6878         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
6879
6880 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
6881
6882         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
6883         Remove prototypes.
6884         * mips-linux-nat.c (supply_fpregset): Always call
6885         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
6886         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
6887         `mips_fill_fpregset'.
6888         * mips-linux-tdep.c (mips_supply_fpregset)
6889         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
6890         (mips_fill_fpregset_wrapper): Remove functions.
6891         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
6892         (mips_linux_fpregset): Remove variable.
6893         (mips_linux_iterate_over_regset_sections): Use
6894         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
6895         (mips_linux_o32_sigframe_init): Remove comment.
6896
6897 2018-05-25  Pedro Alves  <palves@redhat.com>
6898
6899         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
6900         (struct readahead_cache, struct packet_reg, struct
6901         remote_arch_state, class remote_state): Move higher up in the
6902         file.
6903         (remote_target::m_remote_state): Now an object instead of a pointer.
6904         (remote_target::get_remote_state): Adjust.
6905
6906 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
6907
6908         * stack.c (select_and_print_frame): Delete.
6909         (struct function_bounds): Move struct within function.
6910         (func_command): Most content moved into new function
6911         find_frame_for_function, use new function, print result, add
6912         function comment.
6913         (find_frame_for_function): New function, now returns a result.
6914
6915 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6916
6917         * stack.c (iterate_over_block_arg_vars): Fix comment.
6918         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
6919
6920 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
6921
6922         PR gdb/23203
6923         * frame.c
6924         (scoped_restore_selected_frame::scoped_restore_selected_frame):
6925         Define.
6926         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
6927         Define.
6928         * frame.h (class scoped_restore_selected_frame): New class.
6929         * stack.c (print_frame_local_vars): Remove catching and rethrowing
6930         of any exception, use scoped_restore_selected_frame to restore the
6931         frame instead.
6932
6933 2018-05-24  Pedro Alves  <palves@redhat.com>
6934
6935         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
6936         override.
6937
6938 2018-05-23  Tom Tromey  <tom@tromey.com>
6939
6940         * complaints.c (struct complaints): Remove.
6941         (symfile_complaint_book): Remove.
6942         (series): New global.
6943         (complaint_internal): Update.
6944         (clear_complaints): Update.
6945
6946 2018-05-23  Tom Tromey  <tom@tromey.com>
6947
6948         * complaints.c (counters): New global.
6949         (struct complain): Remove.
6950         (struct complaints) <root>: Remove.
6951         (complaint_sentinel): Remove.
6952         (symfile_complaint_book): Update.
6953         (find_complaint) Remove.
6954         (complaint_internal, clear_complaints): Update.
6955
6956 2018-05-23  Tom Tromey  <tom@tromey.com>
6957
6958         * complaints.c (struct complain) <file, line>: Remove.
6959         (find_complaint): Remove file, line parameters.
6960         (complaint_internal): Update.
6961
6962 2018-05-23  Tom Tromey  <tom@tromey.com>
6963
6964         * complaints.c (vcomplaint): Remove.
6965         (complaint_internal) Merge in contents of vcomplaint.
6966
6967 2018-05-23  Tom Tromey  <tom@tromey.com>
6968
6969         * complaints.c (struct complaints) <explanation>: Remove.
6970         (symfile_explanations): Remove.
6971         (symfile_complaint_book): Update.
6972         (vcomplaint): Update.
6973         (struct explanation): Remove.
6974
6975 2018-05-23  Tom Tromey  <tom@tromey.com>
6976
6977         * complaints.c (symfile_complaints): Remove.
6978         (complaint_internal): Remove "complaints" parameter.
6979         (clear_complaints, vcomplaint): Remove "c" parameter.
6980         (get_complaints): Remove.
6981         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
6982         (dwarf2_debug_line_missing_file_complaint)
6983         (dwarf2_debug_line_missing_end_sequence_complaint)
6984         (dwarf2_complex_location_expr_complaint)
6985         (dwarf2_const_value_length_mismatch_complaint)
6986         (dwarf2_section_buffer_overflow_complaint)
6987         (dwarf2_macro_malformed_definition_complaint)
6988         (dwarf2_invalid_attrib_class_complaint)
6989         (create_addrmap_from_index, dw2_symtab_iter_next)
6990         (dw2_expand_marked_cus)
6991         (dw2_debug_names_iterator::find_vec_in_debug_names)
6992         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
6993         (create_debug_type_hash_table, init_cutu_and_read_dies)
6994         (partial_die_parent_scope, add_partial_enumeration)
6995         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
6996         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
6997         (read_import_statement, read_file_scope, create_dwo_cu_reader)
6998         (create_cus_hash_table, create_dwp_hash_table)
6999         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
7000         (dwarf2_rnglists_process, dwarf2_ranges_process)
7001         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
7002         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
7003         (handle_struct_member_die, process_structure_scope)
7004         (read_array_type, read_common_block, read_module_type)
7005         (read_tag_pointer_type, read_typedef, read_base_type)
7006         (read_subrange_type, load_partial_dies, partial_die_info::read)
7007         (partial_die_info::read, partial_die_info::read)
7008         (partial_die_info::read, read_checked_initial_length_and_offset)
7009         (dwarf2_string_attr, read_formatted_entries)
7010         (dwarf_decode_line_header)
7011         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
7012         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
7013         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
7014         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
7015         (get_signatured_type, get_DW_AT_signature_type)
7016         (decode_locdesc, file_file_name, consume_improper_spaces)
7017         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
7018         (dwarf_decode_macro_bytes, dwarf_decode_macros)
7019         (dwarf2_symbol_mark_computed, set_die_type)
7020         (read_attribute_value): Update.
7021         * stap-probe.c (handle_stap_probe, get_stap_base_address):
7022         Update.
7023         * dbxread.c (unknown_symtype_complaint)
7024         (lbrac_mismatch_complaint, repeated_header_complaint)
7025         (set_namestring, function_outside_compilation_unit_complaint)
7026         (read_dbx_symtab, process_one_symbol): Update.
7027         * gdbtypes.c (stub_noname_complaint): Update.
7028         * windows-nat.c (handle_unload_dll): Update.
7029         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
7030         (decode_base_type): Update.
7031         * xcoffread.c (bf_notfound_complaint, ef_complaint)
7032         (eb_complaint, record_include_begin, record_include_end)
7033         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
7034         (process_xcoff_symbol, read_symbol)
7035         (function_outside_compilation_unit_complaint)
7036         (scan_xcoff_symtab): Update.
7037         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
7038         * buildsym.c (finish_block_internal, make_blockvector)
7039         (end_symtab_get_static_block, augment_type_symtab): Update.
7040         * dtrace-probe.c (dtrace_process_dof)
7041         (dtrace_static_probe_ops::get_probes): Update.
7042         * complaints.h (struct complaint): Don't declare.
7043         (symfile_complaints): Remove.
7044         (complaint_internal): Remove "complaints" parameter.
7045         (complaint): Likewise.
7046         (clear_complaints): Likewise.
7047         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7048         (reread_symbols): Update.
7049         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
7050         (dwarf2_frame_cache, decode_frame_entry): Update.
7051         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
7052         * objc-lang.c (lookup_objc_class, lookup_child_selector)
7053         (info_selectors_command): Update.
7054         * macrotab.c (macro_include, check_for_redefinition)
7055         (macro_undef): Update.
7056         * objfiles.c (filter_overlapping_sections): Update.
7057         * stabsread.c (invalid_cpp_abbrev_complaint)
7058         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
7059         (define_symbol, error_type, read_type, rs6000_builtin_type)
7060         (stabs_method_name_from_physname, read_member_functions)
7061         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
7062         (attach_fields_to_type, complain_about_struct_wipeout)
7063         (read_range_type, read_args, common_block_start)
7064         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
7065         Update.
7066         * mdebugread.c (index_complaint, unknown_ext_complaint)
7067         (basic_type_complaint, bad_tag_guess_complaint)
7068         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
7069         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
7070         (parse_procedure, parse_lines)
7071         (function_outside_compilation_unit_complaint)
7072         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
7073         (bad_tag_guess_complaint, reg_value_complaint): Update.
7074         * cp-support.c (demangled_name_complaint): Update.
7075         * macroscope.c (sal_macro_scope): Update.
7076         * dwarf-index-write.c (class debug_names): Update.
7077
7078 2018-05-23  Tom Tromey  <tom@tromey.com>
7079
7080         * complaints.c (clear_complaints): Remove "noisy" parameter.
7081         * complaints.h (clear_complaints): Update.
7082         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7083         (reread_symbols): Update.
7084
7085 2018-05-23  Tom Tromey  <tom@tromey.com>
7086
7087         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
7088         SUBSEQUENT_MESSAGE.
7089         (vcomplaint, clear_complaints): Update.
7090         (symfile_explanations): Remove some messages.
7091
7092 2018-05-23  Tom Tromey  <tom@tromey.com>
7093
7094         * complaints.c (internal_complaint): Remove.
7095         * complaints.h (internal_complaint): Remove.
7096
7097 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7098
7099         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
7100
7101 2018-05-22  Pedro Alves  <palves@redhat.com>
7102
7103         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
7104         (remote_fileio_badfd, remote_fileio_return_errno)
7105         (remote_fileio_return_success, remote_fileio_func_open)
7106         (remote_fileio_func_open, remote_fileio_func_close)
7107         (remote_fileio_func_read, remote_fileio_func_write)
7108         (remote_fileio_func_lseek, remote_fileio_func_rename)
7109         (remote_fileio_func_unlink, remote_fileio_func_stat)
7110         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
7111         (remote_fileio_func_isatty, remote_fileio_func_system): Add
7112         remote_target parameter.
7113         (remote_fio_func_map) <func>: Add remote_target parameter.
7114         (do_remote_fileio_request, remote_fileio_request):
7115         * remote-fileio.h (remote_fileio_request):
7116         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
7117         remote_target parameter.
7118         (remote_notif_process, handle_notification): Adjust to pass down
7119         the remote.
7120         (remote_notif_state_allocate): Add remote_target parameter.  Save
7121         it.
7122         * remote-notif.h (struct remote_target): Forward declare.
7123         (struct notif_client) <parse, ack, can_get_pending_events>: Add
7124         remote_target parameter.
7125         (struct remote_notif_state) <remote>: New field.
7126         (remote_notif_ack, remote_notif_parse): Add remote_target
7127         parameter.
7128         (remote_notif_state_allocate, remote_notif_state_allocate): Add
7129         remote_target parameter.
7130         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
7131         (threads_listing_context, rmt_thread_action, protocol_feature)
7132         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
7133         (packet_result, struct threads_listing_context, remote_state):
7134         Move definitions and declarations higher up.
7135         (remote_target) <~remote_target>: Declare.
7136         (remote_download_command_source, remote_file_put, remote_file_get)
7137         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
7138         (remote_hostio_pread_vFile, remote_hostio_send_command)
7139         (remote_hostio_set_filesystem, remote_hostio_open)
7140         (remote_hostio_close, remote_hostio_unlink, remote_state)
7141         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
7142         (get_memory_write_packet_size, get_memory_read_packet_size)
7143         (append_pending_thread_resumptions, remote_detach_1)
7144         (append_resumption, remote_resume_with_vcont)
7145         (add_current_inferior_and_thread, wait_ns, wait_as)
7146         (process_stop_reply, remote_notice_new_inferior)
7147         (process_initial_stop_replies, remote_add_thread)
7148         (btrace_sync_conf, remote_btrace_maybe_reopen)
7149         (remove_new_fork_children, kill_new_fork_children)
7150         (discard_pending_stop_replies, stop_reply_queue_length)
7151         (check_pending_events_prevent_wildcard_vcont)
7152         (discard_pending_stop_replies_in_queue, stop_reply)
7153         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
7154         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
7155         (remote_interrupt_as, remote_interrupt_ns)
7156         (remote_get_noisy_reply, remote_query_attached)
7157         (remote_add_inferior, remote_current_thread, get_current_thread)
7158         (set_thread, set_general_thread, set_continue_thread)
7159         (set_general_process, write_ptid)
7160         (remote_unpack_thread_info_response, remote_get_threadinfo)
7161         (parse_threadlist_response, remote_get_threadlist)
7162         (remote_threadlist_iterator, remote_get_threads_with_ql)
7163         (remote_get_threads_with_qxfer)
7164         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
7165         (get_offsets, remote_check_symbols, remote_supported_packet)
7166         (remote_query_supported, remote_packet_size)
7167         (remote_serial_quit_handler, remote_detach_pid)
7168         (remote_vcont_probe, remote_resume_with_hc)
7169         (send_interrupt_sequence, interrupt_query)
7170         (remote_notif_get_pending_events, fetch_register_using_p)
7171         (send_g_packet, process_g_packet, fetch_registers_using_g)
7172         (store_register_using_P, store_registers_using_G)
7173         (set_remote_traceframe, check_binary_download)
7174         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
7175         (remote_xfer_live_readonly_partial, remote_read_bytes)
7176         (remote_send_printf, remote_flash_write, readchar)
7177         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
7178         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
7179         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
7180         (extended_remote_disable_randomization, extended_remote_run)
7181         (send_environment_packet, extended_remote_environment_support)
7182         (extended_remote_set_inferior_cwd, remote_write_qxfer)
7183         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
7184         (packet_command): Now methods of ...
7185         (remote_target): ... this class.
7186         (m_remote_state) <remote_target>: New field.
7187         (struct remote_state) <stop_reply_queue,
7188         remote_async_inferior_event_token, wait_forever_enabled_p>: New
7189         fields.
7190         (remote_state::remote_state): Allocate stop_reply_queue.
7191         (remote_state): Delete global.
7192         (get_remote_state_raw): Delete.
7193         (remote_target::get_remote_state): Allocate m_remote_state on
7194         demand.
7195         (get_current_remote_target): New.
7196         (remote_ops, extended_remote_ops): Delete.
7197         (wait_forever_enabled_p, remote_async_inferior_event_token):
7198         Delete, moved to struct remote_state.
7199         (remote_target::close): Delete self.  Destruction bits split to
7200         ...
7201         (remote_target::~remote_target): ... this.
7202         (show_memory_packet_size): Adjust to use
7203         get_current_remote_target.
7204         (struct protocol_feature) <func>: Add remote_target parameter.
7205         All callers adjusted.
7206         (curr_quit_handler_target): New.
7207         (remote_serial_quit_handler): Reimplement.
7208         (remote_target::open_1): Adjust to use get_current_remote_target.
7209         Heap-allocate remote_target/extended_remote_target instances.
7210         (vcont_builder::vcont_builder): Add remote_target parameter, and
7211         save it in m_remote.  All callers adjusted.
7212         (vcont_builder::m_remote): New field.
7213         (vcont_builder::restart, vcont_builder::flush)
7214         (vcont_builder::push_action): Use it.
7215         (remote_target::commit_resume): Use it.
7216         (struct queue_iter_param) <remote>: New field.
7217         (remote_target::remove_new_fork_children): Fill in 'remote' field.
7218         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
7219         (check_pending_event_prevents_wildcard_vcont_callback)
7220         (remote_target::check_pending_events_prevent_wildcard_vcont)
7221         (remote_target::discard_pending_stop_replies)
7222         (remote_target::discard_pending_stop_replies_in_queue)
7223         (remote_target::remote_notif_remove_queued_reply): Fill in
7224         'remote' field.
7225         (remote_notif_get_pending_events): New.
7226         (remote_target::readchar, remote_target::remote_serial_write):
7227         Save/restore curr_quit_handler_target.
7228         (putpkt): New.
7229         (kill_new_fork_children): Fill in 'remote' field.
7230         (packet_command): Use get_current_remote_target, defer to
7231         remote_target method of same name.
7232         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
7233         parameter, and save it in m_remote.  All callers adjusted.
7234         (scoped_remote_fd::release): Use m_remote.
7235         (scoped_remote_fd::m_remote): New field.
7236         (remote_file_put, remote_file_get, remote_file_delete): Use
7237         get_current_remote_target, defer to remote_target method of same
7238         name.
7239         (remote_btrace_reset): Add remote_state paremeter.  Update all
7240         callers.
7241         (remote_async_inferior_event_handler). Pass down 'data'.
7242         (remote_new_objfile): Use get_current_remote_target.
7243         (remote_target::vcont_r_supported): New.
7244         (set_range_stepping): Use get_current_remote_target and
7245         remote_target::vcont_r_supported.
7246         (_initialize_remote): Don't allocate 'remote_state' and
7247         'stop_reply_queue' globals.
7248         * remote.h (struct remote_target): Forward declare.
7249         (getpkt, putpkt, remote_notif_get_pending_events): Add
7250         'remote_target' parameter.
7251
7252 2018-05-22  Pedro Alves  <palves@redhat.com>
7253
7254         * remote.c (vcont_builder): Now a class.  Make all data members
7255         private.
7256         (vcont_builder) <vcont_builder, restart, flush, push_action>:
7257         Declare methods.
7258         (vcont_builder_restart): Rename to ...
7259         (vcont_builder::restart): ... this.
7260         (vcont_builder_flush): Rename to ...
7261         (vcont_builder::flush): ... this.
7262         (vcont_builder_push_action): Rename to ...
7263         (vcont_builder::push_action): ... this.
7264         (remote_target::commit_resume): Adjust.
7265
7266 2018-05-22  Pedro Alves  <palves@redhat.com>
7267
7268         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
7269         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
7270         (get_fixed_memory_packet_size): New.
7271         (get_memory_packet_size): Use it.
7272         (set_memory_packet_size): Don't override the config size with
7273         DEFAULT_MAX_MEMORY_PACKET_SIZE.
7274         (show_memory_packet_size): Use get_fixed_memory_packet_size.
7275         Don't refer to get_memory_packet_size if not connected to a remote
7276         target.  Show "(default)" if configured size is 0.
7277
7278 2018-05-22  Pedro Alves  <palves@redhat.com>
7279
7280         * remote.c (remote_target::mourn_inferior): Move
7281         discard_pending_stop_replies call here from ...
7282         (_initialize_remote): ... here.
7283
7284 2018-05-22  Pedro Alves  <palves@redhat.com>
7285
7286         * remote.c (compare_section_command): Remove set_general_process
7287         call.
7288
7289 2018-05-22  Pedro Alves  <palves@redhat.com>
7290
7291         * remote.c (struct packet_reg, struct remote_arch_state):
7292         Move higher up in the file.
7293         (remote_state) <m_arch_states>: Store remote_arch_state values
7294         instead of remote_arch_state pointers.
7295         (remote_state::get_remote_arch_state): Adjust.
7296
7297 2018-05-22  Pedro Alves  <palves@redhat.com>
7298
7299         * remote.c: Include <unordered_map>.
7300         (remote_state): Now a class.
7301         (remote_state) <get_remote_arch_state>: Declare method.
7302         <get_remote_arch_state>: New field.
7303         (remote_arch_state) <remote_arch_state>: Declare ctor.
7304         <regs>: Now a unique_ptr.
7305         (remote_gdbarch_data_handle): Delete.
7306         (get_remote_arch_state): Delete.
7307         (remote_state::get_remote_arch_state): New.
7308         (get_remote_state): Adjust to call remote_state's
7309         get_remote_arch_state method.
7310         (init_remote_state): Delete, bits factored out to ...
7311         (remote_arch_state::remote_arch_state): ... this new method.
7312         (get_remote_packet_size, get_memory_packet_size)
7313         (process_g_packet, remote_target::fetch_registers)
7314         (remote_target::prepare_to_store, store_registers_using_G)
7315         (remote_target::store_registers, remote_target::get_trace_status):
7316         Adjust to call remote_state's method.
7317         (_initialize_remote): Remove reference to
7318         remote_gdbarch_data_handle.
7319
7320 2018-05-22  Pedro Alves  <palves@redhat.com>
7321
7322         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
7323         pread>: New method declarations.
7324         (remote_target::open_1): Adjust.
7325         (readahead_cache_invalidate): Rename to ...
7326         (readahead_cache::invalidate): ... this, and adjust to be a class
7327         method.
7328         (readahead_cache_invalidate_fd): Rename to ...
7329         (readahead_cache::invalidate_fd): ... this, and adjust to be a
7330         class method.
7331         (remote_hostio_pwrite): Adjust.
7332         (remote_hostio_pread_from_cache): Rename to ...
7333         (readahead_cache::pread): ... this, and adjust to be a class
7334         method.
7335         (remote_hostio_close): Adjust.
7336
7337 2018-05-22  Pedro Alves  <palves@redhat.com>
7338
7339         * remote.c (remote_hostio_close_cleanup): Delete.
7340         (class scoped_remote_fd): New.
7341         (remote_file_put, remote_file_get): Use it.
7342
7343 2018-05-22  Pedro Alves  <palves@redhat.com>
7344
7345         (struct vCont_action_support): Use bool and initialize all fields.
7346         (struct readahead_cache): Initialize all fields.
7347         (remote_state): Use bool and initialize all fields.
7348         (remote_state::remote_state, remote_state::~remote_state): New.
7349         (new_remote_state): Delete.
7350         (_initialize_remote): Use new to allocate remote_state.
7351
7352 2018-05-22  Pedro Alves  <palves@redhat.com>
7353             張俊芝  <zjz@zjz.name>
7354
7355         PR gdb/22973
7356         * c-exp.y: Include "c-support.h".
7357         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
7358         of tolower.  Use c_ident_is_alpha to scan names.
7359         * c-lang.c: Include "c-support.h".
7360         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
7361         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
7362         * c-support.h: New file, with bits factored out from ...
7363         * cp-name-parser.y: ... this file.
7364         Include "c-support.h".
7365         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
7366         c-support.h and renamed.
7367         (symbol_end, yylex): Adjust.
7368
7369 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7370
7371         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
7372         parameter type to CORE_ADDR.
7373         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
7374         parameter type in declaration to CORE_ADDR.
7375         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
7376         target_auxv_search to get AT_HWCAP and use the result to get the
7377         target description.
7378         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
7379         to CORE_ADDR. Remove the cast of the return value to unsigned
7380         long. Fix error predicate of target_auxv_search.
7381         (ppc_linux_nat_target::read_description): Change the type of the
7382         hwcap variable to CORE_ADDR.
7383
7384 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7385
7386         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
7387         if the size of fpscr is larger than 32 bits.
7388
7389 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7390
7391         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
7392         (ppc32_linux_vsxregmap): New global.
7393         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
7394         regcache_supply_regset, and regcache_collect_regset.
7395         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
7396         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
7397         (fetch_vsx_register, store_vsx_register): Remove.
7398         (fetch_vsx_registers): Add regno parameter. Get regset using
7399         ppc_linux_vsxregset. Use regset to supply registers.
7400         (store_vsx_registers): Add regno parameter. Get regset using
7401         ppc_linux_vsxregset. Use regset to collect registers.
7402         (fetch_register): Call fetch_vsx_registers instead of
7403         fetch_vsx_register.
7404         (store_register): Call store_vsx_registers instead of
7405         store_vsx_register.
7406         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
7407         new regno parameter.
7408         (store_ppc_registers): Call store_vsx_registers with -1 for the
7409         new regno parameter.
7410         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
7411         (ppc_collect_vsxregset): Remove.
7412
7413 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7414
7415         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
7416         offset fields.
7417         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
7418         for vector register offset fields.
7419         (ppc64_fbsd_reg_offsets): Likewise.
7420         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7421         to vector register offset fields.
7422         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7423         to vector register offset fields.
7424         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
7425         vector register offset fields.
7426         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
7427         initializers for vector register offset fields.
7428         (rs6000_aix64_reg_offsets): Likewise.
7429         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
7430         (ppc_supply_vrregset): Remove.
7431         (ppc_collect_vrregset): Remove.
7432         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
7433         (ppc_linux_vrregset) : New function.
7434         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
7435         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
7436         (ppc32_linux_vrregset): Remove.
7437         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
7438         and use result instead of ppc32_linux_vrregset.
7439         (ppc32_linux_reg_offsets): Remove initializers for vector register
7440         offset fields.
7441         (ppc64_linux_reg_offsets): Likewise.
7442         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
7443         * ppc-linux-nat.c: Include regset.h.
7444         (gdb_vrregset_t): Adjust comment to account for little-endian
7445         mode.
7446         (supply_vrregset, fill_vrregset): Remove.
7447         (fetch_altivec_register, store_altivec_register): Remove.
7448         (fetch_altivec_registers): Add regno parameter. Get regset using
7449         ppc_linux_vrregset. Use regset to supply registers.
7450         (store_altivec_registers): Add regno parameter. Get regset using
7451         ppc_linux_vrregset. Use regset to collect registers.
7452         (fetch_register): Call fetch_altivec_registers instead of
7453         fetch_altivec_register.
7454         (store_register): Call store_altivec_registers instead of
7455         store_altivec_register.
7456         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
7457         the new regno parameter.
7458         (store_ppc_registers): Call store_altivec_registers with -1 for
7459         the new regno parameter.
7460
7461 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7462
7463         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
7464         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
7465         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
7466         (gdb_vrregset_t): Change array type size to
7467         PPC_LINUX_SIZEOF_VRREGSET.
7468         (gdb_vsxregset_t): Change array type size to
7469         PPC_LINUX_SIZEOF_VSXREGSET.
7470         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
7471         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
7472         PPC_LINUX_SIZEOF_VSXREGSET.
7473
7474 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7475
7476         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
7477         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
7478         nat/ppc-linux.c.
7479         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
7480         ppc_linux_target_wordsize with tid.
7481         (ppc_linux_nat_target::read_description): Call ppc_linux_target
7482         wordsize with tid.
7483         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
7484         (ppc64_64bit_inferior_p): Add static and inline specifiers.
7485         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
7486         tid parameter. Remove static specifier.
7487         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
7488         (ppc_linux_target_wordsize): New declaration.
7489
7490 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7491
7492         * arch/ppc-linux-common.c: New file.
7493         * arch/ppc-linux-common.h: New file.
7494         * arch/ppc-linux-tdesc.h: New file.
7495         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
7496         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
7497         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
7498         arch/ppc-linux-tdesc.h.
7499         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
7500         arch/ppc-linux-tdesc.h.
7501         (ppc_linux_nat_target::read_description): Remove target
7502         description matching code. Fill a ppc_linux_features struct and
7503         call ppc_linux_match_description with it. Move comment about ISA
7504         2.05 to ppc-linux-common.c.
7505         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
7506         arch/ppc-linux-tdesc.h.
7507         (ppc_linux_core_read_description): Remove target description
7508         matching code. Fill a ppc_linux_features struct and call
7509         ppc_linux_match_description with it.
7510         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
7511         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
7512         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
7513         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
7514         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
7515         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
7516         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
7517         (tdesc_powerpc_e500l): Remove.
7518
7519 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
7520
7521         * ada-lang.c (catch_assert_command): Pass empty string instead
7522         of NULL for excep_string argument.
7523
7524 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7525
7526         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
7527         the width of the requested register exceeds the width of the
7528         `ptrace' data type.
7529
7530 2018-05-21  Tom Tromey  <tom@tromey.com>
7531
7532         * printcmd.c (output_command): Remove.
7533         (output_command_const): Rename to output_command.
7534         * valprint.h (output_command): Rename from output_command_const.
7535         * tracepoint.c (trace_dump_actions): Call output_command.
7536
7537 2018-05-21  Tom Tromey  <tom@tromey.com>
7538
7539         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
7540         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
7541         * ada-lang.h (create_ada_exception_catchpoint): Update.
7542         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
7543         std::string.
7544         (create_excep_cond_exprs, ~ada_catchpoint)
7545         (should_stop_exception, print_one_exception)
7546         (print_mention_exception, print_recreate_exception): Update.
7547         (ada_get_next_arg): Remove.
7548         (catch_ada_exception_command_split): Use std::string.  Change type
7549         of "excep_string", "cond_string".
7550         (catch_ada_exception_command): Update.
7551         (create_ada_exception_catchpoint): Change type of excep_string.
7552         (ada_exception_sal): Remove excep_string parameter.
7553         (~ada_catchpoint): Remove.
7554
7555 2018-05-21  Tom Tromey  <tom@tromey.com>
7556
7557         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
7558         cleanup.
7559
7560 2018-05-21  Tom Tromey  <tom@tromey.com>
7561
7562         * ada-lang.c (ada_exception_message_1, ada_exception_message):
7563         Return unique_xmalloc_ptr.
7564         (print_it_exception): Update.
7565
7566 2018-05-21  Tom Tromey  <tom@tromey.com>
7567
7568         * tracepoint.c (trace_dump_actions): Use std::string.
7569
7570 2018-05-21  Tom Tromey  <tom@tromey.com>
7571
7572         * symfile.c (reread_symbols): Use std::string for original_name.
7573
7574 2018-05-21  Tom Tromey  <tom@tromey.com>
7575
7576         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
7577         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
7578         constructor.
7579
7580 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
7581
7582         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
7583         instance to...
7584         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
7585         * objfiles.c (get_objfile_bfd_data): Allocate
7586         objfile_per_bfd_storage with obstack_new when allocating on
7587         obstack.
7588
7589 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7590
7591         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
7592         OBSTACK_ZALLOC.
7593         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
7594         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
7595         * mdebugread.c (mdebug_build_psymtabs): Likewise.
7596         (add_pending): Likewise.
7597         (parse_symbol): Likewise.
7598         (parse_partial_symbols): Likewise.
7599         (psymtab_to_symtab_1): Likewise.
7600         (new_psymtab): Likewise.
7601         (elfmdebug_build_psymtabs): Likewise.
7602         * minsyms.c (terminate_minimal_symbol_table): Likewise.
7603         * objfiles.c (get_objfile_bfd_data): Likewise.
7604         (objfile_register_static_link): Likewise.
7605         * psymtab.c (allocate_psymtab): Likewise.
7606         * stabsread.c (read_member_functions): Likewise.
7607         * xcoffread.c (xcoff_end_psymtab): Likewise.
7608
7609 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7610
7611         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
7612         compiler supports std::is_trivially_constructible.
7613         * common/poison.h: Include obstack.h.
7614         (IsMallocable): Define to is_trivially_constructible if the
7615         compiler supports it, define to true_type otherwise.
7616         (xobnew): New.
7617         (XOBNEW): Redefine.
7618         (xobnewvec): New.
7619         (XOBNEWVEC): Redefine.
7620         * gdb_obstack.h (obstack_zalloc): New.
7621         (OBSTACK_ZALLOC): Redefine.
7622         (obstack_calloc): New.
7623         (OBSTACK_CALLOC): Redefine.
7624         (obstack_new): New.
7625         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
7626         (gdbarch_obstack): New declaration in gdbarch.h, definition in
7627         gdbarch.c.
7628         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
7629         obstack_calloc/obstack_zalloc.
7630         (gdbarch_obstack_zalloc): Remove.
7631         * target-descriptions.c (tdesc_data_init): Use obstack_new.
7632
7633 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7634
7635         * stack.c (backtrace_command_1): Remove useless variable int i.
7636
7637 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7638
7639         * stack.c (print_frame_info): Fix comment.
7640
7641 2018-05-18  Tom Tromey  <tom@tromey.com>
7642
7643         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
7644         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
7645         (~dwarf2_per_objfile): Update
7646         (dwarf2_get_dwz_file): Use new.
7647         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
7648         unique_ptr.
7649
7650 2018-05-18  Tom Tromey  <tom@tromey.com>
7651
7652         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
7653         unique_ptr.
7654         * dwarf2read.c (struct dwp_file): Add constructor and
7655         initializers.
7656         (open_and_init_dwp_file): Return a unique_ptr.
7657         (dwarf2_per_objfile, create_dwp_hash_table)
7658         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
7659         (lookup_dwo_unit_in_dwp): Update.
7660         (open_and_init_dwp_file, get_dwp_file): Update.
7661
7662 2018-05-18  Tom Tromey  <tom@tromey.com>
7663
7664         * dwarf2read.c (dwarf2_per_objfile): Update.
7665         (struct mapped_index): Add initializers.
7666         (dwarf2_read_index): Use new.
7667         (dw2_symtab_iter_init): Update.
7668         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
7669         unique_ptr.
7670
7671 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
7672
7673         * dwarf2read.c (mapped_index) <total_size>: Remove.
7674
7675 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
7676
7677         * unittests/format_pieces-selftests.c (test_format_specifier):
7678         Add ARI comments.
7679
7680 2018-05-18  Tom Tromey  <tom@tromey.com>
7681
7682         * c-typeprint.c (maybe_print_hole): New function.
7683         (c_print_type_struct_field_offset): Update.
7684         (c_type_print_base_struct_union): Call maybe_print_hole.
7685
7686 2018-05-17  Keith Seitz  <keiths@redhat.com>
7687
7688         * breakpoint.c (build_bpstat_chain): New function, moved from
7689         bpstat_stop_status.
7690         (bpstat_stop_status): Add optional parameter, `stop_chain'.
7691         If no stop chain is passed, call build_bpstat_chain to build it.
7692         * breakpoint.h (build_bpstat_chain): Declare.
7693         (bpstat_stop_status): Move documentation here from breakpoint.c.
7694         * infrun.c (handle_signal_stop): Before eliding inlined frames,
7695         build the stop chain and pass it to skip_inline_frames.
7696         Pass this stop chain to bpstat_stop_status.
7697         * inline-frame.c: Include breakpoint.h.
7698         (stopped_by_user_bp_inline_frame): New function.
7699         (skip_inline_frames): Add parameter `stop_chain'.
7700         Move documention to inline-frame.h.
7701         If non-NULL, use stopped_by_user_bp_inline_frame to determine
7702         whether the frame should be elided.
7703         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
7704         Add moved documentation and update for new parameter.
7705
7706 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
7707
7708         PR cli/14975
7709         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
7710         unittests/format_pieces-selftests.c.
7711         * common/format.h (format_piece) <operator==>: New.
7712         (format_pieces) <operator[]>: Remove.
7713         * common/format.c (format_pieces::format_pieces): Handle \e.
7714         * unittests/format_pieces-selftests.c: New.
7715
7716 2018-05-17  Tom Tromey  <tom@tromey.com>
7717
7718         PR symtab/23010:
7719         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
7720         (dw2_instantiate_symtab): Add skip_partial parameter.
7721         (dw2_find_last_source_symtab, dw2_map_expand_apply)
7722         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
7723         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
7724         (dw2_expand_symtabs_matching_one)
7725         (dw2_find_pc_sect_compunit_symtab)
7726         (dw2_debug_names_lookup_symbol)
7727         (dw2_debug_names_expand_symtabs_for_function): Update.
7728         (init_cutu_and_read_dies): Add skip_partial parameter.
7729         (process_psymtab_comp_unit, build_type_psymtabs_1)
7730         (process_skeletonless_type_unit, load_partial_comp_unit)
7731         (psymtab_to_symtab_1): Update.
7732         (load_full_comp_unit): Add skip_partial parameter.
7733         (process_imported_unit_die, dwarf2_read_addr_index)
7734         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
7735         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
7736         (read_signatured_type): Update.
7737
7738 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
7739
7740         * value.c (release_value): Remove unused variable.
7741         (record_latest_value): Likewise.
7742         (access_value_history): Likewise.
7743         (preserve_values): Likewise.
7744
7745 2018-05-17  Tom Tromey  <tom@tromey.com>
7746
7747         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
7748         Initialize.
7749
7750 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
7751
7752         PR gdb/22286
7753         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
7754         Also handle registers whose width is not a multiple of
7755         PTRACE_TYPE_RET.
7756         (linux_nat_trad_target::store_register): Likewise.
7757
7758 2018-05-16  Tom Tromey  <tom@tromey.com>
7759
7760         * gdbcore.h (core_bfd): Redefine.
7761         * corelow.c (core_target::close): Update.
7762         (core_target_open): Update.
7763         * progspace.h (struct program_space) <cbfd>: Now a
7764         gdb_bfd_ref_ptr.
7765
7766 2018-05-16  Tom Tromey  <tom@tromey.com>
7767
7768         PR cli/19551:
7769         * symfile-add-flags.h (enum symfile_add_flags)
7770         <SYMFILE_NOT_FILENAME>: New constant.
7771         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
7772         objfile name from BFD.
7773         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
7774         * minidebug.c (find_separate_debug_file_in_section): Put
7775         ".gnu_debugdata" into BFD's file name.
7776
7777 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
7778
7779         * regcache.c (regcache_read_ftype, regcache_write_ftype):
7780         Remove.
7781
7782 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
7783
7784         PR binutils/21446
7785         * aarch64-tdep.c (aarch64_analyze_prologue,
7786         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
7787         Indicate not interested in errors.
7788
7789 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
7790
7791         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
7792         Supply the MIPS_ZERO_REGNUM register.
7793
7794 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
7795
7796         * mips-tdep.c (mask_address_var): Make variable static.
7797
7798 2018-05-14  Tom Tromey  <tom@tromey.com>
7799
7800         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
7801
7802 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
7803
7804         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
7805         FXSAVE_ADDR for the mxcsr register.
7806
7807 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
7808
7809         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
7810
7811 2018-05-11  Pedro Alves  <palves@redhat.com>
7812
7813         * corelow.c (core_target) <core_target>: No longer inline.
7814         Initialize m_core_gdbarch, m_core_vec and build the section table
7815         here.
7816         <~core_target>: New.
7817         <core_gdbarch, get_core_register_section>: New methods.
7818         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
7819         factored out from ...
7820         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
7821         (core_ops): Delete.
7822         (sniff_core_bfd): Add gdbarch parameter.
7823         (core_close): Delete, merged into ...
7824         (core_target::close): ... here.  Delete self.
7825         (core_close_cleanup): Delete.
7826         (core_target_open): Allocate a core_target on the heap.  Use a
7827         unique_ptr instead of a cleanup.  Bits moved into the core_target
7828         ctor.  Adjust to use core_target methods instead of globals.
7829         (get_core_register_section): Rename to ...
7830         (core_target::get_core_register_section): ... this and adjust.
7831         (struct get_core_registers_cb_data): New.
7832         (get_core_registers_cb): Use it.  Use bool.
7833         (core_target::fetch_registers, core_target::files_info)
7834         (core_target::xfer_partial, core_target::read_description)
7835         (core_target::pid_to, core_target::thread_name): Adjust to
7836         reference class fields instead of globals.
7837         * target.h (struct target_ops_deleter, target_ops_up): New.
7838
7839 2018-05-11  Pedro Alves  <palves@redhat.com>
7840
7841         * corefile.c (core_file_command): Move to corelow.c.
7842         * corelow.c (the_core_target): Delete.
7843         (core_file_command): Moved from corefile.c.  Check exec_bfd
7844         instead of the_core_target.  Use target_detach instead of calling
7845         into the_core_target directly.
7846         (maybe_say_no_core_file_now): New.
7847         (core_target::detach): Use it.
7848         (_initialize_corelow): Remove references to the_core_target.
7849         * gdbcore.h (the_core_target): Delete.
7850
7851 2018-05-11  Tom Tromey  <tromey@redhat.com>
7852             Pedro Alves  <palves@redhat.com>
7853
7854         * corefile.c (core_bfd): Remove.
7855         * gdbcore.h (core_bfd): Now a macro.
7856         * progspace.h (struct program_space) <cbfd>: New field.
7857
7858 2018-05-11  Tom Tromey  <tom@tromey.com>
7859
7860         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
7861         gdb::def_vector.
7862
7863 2018-05-10  Tom Tromey  <tom@tromey.com>
7864
7865         * configure: Rebuild.
7866         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
7867
7868 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
7869
7870         PR server/23158:
7871         * regformats/regdat.sh: Adjust script, following the addition
7872         of the new expedite_regs parameter to init_target_desc.
7873
7874 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
7875     
7876         PR gdb/23127
7877         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
7878         set_gdbarch_significant_addr_bit.
7879         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
7880         set_gdbarch_significant_addr_bit.
7881         * utils.c (address_significant): Update to sign extend addr.
7882
7883 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
7884
7885         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
7886         (xtensa_linux_init_abi): Limit tdep->num_regs by
7887         tdep->num_nopriv_regs.
7888         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
7889         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
7890         not initialized.
7891
7892 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
7893
7894         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
7895
7896 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
7897
7898         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
7899         (I387_MXCSR_INIT_VAL): New constant.
7900         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
7901         buffer if it was supplied by the inferior.
7902         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
7903         (i387_xsave_get_clear_bv): New function.
7904         (i387_supply_xsave): Only read x87 control registers from the
7905         xsave buffer if the feature is enabled, and the state will have
7906         been written, otherwise, provide a suitable default.
7907         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
7908         including x87 control registers.  Update control registers if they
7909         have changed from the default value, and mark features as enabled
7910         as required.
7911         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
7912
7913 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
7914
7915         * spu-tdep.c (info_spu_event_command): Fix output formatting.
7916
7917 2018-05-07  Tom Tromey  <tom@tromey.com>
7918
7919         * configure: Rebuild.
7920         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
7921
7922 2018-05-07  Tom Tromey  <tom@tromey.com>
7923
7924         PR tdep/20362:
7925         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
7926         bit.  Use correct value for VDIV.
7927
7928 2018-05-04  Tom Tromey  <tom@tromey.com>
7929
7930         * configure: Rebuild.
7931         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
7932
7933 2018-05-04  Tom Tromey  <tom@tromey.com>
7934
7935         * linux-record.c (record_linux_system_call) <case
7936         RECORD_SYS_RECVFROM>: Add "break".
7937
7938 2018-05-04  Tom Tromey  <tom@tromey.com>
7939
7940         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
7941         Add missing "break".
7942         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
7943         Add missing "break".
7944
7945 2018-05-04  Tom Tromey  <tom@tromey.com>
7946
7947         * rs6000-tdep.c (ppc_process_record_op4)
7948         (ppc_process_record_op63): Add fall-through comment.
7949
7950 2018-05-04  Tom Tromey  <tom@tromey.com>
7951
7952         * i386-tdep.c (i386_process_record): Add fall-through comment.
7953
7954 2018-05-04  Tom Tromey  <tom@tromey.com>
7955
7956         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
7957         comment.
7958
7959 2018-05-04  Tom Tromey  <tom@tromey.com>
7960
7961         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
7962         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
7963         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
7964         comment.
7965         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
7966         comment.
7967         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
7968         comment.
7969
7970 2018-05-04  Tom Tromey  <tom@tromey.com>
7971
7972         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
7973
7974 2018-05-04  Tom Tromey  <tom@tromey.com>
7975
7976         * s390-tdep.c (s390_process_record): Fix fall-through comments.
7977         * xcoffread.c (scan_xcoff_symtab): Move comment later.
7978         * symfile.c (section_is_mapped): Fix fall-through comment.
7979         * stabsread.c (define_symbol, read_member_functions): Fix
7980         fall-through comment.
7981         * s390-linux-tdep.c (s390_process_record): Fix fall-through
7982         comment.
7983         * remote.c (remote_wait_as): Fix fall-through comment.
7984         * p-exp.y (yylex): Fix fall-through comment.
7985         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
7986         comment.
7987         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
7988         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
7989         * jv-exp.y (yylex): Fix fall-through comment.
7990         * go-exp.y (lex_one_token): Fix fall-through comment.
7991         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
7992         fall-through comment.
7993         * f-exp.y (yylex): Fix fall-through comment.
7994         * dwarf2read.c (process_die): Fix fall-through comments.
7995         * dbxread.c (process_one_symbol): Fix fall-through comment.
7996         * d-exp.y (lex_one_token): Fix fall-through comment.
7997         * cp-name-parser.y (yylex): Fix fall-through comment.
7998         * coffread.c (coff_symtab_read): Fix fall-through comment.
7999         * c-exp.y (lex_one_token): Fix fall-through comment.
8000         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
8001         comment.
8002         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
8003         comment.
8004
8005 2018-05-04  Tom Tromey  <tom@tromey.com>
8006
8007         PR python/22730:
8008         * NEWS: Mention gdb.execute change.
8009         * gdbcmd.h (execute_control_command): Don't declare.
8010         * python/python.c (execute_gdb_command): Use read_command_lines_1,
8011         execute_control_commands, execute_control_commands_to_string.
8012         * cli/cli-script.h (execute_control_commands)
8013         (execute_control_commands_to_string): Declare.
8014         (execute_control_command): Add from_tty parameter.
8015         * cli/cli-script.c (execute_control_commands)
8016         (execute_control_commands_to_string): New functions.
8017         (execute_user_command): Use execute_control_commands.
8018         (execute_control_command_1): Add "from_tty" parameter.  Update.
8019         (execute_control_command): Likewise.
8020
8021 2018-05-04  Tom Tromey  <tom@tromey.com>
8022
8023         PR python/22731:
8024         * NEWS: Mention that breakpoint commands are writable.
8025         * python/py-breakpoint.c (bppy_set_commands): New function.
8026         (breakpoint_object_getset) <"commands">: Use it.
8027
8028 2018-05-04  Tom Tromey  <tom@tromey.com>
8029
8030         * tracepoint.c (actions_command): Update.
8031         * mi/mi-cmd-break.c (mi_command_line_array)
8032         (mi_command_line_array_cnt, mi_command_line_array_ptr)
8033         (mi_read_next_line): Remove.
8034         (mi_cmd_break_commands): Update.
8035         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
8036         function_view.
8037         * cli/cli-script.c (get_command_line): Update.
8038         (process_next_line): Use function_view.  Constify.
8039         (recurse_read_control_structure, read_command_lines)
8040         (read_command_lines_1): Change argument types to function_view.
8041         (do_define_command, document_command): Update.
8042         * breakpoint.h (check_tracepoint_command): Don't declare.
8043         * breakpoint.c (check_tracepoint_command): Remove.
8044         (commands_command_1, create_tracepoint_from_upload): Update.
8045
8046 2018-05-04  Tom Tromey  <tom@tromey.com>
8047
8048         PR gdb/11750:
8049         * cli/cli-script.h (enum command_control_type) <define_control>:
8050         New constant.
8051         * cli/cli-script.c (multi_line_command_p): Handle define_control.
8052         (build_command_line, execute_control_command_1)
8053         (process_next_line): Likewise.
8054         (do_define_command): New function, extracted from define_command.
8055         (define_command): Use it.
8056
8057 2018-05-04  Tom Tromey  <tom@tromey.com>
8058
8059         * tracepoint.c (actions_command): Update.
8060         * cli/cli-script.h (read_command_lines): Update.
8061         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
8062         (MAX_TMPBUF): Remove define.
8063         (define_command): Use string_printf.
8064         (document_command): Likewise.
8065         * breakpoint.c (commands_command_1): Update.
8066
8067 2018-05-04  Tom Tromey  <tom@tromey.com>
8068
8069         * top.c (execute_command): Update.
8070         * cli/cli-script.h (print_command_lines): Now varargs.
8071         * cli/cli-script.c (print_command_lines): Now varargs.
8072         (execute_control_command_1) <case while_control, case if_control>:
8073         Update.
8074
8075 2018-05-04  Tom Tromey  <tom@tromey.com>
8076
8077         * tracepoint.c (all_tracepoint_actions): Rename from
8078         all_tracepoint_actions_and_cleanup.  Change return type.
8079         (actions_command, encode_actions_1, encode_actions)
8080         (trace_dump_actions, tdump_command): Update.
8081         * remote.c (remote_download_command_source): Update.
8082         * python/python.c (gdbpy_eval_from_control_command)
8083         (python_command, python_interactive_command): Update.
8084         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
8085         * guile/guile.c (guile_command)
8086         (gdbscm_eval_from_control_command, guile_command): Update.
8087         * compile/compile.c (compile_code_command)
8088         (compile_print_command, compile_to_object): Update.
8089         * cli/cli-script.h (struct command_lines_deleter): New.
8090         (counted_command_line): New typedef.
8091         (struct command_line): Add constructor, destructor.
8092         <body_list>: Remove.
8093         <body_list_0, body_list_1>: New members.
8094         (command_line_up): Remove typedef.
8095         (read_command_lines, read_command_lines_1, get_command_line):
8096         Update.
8097         (copy_command_lines): Don't declare.
8098         * cli/cli-script.c (build_command_line): Use "new".
8099         (get_command_line): Return counted_command_line.
8100         (print_command_lines, execute_user_command)
8101         (execute_control_command_1, while_command, if_command): Update.
8102         (realloc_body_list): Remove.
8103         (process_next_line, recurse_read_control_structure): Update.
8104         (read_command_lines, read_command_lines_1): Return counted_command_line.
8105         (free_command_lines): Use "delete".
8106         (copy_command_lines): Remove.
8107         (define_command, document_command, show_user_1): Update.
8108         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
8109         a counted_command_line.
8110         * breakpoint.h (counted_command_line): Remove typedef.
8111         (breakpoint_set_commands): Update.
8112         * breakpoint.c (check_no_tracepoint_commands)
8113         (validate_commands_for_breakpoint): Update.
8114         (breakpoint_set_commands): Change commands to be a
8115         counted_command_line.
8116         (commands_command_1, update_dprintf_command_list)
8117         (create_tracepoint_from_upload): Update.
8118
8119 2018-05-04  Tom Tromey  <tom@tromey.com>
8120
8121         * cli/cli-decode.h (cmd_list_element): New constructor.
8122         (~cmd_list_element): New destructor.
8123         (struct cmd_list_element): Add initializers.
8124         * cli/cli-decode.c (do_add_cmd): Use "new".
8125         (delete_cmd): Use "delete".
8126
8127 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
8128             Pedro Alves <palves@redhat.com>
8129
8130         PR breakpoints/19806 and support for PR external/20207.
8131         * NEWS: Mention Aarch64 watchpoint improvements.
8132         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
8133         watchpoints and PR external/20207 watchpoints.
8134         * nat/aarch64-linux-hw-point.c
8135         (kernel_supports_any_contiguous_range): New.
8136         (aarch64_watchpoint_offset): New.
8137         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
8138         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
8139         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
8140         (aarch64_align_watchpoint): New parameters aligned_offset_p and
8141         next_addr_orig_p.  Support PR external/20207 watchpoints.
8142         (aarch64_downgrade_regs): New.
8143         (aarch64_dr_state_insert_one_point): New parameters offset and
8144         addr_orig.
8145         (aarch64_dr_state_remove_one_point): Likewise.
8146         (aarch64_handle_breakpoint): Update caller.
8147         (aarch64_handle_aligned_watchpoint): Likewise.
8148         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
8149         aligned_offset.
8150         (aarch64_linux_set_debug_regs): Remove const from state.  Call
8151         aarch64_downgrade_regs.
8152         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
8153         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
8154         (DR_CONTROL_MASK): ... this.
8155         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
8156         (unsigned int aarch64_watchpoint_offset): New prototype.
8157         (aarch64_linux_set_debug_regs): Remove const from state.
8158         * utils.c (align_up, align_down): Move to ...
8159         * common/common-utils.c (align_up, align_down): ... here.
8160         * utils.h (align_up, align_down): Move to ...
8161         * common/common-utils.h (align_up, align_down): ... here.
8162
8163 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
8164
8165         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
8166         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
8167         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
8168         Re-implement to match the ABI as summarized in GCC's
8169         gcc/config/sparc/sparc.c.  All callers updated.
8170         (sparc32_store_arguments): Remove assertion.
8171
8172 2018-05-04  Tom Tromey  <tom@tromey.com>
8173
8174         * printcmd.c: Don't include tui.h.
8175         (decode_format): Use skip_spaces.
8176
8177 2018-05-04  Tom Tromey  <tom@tromey.com>
8178
8179         PR gdb/22619:
8180         * printcmd.c (last_count): New global.
8181         (x_command): Use saved count when repeating.
8182
8183 2018-05-04  Tom Tromey  <tom@tromey.com>
8184
8185         * nto-procfs.c (do_closedir_cleanup): Remove.
8186         (procfs_pidlist): Use gdb_dir_up.
8187         * procfs.c (do_closedir_cleanup): Remove.
8188         (proc_update_threads): Use gdb_dir_up.
8189         * common/filestuff.h (struct gdb_dir_deleter): New.
8190         (gdb_dir_up): New typedef.
8191
8192 2018-05-04  Tom Tromey  <tom@tromey.com>
8193
8194         * ada-lang.c (print_mention_exception): Use std::string.
8195
8196 2018-05-04  Tom Tromey  <tom@tromey.com>
8197
8198         * ada-lang.c (create_excep_cond_exprs): Update.
8199         (ada_exception_catchpoint_cond_string): Use std::string.
8200
8201 2018-05-04  Tom Tromey  <tom@tromey.com>
8202
8203         * ada-lang.c (xget_renaming_scope): Return std::string.
8204         (old_renaming_is_invisible): Update.
8205
8206 2018-05-04  Tom Tromey  <tom@tromey.com>
8207
8208         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
8209         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
8210
8211 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
8212
8213         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
8214
8215 2018-05-04  Tom Tromey  <tom@tromey.com>
8216
8217         * remote.c (remote_query_supported_append): Change type.
8218         (remote_check_symbols): Update.
8219
8220 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
8221
8222         PR gdb/11420
8223         * configure.ac: Prepend libpython.
8224         * python/python-config.py: Likewise.
8225         * configure: Regenerate.
8226
8227 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
8228
8229         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
8230
8231 2018-05-03  Pedro Alves  <palves@redhat.com>
8232
8233         * s390-linux-nat.c
8234         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
8235         override.  Write 'true' instead of '1'.
8236         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
8237         declaration.
8238
8239 2018-05-02  Pedro Alves  <palves@redhat.com>
8240
8241         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
8242         add_inf_child_target.
8243         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
8244         add_inf_child_target.
8245         * aix-thread.c (aix_thread_target_info): New.
8246         (aix_thread_target) <shortname, longname, doc>: Delete.
8247         <info>: New.
8248         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
8249         add_inf_child_target.
8250         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
8251         add_inf_child_target.
8252         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
8253         add_inf_child_target.
8254         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
8255         add_inf_child_target.
8256         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
8257         add_inf_child_target.
8258         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
8259         add_inf_child_target.
8260         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
8261         add_inf_child_target.
8262         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
8263         add_inf_child_target.
8264         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
8265         add_inf_child_target.
8266         * bfd-target.c (target_bfd_target_info): New.
8267         (target_bfd) <shortname, longname, doc>: Delete.
8268         <info>: New.
8269         * bsd-kvm.c (bsd_kvm_target_info): New.
8270         (bsd_kvm_target) <shortname, longname, doc>: Delete.
8271         <info>: New.
8272         (bsd_kvm_target::open): Rename to ...
8273         (bsd_kvm_target_open): ... this.  Adjust.
8274         * bsd-uthread.c (bsd_uthread_target_info): New.
8275         (bsd_uthread_target) <shortname, longname, doc>: Delete.
8276         <info>: New.
8277         * corefile.c (core_file_command): Adjust.
8278         * corelow.c (core_target_info): New.
8279         (core_target) <shortname, longname, doc>: Delete.
8280         <info>: New.
8281         (core_target::open): Rename to ...
8282         (core_target_open): ... this.  Adjust.
8283         * ctf.c (ctf_target_info): New.
8284         (ctf_target) <shortname, longname, doc>: Delete.
8285         <info>: New.
8286         (ctf_target::open): Rename to ...
8287         (ctf_target_open): ... this.
8288         (_initialize_ctf): Adjust.
8289         * exec.c (exec_target_info): New.
8290         (exec_target) <shortname, longname, doc>: Delete.
8291         <info>: New.
8292         (exec_target::open): Rename to ...
8293         (exec_target_open): ... this.
8294         * gdbcore.h (core_target_open): Declare.
8295         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
8296         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
8297         add_inf_child_target.
8298         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
8299         add_inf_child_target.
8300         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
8301         add_inf_child_target.
8302         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
8303         add_inf_child_target.
8304         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
8305         add_inf_child_target.
8306         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
8307         add_inf_child_target.
8308         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
8309         add_inf_child_target.
8310         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
8311         add_inf_child_target.
8312         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
8313         add_inf_child_target.
8314         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
8315         add_inf_child_target.
8316         * inf-child.c (inf_child_target_info): New.
8317         (inf_child_target::info): New.
8318         (inf_child_open_target): Remove 'target' parameter.  Use
8319         get_native_target instead.
8320         (inf_child_target::open): Delete.
8321         (add_inf_child_target): New.
8322         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
8323         Delete.
8324         <info>: New.
8325         (add_inf_child_target): Declare.
8326         (inf_child_open_target): Declare.
8327         * linux-thread-db.c (thread_db_target_info): New.
8328         (thread_db_target) <shortname, longname, doc>: Delete.
8329         <info>: New.
8330         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
8331         add_inf_child_target.
8332         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
8333         add_inf_child_target.
8334         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
8335         add_inf_child_target.
8336         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
8337         add_inf_child_target.
8338         * make-target-delegates (print_class): Adjust.
8339         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
8340         add_inf_child_target.
8341         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
8342         add_inf_child_target.
8343         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
8344         add_inf_child_target.
8345         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
8346         add_inf_child_target.
8347         * nto-procfs.c (nto_native_target_info): New.
8348         (nto_procfs_target_native) <shortname, longname, doc>:
8349         Delete.
8350         <info>: New.
8351         (nto_procfs_target_info): New.
8352         (nto_procfs_target_procfs) <shortname, longname, doc>:
8353         Delete.
8354         <info>: New.
8355         (init_procfs_targets): Adjust.
8356         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
8357         add_inf_child_target.
8358         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
8359         add_inf_child_target.
8360         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
8361         add_inf_child_target.
8362         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
8363         add_inf_child_target.
8364         * ravenscar-thread.c (ravenscar_target_info): New.
8365         (ravenscar_thread_target) <shortname, longname, doc>:
8366         Delete.
8367         <info>: New.
8368         * record-btrace.c (record_btrace_target_info):
8369         (record_btrace_target) <shortname, longname, doc>: Delete.
8370         <info>: New.
8371         (record_btrace_target::open): Rename to ...
8372         (record_btrace_target_open): ... this.  Adjust.
8373         * record-full.c (record_longname, record_doc): New.
8374         (record_full_base_target) <shortname, longname, doc>: Delete.
8375         <info>: New.
8376         (record_full_target_info): New.
8377         (record_full_target): <shortname>: Delete.
8378         <info>: New.
8379         (record_full_core_open_1, record_full_open_1): Update comments.
8380         (record_full_base_target::open): Rename to ...
8381         (record_full_open): ... this.
8382         (cmd_record_full_restore): Update.
8383         (_initialize_record_full): Update.
8384         * remote-sim.c (remote_sim_target_info): New.
8385         (gdbsim_target) <shortname, longname, doc>: Delete.
8386         <info>: New.
8387         (gdbsim_target::open): Rename to ...
8388         (gdbsim_target_open): ... this.
8389         (_initialize_remote_sim): Adjust.
8390         * remote.c (remote_doc): New.
8391         (remote_target_info): New.
8392         (remote_target) <shortname, longname, doc>: Delete.
8393         <info>: New.
8394         (extended_remote_target_info): New.
8395         (extended_remote_target) <shortname, longname, doc>: Delete.
8396         <info>: New.
8397         (remote_target::open_1): Make static.  Adjust.
8398         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
8399         * s390-linux-nat.c (_initialize_s390_nat): Use
8400         add_inf_child_target.
8401         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
8402         add_inf_child_target.
8403         * sol-thread.c (thread_db_target_info): New.
8404         (sol_thread_target) <shortname, longname, doc>: Delete.
8405         <info>: New.
8406         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
8407         add_inf_child_target.
8408         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
8409         add_inf_child_target.
8410         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
8411         add_inf_child_target.
8412         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
8413         add_inf_child_target.
8414         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
8415         add_inf_child_target.
8416         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
8417         add_inf_child_target.
8418         * spu-linux-nat.c (_initialize_spu_nat): Use
8419         add_inf_child_target.
8420         * spu-multiarch.c (spu_multiarch_target_info): New.
8421         (spu_multiarch_target) <shortname, longname, doc>: Delete.
8422         <info>: New.
8423         * target-delegates.c: Regenerate.
8424         * target.c: Include <unordered_map>.
8425         (target_ops_p): Delete.
8426         (DEF_VEC_P(target_ops_p)): Delete.
8427         (target_factories): New.
8428         (test_target_info): New.
8429         (test_target_ops::info): New.
8430         (open_target): Adjust to use target_factories.
8431         (add_target_with_completer): Rename to ...
8432         (add_target): ... this.  Change prototype.  Register target_info
8433         and open callback in target_factories.  Register target_info in
8434         command context instead of target_ops.
8435         (add_target): Delete old implementation.
8436         (add_deprecated_target_alias): Change prototype.  Adjust.
8437         (the_native_target): New.
8438         (set_native_target, get_native_target): New.
8439         (find_default_run_target): Use the_native_target.
8440         (find_attach_target, find_run_target): Simplify.
8441         (target_ops::open): Delete.
8442         (dummy_target_info): New.
8443         (dummy_target::shortname, dummy_target::longname)
8444         (dummy_target::doc): Delete.
8445         (dummy_target::info): New.
8446         (debug_target::shortname, debug_target::longname)
8447         (debug_target::doc): Delete.
8448         (debug_target::info): New.
8449         * target.h (struct target_info): New.
8450         (target_ops::~target_ops): Add comment.
8451         (target_ops::info): New.
8452         (target_ops::shortname, target_ops::longname, target_ops::doc): No
8453         longer virtual.  Implement in terms of target_info.
8454         (set_native_target, get_native_target): Declare.
8455         (target_open_ftype): New.
8456         (add_target, add_target_with_completer)
8457         (add_deprecated_target_alias): Change prototype.
8458         (test_target) <shortname, longname, doc>: Delete.
8459         <info>: New.
8460         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
8461         add_inf_child_target.
8462         * tracefile-tfile.c (tfile_target_info): New.
8463         (tfile_target) <shortname, longname, doc>: Delete.
8464         <info>: New.
8465         (tfile_target::open): Rename to ...
8466         (tfile_target_open): ... this.
8467         (_initialize_tracefile_tfile): Adjust.
8468         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
8469         add_inf_child_target.
8470         * windows-nat.c (_initialize_windows_nat): Use
8471         add_inf_child_target.
8472         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
8473         add_inf_child_target.
8474
8475 2018-05-02  Pedro Alves  <palves@redhat.com>
8476
8477         * linux-nat.h (linux_nat_target) <low_new_thread,
8478         low_delete_thread, low_new_fork, low_forget_process,
8479         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
8480         New virtual methods.
8481         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8482         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
8483         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
8484         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8485         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
8486         Delete.
8487         * linux-fork.c (delete_fork): Adjust to call low method.
8488         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
8489         (linux_nat_new_fork, linux_nat_forget_process_hook)
8490         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
8491         (linux_nat_status_is_event):
8492         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
8493         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
8494         to call low method.
8495         (sigtrap_is_event): Rename to ...
8496         (linux_nat_target::low_status_is_event): ... this.
8497         (linux_nat_set_status_is_event): Delete.
8498         (save_stop_reason, linux_nat_wait_1)
8499         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
8500         low methods.
8501         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8502         (linux_nat_set_new_fork, linux_nat_set_forget_process)
8503         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8504         (linux_nat_set_prepare_to_resume): Delete.
8505         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
8506         low virtual methods.
8507         * amd64-linux-nat.c: Likewise.
8508         * arm-linux-nat.c: Likewise.
8509         * i386-linux-nat.c: Likewise.
8510         * ia64-linux-nat.c: Likewise.
8511         * mips-linux-nat.c: Likewise.
8512         * ppc-linux-nat.c: Likewise.
8513         * s390-linux-nat.c: Likewise.
8514         * sparc64-linux-nat.c: Likewise.
8515         * x86-linux-nat.c: Likewise.
8516         * x86-linux-nat.h: Include "nat/x86-linux.h".
8517         (x86_linux_nat_target) <low_new_fork, low_forget_process,
8518         low_prepare_to_resume, low_new_thread, low_delete_thread>:
8519         Override methods.
8520
8521 2018-05-02  Pedro Alves  <palves@redhat.com>
8522
8523         * target.h (target_ops)
8524         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
8525         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
8526         stopped_by_watchpoint, have_continuable_watchpoint,
8527         stopped_data_address, watchpoint_addr_within_range,
8528         can_accel_watchpoint_condition, can_run, thread_alive,
8529         has_all_memory, has_memory, has_stack, has_registers,
8530         has_execution, can_async_p, is_async_p, supports_non_stop,
8531         always_non_stop_p, can_execute_reverse, supports_multi_process,
8532         supports_enable_disable_tracepoint,
8533         supports_disable_randomization, supports_string_tracing,
8534         supports_evaluation_of_breakpoint_conditions,
8535         can_run_breakpoint_commands, filesystem_is_local,
8536         can_download_tracepoint, get_trace_state_variable_value,
8537         set_trace_notes, get_tib_address, use_agent, can_use_agent,
8538         record_is_replaying, record_will_replay,
8539         augmented_libraries_svr4_read>: Adjust to return bool.
8540         * aarch64-linux-nat.c: All implementations adjusted.
8541         * aix-thread.c: All implementations adjusted.
8542         * arm-linux-nat.c: All implementations adjusted.
8543         * breakpoint.c: All implementations adjusted.
8544         * bsd-kvm.c: All implementations adjusted.
8545         * bsd-uthread.c: All implementations adjusted.
8546         * corelow.c: All implementations adjusted.
8547         * ctf.c: All implementations adjusted.
8548         * darwin-nat.c: All implementations adjusted.
8549         * darwin-nat.h: All implementations adjusted.
8550         * exec.c: All implementations adjusted.
8551         * fbsd-nat.c: All implementations adjusted.
8552         * fbsd-nat.h: All implementations adjusted.
8553         * gnu-nat.c: All implementations adjusted.
8554         * gnu-nat.h: All implementations adjusted.
8555         * go32-nat.c: All implementations adjusted.
8556         * ia64-linux-nat.c: All implementations adjusted.
8557         * inf-child.c: All implementations adjusted.
8558         * inf-child.h: All implementations adjusted.
8559         * inf-ptrace.c: All implementations adjusted.
8560         * inf-ptrace.h: All implementations adjusted.
8561         * linux-nat.c: All implementations adjusted.
8562         * linux-nat.h: All implementations adjusted.
8563         * mips-linux-nat.c: All implementations adjusted.
8564         * nto-procfs.c: All implementations adjusted.
8565         * ppc-linux-nat.c: All implementations adjusted.
8566         * procfs.c: All implementations adjusted.
8567         * ravenscar-thread.c: All implementations adjusted.
8568         * record-btrace.c: All implementations adjusted.
8569         * record-full.c: All implementations adjusted.
8570         * remote-sim.c: All implementations adjusted.
8571         * remote.c: All implementations adjusted.
8572         * s390-linux-nat.c: All implementations adjusted.
8573         * sol-thread.c: All implementations adjusted.
8574         * spu-multiarch.c: All implementations adjusted.
8575         * target-delegates.c: All implementations adjusted.
8576         * target.c: All implementations adjusted.
8577         * target.h: All implementations adjusted.
8578         * tracefile-tfile.c: All implementations adjusted.
8579         * tracefile.c: All implementations adjusted.
8580         * tracefile.h: All implementations adjusted.
8581         * windows-nat.c: All implementations adjusted.
8582         * x86-linux-nat.h: All implementations adjusted.
8583         * x86-nat.h: All implementations adjusted.
8584
8585 2018-05-02  Pedro Alves  <palves@redhat.com>
8586
8587         * make-target-delegates (scan_target_h): Don't trim lines here.
8588         Replace sequences of tabs and/or whitespace with a single
8589         whitespace.
8590         (top level, parsing methods): Trim each line before processing it
8591         here.
8592
8593 2018-05-02  Pedro Alves  <palves@redhat.com>
8594             John Baldwin  <jhb@freebsd.org>
8595
8596         * target.h (enum strata) <debug_stratum>: New.
8597         (struct target_ops) <all delegation methods>: Replace by C++
8598         virtual methods, and drop "to_" prefix.  All references updated
8599         throughout.
8600         <to_shortname, to_longname, to_doc, to_data,
8601         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
8602         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
8603         virtual methods.  All references updated throughout.
8604         <can_attach, supports_terminal_ours, can_create_inferior,
8605         get_thread_control_capabilities, attach_no_wait>: New
8606         virtual methods.
8607         <insert_breakpoint, remove_breakpoint>: Now
8608         TARGET_DEFAULT_NORETURN methods.
8609         <info_proc>: Now returns bool.
8610         <to_magic>: Delete.
8611         (OPS_MAGIC): Delete.
8612         (current_target): Delete.  All references replaced by references
8613         to ...
8614         (target_stack): ... this.  New.
8615         (target_shortname, target_longname): Adjust.
8616         (target_can_run): Now a function declaration.
8617         (default_child_has_all_memory, default_child_has_memory)
8618         (default_child_has_stack, default_child_has_registers)
8619         (default_child_has_execution): Remove target_ops parameter.
8620         (complete_target_initialization): Delete.
8621         (memory_breakpoint_target): New template class.
8622         (test_target_ops): Refactor as a C++ class with virtual methods.
8623         * make-target-delegates (NAME_PART): Tighten.
8624         (POINTER_PART, CP_SYMBOL): New.
8625         (SIMPLE_RETURN_PART): Reimplement.
8626         (VEC_RETURN_PART): Expect less.
8627         (RETURN_PART, VIRTUAL_PART): New.
8628         (METHOD): Adjust to C++ virtual methods.
8629         (scan_target_h): Remove reference to C99.
8630         (dname): Output "target_ops::" prefix.
8631         (write_function_header): Adjust to output a C++ class method.
8632         (write_declaration): New.
8633         (write_delegator): Adjust to output a C++ class method.
8634         (tdname): Output "dummy_target::" prefix.
8635         (write_tdefault, write_debugmethod): Adjust to output a C++ class
8636         method.
8637         (tdefault_names, debug_names): Delete.
8638         (return_types, tdefaults, styles, argtypes_array): New.
8639         (top level): All methods are delegators.
8640         (print_class): New.
8641         (top level): Print dummy_target and debug_target classes.
8642         * target-delegates.c: Regenerate.
8643         * target-debug.h (target_debug_print_enum_info_proc_what)
8644         (target_debug_print_thread_control_capabilities)
8645         (target_debug_print_thread_info_p): New.
8646         * target.c (dummy_target): Delete.
8647         (the_dummy_target, the_debug_target): New.
8648         (target_stack): Now extern.
8649         (set_targetdebug): Push/unpush debug target.
8650         (default_child_has_all_memory, default_child_has_memory)
8651         (default_child_has_stack, default_child_has_registers)
8652         (default_child_has_execution): Remove target_ops parameter.
8653         (complete_target_initialization): Delete.
8654         (add_target_with_completer): No longer call
8655         complete_target_initialization.
8656         (target_supports_terminal_ours): Use regular delegation.
8657         (update_current_target): Delete.
8658         (push_target): No longer check magic number.  Don't call
8659         update_current_target.
8660         (unpush_target): Don't call update_current_target.
8661         (target_is_pushed): No longer check magic number.
8662         (target_require_runnable): Skip for all stratums over
8663         process_stratum.
8664         (target_ops::info_proc): New.
8665         (target_info_proc): Use find_target_at and
8666         find_default_run_target.
8667         (target_supports_disable_randomization): Use regular delegation.
8668         (target_get_osdata): Use find_target_at.
8669         (target_ops::open, target_ops::close, target_ops::can_attach)
8670         (target_ops::attach, target_ops::can_create_inferior)
8671         (target_ops::create_inferior, target_ops::can_run)
8672         (target_can_run): New.
8673         (default_fileio_target): Use regular delegation.
8674         (target_ops::fileio_open, target_ops::fileio_pwrite)
8675         (target_ops::fileio_pread, target_ops::fileio_fstat)
8676         (target_ops::fileio_close, target_ops::fileio_unlink)
8677         (target_ops::fileio_readlink): New.
8678         (target_fileio_open_1, target_fileio_unlink)
8679         (target_fileio_readlink): Always call the target method.  Handle
8680         FILEIO_ENOSYS.
8681         (return_zero, return_zero_has_execution): Delete.
8682         (init_dummy_target): Delete.
8683         (dummy_target::dummy_target, dummy_target::shortname)
8684         (dummy_target::longname, dummy_target::doc)
8685         (debug_target::debug_target, debug_target::shortname)
8686         (debug_target::longname, debug_target::doc): New.
8687         (target_supports_delete_record): Use regular delegation.
8688         (setup_target_debug): Delete.
8689         (maintenance_print_target_stack): Skip debug_stratum.
8690         (initialize_targets): Instantiate the_dummy_target and
8691         the_debug_target.
8692         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
8693         use target_stack.
8694         (target_auxv_search, fprint_target_auxv): Adjust.
8695         (info_auxv_command): Adjust to use target_stack.
8696         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
8697         * exceptions.c (print_flush): Handle a NULL target_stack.
8698         * regcache.c (target_ops_no_register): Refactor as class with
8699         virtual methods.
8700
8701         * exec.c (exec_target): New class.
8702         (exec_ops): Now an exec_target.
8703         (exec_open, exec_close_1, exec_get_section_table)
8704         (exec_xfer_partial, exec_files_info, exec_has_memory)
8705         (exec_make_note_section): Refactor as exec_target methods.
8706         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
8707         Delete.
8708         (exec_target::find_memory_regions): New.
8709         (_initialize_exec): Don't call init_exec_ops.
8710         * gdbcore.h (exec_file_clear): Delete.
8711
8712         * corefile.c (core_target): Delete.
8713         (core_file_command): Adjust.
8714         * corelow.c (core_target): New class.
8715         (the_core_target): New.
8716         (core_close): Remove target_ops parameter.
8717         (core_close_cleanup): Adjust.
8718         (core_target::close): New.
8719         (core_open, core_detach, get_core_registers, core_files_info)
8720         (core_xfer_partial, core_thread_alive, core_read_description)
8721         (core_pid_to_str, core_thread_name, core_has_memory)
8722         (core_has_stack, core_has_registers, core_info_proc): Rework as
8723         core_target methods.
8724         (ignore, core_remove_breakpoint, init_core_ops): Delete.
8725         (_initialize_corelow): Initialize the_core_target.
8726         * gdbcore.h (core_target): Delete.
8727         (the_core_target): New.
8728
8729         * ctf.c: (ctf_target): New class.
8730         (ctf_ops): Now a ctf_target.
8731         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
8732         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
8733         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
8734         methods.
8735         (init_ctf_ops): Delete.
8736         (_initialize_ctf): Don't call it.
8737         * tracefile-tfile.c (tfile_target): New class.
8738         (tfile_ops): Now a tfile_target.
8739         (tfile_open, tfile_close, tfile_files_info)
8740         (tfile_get_tracepoint_status, tfile_trace_find)
8741         (tfile_fetch_registers, tfile_xfer_partial)
8742         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
8743         Refactor as tfile_target methods.
8744         (tfile_xfer_partial_features): Remove target_ops parameter.
8745         (init_tfile_ops): Delete.
8746         (_initialize_tracefile_tfile): Don't call it.
8747         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
8748         (tracefile_has_stack, tracefile_has_registers)
8749         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
8750         tracefile_target methods.
8751         (init_tracefile_ops): Delete.
8752         (tracefile_target::tracefile_target): New.
8753         * tracefile.h: Include "target.h".
8754         (tracefile_target): New class.
8755         (init_tracefile_ops): Delete.
8756
8757         * spu-multiarch.c (spu_multiarch_target): New class.
8758         (spu_ops): Now a spu_multiarch_target.
8759         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
8760         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
8761         (spu_search_memory, spu_mourn_inferior): Refactor as
8762         spu_multiarch_target methods.
8763         (init_spu_ops): Delete.
8764         (_initialize_spu_multiarch): Remove references to init_spu_ops,
8765         complete_target_initialization.
8766
8767         * ravenscar-thread.c (ravenscar_thread_target): New class.
8768         (ravenscar_ops): Now a ravenscar_thread_target.
8769         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
8770         (ravenscar_thread_alive, ravenscar_pid_to_str)
8771         (ravenscar_fetch_registers, ravenscar_store_registers)
8772         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
8773         (ravenscar_stopped_by_hw_breakpoint)
8774         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
8775         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
8776         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
8777         methods.
8778         (init_ravenscar_thread_ops): Delete.
8779         (_initialize_ravenscar): Remove references to
8780         init_ravenscar_thread_ops and complete_target_initialization.
8781
8782         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
8783         (bsd_uthread_target): New class.
8784         (bsd_uthread_ops): Now a bsd_uthread_target.
8785         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
8786         (bsd_uthread_close, bsd_uthread_mourn_inferior)
8787         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
8788         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
8789         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
8790         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
8791         (bsd_uthread_target): Delete function.
8792         (_initialize_bsd_uthread): Remove reference to
8793         complete_target_initialization.
8794
8795         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
8796         (target_bfd): ... this new class.
8797         (target_bfd_xfer_partial, target_bfd_get_section_table)
8798         (target_bfd_close): Refactor as target_bfd methods.
8799         (target_bfd::~target_bfd): New.
8800         (target_bfd_reopen): Adjust.
8801         (target_bfd::close): New.
8802
8803         * record-btrace.c (record_btrace_target): New class.
8804         (record_btrace_ops): Now a record_btrace_target.
8805         (record_btrace_open, record_btrace_stop_recording)
8806         (record_btrace_disconnect, record_btrace_close)
8807         (record_btrace_async, record_btrace_info)
8808         (record_btrace_insn_history, record_btrace_insn_history_range)
8809         (record_btrace_insn_history_from, record_btrace_call_history)
8810         (record_btrace_call_history_range)
8811         (record_btrace_call_history_from, record_btrace_record_method)
8812         (record_btrace_is_replaying, record_btrace_will_replay)
8813         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
8814         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
8815         (record_btrace_store_registers, record_btrace_prepare_to_store)
8816         (record_btrace_to_get_unwinder)
8817         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
8818         (record_btrace_commit_resume, record_btrace_wait)
8819         (record_btrace_stop, record_btrace_can_execute_reverse)
8820         (record_btrace_stopped_by_sw_breakpoint)
8821         (record_btrace_supports_stopped_by_sw_breakpoint)
8822         (record_btrace_stopped_by_hw_breakpoint)
8823         (record_btrace_supports_stopped_by_hw_breakpoint)
8824         (record_btrace_update_thread_list, record_btrace_thread_alive)
8825         (record_btrace_goto_begin, record_btrace_goto_end)
8826         (record_btrace_goto, record_btrace_stop_replaying_all)
8827         (record_btrace_execution_direction)
8828         (record_btrace_prepare_to_generate_core)
8829         (record_btrace_done_generating_core): Refactor as
8830         record_btrace_target methods.
8831         (init_record_btrace_ops): Delete.
8832         (_initialize_record_btrace): Remove reference to
8833         init_record_btrace_ops.
8834         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
8835         the execution_direction global.
8836         (record_full_base_target, record_full_target)
8837         (record_full_core_target): New classes.
8838         (record_full_ops): Now a record_full_target.
8839         (record_full_core_ops): Now a record_full_core_target.
8840         (record_full_target::detach, record_full_target::disconnect)
8841         (record_full_core_target::disconnect)
8842         (record_full_target::mourn_inferior, record_full_target::kill):
8843         New.
8844         (record_full_open, record_full_close, record_full_async): Refactor
8845         as methods of the record_full_base_target class.
8846         (record_full_resume, record_full_commit_resume): Refactor
8847         as methods of the record_full_target class.
8848         (record_full_wait, record_full_stopped_by_watchpoint)
8849         (record_full_stopped_data_address)
8850         (record_full_stopped_by_sw_breakpoint)
8851         (record_full_supports_stopped_by_sw_breakpoint)
8852         (record_full_stopped_by_hw_breakpoint)
8853         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
8854         methods of the record_full_base_target class.
8855         (record_full_store_registers, record_full_xfer_partial)
8856         (record_full_insert_breakpoint, record_full_remove_breakpoint):
8857         Refactor as methods of the record_full_target class.
8858         (record_full_can_execute_reverse, record_full_get_bookmark)
8859         (record_full_goto_bookmark, record_full_execution_direction)
8860         (record_full_record_method, record_full_info, record_full_delete)
8861         (record_full_is_replaying, record_full_will_replay)
8862         (record_full_goto_begin, record_full_goto_end, record_full_goto)
8863         (record_full_stop_replaying): Refactor as methods of the
8864         record_full_base_target class.
8865         (record_full_core_resume, record_full_core_kill)
8866         (record_full_core_fetch_registers)
8867         (record_full_core_prepare_to_store)
8868         (record_full_core_store_registers, record_full_core_xfer_partial)
8869         (record_full_core_insert_breakpoint)
8870         (record_full_core_remove_breakpoint)
8871         (record_full_core_has_execution): Refactor
8872         as methods of the record_full_core_target class.
8873         (record_full_base_target::supports_delete_record): New.
8874         (init_record_full_ops): Delete.
8875         (init_record_full_core_ops): Delete.
8876         (record_full_save): Refactor as method of the
8877         record_full_base_target class.
8878         (_initialize_record_full): Remove references to
8879         init_record_full_ops and init_record_full_core_ops.
8880
8881         * remote.c (remote_target, extended_remote_target): New classes.
8882         (remote_ops): Now a remote_target.
8883         (extended_remote_ops): Now an extended_remote_target.
8884         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
8885         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
8886         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
8887         (remote_pass_signals, remote_set_syscall_catchpoint)
8888         (remote_program_signals, )
8889         (remote_thread_always_alive): Remove target_ops parameter.
8890         (remote_thread_alive, remote_thread_name)
8891         (remote_update_thread_list, remote_threads_extra_info)
8892         (remote_static_tracepoint_marker_at)
8893         (remote_static_tracepoint_markers_by_strid)
8894         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
8895         (remote_open): Refactor as methods of remote_target.
8896         (extended_remote_open, extended_remote_detach)
8897         (extended_remote_attach, extended_remote_post_attach):
8898         (extended_remote_supports_disable_randomization)
8899         (extended_remote_create_inferior): : Refactor as method of
8900         extended_remote_target.
8901         (remote_set_permissions, remote_open_1, remote_detach)
8902         (remote_follow_fork, remote_follow_exec, remote_disconnect)
8903         (remote_resume, remote_commit_resume, remote_stop)
8904         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
8905         (remote_terminal_ours, remote_wait, remote_fetch_registers)
8906         (remote_prepare_to_store, remote_store_registers)
8907         (remote_flash_erase, remote_flash_done, remote_files_info)
8908         (remote_kill, remote_mourn, remote_insert_breakpoint)
8909         (remote_remove_breakpoint, remote_insert_watchpoint)
8910         (remote_watchpoint_addr_within_range)
8911         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
8912         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
8913         (remote_supports_stopped_by_sw_breakpoint)
8914         (remote_stopped_by_hw_breakpoint)
8915         (remote_supports_stopped_by_hw_breakpoint)
8916         (remote_stopped_by_watchpoint, remote_stopped_data_address)
8917         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
8918         (remote_verify_memory): Refactor as methods of remote_target.
8919         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
8920         parameter.
8921         (remote_xfer_partial, remote_get_memory_xfer_limit)
8922         (remote_search_memory, remote_rcmd, remote_memory_map)
8923         (remote_pid_to_str, remote_get_thread_local_address)
8924         (remote_get_tib_address, remote_read_description): Refactor as
8925         methods of remote_target.
8926         (remote_target::fileio_open, remote_target::fileio_pwrite)
8927         (remote_target::fileio_pread, remote_target::fileio_close): New.
8928         (remote_hostio_readlink, remote_hostio_fstat)
8929         (remote_filesystem_is_local, remote_can_execute_reverse)
8930         (remote_supports_non_stop, remote_supports_disable_randomization)
8931         (remote_supports_multi_process, remote_supports_cond_breakpoints)
8932         (remote_supports_enable_disable_tracepoint)
8933         (remote_supports_string_tracing)
8934         (remote_can_run_breakpoint_commands, remote_trace_init)
8935         (remote_download_tracepoint, remote_can_download_tracepoint)
8936         (remote_download_trace_state_variable, remote_enable_tracepoint)
8937         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
8938         (remote_trace_start, remote_get_trace_status)
8939         (remote_get_tracepoint_status, remote_trace_stop)
8940         (remote_trace_find, remote_get_trace_state_variable_value)
8941         (remote_save_trace_data, remote_get_raw_trace_data)
8942         (remote_set_disconnected_tracing, remote_core_of_thread)
8943         (remote_set_circular_trace_buffer, remote_traceframe_info)
8944         (remote_get_min_fast_tracepoint_insn_len)
8945         (remote_set_trace_buffer_size, remote_set_trace_notes)
8946         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
8947         (remote_disable_btrace, remote_teardown_btrace)
8948         (remote_read_btrace, remote_btrace_conf)
8949         (remote_augmented_libraries_svr4_read, remote_load)
8950         (remote_pid_to_exec_file, remote_can_do_single_step)
8951         (remote_execution_direction, remote_thread_handle_to_thread_info):
8952         Refactor as methods of remote_target.
8953         (init_remote_ops, init_extended_remote_ops): Delete.
8954         (remote_can_async_p, remote_is_async_p, remote_async)
8955         (remote_thread_events, remote_upload_tracepoints)
8956         (remote_upload_trace_state_variables): Refactor as methods of
8957         remote_target.
8958         (_initialize_remote): Remove references to init_remote_ops and
8959         init_extended_remote_ops.
8960
8961         * remote-sim.c (gdbsim_target): New class.
8962         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
8963         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
8964         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
8965         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
8966         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
8967         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
8968         Refactor as methods of gdbsim_target.
8969         (gdbsim_ops): Now a gdbsim_target.
8970         (init_gdbsim_ops): Delete.
8971         (gdbsim_cntrl_c): Adjust.
8972         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
8973
8974         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
8975         (the_amd64_linux_nat_target): New.
8976         (amd64_linux_fetch_inferior_registers)
8977         (amd64_linux_store_inferior_registers): Refactor as methods of
8978         amd64_linux_nat_target.
8979         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
8980         * i386-linux-nat.c: Don't include "linux-nat.h".
8981         (i386_linux_nat_target): New class.
8982         (the_i386_linux_nat_target): New.
8983         (i386_linux_fetch_inferior_registers)
8984         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
8985         as methods of i386_linux_nat_target.
8986         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
8987         * inf-child.c (inf_child_ops): Delete.
8988         (inf_child_fetch_inferior_registers)
8989         (inf_child_store_inferior_registers): Delete.
8990         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
8991         methods of inf_child_target.
8992         (inf_child_target::supports_terminal_ours)
8993         (inf_child_target::terminal_init)
8994         (inf_child_target::terminal_inferior)
8995         (inf_child_target::terminal_ours_for_output)
8996         (inf_child_target::terminal_ours, inf_child_target::interrupt)
8997         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
8998         New.
8999         (inf_child_open, inf_child_disconnect, inf_child_close)
9000         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
9001         (inf_child_post_startup_inferior, inf_child_can_run)
9002         (inf_child_pid_to_exec_file): Refactor as methods of
9003         inf_child_target.
9004         (inf_child_follow_fork): Delete.
9005         (inf_child_target::can_create_inferior)
9006         (inf_child_target::can_attach): New.
9007         (inf_child_target::has_all_memory, inf_child_target::has_memory)
9008         (inf_child_target::has_stack, inf_child_target::has_registers)
9009         (inf_child_target::has_execution): New.
9010         (inf_child_fileio_open, inf_child_fileio_pwrite)
9011         (inf_child_fileio_pread, inf_child_fileio_fstat)
9012         (inf_child_fileio_close, inf_child_fileio_unlink)
9013         (inf_child_fileio_readlink, inf_child_use_agent)
9014         (inf_child_can_use_agent): Refactor as methods of
9015         inf_child_target.
9016         (return_zero, inf_child_target): Delete.
9017         (inf_child_target::inf_child_target): New.
9018         * inf-child.h: Include "target.h".
9019         (inf_child_target): Delete function prototype.
9020         (inf_child_target): New class.
9021         (inf_child_open_target, inf_child_mourn_inferior)
9022         (inf_child_maybe_unpush_target): Delete.
9023         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
9024         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
9025         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
9026         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
9027         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
9028         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
9029         (inf_ptrace_wait, inf_ptrace_xfer_partial)
9030         (inf_ptrace_thread_alive, inf_ptrace_files_info)
9031         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
9032         methods of inf_ptrace_target.
9033         (inf_ptrace_target): Delete function.
9034         * inf-ptrace.h: Include "inf-child.h".
9035         (inf_ptrace_target): Delete function declaration.
9036         (inf_ptrace_target): New class.
9037         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
9038         * linux-nat.c (linux_target): New.
9039         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
9040         (linux_nat_target::~linux_nat_target): New.
9041         (linux_child_post_attach, linux_child_post_startup_inferior)
9042         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
9043         (linux_child_remove_fork_catchpoint)
9044         (linux_child_insert_vfork_catchpoint)
9045         (linux_child_remove_vfork_catchpoint)
9046         (linux_child_insert_exec_catchpoint)
9047         (linux_child_remove_exec_catchpoint)
9048         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
9049         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
9050         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
9051         (linux_nat_stopped_data_address)
9052         (linux_nat_stopped_by_sw_breakpoint)
9053         (linux_nat_supports_stopped_by_sw_breakpoint)
9054         (linux_nat_stopped_by_hw_breakpoint)
9055         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
9056         (linux_nat_kill, linux_nat_mourn_inferior)
9057         (linux_nat_xfer_partial, linux_nat_thread_alive)
9058         (linux_nat_update_thread_list, linux_nat_pid_to_str)
9059         (linux_nat_thread_name, linux_child_pid_to_exec_file)
9060         (linux_child_static_tracepoint_markers_by_strid)
9061         (linux_nat_is_async_p, linux_nat_can_async_p)
9062         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
9063         (linux_nat_supports_multi_process)
9064         (linux_nat_supports_disable_randomization, linux_nat_async)
9065         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
9066         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
9067         (linux_nat_fileio_open, linux_nat_fileio_readlink)
9068         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
9069         methods of linux_nat_target.
9070         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
9071         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
9072         parameter.
9073         (check_stopped_by_watchpoint): Adjust.
9074         (linux_xfer_partial): Delete.
9075         (linux_target_install_ops, linux_target, linux_nat_add_target):
9076         Delete.
9077         (linux_nat_target::linux_nat_target): New.
9078         * linux-nat.h: Include "inf-ptrace.h".
9079         (linux_nat_target): New.
9080         (linux_target, linux_target_install_ops, linux_nat_add_target):
9081         Delete function declarations.
9082         (linux_target): Declare global.
9083         * linux-thread-db.c (thread_db_target): New.
9084         (thread_db_target::thread_db_target): New.
9085         (thread_db_ops): Delete.
9086         (the_thread_db_target): New.
9087         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
9088         (thread_db_update_thread_list, thread_db_pid_to_str)
9089         (thread_db_extra_thread_info)
9090         (thread_db_thread_handle_to_thread_info)
9091         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
9092         (thread_db_resume): Refactor as methods of thread_db_target.
9093         (init_thread_db_ops): Delete.
9094         (_initialize_thread_db): Remove reference to init_thread_db_ops.
9095         * x86-linux-nat.c: Don't include "linux-nat.h".
9096         (super_post_startup_inferior): Delete.
9097         (x86_linux_nat_target::~x86_linux_nat_target): New.
9098         (x86_linux_child_post_startup_inferior)
9099         (x86_linux_read_description, x86_linux_enable_btrace)
9100         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
9101         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
9102         methods of x86_linux_nat_target.
9103         (x86_linux_create_target): Delete.  Bits folded ...
9104         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
9105         pointer.
9106         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
9107         (x86_linux_nat_target): New class.
9108         (x86_linux_create_target): Delete.
9109         (x86_linux_add_target): Now takes a linux_nat_target pointer.
9110         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
9111         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
9112         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
9113         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
9114         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
9115         make extern.
9116         (x86_use_watchpoints): Delete.
9117         * x86-nat.h: Include "breakpoint.h" and "target.h".
9118         (x86_use_watchpoints): Delete.
9119         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
9120         (x86_stopped_by_watchpoint, x86_stopped_data_address)
9121         (x86_insert_watchpoint, x86_remove_watchpoint)
9122         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
9123         (x86_stopped_by_hw_breakpoint): New declarations.
9124         (x86_nat_target): New template class.
9125
9126         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
9127         (the_ppc_linux_nat_target): New.
9128         (ppc_linux_fetch_inferior_registers)
9129         (ppc_linux_can_use_hw_breakpoint)
9130         (ppc_linux_region_ok_for_hw_watchpoint)
9131         (ppc_linux_ranged_break_num_registers)
9132         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
9133         (ppc_linux_insert_mask_watchpoint)
9134         (ppc_linux_remove_mask_watchpoint)
9135         (ppc_linux_can_accel_watchpoint_condition)
9136         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
9137         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
9138         (ppc_linux_watchpoint_addr_within_range)
9139         (ppc_linux_masked_watch_num_registers)
9140         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
9141         (ppc_linux_read_description): Refactor as methods of
9142         ppc_linux_nat_target.
9143         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
9144
9145         * procfs.c (procfs_xfer_partial): Delete forward declaration.
9146         (procfs_target): New class.
9147         (the_procfs_target): New.
9148         (procfs_target): Delete function.
9149         (procfs_auxv_parse, procfs_attach, procfs_detach)
9150         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
9151         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
9152         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
9153         (procfs_create_inferior, procfs_update_thread_list)
9154         (procfs_thread_alive, procfs_pid_to_str)
9155         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
9156         (procfs_stopped_data_address, procfs_insert_watchpoint)
9157         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
9158         (proc_find_memory_regions, procfs_info_proc)
9159         (procfs_make_note_section): Refactor as methods of procfs_target.
9160         (_initialize_procfs): Adjust.
9161         * sol-thread.c (sol_thread_target): New class.
9162         (sol_thread_ops): Now a sol_thread_target.
9163         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
9164         (sol_thread_fetch_registers, sol_thread_store_registers)
9165         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
9166         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
9167         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
9168         (init_sol_thread_ops): Delete.
9169         (_initialize_sol_thread): Adjust.  Remove references to
9170         init_sol_thread_ops and complete_target_initialization.
9171
9172         * windows-nat.c (windows_nat_target): New class.
9173         (windows_fetch_inferior_registers)
9174         (windows_store_inferior_registers, windows_resume, windows_wait)
9175         (windows_attach, windows_detach, windows_pid_to_exec_file)
9176         (windows_files_info, windows_create_inferior)
9177         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
9178         (windows_close, windows_pid_to_str, windows_xfer_partial)
9179         (windows_get_tib_address, windows_get_ada_task_ptid)
9180         (windows_thread_name, windows_thread_alive): Refactor as
9181         windows_nat_target methods.
9182         (do_initial_windows_stuff): Adjust.
9183         (windows_target): Delete function.
9184         (_initialize_windows_nat): Adjust.
9185
9186         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
9187         (darwin_mourn_inferior, darwin_kill_inferior)
9188         (darwin_create_inferior, darwin_attach, darwin_detach)
9189         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
9190         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
9191         (darwin_supports_multi_process): Refactor as darwin_nat_target
9192         methods.
9193         (darwin_resume_to, darwin_files_info): Delete.
9194         (_initialize_darwin_inferior): Rename to ...
9195         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
9196         * darwin-nat.h: Include "inf-child.h".
9197         (darwin_nat_target): New class.
9198         (darwin_complete_target): Delete.
9199         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
9200         (darwin_target): New.
9201         (i386_darwin_fetch_inferior_registers)
9202         (i386_darwin_store_inferior_registers): Refactor as methods of
9203         darwin_nat_target.
9204         (darwin_complete_target): Delete, with ...
9205         (_initialize_i386_darwin_nat): ... bits factored out here.
9206
9207         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
9208         (the_alpha_linux_nat_target): New.
9209         (alpha_linux_register_u_offset): Refactor as
9210         alpha_linux_nat_target method.
9211         (_initialize_alpha_linux_nat): Adjust.
9212         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
9213         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9214         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
9215         methods of linux_nat_trad_target.
9216         (linux_trad_target): Delete.
9217         * linux-nat-trad.h (linux_trad_target): Delete function.
9218         (linux_nat_trad_target): New class.
9219         * mips-linux-nat.c (mips_linux_nat_target): New class.
9220         (super_fetch_registers, super_store_registers, super_close):
9221         Delete.
9222         (the_mips_linux_nat_target): New.
9223         (mips64_linux_regsets_fetch_registers)
9224         (mips64_linux_regsets_store_registers)
9225         (mips64_linux_fetch_registers, mips64_linux_store_registers)
9226         (mips_linux_register_u_offset, mips_linux_read_description)
9227         (mips_linux_can_use_hw_breakpoint)
9228         (mips_linux_stopped_by_watchpoint)
9229         (mips_linux_stopped_data_address)
9230         (mips_linux_region_ok_for_hw_watchpoint)
9231         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
9232         (mips_linux_close): Refactor as methods of mips_linux_nat.
9233         (_initialize_mips_linux_nat): Adjust to C++ification.
9234
9235         * aix-thread.c (aix_thread_target): New class.
9236         (aix_thread_ops): Now an aix_thread_target.
9237         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
9238         (aix_thread_fetch_registers, aix_thread_store_registers)
9239         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
9240         (aix_thread_thread_alive, aix_thread_pid_to_str)
9241         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
9242         Refactor as methods of aix_thread_target.
9243         (init_aix_thread_ops): Delete.
9244         (_initialize_aix_thread): Remove references to init_aix_thread_ops
9245         and complete_target_initialization.
9246         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
9247         (rs6000_nat_target): New class.
9248         (the_rs6000_nat_target): New.
9249         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
9250         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
9251         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
9252         (super_create_inferior): Delete.
9253         (_initialize_rs6000_nat): Adjust to C++ification.
9254
9255         * arm-linux-nat.c (arm_linux_nat_target): New class.
9256         (the_arm_linux_nat_target): New.
9257         (arm_linux_fetch_inferior_registers)
9258         (arm_linux_store_inferior_registers, arm_linux_read_description)
9259         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
9260         (arm_linux_remove_hw_breakpoint)
9261         (arm_linux_region_ok_for_hw_watchpoint)
9262         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
9263         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
9264         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
9265         arm_linux_nat_target.
9266         (_initialize_arm_linux_nat): Adjust to C++ification.
9267
9268         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
9269         (the_aarch64_linux_nat_target): New.
9270         (aarch64_linux_fetch_inferior_registers)
9271         (aarch64_linux_store_inferior_registers)
9272         (aarch64_linux_child_post_startup_inferior)
9273         (aarch64_linux_read_description)
9274         (aarch64_linux_can_use_hw_breakpoint)
9275         (aarch64_linux_insert_hw_breakpoint)
9276         (aarch64_linux_remove_hw_breakpoint)
9277         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
9278         (aarch64_linux_region_ok_for_hw_watchpoint)
9279         (aarch64_linux_stopped_data_address)
9280         (aarch64_linux_stopped_by_watchpoint)
9281         (aarch64_linux_watchpoint_addr_within_range)
9282         (aarch64_linux_can_do_single_step): Refactor as methods of
9283         aarch64_linux_nat_target.
9284         (super_post_startup_inferior): Delete.
9285         (_initialize_aarch64_linux_nat): Adjust to C++ification.
9286
9287         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
9288         (the_hppa_linux_nat_target): New.
9289         (hppa_linux_fetch_inferior_registers)
9290         (hppa_linux_store_inferior_registers): Refactor as methods of
9291         hppa_linux_nat_target.
9292         (_initialize_hppa_linux_nat): Adjust to C++ification.
9293
9294         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
9295         (the_ia64_linux_nat_target): New.
9296         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
9297         (ia64_linux_stopped_data_address)
9298         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
9299         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
9300         ia64_linux_nat_target methods.
9301         (super_xfer_partial): Delete.
9302         (_initialize_ia64_linux_nat): Adjust to C++ification.
9303
9304         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
9305         (the_m32r_linux_nat_target): New.
9306         (m32r_linux_fetch_inferior_registers)
9307         (m32r_linux_store_inferior_registers): Refactor as
9308         m32r_linux_nat_target methods.
9309         (_initialize_m32r_linux_nat): Adjust to C++ification.
9310
9311         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
9312         (the_m68k_linux_nat_target): New.
9313         (m68k_linux_fetch_inferior_registers)
9314         (m68k_linux_store_inferior_registers): Refactor as
9315         m68k_linux_nat_target methods.
9316         (_initialize_m68k_linux_nat): Adjust to C++ification.
9317
9318         * s390-linux-nat.c (s390_linux_nat_target): New class.
9319         (the_s390_linux_nat_target): New.
9320         (s390_linux_fetch_inferior_registers)
9321         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
9322         (s390_insert_watchpoint, s390_remove_watchpoint)
9323         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
9324         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
9325         (s390_auxv_parse, s390_read_description): Refactor as methods of
9326         s390_linux_nat_target.
9327         (_initialize_s390_nat): Adjust to C++ification.
9328
9329         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
9330         (the_sparc_linux_nat_target): New.
9331         (_initialize_sparc_linux_nat): Adjust to C++ification.
9332         * sparc-nat.c (sparc_fetch_inferior_registers)
9333         (sparc_store_inferior_registers): Remove target_ops parameter.
9334         * sparc-nat.h (sparc_fetch_inferior_registers)
9335         (sparc_store_inferior_registers): Remove target_ops parameter.
9336         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
9337         (the_sparc64_linux_nat_target): New.
9338         (_initialize_sparc64_linux_nat): Adjust to C++ification.
9339
9340         * spu-linux-nat.c (spu_linux_nat_target): New class.
9341         (the_spu_linux_nat_target): New.
9342         (spu_child_post_startup_inferior, spu_child_post_attach)
9343         (spu_child_wait, spu_fetch_inferior_registers)
9344         (spu_store_inferior_registers, spu_xfer_partial)
9345         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
9346         methods.
9347         (_initialize_spu_nat): Adjust to C++ification.
9348
9349         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
9350         (the_tilegx_linux_nat_target): New.
9351         (fetch_inferior_registers, store_inferior_registers):
9352         Refactor as methods.
9353         (_initialize_tile_linux_nat): Adjust to C++ification.
9354
9355         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
9356         (the_xtensa_linux_nat_target): New.
9357         (xtensa_linux_fetch_inferior_registers)
9358         (xtensa_linux_store_inferior_registers): Refactor as
9359         xtensa_linux_nat_target methods.
9360         (_initialize_xtensa_linux_nat): Adjust to C++ification.
9361
9362         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
9363         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
9364         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
9365         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
9366         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
9367         (fbsd_stopped_by_sw_breakpoint)
9368         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
9369         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
9370         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
9371         (fbsd_post_startup_inferior, fbsd_post_attach)
9372         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
9373         (fbsd_set_syscall_catchpoint)
9374         (super_xfer_partial, super_resume, super_wait)
9375         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
9376         (fbsd_handle_debug_trap): Remove target_ops parameter.
9377         (fbsd_nat_add_target): Delete.
9378         * fbsd-nat.h: Include "inf-ptrace.h".
9379         (fbsd_nat_add_target): Delete.
9380         (USE_SIGTRAP_SIGINFO): Define.
9381         (fbsd_nat_target): New class.
9382
9383         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
9384         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
9385         (amd64bsd_target): Delete.
9386         * amd64-bsd-nat.h: New file.
9387         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
9388         "x86-bsd-nat.h".
9389         (amd64_fbsd_nat_target): New class.
9390         (the_amd64_fbsd_nat_target): New.
9391         (amd64fbsd_read_description): Refactor as method of
9392         amd64_fbsd_nat_target.
9393         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9394         (_initialize_amd64fbsd_nat): Adjust to C++ification.
9395         * amd64-nat.h (amd64bsd_target): Delete function declaration.
9396         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
9397         (i386bsd_store_inferior_registers): Remove target_ops parameter.
9398         (i386bsd_target): Delete.
9399         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
9400         (i386bsd_fetch_inferior_registers)
9401         (i386bsd_store_inferior_registers): Declare.
9402         (i386_bsd_nat_target): New class.
9403         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
9404         (the_i386_fbsd_nat_target): New.
9405         (i386fbsd_resume, i386fbsd_read_description): Refactor as
9406         i386_fbsd_nat_target methods.
9407         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9408         (_initialize_i386fbsd_nat): Adjust to C++ification.
9409         * x86-bsd-nat.c (super_mourn_inferior): Delete.
9410         (x86bsd_mourn_inferior, x86bsd_target): Delete.
9411         (_initialize_x86_bsd_nat): Adjust to C++ification.
9412         * x86-bsd-nat.h: Include "x86-nat.h".
9413         (x86bsd_target): Delete declaration.
9414         (x86bsd_nat_target): New class.
9415
9416         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
9417         (the_aarch64_fbsd_nat_target): New.
9418         (aarch64_fbsd_fetch_inferior_registers)
9419         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
9420         aarch64_fbsd_nat_target.
9421         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
9422         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
9423         (the_alpha_bsd_nat_target): New.
9424         (alphabsd_fetch_inferior_registers)
9425         (alphabsd_store_inferior_registers): Refactor as
9426         alpha_bsd_nat_target methods.
9427         (_initialize_alphabsd_nat): Refactor as methods of
9428         alpha_bsd_nat_target.
9429         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
9430         (the_amd64_nbsd_nat_target): New.
9431         (_initialize_amd64nbsd_nat): Adjust to C++ification.
9432         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
9433         (the_amd64_obsd_nat_target): New.
9434         (_initialize_amd64obsd_nat): Adjust to C++ification.
9435         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
9436         (the_arm_fbsd_nat_target): New.
9437         (arm_fbsd_fetch_inferior_registers)
9438         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
9439         (_initialize_arm_fbsd_nat): Refactor as methods of
9440         arm_fbsd_nat_target.
9441         (_initialize_arm_fbsd_nat): Adjust to C++ification.
9442         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
9443         (the_arm_netbsd_nat_target): New.
9444         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
9445         arm_netbsd_nat_target.
9446         (_initialize_arm_netbsd_nat): Adjust to C++ification.
9447         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
9448         (the_hppa_nbsd_nat_target): New.
9449         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
9450         hppa_nbsd_nat_target methods.
9451         (_initialize_hppanbsd_nat): Adjust to C++ification.
9452         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
9453         (the_hppa_obsd_nat_target): New.
9454         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
9455         methods of hppa_obsd_nat_target.
9456         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
9457         add_target.
9458         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
9459         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
9460         add_target.
9461         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
9462         (_initialize_i386obsd_nat): Use add_target.
9463         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
9464         (the_m68k_bsd_nat_target): New.
9465         (m68kbsd_fetch_inferior_registers)
9466         (m68kbsd_store_inferior_registers): Refactor as methods of
9467         m68k_bsd_nat_target.
9468         (_initialize_m68kbsd_nat): Adjust to C++ification.
9469         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
9470         (the_mips_fbsd_nat_target): New.
9471         (mips_fbsd_fetch_inferior_registers)
9472         (mips_fbsd_store_inferior_registers): Refactor as methods of
9473         mips_fbsd_nat_target.
9474         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
9475         add_target.
9476         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
9477         (the_mips_nbsd_nat_target): New.
9478         (mipsnbsd_fetch_inferior_registers)
9479         (mipsnbsd_store_inferior_registers): Refactor as methods of
9480         mips_nbsd_nat_target.
9481         (_initialize_mipsnbsd_nat): Adjust to C++ification.
9482         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
9483         (the_mips64_obsd_nat_target): New.
9484         (mips64obsd_fetch_inferior_registers)
9485         (mips64obsd_store_inferior_registers): Refactor as methods of
9486         mips64_obsd_nat_target.
9487         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
9488         add_target.
9489         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
9490         nbsd_nat_target.
9491         * nbsd-nat.h: Include "inf-ptrace.h".
9492         (nbsd_nat_target): New class.
9493         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
9494         (obsd_wait): Refactor as methods of obsd_nat_target.
9495         (obsd_add_target): Delete.
9496         * obsd-nat.h: Include "inf-ptrace.h".
9497         (obsd_nat_target): New class.
9498         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
9499         (the_ppc_fbsd_nat_target): New.
9500         (ppcfbsd_fetch_inferior_registers)
9501         (ppcfbsd_store_inferior_registers): Refactor as methods of
9502         ppc_fbsd_nat_target.
9503         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
9504         add_target.
9505         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
9506         (the_ppc_nbsd_nat_target): New.
9507         (ppcnbsd_fetch_inferior_registers)
9508         (ppcnbsd_store_inferior_registers): Refactor as methods of
9509         ppc_nbsd_nat_target.
9510         (_initialize_ppcnbsd_nat): Adjust to C++ification.
9511         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
9512         (the_ppc_obsd_nat_target): New.
9513         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
9514         methods of ppc_obsd_nat_target.
9515         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
9516         add_target.
9517         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
9518         (the_sh_nbsd_nat_target): New.
9519         (shnbsd_fetch_inferior_registers)
9520         (shnbsd_store_inferior_registers): Refactor as methods of
9521         sh_nbsd_nat_target.
9522         (_initialize_shnbsd_nat): Adjust to C++ification.
9523         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
9524         (inf_ptrace_xfer_partial): Delete.
9525         (sparc_xfer_partial, sparc_target): Delete.
9526         * sparc-nat.h (sparc_fetch_inferior_registers)
9527         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
9528         (sparc_target): Delete function declaration.
9529         (sparc_target): New template class.
9530         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
9531         (_initialize_sparcnbsd_nat): Adjust to C++ification.
9532         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
9533         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
9534         add_target.
9535         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
9536         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
9537         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
9538         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
9539         add_target.
9540         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
9541         (the_vax_bsd_nat_target): New.
9542         (vaxbsd_fetch_inferior_registers)
9543         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
9544         methods.
9545         (_initialize_vaxbsd_nat): Adjust to C++ification.
9546
9547         * bsd-kvm.c (bsd_kvm_target): New class.
9548         (bsd_kvm_ops): Now a bsd_kvm_target.
9549         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
9550         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
9551         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
9552         bsd_kvm_target.
9553         (bsd_kvm_return_one): Delete.
9554         (bsd_kvm_add_target): Adjust to C++ification.
9555
9556         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
9557         (nto_procfs_target_procfs): New classes.
9558         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
9559         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
9560         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
9561         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
9562         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
9563         (procfs_remove_hw_breakpoint, procfs_resume)
9564         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
9565         (procfs_kill_inferior, procfs_store_registers)
9566         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
9567         as methods of nto_procfs_target.
9568         (nto_procfs_ops): Now an nto_procfs_target_procfs.
9569         (nto_native_ops): Delete.
9570         (procfs_open, procfs_native_open): Delete.
9571         (nto_native_ops): Now an nto_procfs_target_native.
9572         (init_procfs_targets): Adjust to C++ification.
9573         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
9574         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
9575         Refactor as methods of nto_procfs_target.
9576
9577         * go32-nat.c (go32_nat_target): New class.
9578         (the_go32_nat_target): New.
9579         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
9580         (go32_store_registers, go32_xfer_partial, go32_files_info)
9581         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
9582         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
9583         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
9584         (go32_pid_to_str): Refactor as methods of go32_nat_target.
9585         (go32_target): Delete.
9586         (_initialize_go32_nat): Adjust to C++ification.
9587
9588         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
9589         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
9590         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
9591         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
9592         gnu_nat_target.
9593         (gnu_target): Delete.
9594         * gnu-nat.h (gnu_target): Delete.
9595         (gnu_nat_target): New class.
9596         * i386-gnu-nat.c (gnu_base_target): New.
9597         (i386_gnu_nat_target): New class.
9598         (the_i386_gnu_nat_target): New.
9599         (_initialize_i386gnu_nat): Adjust to C++ification.
9600
9601 2018-05-02  Pedro Alves  <palves@redhat.com>
9602
9603         * bfd-target.c (target_bfd_xclose): Rename to ...
9604         (target_bfd_close): ... this.
9605         (target_bfd_reopen): Adjust.
9606         * target.c (target_close): Remove references to to_xclose.
9607         * target.h (target_ops::to_xclose): Delete.
9608         (target_ops::to_close): Update comments.
9609
9610 2018-05-02  Pedro Alves  <palves@redhat.com>
9611
9612         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
9613         "linux-nat.h".
9614         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
9615         * inf-ptrace.c (inf_ptrace_register_u_offset)
9616         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9617         (inf_ptrace_store_register, inf_ptrace_store_registers)
9618         (inf_ptrace_trad_target): Move to ...
9619         * linux-nat-trad.c: ... this new file.
9620         * linux-nat-trad.h: New file.
9621         * linux-nat.c (linux_target_install_ops): Make extern.
9622         (linux_trad_target): Delete.
9623         * linux-nat.h (linux_trad_target): Delete declaration.
9624         (linux_target_install_ops): Declare.
9625         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
9626         "linux-nat.h".
9627
9628 2018-05-02  Pedro Alves  <palves@redhat.com>
9629
9630         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
9631         procfs_target/add_target here.
9632         * procfs.c (procfs_target): Make static.
9633         (_initialize_procfs): Call add_target here.
9634         * procfs.h (struct target_ops): Remove forward declaration.
9635         (procfs_target): Remove declaration.
9636         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
9637
9638 2018-05-02  Pedro Alves  <palves@redhat.com>
9639
9640         * procfs.c (procfs_stopped_by_watchpoint)
9641         (procfs_insert_watchpoint, procfs_remove_watchpoint)
9642         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
9643         Forward declare.
9644         (procfs_use_watchpoints): Delete, move contents...
9645         (procfs_target): ... here.
9646         * procfs.h (procfs_use_watchpoints): Delete declaration.
9647         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
9648         procfs_use_watchpoints.
9649         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
9650         procfs_use_watchpoints.
9651
9652 2018-05-02  Tom Tromey  <tom@tromey.com>
9653
9654         PR python/20084:
9655         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
9656         and var_zuinteger_unlimited.
9657         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
9658         and PARAM_ZUINTEGER_UNLIMITED.
9659         (set_parameter_value): Handle var_zuinteger and
9660         var_zuinteger_unlimited.
9661         (add_setshow_generic): Likewise.
9662         (parmpy_init): Likewise.
9663
9664 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
9665
9666         PR rust/23124
9667         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
9668         pointer is not null before dereferencing it.
9669
9670 2018-04-30  Tom Tromey  <tom@tromey.com>
9671
9672         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
9673         is_mi_like_p.
9674
9675 2018-04-30  Tom Tromey  <tom@tromey.com>
9676
9677         * breakpoint.c (mention): Remove use of is_mi_like_p.
9678         (print_mention_ranged_breakpoint): Likewise.
9679         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
9680         of is_mi_like_p.
9681
9682 2018-04-30  Tom Tromey  <tom@tromey.com>
9683
9684         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
9685
9686 2018-04-30  Tom Tromey  <tom@tromey.com>
9687
9688         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
9689         (info_spu_event_command): Remove some uses of is_mi_like_p.
9690
9691 2018-04-30  Tom Tromey  <tom@tromey.com>
9692
9693         * python/py-framefilter.c (py_print_single_arg)
9694         (enumerate_locals, py_print_args, py_print_frame): Remove some
9695         uses of is_mi_like_p.
9696
9697 2018-04-30  Tom Tromey  <tom@tromey.com>
9698
9699         * ui-out.c: Update.
9700         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
9701         * ui-out.h (ui_out::is_mi_like_p): Now const.
9702         (ui_out::do_is_mi_like_p): Now const.
9703         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
9704
9705 2018-04-30  Tom Tromey  <tom@tromey.com>
9706
9707         * varobj.c (varobj_set_visualizer): Use new_reference.
9708         * python/python.c (gdbpy_decode_line): Use new_reference.
9709         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
9710         new_reference.
9711
9712 2018-04-30  Tom Tromey  <tom@tromey.com>
9713
9714         * varobj.c (install_new_value): Use new_reference.
9715         * value.h (value_incref): Return void.  Swap intro comment with
9716         value_decref.
9717         * value.c (set_value_parent): Use new_reference.
9718         (value_incref): Return void.  Update intro comment.
9719         (release_value): Use new_reference.
9720         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
9721
9722 2018-04-30  Tom Tromey  <tom@tromey.com>
9723
9724         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
9725         * gdb_bfd.h (new_bfd_ref): Remove.
9726         (gdb_bfd_open): Update comment.
9727         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
9728         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
9729         (gdb_bfd_fdopenr): Use new_reference.
9730         * exec.c (exec_file_attach): Use new_reference.
9731
9732 2018-04-30  Tom Tromey  <tom@tromey.com>
9733
9734         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
9735         method.
9736
9737 2018-04-30  Tom Tromey  <tom@tromey.com>
9738
9739         * jit.c (jit_read_code_entry): Use type_align.
9740         * i386-tdep.c (i386_gdbarch_init): Don't call
9741         set_gdbarch_long_long_align_bit.
9742         * gdbarch.sh: Remove long_long_align_bit.
9743         * gdbarch.c, gdbarch.h: Rebuild.
9744         * arc-tdep.c (arc_type_align): New function.
9745         (arc_gdbarch_init): Use arc_type_align.  Don't call
9746         set_gdbarch_long_long_align_bit.
9747
9748 2018-04-30  Tom Tromey  <tom@tromey.com>
9749
9750         * rust-lang.c (rust_type_alignment): Remove.
9751         (rust_composite_type): Use type_align.
9752
9753 2018-04-30  Tom Tromey  <tom@tromey.com>
9754
9755         * NEWS: Mention Type.align.
9756         * python/py-type.c (typy_get_alignof): New function.
9757         (type_object_getset): Add "alignof".
9758
9759 2018-04-30  Tom Tromey  <tom@tromey.com>
9760
9761         PR exp/17095:
9762         * NEWS: Update.
9763         * std-operator.def (UNOP_ALIGNOF): New operator.
9764         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
9765         New.
9766         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
9767         * c-lang.c (c_op_print_tab): Add alignof.
9768         * c-exp.y (ALIGNOF): New token.
9769         (exp): Add "ALIGNOF" production.
9770         (ident_tokens): Add _Alignof and alignof.
9771
9772 2018-04-30  Tom Tromey  <tom@tromey.com>
9773
9774         * i386-tdep.c (i386_type_align): New function.
9775         (i386_gdbarch_init): Update.
9776         * gdbarch.sh (type_align): New method.
9777         * gdbarch.c, gdbarch.h: Rebuild.
9778         * arch-utils.h (default_type_align): Declare.
9779         * arch-utils.c (default_type_align): New function.
9780         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
9781         (struct type) <align_log2>: New field.
9782         <instance_flags>: Now a bitfield.
9783         (TYPE_RAW_ALIGN): New macro.
9784         (type_align, type_raw_align, set_type_align): Declare.
9785         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
9786         functions.
9787         * dwarf2read.c (quirk_rust_enum): Set type alignment.
9788         (get_alignment, maybe_set_alignment): New functions.
9789         (read_structure_type, read_enumeration_type, read_array_type)
9790         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
9791         (read_subrange_type, read_base_type): Set type alignment.
9792
9793 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
9794
9795         * dwarf2read.c (read_index_from_section): Use bool.
9796
9797 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
9798
9799         PR gdb/22950
9800         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
9801         with #ifdef.
9802
9803 2018-04-29  John Reiser  <jreiser@BitWagon.com>
9804
9805         PR build/22873
9806         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
9807         last step, and do it atomically.
9808
9809 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
9810
9811         * compile/compile-c-types.c (convert_int, convert_float):
9812         Update for C FE v1.
9813
9814 2018-04-27  Tom Tromey  <tom@tromey.com>
9815
9816         PR rust/22545:
9817         * rust-lang.c (rust_inclusive_range_type_p): New function.
9818         (rust_range): Handle inclusive ranges.
9819         (rust_compute_range): Likewise.
9820         * rust-exp.y (struct rust_op) <inclusive>: New field.
9821         (DOTDOTEQ): New constant.
9822         (range_expr): Add "..=" productions.
9823         (operator_tokens): Add "..=" token.
9824         (ast_range): Add "inclusive" parameter.
9825         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
9826         ranges.
9827         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
9828         bounds values.
9829         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
9830         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
9831         Update comments.
9832         * expprint.c (print_subexp_standard): Handle new bounds values.
9833         (dump_subexp_body_standard): Likewise.
9834
9835 2018-04-27  Tom Tromey  <tom@tromey.com>
9836
9837         * configure: Rebuild.
9838         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
9839         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
9840         "OVERRIDE".
9841         (class symbol_needs_eval_context): Likewise.
9842         * dwarf2read.c (mock_mapped_index::symbol_name_count)
9843         (mock_mapped_index::symbol_name_at): Use "override".  Remove
9844         "virtual".
9845         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
9846         "override".
9847         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
9848         * aarch64-tdep.c (instruction_reader::read): Use "override".
9849         (instruction_reader_test::read): Likewise.
9850         * arm-tdep.c (instruction_reader::read): Use "override".
9851         (instruction_reader_thumb::read): Likewise.
9852
9853 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
9854
9855         PR remote/9665
9856         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
9857         instead of remote_send.
9858         (remote_send): Remove.
9859
9860 2018-04-26  Pedro Alves  <palves@redhat.com>
9861
9862         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
9863         find_function_start_sal instead of find_pc_line.
9864
9865 2018-04-26  Pedro Alves  <palves@redhat.com>
9866
9867         * breakpoint.c (set_breakpoint_location_function): Handle
9868         mst_data_gnu_ifunc.
9869         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
9870         * elfread.c (elf_symtab_read): Give data symbols with
9871         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
9872         (elf_rel_plt_read): Update comment.
9873         * linespec.c (convert_linespec_to_sals): Handle
9874         mst_data_gnu_ifunc.
9875         (minsym_found): Handle mst_data_gnu_ifunc.
9876         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
9877         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
9878         * parse.c (find_minsym_type_and_address): Handle
9879         mst_data_gnu_ifunc.
9880         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
9881         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
9882         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
9883         comment.
9884         <mst_data_gnu_ifunc>: New enumerator.
9885
9886 2018-04-26  Pedro Alves  <palves@redhat.com>
9887
9888         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
9889         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
9890         'want_trampoline' parameter by a lookup_msym_prefer parameter.
9891         Handle it.
9892         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
9893         (lookup_minimal_symbol_by_pc): Adjust.
9894         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
9895         (lookup_solib_trampoline_symbol_by_pc): Adjust.
9896         * minsyms.h (lookup_msym_prefer): New enum.
9897         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
9898         parameter by a lookup_msym_prefer parameter.
9899
9900 2018-04-26  Pedro Alves  <palves@redhat.com>
9901
9902         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
9903         ends in "@plt" instead of looking at the symbol's section.
9904
9905 2018-04-26  Pedro Alves  <palves@redhat.com>
9906
9907         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
9908         all references.
9909         (find_pc_partial_function_gnu_ifunc): Rename to ...
9910         (find_pc_partial_function): ... this, and remove references to
9911         'is_gnu_ifunc_p'.
9912         (find_pc_partial_function): Delete old implementation.
9913         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
9914
9915 2018-04-26  Pedro Alves  <palves@redhat.com>
9916
9917         * linespec.c (struct bound_minimal_symbol_search_key): New.
9918         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
9919         skip first line if we found a GNU ifunc minimal symbol by name.
9920         (compare_msymbols): Change parameters to work with a destructured
9921         lhs minsym.
9922         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
9923         functions.
9924
9925 2018-04-26  Pedro Alves  <palves@redhat.com>
9926
9927         * breakpoint.c (set_breakpoint_location_function): Don't resolve
9928         ifunc targets here.  Instead, if we have an ifunc minsym, use its
9929         address/name.
9930         (add_location_to_breakpoint): Store the minsym and the objfile in
9931         the breakpoint location.
9932         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
9933         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
9934         Record the minsym in the sal.
9935         * symtab.h (symtab_and_line) <msymbol>: New field.
9936
9937 2018-04-26  Pedro Alves  <palves@redhat.com>
9938
9939         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
9940         unless we actually resolved the ifunc.
9941
9942 2018-04-26  Pedro Alves  <palves@redhat.com>
9943
9944         * c-exp.y (variable production): Prefer ifunc minsyms over
9945         regular function symbols.
9946         * symtab.c (find_gnu_ifunc): New function.
9947         * minsyms.h (lookup_msym_prefer): New enum.
9948         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
9949         parameter by a lookup_msym_prefer parameter.
9950         * symtab.h (find_gnu_ifunc): New declaration.
9951
9952 2018-04-26  Pedro Alves  <palves@redhat.com>
9953
9954         * blockframe.c (find_gnu_ifunc_target_type): New function.
9955         (find_function_type): New.
9956         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
9957         return a value with a memory address.
9958         (eval_call): For calls to GNU ifunc functions, try to find the
9959         type of the target function from the type that the resolver
9960         returns.
9961         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
9962         symbols.
9963         * infcall.c (find_function_return_type): Delete.
9964         (find_function_addr): Add 'function_type' parameter.  For calls to
9965         GNU ifunc functions, try to find the type of the target function
9966         from the type that the resolver returns, and return it via
9967         FUNCTION_TYPE.
9968         (call_function_by_hand_dummy): Adjust to use the function type
9969         returned by find_function_addr.
9970         (find_function_addr): Add 'function_type' parameter and move
9971         description here.
9972         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
9973         declarations.
9974
9975 2018-04-26  Pedro Alves  <palves@redhat.com>
9976
9977         * c-exp.y (variable production): Skip finding an alias for ifunc
9978         symbols.
9979
9980 2018-04-26  Pedro Alves  <palves@redhat.com>
9981
9982         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
9983
9984 2018-04-25  Pedro Alves  <palves@redhat.com>
9985
9986         * infcmd.c (kill_command): Print the pid as string, not the whole
9987         thread's ptid.  Add comment.  s/has been killed/killed/ in output
9988         message.
9989         * remote.c (remote_detach_1): Print the pid as string, not the
9990         whole thread's ptid.
9991
9992 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
9993             Sergio Durigan Junior  <sergiodj@redhat.com>
9994             Pedro Alves  <palves@redhat.com>
9995
9996         * infcmd.c (kill_command): Print message when inferior has
9997         been killed.
9998         * inferior.c (print_inferior_events): Remove 'static'.  Set as
9999         '1'.
10000         (add_inferior): Improve message printed when
10001         'print_inferior_events' is on.
10002         (exit_inferior): Remove message printed when
10003         'print_inferior_events' is on.
10004         (detach_inferior): Improve message printed when
10005         'print_inferior_events' is on.
10006         (initialize_inferiors): Use 'add_inferior_silent' to set
10007         'current_inferior_'.
10008         * inferior.h (print_inferior_events): Declare here as
10009         'extern'.
10010         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
10011         '[Detaching...]' messages when 'print_inferior_events' is on.
10012         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
10013         as prefix/suffix for messages.  Remove periods.  Fix erroneous
10014         'Detaching after fork from child...', replace it by '... from
10015         parent...'.
10016         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
10017         prefix/suffix when printing 'Detaching...' messages.  Print
10018         them when 'print_inferior_events' is on.
10019         * remote.c (remote_detach_1): Print message when detaching
10020         from inferior and '!is_fork_parent'.
10021
10022 2018-04-24  Tom Tromey  <tom@tromey.com>
10023
10024         * cli-out.h: Reindent.
10025
10026 2018-04-24  Tom Tromey  <tom@tromey.com>
10027
10028         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
10029         (cli_ui_out::do_field_string): Use fputs_filtered.
10030         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
10031
10032 2018-04-23  Tom Tromey  <tom@tromey.com>
10033
10034         * guile/scm-frame.c (gdbscm_frame_read_var): Use
10035         gdb::unique_xmalloc_ptr.
10036
10037 2018-04-23  Tom Tromey  <tom@tromey.com>
10038
10039         * configure: Rebuild.
10040
10041 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
10042
10043         PR gdb/23095
10044         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
10045         prepare_for_testing.  Set normal_bp to r_debug_state if target
10046         is bsd.
10047
10048 2018-04-21  Pedro Alves  <palves@redhat.com>
10049             Rajendra SY  <rajendra.sy@gmail.com>
10050
10051         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
10052         * remote.c (extended_remote_attach): In all-stop mode, mark the
10053         thread as executing.
10054
10055 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10056
10057         * thread.c (thread_apply_all_command): Fix comment.
10058         (thread_command): Fix comment.
10059
10060 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
10061
10062         * common/tdesc.h (tdesc_create_feature): Remove xml filename
10063         parameter.
10064         * features/aarch64-core.c (create_feature_aarch64_core):
10065         Regenerate.
10066         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
10067         Likewise.
10068         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
10069         Likewise.
10070         * features/i386/32bit-avx512.c
10071         (create_feature_i386_32bit_avx512): Likewise.
10072         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
10073         Likewise.
10074         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
10075         Likewise.
10076         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
10077         Likewise.
10078         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
10079         Likewise.
10080         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
10081         Likewise.
10082         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
10083         Likewise.
10084         * features/i386/64bit-avx512.c
10085         (create_feature_i386_64bit_avx512): Likewise.
10086         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
10087         Likewise.
10088         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
10089         Likewise.
10090         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
10091         Likewise.
10092         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
10093         Likewise.
10094         * features/i386/64bit-segments.c
10095         (create_feature_i386_64bit_segments): Likewise.
10096         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
10097         Likewise.
10098         * features/i386/x32-core.c
10099         (create_feature_i386_x32_core): Likewise.
10100         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
10101         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
10102         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
10103         * target-descriptions.c: In generated code, don't pass xml
10104         filename.
10105
10106 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10107
10108         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
10109         (print_xml_feature::visit_post): Likewise.
10110         (print_xml_feature::visit): Likewise.
10111         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
10112         (print_xml_feature): Add new class.
10113         * regformats/regdat.sh: Null xmltarget on feature targets.
10114         * target-descriptions.c (struct target_desc): Add xmltarget.
10115         (maintenance_check_tdesc_xml_convert): Add unittest function.
10116         (tdesc_get_features_xml): Add function to get xml.
10117         (maintenance_check_xml_descriptions): Test xml generation.
10118         * xml-tdesc.c (string_read_description_xml): Add function.
10119         * xml-tdesc.h (string_read_description_xml): Add declaration.
10120
10121 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10122
10123         * features/Makefile: Add feature marker to targets with new style
10124         target descriptions.
10125         * regformats/aarch64.dat: Regenerate.
10126         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
10127         * regformats/i386/amd64-avx-linux.dat: Likewise.
10128         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
10129         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
10130         * regformats/i386/amd64-linux.dat: Likewise.
10131         * regformats/i386/amd64-mpx-linux.dat: Likewise.
10132         * regformats/i386/amd64.dat: Likewise.
10133         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
10134         * regformats/i386/i386-avx-linux.dat: Likewise.
10135         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
10136         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
10137         * regformats/i386/i386-linux.dat: Likewise.
10138         * regformats/i386/i386-mmx-linux.dat: Likewise.
10139         * regformats/i386/i386-mpx-linux.dat: Likewise.
10140         * regformats/i386/i386.dat: Likewise.
10141         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
10142         * regformats/i386/x32-avx-linux.dat: Likewise.
10143         * regformats/i386/x32-linux.dat: Likewise.
10144         * regformats/tic6x-c62x-linux.dat: Likewise.
10145         * regformats/tic6x-c64x-linux.dat: Likewise.
10146         * regformats/tic6x-c64xp-linux.dat: Likewise.
10147         * regformats/regdat.sh: Parse feature marker.
10148
10149 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10150
10151         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
10152         (tdesc_osabi_name): Likewise.
10153         * target-descriptions.c (tdesc_architecture_name): Add new
10154         function.
10155         (tdesc_osabi_name): Likewise.
10156
10157 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10158
10159         * common/tdesc.c (tdesc_predefined_type): Move to here.
10160         (tdesc_named_type): Likewise.
10161         (tdesc_create_vector): Likewise.
10162         (tdesc_create_struct): Likewise.
10163         (tdesc_set_struct_size): Likewise.
10164         (tdesc_create_union): Likewise.
10165         (tdesc_create_flags): Likewise.
10166         (tdesc_create_enum): Likewise.
10167         (tdesc_add_field): Likewise.
10168         (tdesc_add_typed_bitfield): Likewise.
10169         (tdesc_add_bitfield): Likewise.
10170         (tdesc_add_flag): Likewise.
10171         (tdesc_add_enum_value): Likewise.
10172         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
10173         (struct tdesc_type_vector): Likewise.
10174         (struct tdesc_type_field): Likewise.
10175         (struct tdesc_type_with_fields): Likewise.
10176         (tdesc_create_enum): Add declaration.
10177         (tdesc_add_typed_bitfield): Likewise.
10178         (tdesc_add_enum_value): Likewise.
10179         * target-descriptions.c (tdesc_type_field): Move from here.
10180         (tdesc_type_builtin): Likewise.
10181         (tdesc_type_vector): Likewise.
10182         (tdesc_type_with_fields): Likewise.
10183         (tdesc_predefined_types): Likewise.
10184         (tdesc_named_type): Likewise.
10185         (tdesc_create_vector): Likewise.
10186         (tdesc_create_struct): Likewise.
10187         (tdesc_set_struct_size): Likewise.
10188         (tdesc_create_union): Likewise.
10189         (tdesc_create_flags): Likewise.
10190         (tdesc_create_enum): Likewise.
10191         (tdesc_add_field): Likewise.
10192         (tdesc_add_typed_bitfield): Likewise.
10193         (tdesc_add_bitfield): Likewise.
10194         (tdesc_add_flag): Likewise.
10195         (tdesc_add_enum_value): Likewise.
10196         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
10197         (tdesc_add_typed_bitfield): Likewise.
10198         (tdesc_add_enum_value): Likewise.
10199
10200 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10201
10202         * common/tdesc.c (tdesc_feature::accept): Move to here.
10203         (tdesc_feature::operator==): Likewise.
10204         (tdesc_create_reg): Likewise.
10205         * common/tdesc.h (tdesc_type_kind): Likewise.
10206         (struct tdesc_type): Likewise.
10207         (struct tdesc_feature): Likewise.
10208         * regformats/regdat.sh: Create a feature.
10209         * target-descriptions.c (tdesc_type_kind): Move from here.
10210         (tdesc_type): Likewise.
10211         (tdesc_type_up): Likewise.
10212         (tdesc_feature): Likewise.
10213         (tdesc_create_reg): Likewise.
10214
10215 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10216
10217         * Makefile.in: Add arch/tdesc.c
10218         * common/tdesc.c: New file.
10219         * common/tdesc.h (tdesc_element_visitor): Move to here.
10220         (tdesc_element): Likewise.
10221         (tdesc_reg): Likewise.
10222         (tdesc_reg_up): Likewise.
10223         * regformats/regdef.h (reg): Add offset to constructors.
10224         * target-descriptions.c (tdesc_element_visitor): Move from here.
10225         (tdesc_element): Likewise.
10226         (tdesc_reg): Likewise.
10227         (tdesc_reg_up): Likewise.
10228
10229 2018-04-17  Tom Tromey  <tom@tromey.com>
10230
10231         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
10232         discriminant field.
10233
10234 2018-04-17  Tom Tromey  <tom@tromey.com>
10235
10236         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
10237
10238 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10239
10240         * symtab.c (print_symbol_info): Skip printing filename and line
10241         number when `last' is NULL.
10242         (symtab_symbol_info): Use empty string instead of NULL for first
10243         invocation of print_symbol_info.
10244         (rbreak_command): Pass NULL to `last' parameter of
10245         print_symbol_info.
10246
10247 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
10248
10249         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
10250         instead of nullptr.
10251
10252 2018-04-16  Pedro Alves  <palves@redhat.com>
10253
10254         * MAINTAINERS (sh): Remove.
10255         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
10256         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
10257         (ALLDEPFILES): Remove sh64-tdep.c.
10258         * NEWS: Mentions that support for SH-5/SH64 is removed.
10259         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
10260         (sh*-*-openbsd*): Ditto.
10261         (sh64-*-elf*): Remove.
10262         (sh*): Remove.
10263         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
10264         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
10265         * sh-tdep.c: No longer include "sh64-tdep.h".
10266         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
10267         * sh64-tdep.c, sh64-tdep.h: Remove files.
10268
10269 2018-04-16  Pedro Alves  <palves@redhat.com>
10270
10271         * MAINTAINERS: Remove m88k.
10272         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
10273         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
10274         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
10275         * NEWS: Mention that support for m88k was removed.
10276         * configure.host (m88*-*-*): Remove support.
10277         * configure.nat (m88k-*-*): Remove support.
10278         * configure.tgt (m88*-*-openbsd*): Remove.
10279         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
10280
10281 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
10282
10283         * configure.tgt (x86_tobjs): New variable.
10284         (amd64_tobjs, i386_tobjs): Use it.
10285
10286 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10287
10288         * symtab.c (print_symbol_info): Precede the symbol definition by
10289         the line number when available.
10290         * NEWS: Advertise this enhancement.
10291
10292 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10293
10294         * NEWS (New options): announce set/show record btrace cpu.
10295         * btrace.c: Include record-btrace.h.
10296         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
10297         the vendor is unknown.
10298         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
10299         Maybe overwrite the btrace configuration's cpu.
10300         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
10301         (btrace_fetch): Add cpu parameter.  Update callers.
10302         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
10303         Maybe overwrite the btrace configuration's cpu.  Skip enabling
10304         errata workarounds if the vendor is unknown.
10305         * python/py-record-btrace.c: Include record-btrace.h.
10306         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
10307         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
10308         * record-btrace.c (record_btrace_cpu_state_kind): New.
10309         (record_btrace_cpu): New.
10310         (set_record_btrace_cpu_cmdlist): New.
10311         (record_btrace_get_cpu): New.
10312         (require_btrace_thread, record_btrace_info)
10313         (record_btrace_resume_thread): Call record_btrace_get_cpu.
10314         (cmd_set_record_btrace_cpu_none): New.
10315         (cmd_set_record_btrace_cpu_auto): New.
10316         (cmd_set_record_btrace_cpu): New.
10317         (cmd_show_record_btrace_cpu): New.
10318         (_initialize_record_btrace): Initialize set/show record btrace cpu
10319         commands.
10320         * record-btrace.h (record_btrace_get_cpu): New.
10321
10322 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10323
10324         * record.c (set_record_command): Fix typo in message.
10325
10326 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10327
10328         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
10329
10330 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10331
10332         * infrun.c (process_event_stop_test): Call
10333         gdbarch_in_indirect_branch_thunk.
10334         * gdbarch.sh (in_indirect_branch_thunk): New.
10335         * gdbarch.c: Regenerated.
10336         * gdbarch.h: Regenerated.
10337         * x86-tdep.h: New.
10338         * x86-tdep.c: New.
10339         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
10340         (HFILES_NO_SRCDIR): Add x86-tdep.h.
10341         (ALLDEPFILES): Add x86-tdep.c.
10342         * arch-utils.h (default_in_indirect_branch_thunk): New.
10343         * arch-utils.c (default_in_indirect_branch_thunk): New.
10344         * i386-tdep: Include x86-tdep.h.
10345         (i386_in_indirect_branch_thunk): New.
10346         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
10347         function.
10348         * amd64-tdep: Include x86-tdep.h.
10349         (amd64_in_indirect_branch_thunk): New.
10350         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
10351
10352 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
10353
10354         PR gdb/23053
10355         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
10356         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
10357         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
10358         regression.
10359
10360 2018-04-12  Tom Tromey  <tom@tromey.com>
10361
10362         * rust-lang.c (rust_print_struct_def): Remove univariant code.
10363         (rust_evaluate_subexp): Likewise.
10364
10365 2018-04-12  Pedro Alves  <palves@redhat.com>
10366
10367         * procfs.c (procfs_detach): Make forward declaration's prototype
10368         match definition's protototype.
10369         (proc_get_LDT_entry): Remove stale do_cleanups call.
10370
10371 2018-04-12  Pedro Alves  <palves@redhat.com>
10372
10373         * target.h (target_ops::to_has_exited): Delete.
10374         (target_has_exited): Delete.
10375         * target-delegates.c: Regenerate.
10376
10377 2018-04-11  Pedro Alves  <palves@redhat.com>
10378
10379         * target.c (fileio_fh_t::t): Add comment.
10380         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10381         (target_fileio_close): Handle a NULL target.
10382         (invalidate_fileio_fh): New.
10383         (target_close): Call it.
10384         * remote.c (remote_hostio_send_command): No longer check whether
10385         remote_desc is open.
10386
10387 2018-04-11  Pedro Alves  <palves@redhat.com>
10388
10389         * target.c (fileio_fh_t): Make it a named struct instead of a
10390         typedef.
10391         (fileio_fh_t::is_closed): New method.
10392         (DEF_VEC_O (fileio_fh_t)): Remove.
10393         (fileio_fhandles): Now a std::vector.
10394         (is_closed_fileio_fh): Delete.
10395         (acquire_fileio_fd): Adjust.  Rename parameters.
10396         (release_fileio_fd): Adjust.
10397         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
10398         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10399         (target_fileio_close): Adjust.
10400
10401 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
10402
10403         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
10404         index.
10405
10406 2018-04-10  Pedro Alves  <palves@redhat.com>
10407
10408         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
10409         (scoped_finish_thread_state): New class.
10410         * infcmd.c (run_command_1): Use it instead of finish_thread_state
10411         cleanup.
10412         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
10413         (fetch_inferior_event, normal_stop): Likewise.
10414         * thread.c (finish_thread_state_cleanup): Delete.
10415
10416 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10417             Pedro Alves  <palves@redhat.com>
10418
10419         * value.c: Include "selftest.h" and "common/array-view.h".
10420         (struct range) <operator ==>: New.
10421         (test_ranges_contain): New.
10422         (check_ranges_vector): New.
10423         (test_insert_into_bit_range_vector): New.
10424         (_initialize_values): Register selftests.
10425         * common/array-view.h (operator==, operator!=): New.
10426
10427 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10428
10429         * common/gdb_vecs.h (unordered_remove): Add overload that takes
10430         an iterator.
10431         * inline-frame.c: Include <algorithm>.
10432         (struct inline_state): Add constructor.
10433         (inline_state_s): Remove.
10434         (DEF_VEC_O(inline_state_s)): Remove.
10435         (inline_states): Change type to std::vector.
10436         (find_inline_frame_state): Adjust to std::vector.
10437         (allocate_inline_frame_state): Remove.
10438         (clear_inline_frame_state): Adjust to std::vector.
10439         (skip_inline_frames): Adjust to std::vector.
10440
10441 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10442
10443         * tracepoint.h (struct trace_state_variable): Add constructor.
10444         <name>: Change type to std::string.
10445         * tracepoint.c (tsv_s): Remove.
10446         (DEF_VEC_O(tsv_s)): Remove.
10447         (tvariables): Change to std::vector.
10448         (create_trace_state_variable): Adjust to std::vector.
10449         (find_trace_state_variable): Likewise.
10450         (find_trace_state_variable_by_number): Likewise.
10451         (delete_trace_state_variable): Likewise.
10452         (trace_variable_command): Adjust to std::string.
10453         (delete_trace_variable_command): Likewise.
10454         (tvariables_info_1): Adjust to std::vector.
10455         (save_trace_state_variables): Likewise.
10456         (start_tracing): Likewise.
10457         (merge_uploaded_trace_state_variables): Adjust to std::vector
10458         and std::string.
10459         * target.h (struct target_ops)
10460         <to_download_trace_state_variable>: Pass reference to
10461         trace_state_variable.
10462         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
10463         * target-delegates.c: Re-generate.
10464         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
10465         (mi_tsv_deleted): Likewise.
10466         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
10467         * remote.c (remote_download_trace_state_variable): Change
10468         pointer to reference and adjust.
10469         * make-target-delegates (parse_argtypes): Handle references.
10470         (write_function_header): Likewise.
10471         (munge_type): Likewise.
10472
10473 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10474
10475         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10476         string_view-selftests.c.
10477         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
10478         testsuite.
10479         * unittests/basic_string_view/cons/char/1.cc: Likewise.
10480         * unittests/basic_string_view/cons/char/2.cc: Likewise.
10481         * unittests/basic_string_view/cons/char/3.cc: Likewise.
10482         * unittests/basic_string_view/element_access/char/1.cc:
10483         Likewise.
10484         * unittests/basic_string_view/element_access/char/empty.cc:
10485         Likewise.
10486         * unittests/basic_string_view/element_access/char/front_back.cc:
10487         Likewise.
10488         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
10489         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
10490         Likewise.
10491         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
10492         Likewise.
10493         * unittests/basic_string_view/modifiers/swap/char/1.cc:
10494         Likewise.
10495         * unittests/basic_string_view/operations/compare/char/1.cc:
10496         Likewise.
10497         * unittests/basic_string_view/operations/compare/char/13650.cc:
10498         Likewise.
10499         * unittests/basic_string_view/operations/copy/char/1.cc:
10500         Likewise.
10501         * unittests/basic_string_view/operations/data/char/1.cc:
10502         Likewise.
10503         * unittests/basic_string_view/operations/find/char/1.cc:
10504         Likewise.
10505         * unittests/basic_string_view/operations/find/char/2.cc:
10506         Likewise.
10507         * unittests/basic_string_view/operations/find/char/3.cc:
10508         Likewise.
10509         * unittests/basic_string_view/operations/find/char/4.cc:
10510         Likewise.
10511         * unittests/basic_string_view/operations/rfind/char/1.cc:
10512         Likewise.
10513         * unittests/basic_string_view/operations/rfind/char/2.cc:
10514         Likewise.
10515         * unittests/basic_string_view/operations/rfind/char/3.cc:
10516         Likewise.
10517         * unittests/basic_string_view/operations/substr/char/1.cc:
10518         Likewise.
10519         * unittests/basic_string_view/operators/char/2.cc: Likewise.
10520         * unittests/string_view-selftests.c: New file.
10521
10522 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10523
10524         * unittests/basic_string_view/capacity/1.cc: New file.
10525         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
10526         * unittests/basic_string_view/cons/char/1.cc: New file.
10527         * unittests/basic_string_view/cons/char/2.cc: New file.
10528         * unittests/basic_string_view/cons/char/3.cc: New file.
10529         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
10530         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
10531         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
10532         * unittests/basic_string_view/element_access/char/1.cc: New file.
10533         * unittests/basic_string_view/element_access/char/2.cc: New file.
10534         * unittests/basic_string_view/element_access/char/empty.cc: New file.
10535         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
10536         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
10537         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
10538         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
10539         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
10540         * unittests/basic_string_view/include.cc: New file.
10541         * unittests/basic_string_view/inserters/char/1.cc: New file.
10542         * unittests/basic_string_view/inserters/char/2.cc: New file.
10543         * unittests/basic_string_view/inserters/char/3.cc: New file.
10544         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
10545         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
10546         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
10547         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
10548         * unittests/basic_string_view/literals/types.cc: New file.
10549         * unittests/basic_string_view/literals/values.cc: New file.
10550         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
10551         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
10552         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
10553         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
10554         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
10555         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
10556         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
10557         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
10558         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
10559         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
10560         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
10561         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
10562         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
10563         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
10564         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
10565         * unittests/basic_string_view/operations/data/char/1.cc: New file.
10566         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
10567         * unittests/basic_string_view/operations/find/char/1.cc: New file.
10568         * unittests/basic_string_view/operations/find/char/2.cc: New file.
10569         * unittests/basic_string_view/operations/find/char/3.cc: New file.
10570         * unittests/basic_string_view/operations/find/char/4.cc: New file.
10571         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
10572         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
10573         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
10574         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
10575         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
10576         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
10577         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
10578         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
10579         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
10580         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
10581         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
10582         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
10583         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
10584         * unittests/basic_string_view/operators/char/2.cc: New file.
10585         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
10586         * unittests/basic_string_view/range_access/char/1.cc: New file.
10587         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
10588         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
10589         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
10590         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
10591         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
10592         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
10593         * unittests/basic_string_view/requirements/typedefs.cc: New file.
10594         * unittests/basic_string_view/typedefs.cc: New file.
10595         * unittests/basic_string_view/types/1.cc: New file.
10596
10597 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10598
10599         * common/gdb_string_view.h: Remove libstdc++ implementation
10600         details, adjust to gdb reality.
10601         * common/gdb_string_view.tcc: Likewise.
10602         * cli/cli-script.c (struct string_view): Remove.
10603         (user_args) <m_args>: Change element type to gdb::string_view.
10604         (user_args::insert_args): Adjust.
10605
10606 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10607
10608         * common/gdb_string_view.h: New file.
10609         * common/gdb_string_view.tcc: New file.
10610
10611 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10612
10613         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
10614         * configure: Re-generate.
10615
10616 2018-04-09  Pedro Alves  <palves@redhat.com>
10617
10618         * gdbarch.sh: Include "observable.h" instead of "observer.h".
10619         (set_target_gdbarch): Call
10620         gdb::observers::architecture_changed.notify instead of
10621         observer_notify_architecture_changed.
10622
10623 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10624
10625         * tracepoint.c (struct current_traceframe_cleanup): Remove.
10626         (do_restore_current_traceframe_cleanup): Remove.
10627         (restore_current_traceframe_cleanup_dtor): Remove.
10628         (make_cleanup_restore_current_traceframe): Remove.
10629         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
10630         New.
10631         * tracepoint.h (struct scoped_restore_current_traceframe): New.
10632         * infrun.c (fetch_inferior_event): Use
10633         scoped_restore_current_traceframe.
10634
10635 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10636
10637         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
10638         Remove.
10639         <n_allocated_type_units>: Remove.
10640         <all_type_units>: Change to std::vector.
10641         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
10642         to std::vector change.
10643         (dwarf2_per_objfile::get_cutu): Likewise.
10644         (dwarf2_per_objfile::get_tu): Likewise.
10645         (create_signatured_type_table_from_index): Likewise.
10646         (create_signatured_type_table_from_debug_names): Likewise.
10647         (dw2_symtab_iter_next): Likewise.
10648         (dw2_print_stats): Likewise.
10649         (dw2_expand_all_symtabs): Likewise.
10650         (dw2_expand_marked_cus): Likewise.
10651         (dw2_debug_names_iterator::next): Likewise.
10652         (dwarf2_initialize_objfile): Likewise.
10653         (add_signatured_type_cu_to_table): Likewise.
10654         (create_all_type_units): Likewise.
10655         (add_type_unit): Likewise.
10656         (struct tu_abbrev_offset): Add constructor.
10657         (build_type_psymtabs_1): Adjust to std::vector change.
10658         (print_tu_stats): Likewise.
10659         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
10660         (write_debug_names): Likewise.
10661
10662 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10663
10664         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
10665         Make an std::vector.
10666         <n_comp_units>: Remove.
10667         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
10668         to std::vector change.
10669         (dwarf2_per_objfile::get_cutu): Likewise.
10670         (dwarf2_per_objfile::get_cu): Likewise.
10671         (create_cus_from_index): Likewise.
10672         (create_addrmap_from_index): Likewise.
10673         (create_addrmap_from_aranges): Likewise.
10674         (dwarf2_read_index): Likewise.
10675         (dw2_find_last_source_symtab): Likewise.
10676         (dw2_map_symtabs_matching_filename): Likewise.
10677         (dw2_symtab_iter_next): Likewise.
10678         (dw2_print_stats): Likewise.
10679         (dw2_expand_all_symtabs): Likewise.
10680         (dw2_expand_symtabs_with_fullname): Likewise.
10681         (dw2_expand_marked_cus): Likewise.
10682         (dw2_map_symbol_filenames): Likewise.
10683         (create_cus_from_debug_names): Likewise.
10684         (dwarf2_read_debug_names): Likewise.
10685         (dw2_debug_names_iterator::next): Likewise.
10686         (dwarf2_initialize_objfile): Likewise.
10687         (set_partial_user): Likewise.
10688         (dwarf2_build_psymtabs_hard): Likewise.
10689         (read_comp_units_from_section): Remove arguments, adjust to
10690         std::vector change.
10691         (create_all_comp_units): Adjust to std::vector and
10692         read_comp_units_from_section changes.
10693         (dwarf2_find_containing_comp_unit): Adjust to std::vector
10694         change.
10695         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
10696         (psyms_seen_size): Likewise.
10697         (write_gdbindex): Likewise.
10698         (write_debug_names): Likewise.
10699
10700 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10701
10702         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
10703         with dwarf2_per_objfile.
10704         (create_cus_from_index): Likewise.
10705         (create_signatured_type_table_from_index): Likewise.
10706         (dwarf2_read_index): Likewise.
10707         (dwarf2_initialize_objfile): Likewise.
10708         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
10709         per_cu rather than get_dwarf2_per_objfile.
10710
10711 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10712
10713         * dwarf2read.h (struct signatured_type): Forward declare.
10714         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
10715         New methods.
10716         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
10717         (dw2_get_cutu): ...this.
10718         (dwarf2_per_objfile::get_cu): Rename from...
10719         (dw2_get_cu): ...this.
10720         (dwarf2_per_objfile::get_tu): New.
10721         (create_addrmap_from_index): Adjust.
10722         (create_addrmap_from_aranges): Adjust.
10723         (dw2_find_last_source_symtab): Adjust.
10724         (dw2_map_symtabs_matching_filename): Adjust.
10725         (dw2_symtab_iter_next): Adjust.
10726         (dw2_print_stats): Adjust.
10727         (dw2_expand_all_symtabs): Adjust.
10728         (dw2_expand_symtabs_with_fullname): Adjust.
10729         (dw2_expand_marked_cus): Adjust.
10730         (dw_expand_symtabs_matching_file_matcher): Adjust.
10731         (dw2_map_symbol_filenames): Adjust.
10732         (dw2_debug_names_iterator::next): Adjust.
10733         (dwarf2_initialize_objfile): Adjust.
10734         (set_partial_user): Adjust.
10735         (dwarf2_build_psymtabs_hard): Adjust.
10736
10737 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10738
10739         * dwarf2read.c (create_signatured_type_table_from_debug_names):
10740         Remove unused variables.
10741         (dw2_map_symtabs_matching_filename): Likewise.
10742         (dwarf2_record_block_ranges): Likewise.
10743         (dwarf2_read_addr_index): Likewise.
10744         (follow_die_offset): Likewise.
10745
10746 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10747
10748         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
10749         to symbol_file_add_main.
10750
10751 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10752
10753         PR mi/22299
10754         * mi/mi-console.c (do_fputc_async_safe): New.
10755         (mi_console_file::write_async_safe): New.
10756         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
10757         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
10758         New.
10759         * ui-file.c (ui_file::putstrn): Adjust call to
10760         fputstrn_unfiltered.
10761         * utils.c (printchar): Replace do_fputs and do_fprintf
10762         parameters by do_fputc.
10763         (fputstr_filtered): Adjust call to printchar.
10764         (fputstr_unfiltered): Likewise.
10765         (fputstrn_filtered): Likewise.
10766         (fputstrn_unfiltered): Add do_fputc parameter, pass to
10767         printchar.
10768         * utils.h (do_fputc_ftype): New typedef.
10769         (fputstrn_unfiltered): Add do_fputc parameter.
10770
10771 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10772
10773         * regformats/i386/i386-avx.dat: Remove.
10774
10775 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
10776
10777         PR gdb/22979
10778         * amd64-tdep.c (amd64_none_init_abi): New function.
10779         (amd64_x32_none_init_abi): New function.
10780         (_initialize_amd64_tdep): Register handlers for x86-64 and
10781         x64_32 with GDB_OSABI_NONE.
10782         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
10783         GDB_OSABI_NONE osabi.
10784
10785 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
10786
10787         PR gdb/22980
10788         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
10789         GDB_OSABI_NONE.
10790         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
10791         * osabi.c (gdb_osabi_names): Add "unknown" entry.
10792
10793 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
10794
10795         * common/byte-vector.h (char_vector): New type.
10796         * target.h (target_read_alloc): Return
10797         gdb::optional<byte_vector>.
10798         (target_read_stralloc): Return gdb::optional<char_vector>.
10799         (target_get_osdata): Return gdb::optional<char_vector>.
10800         * target.c (target_read_alloc_1): Templatize.  Replacement
10801         manual memory management with vector.
10802         (target_read_alloc): Change return type, adjust.
10803         (target_read_stralloc): Change return type, adjust.
10804         (target_get_osdata): Change return type, adjust.
10805         * auxv.c (struct auxv_info) <length>: Remove.
10806         <data>: Change type to gdb::optional<byte_vector>.
10807         (auxv_inferior_data_cleanup): Free auxv_info with delete.
10808         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
10809         (target_auxv_search): Adjust.
10810         (fprint_target_auxv): Adjust.
10811         * avr-tdep.c (avr_io_reg_read_command): Adjust.
10812         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
10813         (linux_make_corefile_notes): Adjust.
10814         * osdata.c (get_osdata): Adjust.
10815         * remote.c (remote_get_threads_with_qxfer): Adjust.
10816         (remote_memory_map): Adjust.
10817         (remote_traceframe_info): Adjust.
10818         (btrace_read_config): Adjust.
10819         (remote_read_btrace): Adjust.
10820         (remote_pid_to_exec_file): Adjust.
10821         * solib-aix.c (solib_aix_get_library_list): Adjust.
10822         * solib-dsbt.c (decode_loadmap): Don't free buf.
10823         (dsbt_get_initial_loadmaps): Adjust.
10824         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
10825         * solib-target.c (solib_target_current_sos): Adjust.
10826         * tracepoint.c (sdata_make_value): Adjust.
10827         * xml-support.c (xinclude_start_include): Adjust.
10828         (xml_fetch_content_from_file): Adjust.
10829         * xml-support.h (xml_fetch_another): Change return type.
10830         (xml_fetch_content_from_file): Change return type.
10831         * xml-syscall.c (xml_init_syscalls_info): Adjust.
10832         * xml-tdesc.c (file_read_description_xml): Adjust.
10833         (fetch_available_features_from_target): Change return type.
10834         (target_fetch_description_xml): Adjust.
10835         (target_read_description_xml): Adjust.
10836
10837 2018-04-06  Tom Tromey  <tom@tromey.com>
10838
10839         * value.c (~value): Update.
10840         (struct value) <contents>: Now unique_xmalloc_ptr.
10841         (value_contents_bits_eq, allocate_value_contents)
10842         (value_contents_raw, value_contents_all_raw)
10843         (value_contents_for_printing, value_contents_for_printing_const)
10844         (set_value_enclosing_type): Update.
10845
10846 2018-04-06  Tom Tromey  <tom@tromey.com>
10847
10848         * value.c (range_s): Remove typedef, VEC.
10849         (struct range): Add operator<.
10850         (range_lessthan): Remove.
10851         (ranges_contain): Change type.
10852         (~value): Update.
10853         (struct value) <unavailable, optimized_out>: Now std::vector.
10854         (value_entirely_available)
10855         (value_entirely_covered_by_range_vector)
10856         (value_entirely_unavailable, value_entirely_optimized_out):
10857         Update.
10858         (insert_into_bit_range_vector): Change argument type.
10859         (find_first_range_overlap): Likewise.
10860         (struct ranges_and_idx, value_contents_bits_eq)
10861         (require_not_optimized_out, require_available): Update.
10862         (ranges_copy_adjusted): Change argument types.
10863         (value_optimized_out, value_copy, value_fetch_lazy): Update.
10864
10865 2018-04-06  Tom Tromey  <tom@tromey.com>
10866
10867         * value.c (~value): Update.
10868         (struct value) <parent>: Now a value_ref_ptr.
10869         (value_parent, set_value_parent, value_address, value_copy):
10870         Update.
10871
10872 2018-04-06  Tom Tromey  <tom@tromey.com>
10873
10874         * value.c (struct value): Add constructor, destructor, and member
10875         initializers.
10876         (allocate_value_lazy, value_decref): Update.
10877
10878 2018-04-06  Tom Tromey  <tom@tromey.com>
10879
10880         * value.c (struct value) <released, next>: Remove.
10881         (all_values): Now a std::vector.
10882         (allocate_value_lazy): Update.
10883         (value_next): Remove.
10884         (value_mark, value_free_to_mark, release_value)
10885         (value_release_to_mark): Update.
10886
10887 2018-04-06  Tom Tromey  <tom@tromey.com>
10888
10889         * value.h (fetch_subexp_value, value_release_to_mark): Update.
10890         (free_value_chain): Remove.
10891         * value.c (free_value_chain): Remove.
10892         (value_release_to_mark): Return a std::vector.
10893         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
10894         std::vector.
10895         (check_condition): Update.
10896         * eval.c (fetch_subexp_value): Change "val_chain" to a
10897         std::vector.
10898         * breakpoint.c (update_watchpoint): Update.
10899         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
10900
10901 2018-04-06  Tom Tromey  <tom@tromey.com>
10902
10903         * value.h (free_all_values): Remove.
10904         * value.c (free_all_values): Remove.
10905
10906 2018-04-06  Tom Tromey  <tom@tromey.com>
10907
10908         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
10909         (value_history_chain, value_history_count): Remove.
10910         (value_history): New global.
10911         (record_latest_value, access_value_history, show_values)
10912         (preserve_values): Update.
10913
10914 2018-04-06  Tom Tromey  <tom@tromey.com>
10915
10916         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
10917         * varobj.c (varobj_set_display_format, varobj_set_value)
10918         (install_default_visualizer, construct_visualizer)
10919         (install_new_value, ~varobj, varobj_get_value_type)
10920         (my_value_of_variable, varobj_editable_p): Update.
10921         * c-varobj.c (c_describe_child, c_value_of_variable)
10922         (cplus_number_of_children, cplus_describe_child): Update.
10923         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
10924         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
10925         (ada_value_of_variable, ada_value_is_changeable_p): Update.
10926
10927 2018-04-06  Tom Tromey  <tom@tromey.com>
10928
10929         * printcmd.c (last_examine_address): Change type to
10930         value_ref_ptr.
10931         (do_examine, x_command): Update.
10932
10933 2018-04-06  Tom Tromey  <tom@tromey.com>
10934
10935         * value.c (release_value): Update.
10936         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
10937         (struct bpstats) <val>: Now a value_ref_ptr.
10938         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
10939         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
10940         (~watchpoint, print_it_watchpoint, watch_command_1)
10941         (invalidate_bp_value_on_memory_change): Update.
10942
10943 2018-04-06  Tom Tromey  <tom@tromey.com>
10944
10945         * varobj.c (varobj_clear_saved_item)
10946         (update_dynamic_varobj_children, install_new_value, ~varobj):
10947         Update.
10948         * value.h (value_incref): Move declaration earlier.
10949         (value_decref): Rename from value_free.
10950         (struct value_ref_policy): New.
10951         (value_ref_ptr): New typedef.
10952         (struct value_deleter): Remove.
10953         (gdb_value_up): Remove typedef.
10954         (release_value): Change return type.
10955         (release_value_or_incref): Remove.
10956         * value.c (set_value_parent): Update.
10957         (value_incref): Change return type.
10958         (value_decref): Rename from value_free.
10959         (value_free_to_mark, free_all_values, free_value_chain): Update.
10960         (release_value): Return value_ref_ptr.
10961         (release_value_or_incref): Remove.
10962         (record_latest_value, set_internalvar, clear_internalvar):
10963         Update.
10964         * stack.c (info_frame_command): Don't call value_free.
10965         * python/py-value.c (valpy_dealloc, valpy_new)
10966         (value_to_value_object): Update.
10967         * printcmd.c (do_examine): Update.
10968         * opencl-lang.c (lval_func_free_closure): Update.
10969         * mi/mi-main.c (register_changed_p): Don't call value_free.
10970         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
10971         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
10972         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
10973         value_free.
10974         * guile/scm-value.c (vlscm_free_value_smob)
10975         (vlscm_scm_from_value): Update.
10976         * frame.c (frame_register_unwind, frame_unwind_register_signed)
10977         (frame_unwind_register_unsigned, get_frame_register_bytes)
10978         (put_frame_register_bytes): Don't call value_free.
10979         * findvar.c (address_from_register): Don't call value_free.
10980         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
10981         * dwarf2loc.c (entry_data_value_free_closure)
10982         (value_of_dwarf_reg_entry, free_pieced_value_closure)
10983         (dwarf2_evaluate_loc_desc_full): Update.
10984         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
10985         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
10986         (~watchpoint, watch_command_1)
10987         (invalidate_bp_value_on_memory_change): Update.
10988         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
10989
10990 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
10991
10992         PR gdb/23022
10993         * warning.m4: Add -Wno-error=deprecated-register.
10994         * configure: Re-generate.
10995
10996 2018-04-05  Tom Tromey  <tom@tromey.com>
10997
10998         * linespec.h: Remove include of "vec.h".
10999
11000 2018-04-05  Tom Tromey  <tom@tromey.com>
11001
11002         * linespec.c (typep): Remove typedef.
11003         (find_methods, find_superclass_methods): Take a std::vector.
11004         (find_method): Use std::vector.
11005
11006 2018-04-05  Tom Tromey  <tom@tromey.com>
11007
11008         * utils.c (compare_strings): Remove.
11009         * utils.h (compare_strings): Remove.
11010         * objc-lang.h (find_imps): Update.
11011         * objc-lang.c (find_methods): Take a std::vector.
11012         (uniquify_strings, find_imps): Likewise.
11013         * linespec.c (find_methods): Take a std::vector.
11014         (decode_objc): Use std::vector.
11015         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
11016         a std::vector.
11017         (find_method, find_function_symbols): Use std::vector.
11018
11019 2018-04-05  Tom Tromey  <tom@tromey.com>
11020
11021         * completer.c (completion_tracker::completion_tracker): Remove
11022         cast.
11023         (completion_tracker::discard_completions): Likewise.
11024         * breakpoint.c (ambiguous_names_p): Remove cast.
11025         * ada-lang.c (_initialize_ada_language): Remove cast.
11026         * utils.h (streq): Update.
11027         (streq_hash): Add new declaration.
11028         * utils.c (streq): Return bool.
11029         (streq_hash): New function.
11030
11031 2018-04-05  Tom Tromey  <tom@tromey.com>
11032
11033         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
11034         Remove a string copy.
11035
11036 2018-04-05  Tom Tromey  <tom@tromey.com>
11037
11038         * linespec.c (filter_results): Use std::vector.
11039         (decode_line_2, decode_line_full): Update.
11040
11041 2018-04-05  Tom Tromey  <tom@tromey.com>
11042
11043         * linespec.c (canonical_to_fullform): Return std::string.
11044         (filter_results): Update.
11045         (struct decode_line_2_item): Add constructor.
11046         <fullform, displayform>: Now std::string.
11047         (decode_line_2_compare_items): Now a std::sort comparator.
11048         (decode_line_2): Update.
11049
11050 2018-04-05  Tom Tromey  <tom@tromey.com>
11051
11052         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
11053         (unexpected_linespec_error): Update.
11054         (linespec_parse_basic, parse_linespec): Update.
11055
11056 2018-04-05  Tom Tromey  <tom@tromey.com>
11057
11058         * linespec.c (linespec_parse_basic): Reindent.
11059
11060 2018-04-05  Tom Tromey  <tom@tromey.com>
11061
11062         * minsyms.h (iterate_over_minimal_symbols): Update.
11063         * minsyms.c (iterate_over_minimal_symbols): Take a
11064         gdb::function_view.
11065         * linespec.c (struct collect_minsyms): Remove.
11066         (compare_msyms): Now a std::sort comparator.
11067         (add_minsym): Add parameters.
11068         (search_minsyms_for_name): Update.  Use std::vector.
11069
11070 2018-04-03  Tom Tromey  <tom@tromey.com>
11071
11072         * mipsread.c (read_alphacoff_dynamic_symtab): Use
11073         gdb::byte_vector.
11074
11075 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11076
11077         * MAINTAINERS (Write After Approval): Add Weimin Pan.
11078
11079 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11080
11081         PR gdb/16959
11082         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
11083         printing static type.
11084
11085 2018-04-01  Tom Tromey  <tom@tromey.com>
11086
11087         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
11088         (rs6000_xfer_shared_libraries): Update.
11089
11090 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
11091
11092         * common/gdb_vecs.h (char_ptr): Remove.
11093         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
11094
11095 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11096
11097         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
11098         with std::vector.
11099         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
11100
11101 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11102
11103         * tracepoint.h (struct uploaded_tp): Initialize fields.
11104         <actions, step_actions, cmd_strings>: Change type to
11105         std::vector<char *>.
11106         * tracepoint.c (get_uploaded_tp): Allocate with new.
11107         (free_uploaded_tps): Free with delete.
11108         (parse_tracepoint_definition): Adjust to std::vector change.
11109         * breakpoint.c (read_uploaded_action): Likewise.
11110         (create_tracepoint_from_upload): Likewise.
11111         * ctf.c (ctf_write_uploaded_tp): Likewise.
11112         (SET_ARRAY_FIELD): Likewise.
11113         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
11114
11115 2018-03-30  Tom Tromey  <tom@tromey.com>
11116
11117         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
11118         std::unique_ptr.
11119         (svr4_keep_data_in_core): Update.
11120         (svr4_read_so_list): Update.
11121
11122 2018-03-30  Tom Tromey  <tom@tromey.com>
11123
11124         * windows-nat.c (handle_output_debug_string, handle_exception):
11125         Update.
11126         * target.h (target_read_string): Update.
11127         * target.c (target_read_string): Change "string" to
11128         unique_xmalloc_ptr.
11129         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
11130         Update.
11131         * solib-frv.c (frv_current_sos): Update.
11132         * solib-dsbt.c (dsbt_current_sos): Update.
11133         * solib-darwin.c (darwin_current_sos): Update.
11134         * linux-thread-db.c (inferior_has_bug): Update.
11135         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
11136         Update.  Remove alloca.
11137         * ada-lang.c (ada_main_name): Update.
11138
11139 2018-03-30  Tom Tromey  <tom@tromey.com>
11140
11141         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
11142         (struct dwo_file_deleter): New.
11143         (dwo_file_up): New typedef.
11144         (open_and_init_dwo_file): Use dwo_file_up.
11145         (free_dwo_file_cleanup): Remove.
11146
11147 2018-03-30  Tom Tromey  <tom@tromey.com>
11148
11149         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
11150         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
11151
11152 2018-03-30  Tom Tromey  <tom@tromey.com>
11153
11154         * dwarf2read.c (class free_cached_comp_units): New class.
11155         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
11156         (free_cached_comp_units): Remove function.
11157
11158 2018-03-30  Tom Tromey  <tom@tromey.com>
11159
11160         * utils.h (make_cleanup_unpush_target): Remove.
11161         * inf-ptrace.c (struct target_unpusher): New.
11162         (target_unpush_up) New typedef.
11163         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
11164         target_unpush_up.
11165         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
11166
11167 2018-03-27  Tom Tromey  <tom@tromey.com>
11168
11169         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
11170
11171 2018-03-27  Pedro Alves  <palves@redhat.com>
11172             Tom Tromey  <tom@tromey.com>
11173
11174         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
11175         destructor.  Now a class.
11176         (gdb_readline_wrapper_cleanup): Remove function.
11177         (gdb_readline_wrapper): Remove cleanups.
11178
11179 2018-03-27  Tom Tromey  <tom@tromey.com>
11180
11181         * typeprint.h (struct type_print_options) <local_typedefs,
11182         global_typedefs>: Remove "struct" keyword.
11183         (class typedef_hash_table): New class.
11184         (recursively_update_typedef_hash, add_template_parameters)
11185         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
11186         (find_typedef_in_hash): Don't declare.
11187         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
11188         (typedef_hash_table::recursively_update): Rename from
11189         recursively_update_typedef_hash.  Now a member.
11190         (typedef_hash_table::add_template_parameters): Rename from
11191         add_template_parameters.  Now a member.
11192         (typedef_hash_table::typedef_hash_table): Now a constructor;
11193         rename from create_typedef_hash.
11194         (typedef_hash_table::~typedef_hash_table): Now a destructor;
11195         rename from free_typedef_hash.
11196         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
11197         (do_free_global_table): Remove.
11198         (typedef_hash_table::typedef_hash_table): New constructor; renamed
11199         from copy_type_recursive.
11200         (create_global_typedef_table): Remove.
11201         (typedef_hash_table::find_global_typedef): Now a member of
11202         typedef_hash_table.
11203         (typedef_hash_table::find_typedef): Rename from
11204         find_typedef_in_hash; now a member.
11205         (whatis_exp): Update.
11206         * extension.h (struct ext_lang_type_printers): Add constructor and
11207         destructor.
11208         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
11209         declare.
11210         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
11211         Now a constructor; rename from start_ext_lang_type_printers.
11212         (ext_lang_type_printers): Now a destructor; rename from
11213         free_ext_lang_type_printers.
11214         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
11215         Update.
11216         (c_type_print_base_struct_union): Update.  Remove cleanups.
11217
11218 2018-03-27  Tom Tromey  <tom@tromey.com>
11219
11220         * dwarf-index-write.c: Include <cmath>.
11221
11222 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11223
11224         * NEWS: Add entry describing new "set|show varsize-limit" command.
11225         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
11226         command.
11227         * printcmd.c (_initialize_printcmd): Add "set var" alias of
11228         "set variable".
11229
11230 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
11231
11232         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
11233         dwarf-index-write.c
11234         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
11235         * dwarf-index-common.c: New file.
11236         * dwarf-index-common.h: New file.
11237         * dwarf-index-write.c: New file.
11238         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
11239         (struct dwarf2_section_info): Move from here.
11240         (dwarf2_section_info_def): Likewise.
11241         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
11242         (offset_type): Likewise.
11243         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
11244         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
11245         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
11246         (byte_swap): Likewise.
11247         (MAYBE_SWAP): Likewise.
11248         (dwarf2_per_cu_ptr): Likewise.
11249         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
11250         (struct tu_stats): Likewise.
11251         (struct dwarf2_per_objfile): Likewise.
11252         (struct dwarf2_per_cu_data): Likewise.
11253         (struct signatured_type): Likewise.
11254         (sig_type_ptr): Likewise.
11255         (DEF_VEC_P (sig_type_ptr)): Likewise.
11256         (INDEX4_SUFFIX): Likewise.
11257         (INDEX5_SUFFIX): Likewise.
11258         (DEBUG_STR_SUFFIX): Likewise.
11259         (dwarf2_read_section): Make non-static.
11260         (mapped_index_string_hash): Move from here.
11261         (dwarf5_djb_hash): Likewise.
11262         (file_write): Likewise.
11263         (class data_buf): Likewise.
11264         (struct symtab_index_entry): Likewise.
11265         (struct mapped_symtab): Likewise.
11266         (find_slot): Likewise.
11267         (hash_expand): Likewise.
11268         (add_index_entry): Likewise.
11269         (uniquify_cu_indices): Likewise.
11270         (class c_str_view): Likewise.
11271         (class c_str_view_hasher): Likewise.
11272         (class vector_hasher): Likewise.
11273         (write_hash_table): Likewise.
11274         (psym_index_map): Likewise.
11275         (struct addrmap_index_data): Likewise.
11276         (add_address_entry): Likewise.
11277         (add_address_entry_worker): Likewise.
11278         (write_address_map): Likewise.
11279         (symbol_kind): Likewise.
11280         (write_psymbols): Likewise.
11281         (struct signatured_type_index_data): Likewise.
11282         (write_one_signatured_type): Likewise.
11283         (recursively_count_psymbols): Likewise.
11284         (recursively_write_psymbols): Likewise.
11285         (class debug_names): Likewise.
11286         (check_dwarf64_offsets): Likewise.
11287         (psyms_seen_size): Likewise.
11288         (write_gdbindex): Likewise.
11289         (write_debug_names): Likewise.
11290         (assert_file_size): Likewise.
11291         (write_psymtabs_to_index): Likewise.
11292         (save_gdb_index_command): Likewise.
11293         (_initialize_dwarf2_read): Don't register the "save gdb-index"
11294         command.
11295         * dwarf2read.h: New file.
11296
11297 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11298
11299         PR gdb/22670
11300         * dwarf2read.c (dwarf2_physname): Do not return the demangled
11301         symbol name if the CU's language stores symbol names in linkage
11302         format.
11303         * language.h (struct language_defn)
11304         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
11305         all instances of this struct.
11306
11307 2018-03-26  Tom Tromey  <tom@tromey.com>
11308
11309         * stack.c (backtrace_command_1): Remove verbose code.
11310
11311 2018-03-26  Tom Tromey  <tom@tromey.com>
11312
11313         * python/py-framefilter.c (py_print_type): Don't catch
11314         exceptions.  Return void.
11315         (py_print_value): Likewise.
11316         (py_print_single_arg): Likewise.
11317         (enumerate_args): Don't catch exceptions.
11318         (py_print_args): Likewise.
11319         (py_print_frame): Likewise.
11320         (gdbpy_apply_frame_filter): Catch exceptions here.
11321
11322 2018-03-26  Tom Tromey  <tom@tromey.com>
11323
11324         * stack.c (_initialize_stack): Remove trailing newlines from help
11325         text.  Add "Usage" line to "backtrace" help.
11326
11327 2018-03-26  Tom Tromey  <tom@tromey.com>
11328
11329         PR python/16486:
11330         * python/py-framefilter.c (py_print_args): Call wrap_hint.
11331
11332 2018-03-26  Tom Tromey  <tom@tromey.com>
11333
11334         * python/py-framefilter.c (py_print_single_arg): Return
11335         EXT_LANG_BT_ERROR from catch.
11336
11337 2018-03-26  Tom Tromey  <tom@tromey.com>
11338
11339         PR backtrace/15584:
11340         * stack.c (backtrace_command_1): Move some code into no-filters
11341         "if".
11342
11343 2018-03-26  Tom Tromey  <tom@tromey.com>
11344
11345         * python/py-framefilter.c (throw_quit_or_print_exception): New
11346         function.
11347         (gdbpy_apply_frame_filter): Use it.
11348
11349 2018-03-26  Tom Tromey  <tom@tromey.com>
11350
11351         PR cli/17716:
11352         * python/py-framefilter.c (py_print_type, py_print_value)
11353         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
11354         RETURN_MASK_ERROR.
11355
11356 2018-03-26  Tom Tromey  <tom@tromey.com>
11357
11358         * python/py-framefilter.c (enumerate_args): Use
11359         gdb::unique_xmalloc_ptr.
11360
11361 2018-03-26  Tom Tromey  <tom@tromey.com>
11362
11363         * python/py-framefilter.c (py_print_frame): Return
11364         EXT_LANG_BT_OK.
11365         (gdbpy_apply_frame_filter): Update comment.
11366         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
11367         Remove.
11368         <EXT_LANG_BT_NO_FILTERS>: Change value.
11369
11370 2018-03-26  Tom Tromey  <tom@tromey.com>
11371
11372         PR backtrace/15582:
11373         * stack.c (backtrace_command): Parse "hide" argument.
11374         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
11375         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
11376         constant.
11377
11378 2018-03-26  Tom Tromey  <tom@tromey.com>
11379
11380         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
11381         add "flags".
11382         (backtrace_command): Remove "fulltrace", add "flags".
11383
11384 2018-03-26  Tom Tromey  <tom@tromey.com>
11385
11386         * stack.c (backtrace_command): Rewrite command line parsing.
11387
11388 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11389
11390         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
11391
11392 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11393
11394         * filename-seen-cache.h: Add include guard.
11395
11396 2018-03-26  Keith Seitz  <keiths@redhat.com>
11397
11398         * symfile.c (place_section): Remove "struct" from section_addr_info
11399         in comment.
11400         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
11401         "struct" keyword from section_addr_info.
11402
11403 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
11404
11405         * regformats/regdef.h (reg): Add constructors.
11406
11407 2018-03-25  Pedro Alves  <palves@redhat.com>
11408
11409         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
11410         if then/else bodies in var_func_name extraction.
11411
11412 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
11413
11414         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
11415         lookup_minimal_symbol() to find symbol entry.
11416         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
11417
11418 2018-03-23  Keith Seitz  <keiths@redhat.com>
11419
11420         PR c++/22968
11421         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
11422         nested type definitions for C++, too.
11423
11424 2018-03-23  Tom Tromey  <tom@tromey.com>
11425
11426         * machoread.c (struct oso_el): Add a constructor.  Don't define as
11427         a typedef.
11428         (macho_register_oso): Remove.
11429         (macho_symtab_read): Take a std::vector.
11430         (oso_el_compare_name): Now a std::sort comparator.
11431         (macho_symfile_read_all_oso): Take a std::vector.
11432         (macho_symfile_read): Use std::vector.  Remove cleanups.
11433
11434 2018-03-22  Tom Tromey  <tom@tromey.com>
11435
11436         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
11437         (record_full_goto_bookmark): Use std::string.
11438
11439 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11440
11441         PR tdep/18295
11442         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
11443         a single mask.
11444
11445 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11446
11447         * rs6000-tdep.c (store_insn_p): New function.
11448         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
11449         and cr_reg to their unshifted values. Use store_insn_p to
11450         match LR saves using either R1 or fdata->alloca_reg. Use
11451         store_insn_p to match CR saves. Set alloca_reg_offset
11452         when alloca_reg and framep are set. Remove lr_reg shift
11453         when assigning to fdata->lr_register.
11454
11455 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11456
11457         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
11458         command line args instead of emitting a warning.
11459
11460 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11461
11462         * tracepoint.h (struct static_tracepoint_marker): Initialize
11463         fields, define default constructor, move constructor and move
11464         assignment, disable the rest.
11465         <str_id, extra>: Make std::string.
11466         (release_static_tracepoint_marker): Remove.
11467         (free_current_marker): Remove.
11468         * tracepoint.c (free_current_marker): Remove.
11469         (parse_static_tracepoint_marker_definition): Adjust to
11470         std::string, use new hex2str overload.
11471         (release_static_tracepoint_marker): Remove.
11472         (print_one_static_tracepoint_marker): Get marker by reference
11473         and adjust to std::string.
11474         (info_static_tracepoint_markers_command): Adjust to std::vector
11475         changes
11476         * target.h (static_tracepoint_marker_p): Remove typedef.
11477         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
11478         (struct target_ops) <to_static_tracepoint_marker_at>: Return
11479         bool.
11480         <to_static_tracepoint_markers_by_strid>: Return std::vector.
11481         * target-debug.h
11482         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
11483         (target_debug_print_std_vector_static_tracepoint_marker): New.
11484         (target_debug_print_struct_static_tracepoint_marker_p): Rename
11485         to...
11486         (target_debug_print_static_tracepoint_marker_p): ... this.
11487         * target-delegates.c: Re-generate.
11488         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
11489         Make std::string.
11490         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
11491         (decode_static_tracepoint_spec): Adjust to std::vector.
11492         (tracepoint_print_one_detail): Adjust to std::string.
11493         (strace_marker_decode_location): Adjust to std::string.
11494         (update_static_tracepoint): Adjust to std::string, remove call
11495         to release_static_tracepoint_marker.
11496         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
11497         Adjust to std::vector.
11498         * remote.c (remote_static_tracepoint_marker_at): Return bool.
11499         (remote_static_tracepoint_markers_by_strid): Adjust to
11500         std::vector.
11501         * common/rsp-low.h (hex2str): New overload with explicit count
11502         of bytes.
11503         * common/rsp-low.c (hex2str): New overload with explicit count
11504         of bytes.
11505         * unittests/rsp-low-selftests.c (test_hex2str): New function.
11506         (_initialize_rsp_low_selftests): Add test_hex2str test.
11507         * unittests/tracepoint-selftests.c
11508         (test_parse_static_tracepoint_marker_definition): Adjust to
11509         std::string.
11510
11511 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11512
11513         * tracepoint.c (parse_static_tracepoint_marker_definition):
11514         Consider case where the definition is followed by more
11515         definitions.
11516         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11517         tracepoint-selftests.c.
11518         * unittests/tracepoint-selftests.c: New.
11519
11520 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11521
11522         * MAINTAINERS (Write After Approval): Add Pedro Franco de
11523         Carvalho.
11524
11525 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11526
11527         * symtab.c (find_pc_sect_line): fixed indentation.
11528
11529 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11530
11531         * symtab.c (find_pc_sect_line): now uses binary search.
11532
11533 2018-03-19  Tom Tromey  <tom@tromey.com>
11534
11535         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
11536         "IDENT" production.
11537
11538 2018-03-19  Pedro Alves  <palves@redhat.com>
11539             Tom Tromey  <tom@tromey.com>
11540
11541         * unittests/observable-selftests.c: New file.
11542         * common/observable.h: New file.
11543         * observable.h: New file.
11544         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
11545         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
11546         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
11547         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
11548         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
11549         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
11550         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
11551         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
11552         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
11553         python/py-breakpoint.c, python/py-finishbreakpoint.c,
11554         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
11555         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
11556         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
11557         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
11558         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
11559         tui/tui-interp.c, valops.c: Update all users.
11560         * tui/tui-hooks.c (tui_bp_created_observer)
11561         (tui_bp_deleted_observer, tui_bp_modified_observer)
11562         (tui_inferior_exit_observer, tui_before_prompt_observer)
11563         (tui_normal_stop_observer, tui_register_changed_observer):
11564         Remove.
11565         (tui_observers_token): New global.
11566         (attach_or_detach, tui_attach_detach_observers): New functions.
11567         (tui_install_hooks, tui_remove_hooks): Use
11568         tui_attach_detach_observers.
11569         * record-btrace.c (record_btrace_thread_observer): Remove.
11570         (record_btrace_thread_observer_token): New global.
11571         * observer.sh: Remove.
11572         * observer.c: Rename to observable.c.
11573         * observable.c (namespace gdb_observers): Define new objects.
11574         (observer_debug): Move into gdb_observers namespace.
11575         (struct observer, struct observer_list, xalloc_observer_list_node)
11576         (xfree_observer_list_node, generic_observer_attach)
11577         (generic_observer_detach, generic_observer_notify): Remove.
11578         (_initialize_observer): Update.
11579         Don't include observer.inc.
11580         * Makefile.in (generated_files): Remove observer.h, observer.inc.
11581         (clean mostlyclean): Likewise.
11582         (observer.h, observer.inc): Remove targets.
11583         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
11584         (COMMON_SFILES): Use observable.c, not observer.c.
11585         * .gitignore: Remove observer.h.
11586
11587 2018-03-18  Tom Tromey  <tom@tromey.com>
11588
11589         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
11590         gdb::def_vector.
11591         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
11592
11593 2018-03-17  Tom Tromey  <tom@tromey.com>
11594
11595         * auto-load.c (auto_load_objfile_script_1): Use std::string.
11596
11597 2018-03-17  Tom Tromey  <tom@tromey.com>
11598
11599         * target.c (class scoped_target_fd): New.
11600         (target_fileio_close_cleanup): Remove.
11601         (target_fileio_read_alloc_1): Use scoped_target_fd.
11602
11603 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
11604
11605         * silent-rules.mk: New.
11606         * Makefile.in: Include silent-rules.mk
11607         (srcdir, VPATH, top_srcdir): Move up.
11608         (COMPILE): Add ECHO_CXX.
11609         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
11610         (init.c): Add ECHO_INIT_C.
11611         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
11612         (version.c): Add ECHO_GEN.
11613         (printcmd.o): Add ECHO_CXX.
11614         (target-float.o): Add ECHO_CXX.
11615         (ada-exp.o): Add ECHO_CXX.
11616         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
11617         (insight$(EXEEXT)): Add ECHO_CXXLD.
11618         * gnulib/configure.ac: Add AM_SILENT_RULES.
11619         * gnulib/aclocal.m4: Re-generate.
11620         * gnulib/configure: Re-generate.
11621         * gnulib/import/Makefile.in: Re-generate.
11622
11623 2018-03-16  Tom Tromey  <tom@tromey.com>
11624
11625         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
11626         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
11627         * utils.c (do_free_section_addr_info)
11628         (make_cleanup_free_section_addr_info): Remove.
11629         * symfile.h (struct other_sections): Add constructor.
11630         (struct section_addr_info): Remove.
11631         (section_addr_info): New typedef.
11632         (struct sym_fns) <sym_offsets>: Change type of parameter.
11633         (build_section_addr_info_from_objfile)
11634         (relative_addr_info_to_section_offsets, addr_info_make_relative)
11635         (default_symfile_offsets, symbol_file_add)
11636         (symbol_file_add_from_bfd)
11637         (build_section_addr_info_from_section_table): Update.
11638         (alloc_section_addr_info, free_section_addr_info): Don't declare.
11639         * symfile.c (alloc_section_addr_info): Remove.
11640         (build_section_addr_info_from_section_table): Change return type.
11641         Update.
11642         (build_section_addr_info_from_bfd)
11643         (build_section_addr_info_from_objfile): Likewise.
11644         (free_section_addr_info): Remove.
11645         (relative_addr_info_to_section_offsets): Change type of "addrs".
11646         (addrs_section_compar): Now a std::sort comparator.
11647         (addrs_section_sort): Change return type.
11648         (addr_info_make_relative): Change type of "addrs".  Update.
11649         (default_symfile_offsets, syms_from_objfile_1)
11650         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
11651         (symbol_file_add_separate): Update.
11652         (symbol_file_add): Change type of "addrs".  Update.
11653         (add_symbol_file_command): Update.  Remove cleanups.
11654         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
11655         cleanups.
11656         * symfile-debug.c (debug_sym_offsets): Change type of "info".
11657         * solib.c (solib_read_symbols): Update.
11658         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
11659         * machoread.c (macho_symfile_offsets): Update.
11660         * jit.c (jit_bfd_try_read_symtab): Update.
11661
11662 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
11663
11664         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11665         unittests/utils-selftests.c.
11666         * unittests/utils-selftests.c: New file.
11667
11668 2018-03-14  Tom Tromey  <tom@tromey.com>
11669
11670         PR cli/14977:
11671         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
11672         for NULL.
11673
11674 2018-03-14  Tom Tromey  <tom@tromey.com>
11675
11676         PR cli/19918:
11677         * printcmd.c (printf_pointer): Allow "-" in format.
11678
11679 2018-03-14  Tom Tromey  <tom@tromey.com>
11680
11681         * printcmd.c (_initialize_printcmd): Add usage to printf.
11682
11683 2018-03-14  Yao Qi  <qiyao@sourceware.org>
11684
11685         * MAINTAINERS: Update my email address.
11686
11687 2018-03-13  Tom Tromey  <tom@tromey.com>
11688
11689         * machoread.c (macho_check_dsym): Change filenamep to a
11690         std::string*.
11691         (macho_symfile_read): Update.
11692         * symfile.c (load_command): Use std::string.
11693
11694 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
11695
11696         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
11697         to error message string.
11698         (riscv_register_name): Use xsnprintf instead of sprintf.
11699         (riscv_insn::fetch_instruction): Use gdb_assert instead of
11700         internal_error.
11701         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
11702         error.
11703         (riscv_push_dummy_call): Likewise.
11704
11705 2018-03-12  Tom Tromey  <tom@tromey.com>
11706
11707         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
11708         Use gdb::byte_vector.
11709         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
11710
11711 2018-03-12  Yao Qi  <yao.qi@linaro.org>
11712
11713         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
11714         parameter type to readable_regcache.
11715         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
11716         the declaration.
11717
11718 2018-03-11  Tom Tromey  <tom@tromey.com>
11719
11720         * dwarf2read.c (struct nextfield): Add initializers.
11721         (struct nextfnfield): Remove.
11722         (struct fnfieldlist): Add initializers.  Remove "length" and
11723         "head", use std::vector.
11724         (struct decl_field_list): Remove.
11725         (struct field_info): Add initializers.
11726         <fields, baseclasses>: Now std::vector.
11727         <nbaseclasses, nfnfields, typedef_field_list_count,
11728         nested_types_list_count>: Remove.
11729         (dwarf2_add_field, dwarf2_add_type_defn)
11730         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
11731         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
11732         (process_structure_scope): Update.
11733
11734 2018-03-11  Tom Tromey  <tom@tromey.com>
11735
11736         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
11737         for use by std::sort.
11738         (build_type_psymtabs_1): Use std::vector.
11739
11740 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
11741
11742         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
11743         and LIBMPFR in the printed configuration.
11744
11745 2018-03-08  Tom Tromey  <tom@tromey.com>
11746
11747         * source.c (get_filename_and_charpos): Use scoped_fd.
11748         * nto-procfs.c (procfs_open_1): Use scoped_fd.
11749         (procfs_pidlist): Likewise.
11750         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
11751         (iterate_over_mappings): Likewise.
11752
11753 2018-03-08  Tom Tromey  <tom@tromey.com>
11754
11755         * infcall.c (struct call_return_meta_info)
11756         <stack_temporaries_enabled>: Remove.
11757         (get_call_return_value, call_function_by_hand_dummy): Update.
11758         * thread.c (disable_thread_stack_temporaries): Remove.
11759         (enable_thread_stack_temporaries): Remove.
11760         (thread_stack_temporaries_enabled_p): Return bool.
11761         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
11762         (get_last_thread_stack_temporary): Update.
11763         * eval.c (evaluate_subexp): Update.
11764         * gdbthread.h (class enable_thread_stack_temporaries): Now a
11765         class, not a function.
11766         (value_ptr, value_vec): Remove typedefs.
11767         (class thread_info) <stack_temporaries_enabled>: Now bool.
11768         <stack_temporaries>: Now a std::vector.
11769         (thread_stack_temporaries_enabled_p)
11770         (value_in_thread_stack_temporaries): Return bool.
11771
11772 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
11773
11774         * remote.c (putpkt_binary): Fix omitted bytes reporting.
11775         (getpkt_or_notif_sane_1): Likewise.
11776
11777 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
11778
11779         * build-id.c (build_id_to_debug_bfd): Use std::string.
11780
11781 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
11782
11783         * build-id.c (find_separate_debug_file_by_buildid): Return
11784         std::string.
11785         * build-id.h (find_separate_debug_file_by_buildid): Return
11786         std::string.
11787         * coffread.c (coff_symfile_read): Adjust to std::string.
11788         * elfread.c (elf_symfile_read): Adjust to std::string.
11789         * symfile.c (separate_debug_file_exists): Change parameter to
11790         std::string.
11791         (find_separate_debug_file): Return std::string.
11792         (find_separate_debug_file_by_debuglink): Return std::string.
11793         * symfile.h (find_separate_debug_file_by_debuglink): Return
11794         std::string.
11795
11796 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
11797
11798         * common/xml-utils.c (xml_escape_text): Move code to...
11799         (xml_escape_text_append): ... this new function.
11800         * common/xml-utils.h (xml_escape_text_append): New declaration.
11801         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
11802         New function.
11803         (_initialize_xml_utils): register test_xml_escape_text_append as
11804         a selftest.
11805
11806 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
11807
11808         * defs.h: Remove MAX_REGISTER_SIZE.
11809         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
11810         asserts.
11811         * python/py-unwind.c (pyuw_sniffer): Likewise.
11812
11813 2018-03-07  Tom Tromey  <tom@tromey.com>
11814
11815         * linux-tdep.c (linux_info_proc): Update.
11816         * target.h (struct target_ops) <to_fileio_readlink>: Return
11817         optional<string>.
11818         (target_fileio_readlink): Return optional<string>.
11819         * remote.c (remote_hostio_readlink): Return optional<string>.
11820         * inf-child.c (inf_child_fileio_readlink): Return
11821         optional<string>.
11822         * target.c (target_fileio_readlink): Return optional<string>.
11823
11824 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
11825
11826         * regcache.c (cooked_read_test): Add riscv to the list of
11827         architectures that have a save_reggroup.
11828
11829 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11830
11831         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
11832         value is not a dynamic class object.
11833
11834 2018-03-06  Tom Tromey  <tom@tromey.com>
11835
11836         * rust-exp.y: Formatting fixes.
11837
11838 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11839
11840         * riscv-tdep.c (riscv_register_name): Remove target description
11841         support.
11842         (riscv_gdbarch_init): Remove target description check.
11843
11844 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11845
11846         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
11847         comment.
11848         * riscv-tdep.h: Likewise.
11849
11850 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11851
11852         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
11853         (riscv_pseudo_register_write): Delete.
11854         (riscv_gdbarch_init): Remove all use of pseudo registers.
11855
11856 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
11857
11858         * record-btrace.c (btrace_print_lines): Replace cleanup
11859         parameter with RAII equivalents.
11860         (btrace_insn_history): Replace cleanup with RAII equivalents.
11861         * ui-out.h (make_cleanup_ui_out_list_begin_end,
11862         make_cleanup_ui_out_tuple_begin_end): Remove.
11863         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
11864         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
11865         make_cleanup_ui_out_list_begin_end): Remove.
11866
11867 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
11868
11869         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
11870         parameter types to std::vector.  Use bool.
11871         (record_btrace_wait): Replace VEC(tp_t) with
11872         std::vector<thread_info *>.
11873         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
11874
11875 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
11876
11877         * record-btrace.c (record_btrace_disable_callback): Remove.
11878         (struct scoped_btrace_disable): New.
11879         (record_btrace_open): Use scoped_btrace_disable.
11880
11881 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11882
11883         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
11884         reading values from registers.
11885
11886 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11887
11888         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
11889         where appropriate.
11890
11891 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11892
11893         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
11894         change parameter type.  Use GDB's print functions, and use
11895         core_addr_to_string where appropriate.
11896         (riscv_push_dummy_call): Use core_addr_to_string where
11897         appropriate, update call to riscv_print_arg_location, and reindent
11898         a few lines.
11899         (riscv_return_value): Update call to riscv_print_arg_location.
11900
11901 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11902             Tim Newsome <tim@sifive.com>
11903             Albert Ou <a0u@eecs.berkeley.edu>
11904             Darius Rad <darius@bluespec.com>
11905
11906         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
11907         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
11908         (ALLDEPFILES): Add riscv-tdep.c
11909         * configure.tgt: Add riscv support.
11910         * riscv-tdep.c: New file.
11911         * riscv-tdep.h: New file.
11912         * NEWS: Mention new target.
11913         * MAINTAINERS: Add entry for riscv.
11914
11915 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11916
11917         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
11918         fields within aggregates.
11919
11920 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
11921
11922         * record-btrace.c (btrace_print_lines): Change type of flags to
11923         gdb_disassembly_flags.
11924
11925 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
11926
11927         * fbsd-nat.c: Include "inf-ptrace.h".
11928         (USE_SIGTRAP_SIGINFO): Conditionally define.
11929         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
11930         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
11931         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
11932         function.
11933         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
11934         Likewise.
11935         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
11936         Likewise.
11937         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
11938         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
11939         "supports_stopped_by_hw_breakpoint" target methods.
11940
11941 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
11942
11943         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
11944         * fbsd-nat.c (debug_fbsd_nat): New variable.
11945         (show_fbsd_nat_debug): New function.
11946         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
11947         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
11948
11949 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
11950
11951         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
11952         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
11953         prototype.
11954         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
11955         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
11956         method.
11957
11958 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11959
11960         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
11961         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
11962
11963 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11964
11965         * charset.c (struct charset_vector): New.
11966         (charsets): Change type to charset_vector.
11967         (find_charset_names): Adjust.
11968         (add_one): Adjust.
11969         (_initialize_charset): Adjust.
11970
11971 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11972
11973         * progspace.h (struct program_space) <deleted_solibs>: Change
11974         type to std::vector<std::string>.
11975         * progspace.c (clear_program_space_solib_cache): Adjust.
11976         * breakpoint.c (print_solib_event): Adjust.
11977         (check_status_catch_solib): Adjust.
11978         * solib.c (update_solib_list): Adjust.
11979         * ui-out.h (class ui_out) <field_string>: New overload.
11980         * ui-out.c (ui_out::field_string): New overload.
11981
11982 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11983
11984         * progspace.h (struct program_space): Add constructor and
11985         destructor, initialize fields.
11986         (add_program_space): Remove.
11987         * progspace.c (add_program_space): Rename to...
11988         (program_space::program_space): ... this.
11989         (release_program_space): Rename to...
11990         (program_space::~program_space): ... this.
11991         (delete_program_space): Use delete to delete program_space.
11992         (initialize_progspace): Use new to allocate program_space.
11993         * inferior.c (add_inferior_with_spaces): Likewise.
11994         (clone_inferior_command): Likewise.
11995         * infrun.c (follow_fork_inferior): Likewise.
11996         (handle_vfork_child_exec_or_exit): Likewise.
11997
11998 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11999
12000         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
12001         (delim_string_to_char_ptr_vec): Return std::vector of
12002         gdb::unique_xmalloc_ptr.
12003         (dirnames_to_char_ptr_vec_append): Take std::vector of
12004         gdb::unique_xmalloc_ptr.
12005         (dirnames_to_char_ptr_vec): Return std::vector of
12006         gdb::unique_xmalloc_ptr.
12007         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
12008         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
12009         (delim_string_to_char_ptr_vec): Return an std::vector of
12010         gdb::unique_xmalloc_ptr, adjust the code.
12011         (dirnames_to_char_ptr_vec_append): Take an std::vector of
12012         gdb::unique_xmalloc_ptr, adjust the code.
12013         (dirnames_to_char_ptr_vec): Return an std::vector of
12014         gdb::unique_xmalloc_ptr, adjust the code.
12015         * auto-load.c (auto_load_safe_path_vec): Change type to
12016         std::vector of gdb::unique_xmalloc_ptr.
12017         (auto_load_expand_dir_vars): Return an std::vector of
12018         gdb::unique_xmalloc_ptr, adjust the code.
12019         (auto_load_safe_path_vec_update): Adjust.
12020         (filename_is_in_auto_load_safe_path_vec): Adjust.
12021         (auto_load_objfile_script_1): Adjust.
12022         * build-id.c (build_id_to_debug_bfd): Adjust.
12023         * linux-thread-db.c (thread_db_load_search): Adjust.
12024         * source.c (add_path): Adjust.
12025         (openp): Adjust.
12026         * symfile.c (find_separate_debug_file): Adjust.
12027         * utils.c (do_free_char_ptr_vec): Remove.
12028         (make_cleanup_free_char_ptr_vec): Remove.
12029
12030 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
12031
12032         PR gdb/22907
12033         * common/pathstuff.c: Conditionally include "<windows.h>".
12034
12035 2018-03-01  Georg Sauthoff  <mail@georg.so>
12036
12037         PR gdb/22888
12038         * gcore.in: Quote variables and switch interpreter to bash.
12039
12040 2018-03-01  Tom Tromey  <tom@tromey.com>
12041
12042         * dwarf2read.c (alloc_discriminant_info): Fix default_index
12043         assertion.  Add assertion for discriminant_index.
12044         (quirk_rust_enum): Use correct base type name in univariant case.
12045
12046 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
12047
12048         * record.c (get_call_history_modifiers): Return a
12049         record_print_flags.
12050         (cmd_record_call_history): Adjust.
12051         * record-btrace.c (record_btrace_call_history): Adjust.
12052         (record_btrace_call_history_range): Adjust.
12053         (record_btrace_call_history_from): Adjust.
12054         * target-debug.h (target_debug_print_record_print_flags): New.
12055         * target-delegates.c: Re-generate.
12056         * target.c (target_call_history): Change flags type.
12057         (target_call_history_from): Likewise.
12058         (target_call_history_range): Likewise.
12059         * target.h (struct target_ops) <target_call_history>: Likewise.
12060         (target_call_history_from): Likewise.
12061         (target_call_history_range): Likewise.
12062
12063 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12064             Simon Marchi  <simon.marchi@polymtl.ca>
12065
12066         * common/common-utils.c: Include "sys/stat.h".
12067         (is_regular_file): Move here from "source.c"; change return
12068         type to "bool".
12069         * common/common-utils.h (is_regular_file): New prototype.
12070         * common/pathstuff.c (contains_dir_separator): New function.
12071         * common/pathstuff.h (contains_dir_separator): New prototype.
12072         * source.c: Don't include "sys/stat.h".
12073         (is_regular_file): Move to "common/common-utils.c".
12074
12075 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12076
12077         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
12078         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
12079         * auto-load.c: Include "common/pathstuff.h".
12080         * common/common-def.h (current_directory): Move here.
12081         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
12082         function.
12083         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
12084         prototype.
12085         * common/pathstuff.c: New file.
12086         * common/pathstuff.h: New file.
12087         * compile/compile.c: Include "common/pathstuff.h".
12088         * defs.h (current_directory): Move to "common/common-defs.h".
12089         * dwarf2read.c: Include "common/pathstuff.h".
12090         * exec.c: Likewise.
12091         * guile/scm-safe-call.c: Likewise.
12092         * linux-thread-db.c: Likewise.
12093         * main.c: Likewise.
12094         * nto-tdep.c: Likewise.
12095         * objfiles.c: Likewise.
12096         * source.c: Likewise.
12097         * symtab.c: Likewise.
12098         * utils.c: Include "common/pathstuff.h".
12099         (gdb_realpath): Move to "common/pathstuff.c".
12100         (gdb_realpath_keepfile): Likewise.
12101         (gdb_abspath): Likewise.
12102         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
12103         (gdb_realpath_keepfile): Likewise.
12104         (gdb_abspath): Likewise.
12105
12106 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
12107
12108         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
12109         wildcard process pid for super_resume for kernels with a
12110         specific bug.
12111
12112 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
12113
12114         * compile/compile.c (get_args): Add additional comments
12115         explaining function.
12116
12117 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
12118             Tom Tromey  <tom@tromey.com>
12119
12120         * target.h (memory_write_request_s): Remove typedef.  Don't define
12121         VEC.
12122         (target_write_memory_blocks): Change argument to std::vector.
12123         (struct memory_write_request): Add constructor.
12124         * target-memory.c (compare_block_starting_address): Return bool.
12125         Change argument types.
12126         (claim_memory): Change arguments to use std::vector.
12127         (split_regular_and_flash_blocks, blocks_to_erase)
12128         (compute_garbled_blocks): Likewise.
12129         (cleanup_request_data, cleanup_write_requests_vector): Remove.
12130         (target_write_memory_blocks): Change argument to std::vector.
12131         * symfile.c (struct load_section_data): Add constructor and
12132         destructor.  Use std::vector for "requests".
12133         (struct load_progress_data): Add initializers.
12134         (load_section_callback): Update.  Use "new".
12135         (clear_memory_write_data): Remove.
12136         (generic_load): Update.
12137
12138 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
12139
12140         * arch/aarch64.h: Use common/tdesc.h.
12141
12142 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12143
12144         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
12145         architecture with a 64-bit ABI.
12146
12147 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12148
12149         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
12150         ahead of target description loading.
12151
12152 2018-02-26  Tom Tromey  <tom@tromey.com>
12153
12154         * stack.c (backtrace_command_1): Update.
12155         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
12156         of "flags".
12157         * python/py-framefilter.c (py_print_frame)
12158         (gdbpy_apply_frame_filter): Change type of "flags".
12159         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
12160         of "flags".
12161         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
12162         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
12163         * extension.h (enum frame_filter_flag): Rename from
12164         frame_filter_flags.
12165         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
12166         (apply_ext_lang_frame_filter): Change type of "flags".
12167         * extension.c (apply_ext_lang_frame_filter): Change type of
12168         "flags".
12169         * extension-priv.h (struct extension_language_ops)
12170         <apply_frame_filter>: Change type of "flags".
12171
12172 2018-02-26  Tom Tromey  <tom@tromey.com>
12173
12174         PR python/16497:
12175         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
12176         off-by-one in py_end computation.
12177         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
12178         PRINT_MORE_FRAMES.
12179         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
12180         constant.
12181
12182 2018-02-26  Tom Tromey  <tom@tromey.com>
12183
12184         * dwarf2read.c (struct variant_field): New.
12185         (struct nextfield) <variant>: New field.
12186         (dwarf2_add_field): Handle DW_TAG_variant_part.
12187         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
12188         discriminated union.
12189         (read_structure_type): Handle DW_TAG_variant_part.
12190         (handle_struct_member_die): New function, extracted from
12191         process_structure_scope.  Handle DW_TAG_variant.
12192         (process_structure_scope): Handle discriminated unions.  Call
12193         handle_struct_member_die.
12194
12195 2018-02-26  Tom Tromey  <tom@tromey.com>
12196
12197         * rust-lang.h (rust_last_path_segment): Declare.
12198         * rust-lang.c (rust_last_path_segment): Now public.  Change
12199         contract.
12200         (struct disr_info): Remove.
12201         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
12202         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
12203         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
12204         (rust_enum_p, rust_enum_variant): New function.
12205         (rust_underscore_fields): Remove "offset" parameter.
12206         (rust_print_enum): New function.
12207         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
12208         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
12209         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
12210         enums.
12211         (rust_internal_print_type): New function, from rust_print_type.
12212         Remove enum code.
12213         (rust_print_type): Call rust_internal_print_type.
12214         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
12215         Update enum handling.
12216         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
12217         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
12218         (rust_union_quirks): New functions.
12219         (process_full_comp_unit, process_full_type_unit): Call
12220         rust_union_quirks.
12221         (process_structure_scope): Update rust_unions if necessary.
12222
12223 2018-02-26  Tom Tromey  <tom@tromey.com>
12224
12225         * value.h (value_union_variant): Declare.
12226         * valops.c (value_union_variant): New function.
12227         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
12228         (struct discriminant_info): New.
12229         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
12230         enumerator.
12231         (struct main_type) <flag_discriminated_union>: New field.
12232
12233 2018-02-26  Tom Tromey  <tom@tromey.com>
12234
12235         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12236         unittests/unpack-selftests.c.
12237         * unittests/unpack-selftests.c: New file.
12238         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
12239
12240 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12241
12242         * dwarf2read.c (struct partial_die_info) <read>: New method.
12243         (read_partial_die): Remove the declaration.
12244         (load_partial_dies): Update.
12245         (partial_die_info::partial_die_info):
12246         (read_partial_die): Change it to partial_die_info::read.
12247
12248 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12249
12250         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
12251         (fixup_partial_die): Remove declaration.
12252         (scan_partial_symbols): Update.
12253         (partial_die_parent_scope): Likewise.
12254         (partial_die_full_name): Likewise.
12255         (fixup_partial_die): Change it to partial_die_info::fixup.
12256
12257 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12258
12259         * dwarf2read.c (read_partial_die): Update the declaration.
12260         (load_partial_dies): Caller update.
12261         (read_partial_die): Remove one argument abbrev_len.
12262
12263 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12264
12265         * dwarf2read.c (struct partial_die_info): Add ctor, delete
12266         assignment operator.
12267         (load_partial_dies): Use ctor and copy ctor.
12268         (read_partial_die): Update.
12269         (dwarf2_cu::find_partial_die): Use ctor.
12270
12271 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12272
12273         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
12274         (find_partial_die_in_comp_unit): Change it to
12275         dwarf2_cu::find_partial_die.
12276         (find_partial_die): Update.
12277
12278 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12279
12280         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
12281         is NULL.
12282
12283 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12284
12285         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
12286
12287 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
12288
12289         * arch/amd64.h: Use common/tdesc.h.
12290         * arch/i386.c: Likewise.
12291         * arch/i386.h: Likewise.
12292         * arch/tic6x.c: Likewise.
12293         * arch/tdesc.h: Move file from here...
12294         * common/tdesc.h: ...to here.
12295         * features/aarch64-core.c: Regenerate.
12296         * features/aarch64-fpu.c: Regenerate.
12297         * features/i386/32bit-avx.c: Regenerate.
12298         * features/i386/32bit-avx512.c: Regenerate.
12299         * features/i386/32bit-core.c: Regenerate.
12300         * features/i386/32bit-linux.c: Regenerate.
12301         * features/i386/32bit-mpx.c: Regenerate.
12302         * features/i386/32bit-pkeys.c: Regenerate.
12303         * features/i386/32bit-sse.c: Regenerate.
12304         * features/i386/64bit-avx.c: Regenerate.
12305         * features/i386/64bit-avx512.c: Regenerate.
12306         * features/i386/64bit-core.c: Regenerate.
12307         * features/i386/64bit-linux.c: Regenerate.
12308         * features/i386/64bit-mpx.c: Regenerate.
12309         * features/i386/64bit-pkeys.c: Regenerate.
12310         * features/i386/64bit-segments.c: Regenerate.
12311         * features/i386/64bit-sse.c: Regenerate.
12312         * features/i386/x32-core.c: Regenerate.
12313         * features/tic6x-c6xp.c: Regenerate.
12314         * features/tic6x-core.c: Regenerate.
12315         * features/tic6x-gp.c: Regenerate.
12316         * target-descriptions.c: Use common/tdesc.h.
12317         * target-descriptions.h: Likewise.
12318
12319 2018-02-24  Tom Tromey  <tom@tromey.com>
12320
12321         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
12322         (try_thread_db_load_from_dir, thread_db_load_search): Use
12323         std::string.
12324         (info_auto_load_libthread_db_compare): Return bool.  Change
12325         argument types.
12326         (info_auto_load_libthread_db): Use std::vector, std::string.
12327         Remove cleanups.
12328
12329 2018-02-24  Tom Tromey  <tom@tromey.com>
12330
12331         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
12332         std::string.
12333         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
12334         std::string*.
12335         * gdbarch.c: Rebuild.
12336         * gdbarch.h: Rebuild.
12337         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
12338         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
12339         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
12340         std::string*.
12341
12342 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
12343
12344         * gdbtypes.h (sect_offset): Change type to uint64_t.
12345         (sect_offset_str): New function.
12346         * dwarf2read.c (create_addrmap_from_aranges): Use
12347         sect_offset_str.
12348         (error_check_comp_unit_head): Likewise.
12349         (create_debug_type_hash_table): Likewise.
12350         (read_cutu_die_from_dwo): Likewise.
12351         (init_cutu_and_read_dies): Likewise.
12352         (init_cutu_and_read_dies_no_follow): Likewise.
12353         (process_psymtab_comp_unit_reader): Likewise.
12354         (partial_die_parent_scope): Likewise.
12355         (peek_die_abbrev): Likewise.
12356         (process_queue): Likewise.
12357         (dwarf2_physname): Likewise.
12358         (read_namespace_alias): Likewise.
12359         (read_import_statement): Likewise.
12360         (create_dwo_cu_reader): Likewise.
12361         (create_cus_hash_table): Likewise.
12362         (lookup_dwo_cutu): Likewise.
12363         (inherit_abstract_dies): Likewise.
12364         (read_func_scope): Likewise.
12365         (read_call_site_scope): Likewise.
12366         (dwarf2_add_member_fn): Likewise.
12367         (read_common_block): Likewise.
12368         (read_module_type): Likewise.
12369         (read_typedef): Likewise.
12370         (read_subrange_type): Likewise.
12371         (load_partial_dies): Likewise.
12372         (read_partial_die): Likewise.
12373         (find_partial_die): Likewise.
12374         (read_str_index): Likewise.
12375         (dwarf2_string_attr): Likewise.
12376         (build_error_marker_type): Likewise.
12377         (lookup_die_type): Likewise.
12378         (dump_die_shallow): Likewise.
12379         (follow_die_ref): Likewise.
12380         (dwarf2_fetch_die_loc_sect_off): Likewise.
12381         (dwarf2_fetch_constant_bytes): Likewise.
12382         (follow_die_sig): Likewise.
12383         (get_signatured_type): Likewise.
12384         (get_DW_AT_signature_type): Likewise.
12385         (dwarf2_find_containing_comp_unit): Likewise.
12386         (set_die_type): Likewise.
12387
12388 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
12389
12390         * arch/aarch64.c: Include "common-defs.h".
12391         * arch/amd64.c: Likewise.
12392         * arch/i386.c: Likewise.
12393
12394 2018-02-21  Tom Tromey  <tom@tromey.com>
12395
12396         * value.h: (extract_field_op): Update.
12397         * eval.c (extract_field_op): Return a const char *.
12398         * expression.h (parse_expression_for_completion): Update.
12399         * completer.c (complete_expression): Update.
12400         (add_struct_fields): Make fieldname const.
12401         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
12402         (mark_completion_tag, parse_exp_in_context_1): Update.
12403         (parse_expression_for_completion): Change "name" to
12404         unique_xmalloc_ptr*.
12405
12406 2018-02-21  Tom Tromey  <tom@tromey.com>
12407
12408         * infcall.c (call_function_by_hand_dummy): Use std::vector.
12409
12410 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12411
12412         * avr-tdep.c (avr_read_pc): Change parameter type to
12413         readable_regcache.
12414         * gdbarch.sh (read_pc): Likewise.
12415         * gdbarch.c: Re-generated.
12416         * gdbarch.h: Re-generated.
12417         * hppa-tdep.c (hppa_read_pc): Change parameter type to
12418         readable_regcache.
12419         * ia64-tdep.c (ia64_read_pc): Likewise.
12420         * mips-tdep.c (mips_read_pc): Likewise.
12421         * spu-tdep.c (spu_read_pc): Likewise.
12422
12423 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12424
12425         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
12426         * regcache-dump.c: New file.
12427         * regcache.c: Move register_dump to regcache-dump.c.
12428         (maintenance_print_registers): Likewise.
12429         (maintenance_print_raw_registers): Likewise.
12430         (maintenance_print_cooked_registers): Likewise.
12431         (maintenance_print_register_groups): Likewise.
12432         (maintenance_print_remote_registers): Likewise.
12433         (_initialize_regcache): Likewise.
12434         * regcache.h (register_dump): Moved from regcache.c.
12435
12436 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12437
12438         * regcache.c (regcache::regcache): Update.
12439         (regcache::invalidate): Move it to detached_regcache::invalidate.
12440         (get_thread_arch_aspace_regcache): Update.
12441         (regcache::raw_update): Update.
12442         (regcache::cooked_read): Remove some code.
12443         (regcache::cooked_read_value): Likewise.
12444         (regcache::raw_write): Remove assert on m_readonly_p.
12445         (regcache::raw_supply_integer): Move it to
12446         detached_regcache::raw_supply_integer.
12447         (regcache::raw_supply_zeroed): Likewise.
12448         * regcache.h (detached_regcache) <raw_supply_integer>: New
12449         declaration.
12450         <raw_supply_zeroed, invalidate>: Likewise.
12451         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
12452         <invalidate>: Likewise.
12453         <m_readonly_p>: Removed.
12454
12455 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12456
12457         * infcmd.c (get_return_value): Let stop_regs point to
12458         get_current_regcache.
12459         * regcache.c (regcache::regcache): Remove.
12460         (register_dump_reg_buffer): New class.
12461         (regcache_print): Adjust.
12462         * regcache.h (regcache): Remove constructors.
12463
12464 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12465
12466         * regcache.c (class register_dump): New class.
12467         (register_dump_regcache, register_dump_none): New class.
12468         (register_dump_remote, register_dump_groups): New class.
12469         (regcache_print): Update.
12470         * regcache.h (regcache_dump_what): Move it to regcache.c.
12471         (regcache) <dump>: Remove.
12472
12473 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12474
12475         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
12476          reg_buffer_rw *.
12477         (jit_unwind_reg_set_impl): Call raw_supply.
12478         (jit_frame_sniffer): Use reg_buffer_rw.
12479         * record-full.c (record_full_core_regbuf): Change its type.
12480         (record_full_core_open_1): Use reg_buffer_rw.
12481         (record_full_close): Likewise.
12482         (record_full_core_fetch_registers): Use regcache->raw_supply.
12483         (record_full_core_store_registers): Likewise.
12484         * regcache.c (regcache::get_register_status): Move it to
12485         reg_buffer.
12486         (regcache_raw_set_cached_value): Remove.
12487         (regcache::raw_set_cached_value): Remove.
12488         (regcache::raw_write): Call raw_supply.
12489         (regcache::raw_supply): Move it to reg_buffer_rw.
12490         * regcache.h (regcache_raw_set_cached_value): Remove.
12491         (reg_buffer_rw): New class.
12492
12493 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12494
12495         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
12496         readonly_detached_regcache.
12497         (dummy_frame_prev_register): Use regcache->cooked_read.
12498         * frame.c (frame_save_as_regcache): Change return type.
12499         (frame_pop): Update.
12500         * frame.h (frame_save_as_regcache): Update declaration.
12501         * inferior.h (get_infcall_suspend_state_regcache): Update
12502         declaration.
12503         * infrun.c (infcall_suspend_state) <registers>: use
12504         readonly_detached_regcache.
12505         (save_infcall_suspend_state): Don't use regcache_dup.
12506         (get_infcall_suspend_state_regcache): Change return type.
12507         * linux-fork.c (struct fork_info) <savedregs>: Change to
12508         readonly_detached_regcache.
12509         <pc>: New field.
12510         (fork_save_infrun_state): Don't use regcache_dup.
12511         (info_checkpoints_command): Adjust.
12512         * mi/mi-main.c (register_changed_p): Update declaration.
12513         (mi_cmd_data_list_changed_registers): Use
12514         readonly_detached_regcache.
12515         (register_changed_p): Change parameter type to
12516         readonly_detached_regcache.
12517         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
12518         readonly_detached_regcache.
12519         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
12520         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
12521         New.
12522         (regcache::save): Move it to reg_buffer.
12523         (regcache::restore): Change parameter type.
12524         (regcache_dup): Remove.
12525         * regcache.h (reg_buffer) <save>: New method.
12526         (readonly_detached_regcache): New class.
12527         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
12528         readonly_detached_regcache.
12529         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
12530
12531 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12532
12533         * frame.c (frame_save_as_regcache): Use regcache method save.
12534         (frame_pop): Use regcache method restore.
12535         * infrun.c (restore_infcall_suspend_state): Likewise.
12536         * linux-fork.c (fork_load_infrun_state): Likewise.
12537         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
12538         save.
12539         * regcache.c (regcache_save): Remove.
12540         (regcache::restore): More asserts.
12541         (regcache_cpy): Remove.
12542         * regcache.h (regcache_save): Remove the declaration.
12543         (regcache::restore): Move from private to public.
12544         Remove the friend declaration of regcache_cpy.
12545         (regcache_cpy): Remove declaration.
12546
12547 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12548
12549         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
12550         parameter type to 'readable_regcache *'.
12551         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
12552         * arm-tdep.c (arm_neon_quad_read): Likewise.
12553         (arm_pseudo_read): Likewise.
12554         * avr-tdep.c (avr_pseudo_register_read): Likewise.
12555         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
12556         * frv-tdep.c (frv_pseudo_register_read): Likewise.
12557         * gdbarch.c: Re-generated.
12558         * gdbarch.h: Re-generated.
12559         * gdbarch.sh (pseudo_register_read): Change parameter type to
12560         'readable_regcache *'.
12561         (pseudo_register_read_value): Likewise.
12562         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
12563         (h8300_pseudo_register_read): Likewise.
12564         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
12565         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
12566         (i386_pseudo_register_read_into_value): Likewise.
12567         (i386_pseudo_register_read_value): Likewise.
12568         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
12569         declaration.
12570         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
12571         * m32c-tdep.c (m32c_raw_read): Likewise.
12572         (m32c_read_flg): Likewise.
12573         (m32c_banked_register): Likewise.
12574         (m32c_banked_read): Likewise.
12575         (m32c_sb_read): Likewise.
12576         (m32c_part_read): Likewise.
12577         (m32c_cat_read): Likewise.
12578         (m32c_r3r2r1r0_read): Likewise.
12579         (m32c_pseudo_register_read): Likewise.
12580         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
12581         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
12582         (mep_pseudo_cr64_read): Likewise.
12583         (mep_pseudo_register_read): Likewise.
12584         * mips-tdep.c (mips_pseudo_register_read): Likewise.
12585         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
12586         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
12587         * regcache.c (regcache::raw_read): Move it to readable_regcache.
12588         (regcache::cooked_read): Likewise.
12589         (regcache::cooked_read_value): Likewise.
12590         (regcache_cooked_read_signed):
12591         (regcache::cooked_read): Likewise.
12592         * regcache.h (readable_regcache): New class.
12593         (regcache): Inherit readable_regcache.  Move some methods to
12594         readable_regcache.
12595         * rl78-tdep.c (rl78_pseudo_register_read): Change
12596         parameter type to 'readable_regcache *'.
12597         * rs6000-tdep.c (do_regcache_raw_read): Remove.
12598         (e500_pseudo_register_read): Change parameter type to
12599         'readable_regcache *'.
12600         (dfp_pseudo_register_read): Likewise.
12601         (vsx_pseudo_register_read): Likewise.
12602         (efpr_pseudo_register_read): Likewise.
12603         * s390-tdep.c (s390_pseudo_register_read): Likewise.
12604         * sh-tdep.c (sh_pseudo_register_read): Likewise.
12605         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
12606         (sh64_pseudo_register_read): Likewise.
12607         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
12608         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
12609         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
12610         (spu_pseudo_register_read): Likewise.
12611         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
12612         (xtensa_pseudo_register_read): Likewise.
12613
12614 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12615
12616         * regcache.c (regcache::regcache): Call reg_buffer ctor.
12617         (regcache::arch): Move it to reg_buffer::arch.
12618         (regcache::register_buffer): Likewise.
12619         (regcache::assert_regnum): Likewise.
12620         (regcache::num_raw_registers): Likewise.
12621         * regcache.h (reg_buffer): New class.
12622         (regcache): Inherit reg_buffer.
12623
12624 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
12625
12626         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
12627         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
12628
12629 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
12630
12631         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
12632
12633 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
12634
12635         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
12636         (SFILES): Remove common/*.c files.
12637         (COMMON_OBS): Remove some *.o files built from common/*.c files.
12638         * common/common.host: Add common reference.
12639         * configure.ac: Likewise.
12640         * configure: Regenerate.
12641
12642 2018-02-16  Yao Qi  <yao.qi@linaro.org>
12643
12644         * block.c (block_namespace_info): Inherit allocate_on_obstack.
12645         (block_initialize_namespace): Use new.
12646         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
12647         (dwarf2_free_objfile): Use delete.
12648         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
12649         (copy_type_recursive): Use new.
12650         * gdb_obstack.h (allocate_on_obstack): New.
12651
12652 2018-02-15  Yao Qi  <yao.qi@linaro.org>
12653
12654         PR gdb/22849
12655         * inferior.c (exit_inferior_1): Reset inf->control.
12656
12657 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
12658
12659         * ada-lang.c (ada_to_fixed_value_create): Delete advance
12660         declaration.
12661
12662 2018-02-14  Pedro Alves  <palves@redhat.com>
12663
12664         * frame-unwind.c (frame_unwind_try_unwinder): Always call
12665         frame_cleanup_after_sniffer on exception.
12666
12667 2018-02-14  Tom Tromey  <tom@tromey.com>
12668
12669         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
12670         const.
12671         (solib_bfd_open): Make pathname const.
12672         * solib.c (solib_bfd_open): Make pathname const.
12673         * solib-spu.c (spu_bfd_fopen): Make name const.
12674         (spu_bfd_open): Make pathname const.
12675         * solib-darwin.c (darwin_bfd_open): Make pathname const.
12676         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
12677
12678 2018-02-14  Tom Tromey  <tom@tromey.com>
12679
12680         * symfile.c (symfile_bfd_open): Update.
12681         * source.h (openp, source_full_path_of, find_and_open_source):
12682         Change argument type to unique_xmalloc_ptr.
12683         * source.c (openp): Take a unique_xmalloc_ptr.
12684         (source_full_path_of, find_and_open_source): Likewise.
12685         (open_source_file, symtab_to_fullname): Update.
12686         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
12687         unique_xmalloc_ptr.
12688         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
12689         (exec_file_find): Update.
12690         * psymtab.c (psymtab_to_fullname): Update.
12691         * nto-tdep.h (nto_find_and_open_solib): Update.
12692         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
12693         unique_xmalloc_ptr.
12694         * exec.c (exec_file_attach): Update.
12695         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
12696         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
12697
12698 2018-02-14  Tom Tromey  <tom@tromey.com>
12699
12700         * solib.c: Include source.h.
12701         * nto-tdep.c: Include source.h.
12702         * mi/mi-cmd-env.c: Include source.h.
12703         * infcmd.c: Include source.h.
12704         * exec.c: Include source.h.
12705         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
12706         (add_path, directory_switch, source_path, init_source_path): Move
12707         declarations...
12708         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
12709         (add_path, directory_switch, source_path, init_source_path):
12710         ...here.
12711
12712 2018-02-14  Tom Tromey  <tom@tromey.com>
12713
12714         * solist.h (exec_file_find, solib_find): Return
12715         unique_xmalloc_ptr.
12716         (solib_bfd_fopen): Take a const char *.
12717         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
12718         (exec_file_find, solib_find): Likewise.
12719         (solib_bfd_fopen): Do not take ownership of "pathname".
12720         (solib_bfd_open): Use unique_xmalloc_ptr.
12721         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
12722         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
12723         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
12724         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
12725
12726 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
12727
12728         * ada-lang.c (name_match_type_from_name): Remove reference to
12729         ada_name_for_lookup in function's documentation.
12730         * ada-lang.h (ada_name_for_lookup): Delete declaration.
12731
12732 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
12733
12734         * defs.h (enum openp_flags): New enum.
12735         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
12736         Move to enum openp_flags.
12737         (openp_flags): New enum flags.
12738         (openp): Change parameter type to openp_flags.
12739         * source.c (openp): Change parameter type to openp_flags.
12740         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
12741         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
12742
12743 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
12744
12745         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
12746         per-command.
12747
12748 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12749
12750         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
12751         into...
12752         (class dwarf2_queue_guard): ...the destructor of this new class.
12753         (dw2_do_instantiate_symtab): Create instance of the new class
12754         dwarf2_queue_guard, remove cleanup.
12755
12756 2018-02-09  Tom Tromey  <tom@tromey.com>
12757
12758         * source.c (find_source_lines): Don't reference past the end of
12759         the vector.
12760
12761 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12762
12763         * remote.c (remote_btrace_maybe_reopen): Change error message.
12764         * btrace.c (btrace_enable): Likewise.
12765         (parse_xml_btrace): Likewise.
12766         (parse_xml_btrace_conf): Likewise.
12767
12768 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12769
12770         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
12771         (linux_enable_pt, linux_enable_bts): Call
12772         diagnose_perf_event_open_fail.
12773
12774 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12775
12776         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
12777         Remove parameter and change return type.  Update callers.  Move it.
12778         (linux_enable_bts, linux_enable_pt): Improve error message.
12779         (linux_enable_pt): Remove zero buffer size check.
12780         (linux_enable_btrace): Improve error messages.  Remove NULL return
12781         check.
12782
12783 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12784
12785         * btrace.c (btrace_enable): Remove target_supports_btrace call.
12786         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
12787         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
12788         (linux_supports_pt, linux_supports_btrace): Remove.
12789         (linux_enable_bts): Call cpu_supports_bts.
12790         * nat/linux-btrace.h (linux_supports_btrace): Remove.
12791         * remote.c (remote_supports_btrace): Remove.
12792         (init_remote_ops): Remove remote_supports_btrace.
12793         * target-delegates.c: Regenerated.
12794         * target.c (target_supports_btrace): Remove.
12795         * target.h (target_ops) <to_supports_btrace>: Remove
12796         (target_supports_btrace): Remove.
12797         * x86-linux-nat.c (x86_linux_create_target): Remove
12798         linux_supports_btrace.
12799
12800 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12801
12802         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
12803         btrace failed.
12804         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
12805         exception and use message in own exception.
12806
12807 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12808
12809         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
12810         (perf_event_pt_event_type): Use gdb_file_up.
12811         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
12812         scoped_fd, and scoped_mmap.
12813
12814 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12815
12816         * common/scoped_mmap.h: New.
12817         * unittests/scoped_mmap-selftest.c: New.
12818         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12819         unittests/scoped_mmap-selftest.c.
12820
12821 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12822
12823         * common/scoped_fd.h: New.
12824         * unittests/scoped_fd-selftest.c: New.
12825         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12826         unittests/scoped_fd-selftest.c.
12827
12828 2018-02-09  Tom Tromey  <tom@tromey.com>
12829
12830         * auto-load.c (auto_load_section_scripts): Use
12831         gdb::unique_xmalloc_ptr.
12832
12833 2018-02-09  Tom Tromey  <tom@tromey.com>
12834
12835         * auto-load.c (execute_script_contents): Use std::string.
12836
12837 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
12838
12839         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
12840         Python function, rather than a new command.
12841
12842 2018-02-08  Tom Tromey  <tom@tromey.com>
12843
12844         * solib.c (solib_find_1): Use std::string.
12845         (solib_bfd_fopen): Use unique_xmalloc_ptr.
12846
12847 2018-02-08  Tom Tromey  <tom@tromey.com>
12848
12849         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
12850
12851 2018-02-08  Tom Tromey  <tom@tromey.com>
12852
12853         * source.c (find_source_lines): Use gdb::def_vector.
12854
12855 2018-02-08  Tom Tromey  <tom@tromey.com>
12856
12857         * macrocmd.c (struct temporary_macro_definition): New.
12858         (macro_define_command): Use temporary_macro_definition.  Remove
12859         cleanups.
12860         (free_macro_definition_ptr): Remove.
12861
12862 2018-02-08  Tom Tromey  <tom@tromey.com>
12863
12864         * macroexp.c (maybe_expand): Use std::string.
12865
12866 2018-02-08  Tom Tromey  <tom@tromey.com>
12867
12868         * macroexp.c (struct macro_buffer): Add initializers for some
12869         members.
12870         (init_buffer, init_shared_buffer, free_buffer)
12871         (free_buffer_return_text): Remove.
12872         (macro_buffer): New constructors.
12873         (~macro_buffer): New destructor.
12874         (macro_buffer::set_shared): New method.
12875         (macro_buffer::resize_buffer, macro_buffer::appendc)
12876         (macro_buffer::appendmem): Now methods, not free functions.
12877         (set_token, append_tokens_without_splicing, stringify)
12878         (macro_stringify): Update.
12879         (gather_arguments): Change return type.  Remove argc_p argument,
12880         add args_ptr argument.  Use std::vector.
12881         (substitute_args): Remove argc argument.  Accept std::vector.
12882         (expand): Update.  Use std::vector.
12883         (scan, macro_expand, macro_expand_next): Update.
12884
12885 2018-02-08  Tom Tromey  <tom@tromey.com>
12886
12887         * symtab.c (default_collect_symbol_completion_matches_break_on):
12888         Use unique_xmalloc_ptr.
12889         * macroscope.h: (sal_macro_scope, user_macro_scope)
12890         (default_macro_scope): Return unique_xmalloc_ptr.
12891         * macroscope.c (sal_macro_scope, user_macro_scope)
12892         (default_macro_scope): Return unique_xmalloc_ptr.
12893         * macroexp.h (macro_expand, macro_expand_once): Return
12894         unique_xmalloc_ptr.
12895         * macroexp.c (macro_expand, macro_expand_once): Return
12896         unique_xmalloc_ptr.
12897         * macrocmd.c (macro_expand_command, macro_expand_once_command)
12898         (info_macro_command, info_macros_command): Use
12899         unique_xmalloc_ptr.
12900         * compile/compile-c-support.c (write_macro_definitions): Use
12901         unique_xmalloc_ptr.
12902         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
12903
12904 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
12905
12906         * value.c (value_static_field): Assign field type instead of
12907         containing type when returning an optimized out value.
12908
12909 2018-02-06  Yao Qi  <yao.qi@linaro.org>
12910
12911         * ft32-tdep.c (ft32_read_pc): Remove.
12912         (ft32_write_pc): Remove.
12913         (ft32_gdbarch_init): Update.
12914         * m32r-tdep.c (m32r_read_pc): Remove.
12915         (m32r_gdbarch_init): Update.
12916         * mep-tdep.c (mep_read_pc): Remove.
12917         (mep_gdbarch_init): Update.
12918         * microblaze-tdep.c (microblaze_write_pc): Remove.
12919         (microblaze_gdbarch_init): Update.
12920         * mn10300-tdep.c (mn10300_read_pc): Remove.
12921         (mn10300_write_pc): Remove.
12922         (mn10300_gdbarch_init): Update.
12923         * moxie-tdep.c (moxie_read_pc): Remove.
12924         (moxie_write_pc): Remove.
12925         (moxie_gdbarch_init): Update.
12926
12927 2018-02-06  Yao Qi  <yao.qi@linaro.org>
12928
12929         * expprint.c (print_subexp_standard): Handle
12930         OP_F77_UNDETERMINED_ARGLIST.
12931         (dump_subexp_body_standard): Likewise.
12932
12933 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
12934
12935         * target-descriptions.c (tdesc_element_visitor) Add empty
12936         implementations.
12937         (tdesc_type): Move make_gdb_type from here.
12938         (tdesc_type_builtin): Likewise.
12939         (tdesc_type_vector): Likewise.
12940         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
12941         (make_gdb_type_struct): Move from tdesc_type_with_fields.
12942         (make_gdb_type_union): Likewise.
12943         (make_gdb_type_flags): Likewise.
12944         (make_gdb_type_enum): Likewise.
12945         (make_gdb_type): New function.
12946         (tdesc_register_type): Use static make_gdb_type.
12947
12948 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
12949
12950         * infcmd.c (default_print_one_register_info): Align natural-format
12951         column values consistently one under another.
12952         (pad_to_column): New function.
12953
12954 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
12955
12956         * dwarf2read.c (dwarf2_physname): Move commment.
12957
12958 2018-02-01  Leszek Swirski  <leszeks@google.com>
12959
12960         * varobj.c (varobj_formatted_print_options): Allow recursive
12961         pretty printing if pretty printing is enabled.
12962
12963 2018-02-01  Leszek Swirski  <leszeks@google.com>
12964
12965         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
12966         names after a structop as a filename.
12967
12968 2018-02-01  Yao Qi  <yao.qi@linaro.org>
12969
12970         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
12971         (arm_record_coproc_data_proc): Likewise.
12972
12973 2018-02-01  Yao Qi  <yao.qi@linaro.org>
12974
12975         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
12976
12977 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
12978
12979         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
12980         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
12981
12982 2018-01-31  Pedro Alves  <palves@redhat.com>
12983
12984         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
12985         * inflow.c (child_terminal_save_inferior): Wrap reference to
12986         tcgetpgrp in HAVE_TERMIOS_H.
12987         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
12988         _WIN32.
12989         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
12990         always iterate over all inferiors.
12991         (gdbsim_cntrl_c): Adjust.
12992         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
12993
12994 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
12995
12996         * gdbtypes.c (lookup_array_range_type): Make sure the array's
12997         index type is objfile-owned if the element type is as well.
12998
12999 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13000
13001         GDB 8.1 released.
13002
13003 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13004
13005         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
13006         "features/s390x-linux64.c".
13007         (_initialize_s390_linux_tdep): Remove initialization of tdescs
13008         s390_linux32 and s390x_linux64.
13009         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
13010         default tdesc.
13011         * s390-tdep.c: Include "features/s390-linux32.c" and
13012         "features/s390x-linux64.c".
13013         (s390_tdesc_valid): Add check for tdesc_has_registers.
13014         (s390_gdbarch_init): Make sure there is always a valid tdesc.
13015         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
13016         tdesc_s390x_linux64.
13017         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
13018         tdesc_s390x_linux64 to...
13019         * s390-tdep.h: ...here.
13020
13021 2018-01-30  Pedro Alves  <palves@redhat.com>
13022
13023         PR gdb/13211
13024         * config.in, configure: Regenerate.
13025         * configure.ac: Check for getpgid.
13026         * go32-nat.c (go32_pass_ctrlc): New.
13027         (go32_target): Install it.
13028         * inf-child.c (inf_child_target): Install
13029         child_terminal_save_inferior, child_pass_ctrlc and
13030         child_interrupt.
13031         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
13032         (inf_ptrace_target): No longer install it.
13033         * infcmd.c (interrupt_target_1): Adjust.
13034         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
13035         (child_interrupt): Declare.
13036         (inferior::terminal_state): New.
13037         * inflow.c (struct terminal_info): Update comments.
13038         (inferior_process_group): Delete.
13039         (terminal_is_ours): Delete.
13040         (gdb_tty_state): New.
13041         (child_terminal_init): Adjust.
13042         (is_gdb_terminal, sharing_input_terminal_1)
13043         (sharing_input_terminal): New functions.
13044         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
13045         Set the process's actual process group in the foreground if
13046         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
13047         mark terminal as the inferior's if not sharing GDB's terminal.
13048         Don't check attach_flag.
13049         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
13050         pass down a target_terminal_state.
13051         (child_terminal_save_inferior): New, factored out from ...
13052         (child_terminal_ours_1): ... this.  Handle
13053         target_terminal_state::is_ours_for_output.
13054         (child_interrupt, child_pass_ctrlc): New.
13055         (inflow_inferior_exit): Clear the inferior's terminal_state.
13056         (copy_terminal_info): Copy the inferior's terminal state.
13057         (_initialize_inflow): Remove reference to terminal_is_ours.
13058         * inflow.h (inferior_process_group): Delete.
13059         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
13060         * procfs.c (procfs_target): Don't install procfs_interrupt.
13061         (procfs_interrupt): Delete.
13062         * remote.c (remote_serial_quit_handler): Adjust.
13063         (remote_interrupt): Remove ptid parameter.  Adjust.
13064         * target-delegates.c: Regenerate.
13065         * target.c: Include "terminal.h".
13066         (target_terminal::terminal_state): Rename to ...
13067         (target_terminal::m_terminal_state): ... this.
13068         (target_terminal::init): Adjust.
13069         (target_terminal::inferior): Adjust to per-inferior
13070         terminal_state.
13071         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
13072         (target_terminal::ours, target_terminal::ours_for_output): Use
13073         target_terminal_is_ours_kind.
13074         (target_interrupt): Remove ptid parameter.  Adjust.
13075         (default_target_pass_ctrlc): Adjust.
13076         * target.h (target_ops::to_terminal_save_inferior): New field.
13077         (target_ops::to_interrupt): Remove ptid_t parameter.
13078         (target_interrupt): Remove ptid_t parameter.  Update comment.
13079         (target_pass_ctrlc): Update comment.
13080         * target/target.h (target_terminal_state): New scoped enum,
13081         factored out of ...
13082         (target_terminal::terminal_state): ... here.
13083         (target_terminal::inferior): Update comments.
13084         (target_terminal::restore_inferior): New.
13085         (target_terminal::is_inferior, target_terminal::is_ours)
13086         (target_terminal::is_ours_for_output): Adjust.
13087         (target_terminal::scoped_restore_terminal_state): Adjust to
13088         rename, and call restore_inferior() instead of inferior().
13089         (target_terminal::scoped_restore_terminal_state::m_state): Change
13090         type.
13091         (target_terminal::terminal_state): Rename to ...
13092         (target_terminal::m_terminal_state): ... this and change type.
13093
13094 2018-01-30  Pedro Alves  <palves@redhat.com>
13095
13096         * linux-nat.c (wait_for_signal): New function.
13097         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
13098         directly.
13099         (async_terminal_is_ours)
13100         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
13101         (linux_nat_add_target): Don't override
13102         to_terminal_inferior/to_terminal_ours.
13103
13104 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
13105
13106         * remote.c (remote_follow_fork): Don't call "detach_inferior".
13107
13108 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
13109
13110         * dwarf2read.c (free_dwo_files): Add forward-declaration.
13111         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
13112         dwarf2_per_objfile_free here.
13113         (dwarf2_per_objfile_free): Remove.
13114         (_initialize_dwarf2_read): Don't register
13115         dwarf2_per_objfile_free as a registry cleanup.
13116
13117 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
13118
13119         Avoid compilation errors in MinGW native builds
13120
13121         The error is triggered by including python-internal.h, and the
13122         error message is:
13123
13124              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
13125                       from build-gnulib/import/math.h:27,
13126                       from d:/usr/Python26/include/pyport.h:235,
13127                       from d:/usr/Python26/include/Python.h:58,
13128                       from python/python-internal.h:94,
13129                       from python/py-arch.c:24:
13130              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
13131         using ::hypot;
13132                 ^~~~~
13133
13134         This happens because Python headers define 'hypot' to expand t
13135         '_hypot' in the Windows builds.
13136         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
13137         'hypoth'.  This avoids a compilation error.
13138
13139 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13140
13141         * MAINTAINERS (Write After Approval): Fix ordering.
13142
13143 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13144
13145         * MAINTAINERS (Write After Approval): Add Alan Hayward.
13146
13147 2018-01-26  Alan Modra  <amodra@gmail.com>
13148
13149         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
13150         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
13151         Remove nop.  Make const.  Comment.
13152         (powerpc32_plt_stub_so_2): New.
13153         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
13154         Correct count.  Update uses.
13155         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
13156         Move common code reading PLT entry word.  Correct
13157         powerpc32_plt_stub PLT address calculation.
13158         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
13159         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
13160         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
13161         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
13162         (ppc64_standard_linkage8): Likewise.
13163         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
13164         Correct insns description.
13165         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
13166
13167 2018-01-24  Pedro Alves  <palves@redhat.com>
13168
13169         GCC PR libstdc++/83906
13170         * gdbtypes.c (operator==(const dynamic_prop &,
13171         const dynamic_prop &)): New.
13172         (operator==(const range_bounds &, const range_bounds &)): New.
13173         (check_types_equal): Use them instead of memcmp.
13174         * gdbtypes.h (operator==(const dynamic_prop &,
13175         const dynamic_prop &)): Declare.
13176         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
13177         (operator==(const range_bounds &, const range_bounds &)): Declare.
13178         (operator!=(const range_bounds &, const range_bounds &)): Declare.
13179
13180 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13181
13182         * s390-linux-tdep.c (s390_record_address_mask)
13183         (s390_record_calc_disp_common, s390_record_calc_disp)
13184         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13185         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13186         (s390_process_record): Move to s390-tdep.c.
13187         (s390_linux_init_abi_any): Adjust.
13188         * s390-tdep.c (s390_record_address_mask)
13189         (s390_record_calc_disp_common, s390_record_calc_disp)
13190         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13191         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13192         (s390_process_record): Moved from s390-linux-tdep.c
13193         (s390_gdbarch_init): Adjust.
13194
13195 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13196
13197         * s390-linux-nat.c (s390-tdep.h): New include.
13198         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
13199         (HFILES_NO_SRCDIR): Add s390-tdep.h.
13200         (ALLDEPFILES): Add s390-tdep.c.
13201         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
13202         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
13203         * s390-tdep.h: ...this.  New file.
13204         * s390-linux-tdep.c (s390-tdep.h): New include.
13205         (_initialize_s390_tdep): Rename to...
13206         (_initialize_s390_linux_tdep): ...this and adjust.
13207         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
13208         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
13209         s390-tdep.h.
13210         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
13211         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
13212         (s390_is_partial_instruction, s390_software_single_step)
13213         (is_non_branch_ril, s390_displaced_step_copy_insn)
13214         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
13215         (s390_prologue_data, s390_addr, s390_store, s390_load)
13216         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
13217         (s390_register_call_saved, s390_guess_tracepoint_registers)
13218         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
13219         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
13220         (s390_pseudo_register_name, s390_pseudo_register_type)
13221         (s390_pseudo_register_read, s390_pseudo_register_write)
13222         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
13223         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
13224         (s390_addr_bits_remove, s390_address_class_type_flags)
13225         (s390_address_class_type_flags_to_name)
13226         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
13227         (s390_function_arg_float, s390_function_arg_vector)
13228         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
13229         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
13230         (s390_frame_align, s390_register_return_value, s390_return_value)
13231         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
13232         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
13233         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
13234         (s390_trad_frame_prev_register, s390_unwind_cache)
13235         (s390_prologue_frame_unwind_cache)
13236         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
13237         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
13238         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
13239         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
13240         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
13241         (s390_frame_base_address, s390_local_base_address)
13242         (s390_frame_base, s390_gcc_target_options)
13243         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
13244         (s390_validate_reg_range, s390_tdesc_valid)
13245         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
13246         * s390-tdep.c: ...this.  New file.
13247
13248 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13249
13250         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
13251         (s390_process_record, s390_gdbarch_tdep_alloc)
13252         (s390_linux_init_abi_any): Use/set new hook.
13253
13254 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13255
13256         * s390-linux-tdep.c (osabi.h): New include.
13257         (s390_linux_init_abi_31, s390_linux_init_abi_64)
13258         (s390_linux_init_abi_any): New functions.
13259         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
13260
13261 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13262
13263         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
13264         tdesc_has_registers check
13265
13266 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13267
13268         * s390-linux-tdep.c (s390_tdesc_valid): New function.
13269         (s390_validate_reg_range): New macro.
13270         (s390_gdbarch_init): Adjust.
13271
13272 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13273
13274         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
13275         (s390_gdbarch_tdep_alloc): Adjust.
13276         (s390_gdbarch_init): Adjust.
13277
13278 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13279
13280         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
13281         <have_tdb>: Change type to bool.
13282         (s390_gdbarch_tdep_alloc): Adjust.
13283         (s390_gdbarch_init): Adjust.
13284
13285 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13286
13287         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
13288         (gdbarch_tdep) <have_upper, have_vx>: New fields.
13289         (s390_gdbarch_tdep_alloc): New function.
13290         (s390_gdbarch_init): Allocate tdep at start and use its fields
13291         instead of separate variables.
13292
13293 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13294
13295         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
13296         when looking for cached gdbarch and add comment for remaining.
13297
13298 2018-01-22  Pedro Alves  <palves@redhat.com>
13299             Sergio Durigan Junior  <sergiodj@redhat.com>
13300
13301         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
13302         case.
13303
13304 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
13305
13306         * MAINTAINERS: Update my company e-mail address.
13307
13308 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13309
13310         * regcache.c (cooked_write_test): New function.
13311         (_initialize_regcache): Register the test.
13312
13313 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13314
13315         * ia64-tdep.c (ia64_pseudo_register_read): Call
13316         regcache->cooked_read instead of regcache_cooked_read_unsigned.
13317         * m32c-tdep.c (m32c_cat_read): Likewise.
13318         (m32c_r3r2r1r0_read): Likewise.
13319         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13320         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13321
13322 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13323
13324         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
13325         method raw_read instead of regcache_raw_read.
13326         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13327         * arm-tdep.c (arm_neon_quad_read): Likewise.
13328         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13329         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13330         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13331         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
13332         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13333         (i386_pseudo_register_read_into_value): Likewise.
13334         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13335         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13336         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13337         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
13338         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
13339         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
13340         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13341         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
13342         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
13343
13344 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13345
13346         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
13347         * configure.tgt: Remove target mt.
13348         * mt-tdep.c: Remove.
13349         * regcache.c (cooked_read_test): Remove the check for mt.
13350
13351 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13352
13353         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
13354         instead of gdbarch_pseudo_register_read_value.
13355
13356 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13357
13358         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
13359         language is Ada.
13360
13361 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13362
13363         * linespec.c (create_sals_line_offset): Remove code that preserved
13364         the symtab_and_line's line number.
13365
13366 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13367
13368         * varobj.c (varobj_create): Don't set valid_block when creating a
13369         floating varobj.
13370
13371 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13372
13373         * varobj.c (varobj_create): Remove out of date comment.
13374
13375 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13376
13377         PR mi/20395
13378         * ada-exp.y (write_var_from_sym): Pass extra parameter when
13379         updating innermost block.
13380         * parse.c (innermost_block_tracker::update): Take extra type
13381         parameter, and check types match before updating innermost block.
13382         (write_dollar_variable): Update innermost block for registers.
13383         * parser-defs.h (enum innermost_block_tracker_type): New enum.
13384         (innermost_block_tracker::innermost_block_tracker): Initialise
13385         m_types member.
13386         (innermost_block_tracker::reset): Take type parameter.
13387         (innermost_block_tracker::update): Take type parameter, and pass
13388         type through as needed.
13389         (innermost_block_tracker::m_types): New member.
13390         * varobj.c (varobj_create): Pass type when reseting innermost
13391         block.
13392
13393 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13394
13395         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
13396         * ada-lang.c (resolve_subexp): Likewise.
13397         * breakpoint.c (set_breakpoint_condition) Likewise.
13398         (watch_command_1) Likewise.
13399         * c-exp.y (variable): Likewise.
13400         * d-exp.y (PrimaryExpression): Likewise.
13401         * f-exp.y (variable): Likewise.
13402         * go-exp.y (variable): Likewise.
13403         * m2-exp.y (variable): Likewise.
13404         * objfiles.c (objfile::~objfile): Likewise.
13405         * p-exp.y (variable): Likewise.
13406         * parse.c (innermost_block): Change type.
13407         * parser-defs.h (class innermost_block_tracker): New.
13408         (innermost_block): Change to innermost_block_tracker.
13409         * printcmd.c (display_command): Switch to innermost_block API.
13410         (do_one_display): Likewise.
13411         * rust-exp.y (do_one_display): Likewise.
13412         * symfile.c (clear_symtab_users): Likewise.
13413         * varobj.c (varobj_create): Switch to innermost_block API, replace
13414         use of innermost_block with block stored on varobj object.
13415
13416 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13417
13418         * expression.h (innermost_block): Remove declaration.
13419         * varobj.c: Add 'parser-defs.h' include.
13420
13421 2018-01-19  Tom Tromey  <tom@tromey.com>
13422
13423         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
13424         symbols in the static and global blocks.
13425
13426 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
13427
13428         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
13429         gdb_ptrace.h, and move including gdb_wait.h ...
13430         * nat/linux-ptrace.h: ... to here.
13431
13432 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13433
13434         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
13435         inf_ptrace_detach_success.
13436         (inf_ptrace_detach_success): Add inferior parameter, use it
13437         instead of inferior_ptid, pass it to detach_inferior.
13438         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
13439         parameter.
13440         * inferior.c (detach_inferior): Add overload that takes an
13441         inferior object.
13442         * inferior.h (detach_inferior): Likewise.
13443         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
13444         use inferior_ptid, adjust call to inf_ptrace_detach_success.
13445         * linux-thread-db.c (thread_db_detach): Use inf parameter.
13446
13447 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13448
13449         * target.h (struct target_ops) <to_detach>: Add inferior
13450         parameter.
13451         (target_detach): Likewise.
13452         * target.c (dispose_inferior): Pass inferior down.
13453         (target_detach): Pass inferior down.  Assert that it is equal to
13454         the current inferior.
13455         * aix-thread.c (aix_thread_detach): Pass inferior down.
13456         * corefile.c (core_file_command): Pass current_inferior() down.
13457         * corelow.c (core_detach): Add inferior parameter.
13458         * darwin-nat.c (darwin_detach): Likewise.
13459         * gnu-nat.c (gnu_detach): Likewise.
13460         * inf-ptrace.c (inf_ptrace_detach): Likewise.
13461         * infcmd.c (detach_command): Pass current_inferior() down to
13462         target_detach.
13463         * infrun.c (follow_fork_inferior): Pass parent_inf to
13464         target_detach.
13465         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
13466         target_detach.
13467         * linux-nat.c (linux_nat_detach): Add inferior parameter.
13468         * linux-thread-db.c (thread_db_detach): Likewise.
13469         * nto-procfs.c (procfs_detach): Likewise.
13470         * procfs.c (procfs_detach): Likewise.
13471         * record.c (record_detach): Likewise.
13472         * record.h (struct inferior): Forward-declare.
13473         (record_detach): Add inferior parameter.
13474         * remote-sim.c (gdbsim_detach): Likewise.
13475         * remote.c (remote_detach_1): Likewise.
13476         (remote_detach): Likewise.
13477         (extended_remote_detach): Likewise.
13478         * sol-thread.c (sol_thread_detach): Likewise.
13479         * target-debug.h (target_debug_print_inferior_p): New macro.
13480         * target-delegates.c: Re-generate.
13481         * top.c (kill_or_detach): Pass inferior down to target_detach.
13482         * windows-nat.c (windows_detach): Add inferior parameter.
13483
13484 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13485
13486         * target.h (struct target_ops) <to_detach>: Remove args
13487         parameter.
13488         (target_detach): Likewise.
13489         * target.c (dispose_inferior): Adjust.
13490         (target_detach): Remove args parameter, adjust.
13491         * aix-thread.c (aix_thread_detach): Adjust.
13492         * corefile.c (core_file_command): Adjust.
13493         * corelow.c (core_detach): Adjust.
13494         * darwin-nat.c (darwin_detach): Adjust.
13495         * gnu-nat.c (gnu_detach): Adjust.
13496         * inf-ptrace.c (inf_ptrace_detach): Adjust.
13497         * infcmd.c (detach_command): Adjust
13498         * infrun.c (follow_fork_inferior): Adjust.
13499         (handle_vfork_child_exec_or_exit): Adjust.
13500         * linux-fork.c (linux_fork_detach): Remove args parameter.
13501         * linux-fork.h (linux_fork_detach): Likewise.
13502         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
13503         * linux-thread-db.c (thread_db_detach): Likewise.
13504         * nto-procfs.c (procfs_detach): Likewise.
13505         * procfs.c (procfs_detach): Likewise.
13506         (do_detach): Remove signo parameter.
13507         * record.c (record_detach): Remove args parameter.
13508         * record.h (record_detach): Likewise.
13509         * remote-sim.c (gdbsim_detach): Likewise.
13510         * remote.c (remote_detach_1): Likewise.
13511         (remote_detach): Likewise.
13512         (extended_remote_detach): Likewise.
13513         * sol-thread.c (sol_thread_detach): Likewise.
13514         * target-delegates.c: Re-generate.
13515         * top.c (struct qt_args) <args>: Remove field.
13516         (kill_or_detach): Don't pass args.
13517         (quit_force): Don't set args.
13518         * windows-nat.c (windows_detach): Remove args parameter.
13519
13520 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13521
13522         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
13523         (arm_linux_init_abi): Install it.
13524
13525 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13526
13527         * osabi.c (gdb_osabi_names): Extend the regexp for
13528         arm-linux-gnueabihf.
13529
13530 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13531
13532         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
13533         m_abbrevs.
13534         (abbrev_table::add_abbrev): Update.
13535         (abbrev_table::lookup_abbrev): Update.
13536
13537 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13538
13539         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
13540
13541 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
13542
13543         * compile/compile.c (compile_to_object): Convert "triplet_rx"
13544         to "std::string".
13545
13546 2018-01-17  Tom Tromey  <tom@tromey.com>
13547
13548         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
13549
13550 2018-01-17  Tom Tromey  <tom@tromey.com>
13551
13552         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
13553         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
13554         (create_array_type_with_stride): Update.
13555         * dwarf2read.c (set_die_type): Update.
13556
13557 2018-01-17  Tom Tromey  <tom@tromey.com>
13558
13559         * dwarf2read.c (delayed_method_info): Remove typedef.
13560         (dwarf2_cu::method_info): Now a std::vector.
13561         (add_to_method_list): Update.
13562         (free_delayed_list): Remove.
13563         (compute_delayed_physnames): Update.
13564         (process_full_comp_unit, process_full_type_unit): Clear the method
13565         list.  Remove cleanups.
13566         (psymtab_include_file_name): Add name_holder parameter.  Use
13567         unique_xmalloc_ptr.
13568         (dwarf_decode_lines): Update.
13569
13570 2018-01-17  Tom Tromey  <tom@tromey.com>
13571             Simon Marchi  <simon.marchi@ericsson.com>
13572
13573         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
13574         (dwarf2_per_objfile::free_cached_comp_units)
13575         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13576         (init_cutu_and_read_dies_no_follow): Update.
13577         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
13578         (dwarf2_cu::~dwarf2_cu): New.
13579         (free_heap_comp_unit, free_stack_comp_unit): Remove.
13580         (age_cached_comp_units, free_one_cached_comp_unit): Update.
13581
13582 2018-01-17  Tom Tromey  <tom@tromey.com>
13583             Simon Marchi  <simon.marchi@ericsson.com>
13584
13585         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
13586         (struct die_reader_specs) <abbrev_table>: New member.
13587         (struct abbrev_table): Add constructor.
13588         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
13589         <abbrev_obstack>: Now an auto_obstack.
13590         (abbrev_table_up): New typedef.
13591         (init_cu_die_reader): Add abbrev_table parameter.
13592         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
13593         Add result_dwo_abbrev_table.
13594         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13595         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
13596         Update.
13597         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
13598         parameter.
13599         (skip_children): Update.
13600         (abbrev_table::alloc_abbrev): Rename from
13601         abbrev_table_alloc_abbrev.
13602         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
13603         (abbrev_table::lookup_abbrev): Rename from
13604         abbrev_table_lookup_abbrev.
13605         (abbrev_table_read_table): Return abbrev_table_up.
13606         (abbrev_table_free, abbrev_table_free_cleanup)
13607         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
13608         (load_partial_dies): Update.
13609
13610 2018-01-17  Tom Tromey  <tom@tromey.com>
13611
13612         * dwarf2read.c (dwarf2_compute_name): Update comment.
13613         (read_func_scope, read_variable): Update.
13614         (new_symbol): Remove.
13615         (new_symbol_full): Rename to new_symbol.
13616
13617 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
13618
13619         PR gdb/16577
13620         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
13621         a warning instead of throwing an error, set section size to 0 and return
13622         NULL.
13623         * gdb_bfd.h (gdb_bfd_map_section): Update description.
13624
13625 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
13626
13627         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
13628         std::string.
13629         (linux_ptrace_attach_fail_reason_string): Likewise.
13630         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
13631         Likewise.
13632         (linux_ptrace_attach_fail_reason_string): Likewise.
13633         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
13634
13635 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
13636
13637         * linux-nat.c (linux_nat_attach): Remove xstrdup.
13638
13639 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
13640
13641         PR gdb/21559
13642         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
13643         checking for fs_base/gs_base fields in struct user_regs_struct.
13644         * configure: Regenerate.
13645
13646 2018-01-17  Yao Qi  <yao.qi@linaro.org>
13647
13648         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
13649         function.
13650         (aarch64_linux_init_abi): Install it to gdbarch hook
13651         gcc_target_options.
13652
13653 2018-01-15  Pedro Alves  <palves@redhat.com>
13654
13655         * common/signals-state-save-restore.c
13656         (save_original_signals_state): Fix typos.
13657
13658 2017-01-12  Tom Tromey  <tom@tromey.com>
13659             Sergio Durigan Junior  <sergiodj@redhat.com>
13660
13661         * Makefile.in (install-only): Install gdb-add-index.
13662
13663 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
13664
13665         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
13666
13667 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13668
13669         * infrun.c (keep_going_pass_signal): Clear step-over info when
13670         insert_breakpoints fails.
13671
13672 2018-01-11  Pedro Alves  <palves@redhat.com>
13673
13674         PR gdb/22583
13675         * infrun.c (resume): Rename to ...
13676         (resume_1): ... this.
13677         (resume): Reimplement as wrapper around resume_1.
13678
13679 2018-01-11  Pedro Alves  <palves@redhat.com>
13680
13681         PR remote/22597
13682         * remote.c (remote_parse_stop_reply): Default to the last-set
13683         general thread instead of to 'magic_null_ptid'.
13684
13685 2018-01-10  Pedro Alves  <palves@redhat.com>
13686
13687         * language.h (language_get_symbol_name_matcher): Rename ...
13688         (get_symbol_name_matcher): ... this.
13689         * language.c (language_get_symbol_name_matcher): Ditto.
13690         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
13691         callers adjusted.
13692
13693 2018-01-10  Pedro Alves  <palves@redhat.com>
13694
13695         PR gdb/22670
13696         * dwarf2read.c
13697         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
13698         Adjust to use language_get_symbol_name_matcher instead of
13699         language_defn::la_get_symbol_name_matcher.
13700         * language.c (language_get_symbol_name_matcher): If in Ada mode
13701         and the lookup name is a verbatim match, return Ada's matcher.
13702         * language.h (language_get_symbol_name_matcher): Adjust comment.
13703         (ada_lookup_name_info::verbatim_p):: New method.
13704
13705 2018-01-10  Pedro Alves  <palves@redhat.com>
13706
13707         PR gdb/22670
13708         * ada-lang.c (ada_collect_symbol_completion_matches): If the
13709         minsym's language is language_auto or language_cplus, pass down
13710         language_ada instead.
13711         * symtab.c (compare_symbol_name): Don't frob symbol language here.
13712
13713 2018-01-10  Pedro Alves  <palves@redhat.com>
13714
13715         PR gdb/22670
13716         * minsyms.c (linkage_name_str): New function.
13717         (iterate_over_minimal_symbols): Use it.
13718
13719 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13720
13721         * NEWS: Document that 'info proc' now works on FreeBSD.
13722
13723 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13724
13725         * configure.ac: Check for kinfo_getfile in libutil.
13726         * configure: Regenerate.
13727         * config.in: Regenerate.
13728         * fbsd-nat.c: Include "fbsd-tdep.h".
13729         (fbsd_fetch_cmdline): New.
13730         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
13731         rather than calling error.
13732         (fbsd_info_proc): New.
13733         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
13734         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
13735         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
13736
13737 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13738
13739         * fbsd-nat.c (struct free_deleter): Remove.
13740         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
13741
13742 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13743
13744         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
13745         NULL for an empty pathname.
13746
13747 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13748
13749         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
13750         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
13751         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
13752         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
13753         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
13754         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
13755         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
13756         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
13757         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
13758         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
13759         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
13760         (fbsd_core_fetch_timeval, fbsd_print_sigset)
13761         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
13762         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
13763         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
13764
13765 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
13766
13767         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
13768         (gnu_xfer_auxv): New function.
13769         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
13770         TARGET_OBJECT_AUXV.
13771
13772 2018-01-08  Yao Qi  <yao.qi@linaro.org>
13773             Simon Marchi  <simon.marchi@ericsson.com>
13774
13775         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
13776         common/selftest.c.
13777         (COMMON_OBS): Remove selftest.o.
13778         * configure.ac: Append selftest-arch.c and common/selftest.c to
13779         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
13780         * configure: Re-generated.
13781         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
13782         GDB_SELF_TEST.
13783         (maintenance_info_selftests): Likewise.
13784
13785 2018-01-08  Xavier Roirand  <roirand@adacore.com>
13786
13787         * ada-valprint.c (val_print_packed_array_elements): Use
13788         proper number of elements when printing an array indexed
13789         by an enumeration type.
13790
13791 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13792
13793         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
13794         (dw2_get_file_names_reader): Adjust.
13795         (lookup_dwo_signatured_type): Adjust.
13796         (lookup_dwp_signatured_type): Adjust.
13797         (lookup_signatured_type): Adjust.
13798         (create_type_unit_group): Adjust.
13799         (get_type_unit_group): Adjust.
13800         (process_psymtab_comp_unit_reader): Adjust.
13801         (build_type_psymtabs_reader): Adjust.
13802         (scan_partial_symbols): Adjust.
13803         (add_partial_symbol): Adjust.
13804         (add_partial_subprogram): Adjust.
13805         (peek_die_abbrev): Adjust.
13806         (fixup_go_packaging): Adjust.
13807         (process_imported_unit_die): Adjust.
13808         (dwarf2_compute_name): Adjust.
13809         (dwarf2_physname): Adjust.
13810         (read_import_statement): Adjust.
13811         (handle_DW_AT_stmt_list): Adjust.
13812         (read_file_scope): Adjust.
13813         (read_func_scope): Adjust.
13814         (read_lexical_block_scope): Adjust.
13815         (read_call_site_scope): Adjust.
13816         (read_variable): Adjust.
13817         (dwarf2_rnglists_process): Adjust.
13818         (dwarf2_ranges_process): Adjust.
13819         (dwarf2_ranges_read): Adjust.
13820         (dwarf2_get_pc_bounds): Adjust.
13821         (dwarf2_record_block_ranges): Adjust.
13822         (dwarf2_add_field): Adjust.
13823         (dwarf2_add_member_fn): Adjust.
13824         (read_structure_type): Adjust.
13825         (process_structure_scope): Adjust.
13826         (read_enumeration_type): Adjust.
13827         (read_array_type): Adjust.
13828         (mark_common_block_symbol_computed): Adjust.
13829         (read_common_block): Adjust.
13830         (read_namespace_type): Adjust.
13831         (read_namespace): Adjust.
13832         (read_module_type): Adjust.
13833         (read_tag_pointer_type): Adjust.
13834         (read_tag_ptr_to_member_type): Adjust.
13835         (read_tag_string_type): Adjust.
13836         (read_subroutine_type): Adjust.
13837         (read_typedef): Adjust.
13838         (read_base_type): Adjust.
13839         (attr_to_dynamic_prop): Adjust.
13840         (read_subrange_type): Adjust.
13841         (read_unspecified_type): Adjust.
13842         (dwarf2_read_abbrevs): Adjust.
13843         (load_partial_dies): Adjust.
13844         (read_partial_die): Adjust.
13845         (find_partial_die): Adjust.
13846         (guess_partial_die_structure_name): Adjust.
13847         (fixup_partial_die): Adjust.
13848         (read_attribute_value): Adjust.
13849         (read_addr_index): Adjust.
13850         (read_addr_index_from_leb128): Adjust.
13851         (read_str_index): Adjust.
13852         (dwarf2_string_attr): Adjust.
13853         (get_debug_line_section): Adjust.
13854         (dwarf_decode_line_header): Adjust.
13855         (lnp_state_machine::check_line_address): Adjust.
13856         (dwarf_decode_lines_1): Adjust.
13857         (dwarf_decode_lines): Adjust.
13858         (dwarf2_start_symtab): Adjust.
13859         (var_decode_location): Adjust.
13860         (new_symbol_full): Adjust.
13861         (dwarf2_const_value_data): Adjust.
13862         (dwarf2_const_value_attr): Adjust.
13863         (dwarf2_const_value): Adjust.
13864         (die_type): Adjust.
13865         (die_containing_type): Adjust.
13866         (build_error_marker_type): Adjust.
13867         (lookup_die_type): Adjust.
13868         (guess_full_die_structure_name): Adjust.
13869         (anonymous_struct_prefix): Adjust.
13870         (determine_prefix): Adjust.
13871         (dwarf2_name): Adjust.
13872         (follow_die_ref_or_sig): Adjust.
13873         (follow_die_offset): Adjust.
13874         (follow_die_ref): Adjust.
13875         (follow_die_sig_1): Adjust.
13876         (follow_die_sig): Adjust.
13877         (get_signatured_type): Adjust.
13878         (get_DW_AT_signature_type): Adjust.
13879         (decode_locdesc): Adjust.
13880         (dwarf_decode_macros): Adjust.
13881         (cu_debug_loc_section): Adjust.
13882         (fill_in_loclist_baton): Adjust.
13883         (dwarf2_symbol_mark_computed): Adjust.
13884         (init_one_comp_unit): Don't assign
13885         dwarf2_cu::dwarf2_per_objfile.
13886         (set_die_type): Adjust.
13887
13888 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
13889
13890         * dwarf2read.c (struct mapped_debug_names): Add constructor.
13891         <dwarf2_per_objfile>: New field.
13892         (dwarf2_per_objfile): Remove global.
13893         (get_dwarf2_per_objfile): New function.
13894         (set_dwarf2_per_objfile): New function.
13895         (dwarf2_build_psymtabs_hard): Change objfile parameter to
13896         dwarf2_per_objfile.
13897         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
13898         (read_abbrev_offset): Likewise.
13899         (read_indirect_string): Likewise.
13900         (read_indirect_line_string): Likewise.
13901         (read_indirect_string_at_offset): Likewise.
13902         (read_indirect_string_from_dwz): Likewise.
13903         (dwarf2_find_containing_comp_unit): Change objfile parameter to
13904         dwarf2_per_objfile.
13905         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
13906         (create_all_comp_units): Change objfile parameter to
13907         dwarf2_per_objfile.
13908         (create_all_type_units): Likewise.
13909         (process_queue): Add dwarf2_per_objfile parameter.
13910         (read_and_check_comp_unit_head): Likewise.
13911         (lookup_dwo_unit_in_dwp): Likewise.
13912         (get_dwp_file): Likewise.
13913         (process_cu_includes): Likewise.
13914         (struct free_dwo_file_cleanup_data): New struct.
13915         (dwarf2_has_info): Use get_dwarf2_per_objfile and
13916         set_dwarf2_per_objfile.
13917         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
13918         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
13919         context, adjust calls.
13920         (dw2_instantiate_symtab): Likewise.
13921         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
13922         (dw2_get_cu): Likewise.
13923         (create_cu_from_index_list): Change objfile parameter to
13924         dwarf2_per_objfile.
13925         (create_cus_from_index_list): Get dwarf2_per_objfile from
13926         context, adjust calls.
13927         (create_cus_from_index): Likewise.
13928         (create_signatured_type_table_from_index): Change objfile
13929         parameter to dwarf2_per_objfile.
13930         (create_signatured_type_table_from_debug_names): Change objfile
13931         parameter to dwarf2_per_objfile.
13932         (create_addrmap_from_index): Likewise.
13933         (create_addrmap_from_aranges): Likewise.
13934         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
13935         (dw2_setup): Remove.
13936         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
13937         context.
13938         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
13939         get_dwarf2_per_objfile.
13940         (dw2_forget_cached_source_info): Likewise.
13941         (dw2_map_symtabs_matching_filename): Likewise.
13942         (struct dw2_symtab_iterator) <index>: Remove.
13943         <dwarf2_per_objfile>: New field.
13944         (dw2_symtab_iter_init): Replace index parameter with
13945         dwarf2_per_objfile.
13946         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
13947         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
13948         (dw2_print_stats): Likewise.
13949         (dw2_dump): Likewise.
13950         (dw2_expand_symtabs_for_function): Likewise.
13951         (dw2_expand_all_symtabs): Likewise.
13952         (dw2_expand_symtabs_with_fullname): Likewise.
13953         (dw2_expand_marked_cus): Replace index and objfile parameters
13954         with dwarf2_per_objfile.
13955         (dw_expand_symtabs_matching_file_matcher): Add
13956         dwarf2_per_objfile parameter and adjust calls.
13957         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
13958         adjust calls.
13959         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
13960         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
13961         adjust calls.
13962         (create_cus_from_debug_names_list): Replace objfile parameter
13963         with dwarf2_per_objfile and adjust calls.
13964         (create_cus_from_debug_names): Likewise.
13965         (dwarf2_read_debug_names): Likewise.
13966         (mapped_debug_names::namei_to_name): Adjust call.
13967         (dw2_debug_names_iterator::next): Likewise.
13968         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
13969         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
13970         (dw2_debug_names_dump): Likewise.
13971         (dw2_debug_names_expand_symtabs_for_function): Likewise.
13972         (dw2_debug_names_expand_symtabs_matching): Likewise.
13973         (dwarf2_initialize_objfile): Likewise.
13974         (dwarf2_build_psymtabs): Likewise.
13975         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
13976         this_cu.
13977         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
13978         (read_and_check_comp_unit_head): Likewise.
13979         (read_abbrev_offset): Likewise.
13980         (create_debug_type_hash_table): Likewise.
13981         (create_debug_types_hash_table): Likewise.
13982         (create_all_type_units): Replace objfile parameter with
13983         dwarf2_per_objfile.
13984         (add_type_unit): Add dwarf2_per_objfile parameter.
13985         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
13986         with dwarf2_per_objfile.
13987         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
13988         (lookup_dwp_signatured_type): Likewise.
13989         (lookup_signatured_type): Likewise.
13990         (read_cutu_die_from_dwo): Likewise.
13991         (init_tu_and_read_dwo_dies): Likewise.
13992         (init_cutu_and_read_dies): Likewise.
13993         (init_cutu_and_read_dies_no_follow): Likewise.
13994         (allocate_type_unit_groups_table): Add objfile parameter.
13995         (create_type_unit_group): Use dwarf2_per_objfile from cu.
13996         (get_type_unit_group): Likewise.
13997         (process_psymtab_comp_unit): Update call.
13998         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
13999         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
14000         (print_tu_stats): Likewise.
14001         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
14002         in void* parameter.
14003         (build_type_psymtabs): Change objfile parameter to
14004         dwarf2_per_objfile.
14005         (process_skeletonless_type_unit): Use dwarf2_per_objfile
14006         passed in void* parameter.
14007         (process_skeletonless_type_units): Change objfile parameter to
14008         dwarf2_per_objfile.
14009         (set_partial_user): Likewise.
14010         (dwarf2_build_psymtabs_hard): Likewise.
14011         (read_comp_units_from_section): Likewise.
14012         (create_all_comp_units): Likewise.
14013         (scan_partial_symbols): Update calls.
14014         (add_partial_symbol): Likewise.
14015         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
14016         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
14017         (process_queue): Add dwarf2_per_objfile parameter.
14018         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
14019         (compute_compunit_symtab_includes): Likewise.
14020         (process_cu_includes): Add dwarf2_per_objfile parameter.
14021         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
14022         (process_full_type_unit): Likewise.
14023         (process_imported_unit_die): Update call.
14024         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
14025         (read_file_scope): Likewise.
14026         (allocate_dwo_file_hash_table): Add objfile parameter.
14027         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
14028         (create_cus_hash_table): Likewise.
14029         (create_dwp_hash_table): Likewise.
14030         (create_dwo_unit_in_dwp_v1): Likewise.
14031         (create_dwp_v2_section): Likewise.
14032         (create_dwo_unit_in_dwp_v2): Likewise.
14033         (lookup_dwo_unit_in_dwp): Likewise.
14034         (try_open_dwop_file): Likewise.
14035         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
14036         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
14037         cleanup to include a reference to dwarf2_per_objfile.
14038         (open_dwp_file): Add dwarf2_per_objfile parameter.
14039         (open_and_init_dwp_file): Likewise.
14040         (get_dwp_file): Likewise.
14041         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
14042         (queue_and_load_all_dwo_tus): Update call.
14043         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
14044         data.
14045         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
14046         (dwarf2_ranges_process): Likewise.
14047         (dwarf2_get_pc_bounds): Likewise.
14048         (mark_common_block_symbol_computed): Likewise.
14049         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14050         (dwarf2_read_abbrevs): Update call.
14051         (read_partial_die): Use dwarf2_per_objfile from cu.
14052         (find_partial_die): Likewise.
14053         (fixup_partial_die): Likewise.
14054         (read_attribute_value): Likewise.
14055         (read_indirect_string_at_offset_from): Add objfile parameter.
14056         (read_indirect_string_at_offset): Add dwarf2_per_objfile
14057         parameter.
14058         (read_indirect_string_from_dwz): Add objfile parameter.
14059         (read_indirect_string): Add objfile parameter.
14060         (read_addr_index_1): Add dwarf2_per_objfile parameter.
14061         (read_addr_index): Use dwarf2_per_objfile from cu.
14062         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
14063         call dw2_setup.
14064         (read_str_index): Use dwarf2_per_objfile from cu.
14065         (get_debug_line_section): Likewise.
14066         (read_formatted_entries): Add dwarf2_per_objfile parameter.
14067         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
14068         (new_symbol_full): Use dwarf2_per_objfile from cu.
14069         (build_error_marker_type): Likewise.
14070         (lookup_die_type): Likewise.
14071         (determine_prefix): Likewise.
14072         (follow_die_offset): Likewise.
14073         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
14074         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
14075         (dwarf2_fetch_die_type_sect_off): Likewise.
14076         (dwarf2_get_die_type): Likewise.
14077         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
14078         (get_signatured_type): Likewise.
14079         (get_DW_AT_signature_type): Likewise.
14080         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
14081         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
14082         (cu_debug_loc_section): Likewise.
14083         (fill_in_loclist_baton): Likewise.
14084         (dwarf2_symbol_mark_computed): Likewise.
14085         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14086         dwarf2_per_objfile.
14087         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
14088         parameter.
14089         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14090         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
14091         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
14092         (set_die_type): Use dwarf2_free_objfile from cu.
14093         (get_die_type_at_offset): Likewise.
14094         (dwarf2_per_objfile_free): Don't assign global variable.
14095         (debug_names) <constructor>: Add dwarf2_per_objfile
14096         parameter, update m_debugstrlookup construction.
14097         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
14098         parameter.
14099         <m_dwarf2_per_objfile>: New field.
14100         <lookup>: Use m_dwarf2_per_objfile.
14101         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
14102         (psyms_seen_size): Likewise.
14103         (write_gdbindex): Replace objfile parameter with
14104         dwarf2_per_objfile.
14105         (write_debug_names): Likewise.
14106         (write_psymtabs_to_index): Likewise.
14107         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
14108         calls.
14109
14110 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14111
14112         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
14113         <dwarf2_per_objfile>: New field.
14114         (struct dwarf2_per_cu_data) <objfile>: Remove.
14115         <dwarf2_per_objfile>: New field.
14116         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
14117         of objfile.
14118         (create_signatured_type_table_from_index): Likewise.
14119         (create_debug_type_hash_table): Likewise.
14120         (fill_in_sig_entry_from_dwo_entry): Likewise.
14121         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
14122         (create_type_unit_group): Assign dwarf2_per_objfile instead of
14123         objfile.
14124         (create_partial_symtab): Access objfile through
14125         dwarf2_per_objfile.
14126         (process_psymtab_comp_unit_reader): Likewise.
14127         (read_comp_units_from_section): Likewise.
14128         (scan_partial_symbols): Likewise.
14129         (add_partial_symbol): Likewise.
14130         (add_partial_subprogram): Likewise.
14131         (peek_die_abbrev): Likewise.
14132         (fixup_go_packaging): Likewise.
14133         (process_full_comp_unit): Likewise.
14134         (process_full_type_unit): Likewise.
14135         (process_imported_unit_die): Likewise.
14136         (dwarf2_compute_name): Likewise.
14137         (dwarf2_physname): Likewise.
14138         (read_import_statement): Likewise.
14139         (create_cus_hash_table): Assign dwarf2_physname instead of
14140         objfile.
14141         (read_func_scope): Access objfile through dwarf2_per_objfile.
14142         (read_lexical_block_scope): Likewise.
14143         (read_call_site_scope): Likewise.
14144         (read_variable): Likewise.
14145         (dwarf2_rnglists_process): Likewise.
14146         (dwarf2_ranges_process): Likewise.
14147         (dwarf2_ranges_read): Likewise.
14148         (dwarf2_record_block_ranges): Likewise.
14149         (dwarf2_add_field): Likewise.
14150         (dwarf2_add_member_fn): Likewise.
14151         (read_structure_type): Likewise.
14152         (process_structure_scope): Likewise.
14153         (read_enumeration_type): Likewise.
14154         (read_array_type): Likewise.
14155         (read_common_block): Likewise.
14156         (read_namespace_type): Likewise.
14157         (read_namespace): Likewise.
14158         (read_module_type): Likewise.
14159         (read_tag_pointer_type): Likewise.
14160         (read_tag_ptr_to_member_type): Likewise.
14161         (read_tag_string_type): Likewise.
14162         (read_subroutine_type): Likewise.
14163         (read_typedef): Likewise.
14164         (read_base_type): Likewise.
14165         (attr_to_dynamic_prop): Likewise.
14166         (read_subrange_type): Likewise.
14167         (read_unspecified_type): Likewise.
14168         (load_partial_dies): Likewise.
14169         (read_partial_die): Likewise.
14170         (find_partial_die): Likewise.
14171         (guess_partial_die_structure_name): Likewise.
14172         (fixup_partial_die): Likewise.
14173         (read_attribute_value): Likewise.
14174         (read_addr_index_from_leb128): Likewise.
14175         (dwarf2_read_addr_index): Likewise.
14176         (dwarf2_string_attr): Likewise.
14177         (lnp_state_machine::check_line_address): Likewise.
14178         (dwarf_decode_lines_1): Likewise.
14179         (dwarf_decode_lines): Likewise.
14180         (dwarf2_start_symtab): Likewise.
14181         (var_decode_location): Likewise.
14182         (new_symbol_full): Likewise.
14183         (dwarf2_const_value_data): Likewise.
14184         (dwarf2_const_value_attr): Likewise.
14185         (dwarf2_const_value): Likewise.
14186         (die_type): Likewise.
14187         (die_containing_type): Likewise.
14188         (lookup_die_type): Likewise.
14189         (guess_full_die_structure_name): Likewise.
14190         (anonymous_struct_prefix): Likewise.
14191         (dwarf2_name): Likewise.
14192         (follow_die_ref_or_sig): Likewise.
14193         (follow_die_offset): Likewise.
14194         (follow_die_ref): Likewise.
14195         (dwarf2_fetch_die_loc_sect_off): Likewise.
14196         (dwarf2_fetch_constant_bytes): Likewise.
14197         (dwarf2_fetch_die_type_sect_off): Likewise.
14198         (dwarf2_get_die_type): Likewise.
14199         (follow_die_sig): Likewise.
14200         (decode_locdesc): Likewise.
14201         (dwarf2_per_cu_objfile): Likewise.
14202         (dwarf2_per_cu_text_offset): Likewise.
14203         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
14204         objfile.
14205         (set_die_type): Access objfile through
14206         dwarf2_per_objfile.
14207
14208 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14209
14210         * valprint.c (converted_character_d): Remove typedef.
14211         (DEF_VEC_O (converted_character_d)): Remove.
14212         (count_next_character): Use std::vector.
14213         (print_converted_chars_to_obstack): Likewise.
14214         (generic_printstr): Likewise.
14215
14216 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14217
14218         * xml-support.h (struct gdb_xml_value): Add constructor.
14219         <value>: Change type to unique_xmalloc_ptr.
14220         (gdb_xml_value_s): Remove typedef.
14221         (DEF_VEC_O (gdb_xml_value_s)): Remove.
14222         (gdb_xml_element_start_handler): Change parameter type to
14223         std::vector.
14224         (xml_find_attribute): Likewise.
14225         * xml-support.c (xml_find_attribute): Change parameter type to
14226         std::vector and adjust.
14227         (gdb_xml_values_cleanup): Remove.
14228         (gdb_xml_parser::start_element): Adjust to std::vector.
14229         (xinclude_start_include): Change paraeter type to std::vector
14230         and adjust.
14231         * btrace.c (check_xml_btrace_version): Likewise.
14232         (parse_xml_btrace_block): Likewise.
14233         (parse_xml_btrace_pt_config_cpu): Likewise.
14234         (parse_xml_btrace_pt): Likewise.
14235         (parse_xml_btrace_conf_bts): Likewise.
14236         (parse_xml_btrace_conf_pt): Likewise.
14237         * memory-map.c (memory_map_start_memory): Likewise.
14238         (memory_map_start_property): Likewise.
14239         * osdata.c (osdata_start_osdata): Likewise.
14240         (osdata_start_item): Likewise.
14241         (osdata_start_column): Likewise.
14242         * remote.c (start_thread): Likewise.
14243         * solib-aix.c (library_list_start_library): Likewise.
14244         (library_list_start_list): Likewise.
14245         * solib-svr4.c (library_list_start_library): Likewise.
14246         (svr4_library_list_start_list): Likewise.
14247         * solib-target.c (library_list_start_segment): Likewise.
14248         (library_list_start_section): Likewise.
14249         (library_list_start_library): Likewise.
14250         (library_list_start_list): Likewise.
14251         * tracepoint.c (traceframe_info_start_memory): Likewise.
14252         (traceframe_info_start_tvar): Likewise.
14253         * xml-syscall.c (syscall_start_syscall): Likewise.
14254         * xml-tdesc.c (tdesc_start_target): Likewise.
14255         (tdesc_start_feature): Likewise.
14256         (tdesc_start_reg): Likewise.
14257         (tdesc_start_union): Likewise.
14258         (tdesc_start_struct): Likewise.
14259         (tdesc_start_flags): Likewise.
14260         (tdesc_start_enum): Likewise.
14261         (tdesc_start_field): Likewise.
14262         (tdesc_start_enum_value): Likewise.
14263         (tdesc_start_vector): Likewise.
14264
14265 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14266
14267         * extension.h (struct xmethod_worker) <clone>: Remove.
14268         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
14269         Remove.
14270         (python_xmethod_worker::clone): Remove.
14271         * valops.c (find_overload_match): Use std::move instead of
14272         clone.
14273
14274 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14275
14276         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
14277         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
14278         <free_xmethod_worker_data>: Remove.
14279         <get_matching_xmethod_workers>: Chance VEC to std::vector.
14280         <get_xmethod_arg_types>: Remove.
14281         <get_xmethod_result_type>: Remove.
14282         <invoke_xmethod>: Remove.
14283         * extension.c (new_xmethod_worker): Remove.
14284         (clone_xmethod_worker): Remove.
14285         (get_matching_xmethod_workers): Return void, pass std::vector by
14286         pointer.
14287         (get_xmethod_arg_types): Rename to...
14288         (xmethod_worker::get_arg_types): ... this, and adjust.
14289         (get_xmethod_result_type): Rename to...
14290         (xmethod_worker::get_result_type): ... this, and adjust.
14291         (invoke_xmethod): Remove.
14292         (free_xmethod_worker): Remove.
14293         (free_xmethod_worker_vec): Remove.
14294         * extension.h (enum ext_lang_rc): Move here from
14295         extension-priv.h.
14296         (struct xmethod_worker): Add constructor and destructor.
14297         <data>: Remove.
14298         <value>: Remove.
14299         <invoke, clone, do_get_result_type, do_get_arg_types>: New
14300         virtual pure methods.
14301         <get_arg_types, get_result_type>: New methods.
14302         (xmethod_worker_ptr): Remove typedef.
14303         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
14304         (xmethod_worker_vec): Remove typedef.
14305         (xmethod_worker_up): New typedef.
14306         (invoke_xmethod): Remove.
14307         (clone_xmethod_worker): Remove.
14308         (free_xmethod_worker): Remove.
14309         (free_xmethod_worker_vec): Remove.
14310         (get_xmethod_arg_types): Remove.
14311         (get_xmethod_result_type): Remove.
14312         * valops.c (find_method_list): Use std::vector, don't use
14313         intermediate vector.
14314         (value_find_oload_method_list): Use std::vector.
14315         (find_overload_match): Use std::vector.
14316         (find_oload_champ): Use std::vector.
14317         * value.c (value_free): Use operator delete.
14318         (value_of_xmethod): Rename to...
14319         (value_from_xmethod): ... this.  Don't assign
14320         xmethod_worker::value, take rvalue-reference.
14321         (result_type_of_xmethod): Adjust.
14322         (call_xmethod): Adjust.
14323         * value.h: Include extension.h.
14324         (struct xmethod_worker): Don't forward-declare.
14325         (value_of_xmethod): Rename to...
14326         (value_from_xmethod): ... this, take rvalue-reference.
14327         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
14328         (struct python_xmethod_worker): ... this, add constructor and
14329         destructor.
14330         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
14331         (gdbpy_free_xmethod_worker_data): Rename to...
14332         (python_xmethod_worker::~python_xmethod_worker): ... this and
14333         adjust.
14334         (gdbpy_clone_xmethod_worker_data): Rename to...
14335         (python_xmethod_worker::clone): ... this and adjust.
14336         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
14337         temporary vector.
14338         (gdbpy_get_xmethod_arg_types): Rename to...
14339         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
14340         (gdbpy_get_xmethod_result_type): Rename to...
14341         (python_xmethod_worker::do_get_result_type): ... this and
14342         adjust.
14343         (gdbpy_invoke_xmethod): Rename to...
14344         (python_xmethod_worker::invoke): ... this and adjust.
14345         (new_python_xmethod_worker): Rename to...
14346         (python_xmethod_worker::python_xmethod_worker): ... this and
14347         adjust.
14348         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
14349         Remove.
14350         (gdbpy_free_xmethod_worker_data): Remove.
14351         (gdbpy_get_matching_xmethod_workers): Use std::vector.
14352         (gdbpy_get_xmethod_arg_types): Remove.
14353         (gdbpy_get_xmethod_result_type): Remove.
14354         (gdbpy_invoke_xmethod): Remove.
14355         * python/python.c (python_extension_ops): Remove obsolete
14356         callbacks.
14357
14358 2018-01-05  Pedro Alves  <palves@redhat.com>
14359
14360         PR gdb/18653
14361         * common/signals-state-save-restore.c
14362         (save_original_signals_state): New parameter 'quiet'.  Warn if we
14363         find a custom handler preinstalled, instead of internal erroring.
14364         But only warn if !quiet.
14365         * common/signals-state-save-restore.h
14366         (save_original_signals_state): New parameter 'quiet'.
14367         * main.c (captured_main_1): Move save_original_signals_state call
14368         after option handling, and pass QUIET.
14369
14370 2018-01-05  Pedro Alves  <palves@redhat.com>
14371
14372         * spu-tdep.c (spu_catch_start): Pass
14373         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
14374
14375 2018-01-05  Pedro Alves  <palves@redhat.com>
14376
14377         PR gdb/22670
14378         * ada-lang.c (literal_symbol_name_matcher): New function.
14379         (ada_get_symbol_name_matcher): Use it for
14380         symbol_name_match_type::SEARCH_NAME.
14381         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
14382         it down instead of assuming symbol_name_match_type::FULL.
14383         * block.h (block_lookup_symbol): New parameter 'match_type'.
14384         * c-valprint.c (print_unpacked_pointer): Use
14385         lookup_symbol_search_name instead of lookup_symbol.
14386         * compile/compile-object-load.c (get_out_value_type): Pass down
14387         symbol_name_match_type::SEARCH_NAME.
14388         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
14389         symbol_name_match_type::FULL.
14390         * cp-support.c (cp_get_symbol_name_matcher): Handle
14391         symbol_name_match_type::SEARCH_NAME.
14392         * infrun.c (insert_exception_resume_breakpoint): Use
14393         lookup_symbol_search_name.
14394         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
14395         * psymtab.c (maintenance_check_psymtabs): Use
14396         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
14397         * stack.c (print_frame_args): Use lookup_symbol_search_name and
14398         SYMBOL_SEARCH_NAME.
14399         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
14400         if symbol_name_match_type::SEARCH_NAME.
14401         (lookup_symbol_in_language): Pass down
14402         symbol_name_match_type::FULL.
14403         (lookup_symbol_search_name): New.
14404         (lookup_language_this): Pass down
14405         symbol_name_match_type::SEARCH_NAME.
14406         (lookup_symbol_aux, lookup_local_symbol): New parameter
14407         'match_type'.  Pass it down.
14408         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
14409         (lookup_symbol_search_name): New declaration.
14410         (lookup_symbol_in_block): New 'match_type' parameter.
14411
14412 2018-01-05  Pedro Alves  <palves@redhat.com>
14413
14414         PR gdb/22670
14415         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
14416         ada_lookup_symbol.
14417         (ada_lookup_symbol): Reimplement in terms of
14418         ada_lookup_symbol_list, bits factored out from
14419         ada_lookup_encoded_symbol.
14420
14421 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14422
14423         * ada-exp.y (write_object_renaming): When subscripting an array
14424         using a symbol as the index, pass the block in call to
14425         ada_lookup_encoded_symbol when looking that symbol up.
14426
14427 2018-01-05  Jerome Guitton  <guitton@adacore.com>
14428
14429         * ada-lang.c (ada_array_length): Use ada_index_type instead of
14430         TYPE_INDEX_TYPE.
14431
14432 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14433
14434         * ada-lang.c (ada_to_fixed_value_create): Add handling of
14435         the case where VALUE_LVAL (val0) is not lval_memory.
14436
14437 2018-01-05  Xavier Roirand  <roirand@adacore.com>
14438
14439         * ada-valprint.c (print_optional_low_bound): Handle
14440         character-indexed array printing like boolean-indexed array
14441         printing.
14442
14443 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14444
14445         * NEWS: Create a new section for the next release branch.
14446         Rename the section of the current branch, now that it has
14447         been cut.
14448
14449 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14450
14451         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
14452         * version.in: Bump version to 8.1.50.DATE-git.
14453
14454 2018-01-03  Xavier Roirand  <roirand@adacore.com>
14455
14456         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
14457         Add field.
14458         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
14459         Add field.
14460         (default_exception_support_info) <catch_handlers_sym>: Add field.
14461         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
14462         (ada_exception_name_addr_1): Add "catch handlers" handling.
14463         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
14464         Update all callers.
14465         (create_excep_cond_exprs) <ex>: Add parameter.
14466         (re_set_exception): Update create_excep_cond_exprs call.
14467         (print_it_exception, print_one_exception, print_mention_exception)
14468         (print_recreate_exception): Add "catch handler" handling.
14469         (allocate_location_catch_handlers, re_set_catch_handlers)
14470         (check_status_catch_handlers, print_it_catch_handlers)
14471         (print_one_catch_handlers, print_mention_catch_handlers)
14472         (print_recreate_catch_handlers): New function.
14473         (catch_handlers_breakpoint_ops): New variable.
14474         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
14475         Add parameter.  Add "catch handler" handling.
14476         (ada_exception_sym_name, ada_exception_breakpoint_ops):
14477         Add "catch handler" handling.
14478         (ada_exception_catchpoint_cond_string): Add "catch handler"
14479         handling.
14480         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
14481         call.
14482         (catch_ada_handlers_command): New function.
14483         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
14484         operations structure.
14485         (_initialize_ada_language): Add "catch handlers" command entry.
14486         * NEWS: Document "catch handlers" feature.
14487
14488 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14489
14490         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
14491         account when creating the array type of the slice.
14492         (ada_value_slice): Likewise.
14493
14494 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14495
14496         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
14497         New enum value.
14498         (create_array_type_with_stride): Add byte_stride_prop parameter.
14499         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
14500         New parameter.  Update all callers in this file.
14501         (array_type_has_dynamic_stride): New function.
14502         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
14503         of arrays with dynamic byte strides.
14504         * dwarf2read.c (read_array_type): Add support for dynamic
14505         DW_AT_byte_stride attributes.
14506
14507 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14508
14509         * dwarf2read.c (read_unspecified_type): Treat
14510         DW_TAG_enumeration_type DIEs from Ada units as stubs.
14511
14512 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14513
14514         Update copyright year range in all GDB files.
14515
14516 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
14517
14518         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
14519         and gdb/testsuite/gdb.base/step-line.c.
14520
14521 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14522
14523         * copyright.py (main): Dump the contents of
14524         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
14525         even if BY_HAND is empty.
14526
14527 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14528
14529         * top.c (print_gdb_version): Update Copyright year in version
14530         message.
14531
14532 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14533
14534         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
14535
14536 For older changes see ChangeLog-2017.
14537 \f
14538 Local Variables:
14539 mode: change-log
14540 left-margin: 8
14541 fill-column: 74
14542 version-control: never
14543 coding: utf-8
14544 End: