Add -Wshadow=local
[external/binutils.git] / gdb / ChangeLog
1 2018-10-04  Tom Tromey  <tom@tromey.com>
2
3         * configure: Rebuild.
4         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
5
6 2018-10-04  Tom Tromey  <tom@tromey.com>
7
8         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
9         declaration of "block".
10
11 2018-10-04  Tom Tromey  <tom@tromey.com>
12
13         * common/filestuff.c (fdwalk): Remove inner declaration of
14         "result".
15
16 2018-10-04  Tom Tromey  <tom@tromey.com>
17
18         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
19         "structs_addr" and hoist declaration.
20
21 2018-10-04  Tom Tromey  <tom@tromey.com>
22
23         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
24         variable "size".
25
26 2018-10-04  Tom Tromey  <tom@tromey.com>
27
28         * mdebugread.c (parse_partial_symbols): Use std::string.
29
30 2018-10-04  Tom Tromey  <tom@tromey.com>
31
32         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
33         * p-valprint.c (pascal_val_print): Split inner "i" variable.
34         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
35         header.
36         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
37         more inner scope.
38         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
39         * varobj.c (varobj_update): Rename inner "newobj",
40         "type_changed".
41         * valprint.c (generic_emit_char): Rename inner "buf".
42         * valops.c (find_overload_match): Rename inner "temp".
43         (value_struct_elt_for_reference): Declare "v" in more inner
44         scope.
45         * v850-tdep.c (v850_push_dummy_call): Rename "len".
46         * unittests/array-view-selftests.c (run_tests): Rename inner
47         "vec".
48         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
49         header.
50         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
51         "tsv" in more inner scope.
52         (print_one_static_tracepoint_marker): Rename inner
53         "tuple_emitter".
54         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
55         (tic6x_push_dummy_call): Don't redeclare "addr".
56         * target-float.c: Declare "dto" lower.
57         * symtab.c (lookup_local_symbol): Rename inner "sym".
58         (find_pc_sect_line): Rename inner "pc".
59         * stack.c (print_frame): Don't redeclare "gdbarch".
60         (return_command): Rename inner "gdbarch".
61         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
62         "sp".
63         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
64         header.
65         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
66         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
67         scope.
68         * remote.c (remote_target::update_thread_list): Don't redeclare
69         "tp".
70         (remote_target::process_initial_stop_replies): Rename inner
71         "thread".
72         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
73         (remote_target::wait_as): Don't redeclare "stop_reply".
74         (remote_target::get_thread_local_address): Rename inner
75         "result".
76         (remote_target::get_tib_address): Likewise.
77
78         * regcache.c (cooked_read_test): Rename "regnum".
79         * record-btrace.c (cmd_record_btrace_start): Rename inner
80         "exception".
81         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
82         loop header.
83         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
84         header.
85         (ppu2spu_sniffer): Rename inner "buf".
86         * parse.c (operator_check_standard): Rename inner "type",
87         "objfile".
88         * p-valprint.c (pascal_val_print): Introduce new scope for
89         "low_bound", "high_bound".
90         * p-exp.y (yylex): Declare "i" in loop header.
91         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
92         Lower declaration of "s".
93         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
94         header.
95         (nios2_push_dummy_call): Rename "len".
96         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
97         "buf".
98         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
99         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
100         (linux_xfer_osdata_modules): Likewise.
101         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
102         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
103         (mips_o64_push_dummy_call): Likewise.
104         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
105         "op".
106         * mi/mi-main.c (list_available_thread_groups): Rename inner
107         "tuple_emitter".
108         (mi_cmd_data_read_memory): Rename inner "opts".
109         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
110         "tuple_emitter".
111         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
112         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
113         more inner scope.
114         (parse_partial_symbols): Rename inner "pst", "p", "name"
115         * main.c (captured_main_1): Rename inner "i"s.
116         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
117         "oso2".
118         * linux-tdep.c (linux_info_proc): Rename inner "filename".
119         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
120         * infrun.c (handle_no_resumed): Don't redeclare "thread".
121         (handle_signal_stop): Rename inner "gdbarch".
122         (handle_command): Declare "signum" in loop header.
123         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
124         "status".
125         (examine_prologue): Rename inner "sol" and "sof".
126         (ia64_extract_return_value): Rename inner "val".  Declare another
127         "val" in a more inner scope.
128         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
129         inner scope.
130         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
131         "except".
132         * findvar.c (default_read_var_value): Don't redeclare "addr".
133         * f-exp.y (yylex): Declare "i" in loop header.
134         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
135         Rename inner "type", "expect_type".
136         (evaluate_subexp_for_sizeof): Rename inner "pc".
137         * elfread.c (elf_symfile_read): Rename inner "abfd".
138         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
139         "bytes_read".
140         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
141         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
142         (dwarf_decode_line_header): Rename inner "lh".
143         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
144         "offset".  Declare "i" in loop header.
145         (disassemble_dwarf_expression): Rename inner "addr_size".
146         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
147         inner "result".
148         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
149         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
150         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
151         "inner_list_emitter".
152         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
153         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
154         declaration in a block.
155         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
156         * cp-valprint.c (cp_print_value_fields): Don't redeclare
157         "obstack_final_size".
158         * cp-support.c (inspect_type): Declare "i" in loop header.
159         * compile/compile.c (compile_instance::insert_symbol_error):
160         Rename inner "e".
161         * common/agent.c (agent_run_command): Remove inner "ret"
162         declaration.
163         * coffread.c (coff_symfile_read): Rename inner "name".
164         (coff_symfile_read): Rename inner "abfd".
165         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
166         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
167         "high".
168         * c-exp.y (lex_one_token): Move "len" declaration lower.
169         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
170         "gdbarch".
171         (create_exception_master_breakpoint): Likewise.  Don't redeclare
172         "b".
173         (watch_command_1): Declare "mark" later.
174         (clear_command): Don't shadow "a" or "b".
175         (delete_command): Rename inner "b".
176         (delete_trace_command): Likewise.
177         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
178         "op".
179         (arm_gdbarch_init): Remove inner "e_flags".
180         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
181         "offset" in inner blocks.
182
183 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
184
185         * dwarf-index-write.c (file_write): Don't write if the vector is
186         empty.
187
188 2018-10-05  Tom de Vries  <tdevries@suse.de>
189
190         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
191         PyArg_ParseTuple call.
192
193 2018-10-05  Tom de Vries  <tdevries@suse.de>
194
195         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
196         PyArg_ParseTuple call.
197
198 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
199
200         * psymtab.c (recursively_search_psymtabs): Reformat parameters
201         to avoid exceeding 80 characters per line limit.
202
203 2018-10-04  Tom Tromey  <tom@tromey.com>
204
205         * symfile.c (syms_from_objfile_1, finish_new_objfile)
206         (reread_symbols): Update.
207         * complaints.h (clear_complaints): Remove argument.
208         * complaints.c (enum complaint_series): Remove.
209         (series): Remove global.
210         (complaint_internal): Update.
211         (clear_complaints): Remove argument.
212
213 2018-10-04  Tom Tromey  <tom@tromey.com>
214
215         * symfile.c (symbol_file_add_with_addrs): Do not print "no
216         debugging symbols" message if there is a separate debug objfile.
217
218 2018-10-04  Tom Tromey  <tom@tromey.com>
219
220         PR cli/19551:
221         * symfile.c (symbol_file_add_with_addrs): Update output.
222         * psymtab.c (require_partial_symbols): Update output.
223
224 2018-10-04  Tom Tromey  <tom@tromey.com>
225
226         PR cli/22234:
227         * complaints.c: Emit \n.
228
229 2018-10-04  Tom Tromey  <tom@tromey.com>
230
231         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
232         (separate_debug_file_exists, find_separate_debug_file)
233         (add_symbol_file_command, reread_symbols, allocate_symtab)
234         (allocate_compunit_symtab): Use filtered printing, not
235         unfiltered.
236         * psymtab.c (require_partial_symbols, dump_psymtab)
237         (allocate_psymtab): Use filtered printing, not unfiltered.
238
239 2018-10-04  Tom Tromey  <tom@tromey.com>
240
241         * complaints.c (complaint_internal): Correctly check complaint
242         count.
243
244 2018-10-04  Tom Tromey  <tom@tromey.com>
245
246         * complaints.h (struct complaints): Remove declaration.
247         * complaints.c (clear_complaints): Remove an unused variable.
248
249 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
250
251         * MAINTAINERS (Write After Approval): Add self.
252
253 2018-10-03  Tom Tromey  <tom@tromey.com>
254
255         * guile/scm-value.c (gdbscm_value_to_string): Initialize
256         "buffer_contents".
257         * coffread.c (coff_symtab_read): Initialize "newobj".
258
259 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
260
261         * dwarf2read.c (read_func_scope): Remove struct keyword in
262         range-based for.
263
264 2018-10-03  Tom Tromey  <tom@tromey.com>
265
266         * README: Mention --enable-ubsan.
267         * NEWS: Mention --enable-ubsan.
268         * acinclude.m4: Include sanitize.m4.
269         * configure: Rebuild.
270         * configure.ac: Call AM_GDB_UBSAN.
271         * sanitize.m4: New file.
272
273 2018-10-03  Tom Tromey  <tom@tromey.com>
274
275         * expression.h (enum exp_opcode): Use uint8_t as base type.
276         * expprint.c (op_name): Handle invalid opcodes.
277
278 2018-10-03  Tom Tromey  <tom@tromey.com>
279
280         * parse.c (prefixify_expression): Add assert.
281         (parse_exp_in_context_1): Throw exception if the expression is
282         empty.
283
284 2018-10-03  Tom Tromey  <tom@tromey.com>
285
286         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
287
288 2018-10-03  Tom Tromey  <tom@tromey.com>
289
290         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
291
292 2018-10-03  Tom Tromey  <tom@tromey.com>
293
294         * dwarf2read.c (read_subrange_type): Make "negative_mask"
295         unsigned.
296
297 2018-10-03  Tom Tromey  <tom@tromey.com>
298
299         * findvar.c (extract_integer): Do work in an unsigned type.
300
301 2018-10-03  Tom Tromey  <tom@tromey.com>
302
303         * common/enum-flags.h (enum_flags::operator~): Add static assert.
304         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
305         base type.
306         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
307         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
308         type.
309         * c-lang.h (enum c_string_type_values): Use unsigned as base
310         type.
311         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
312
313 2018-10-03  Tom Tromey  <tom@tromey.com>
314
315         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
316         <~dwarf2_frame_state_reg_info>: Update.
317         <dwarf2_frame_state_reg_info>: Update.
318         <alloc_regs>: Add assertion.  Update.
319         <reg>: Now a std::vector.
320         <num_regs>: Remove.
321         <swap>: Update.
322         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
323         (execute_cfa_program_test, dwarf2_frame_cache): Update.
324
325 2018-10-03  Tom Tromey  <tom@tromey.com>
326
327         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
328
329 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
330
331         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
332
333 2018-10-02  Tom Tromey  <tom@tromey.com>
334
335         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
336
337 2018-10-02  John Darrington <john@darrington.wattle.id.au>
338
339         * NEWS: Mention changed commands.
340         * ser-uds.c: New file.
341         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
342         * configure: Regenerate.
343         * Makefile.in: Add new file.
344         * serial.c (serial_open): Check if filename is a socket
345           and lookup the appropriate interface accordingly.
346
347 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
348
349         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
350         define.
351         (AARCH64_EXTRA_MAGIC): Likewise.
352         (AARCH64_FPSIMD_MAGIC): Likewise.
353         (AARCH64_SVE_MAGIC): Likewise.
354         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
355         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
356         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
357         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
358         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
359         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
360         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
361         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
362         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
363         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
364         (read_aarch64_ctx): Add function.
365         (aarch64_linux_sigframe_init): Detect FP registers.
366
367 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
368
369         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
370         (AARCH64_D0_REGNUM): Likewise.
371         (AARCH64_S0_REGNUM): Likewise.
372         (AARCH64_H0_REGNUM): Likewise.
373         (AARCH64_B0_REGNUM): Likewise.
374         (AARCH64_SVE_V0_REGNUM): Likewise.
375         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
376         (AARCH64_D0_REGNUM): Likewise.
377         (AARCH64_S0_REGNUM): Likewise.
378         (AARCH64_H0_REGNUM): Likewise.
379         (AARCH64_B0_REGNUM): Likewise.
380         (AARCH64_SVE_V0_REGNUM): Likewise.
381
382 2018-10-01  Gary Benson <gbenson@redhat.com>
383
384         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
385         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
386         prfpregset_t instead of gdb_prfpregset_t.
387         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
388         * configure, config.in: Rebuild.
389
390 2018-10-01  Gary Benson <gbenson@redhat.com>
391
392         * common/gdb_proc_service.h: New file, factored out from...
393         * gdb_proc_service.h: Moved common code to the above file.
394         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
395
396 2018-10-01  Gary Benson <gbenson@redhat.com>
397
398         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
399         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
400
401 2018-10-01  Gary Benson <gbenson@redhat.com>
402
403         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
404         (AC_CHECK_HEADERS): Check for linux/elf.h.
405         * configure, config.in: Rebuild.
406         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
407         doesn't define elf_fpregset_t.
408
409 2018-10-01  Gary Benson <gbenson@redhat.com>
410
411         * gdb_proc_service.h: Whitespace change.
412
413 2018-10-01  Tom Tromey  <tom@tromey.com>
414
415         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
416         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
417         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
418
419 2018-10-01  Tom Tromey  <tom@tromey.com>
420
421         * README: Minor change.
422
423 2018-09-30  Pedro Alves  <palves@redhat.com>
424
425         * darwin-nat-info.c (darwin_debug_regions_recurse)
426         (info_mach_exceptions_command): Remove unused local variables.
427         * darwin-nat.c (darwin_decode_notify_message)
428         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
429         (darwin_stop_inferior, darwin_setup_exceptions)
430         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
431         (darwin_nat_target::attach, darwin_nat_target::detach)
432         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
433         local variables.
434         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
435         variables.
436
437 2018-09-29  Tom Tromey  <tom@tromey.com>
438
439         * README: Remove some leftover text.
440
441 2018-09-29  Tom Tromey  <tom@tromey.com>
442
443         * PROBLEMS: Rewrite.
444         * README: Update.
445
446 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
447
448         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
449         case with explicit breakpoint kind.
450         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
451         'additional_info' and related logic.
452         (riscv_debug_breakpoints): New variable.
453         (riscv_breakpoint_kind_from_pc): Use the length of the existing
454         instruction to determine the breakpoint kind.
455         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
456         flag.  Update description of 'set/show riscv
457         use-compressed-breakpoints' flag.
458
459 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
460
461         (NEWS): Mention changes to frame related commands.
462         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
463         (add_prefix_cmd_suppress_notification): New function.
464         (add_com_suppress_notification): Call
465         add_cmd_suppress_notification.
466         * command.h (add_cmd_suppress_notification): Declare.
467         (add_prefix_cmd_suppress_notification): Declare.
468         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
469         (parse_frame_specification): Moved from stack.c, with
470         simplification to handle a single argument.
471         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
472         switch to the selected frame.  Add a header comment.
473         * stack.c: Remove 'safe-ctype.h' include.
474         (find_frame_for_function): Add declaration.
475         (find_frame_for_address): New function.
476         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
477         (frame_selection_by_function_completer): New function.
478         (info_frame_command): Rename to...
479         (info_frame_command_core): ...this, and update parameter types.
480         (select_frame_command): Rename to...
481         (select_frame_command_core): ...this, and update parameter types.
482         (frame_command): Rename to...
483         (frame_command_core): ...this, and update parameter types.
484         (class frame_command_helper): New class to wrap implementations of
485         frame related sub-commands.
486         (frame_apply_cmd_list): New static global.
487         (frame_cmd_list): Make static.
488         (select_frame_cmd_list): New global for sub-commands.
489         (info_frame_cmd_list): New global for sub-commands.
490         (_initialize_stack): Register sub-commands for 'frame',
491         'select-frame', and 'info frame'.  Update 'frame apply' commands
492         to use frame_apply_cmd_list.  Move function local static
493         frame_apply_list to file static frame_apply_cmd_list for
494         consistency.
495         * stack.h (select_frame_command): Delete declarationn.
496         (select_frame_for_mi): Declare new function.
497
498 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
499
500         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
501         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
502         and NOP.
503
504 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
505
506         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
507
508 2018-09-26  Tom Tromey  <tom@tromey.com>
509
510         * valops.c (auto_abandon): Remove dead code.
511
512 2018-09-26  Tom Tromey  <tom@tromey.com>
513
514         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
515
516 2018-09-24  Tom Tromey  <tom@tromey.com>
517
518         * common/pathstuff.c (get_standard_cache_dir): Make
519         "xdg_cache_home" and "home" const.
520         * top.c (init_history): Make "tmpenv" const.
521         * main.c (get_init_files): Make "homedir" const.
522
523 2018-09-23  Tom Tromey  <tom@tromey.com>
524
525         PR python/18852:
526         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
527
528 2018-09-23  Tom Tromey  <tom@tromey.com>
529
530         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
531         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
532         * python/python-internal.h (gdbpy_handle_exception): Declare.
533         * python/py-utils.c (gdbpy_handle_exception): New function.
534
535 2018-09-23  Tom Tromey  <tom@tromey.com>
536
537         PR python/17284:
538         * python/py-type.c (typy_template_argument): Check for negative
539         argument number.
540
541 2018-09-23  Tom Tromey  <tom@tromey.com>
542
543         PR python/14062:
544         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
545
546 2018-09-23  Tom Tromey  <tom@tromey.com>
547
548         PR python/18170:
549         * python/py-value.c (valpy_int): Allow conversion from pointer
550         type.
551
552 2018-09-23  Tom Tromey  <tom@tromey.com>
553
554         PR python/20126:
555         * python/py-value.c (valpy_int): Respect type sign.
556
557 2018-09-23  Tom Tromey  <tom@tromey.com>
558
559         PR python/18352;
560         * python/py-value.c (valpy_float): Allow conversions from int or
561         char.
562         (valpy_int, valpy_long): Allow conversions from float.
563
564 2018-09-23  Tom Tromey  <tom@tromey.com>
565
566         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
567         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
568
569 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
570
571         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
572         __sighndlr.
573         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
574
575 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
576
577         * windows-nat.c (windows_nat_target::wait): Remove a spurious
578         target_terminal::ours().
579
580 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
581
582         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
583         of vl to ULONGEST.
584
585 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
586
587         * breakpoint.c (update_inserted_breakpoint_locations): Remove
588         redundant condition.
589
590 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
591
592         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
593
594         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
595         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
596         * sol-thread.c (ps_pdmodel): Don't guard definition.
597
598         * procfs.c: Fix formatting.
599
600         * procfs.c (sysset_t_alloc): Remove.
601         (create_procinfo): Use XNEW instead of sysset_t_alloc.
602         (procfs_debug_inferior): Likewise.
603         (procfs_set_exec_trap): Likewise.
604         (proc_set_traced_sysentry): Don't allocate argp dynamically.
605         (proc_set_traced_sysexit): Likewise.
606
607         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
608         (dead_procinfo): Likewise.
609         (proc_warn): Likewise.
610         (proc_error): Likewise.
611         (proc_get_LDT_entry): Likewise.
612         (do_attach): Likewise.
613         (procfs_target::pid_to_str): Likewise.
614         (iterate_over_mappings): Likewise.
615
616         * procfs.c (create_procinfo): Fix ARI warning.
617         (proc_get_status): Likewise.
618         (proc_stop_process): Likewise.
619         (proc_run_process): Likewise.
620         (proc_kill): Likewise.
621         (proc_get_LDT_entry): Likewise.
622         (procfs_find_LDT_entry): Likewise.
623         (proc_update_threads): Likewise.
624         (proc_iterate_over_threads): Likewise.
625         (do_attach): Likewise.
626         (procfs_xfer_memory): Likewise.
627         (invalidate_cache): Likewise.
628         (procfs_target::resume): Likewise.
629         (procfs_init_inferior): Likewise.
630         (procfs_set_exec_trap): Likewise.
631         (procfs_target::thread_alive): Likewise.
632         (procfs_target::pid_to_exec_file): Likewise.
633         (iterate_over_mappings): Likewise.
634         (procfs_target::make_corefile_notes): Likewise.
635         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
636
637         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
638         (procfs_find_LDT_entry): Likewise.
639         * sol-thread.c (ps_lgetLDT): Likewise.
640
641 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
642
643         PR tdep/17903
644         * procfs.c (procfs_target): Declare pid_to_exec_file.
645         (procfs_target::pid_to_exec_file): New.
646
647 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
648
649         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
650         renaming.
651         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
652         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
653
654 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
655
656         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
657         (supply_fpregset, fill_fpregset): Move ...
658         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
659         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
660         Remove references to ioctl-based procfs.
661         Include <sys/reg.h>.
662         Remove PR_MODEL_NATIVE guards.
663         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
664         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
665
666 2018-09-19  Xavier Roirand  <roirand@adacore.com>
667
668         PR gdb/20981:
669         * solib-darwin.c (darwin_get_dyld_bfd): New function.
670         (darwin_solib_get_all_image_info_addr_at_init): Update call.
671         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
672
673 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
674
675         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
676         (fbsd_print_sockaddr_in6): Likewise.
677
678 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
679             Chris January  <chris.january@arm.com>
680
681         * eval.c (skip_undetermined_arglist): Skip argument list helper.
682         (evaluate_subexp_standard): Return a dummy type when
683         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
684         OP_F77_UNDETERMINED_ARGLIST case.
685         * expression.h (enum noside): Update comment.
686
687 2018-09-19  George Vasick <george.vasick@oracle.com>
688
689         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
690
691 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
692             April Chin <april.chin@oracle.com>
693             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
694
695         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
696         uint_t lwpid_t.
697         (create_procinfo): Print pids in /proc without leading zeros.
698
699 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
700
701         * nios2-tdep.c (nios2_gcc_target_options): New.
702         (nios2_gdb_arch_init): Install new hook.
703
704 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
705
706         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
707         New file.
708         * update-gnulib.sh: Apply patch.
709         * configure: Re-generate.
710
711 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
712
713         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
714         description.  Make "info proc" command descriptions more
715         consistent.
716
717 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
718
719         * NEWS: Mention 'info proc files' command.
720
721 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
722
723         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
724         descriptors for IP_FILES and IP_ALL.
725
726 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
727
728         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
729         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
730         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
731         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
732         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
733         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
734         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
735         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
736         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
737         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
738         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
739         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
740         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
741         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
742         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
743         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
744         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
745         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
746         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
747         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
748         (struct fbsd_sockaddr_un): New types.
749         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
750         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
751         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
752         (fbsd_core_info_proc_files): New functions.
753         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
754         IP_ALL.
755         * fbsd-tdep.h (fbsd_info_proc_files_header)
756         (fbsd_info_proc_files_entry): New.
757
758 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
759
760         * defs.h (enum info_proc_what) [IP_FILES]: New value.
761         * infcmd.c (info_proc_cmd_files): New function.
762         (_initialize_infcmd): Register 'info proc files' command.
763
764 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
765
766         * gnulib/aclocal-m4-deps.mk: Re-generate.
767         * gnulib/aclocal.m4: Re-generate.
768         * gnulib/config.in: Re-generate.
769         * gnulib/configure: Re-generate.
770         * gnulib/import/Makefile.am: Re-generate.
771         * gnulib/import/Makefile.in: Re-generate.
772         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
773         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
774         * gnulib/import/arpa_inet.in.h: New file.
775         * gnulib/import/inet_ntop.c: New file.
776         * gnulib/import/m4/arpa_inet_h.m4: New file.
777         * gnulib/import/m4/inet_ntop.m4: New file.
778         * gnulib/import/m4/netinet_in_h.m4: New file.
779         * gnulib/import/m4/socklen.m4: New file.
780         * gnulib/import/m4/sockpfaf.m4: New file.
781         * gnulib/import/m4/stdalign.m4: New file.
782         * gnulib/import/m4/sys_uio_h.m4: New file.
783         * gnulib/import/netinet_in.in.h: New file.
784         * gnulib/import/stdalign.in.h: New file.
785         * gnulib/import/sys_socket.c: New file.
786         * gnulib/import/sys_socket.in.h: New file.
787         * gnulib/import/sys_uio.in.h: New file.
788         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
789         module.
790
791 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
792
793         * gnulib/aclocal-m4-deps.mk: New file.
794         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
795         deterministically.
796
797 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
798
799         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
800         KVE_PATH.
801
802 2018-09-18  Tom Tromey  <tom@tromey.com>
803
804         * compile/compile-object-load.c (struct
805         link_hash_table_cleanup_data): Add constructor and destructor.
806         Use DISABLE_COPY_AND_ASSIGN.
807         (~link_hash_table_cleanup_data): Rename from
808         link_hash_table_free.  Now a destructor.
809         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
810
811 2018-09-18  Tom Tromey  <tom@tromey.com>
812
813         * compile/compile-object-run.c (do_module_cleanup): Use delete.
814         * compile/compile-object-load.c (struct munmap_list): Move to
815         header file.
816         (munmap_list::add): Rename from munmap_list_add; rewrite.
817         (munmap_list::~munmap_list): Rename from munmap_list_free.
818         (munmap_listp_free_cleanup): Remove.
819         (compile_object_load): Update.
820         * compile/compile-object-load.h (struct munmap_list): Move from
821         compile-object-load.c.  Rewrite.
822
823 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
824
825         * aarch64-tdep.c (pass_in_v): Use register size.
826         (aarch64_extract_return_value): Likewise.
827         (aarch64_store_return_value): Likewise.
828
829 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
830
831         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
832         rlim_t.
833
834 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
835
836         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
837         Fix short help line.
838
839 2018-09-17  Tom Tromey  <tom@tromey.com>
840
841         PR python/20445:
842         * configure: Rebuild.
843         * configure.ac: Conditionally use -DNDEBUG for Python.
844
845 2018-09-17  Tom Tromey  <tom@tromey.com>
846
847         * configure: Rebuild.
848         * configure.ac: Use gmp as a library dependency when checking for
849         mpfr.
850
851 2018-09-17  Pedro Alves  <palves@redhat.com>
852
853         * python/py-inferior.c (find_inferior_object): Delete.
854
855 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
856
857         * compile/compile-cplus-types.c
858         (compile_cplus_instance::enter_scope): Don't use new_scope after
859         std::move.
860
861 2018-09-17  Tom Tromey  <tom@tromey.com>
862
863         * common/pathstuff.c (get_standard_cache_dir): Use
864         ~/Library/Caches on macOS.
865         * common/pathstuff.h (get_standard_cache_dir): Update comment.
866
867 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
868
869         PR python/23669
870         * breakpoint.c (commands_cmd_element): New.
871         (_initialize_breakpoint): Assign commands_cmd_element.
872         * breakpoint.h (commands_cmd_element): New.
873         * cli/cli-script.c (while_cmd_element, if_command,
874         define_cmd_element): New.
875         (command_name_equals): Remove.
876         (process_next_line): Compare commands by pointer, not by name.
877         (_initialize_cli_script): Assign the various cmd_list_element
878         variables.
879         * compile/compile.c (compile_cmd_element): New.
880         (_initialize_compile): Assign compile_cmd_element.
881         * compile/compile.h (compile_cmd_element): New.
882         * guile/guile.c (guile_cmd_element): New.
883         (install_gdb_commands): Assign guile_cmd_element.
884         * guile/guile.h (guile_cmd_element): New.
885         * python/python.c (python_cmd_element): New.
886         (_initialize_python): Assign python_cmd_element.
887         * python/python.h (python_cmd_element): New.
888         * tracepoint.c (while_stepping_cmd_element): New.
889         (_initialize_tracepoint): Assign while_stepping_cmd_element.
890         * tracepoint.h (while_stepping_cmd_element): New.
891
892 2018-09-17  Tom Tromey  <tom@tromey.com>
893
894         * infrun.c (save_infcall_suspend_state): Return
895         infcall_suspend_state_up.
896         (save_infcall_control_state): Return infcall_control_state_up.
897         * inferior.h (save_infcall_suspend_state)
898         (save_infcall_control_state): Declare later.  Return unique
899         pointers.
900
901 2018-09-17  Tom Tromey  <tom@tromey.com>
902
903         * infrun.c (struct stop_context): Declare constructor,
904         destructor, "changed" method.
905         (stop_context::stop_context): Rename from save_stop_context.
906         (stop_context::~stop_context): Rename from
907         release_stop_context_cleanup.
908         (normal_stop): Update.
909         (stop_context::changed): Rename from stop_context_changed.  Return
910         bool.
911
912 2018-09-17  Tom Tromey  <tom@tromey.com>
913
914         * inferior.h (struct infcall_suspend_state_deleter): New.
915         (infcall_suspend_state_up): New typedef.
916         (struct infcall_control_state_deleter): New.
917         (infcall_control_state_up): New typedef.
918         (make_cleanup_restore_infcall_suspend_state)
919         (make_cleanup_restore_infcall_control_state): Don't declare.
920         * infcall.c (call_function_by_hand_dummy): Update.
921         * infrun.c (do_restore_infcall_suspend_state_cleanup)
922         (make_cleanup_restore_infcall_suspend_state): Remove.
923         (do_restore_infcall_control_state_cleanup)
924         (make_cleanup_restore_infcall_control_state): Remove.
925
926 2018-09-17  Tom Tromey  <tom@tromey.com>
927
928         * gdbthread.h (struct thread_control_state): Add initializer.
929         (class thread_info) <control>: Remove initializer.
930         * inferior.h (struct inferior_control_state): Add initializer.
931         (class inferior) <control>: Remove initializer.
932         (exit_inferior_1): Update.
933         * infrun.c (struct infcall_control_state): Add constructors.
934         (save_infcall_control_state): Use new.
935         (restore_infcall_control_state, discard_infcall_control_state):
936         Use delete.
937
938 2018-09-17  Tom Tromey  <tom@tromey.com>
939
940         * infrun.c (struct infcall_suspend_state) <registers>: Now a
941         unique_ptr.
942         <siginfo_data>: Now a unique_xmalloc_ptr.
943         (save_infcall_suspend_state, restore_infcall_suspend_state)
944         (discard_infcall_suspend_state)
945         (get_infcall_suspend_state_regcache): Update.
946
947 2018-09-17  Tom Tromey  <tom@tromey.com>
948
949         * gdbthread.h (struct thread_suspend_state): Add initializers.
950         (class thread_info) <suspend>: Remove initializer.
951         * infrun.c (struct infcall_suspend_state): Add initializers.
952         (save_infcall_suspend_state): Use new.
953         (discard_infcall_suspend_state): Use delete.
954
955 2018-09-16  Tom Tromey  <tom@tromey.com>
956
957         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
958         Remove.
959         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
960         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
961         (py_varobj_iter_new): Likewise.
962         (py_varobj_get_iterator): Use gdbpy_ref.
963
964 2018-09-16  Tom Tromey  <tom@tromey.com>
965
966         * python/py-threadevent.c (py_get_event_thread): Simplify.
967         * python/py-inferior.c (infpy_thread_from_thread_handle):
968         Return immediately after calling thread_to_thread_object.  Use
969         Py_RETURN_NONE.
970         (thread_to_thread_object): Set the exception on a NULL return.
971
972 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
973
974         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
975
976 2018-09-16  Tom Tromey  <tom@tromey.com>
977
978         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
979         Remove.
980
981 2018-09-16  Tom Tromey  <tom@tromey.com>
982
983         * python/python-internal.h (thread_to_thread_object): Change
984         return type.
985         * python/py-inferior.c (thread_to_thread_object): Return a new
986         reference.
987         (infpy_thread_from_thread_handle): Update.
988         * python/py-infthread.c (gdbpy_selected_thread): Update.
989         * python/py-stopevent.c (create_stop_event_object): Update.
990         * python/py-threadevent.c (py_get_event_thread): Return a new
991         reference.
992         (py_get_event_thread): Update.
993         * python/py-event.h (py_get_event_thread): Change return type.
994         * python/py-continueevent.c (create_continue_event_object):
995         Update.
996
997 2018-09-16  Tom Tromey  <tom@tromey.com>
998
999         * python/py-progspace.c (pspy_get_objfiles): Update.
1000         * python/python-internal.h (objfile_to_objfile_object): Change
1001         return type.
1002         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1003         Update.
1004         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1005         Update.
1006         * python/python.c (gdbpy_get_current_objfile): Update.
1007         (gdbpy_objfiles): Update.
1008         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
1009         Update.
1010         (objfile_to_objfile_object): Return a new reference.
1011         * python/py-symtab.c (stpy_get_objfile): Update.
1012         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
1013         Update.
1014
1015 2018-09-16  Tom Tromey  <tom@tromey.com>
1016
1017         * python/py-inferior.c (infpy_get_progspace): Update.
1018         * python/python-internal.h (pspace_to_pspace_object): Change
1019         return type.
1020         * python/py-newobjfileevent.c
1021         (create_clear_objfiles_event_object): Update.
1022         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1023         Update.
1024         * python/python.c (gdbpy_get_current_progspace): Update.
1025         (gdbpy_progspaces): Update.
1026         * python/py-progspace.c (pspace_to_pspace_object): Return a new
1027         reference.
1028         * python/py-objfile.c (objfpy_get_progspace): Update.
1029         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
1030         Update.
1031
1032 2018-09-16  Tom Tromey  <tom@tromey.com>
1033
1034         * python/lib/gdb/__init__.py (current_progspace, objfiles)
1035         (solib_name, block_for_pc, find_pc_line): New functions.
1036         (execute_unwinders): Update.
1037         * python/py-block.c (gdbpy_block_for_pc): Remove.
1038         * python/py-inferior.c (infpy_get_progspace): New function.
1039         (inferior_object_getset) <progspace>: Add.
1040         * python/py-progspace.c (pspy_objfiles): Rewrite.
1041         (pspy_solib_name, pspy_block_for_pc)
1042         (pspy_find_pc_line, pspy_is_valid): New functions.
1043         (progspace_object_methods): Add entries for solib_name,
1044         block_for_pc, find_pc_line, is_valid.
1045         * python/python-internal.h (gdbpy_block_for_pc)
1046         (build_objfiles_list): Don't declare.
1047         * python/python.c: Don't include solib.h.
1048         (gdbpy_solib_name, gdbpy_find_pc_line)
1049         (gdbpy_get_current_progspace, build_objfiles_list)
1050         (gdbpy_objfiles): Remove.
1051         (GdbMethods) <current_progspace, objfiles, block_for_pc,
1052         solib_name, find_pc_line>: Remove entries.
1053
1054 2018-09-16  Tom Tromey  <tom@tromey.com>
1055
1056         * top.c (new_ui_command): Use GNU style for metasyntactic
1057         variables.
1058         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
1059         variables.
1060         * maint.c (maintenance_translate_address): Remove "<>" around
1061         text.
1062         * interps.c (interpreter_exec_cmd): Use GNU style for
1063         metasyntactic variables.
1064         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
1065         metasyntactic variables.
1066         * tracepoint.c (tfind_range_command): Use GNU style for
1067         metasyntactic variables.
1068         (tfind_outside_command): Likewise.
1069         (_initialize_tracepoint): Likewise.
1070         * remote.c (extended_remote_target::create_inferior): Use GNU
1071         style for metasyntactic variables.
1072         * sparc64-tdep.c (adi_examine_command): Use GNU style for
1073         metasyntactic variables.
1074         (adi_assign_command): Likewise.
1075
1076 2018-09-16  Tom Tromey  <tom@tromey.com>
1077
1078         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
1079         metasyntactic variables.  Print message if no disassembler options
1080         are available.
1081
1082 2018-09-15  Tom Tromey  <tom@tromey.com>
1083
1084         * infcmd.c (get_inferior_args): Return const char *.
1085         * inferior.h (get_inferior_args): Return type now const.
1086         * linux-tdep.c (linux_fill_prpsinfo): Update.
1087         * procfs.c (procfs_target::make_corefile_notes): Update.
1088
1089 2018-09-07  Tom Tromey  <tom@tromey.com>
1090
1091         * python/python.c (execute_gdb_command): Call bpstat_do_actions
1092         inside the TRY.
1093
1094 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
1095
1096         * nios2-tdep.c (nios2_type_align): New.
1097         (nios2_gdb_arch_init): Install type_align hook.
1098
1099 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
1100
1101         * eval.c (fake_method::fake_method): Call xzalloc directly for a
1102         type that is neither object file owned, nor gdbarch owned.
1103         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
1104         gdbarch is non-NULL.
1105         (alloc_type_instance): Allocate non-objfile owned types on the
1106         gdbarch obstack.
1107         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
1108         using TYPE_ALLOC to ensure memory is allocated on the correct
1109         obstack.
1110         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
1111         obstack, or the gdbarch obstack.
1112         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
1113
1114 2018-09-14  Tom Tromey  <tom@tromey.com>
1115
1116         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
1117         block.
1118
1119 2018-09-14  Tom Tromey  <tom@tromey.com>
1120
1121         * nat/fork-inferior.c (get_startup_shell): Remove "static".
1122
1123 2018-09-13  Tom Tromey  <tom@tromey.com>
1124
1125         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
1126         static.
1127
1128 2018-09-13  Tom Tromey  <tom@tromey.com>
1129
1130         * exec.c (try_open_exec_file): Use std::string.
1131
1132 2018-09-13  Tom Tromey  <tom@tromey.com>
1133
1134         * utils.h (gdb_bfd_errmsg): Return std::string.
1135         * exec.c (exec_file_attach): Update.
1136         * compile/compile-object-load.c (compile_object_load): Update.
1137         * utils.c (gdb_bfd_errmsg): Return std::string.
1138
1139 2018-09-13  Tom Tromey  <tom@tromey.com>
1140
1141         * procfs.c (struct procinfo_deleter): New.
1142         (procinfo_up): New typedef.
1143         (do_destroy_procinfo_cleanup): Remove.
1144         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
1145
1146 2018-09-13  Tom Tromey  <tom@tromey.com>
1147
1148         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
1149
1150 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1151 2018-09-13  Tom Tromey  <tom@tromey.com>
1152
1153         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
1154         (pspy_get_objfiles): New function.
1155         (progspace_object_methods): New.
1156         (pspace_object_type): Add tp_methods callback.
1157         * python/python-internal.h (build_objfiles_list): New
1158         declaration.
1159         * python/python.c (build_objfiles_list): New function.
1160         (gdbpy_objfiles): Implement using build_objfiles_list.
1161         * NEWS: Mention the Progspace.objfiles method.
1162
1163 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1164
1165         * python/py-inferior.c (infpy_get_progspace): New function.
1166         (inferior_object_getset): Add progspace property.
1167         * NEWS: Mention the new property.
1168
1169 2018-09-13  Tom Tromey  <tom@tromey.com>
1170
1171         PR rust/23650:
1172         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
1173
1174 2018-09-13  Tom Tromey  <tom@tromey.com>
1175
1176         PR rust/23626:
1177         * rust-lang.c (rust_enum_variant): Now static.
1178         (rust_empty_enum_p): New function.
1179         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
1180         Handle empty enum.
1181
1182 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1183
1184         * python/py-inferior.c (infpy_repr): New.
1185         (inferior_object_type): Register infpy_repr.
1186         * python/py-objfile.c (objfpy_repr): New.
1187         (objfile_object_type): Register objfpy_repr.
1188
1189 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1190
1191         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
1192
1193 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1194
1195         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
1196         typo.
1197
1198 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
1199
1200         * common/common-utils.c: Don't include '<sys/stat.h>'.
1201         (is_regular_file): Move to...
1202         * common/filestuff.c (is_regular_file): ... here.
1203         * common/common-utils.h (is_regular_file): Move to...
1204         * common/filestuff.h (is_regular_file): ... here.
1205
1206 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
1207
1208         * skip.c (debug_skip): New variable.
1209         (skiplist_entry::do_skip_file_p): Add debug output.
1210         (skiplist_entry::do_skip_gfile_p): Likewise.
1211         (skiplist_entry::skip_function_p): Likewise.
1212         (_initialize_step_skip): Create debug command.
1213         * NEWS: Mention set/show debug skip.
1214
1215 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1216
1217         * darwin-nat.c (should_disable_startup_with_shell):
1218         New function.
1219         (darwin_nat_target::create_inferior): Add call.
1220
1221 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1222
1223         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
1224         inf_port, msg_state>: Initialize.
1225         (struct darwin_thread_info) <signaled, single_step>: Change
1226         type and initialize.
1227         (struct darwin_thread_info) <event>: Initialize.
1228
1229 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1230
1231         PR gdb/23555
1232         PR gdb/23558
1233         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
1234         guesses.
1235
1236 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1237
1238         Revert:
1239         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1240
1241         PR gdb/23555
1242         PR gdb/23558
1243         * gnulib/aclocal.m4: Regenerate.
1244         * gnulib/config.in: Regenerate.
1245         * gnulib/configure: Regenerate.
1246         * gnulib/import/Makefile.am: Update.
1247         * gnulib/import/Makefile.in: Update.
1248         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
1249         * gnulib/import/_Noreturn.h: ... this.
1250         * gnulib/import/alloca.in.h: Update.
1251         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
1252         * gnulib/import/arg-nonnull.h: ... this.
1253         * gnulib/import/assure.h: Update.
1254         * gnulib/import/at-func.c: Update.
1255         * gnulib/import/basename-lgpl.c: Update.
1256         * gnulib/import/extra/snippet/c++defs.h: Rename to...
1257         * gnulib/import/c++defs.h: ... this.
1258         * gnulib/import/canonicalize-lgpl.c: Update.
1259         * gnulib/import/cdefs.h: Update.
1260         * gnulib/import/chdir-long.c: Update.
1261         * gnulib/import/chdir-long.h: Update.
1262         * gnulib/import/cloexec.c: Update.
1263         * gnulib/import/cloexec.h: Update.
1264         * gnulib/import/close.c: Update.
1265         * gnulib/import/closedir.c: Update.
1266         * gnulib/import/config.charset: Update.
1267         * gnulib/import/dirent-private.h: Update.
1268         * gnulib/import/dirent.in.h: Update.
1269         * gnulib/import/dirfd.c: Update.
1270         * gnulib/import/dirname-lgpl.c: Update.
1271         * gnulib/import/dirname.h: Update.
1272         * gnulib/import/dosname.h: Update.
1273         * gnulib/import/dup-safer-flag.c: Update.
1274         * gnulib/import/dup-safer.c: Update.
1275         * gnulib/import/dup.c: Update.
1276         * gnulib/import/dup2.c: Update.
1277         * gnulib/import/errno.in.h: Update.
1278         * gnulib/import/error.c: Update.
1279         * gnulib/import/error.h: Update.
1280         * gnulib/import/exitfail.c: Update.
1281         * gnulib/import/exitfail.h: Update.
1282         * gnulib/import/extra/update-copyright: Update.
1283         * gnulib/import/fchdir.c: Update.
1284         * gnulib/import/fcntl.c: Update.
1285         * gnulib/import/fcntl.in.h: Update.
1286         * gnulib/import/fd-hook.c: Update.
1287         * gnulib/import/fd-hook.h: Update.
1288         * gnulib/import/fd-safer-flag.c: Update.
1289         * gnulib/import/fd-safer.c: Update.
1290         * gnulib/import/fdopendir.c: Update.
1291         * gnulib/import/filename.h: Update.
1292         * gnulib/import/filenamecat-lgpl.c: Update.
1293         * gnulib/import/filenamecat.h: Update.
1294         * gnulib/import/flexmember.h: Update.
1295         * gnulib/import/float+.h: Update.
1296         * gnulib/import/float.c: Update.
1297         * gnulib/import/float.in.h: Update.
1298         * gnulib/import/fnmatch.c: Update.
1299         * gnulib/import/fnmatch.in.h: Update.
1300         * gnulib/import/fnmatch_loop.c: Update.
1301         * gnulib/import/fpucw.h: Update.
1302         * gnulib/import/frexp.c: Update.
1303         * gnulib/import/frexpl.c: Update.
1304         * gnulib/import/fstat.c: Update.
1305         * gnulib/import/fstatat.c: Update.
1306         * gnulib/import/getcwd-lgpl.c: Update.
1307         * gnulib/import/getcwd.c: Update.
1308         * gnulib/import/getdtablesize.c: Update.
1309         * gnulib/import/getlogin_r.c: Update.
1310         * gnulib/import/getprogname.c: Update.
1311         * gnulib/import/getprogname.h: Update.
1312         * gnulib/import/gettext.h: Update.
1313         * gnulib/import/gettimeofday.c: Update.
1314         * gnulib/import/glob-libc.h: Update.
1315         * gnulib/import/glob.c: Update.
1316         * gnulib/import/glob.in.h: Update.
1317         * gnulib/import/glob_internal.h: Update.
1318         * gnulib/import/glob_pattern_p.c: Update.
1319         * gnulib/import/globfree.c: Update.
1320         * gnulib/import/hard-locale.c: Update.
1321         * gnulib/import/hard-locale.h: Update.
1322         * gnulib/import/intprops.h: Update.
1323         * gnulib/import/inttypes.in.h: Update.
1324         * gnulib/import/isnan.c: Update.
1325         * gnulib/import/isnand-nolibm.h: Update.
1326         * gnulib/import/isnand.c: Update.
1327         * gnulib/import/isnanl-nolibm.h: Update.
1328         * gnulib/import/isnanl.c: Update.
1329         * gnulib/import/itold.c: Update.
1330         * gnulib/import/libc-config.h: Update.
1331         * gnulib/import/limits.in.h: Update.
1332         * gnulib/import/localcharset.c: Update.
1333         * gnulib/import/localcharset.h: Update.
1334         * gnulib/import/localtime-buffer.c: Update.
1335         * gnulib/import/localtime-buffer.h: Update.
1336         * gnulib/import/lstat.c: Update.
1337         * gnulib/import/m4/00gnulib.m4: Update.
1338         * gnulib/import/m4/__inline.m4: Update.
1339         * gnulib/import/m4/absolute-header.m4: Update.
1340         * gnulib/import/m4/alloca.m4: Update.
1341         * gnulib/import/m4/builtin-expect.m4: Update.
1342         * gnulib/import/m4/canonicalize.m4: Update.
1343         * gnulib/import/m4/chdir-long.m4: Update.
1344         * gnulib/import/m4/close.m4: Update.
1345         * gnulib/import/m4/closedir.m4: Update.
1346         * gnulib/import/m4/configmake.m4: Update.
1347         * gnulib/import/m4/d-ino.m4: Update.
1348         * gnulib/import/m4/d-type.m4: Update.
1349         * gnulib/import/m4/dirent_h.m4: Update.
1350         * gnulib/import/m4/dirfd.m4: Update.
1351         * gnulib/import/m4/dirname.m4: Update.
1352         * gnulib/import/m4/double-slash-root.m4: Update.
1353         * gnulib/import/m4/dup.m4: Update.
1354         * gnulib/import/m4/dup2.m4: Update.
1355         * gnulib/import/m4/eealloc.m4: Update.
1356         * gnulib/import/m4/environ.m4: Update.
1357         * gnulib/import/m4/errno_h.m4: Update.
1358         * gnulib/import/m4/error.m4: Update.
1359         * gnulib/import/m4/exponentd.m4: Update.
1360         * gnulib/import/m4/exponentl.m4: Update.
1361         * gnulib/import/m4/extensions.m4: Update.
1362         * gnulib/import/m4/extern-inline.m4: Update.
1363         * gnulib/import/m4/fchdir.m4: Update.
1364         * gnulib/import/m4/fcntl-o.m4: Update.
1365         * gnulib/import/m4/fcntl.m4: Update.
1366         * gnulib/import/m4/fcntl_h.m4: Update.
1367         * gnulib/import/m4/fdopendir.m4: Update.
1368         * gnulib/import/m4/filenamecat.m4: Update.
1369         * gnulib/import/m4/flexmember.m4: Update.
1370         * gnulib/import/m4/float_h.m4: Update.
1371         * gnulib/import/m4/fnmatch.m4: Update.
1372         * gnulib/import/m4/fnmatch_h.m4: Update.
1373         * gnulib/import/m4/fpieee.m4: Update.
1374         * gnulib/import/m4/frexp.m4: Update.
1375         * gnulib/import/m4/frexpl.m4: Update.
1376         * gnulib/import/m4/fstat.m4: Update.
1377         * gnulib/import/m4/fstatat.m4: Update.
1378         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
1379         * gnulib/import/m4/getcwd-path-max.m4: Update.
1380         * gnulib/import/m4/getcwd.m4: Update.
1381         * gnulib/import/m4/getdtablesize.m4: Update.
1382         * gnulib/import/m4/getlogin.m4: Update.
1383         * gnulib/import/m4/getlogin_r.m4: Update.
1384         * gnulib/import/m4/getpagesize.m4: Update.
1385         * gnulib/import/m4/getprogname.m4: Update.
1386         * gnulib/import/m4/gettimeofday.m4: Update.
1387         * gnulib/import/m4/glibc21.m4: Update.
1388         * gnulib/import/m4/glob.m4: Update.
1389         * gnulib/import/m4/glob_h.m4: Update.
1390         * gnulib/import/m4/gnulib-cache.m4: Update.
1391         * gnulib/import/m4/gnulib-common.m4: Update.
1392         * gnulib/import/m4/gnulib-comp.m4: Update.
1393         * gnulib/import/m4/gnulib-tool.m4: Update.
1394         * gnulib/import/m4/hard-locale.m4: Update.
1395         * gnulib/import/m4/include_next.m4: Update.
1396         * gnulib/import/m4/inttypes-pri.m4: Update.
1397         * gnulib/import/m4/inttypes.m4: Update.
1398         * gnulib/import/m4/isnand.m4: Update.
1399         * gnulib/import/m4/isnanl.m4: Update.
1400         * gnulib/import/m4/largefile.m4: Update.
1401         * gnulib/import/m4/limits-h.m4: Update.
1402         * gnulib/import/m4/localcharset.m4: Update.
1403         * gnulib/import/m4/locale-fr.m4: Update.
1404         * gnulib/import/m4/locale-ja.m4: Update.
1405         * gnulib/import/m4/locale-zh.m4: Update.
1406         * gnulib/import/m4/localtime-buffer.m4: Update.
1407         * gnulib/import/m4/longlong.m4: Update.
1408         * gnulib/import/m4/lstat.m4: Update.
1409         * gnulib/import/m4/malloc.m4: Update.
1410         * gnulib/import/m4/malloca.m4: Update.
1411         * gnulib/import/m4/math_h.m4: Update.
1412         * gnulib/import/m4/mbrtowc.m4: Update.
1413         * gnulib/import/m4/mbsinit.m4: Update.
1414         * gnulib/import/m4/mbsrtowcs.m4: Update.
1415         * gnulib/import/m4/mbstate_t.m4: Update.
1416         * gnulib/import/m4/memchr.m4: Update.
1417         * gnulib/import/m4/memmem.m4: Update.
1418         * gnulib/import/m4/mempcpy.m4: Update.
1419         * gnulib/import/m4/memrchr.m4: Update.
1420         * gnulib/import/m4/mkdir.m4: Update.
1421         * gnulib/import/m4/mkstemp.m4: Update.
1422         * gnulib/import/m4/mmap-anon.m4: Update.
1423         * gnulib/import/m4/mode_t.m4: Update.
1424         * gnulib/import/m4/msvc-inval.m4: Update.
1425         * gnulib/import/m4/msvc-nothrow.m4: Update.
1426         * gnulib/import/m4/multiarch.m4: Update.
1427         * gnulib/import/m4/nocrash.m4: Update.
1428         * gnulib/import/m4/off_t.m4: Update.
1429         * gnulib/import/m4/onceonly.m4: Update.
1430         * gnulib/import/m4/open-cloexec.m4: Update.
1431         * gnulib/import/m4/open.m4: Update.
1432         * gnulib/import/m4/openat.m4: Update.
1433         * gnulib/import/m4/opendir.m4: Update.
1434         * gnulib/import/m4/pathmax.m4: Update.
1435         * gnulib/import/m4/rawmemchr.m4: Update.
1436         * gnulib/import/m4/readdir.m4: Update.
1437         * gnulib/import/m4/readlink.m4: Update.
1438         * gnulib/import/m4/realloc.m4: Update.
1439         * gnulib/import/m4/rename.m4: Update.
1440         * gnulib/import/m4/rewinddir.m4: Update.
1441         * gnulib/import/m4/rmdir.m4: Update.
1442         * gnulib/import/m4/save-cwd.m4: Update.
1443         * gnulib/import/m4/secure_getenv.m4: Update.
1444         * gnulib/import/m4/setenv.m4: Update.
1445         * gnulib/import/m4/signal_h.m4: Update.
1446         * gnulib/import/m4/ssize_t.m4: Update.
1447         * gnulib/import/m4/stat-time.m4: Update.
1448         * gnulib/import/m4/stat.m4: Update.
1449         * gnulib/import/m4/std-gnu11.m4: Update.
1450         * gnulib/import/m4/stdbool.m4: Update.
1451         * gnulib/import/m4/stddef_h.m4: Update.
1452         * gnulib/import/m4/stdint.m4: Update.
1453         * gnulib/import/m4/stdio_h.m4: Update.
1454         * gnulib/import/m4/stdlib_h.m4: Update.
1455         * gnulib/import/m4/strchrnul.m4: Update.
1456         * gnulib/import/m4/strdup.m4: Update.
1457         * gnulib/import/m4/strerror.m4: Update.
1458         * gnulib/import/m4/string_h.m4: Update.
1459         * gnulib/import/m4/strstr.m4: Update.
1460         * gnulib/import/m4/strtok_r.m4: Update.
1461         * gnulib/import/m4/sys_socket_h.m4: Update.
1462         * gnulib/import/m4/sys_stat_h.m4: Update.
1463         * gnulib/import/m4/sys_time_h.m4: Update.
1464         * gnulib/import/m4/sys_types_h.m4: Update.
1465         * gnulib/import/m4/tempname.m4: Update.
1466         * gnulib/import/m4/time_h.m4: Update.
1467         * gnulib/import/m4/unistd-safer.m4: Update.
1468         * gnulib/import/m4/unistd_h.m4: Update.
1469         * gnulib/import/m4/warn-on-use.m4: Update.
1470         * gnulib/import/m4/wchar_h.m4: Update.
1471         * gnulib/import/m4/wchar_t.m4: Update.
1472         * gnulib/import/m4/wctype_h.m4: Update.
1473         * gnulib/import/m4/wint_t.m4: Update.
1474         * gnulib/import/malloc.c: Update.
1475         * gnulib/import/malloc/scratch_buffer.h: Update.
1476         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
1477         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
1478         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
1479         * gnulib/import/malloca.c: Update.
1480         * gnulib/import/malloca.h: Update.
1481         * gnulib/import/malloca.valgrind: Update.
1482         * gnulib/import/math.in.h: Update.
1483         * gnulib/import/mbrtowc.c: Update.
1484         * gnulib/import/mbsinit.c: Update.
1485         * gnulib/import/mbsrtowcs-impl.h: Update.
1486         * gnulib/import/mbsrtowcs-state.c: Update.
1487         * gnulib/import/mbsrtowcs.c: Update.
1488         * gnulib/import/memchr.c: Update.
1489         * gnulib/import/memmem.c: Update.
1490         * gnulib/import/mempcpy.c: Update.
1491         * gnulib/import/memrchr.c: Update.
1492         * gnulib/import/mkdir.c: Update.
1493         * gnulib/import/mkstemp.c: Update.
1494         * gnulib/import/msvc-inval.c: Update.
1495         * gnulib/import/msvc-inval.h: Update.
1496         * gnulib/import/msvc-nothrow.c: Update.
1497         * gnulib/import/msvc-nothrow.h: Update.
1498         * gnulib/import/open.c: Update.
1499         * gnulib/import/openat-die.c: Update.
1500         * gnulib/import/openat-priv.h: Update.
1501         * gnulib/import/openat-proc.c: Update.
1502         * gnulib/import/openat.c: Update.
1503         * gnulib/import/openat.h: Update.
1504         * gnulib/import/opendir.c: Update.
1505         * gnulib/import/pathmax.h: Update.
1506         * gnulib/import/pipe-safer.c: Update.
1507         * gnulib/import/rawmemchr.c: Update.
1508         * gnulib/import/readdir.c: Update.
1509         * gnulib/import/readlink.c: Update.
1510         * gnulib/import/realloc.c: Update.
1511         * gnulib/import/ref-add.sin: Update.
1512         * gnulib/import/ref-del.sin: Update.
1513         * gnulib/import/rename.c: Update.
1514         * gnulib/import/rewinddir.c: Update.
1515         * gnulib/import/rmdir.c: Update.
1516         * gnulib/import/same-inode.h: Update.
1517         * gnulib/import/save-cwd.c: Update.
1518         * gnulib/import/save-cwd.h: Update.
1519         * gnulib/import/scratch_buffer.h: Update.
1520         * gnulib/import/secure_getenv.c: Update.
1521         * gnulib/import/setenv.c: Update.
1522         * gnulib/import/signal.in.h: Update.
1523         * gnulib/import/stat-time.c: Update.
1524         * gnulib/import/stat-time.h: Update.
1525         * gnulib/import/stat-w32.c: Update.
1526         * gnulib/import/stat-w32.h: Update.
1527         * gnulib/import/stat.c: Update.
1528         * gnulib/import/stdbool.in.h: Update.
1529         * gnulib/import/stddef.in.h: Update.
1530         * gnulib/import/stdint.in.h: Update.
1531         * gnulib/import/stdio.in.h: Update.
1532         * gnulib/import/stdlib.in.h: Update.
1533         * gnulib/import/str-two-way.h: Update.
1534         * gnulib/import/strchrnul.c: Update.
1535         * gnulib/import/strdup.c: Update.
1536         * gnulib/import/streq.h: Update.
1537         * gnulib/import/strerror-override.c: Update.
1538         * gnulib/import/strerror-override.h: Update.
1539         * gnulib/import/strerror.c: Update.
1540         * gnulib/import/string.in.h: Update.
1541         * gnulib/import/stripslash.c: Update.
1542         * gnulib/import/strnlen1.c: Update.
1543         * gnulib/import/strnlen1.h: Update.
1544         * gnulib/import/strstr.c: Update.
1545         * gnulib/import/strtok_r.c: Update.
1546         * gnulib/import/sys_stat.in.h: Update.
1547         * gnulib/import/sys_time.in.h: Update.
1548         * gnulib/import/sys_types.in.h: Update.
1549         * gnulib/import/tempname.c: Update.
1550         * gnulib/import/tempname.h: Update.
1551         * gnulib/import/time.in.h: Update.
1552         * gnulib/import/unistd--.h: Update.
1553         * gnulib/import/unistd-safer.h: Update.
1554         * gnulib/import/unistd.in.h: Update.
1555         * gnulib/import/unsetenv.c: Update.
1556         * gnulib/import/verify.h: Update.
1557         * gnulib/import/extra/snippet/warn-on-use.h: Update.
1558         * gnulib/import/wchar.in.h: Update.
1559         * gnulib/import/wctype.in.h: Update.
1560         * gnulib/import/xalloc-oversized.h: Update.
1561         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
1562         "53e2c179f26a890fa6685af4b6c1397ee370433b".
1563
1564 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
1565
1566         * record-btrace.c (get_thread_current_frame): Remove
1567         old_inferior_ptid.
1568
1569 2018-09-10  Jerome Guitton  <guitton@adacore.com>
1570
1571         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
1572         with check_tag to 1 if and only if the type is tagged and the
1573         component being searched cannot been found in the current
1574         view. Otherwise, always call ada_to_fixed_type with
1575         check_tag to 0.
1576
1577 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1578
1579         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
1580         declaration.
1581         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
1582         * ada-varobj.c (ada_varobj_get_number_of_children,
1583         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
1584
1585 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1586
1587         * ada-valprint.c (ada_value_print): Use type instead of
1588         enclosing type.
1589
1590 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1591
1592         * ada-lang.c (ada_value_subscript): Handle case when parameter is
1593         an array of access to unconstrained array.
1594
1595 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1596
1597         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
1598         (ada_check_typedef): Use it.
1599
1600 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1601
1602         * ada-varobj.c (ada_varobj_describe_struct_child)
1603         (ada_varobj_describe_child): Handle union case like struct one.
1604
1605 2018-09-10  Tom Tromey  <tom@tromey.com>
1606
1607         PR python/18380:
1608         * python/python.c (_initialize_python): Make example in "python"
1609         help work in Python 3.
1610
1611 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
1612
1613         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
1614         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
1615         $(EXEEXT) to the script, as it is not a program.
1616
1617 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
1618
1619         * python/py-prettyprint.c (pretty_print_one_value): Return
1620         gdbpy_ref<>.
1621         (print_string_repr): Adjust.
1622         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
1623         * python/python-internal.h (apply_varobj_pretty_printer): Return
1624         gdbpy_ref<>.
1625         * varobj.c (varobj_value_get_print_value): Adjust.
1626
1627 2018-09-08  Tom Tromey  <tom@tromey.com>
1628
1629         PR python/16047:
1630         * python/py-prettyprint.c (pretty_print_one_value): Check for
1631         to_string method.
1632
1633 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1634
1635         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
1636         replace_operator_with_call.
1637
1638 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1639
1640         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
1641
1642 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1643
1644         * ada-typeprint.c (print_range): Print the bounds using TYPE
1645         rather than its TYPE_TARGET_TYPE.
1646
1647 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1648
1649         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
1650         call to ada_to_fixed_value_create.
1651
1652 2018-09-08  Jerome Guitton  <guitton@adacore.com>
1653
1654         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
1655
1656 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1657
1658         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
1659         by calls to error.
1660
1661 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1662
1663         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
1664         Move update of loop variable "fi".
1665
1666 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1667
1668         * ada-lang.c (value_assign_to_component): In the case of
1669         big-endian targets, extract the bits of the given VAL
1670         using an src_offset of zero if container is not a scalar.
1671
1672 2018-09-06  Simon Ser  <contact@emersion.fr>
1673
1674         PR gdb/23105
1675         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
1676         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
1677         * fbsd-tdep.c (fbsd_make_note_desc): New.
1678         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
1679         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
1680         * target.h (enum target_object) Add FreeBSD-specific
1681         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
1682
1683 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
1684
1685         * compile/compile-c.h (generate_c_for_variable_locations):
1686         Change reference to pointer.
1687         * compile/compile-c-support.c (compile_program) <compute>:
1688         Likewise.
1689         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
1690         (generate_c_for_for_one_variable): Likewise
1691         (generate_c_for_variable_locations): Likewise
1692         * compile/compile-c-types.c (compile_c_instance::convert_type):
1693         Likewise
1694         * compile/compile-cplus-symbols.c (convert_one_symbol):
1695         std::move the scope passed to enter_scope.
1696         * compile/compile-cplus-types.c
1697         (compile_cplus_instance::enter_scope): Make parameter
1698         rvalue-reference.
1699         (compile_cplus_instance::new_scope): Change reference to
1700         pointer.
1701         (compile_cplus_instance::convert_type): Likewise
1702         (compile_cplus_convert_typedef): std::move the scope passed to
1703         enter_scope.
1704         (compile_cplus_convert_struct_or_union): Likewise.
1705         (compile_cplus_convert_enum): Likewise.
1706         (compile_cplus_convert_namespace): Likewise.
1707         * compile/compile-cplus.h (compile_cplus_instance)
1708         <enter_scope>: Make parameter rvalue-reference.
1709         * compile/compile-internal.h (compile_instance)
1710         <get_cached_type>: Likewise
1711         * compile/compile-loc2c.c (push): Likewise
1712         (pushf): Likewise
1713         (unary): Likewise
1714         (binary): Likewise
1715         (print_label): Likewise
1716         (pushf_register_address): Likewise
1717         (pushf_register): Likewise
1718         (do_compile_dwarf_expr_to_c): Likewise
1719         (compile_dwarf_expr_to_c): Likewise
1720         (compile_dwarf_bounds_to_c): Likewise
1721         * compile/compile.c (compile_instance::get_cached_type):
1722         Likewise
1723         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
1724         (compile_dwarf_bounds_to_c): Likewise
1725         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
1726         (dwarf2_compile_property_to_c): Likewise
1727         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
1728         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
1729         Likewise
1730
1731 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
1732
1733         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
1734         * tui/tui-data.c (init_content_element): Don't initialize it.
1735
1736 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
1737
1738         * tui/tui-data.h (struct tui_win_info)
1739         <detail::opaque>: Remove.
1740         * tui/tui-data.c (init_win_info): Remove assignment.
1741
1742 2018-09-05  Tom Tromey  <tom@tromey.com>
1743
1744         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
1745         -Wformat-nonliteral.
1746         * target-float.c (host_float_ops<T>::to_string)
1747         (host_float_ops<T>::from_string): Use
1748         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
1749         * configure: Rebuild.
1750
1751 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
1752
1753         * printcmd.c (printf_c_string): Use
1754         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
1755         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
1756
1757 2018-09-05  Tom Tromey  <tom@tromey.com>
1758
1759         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
1760
1761 2018-09-05  Tom de Vries  <tdevries@suse.de>
1762
1763         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
1764         with resolve_abstract_p == true.
1765         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
1766         defaulting to false. Propagate resolve_abstract_p to
1767         dwarf2_fetch_die_loc_sect_off.
1768         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
1769         parameter, defaulting to false.
1770         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
1771         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
1772         parameter.
1773         * dwarf2read.h (struct die_info): Forward-declare.
1774         (die_info_ptr): New typedef.
1775         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
1776
1777 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
1778
1779         GDB 8.2 released.
1780
1781 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
1782             Pedro Alves  <palves@redhat.com>
1783
1784         * gnulib/Makefile.in (aclocal_m4_deps): Move to
1785         "aclocal-m4-deps.mk".  Include file here.
1786         $(srcdir)/aclocal.m4: Add "configure.ac".
1787         * gnulib/aclocal-m4-deps.mk: New file.
1788         * gnulib/update-gnulib.sh: Automatically update
1789         "aclocal-m4-deps.mk".
1790
1791 2018-09-04  Tom Tromey  <tom@tromey.com>
1792
1793         * configure: Rebuild.
1794         * configure.ac: Remove multi-ice code.
1795
1796 2018-09-04  Tom Tromey  <tom@tromey.com>
1797
1798         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
1799         (ada-exp.o): Update.
1800
1801 2018-09-04  Tom Tromey  <tom@tromey.com>
1802
1803         * Makefile.in (printcmd.o, target-float.o): Remove.
1804         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
1805
1806 2018-09-04  Tom Tromey  <tom@tromey.com>
1807
1808         * gnulib/Makefile.in: Remove obsolete comment.
1809         * Makefile.in: Remove obsolete comment.
1810
1811 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
1812
1813         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
1814         line with '+'.
1815
1816 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
1817
1818         * riscv-tdep.c: Add 'prologue-value.h' include.
1819         (struct riscv_unwind_cache): New struct.
1820         (riscv_debug_unwinder): New global.
1821         (riscv_scan_prologue): Update arguments, capture register details
1822         from prologue scan.
1823         (riscv_skip_prologue): Reformat arguments line, move end of
1824         prologue calculation into riscv_scan_prologue.
1825         (riscv_frame_cache): Update return type, create
1826         riscv_unwind_cache, scan the prologue, and fill in remaining cache
1827         details.
1828         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
1829         (riscv_frame_prev_register): Use the trad_frame within the
1830         riscv_unwind_cache.
1831         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
1832         flag.
1833
1834 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
1835
1836         * trad-frame.h (trad_frame_set_realreg): Declare.
1837         (trad_frame_set_addr): Declare.
1838         * trad-frame.c (trad_frame_set_realreg): Define new function.
1839         (trad_frame_set_addr): Define new function.
1840         (trad_frame_set_reg_realreg): Use new function.
1841         (trad_frame_set_reg_addr): Use new function.
1842
1843 2018-09-01  Keith Seitz  <keiths@redhat.com>
1844
1845         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
1846         pulongest instead of "%lld".
1847         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
1848         ATTRIBUTE_UNUSED.
1849
1850 2018-08-31  Tom Tromey  <tom@tromey.com>
1851
1852         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
1853         variant part type.
1854
1855 2018-08-31  Pedro Alves  <palves@redhat.com>
1856
1857         * gdbarch.h: Regenerate.
1858
1859 2018-08-31  Pedro Alves  <palves@redhat.com>
1860
1861         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
1862         * target.h (Hardware watchpoint interfaces): Describe
1863         continuable/steppable/non-steppable watchpoints.
1864         * gdbarch.h, gdbarch.c: Regenerate.
1865
1866 2018-08-31  Pedro Alves  <palves@redhat.com>
1867
1868         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
1869         Delete.
1870         * s390-linux-nat.c
1871         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
1872         * target.h (target_ops::have_continuable_watchpoint): Delete.
1873         (target_have_continuable_watchpoint): Delete.
1874         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
1875         * target-delegates.c: Regenerate.
1876
1877 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
1878
1879         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
1880         the files present in "gnulib/import/m4/".
1881
1882 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
1883
1884         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
1885         c.sw, c.swsp, and c.sdsp.
1886
1887 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
1888
1889         * riscv-tdep.c (struct riscv_inferior_data): Delete.
1890         (riscv_read_misa_reg): Don't cache value read into inferior data.
1891         (riscv_new_inferior_data): Delete.
1892         (riscv_inferior_data_cleanup): Delete.
1893         (riscv_inferior_data): Delete.
1894         (riscv_invalidate_inferior_data): Delete.
1895         (_initialize_riscv_tdep): Remove initialisation of inferior data.
1896
1897 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
1898
1899         * compile/compile-cplus-types.c
1900         (compile_cplus_instance::leave_scope): Take the address of scope
1901         object.
1902         (compile_cplus_instance::convert_qualified_base): Compare quals
1903         to 0.
1904
1905 2018-08-30  Keith Seitz  <keiths@redhat.com>
1906
1907         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
1908         Use "%s" and host_address_to_string instead of "%p" in printf.
1909
1910 2018-08-29  Keith Seitz  <keiths@redhat.com>
1911
1912         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
1913         and compile-cplus-types.c.
1914         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
1915         * c-lang.c (cplus_language_defn): Set C++ compile functions.
1916         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
1917         Declare.
1918         * compile/compile-c-support.c: Include compile-cplus.h.
1919         (load_libcompile): Templatize.
1920         (get_compile_context): "New" function.
1921         (c_get_compile_context): Use get_compile_context.
1922         (cplus_get_compile_context): New function.
1923         (cplus_push_user_expression, cplus_pop_user_expression)
1924         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
1925         (cplus_compute_program): Define new structs/functions.
1926         * compile/compile-cplus-symmbols.c: New file.
1927         * compile/compile-cplus-types.c: New file.
1928         * compile/compile-cplus.h: New file.
1929         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
1930         Declare.
1931         * compile/compile-object-load.c (get_out_value_type): Use
1932         strncmp_iw when comparing symbol names.
1933         (compile_object_load): Add mst_bss and mst_data.
1934         * compile/compile.c (_initialize_compile): Remove
1935         -Wno-implicit-function-declaration from `compile_args'.
1936         * compile/gcc-cp-plugin.h: New file.
1937         * NEWS: Mention C++ compile support and new debug options.
1938
1939 2018-08-29  Keith Seitz  <keiths@redhat.com>
1940
1941         * linespec.c (collect_info::add_symbol): Make virtual.
1942         (struct symbol_searcher_collect_info): New struct.
1943         (symbol_searcher::find_all_symbols): New method.
1944         * symtab.h (class symbol_searcher): New class.
1945
1946 2018-08-29  Keith Seitz  <keiths@redhat.com>
1947
1948         * linespec.c (struct linespec) <function_symbols, label_symbols>:
1949         Change to vector of block_symbol.  Update all users.
1950         (struct collect_info) <symbols>: Likewise.
1951         (collect_info::add_symbol): Take block_symbol as argument.
1952         Update all callers.
1953         (decode_compound_collector) <m_symbols>: Change type to vector
1954         of block_symbol.  Update all users.
1955         (decode_compound_collector::operator ()): Change parameter type
1956         to block_symbol.
1957         (find_method, find_function_symbols, find_linespec_symbols)
1958         (find_label_symbols_in_block, find_label_symbols): Change symbol
1959         vectors to block_symbol vectors.
1960         * symtab.h (symbol_found_callback_ftype): Change parameter type to
1961         block_symbol.
1962
1963 2018-08-29  Keith Seitz  <keiths@redhat.com>
1964
1965         * linespec.c (symbolp): Remove typedef and VEC definitions.
1966         (bound_minimal_symbol_d): Likewise.
1967
1968 2018-08-29  Keith Seitz  <keiths@redhat.com>
1969
1970         * linespec.c (decode_compound_collector::decode_compound_collector):
1971         Remove initialization for `m_symtabs'.
1972         (decode_compound_collector::release_symbols): Change return type
1973         to std::vector.  Update all callers.
1974         (class decode_compound_collector) <m_symbols>: Change type to
1975         std::vector.
1976         (lookup_prefix_sym): Change return type to std::vector.  Update all
1977         callers.
1978         (compare_symbols): Remove.
1979         (std_compare_symbols): Rename to `compare_symbols'.
1980         (find_method): Change `sym_classes' parameter to std::vector.
1981         Update all callers.  Use std::sort to sort sym_classes.
1982         (find_linespec_symbols): Remove cleanup.
1983
1984 2018-08-29  Keith Seitz  <keiths@redhat.com>
1985
1986         * linespec.c (struct linespec) <minimal_symbols>: Change type to
1987         std::vector.  Update all users.
1988         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
1989         (struct collect_info) <minimal_symbols>: Likewise.
1990         (compare_msymbols): Return bool.  Change parameters to const
1991         bound_minimal_symbol references.
1992         (find_method, find_function_symbols, find_linespec_symbols): Change
1993         `minsyms' parameter to std::vector.  Update all callers.
1994
1995 2018-08-29  Keith Seitz  <keiths@redhat.com>
1996
1997         * linespec.c (struct linespec) <label_symbols>: Change type to
1998         std::vector.  Update all users.
1999         (find_label_symbols_in_block): Change `result' parameter to
2000         std::vector.  Update all callers.
2001         (find_label_symbols): Return std::vector.  Update all callers.
2002
2003 2018-08-29  Keith Seitz  <keiths@redhat.com>
2004
2005         * linespec.c (struct linespec) <function_symbols>: Change type to
2006         std::vector.  Update all users.
2007         (struct collect_info) <function_symbols>: Likewise.
2008         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
2009         (std_compare_symbols): New function.
2010         (find_method, find_function_symbols, find_linespec_symbols)
2011         (find_label_symbols_in_block): Change `symbols' parameter to
2012         std::vector.  Update all callers.
2013         (find_label_symbols): Likewise for `function_symbols' and
2014         `label_funcs_ret'.
2015
2016 2018-08-29  Keith Seitz  <keiths@redhat.com>
2017
2018         * linespec.c (symtab_vector_up): Define.
2019         (struct linespec) <file_symtabs>: Change type to std::vector *.
2020         Update all uses.
2021         (struct collect_info) <file_symtabs>: Likewise.
2022         (collect_symtabs_from_filename): Return symtab_vector_up.
2023         Update all callers.
2024         (decode_objc): Remove cleanup.
2025         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
2026         (symtab_collector::release_symtabs): Return symtab_vector_up.
2027         Update all callers.
2028         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
2029         Update all users.
2030         (collect_symtabs_from_filename, symtabs_from_filename): Return
2031         symtab_vector_up.  Update all callers.
2032
2033 2018-08-29  Tom Tromey  <tom@tromey.com>
2034
2035         * csky-tdep.c (csky_analyze_prologue): Use
2036         core_addr_to_string_nz.
2037
2038 2018-08-29  Tom Tromey  <tom@tromey.com>
2039
2040         * windows-nat.c (struct xlate_exception) <them>: Change type to
2041         DWORD.
2042         (xlate): Fix formatting.  Remove last entry.
2043         (struct xlate_exception, xlate): Comment out.
2044         (windows_nat_target::resume): Use ranged for.
2045
2046 2018-08-29  Jim Wilson  <jimw@sifive.com>
2047
2048         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
2049         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
2050         of NT_PRFPREG.
2051         (riscv_linux_nat_target::store_registers): Likewise.
2052
2053 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2054
2055         PR gdb/23555
2056         PR gdb/23558
2057         * gnulib/aclocal.m4: Regenerate.
2058         * gnulib/config.in: Regenerate.
2059         * gnulib/configure: Regenerate.
2060         * gnulib/import/Makefile.am: Update.
2061         * gnulib/import/Makefile.in: Update.
2062         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2063         * gnulib/import/_Noreturn.h: ... this.
2064         * gnulib/import/alloca.in.h: Update.
2065         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2066         * gnulib/import/arg-nonnull.h: ... this.
2067         * gnulib/import/assure.h: Update.
2068         * gnulib/import/at-func.c: Update.
2069         * gnulib/import/basename-lgpl.c: Update.
2070         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2071         * gnulib/import/c++defs.h: ... this.
2072         * gnulib/import/canonicalize-lgpl.c: Update.
2073         * gnulib/import/cdefs.h: Update.
2074         * gnulib/import/chdir-long.c: Update.
2075         * gnulib/import/chdir-long.h: Update.
2076         * gnulib/import/cloexec.c: Update.
2077         * gnulib/import/cloexec.h: Update.
2078         * gnulib/import/close.c: Update.
2079         * gnulib/import/closedir.c: Update.
2080         * gnulib/import/config.charset: Update.
2081         * gnulib/import/dirent-private.h: Update.
2082         * gnulib/import/dirent.in.h: Update.
2083         * gnulib/import/dirfd.c: Update.
2084         * gnulib/import/dirname-lgpl.c: Update.
2085         * gnulib/import/dirname.h: Update.
2086         * gnulib/import/dosname.h: Update.
2087         * gnulib/import/dup-safer-flag.c: Update.
2088         * gnulib/import/dup-safer.c: Update.
2089         * gnulib/import/dup.c: Update.
2090         * gnulib/import/dup2.c: Update.
2091         * gnulib/import/errno.in.h: Update.
2092         * gnulib/import/error.c: Update.
2093         * gnulib/import/error.h: Update.
2094         * gnulib/import/exitfail.c: Update.
2095         * gnulib/import/exitfail.h: Update.
2096         * gnulib/import/extra/update-copyright: Update.
2097         * gnulib/import/fchdir.c: Update.
2098         * gnulib/import/fcntl.c: Update.
2099         * gnulib/import/fcntl.in.h: Update.
2100         * gnulib/import/fd-hook.c: Update.
2101         * gnulib/import/fd-hook.h: Update.
2102         * gnulib/import/fd-safer-flag.c: Update.
2103         * gnulib/import/fd-safer.c: Update.
2104         * gnulib/import/fdopendir.c: Update.
2105         * gnulib/import/filename.h: Update.
2106         * gnulib/import/filenamecat-lgpl.c: Update.
2107         * gnulib/import/filenamecat.h: Update.
2108         * gnulib/import/flexmember.h: Update.
2109         * gnulib/import/float+.h: Update.
2110         * gnulib/import/float.c: Update.
2111         * gnulib/import/float.in.h: Update.
2112         * gnulib/import/fnmatch.c: Update.
2113         * gnulib/import/fnmatch.in.h: Update.
2114         * gnulib/import/fnmatch_loop.c: Update.
2115         * gnulib/import/fpucw.h: Update.
2116         * gnulib/import/frexp.c: Update.
2117         * gnulib/import/frexpl.c: Update.
2118         * gnulib/import/fstat.c: Update.
2119         * gnulib/import/fstatat.c: Update.
2120         * gnulib/import/getcwd-lgpl.c: Update.
2121         * gnulib/import/getcwd.c: Update.
2122         * gnulib/import/getdtablesize.c: Update.
2123         * gnulib/import/getlogin_r.c: Update.
2124         * gnulib/import/getprogname.c: Update.
2125         * gnulib/import/getprogname.h: Update.
2126         * gnulib/import/gettext.h: Update.
2127         * gnulib/import/gettimeofday.c: Update.
2128         * gnulib/import/glob-libc.h: Update.
2129         * gnulib/import/glob.c: Update.
2130         * gnulib/import/glob.in.h: Update.
2131         * gnulib/import/glob_internal.h: Update.
2132         * gnulib/import/glob_pattern_p.c: Update.
2133         * gnulib/import/globfree.c: Update.
2134         * gnulib/import/hard-locale.c: Update.
2135         * gnulib/import/hard-locale.h: Update.
2136         * gnulib/import/intprops.h: Update.
2137         * gnulib/import/inttypes.in.h: Update.
2138         * gnulib/import/isnan.c: Update.
2139         * gnulib/import/isnand-nolibm.h: Update.
2140         * gnulib/import/isnand.c: Update.
2141         * gnulib/import/isnanl-nolibm.h: Update.
2142         * gnulib/import/isnanl.c: Update.
2143         * gnulib/import/itold.c: Update.
2144         * gnulib/import/libc-config.h: Update.
2145         * gnulib/import/limits.in.h: Update.
2146         * gnulib/import/localcharset.c: Update.
2147         * gnulib/import/localcharset.h: Update.
2148         * gnulib/import/localtime-buffer.c: Update.
2149         * gnulib/import/localtime-buffer.h: Update.
2150         * gnulib/import/lstat.c: Update.
2151         * gnulib/import/m4/00gnulib.m4: Update.
2152         * gnulib/import/m4/__inline.m4: Update.
2153         * gnulib/import/m4/absolute-header.m4: Update.
2154         * gnulib/import/m4/alloca.m4: Update.
2155         * gnulib/import/m4/builtin-expect.m4: Update.
2156         * gnulib/import/m4/canonicalize.m4: Update.
2157         * gnulib/import/m4/chdir-long.m4: Update.
2158         * gnulib/import/m4/close.m4: Update.
2159         * gnulib/import/m4/closedir.m4: Update.
2160         * gnulib/import/m4/configmake.m4: Update.
2161         * gnulib/import/m4/d-ino.m4: Update.
2162         * gnulib/import/m4/d-type.m4: Update.
2163         * gnulib/import/m4/dirent_h.m4: Update.
2164         * gnulib/import/m4/dirfd.m4: Update.
2165         * gnulib/import/m4/dirname.m4: Update.
2166         * gnulib/import/m4/double-slash-root.m4: Update.
2167         * gnulib/import/m4/dup.m4: Update.
2168         * gnulib/import/m4/dup2.m4: Update.
2169         * gnulib/import/m4/eealloc.m4: Update.
2170         * gnulib/import/m4/environ.m4: Update.
2171         * gnulib/import/m4/errno_h.m4: Update.
2172         * gnulib/import/m4/error.m4: Update.
2173         * gnulib/import/m4/exponentd.m4: Update.
2174         * gnulib/import/m4/exponentl.m4: Update.
2175         * gnulib/import/m4/extensions.m4: Update.
2176         * gnulib/import/m4/extern-inline.m4: Update.
2177         * gnulib/import/m4/fchdir.m4: Update.
2178         * gnulib/import/m4/fcntl-o.m4: Update.
2179         * gnulib/import/m4/fcntl.m4: Update.
2180         * gnulib/import/m4/fcntl_h.m4: Update.
2181         * gnulib/import/m4/fdopendir.m4: Update.
2182         * gnulib/import/m4/filenamecat.m4: Update.
2183         * gnulib/import/m4/flexmember.m4: Update.
2184         * gnulib/import/m4/float_h.m4: Update.
2185         * gnulib/import/m4/fnmatch.m4: Update.
2186         * gnulib/import/m4/fnmatch_h.m4: Update.
2187         * gnulib/import/m4/fpieee.m4: Update.
2188         * gnulib/import/m4/frexp.m4: Update.
2189         * gnulib/import/m4/frexpl.m4: Update.
2190         * gnulib/import/m4/fstat.m4: Update.
2191         * gnulib/import/m4/fstatat.m4: Update.
2192         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2193         * gnulib/import/m4/getcwd-path-max.m4: Update.
2194         * gnulib/import/m4/getcwd.m4: Update.
2195         * gnulib/import/m4/getdtablesize.m4: Update.
2196         * gnulib/import/m4/getlogin.m4: Update.
2197         * gnulib/import/m4/getlogin_r.m4: Update.
2198         * gnulib/import/m4/getpagesize.m4: Update.
2199         * gnulib/import/m4/getprogname.m4: Update.
2200         * gnulib/import/m4/gettimeofday.m4: Update.
2201         * gnulib/import/m4/glibc21.m4: Update.
2202         * gnulib/import/m4/glob.m4: Update.
2203         * gnulib/import/m4/glob_h.m4: Update.
2204         * gnulib/import/m4/gnulib-cache.m4: Update.
2205         * gnulib/import/m4/gnulib-common.m4: Update.
2206         * gnulib/import/m4/gnulib-comp.m4: Update.
2207         * gnulib/import/m4/gnulib-tool.m4: Update.
2208         * gnulib/import/m4/hard-locale.m4: Update.
2209         * gnulib/import/m4/include_next.m4: Update.
2210         * gnulib/import/m4/inttypes-pri.m4: Update.
2211         * gnulib/import/m4/inttypes.m4: Update.
2212         * gnulib/import/m4/isnand.m4: Update.
2213         * gnulib/import/m4/isnanl.m4: Update.
2214         * gnulib/import/m4/largefile.m4: Update.
2215         * gnulib/import/m4/limits-h.m4: Update.
2216         * gnulib/import/m4/localcharset.m4: Update.
2217         * gnulib/import/m4/locale-fr.m4: Update.
2218         * gnulib/import/m4/locale-ja.m4: Update.
2219         * gnulib/import/m4/locale-zh.m4: Update.
2220         * gnulib/import/m4/localtime-buffer.m4: Update.
2221         * gnulib/import/m4/longlong.m4: Update.
2222         * gnulib/import/m4/lstat.m4: Update.
2223         * gnulib/import/m4/malloc.m4: Update.
2224         * gnulib/import/m4/malloca.m4: Update.
2225         * gnulib/import/m4/math_h.m4: Update.
2226         * gnulib/import/m4/mbrtowc.m4: Update.
2227         * gnulib/import/m4/mbsinit.m4: Update.
2228         * gnulib/import/m4/mbsrtowcs.m4: Update.
2229         * gnulib/import/m4/mbstate_t.m4: Update.
2230         * gnulib/import/m4/memchr.m4: Update.
2231         * gnulib/import/m4/memmem.m4: Update.
2232         * gnulib/import/m4/mempcpy.m4: Update.
2233         * gnulib/import/m4/memrchr.m4: Update.
2234         * gnulib/import/m4/mkdir.m4: Update.
2235         * gnulib/import/m4/mkstemp.m4: Update.
2236         * gnulib/import/m4/mmap-anon.m4: Update.
2237         * gnulib/import/m4/mode_t.m4: Update.
2238         * gnulib/import/m4/msvc-inval.m4: Update.
2239         * gnulib/import/m4/msvc-nothrow.m4: Update.
2240         * gnulib/import/m4/multiarch.m4: Update.
2241         * gnulib/import/m4/nocrash.m4: Update.
2242         * gnulib/import/m4/off_t.m4: Update.
2243         * gnulib/import/m4/onceonly.m4: Update.
2244         * gnulib/import/m4/open-cloexec.m4: Update.
2245         * gnulib/import/m4/open.m4: Update.
2246         * gnulib/import/m4/openat.m4: Update.
2247         * gnulib/import/m4/opendir.m4: Update.
2248         * gnulib/import/m4/pathmax.m4: Update.
2249         * gnulib/import/m4/rawmemchr.m4: Update.
2250         * gnulib/import/m4/readdir.m4: Update.
2251         * gnulib/import/m4/readlink.m4: Update.
2252         * gnulib/import/m4/realloc.m4: Update.
2253         * gnulib/import/m4/rename.m4: Update.
2254         * gnulib/import/m4/rewinddir.m4: Update.
2255         * gnulib/import/m4/rmdir.m4: Update.
2256         * gnulib/import/m4/save-cwd.m4: Update.
2257         * gnulib/import/m4/secure_getenv.m4: Update.
2258         * gnulib/import/m4/setenv.m4: Update.
2259         * gnulib/import/m4/signal_h.m4: Update.
2260         * gnulib/import/m4/ssize_t.m4: Update.
2261         * gnulib/import/m4/stat-time.m4: Update.
2262         * gnulib/import/m4/stat.m4: Update.
2263         * gnulib/import/m4/std-gnu11.m4: Update.
2264         * gnulib/import/m4/stdbool.m4: Update.
2265         * gnulib/import/m4/stddef_h.m4: Update.
2266         * gnulib/import/m4/stdint.m4: Update.
2267         * gnulib/import/m4/stdio_h.m4: Update.
2268         * gnulib/import/m4/stdlib_h.m4: Update.
2269         * gnulib/import/m4/strchrnul.m4: Update.
2270         * gnulib/import/m4/strdup.m4: Update.
2271         * gnulib/import/m4/strerror.m4: Update.
2272         * gnulib/import/m4/string_h.m4: Update.
2273         * gnulib/import/m4/strstr.m4: Update.
2274         * gnulib/import/m4/strtok_r.m4: Update.
2275         * gnulib/import/m4/sys_socket_h.m4: Update.
2276         * gnulib/import/m4/sys_stat_h.m4: Update.
2277         * gnulib/import/m4/sys_time_h.m4: Update.
2278         * gnulib/import/m4/sys_types_h.m4: Update.
2279         * gnulib/import/m4/tempname.m4: Update.
2280         * gnulib/import/m4/time_h.m4: Update.
2281         * gnulib/import/m4/unistd-safer.m4: Update.
2282         * gnulib/import/m4/unistd_h.m4: Update.
2283         * gnulib/import/m4/warn-on-use.m4: Update.
2284         * gnulib/import/m4/wchar_h.m4: Update.
2285         * gnulib/import/m4/wchar_t.m4: Update.
2286         * gnulib/import/m4/wctype_h.m4: Update.
2287         * gnulib/import/m4/wint_t.m4: Update.
2288         * gnulib/import/malloc.c: Update.
2289         * gnulib/import/malloc/scratch_buffer.h: Update.
2290         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2291         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2292         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2293         * gnulib/import/malloca.c: Update.
2294         * gnulib/import/malloca.h: Update.
2295         * gnulib/import/malloca.valgrind: Update.
2296         * gnulib/import/math.in.h: Update.
2297         * gnulib/import/mbrtowc.c: Update.
2298         * gnulib/import/mbsinit.c: Update.
2299         * gnulib/import/mbsrtowcs-impl.h: Update.
2300         * gnulib/import/mbsrtowcs-state.c: Update.
2301         * gnulib/import/mbsrtowcs.c: Update.
2302         * gnulib/import/memchr.c: Update.
2303         * gnulib/import/memmem.c: Update.
2304         * gnulib/import/mempcpy.c: Update.
2305         * gnulib/import/memrchr.c: Update.
2306         * gnulib/import/mkdir.c: Update.
2307         * gnulib/import/mkstemp.c: Update.
2308         * gnulib/import/msvc-inval.c: Update.
2309         * gnulib/import/msvc-inval.h: Update.
2310         * gnulib/import/msvc-nothrow.c: Update.
2311         * gnulib/import/msvc-nothrow.h: Update.
2312         * gnulib/import/open.c: Update.
2313         * gnulib/import/openat-die.c: Update.
2314         * gnulib/import/openat-priv.h: Update.
2315         * gnulib/import/openat-proc.c: Update.
2316         * gnulib/import/openat.c: Update.
2317         * gnulib/import/openat.h: Update.
2318         * gnulib/import/opendir.c: Update.
2319         * gnulib/import/pathmax.h: Update.
2320         * gnulib/import/pipe-safer.c: Update.
2321         * gnulib/import/rawmemchr.c: Update.
2322         * gnulib/import/readdir.c: Update.
2323         * gnulib/import/readlink.c: Update.
2324         * gnulib/import/realloc.c: Update.
2325         * gnulib/import/ref-add.sin: Update.
2326         * gnulib/import/ref-del.sin: Update.
2327         * gnulib/import/rename.c: Update.
2328         * gnulib/import/rewinddir.c: Update.
2329         * gnulib/import/rmdir.c: Update.
2330         * gnulib/import/same-inode.h: Update.
2331         * gnulib/import/save-cwd.c: Update.
2332         * gnulib/import/save-cwd.h: Update.
2333         * gnulib/import/scratch_buffer.h: Update.
2334         * gnulib/import/secure_getenv.c: Update.
2335         * gnulib/import/setenv.c: Update.
2336         * gnulib/import/signal.in.h: Update.
2337         * gnulib/import/stat-time.c: Update.
2338         * gnulib/import/stat-time.h: Update.
2339         * gnulib/import/stat-w32.c: Update.
2340         * gnulib/import/stat-w32.h: Update.
2341         * gnulib/import/stat.c: Update.
2342         * gnulib/import/stdbool.in.h: Update.
2343         * gnulib/import/stddef.in.h: Update.
2344         * gnulib/import/stdint.in.h: Update.
2345         * gnulib/import/stdio.in.h: Update.
2346         * gnulib/import/stdlib.in.h: Update.
2347         * gnulib/import/str-two-way.h: Update.
2348         * gnulib/import/strchrnul.c: Update.
2349         * gnulib/import/strdup.c: Update.
2350         * gnulib/import/streq.h: Update.
2351         * gnulib/import/strerror-override.c: Update.
2352         * gnulib/import/strerror-override.h: Update.
2353         * gnulib/import/strerror.c: Update.
2354         * gnulib/import/string.in.h: Update.
2355         * gnulib/import/stripslash.c: Update.
2356         * gnulib/import/strnlen1.c: Update.
2357         * gnulib/import/strnlen1.h: Update.
2358         * gnulib/import/strstr.c: Update.
2359         * gnulib/import/strtok_r.c: Update.
2360         * gnulib/import/sys_stat.in.h: Update.
2361         * gnulib/import/sys_time.in.h: Update.
2362         * gnulib/import/sys_types.in.h: Update.
2363         * gnulib/import/tempname.c: Update.
2364         * gnulib/import/tempname.h: Update.
2365         * gnulib/import/time.in.h: Update.
2366         * gnulib/import/unistd--.h: Update.
2367         * gnulib/import/unistd-safer.h: Update.
2368         * gnulib/import/unistd.in.h: Update.
2369         * gnulib/import/unsetenv.c: Update.
2370         * gnulib/import/verify.h: Update.
2371         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2372         * gnulib/import/wchar.in.h: Update.
2373         * gnulib/import/wctype.in.h: Update.
2374         * gnulib/import/xalloc-oversized.h: Update.
2375         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2376         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2377
2378 2018-08-16  Gary Benson <gbenson@redhat.com>
2379
2380         PR gdb/13000:
2381         * gdb/main.c (captured_main_1): Exit with nonzero status
2382         in batch mode if the last command to be executed failed.
2383         * NEWS: Mention the above.
2384
2385 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
2386
2387         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
2388         end of warning message.
2389
2390 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2391
2392         PR gdb/22943:
2393         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
2394         (aarch64_extract_return_value): Use
2395         aapcs_is_vfp_call_or_return_candidate.
2396         (aarch64_return_in_memory): Likewise.
2397         (aarch64_store_return_value): Likewise.
2398
2399 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2400
2401         * aarch64-tdep.c
2402         (aapcs_is_vfp_call_or_return_candidate): Make static
2403         (pass_in_v_or_stack): Remove function.
2404         (pass_in_v_vfp_candidate): New function.
2405         (aarch64_push_dummy_call): Check for float register candidates.
2406
2407 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2408
2409         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
2410         (aapcs_is_vfp_call_or_return_candidate_1): New function.
2411         (aapcs_is_vfp_call_or_return_candidate): Likewise.
2412
2413 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
2414
2415         PR build/23399
2416         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
2417         (struct ipa_sym_addresses): Rename to...
2418         (struct ipa_sym_addresses_common): ... this.
2419         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
2420
2421 2018-08-28  Tom Tromey  <tom@tromey.com>
2422
2423         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2424         (token_fifo): Now a std::vector.
2425         (yylex, c_parse): Update.
2426         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2427         (token_fifo): Now a std::vector.
2428         (yylex, d_parse): Update.
2429         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2430         (token_fifo): Now a std::vector.
2431         (yylex, go_parse): Update.
2432
2433 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
2434
2435         * parser-defs.h (struct type_stack) <elements>: Change type to
2436         std::vector<union type_stack_elt>.
2437         <depth, size>: Remove.
2438         * parse.c (parse_exp_in_context_1): Adjust.
2439         (type_stack_reserve): Remove.
2440         (check_type_stack_depth): Remove.
2441         (insert_into_type_stack): Adjust to std::vector.
2442         (insert_type): Likewise.
2443         (push_type): Likewise.
2444         (push_type_int): Likewise.
2445         (insert_type_address_space): Likewise.
2446         (pop_type): Likewise.
2447         (pop_type_int): Likewise.
2448         (pop_typelist): Likewise.
2449         (pop_type_stack): Likewise.
2450         (append_type_stack): Likewise.
2451         (push_type_stack): Likewise.
2452         (get_type_stack): Likewise.
2453         (type_stack_cleanup): Likewise.
2454         (push_typelist): Likewise.
2455         (follow_types): Likewise.
2456         (_initialize_parse): Likewise.
2457
2458 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
2459
2460         * NEWS: Mention csky target.
2461
2462 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
2463             Hafiz Abid Qadeer  <abidh@codesourcery.com>
2464             Don Breazeal  <donb@codesourcery.com>
2465
2466         * csky-linux-tdep.c: New file.
2467         * csky-tdep.c: Likewise.
2468         * csky-tdep.h: Likewise.
2469         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
2470         csky-tdep.o.
2471         (HFILES_NO_SRCDIR): Add csky-tdep.h.
2472         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
2473         * configure.tgt: Add csky support.
2474
2475 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
2476
2477         * python/py-framefilter.c (py_print_frame): Print frame architecture
2478         when printing on an MI output.
2479
2480 2018-08-27  Tom Tromey  <tom@tromey.com>
2481
2482         PR build/23087:
2483         * configure: Rebuild.
2484         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
2485
2486 2018-08-27  Tom Tromey  <tom@tromey.com>
2487
2488         * aarch64-linux-tdep.c
2489         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
2490         casts to int.
2491
2492 2018-08-27  Tom Tromey  <tom@tromey.com>
2493
2494         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
2495         unsigned.
2496         (ppc64_standard_linkage1, ppc64_standard_linkage2)
2497         (ppc64_standard_linkage3, ppc64_standard_linkage4)
2498         (ppc64_standard_linkage5, ppc64_standard_linkage6)
2499         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
2500         unsigned.
2501
2502 2018-08-27  Tom Tromey  <tom@tromey.com>
2503
2504         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
2505         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
2506
2507 2018-08-27  Tom Tromey  <tom@tromey.com>
2508
2509         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
2510         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
2511         ULONGEST_MAX.
2512         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
2513         ULONGEST_MAX.
2514         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
2515         ULONGEST_MAX.
2516         * sparc-linux-tdep.c (sparc32_linux_sigframe)
2517         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
2518         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
2519         ULONGEST_MAX.
2520         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
2521         (ppc64_linux_sigaction_tramp_frame)
2522         (ppc32_linux_sighandler_tramp_frame)
2523         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2524         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
2525         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
2526         * mn10300-linux-tdep.c (am33_linux_sigframe)
2527         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
2528         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
2529         * mips-linux-tdep.c (mips_linux_o32_sigframe)
2530         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
2531         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
2532         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
2533         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
2534         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
2535         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
2536         * microblaze-linux-tdep.c
2537         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2538         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
2539         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
2540         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
2541         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
2542         * common/common-types.h (ULONGEST_MAX): New define.
2543         (CORE_ADDR_MAX): Fix formatting.
2544         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
2545         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
2546         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
2547         (arm_linux_rt_sigreturn_tramp_frame)
2548         (arm_eabi_linux_sigreturn_tramp_frame)
2549         (arm_eabi_linux_rt_sigreturn_tramp_frame)
2550         (thumb2_eabi_linux_sigreturn_tramp_frame)
2551         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
2552         (arm_linux_restart_syscall_tramp_frame)
2553         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
2554         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
2555         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
2556         ULONGEST_MAX.
2557         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
2558
2559 2018-08-27  Tom Tromey  <tom@tromey.com>
2560
2561         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
2562         CORE_ADDR_MAX.
2563         * mips-tdep.c (mips_deal_with_atomic_sequence)
2564         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
2565         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
2566         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
2567         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
2568         CORE_ADDR_MAX.
2569         * aarch64-tdep.c (aarch64_software_single_step): Use
2570         CORE_ADDR_MAX.
2571
2572 2018-08-27  Tom Tromey  <tom@tromey.com>
2573
2574         * linespec.c (complete_linespec_component): Add cast to "char".
2575         * completer.c (completion_tracker::build_completion_result): Add
2576         cast to "char".
2577
2578 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2579
2580         * solist.h (struct solist, struct target_so_ops): Fix
2581         indentation.
2582
2583 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2584
2585         * ada-tasks.c (ada_task_info_s): Remove typedef.
2586         (DEF_VEC_O(ada_task_info_s)): Remove.
2587         (struct ada_tasks_inferior_data): Initialize fields.
2588         <task_list>: Make an std::vector.
2589         (get_ada_tasks_inferior_data): Allocate with new.
2590         (ada_get_task_number): Adjust.
2591         (get_task_number_from_id): Likewise.
2592         (valid_task_id): Likewise.
2593         (ada_get_task_info_from_ptid): Likewise.
2594         (iterate_over_live_ada_tasks): Likewise.
2595         (add_ada_task): Likewise.
2596         (read_known_tasks): Likewise.
2597         (ada_build_task_list): Likewise.
2598         (print_ada_task_info): Likewise.
2599         (info_task): Likewise.
2600         (task_command_1): Likewise.
2601
2602 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2603
2604         * ada-lang.c (add_angle_brackets): Return std::string.
2605
2606 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
2607
2608         * python/py-threadevent.c (py_get_event_thread): Initialize
2609         pythread.
2610
2611 2018-08-24  Pedro Alves  <palves@redhat.com>
2612
2613         * python/py-bpevent.c (create_breakpoint_event_object): Use
2614         copy-initialization.
2615         * python/py-continueevent.c (emit_continue_event): Use
2616         copy-initialization.
2617         * python/py-exitedevent.c (create_exited_event_object): Return a
2618         gdbpy_ref<>.
2619         (emit_exited_event): Use copy-initialization.
2620         * python/py-inferior.c (python_new_inferior)
2621         (python_inferior_deleted, add_thread_object): Use
2622         copy-initialization.
2623         * python/py-infevents.c (create_inferior_call_event_object)
2624         (create_register_changed_event_object)
2625         (create_memory_changed_event_object): Return a gdbpy_ref<>.
2626         (emit_inferior_call_event, emit_memory_changed_event)
2627         (emit_register_changed_event): Use copy-initialization.
2628         * python/py-newobjfileevent.c (create_new_objfile_event_object):
2629         Return a gdbpy_ref<>.
2630         (emit_new_objfile_event): Use copy-initialization.
2631         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
2632         (emit_clear_objfiles_event): Use copy-initialization.
2633         * python/py-signalevent.c (create_signal_event_object): Use
2634         copy-initialization.
2635         * python/py-threadevent.c (create_thread_event_object): Use
2636         copy-initialization.
2637
2638 2018-08-24  Pedro Alves  <palves@redhat.com>
2639             Simon Marchi  <simon.marchi@ericsson.com>
2640
2641         PR gdb/23379
2642         * python/py-continueevent.c: Include "gdbthread.h".
2643         (create_continue_event_object): Add intro comment.  Add 'ptid'
2644         parameter.  Use it to find thread to pass to
2645         create_thread_event_object.
2646         (emit_continue_event): Pass PTID down to
2647         create_continue_event_object.
2648         * python/py-event.h (py_get_event_thread): Declare.
2649         (create_thread_event_object): Remove default from 'thread'
2650         parameter.
2651         * python/py-stopevent.c (create_stop_event_object): Use
2652         py_get_event_thread.
2653         * python/py-threadevent.c (get_event_thread): Rename to ...
2654         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
2655         and use it to find the thread.
2656         (create_thread_event_object): Assert that THREAD isn't null.
2657         Don't find the event thread here.
2658
2659 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
2660
2661         * block.h (blockrange, blockranges): New struct declarations.
2662         (struct block): Add new field named `ranges'.
2663         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
2664         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
2665         macros for accessing ranges in struct block.
2666         (make_blockranges): New declaration.
2667         block.c (make_blockranges): New function.
2668         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
2669         for block.
2670         * symtab.h (find_pc_partial_function): Add new parameter `block'.
2671         * blockframe.c (cache_pc_function_block): New static global.
2672         (clear_pc_function_cache): Clear cache_pc_function_block.
2673         (find_pc_partial_function): Move comment to symtab.h.  Add
2674         support for non-contiguous blocks.
2675         * cli/cli-cmds.c (block.h): Include.
2676         (print_disassembly): Handle printing of non-contiguous blocks.
2677         (disassemble_current_function): Likewise.
2678         (disassemble_command): Likewise.
2679
2680         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
2681         BLOCK_START.
2682         * blockframe.c (get_pc_function_start): Likewise.
2683         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
2684         (gcc_symbol_address): Likewise.
2685         * compile/compile-object-run.c (compile_object_run): Likewise.
2686         * compile/compile.c (get_expr_block_and_pc): Likewise.
2687         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
2688         (func_addr_to_tail_call_list): Likewise.
2689         * findvar.c (default_read_var_value): Likewise.
2690         * inline-frame.c (inline_frame_this_id): Likewise.
2691         (skip-inline_frames): Likewise.
2692         * infcmd.c (until_next_command): Likewise.
2693         * linespec.c (convert_linespec_to_sals): Likewise.
2694         * parse.c (parse_exp_in_context_1): Likewise.
2695         * printcmd.c (build_address_symbolic): likewise.
2696         (info_address_command): Likewise.
2697         symtab.c (find_function_start_sal): Likewise.
2698         (skip_prologue_sal): Likewise.
2699         (find_function_alias_target): Likewise.
2700         (find_gnu_ifunc): Likewise.
2701         * stack.c (find_frame_funname): Likewise.
2702         * symtab.c (fixup_symbol_section): Likewise.
2703         (find_function_start_sal): Likewise.
2704         (skip_prologue_sal): Likewsie.
2705         (find_function_alias_target): Likewise.
2706         (find_gnu_ifunc): Likewise.
2707         * tracepoint.c (info_scope_command): Likewise.
2708         * value.c (value_fn_field): Likewise.
2709
2710         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
2711         in place of find_pc_partial_function.
2712         * blockframe.c (find_function_entry_range_from_pc): New function.
2713         * symtab.h (find_function_entry_range_from_pc): Declare and document.
2714         * objfiles.c (objfile_relocate1): Relocate start and end addresses
2715         for each range in a block.
2716
2717
2718 2018-08-23  Xavier Roirand  <roirand@adacore.com>
2719
2720         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
2721         incrementation.
2722
2723 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2724
2725         * solib-svr4.c (read_program_headers_from_bfd): Return
2726         gdb::optional<gdb::byte_vector>.
2727         (svr4_exec_displacement): Adjust.
2728
2729 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2730
2731         * solib-svr4.c (read_program_header): Return
2732         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
2733         (find_program_interpreter): Return
2734         gdb::optional<gdb::byte_vector>.
2735         (scan_dyntag_auxv): Adjust.
2736         (enable_break): Adjust.
2737         (svr4_exec_displacement): Adjust.
2738
2739 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2740
2741         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
2742         * inf-child.c (inf_child_target::terminal_save_inferior): New.
2743
2744 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2745
2746         * guile/scm-string.c (gdbscm_scm_from_printf): Use
2747         string_vprintf.
2748         * guile/scm-utils.c (gdbscm_printf): Likewise.
2749         * serial.c (serial_printf): Likewise.
2750         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
2751
2752 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
2753
2754         * stack.c (print_frame): Print frame architecture when printing on
2755         an MI output.
2756         * NEWS: Mention new "arch" attribute in frame output.
2757
2758 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
2759
2760         * arch/aarch64.h (aarch64_regnum): Update comment.
2761
2762 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
2763
2764         * NEWS: Add SVE to 8.2 section.
2765
2766 2018-08-21  Pedro Alves  <palves@redhat.com>
2767
2768         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
2769         out from gdbscm_parse_function_args.
2770         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
2771         gdbscm_parse_function_args_1.
2772
2773 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
2774
2775         PR gdb/17816
2776         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
2777         operator.
2778
2779 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
2780
2781         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
2782
2783 2018-08-19  Michael Spang  <spang@google.com>
2784
2785         PR gdb/11786
2786         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
2787         for PT_TLS segments.
2788
2789 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
2790
2791         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
2792         dwarf_variable_value.
2793         * dwarf2-frame.c (class dwarf_expr_executor):
2794         Add override for dwarf_variable_value.
2795         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
2796         (class symbol_needs_eval_context): Likewise.
2797         (indirect_synthetic_pointer): Add forward declaration.
2798         (sect_variable_value): New function.
2799         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
2800         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
2801         for DW_OP_GNU_variable_value.
2802
2803 2018-08-16  Tom Tromey  <tom@tromey.com>
2804
2805         * top.c (read_command_file): Update.
2806         (command_line_input): Remove "repeat" argument.
2807         * ada-lang.c (get_selections): Update.
2808         * linespec.c (decode_line_2): Update.
2809         * defs.h (command_line_input): Remove argument.
2810         * cli/cli-script.c (read_next_line): Update.
2811         * python/py-gdb-readline.c: Update.
2812
2813 2018-08-17  Tom Tromey  <tom@tromey.com>
2814
2815         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
2816         command_line_input.
2817
2818 2018-08-15  Tom Tromey  <tom@tromey.com>
2819
2820         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
2821
2822 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
2823
2824         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
2825         If used, use find_pc_partial_function to find address range
2826         to disassemble.
2827         * mi/mi-main.c (mi_cmd_list_features): Report
2828         "data-disassemble-a-option" feature.
2829         * NEWS: Mention new -data-disassemble option -a.
2830
2831 2018-08-13  Tom Tromey  <tom@tromey.com>
2832
2833         * common/common-defs.h (_FORTIFY_SOURCE): Define.
2834
2835 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
2836
2837         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
2838         (aarch64_linux_collect_sve_regset): Likewise.
2839         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
2840         * regcache.h (regcache_map_entry_size): New function.
2841
2842 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
2843
2844         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
2845         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
2846         (SVE_HEADER_VL_LENGTH): Likewise.
2847         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
2848         (SVE_HEADER_FLAGS_LENGTH): Likewise.
2849         (SVE_HEADER_RESERVED_LENGTH): Likewise.
2850         (SVE_HEADER_SIZE_OFFSET): Likewise.
2851         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
2852         (SVE_HEADER_VL_OFFSET): Likewise.
2853         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
2854         (SVE_HEADER_FLAGS_OFFSET): Likewise.
2855         (SVE_HEADER_RESERVED_OFFSET): Likewise.
2856         (SVE_HEADER_SIZE): Likewise.
2857         (aarch64_linux_core_read_vq): Add function.
2858         (aarch64_linux_core_read_description): Check for SVE section.
2859
2860 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
2861
2862         * aarch64-fbsd-tdep.c
2863         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
2864         collect_size.
2865         * aarch64-linux-tdep.c
2866         (aarch64_linux_iterate_over_regset_sections): Likewise.
2867         * alpha-linux-tdep.c
2868         (alpha_linux_iterate_over_regset_sections):
2869         * alpha-nbsd-tdep.c
2870         (alphanbsd_iterate_over_regset_sections): Likewise.
2871         * amd64-fbsd-tdep.c
2872         (amd64fbsd_iterate_over_regset_sections): Likewise.
2873         * amd64-linux-tdep.c
2874         (amd64_linux_iterate_over_regset_sections): Likewise.
2875         * arm-bsd-tdep.c
2876         (armbsd_iterate_over_regset_sections): Likewise.
2877         * arm-fbsd-tdep.c
2878         (arm_fbsd_iterate_over_regset_sections): Likewise.
2879         * arm-linux-tdep.c
2880         (arm_linux_iterate_over_regset_sections): Likewise.
2881         * corelow.c (get_core_registers_cb): Likewise.
2882         (core_target::fetch_registers): Likewise.
2883         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
2884         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
2885         * gdbarch.h (void): Regenerate.
2886         * gdbarch.sh: Add supply_size and collect_size.
2887         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
2888         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
2889         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
2890         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
2891         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
2892         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
2893         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
2894         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
2895         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
2896         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
2897         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
2898         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
2899         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
2900         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
2901         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
2902         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
2903         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
2904         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
2905         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
2906         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
2907         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
2908         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
2909         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
2910         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
2911         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
2912         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
2913         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
2914         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
2915         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
2916         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
2917
2918 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
2919
2920         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
2921         with string_printf.
2922
2923 2018-08-10  Keith Seitz  <keiths@redhat.com>
2924
2925         * compile/compile-c-support.c (add_code_header, add_code_footer):
2926         Move into policy class.
2927         (c_push_user_expression, pop_user_expression_nop)
2928         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
2929         (compile_program): New host class.
2930         (c_compile_program): New typedef.
2931         (c_compute_porgram): Use c_compile_program.
2932
2933 2018-08-10  Keith Seitz  <keiths@redhat.com>
2934
2935         * compile/compile-internal.h (compile_instance::~compile_instance):
2936         Remove calls to htab_delete.
2937         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
2938         * compile.c (compile_instance::compile_instance): Initialize
2939         htab unique pointers.
2940         (compile_instance::get_cached_type, compile_instance::insert_type)
2941         (compile_instance::error_symbol_once): Update for unique_ptr.
2942
2943 2018-08-10  Keith Seitz  <keiths@redhat.com>
2944
2945         * compile/compile-c-symbols.c (struct symbol_error)
2946         (hash_symbol_error, eq_symbol_error, del_symbol_error)
2947         (compile_instance::insert_symbol_error)
2948         (compile_instance::error_symbol_once): Move to ...
2949         * compile/compile.c: ... here.
2950
2951 2018-08-10  Keith Seitz  <keiths@redhat.com>
2952
2953         * compile/compile-c-support.c (c_get_compile_context): Use `new'
2954         instead of `new_compile_instance'.
2955         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
2956         Update description.
2957         If the symbol error map is not initialized, create it.
2958         (generate_c_for_for_one_symbol): Do not check/initialize
2959         the symbol error map.
2960         * compile/compile-c-types.c (compile_c_instance): Make a class.
2961         Update all callers.
2962         (compile_instance::compile_instance): Initialize the type cache.
2963         (get_cached_type): New function.
2964         (insert_type): Update description.
2965         (compile_c_instance::m_default_cflags): Define.
2966         (convert_type): Update description.  Use get_cached_type.
2967         (delete_instance): Moved to destructor.
2968         (new_compile_instance): Moved to constructor.
2969         * compile/compile-c.h (compile_c_instance): Make class inheriting
2970         from compile_instance.
2971         <base>: Remove field.
2972         <type_map, symbol_err_map>: Move to base class.
2973         <c_plugin>: Rename to `m_plugin' and remove pointer type.
2974         * compile/compile-internal.h (compile_instance): Make class.
2975         <type_map_t, symbol_err_map_t>: Define.
2976         <fe>: Rename to `m_gcc_fe'.
2977         <scope, block, gcc_target_options>: Add `m_' prefix.
2978         <m_type_map, m_symbol_err_map>: New fields, moved from
2979         compile_c_instance.
2980         <destroy>: Remove.
2981         (convert_type, new_compile_instance): Remove.
2982         * compile/compile.c (cleanup_compile_instance): Remove.
2983         (compile_to_object): Use unique_ptr to eliminate cleanups.
2984         (compile_instance::set_print_callback, compile_instance::version)
2985         (compile_instance::set_verbose)
2986         (compile_instance::set_driver_filename)
2987         (compile_instance::set_triplet_regexp)
2988         (compile_instance::set_arguments)
2989         (compile_instance::set_source_file)
2990         (compile_instance::compile): Define.
2991
2992 2018-08-10  Keith Seitz  <keiths@redhat.com>
2993
2994         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
2995         * compile/compile-c-types.c: Define GCC_METHODN macros and include
2996         gcc-c-fe.def to define C plugin.
2997         (delete_instance): Delete `c_plugin'.
2998         (new_compile_instance): Initialize `c_plugin'.
2999         * compile/compile-c.h: Include gcc_c_plugin.h.
3000         (struct compile_c_instance) <c_plugin>: New member.
3001         * gcc-c-plugin.h: New file.
3002         Update all callers with API change.
3003
3004 2018-08-10  Keith Seitz  <keiths@redhat.com>
3005
3006         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
3007         (HFILES_NO_SRCDIR): ... to here.
3008         Add compile-internal.h and compile-c.h.
3009         * compile/compile-c-support.c: Include compile-c.h.
3010         * compile/compile-c-symbols.c: Include compile-c.h.
3011         (generate_c_for_variable_locations): Update comment.
3012         * compile/compile-c-types.c: Include compile-c.h.
3013         * compile/compile-c.h: New file -- moved C language declarations
3014         from other files here.
3015         * compile/compile-internal.h: Do not include hashtab.h or
3016         common/enum-flags.h.
3017         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
3018         (gcc_convert_symbol, gcc_symbol_address)
3019         (generate_c_for_variable_locations, c_get_mode_for_size)
3020         (c_get_range_decl_name): Definitions moved to compile-c.h.
3021         * compile/compile-loc2c.c: Include compile-c.h.
3022
3023 2018-08-10  Keith Seitz  <keiths@redhat.com>
3024
3025         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
3026         (c_symbol_substitution_name): ... this.
3027         Update all callers.
3028
3029 2018-08-10  Keith Seitz  <keiths@redhat.com>
3030
3031         * compile/compile-c-support.c (c_compute_program): Use
3032         unique_xmalloc_ptr to eliminate cleanup.
3033         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
3034         Return a unique_xmalloc_ptr and eliminate cleanup.
3035         * compile/compile-internal.h (generate_c_for_variable_locations):
3036         Return unique_xmalloc_ptr and update description.
3037
3038 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
3039
3040         * corelow.c (core_target::get_core_register_section): Rename
3041         min_size to section_min_size.
3042
3043 2018-08-09  Jim Wilson  <jimw@sifive.com>
3044
3045         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
3046         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
3047         * NEWS: Mention new GNU/Linux RISC-V target.
3048         * configure.host: Add riscv*-*-linux*.
3049         * configure.nat: Add riscv*.
3050         * configure.tgt: Add riscv*-*-linux*.
3051         * riscv-linux-nat.c: New file.
3052         * riscv-linux-tdep.c: New file.
3053
3054 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3055
3056         * infrun.c (resume): Make static, add forward declaration.
3057         (proceed): Update header comment.
3058         * infrun.h (resume): Delete declaration.
3059
3060 2018-08-09  Tom Tromey  <tom@tromey.com>
3061
3062         * riscv-tdep.h: Minor formatting fixes.
3063
3064 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
3065
3066         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
3067         * dwarf-index-cache.c (create_dir_and_check): Likewise.
3068         (test_mkdir_recursive): Likewise.
3069         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
3070
3071 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3072
3073         * valarith.c (value_subscripted_rvalue): If an array is not in
3074         memory, and we don't know the upper bound, then we can't know that
3075         the requested element exists or not.
3076
3077 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
3078
3079         * target.c (str_comma_list_concat_elem): Fix typo in comment.
3080         (target_options_to_string): Add comment.
3081
3082 2018-08-08  Tom Tromey  <tom@tromey.com>
3083
3084         * unittests/scoped_mmap-selftests.c: Check result of "write".
3085
3086 2018-08-08  Jim Wilson  <jimw@sifive.com>
3087
3088         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
3089         (decode_register_index_short): New.
3090         (decode_j_type_insn, decode_cj_type_insn): New.
3091         (decode_b_type_insn, decode_cb_type_insn): New.
3092         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
3093         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
3094         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
3095         is_c_sw_insn instead of is_sw_insn.
3096         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
3097         (riscv_software_single_step): New.
3098         * riscv-tdep.h (riscv_software_single_step): Declare.
3099
3100         * riscv-tdep.c (riscv_isa_xlen): Drop static.
3101         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
3102
3103 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
3104
3105         PR gdb/18050:
3106         * target.c (dispose_inferior): Don't dispose of inferiors that are
3107         already killed.
3108
3109 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
3110
3111         * remote.c (remote_target::download_tracepoint): Change char* to
3112         const char*.
3113
3114 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
3115
3116         * target.h (target_options_to_string): Return an std::string.
3117         * target.c (str_comma_list_concat_elem): Return void, use
3118         std::string.
3119         (do_option): Likewise.
3120         (target_options_to_string): Return an std::string.
3121         * linux-nat.c (linux_nat_target::wait): Adjust.
3122         * target-debug.h (target_debug_print_options): Adjust.
3123
3124 2018-08-07  Tom Tromey  <tom@tromey.com>
3125
3126         * Makefile.in (CPPFLAGS): New variable.
3127         (INTERNAL_CPPFLAGS): Use it.
3128
3129 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3130
3131         * NEWS: Mention the index cache.
3132
3133 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3134
3135         * common/pathstuff.h (get_standard_cache_dir): New.
3136         * common/pathstuff.c (get_standard_cache_dir): New.
3137         * build-id.h (build_id_to_string): New.
3138         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
3139         DEBUG_STR_SUFFIX): Move to here.
3140         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
3141         DEBUG_STR_SUFFIX): Move from there.
3142         (write_psymtabs_to_index): Make non-static, add basename
3143         parameter.  Write to temporary files, rename when done.
3144         (save_gdb_index_command): Adjust call to
3145         write_psymtabs_to_index.
3146         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
3147         field.
3148         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
3149         (get_gdb_index_contents_from_cache): New.
3150         (get_gdb_index_contents_from_cache_dwz): New.
3151         (dwarf2_initialize_objfile): Read index from cache.
3152         (dwarf2_build_psymtabs): Save to index.
3153         * dwarf-index-cache.h: New file.
3154         * dwarf-index-cache.c: New file.
3155         * dwarf-index-write.h: New file.
3156
3157 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3158
3159         * gnulib/aclocal.m4: Re-generate.
3160         * gnulib/config.in: Re-generate.
3161         * gnulib/configure: Re-generate.
3162         * gnulib/import/Makefile.am: Re-generate.
3163         * gnulib/import/Makefile.in: Re-generate.
3164         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3165         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3166         * gnulib/import/m4/mkdir.m4: New file.
3167         * gnulib/import/mkdir.c: New file.
3168         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
3169         module.
3170
3171 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3172
3173         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
3174         * common/scoped_mmap.c: New file.
3175         * common/scoped_mmap.h (destroy): New method.
3176         (~scoped_mmap, reset): Use destroy.
3177         (scoped_mmap): New move constructor.
3178         (mmap_file): New declaration.
3179         * unittests/scoped_mmap-selftests.c (test_normal,
3180         test_invalid_filename, run_tests): New functions.
3181         (_initialize_scoped_mmap_selftests): Register selftest.
3182
3183 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3184
3185         * dwarf2read.c (read_gdb_index_from_section): Rename to...
3186         (read_gdb_index_from_buffer): ... this.  Remove section
3187         parameter, add buffer parameter.
3188         (get_gdb_index_contents_ftype,
3189         get_gdb_index_contents_dwz_ftype): New typedefs.
3190         (dwarf2_read_gdb_index): Add callback parameters to get the
3191         index contents.
3192         (get_gdb_index_contents_from_section): New.
3193         (dwarf2_initialize_objfile): Update call to
3194         dwarf2_read_gdb_index.
3195
3196 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3197
3198         * common/filestuff.h (gdb_fopen_cloexec): New overload.
3199         (gdb_open_cloexec): Likewise.
3200         * nat/linux-osdata.c (command_from_pid): Use string_printf.
3201         (commandline_from_pid): Likewise.
3202         (linux_xfer_osdata_threads): Likewise.
3203         (linux_xfer_osdata_fds): Likewise.
3204         * ada-lang.c (is_package_name): Likewise.
3205         * auxv.c (procfs_xfer_auxv): Likewise.
3206         * breakpoint.c (print_one_breakpoint_location): Use
3207         uiout::field_fmt.
3208         (print_one_catch_solib): Use string_printf.
3209         * coff-pe-read.c (add_pe_exported_sym): Likewise.
3210         (add_pe_forwarded_sym): Likewise.
3211         * dwarf2read.c (create_type_unit_group): Likewise.
3212         (build_error_marker_type): Likewise.
3213         * infcall.c (get_function_name): Likewise.
3214         * valprint.c (print_converted_chars_to_obstack): Likewise.
3215         * xtensa-tdep.c (xtensa_register_type): Likewise.
3216
3217 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
3218
3219         * remote.c (remote_target::download_tracepoint): Fix format
3220         string errors.
3221
3222 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3223
3224         * tracefile.c: Include common/byte-vector.h.
3225         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
3226         with trace_regblock_size if needed.  Update uses of buf.
3227
3228 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3229
3230         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
3231         std::vector<unsigned char>.
3232         * tracepoint.c (collection_list::collection_list): Remove
3233         m_regs_mask initializer from initializer list.  Resize
3234         m_regs_mask using the largest remote register number.
3235         (collection_list::add_remote_register): Remove size check on
3236         m_regs_mask.  Use at to access element.
3237         (collection_list::stringify): Change type of temp_buf to
3238         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
3239         stringify the register mask.  Use pack_hex_byte for the register
3240         mask.
3241
3242 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3243
3244         * tracepoint.h (class collection_list) <add_register>: Remove.
3245         <add_remote_register, add_ax_registers, add_local_register>:
3246         Declare.
3247         <add_memrange>: Add scope parameter.
3248         * tracepoint.c (encode_actions_1): Likewise.
3249         (collection_list::add_register): Rename to ...
3250         (collection_list::add_remote_register): ... this.  Update
3251         comment.
3252         (collection_list::add_ax_registers, add_local_register): New
3253         methods.
3254         (collection_list::add_memrange): Add scope parameter.  Call
3255         add_local_register instead of add_register.
3256         (finalize_tracepoint_aexpr): New function.
3257         (collection_list::collect_symbol): Update calls to add_memrange.
3258         Call add_local_register instead of add_register.  Call
3259         add_ax_registers.  Call finalize_tracepoint_aexpr.
3260         (encode_actions_1): Get remote regnos for $reg action.  Call
3261         add_remote_register, add_ax_registers, and add_local_register.
3262         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
3263         (validate_actionline): Call finalize_tracepoint_aexpr.
3264
3265 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3266
3267         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
3268         Replace array buf with gdb::char_vector buf, of size
3269         get_remote_packet_size ().  Replace references to buf and
3270         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
3271         and xsnprintf with snprintf.  Raise errors if the buffer is too
3272         small.
3273
3274 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3275
3276         * remote.c (remote_target::download_tracepoint): Fix the has_more
3277         predicate in the QTDP action list iteration.
3278
3279 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3280
3281         * remote.c (remote_target::download_tracepoint): Fix indentation
3282         in for block.
3283
3284 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3285
3286         * proc-api.c (_initialize_proc_api): Remove c, unused.
3287         * procfs.c (procfs_init_inferior): Remove signals, unused.
3288         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
3289         unused.
3290
3291 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
3292             Andrew Burgess  <andrew.burgess@embecosm.com>
3293
3294         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
3295         'W_STOPCODE (0)' as this could be ambiguous.
3296
3297 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
3298
3299         * ser-tcp.c (net_open): Fix thinko when deciding whether to
3300         disable TCP's Nagle algorithm (use "ai_protocol" instead of
3301         "ai_socktype").
3302
3303 2018-08-02  Tom Tromey  <tom@tromey.com>
3304
3305         PR symtab/16842.
3306         * dwarf2read.c (read_func_scope): Set symtab on template parameter
3307         symbols.
3308         (process_structure_scope): Likewise.
3309
3310 2018-08-02  Xavier Roirand  <roirand@adacore.com>
3311
3312         PR gdb/22629:
3313         * darwin-nat.c (darwin_kill_inferior): Fix handling of
3314         kill inferior.
3315
3316 2018-08-02  Tom Tromey  <tom@tromey.com>
3317
3318         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
3319         (darwin_suspend_inferior, darwin_resume_inferior)
3320         (darwin_decode_notify_message, darwin_resume_inferior_threads)
3321         (darwin_check_new_threads): Check result of get_darwin_inferior.
3322
3323 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
3324
3325         GDB 8.1.1 released.
3326
3327 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
3328
3329         * varobj.c (varobj_get_path_expr_parent): Report an error if
3330         parent is a dynamic varobj.
3331
3332 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3333
3334         * gnulib/aclocal.m4: Re-generate.
3335         * gnulib/config.in: Re-generate.
3336         * gnulib/configure: Re-generate.
3337         * gnulib/import/Makefile.in: Re-generate.
3338         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3339         * gnulib/import/m4/onceonly.m4: Re-generate.
3340
3341 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3342
3343         * target-descriptions.c (struct xml_test_tdesc): New.
3344         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
3345         (record_xml_tdesc): Update.
3346         (maintenance_check_xml_descriptions): Update.
3347         * target-descriptions.h (record_xml_tdesc): Update comment.
3348
3349 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3350
3351         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
3352         checking array bounds are defined.
3353
3354 2018-07-30  Tom Tromey  <tom@tromey.com>
3355
3356         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
3357         irreflexivity violation.
3358
3359 2018-07-30  Tom Tromey  <tom@tromey.com>
3360
3361         * cli/cli-decode.c (lookup_cmd): Remove lint code.
3362         * value.c (unpack_long): Remove lint code.
3363         * valops.c (value_ind): Remove lint code.
3364         * valarith.c (value_x_binop, value_x_unop, value_equal)
3365         (value_pos): Remove lint code.
3366
3367 2018-07-28  Tom de Vries  <tdevries@suse.de>
3368
3369         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
3370         with undefined upper bound as <optimized out>.
3371
3372 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
3373
3374         * gcore.in: Rename variable "name" to "prefix".  Expand
3375         "usage" text.
3376
3377 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
3378
3379         * windows-nat.c (windows_nat_target::create_inferior): Update to
3380         call close() in global namespace.
3381
3382 2018-07-26  Tom Tromey  <tom@tromey.com>
3383
3384         * dwarf-index-write.c (add_address_entry): Don't add objfile
3385         offsets.
3386         * dbxread.c (find_stab_function): Rename from
3387         find_stab_function_addr.  Return a bound_minimal_symbol.
3388         (read_dbx_symtab): Use raw_text_low, raw_text_high.
3389         Don't add objfile offsets.
3390         (end_psymtab): Use raw_text_low, raw_text_high,
3391         MSYMBOL_VALUE_RAW_ADDRESS.
3392         (read_ofile_symtab): Update.
3393         (process_one_symbol): Update.
3394         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
3395         offsets.
3396         (dw2_relocate): Remove.
3397         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
3398         searching addrmap.
3399         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
3400         Update.
3401         (process_psymtab_comp_unit_reader, add_partial_symbol)
3402         (add_partial_subprogram, dwarf2_ranges_read): Update.
3403         (load_partial_dies): Update.
3404         (add_address_entry): Don't add objfile offsets.
3405         (dwarf2_build_include_psymtabs): Update.
3406         (create_addrmap_from_aranges): Don't add objfile offsets.
3407         (dw2_find_pc_sect_compunit_symtab): Update.
3408         * mdebugread.c (parse_symbol): Don't add objfile offsets.
3409         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
3410         Update.
3411         (parse_partial_symbols): Don't add objfile offsets.  Use
3412         raw_text_low, raw_text_high.  Update.
3413         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
3414         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
3415         or call 'relocate' quick function.  Clear psymbol_map.
3416         * psympriv.h (struct partial_symbol) <address>: Add section
3417         offset.
3418         <set_unrelocated_address>: Rename from set_address.
3419         <raw_text_low, raw_text_high>: New methods.
3420         <text_low, text_high>: Add objfile parameter.
3421         (add_psymbol_to_bcache): Add 'section' parameter.  Call
3422         set_unrelocated_address.
3423         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3424         (find_pc_psymbol): Update.
3425         (fixup_psymbol_section, relocate_psymtabs): Remove.
3426         (dump_psymtab, psym_functions): Update.
3427         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
3428         parameter.
3429         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
3430         (start_psymtab_common): Update.
3431         * symfile-debug.c (debug_qf_relocate): Remove.
3432         (debug_sym_quick_functions): Update.
3433         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
3434         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
3435         Update.
3436
3437 2018-07-26  Tom Tromey  <tromey@redhat.com>
3438
3439         * dbxread.c (end_psymtab): Use text_high_valid and
3440         text_low_valid.
3441         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
3442         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
3443         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3444         Update comment.
3445         <text_low_valid, text_high_valid>: New fields.
3446         <set_text_low, set_text_high>: Update.
3447         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
3448
3449 2018-07-26  Tom Tromey  <tom@tromey.com>
3450
3451         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
3452         Update.
3453         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
3454         textlow and texthigh fields.
3455         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
3456         Update.
3457         * mdebugread.c (parse_lines, parse_partial_symbols)
3458         (psymtab_to_symtab_1): Update.
3459         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3460         Rename fields.  Update comment.  Now private.
3461         <text_low, text_high, set_text_low, set_text_high>: New methods.
3462         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3463         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
3464         (start_psymtab_common, maintenance_info_psymtabs)
3465         (maintenance_check_psymtabs): Update.
3466         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
3467         texthigh fields.
3468         (scan_xcoff_symtab): Update.
3469
3470 2018-07-26  Tom Tromey  <tromey@redhat.com>
3471
3472         * psympriv.h (struct partial_symbol) <unrelocated_address,
3473         address, set_address>: New methods.
3474         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
3475         (fixup_psymbol_section, relocate_psymtabs): Update.
3476         (print_partial_symbols): Add 'objfile' parameter.  Update.
3477         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
3478         Update.
3479
3480 2018-07-26  Tom Tromey  <tom@tromey.com>
3481
3482         * dwarf-index-write.c (write_psymbols, debug_names::insert)
3483         (debug_names::write_psymbols): Update.
3484         * psympriv.h (struct partial_symbol): Derive from
3485         general_symbol_info.
3486         <obj_section>: New method.
3487         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
3488         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3489         (find_pc_sect_psymbol, fixup_psymbol_section)
3490         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
3491         (print_partial_symbols, recursively_search_psymtabs)
3492         (compare_psymbols, psymbol_hash, psymbol_compare)
3493         (add_psymbol_to_bcache, maintenance_check_psymtabs)
3494         (psymbol_name_matches, psym_fill_psymbol_map): Update.
3495
3496 2018-07-26  Tom Tromey  <tromey@redhat.com>
3497
3498         * dbxread.c (end_psymtab): Remove dead code.
3499
3500 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
3501
3502         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
3503         DWARF unwinders are disabled.
3504         * dwarf2-frame.c: Add dwarf2read.h include.
3505         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
3506         disabled.
3507         (dwarf2_frame_unwinders_enabled_p): Define.
3508         (show_dwarf_unwinders_enabled_p): New function.
3509         (_initialize_dwarf2_frame): Register switch to control DWARF
3510         unwinder use.
3511         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
3512         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
3513         (show_dwarf_cmdlist): Remove static keyword.
3514         * dwarf2read.h (set_dwarf_cmdlist): Declare.
3515         (show_dwarf_cmdlist): Declare.
3516         * NEWS: Document new feature.
3517
3518 2018-07-26  Tom de Vries  <tdevries@suse.de>
3519
3520         PR breakpoints/23366
3521         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
3522
3523 2018-07-26  Tom de Vries  <tdevries@suse.de>
3524
3525         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
3526         DW_AT_count can't be translated to a dynamic prop.
3527
3528 2018-07-25  Tom de Vries  <tdevries@suse.de>
3529
3530         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
3531         try/catch.
3532
3533 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
3534
3535         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
3536
3537 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
3538
3539         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
3540
3541 2018-07-24  Keith Seitz  <keiths@redhat.comt
3542
3543         PR symtab/23010
3544         * dwarf2read.c (dw2_add_symbol_to_list): New function.
3545         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
3546         instead of add_symbol_to_list.
3547         (read_file_scope): Call prepare_one_comp_unit before reading
3548         any other DIEs.
3549
3550 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
3551
3552         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
3553
3554 2018-07-24  Tom Tromey  <tom@tromey.com>
3555
3556         * utils.c (malloc, realloc, free): Don't declare.
3557         * configure, config.in: Rebuild.
3558         * configure.ac: Don't check for declarations of free, malloc, or
3559         realloc.
3560
3561 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3562
3563         * aarch64-linux-nat.c
3564         (aarch64_linux_nat_target::stopped_data_address): Remove unused
3565         variable.
3566         * arm-linux-nat.c (fetch_regs): Likewise.
3567         (store_regs): Likewise.
3568         (fetch_vfp_regs): Likewise.
3569         (store_vfp_regs): Likewise.
3570         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
3571         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
3572         (arm_linux_nat_target::insert_watchpoint): Likewise.
3573         (arm_linux_nat_target::remove_watchpoint): Likewise.
3574         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
3575         Likewise.
3576         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
3577         Likewise.
3578         * ppc-linux-nat.c (fetch_register): Likewise.
3579         (fetch_all_gp_regs): Likewise.
3580         (fetch_ppc_registers): Likewise.
3581         (store_all_gp_regs): Likewise.
3582         (store_ppc_registers): Likewise.
3583         (hwdebug_insert_point): Likewise.
3584         (can_use_watchpoint_cond_accel): Likewise.
3585         * remote-sim.c (gdb_os_write_stdout): Likewise.
3586
3587 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3588             Tom Tromey  <tom@tromey.com>
3589
3590         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
3591         test for it.
3592         * configure: Rebuild.
3593
3594 2018-07-22  Tom Tromey  <tom@tromey.com>
3595
3596         * regformats/regdat.sh: Define xmltarget_${name} inside
3597         #ifndef IN_PROCESS_AGENT.
3598
3599 2018-07-22  Tom Tromey  <tom@tromey.com>
3600
3601         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
3602
3603 2018-07-22  Tom Tromey  <tom@tromey.com>
3604
3605         * symfile.c (reread_symbols): Notify iter, not objfile.
3606
3607 2018-07-22  Tom Tromey  <tom@tromey.com>
3608
3609         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
3610         Use arch_ops.
3611         (ravenscar_thread_target::prepare_to_store): Likewise.
3612
3613 2018-07-22  Tom Tromey  <tom@tromey.com>
3614
3615         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
3616         unused variable.  Call value_fetch_lazy when needed.
3617         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
3618         Remove unused variable.  Call value_fetch_lazy when needed.
3619
3620 2018-07-22  Tom Tromey  <tom@tromey.com>
3621
3622         * m32c-tdep.c (mark_dma): Return void.
3623         (make_regs): Remove unused declarations.
3624
3625 2018-07-22  Tom Tromey  <tom@tromey.com>
3626
3627         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
3628         cmdscm_get_valid_command_smob_arg_unsafe for effect.
3629         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
3630         bkscm_get_valid_block_smob_arg_unsafe for effect.
3631
3632 2018-07-22  Tom Tromey  <tom@tromey.com>
3633
3634         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
3635         value_type.
3636
3637 2018-07-22  Tom Tromey  <tom@tromey.com>
3638
3639         * windows-nat.c (saved_context): Conditionally define.
3640         * remote.c (remote_target::remote_btrace_maybe_reopen):
3641         Conditionally declare "warned".
3642         * inflow.c (sigquit_ours): Conditionally define.
3643         (new_tty): Move "tty" declaration inside #if.
3644         * guile/guile.c (guile_datadir): Conditionally define.
3645         * charset.c (set_be_le_names): Move some declarations inside #if.
3646         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
3647         #if.
3648         (parse_xml_btrace_conf): Likewise.
3649
3650 2018-07-22  Tom Tromey  <tom@tromey.com>
3651
3652         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
3653
3654 2018-07-22  Tom Tromey  <tom@tromey.com>
3655
3656         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
3657         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
3658         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
3659         * buildsym-legacy.c (get_macro_table): Remove unused variable.
3660         * stack.c (frame_apply_level_command): Remove unused variable.
3661         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
3662         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
3663         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
3664         unused variable.
3665         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
3666         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
3667         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
3668         variable.
3669         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
3670         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
3671         variable.
3672         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
3673         Remove unused variable.
3674         * cli/cli-script.c (recurse_read_control_structure): Remove unused
3675         variable.
3676         * common/tdesc.c (print_xml_feature::visit): Remove unused
3677         variable.
3678         * compile/compile-object-load.c (store_regs): Remove unused
3679         variables.
3680         * complaints.c (clear_complaints): Remove unused variable.
3681         * corelow.c (core_target_open): Remove unused variable.
3682         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
3683         variable.
3684         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
3685         variable.
3686         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
3687         variable.
3688         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
3689         variable.
3690         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
3691         variable.
3692         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
3693         variable.
3694         * ia64-tdep.c (examine_prologue): Remove unused variable.
3695         * infcall.c (run_inferior_call): Remove unused variable.
3696         * inferior.c (exit_inferior): Remove unused variable.
3697         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
3698         * linespec.c (decode_line_2): Remove unused variable.
3699         * linux-nat.c (super_close): Remove.
3700         * linux-tdep.c (linux_info_proc): Remove unused variable.
3701         * mi/mi-main.c (mi_execute_command): Remove unused variable.
3702         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
3703         Remove unused variable.
3704         * parse.c (find_minsym_type_and_address): Remove unused variable.
3705         * printcmd.c (info_symbol_command, printf_floating): Remove unused
3706         variable.
3707         * python/py-breakpoint.c (bppy_set_commands): Remove unused
3708         variable.
3709         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
3710         variables.
3711         * record-btrace.c (record_btrace_target::store_registers): Remove
3712         unused variable.
3713         (cmd_show_record_btrace_cpu): Remove unused variable.
3714         * riscv-tdep.c (riscv_register_reggroup_p)
3715         (riscv_push_dummy_call, riscv_return_value): Remove unused
3716         variable.
3717         * rust-exp.y (literal): Remove unused variable.
3718         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
3719         unused variable.
3720         <STRUCTOP_ANONYMOUS>: Likewise.
3721         * s390-linux-tdep.c (s390_linux_init_abi_31)
3722         (s390_linux_init_abi_64): Remove unused variable.
3723         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
3724         (file_select_thread, net_windows_open, _initialize_ser_windows):
3725         Remove unused variables.
3726         * symtab.c (find_pc_sect_line): Remove unused variable.
3727         * target-memory.c (compute_garbled_blocks): Remove unused
3728         variable.
3729         (target_write_memory_blocks): Remove unused variable.
3730         * target.c (target_stack::unpush): Remove unused variables.
3731         * tracepoint.c (start_tracing, all_tracepoint_actions)
3732         (merge_uploaded_trace_state_variables)
3733         (print_one_static_tracepoint_marker): Remove unused variable.
3734         * unittests/basic_string_view/element_access/char/1.cc (test01):
3735         Remove unused variable.
3736         * windows-nat.c (windows_continue, windows_add_all_dlls)
3737         (do_initial_windows_stuff, windows_nat_target::create_inferior):
3738         Remove unused variables.
3739
3740 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
3741
3742         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
3743         attr_profile in HAVE_ELF.
3744         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
3745         HAVE_ELF.
3746
3747 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
3748
3749         * frame.c (frame_register_unwind): Change parameter name.
3750         (frame_unwind_register): Likewise.
3751         (frame_unwind_register_value): Likewise.
3752         (frame_unwind_register_signed): Likewise.
3753         (frame_unwind_register_unsigned): Likewise.
3754         * frame.h (frame_register_unwind): Likewise.
3755         (frame_unwind_register): Likewise.
3756         (frame_unwind_register_value): Likewise.
3757         (frame_unwind_register_signed): Likewise.
3758         (frame_unwind_register_unsigned): Likewise.
3759         (frame_unwind_arch): Likewise.
3760
3761 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
3762
3763         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
3764         ISA maintenance.
3765
3766 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
3767
3768         * mips-linux-nat.c (mips_linux_nat_target::read_description):
3769         Call `get_ptrace_pid' rather than extracting the ptrace PID by
3770         hand.
3771
3772 2018-07-20  Keith Seitz  <keiths@redhat.com>
3773
3774         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
3775         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
3776         m_compunit_symtab, m_language>: Add "m_" prefix.
3777         Update all uses.
3778         * buildsym.c: Update all uses.
3779
3780 2018-07-20  Tom Tromey  <tom@tromey.com>
3781
3782         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
3783         * buildsym.h (record_line_ftype): Remove typedef.
3784
3785 2018-07-20  Tom Tromey  <tom@tromey.com>
3786
3787         * buildsym-legacy.h (augment_type_symtab): Don't declare.
3788         (end_expandable_symtab): Likewise.
3789         (end_symtab_get_static_block): Likewise.
3790         (end_symtab_from_static_block): Likewise.
3791         * buildsym-legacy.c (augment_type_symtab): Remove.
3792         (end_expandable_symtab): Remove.
3793         (end_symtab_get_static_block): Remove.
3794         (end_symtab_from_static_block): Remove.
3795
3796 2018-07-20  Tom Tromey  <tom@tromey.com>
3797
3798         * dwarf2read.c: Include buildsym.h.
3799         (struct dwarf2_cu) <builder>: New method.
3800         (fixup_go_packaging): Update.
3801         (process_full_comp_unit, process_full_type_unit): Update.  Don't
3802         use scoped_free_pendings.
3803         (using_directives): Add "cu" parameter, remove "language".
3804         (read_import_statement, setup_type_unit_groups, )
3805         (read_func_scope, read_lexical_block_scope)
3806         (dwarf2_record_block_ranges, read_namespace): Update.
3807         (lnp_state_machine::lnp_state_machine): Add cu parameter.
3808         (lnp_state_machine::handle_end_sequence): Update.
3809         (class lnp_state_machine) <m_cu>: New member.
3810         <m_record_line_callback>: Remove.
3811         <m_currently_recording_lines>: New member.
3812         (lnp_state_machine::handle_set_file): Update.
3813         (noop_record_line): Remove.
3814         (dwarf_record_line_p): Add cu parameter.
3815         (dwarf_record_line_1, dwarf_finish_line): Likewise.
3816         (lnp_state_machine::record_line)
3817         (lnp_state_machine::lnp_state_machine)
3818         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
3819         (dwarf_decode_lines): Update.
3820         (dwarf2_start_subfile): Add cu parameter.
3821         (dwarf2_start_symtab, new_symbol): Update.
3822         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
3823         Remove dwarf2_per_objfile parameter.
3824         (dwarf_decode_macros): Update.
3825
3826 2018-07-20  Tom Tromey  <tom@tromey.com>
3827
3828         * stabsread.c (define_symbol): Update.
3829         * buildsym-legacy.h (get_buildsym_compunit): Declare.
3830         * dwarf2read.c (new_symbol): Update.
3831         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
3832         * cp-namespace.c: Include buildsym.h.
3833         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
3834         * buildsym-legacy.c (get_buildsym_compunit): New function.
3835
3836 2018-07-20  Tom Tromey  <tom@tromey.com>
3837
3838         * xcoffread.c: Include buildsym-legacy.h.
3839         * windows-nat.c: Include buildsym-legacy.h.
3840         * stabsread.c: Include buildsym-legacy.h.
3841         * mdebugread.c: Include buildsym-legacy.h.
3842         * buildsym-legacy.h: New file.
3843         * buildsym-legacy.c: New file, from buildsym.c.
3844         * go32-nat.c: Include buildsym-legacy.h.
3845         * dwarf2read.c: Include buildsym-legacy.h.
3846         * dbxread.c: Include buildsym-legacy.h.
3847         * cp-namespace.c: Include buildsym-legacy.h.
3848         * coffread.c: Include buildsym-legacy.h.
3849         * buildsym.h: Move some contents to buildsym-legacy.h.
3850         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
3851         buildsym-legacy.c.
3852         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
3853
3854 2018-07-20  Tom Tromey  <tom@tromey.com>
3855
3856         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
3857         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
3858         (buildsym_compunit::buildsym_compunit)
3859         (buildsym_compunit::~buildsym_compunit)
3860         (buildsym_compunit::get_macro_table): Define.
3861
3862 2018-07-20  Tom Tromey  <tom@tromey.com>
3863
3864         * buildsym.c (reset_symtab_globals): Remove.
3865         (buildsym_compunit::end_symtab_from_static_block): Update.
3866         (buildsym_compunit::augment_type_symtab): Update.
3867         (end_symtab_from_static_block): Call free_buildsym_compunit.
3868         (augment_type_symtab, end_symtab, end_expandable_symtab):
3869         Likewise.
3870
3871 2018-07-20  Tom Tromey  <tom@tromey.com>
3872
3873         * arch-utils.c: Do not include buildsym.h.
3874         * mipsread.c: Do not include buildsym.h.
3875         * machoread.c: Do not include buildsym.h.
3876         * elfread.c: Do not include buildsym.h.
3877
3878 2018-07-20  Tom Tromey  <tom@tromey.com>
3879
3880         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
3881         initialization.
3882         (buildsym_compunit): Add new constructor.
3883         (struct buildsym_compunit) <get_last_source_file, finish_block,
3884         record_block_range, start_subfile, patch_subfile_names,
3885         push_subfile, pop_subfile, record_line, get_compunit_symtab,
3886         set_last_source_start_addr, get_last_source_start_addr,
3887         get_local_using_directives, set_local_using_directives,
3888         get_global_using_directives, outermost_context_p,
3889         get_current_context_stack, get_context_stack_depth,
3890         get_current_subfile, get_local_symbols, get_file_symbols,
3891         get_global_symbols, record_debugformat, record_producer,
3892         push_context, pop_context, end_symtab_get_static_block,
3893         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
3894         New public methods.
3895         <record_pending_block, finish_block_internal, make_blockvector,
3896         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
3897         private methods.
3898         Update all users.
3899
3900 2018-05-22  Tom Tromey  <tom@tromey.com>
3901
3902         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
3903         parameter.
3904         (finish_block_internal): Update.
3905
3906 2018-07-20  Tom Tromey  <tom@tromey.com>
3907
3908         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
3909         parameter.
3910         (finish_block_internal): Update.
3911
3912 2018-07-20  Tom Tromey  <tom@tromey.com>
3913
3914         * buildsym.h (EXTERN): Don't define or undef.
3915         * buildsym.c (EXTERN): Don't define.
3916
3917 2018-07-20  Tom Tromey  <tom@tromey.com>
3918
3919         * buildsym.c: Remove TODO comment.
3920
3921 2018-07-20  Tom Tromey  <tom@tromey.com>
3922
3923         * coffread.c (coff_symtab_read): Update.
3924         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
3925         (xcoff_new_init): Update.
3926         * mipsread.c (mipscoff_new_init): Update.
3927         * mdebugread.c (mdebug_build_psymtabs): Update.
3928         * elfread.c (elf_new_init): Update.
3929         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
3930         Update.
3931         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
3932         (coffstab_build_psymtabs, elfstab_build_psymtabs)
3933         (stabsect_build_psymtabs): Update.
3934         * buildsym.h (buildsym_init): Don't declare.
3935         * buildsym.c: Update comment.
3936         (prepare_for_building): Remove.
3937         (start_symtab, restart_symtab): Update.
3938         (reset_symtab_globals): Update comment.
3939         (buildsym_init): Remove.
3940
3941 2018-07-20  Tom Tromey  <tom@tromey.com>
3942
3943         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
3944         * stabsread.c (patch_block_stabs, define_symbol, read_type)
3945         (read_enum_type, common_block_start, common_block_end)
3946         (cleanup_undefined_types_1, finish_global_stabs): Update.
3947         * mdebugread.c (psymtab_to_symtab_1): Update.
3948         * dwarf2read.c (fixup_go_packaging, read_func_scope)
3949         (read_lexical_block_scope, new_symbol): Update.
3950         * dbxread.c (process_one_symbol): Update.
3951         * coffread.c (coff_symtab_read, process_coff_symbol)
3952         (coff_read_enum_type): Update.
3953         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
3954         declare.
3955         (get_local_symbols, get_file_symbols, get_global_symbols): New
3956         functions.
3957         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
3958         m_global_symbols.
3959         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
3960         (~scoped_free_pendings): Update.
3961         (finish_block, prepare_for_building, reset_symtab_globals)
3962         (end_symtab_get_static_block, end_symtab_with_blockvector)
3963         (augment_type_symtab, push_context): Update.
3964         (get_local_symbols, get_file_symbols, get_global_symbols): New
3965         functions.
3966         (buildsym_init): Update.
3967
3968 2018-07-20  Tom Tromey  <tom@tromey.com>
3969
3970         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
3971         (process_full_type_unit): Likewise.
3972         (dwarf2_start_symtab): Set list_in_scope.
3973
3974 2018-07-20  Tom Tromey  <tom@tromey.com>
3975
3976         * dwarf2read.c (process_psymtab_comp_unit_reader)
3977         (build_type_psymtabs_reader): Do not set list_in_scope.
3978
3979 2018-07-20  Tom Tromey  <tom@tromey.com>
3980
3981         * buildsym.c (free_pendings): Remove.
3982         (add_symbol_to_list, scoped_free_pendings)
3983         (finish_block_internal, buildsym_init): Update.
3984
3985 2018-07-20  Tom Tromey  <tom@tromey.com>
3986
3987         * xcoffread.c (read_xcoff_symtab): Update.
3988         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
3989         Update.
3990         * dbxread.c (process_one_symbol): Update.
3991         * coffread.c (coff_symtab_read): Update.
3992         * buildsym.h (finish_block): Update.
3993         * buildsym.c (finish_block): Remove "listhead" argument.
3994         (end_symtab_get_static_block): Update.
3995
3996 2018-07-20  Tom Tromey  <tom@tromey.com>
3997
3998         * buildsym.h (class scoped_free_pendings): Remove constructor.
3999         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
4000         method.
4001         <m_pending_block_obstack, m_pending_blocks>: New members.
4002         (pending_block_obstack, pending_blocks): Remove.
4003         (scoped_free_pendings::scoped_free_pendings): Default.
4004         (~scoped_free_pendings): Update.
4005         (free_pending_blocks): Remove.
4006         (finish_block_internal, record_pending_block, make_blockvector)
4007         (end_symtab_get_static_block, augment_type_symtab, push_context)
4008         (buildsym_init): Update.
4009
4010 2018-07-20  Tom Tromey  <tom@tromey.com>
4011
4012         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
4013         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
4014         members.
4015         (pending_addrmap, pending_addrmap_obstack)
4016         (pending_addrmap_interesting): Remove.
4017         (scoped_free_pendings, record_block_range, make_blockvector)
4018         (prepare_for_building, reset_symtab_globals, buildsym_init):
4019         Update.
4020
4021 2018-07-20  Tom Tromey  <tom@tromey.com>
4022
4023         * xcoffread.c (process_linenos): Update.
4024         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
4025         * mdebugread.c (psymtab_to_symtab_1): Update.
4026         * dwarf2read.c (setup_type_unit_groups)
4027         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
4028         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
4029         * dbxread.c (process_one_symbol): Update.
4030         * coffread.c (coff_symtab_read, enter_linenos)
4031         (process_coff_symbol): Update.
4032         * buildsym.h (current_subfile): Don't declare.
4033         (get_current_subfile): Declare.
4034         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
4035         member.
4036         (start_subfile, free_buildsym_compunit, push_subfile)
4037         (prepare_for_building, start_symtab): Update.
4038         (get_current_subfile): New function.
4039
4040 2018-07-20  Tom Tromey  <tom@tromey.com>
4041
4042         * coffread.c (coff_symtab_read): Update.
4043         * xcoffread.c (read_xcoff_symtab): Update.
4044         * dwarf2read.c (new_symbol): Update.
4045         (read_func_scope, read_lexical_block_scope): Update.
4046         * dbxread.c (process_one_symbol): Update.
4047         * buildsym.h (context_stack, context_stack_depth): Don't declare.
4048         (outermost_context_p): Remove macro.
4049         (outermost_context_p, get_current_context_stack)
4050         (get_context_stack_depth): Declare.
4051         (pop_context): Return struct context_stack.
4052         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
4053         member.
4054         (context_stack_size): Remove.
4055         (INITIAL_CONTEXT_STACK_SIZE): Remove.
4056         (prepare_for_building, end_symtab_get_static_block)
4057         (augment_type_symtab, push_context): Update.
4058         (pop_context): Return struct context_stack.
4059         (outermost_context_p, get_current_context_stack)
4060         (get_context_stack_depth): New functions.
4061         (buildsym_init): Update.
4062
4063 2018-07-20  Tom Tromey  <tom@tromey.com>
4064
4065         * rust-exp.y: Now a pure parser.  Update all rules.
4066         (%union): Move earlier.
4067         (current_parser, work_obstack): Remove globals.
4068         (rust_parser, ~rust_parser): Update.
4069         (class rust_parser) <copy_name, concat3, crate_name, super_name,
4070         lex_character, lex_number, lex_string, lex_identifier,
4071         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
4072         convert_name, convert_params_to_expression,
4073         convert_ast_to_expression, ast_basic_type, ast_operation,
4074         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
4075         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
4076         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
4077         ast_array_type, ast_slice_type, ast_reference_type,
4078         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
4079         (rust_parse): Update.
4080         (rustyyerror, rustyylex): Add parser parameter.
4081         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
4082         (rust_lex_stringish_test, rust_lex_test_sequence)
4083         (rust_lex_test_trailing_dot, rust_lex_test_completion)
4084         (rust_lex_test_push_back, rust_lex_tests): Update.
4085
4086 2018-07-19  Pedro Alves  <palves@redhat.com>
4087
4088         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
4089         gdb::unique_xmalloc_ptr.
4090         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
4091         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
4092         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
4093         copy-initialization.
4094         * guile/scm-pretty-print.c (ppscm_print_children): Use
4095         gdb::unique_xmalloc_ptr instead of cleanups.
4096         (gdbscm_apply_val_pretty_printer): Remove cleanups.
4097         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
4098         gdb::unique_xmalloc_ptr.
4099         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4100         Adjust to use gdb::unique_xmalloc_ptr.
4101         * guile/scm-utils.c (extract_arg): Adjust.
4102         * guile/scm-value.c (gdbscm_value_field): Adjust to use
4103         gdb::unique_xmalloc_ptr instead of a cleanup.
4104
4105 2018-07-19  Tom Tromey  <tom@tromey.com>
4106
4107         * utils.c (do_value_free_to_mark)
4108         (make_cleanup_value_free_to_mark): Remove.
4109         * utils.h (make_cleanup_value_free_to_mark): Remove.
4110
4111 2018-07-19  Pedro Alves  <palves@redhat.com>
4112
4113         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
4114         forwarding reference.
4115
4116 2018-07-18  Pedro Alves  <palves@redhat.com>
4117
4118         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
4119         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
4120         cleanup.
4121
4122 2018-07-18  Pedro Alves  <palves@redhat.com>
4123
4124         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
4125         exceptions.
4126         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
4127         (gdbscm_wrap): New.
4128         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
4129         directly instead of a cleanup.
4130         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
4131         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
4132         (vlscm_binop_gdbthrow): New, factored out from ...
4133         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
4134         (vlscm_rich_compare): Use gdbscm_wrap.
4135         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
4136         instead of a cleanup.
4137         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
4138         cleanup.
4139         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4140         Use xfree directly instead of a cleanup.
4141         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
4142         Adjust to use gdbscm_wrap and scoped_value_mark.
4143         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
4144         (gdbscm_value_address, gdbscm_value_dereference)
4145         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
4146         scoped_value_mark.
4147         (gdbscm_value_dynamic_type): Use scoped_value_mark.
4148         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
4149         scoped_value_mark.
4150         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
4151         gdbscm_wrap and scoped_value_mark.
4152         (gdbscm_value_to_string): Use xfree directly instead of a
4153         cleanup.  Move 'buffer' unique_ptr to TRY scope.
4154         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
4155         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
4156         scoped_value_mark.
4157         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
4158         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
4159         scoped_value_mark.
4160         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
4161         gdbscm_wrap.
4162
4163 2018-07-18  Tom de Vries  <tdevries@suse.de>
4164
4165         * findvar.c (default_read_var_value): Also resolve dynamic type for
4166         LOC_OPTIMIZED_OUT vars.
4167
4168 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
4169
4170         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
4171         decoding.
4172
4173 2018-07-17  Tom Tromey  <tom@tromey.com>
4174
4175         * guile/scm-param.c (pascm_set_func, pascm_show_func)
4176         (compute_enum_list, pascm_set_param_value_x)
4177         (gdbscm_parameter_value): Update.
4178         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
4179         (gdbscm_scm_to_host_string): Update.
4180         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
4181         Update.
4182         * guile/scm-cmd.c (cmdscm_add_completion): Update.
4183         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
4184         * guile/scm-string.c (gdbscm_scm_to_string): Return
4185         unique_xmalloc_ptr.
4186         (gdbscm_scm_to_host_string): Likewise.
4187
4188 2018-07-17  Tom Tromey  <tom@tromey.com>
4189
4190         * guile/guile.c (gdbscm_eval_from_control_command): Update.
4191         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
4192         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
4193         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
4194         unique_xmalloc_ptr.
4195
4196 2018-07-17  Tom Tromey  <tom@tromey.com>
4197
4198         * guile/scm-param.c (pascm_signal_setshow_error): Update.
4199         * guile/guile-internal.h (gdbscm_exception_message_to_string):
4200         Update.
4201         * guile/scm-cmd.c (cmdscm_function): Update.
4202         * guile/scm-pretty-print.c
4203         (ppscm_print_exception_unless_memory_error): Update.
4204         * guile/scm-exception.c (gdbscm_exception_message_to_string):
4205         Return unique_xmalloc_ptr.
4206
4207 2018-07-17  Tom Tromey  <tom@tromey.com>
4208
4209         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
4210         Use string_printf.
4211
4212 2018-07-17  Jim Wilson  <jimw@sifive.com>
4213
4214         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
4215         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
4216         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
4217         unecessary braces after EF_RISCV_RVC test.  Delete call to
4218         set_gdbarch_decr_pc_after_break.
4219
4220         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
4221         RISCV_LAST_FP_REGNUM + 1.
4222         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
4223
4224 2018-07-17  Tom Tromey  <tom@tromey.com>
4225
4226         * configure.ac: Remove --disable-gdbcli.
4227         * configure: Rebuild.
4228         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
4229         (SUBDIR_CLI_CFLAGS): Remove.
4230         (SFILES): Use SUBDIR_CLI_SRCS.
4231         (COMMON_OBS): Use SUBDIR_CLI_OBS.
4232
4233 2018-07-17  Tom Tromey  <tom@tromey.com>
4234
4235         PR gdb/18624:
4236         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
4237
4238 2018-07-16  Jim Wilson  <jimw@sifive.com>
4239
4240         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
4241
4242 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4243
4244         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
4245         variable.
4246         (libunwind_frame_sniffer): Likewise.
4247         (libunwind_frame_prev_register): Likewise.
4248         (libunwind_sigtramp_frame_sniffer): Likewise.
4249         * ia64-tdep.c (ia64_access_reg): Likewise.
4250         (ia64_access_rse_reg): Likewise.
4251         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
4252         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
4253
4254 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4255
4256         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
4257
4258 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4259
4260         * remote-sim.c (gdbsim_target::close,
4261         gdbsim_target::mourn_inferior): Remove unused variables.
4262
4263 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
4264
4265         * ia64-tdep.c (ktab_buf): New global.
4266         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
4267         (get_kernel_table): Adjust.
4268
4269 2018-07-16  Tom Tromey  <tom@tromey.com>
4270
4271         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
4272         * dwarf2read.c (using_directives, new_symbol): Use
4273         outermost_context_p.
4274         * dbxread.c (process_one_symbol): Use outermost_context_p.
4275         * coffread.c (coff_symtab_read): Use outermost_context_p.
4276
4277 2018-07-16  Tom Tromey  <tom@tromey.com>
4278
4279         * dwarf2read.c (using_directives, read_func_scope)
4280         (read_lexical_block_scope): Update.
4281         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
4282         * buildsym.h (local_using_directives, global_using_directives):
4283         Don't declare.
4284         (get_local_using_directives, set_local_using_directives)
4285         (get_global_using_directives): Declare.
4286         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
4287         m_global_using_directives>: New members.
4288         (finish_block_internal, prepare_for_building)
4289         (reset_symtab_globals, end_symtab_get_static_block)
4290         (push_context): Update.
4291         (get_local_using_directives, set_local_using_directives)
4292         (get_global_using_directives): New functions.
4293         (buildsym_init): Update.
4294
4295 2018-07-16  Tom Tromey  <tom@tromey.com>
4296
4297         * xcoffread.c (xcoff_initial_scan): Don't call
4298         free_pending_blocks.
4299         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
4300         * buildsym.h (class scoped_free_pendings): Add constructor.
4301         (free_pending_blocks): Don't declare.
4302         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
4303         (free_pending_blocks): Now static.
4304
4305 2018-07-16  Tom Tromey  <tom@tromey.com>
4306
4307         * buildsym.h (push_subfile, pop_subfile): Update declarations.
4308         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
4309         member.
4310         (struct subfile_stack): Remove.
4311         (subfile_stack): Remove.
4312         (push_subfile, pop_subfile, buildsym_init): Update.
4313
4314 2018-07-16  Tom Tromey  <tom@tromey.com>
4315
4316         * buildsym.c (push_subfile): Use gdb_assert.
4317         (pop_subfile): Use gdb_assert.
4318
4319 2018-07-16  Tom Tromey  <tom@tromey.com>
4320
4321         * buildsym.h (merge_symbol_lists): Remove.
4322         * buildsym.c (merge_symbol_lists): Remove.
4323
4324 2018-07-16  Tom Tromey  <tom@tromey.com>
4325
4326         * stabsread.c (scan_file_globals): Update comment.
4327         * stabsread.h (scan_file_globals): Move from buildsym.h.
4328         * buildsym.h (scan_file_globals): Move to stabsread.h.
4329
4330 2018-07-16  Tom Tromey  <tom@tromey.com>
4331
4332         * xcoffread.c (xcoff_new_init): Update.
4333         * mipsread.c (mipscoff_new_init): Update.
4334         * mdebugread.c (mdebug_build_psymtabs): Update.
4335         * elfread.c (elf_new_init): Update.
4336         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
4337         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
4338         * buildsym.h (buildsym_new_init): Don't declare.
4339         * buildsym.c (buildsym_new_init): Remove.
4340
4341 2018-07-16  Tom Tromey  <tom@tromey.com>
4342
4343         * stabsread.h (within_function): Move from buildsym.h.
4344         * stabsread.c (start_stabs): Clear within_function.
4345         * coffread.c (coff_start_symtab): Clear within_function.
4346         * buildsym.h (within_function): Move to stabsread.h.
4347         * buildsym.c (prepare_for_building): Update.
4348
4349 2018-07-16  Tom Tromey  <tom@tromey.com>
4350
4351         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
4352         * dwarf2read.c (dwarf2_start_symtab): Don't set
4353         processing_gcc_compilation.
4354         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
4355
4356 2018-07-16  Tom Tromey  <tom@tromey.com>
4357
4358         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
4359         (next_symbol_text_func): Move from buildsym.h.
4360         * stabsread.c (hashname): Move from buildsym.c.
4361         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
4362         (next_symbol_text_func, hashname): Move to stabsread.h.
4363         * buildsym.c: Don't include bcache.h
4364         (hashname): Move to stasbread.c.
4365
4366 2018-07-16  Tom Tromey  <tom@tromey.com>
4367
4368         * buildsym.h (context_stack_size): Don't declare.
4369         * buildsym.c (context_stack_size): New global.
4370
4371 2018-07-16  Tom Tromey  <tom@tromey.com>
4372
4373         * dbxread.c (processing_acc_compilation): New global.
4374         * buildsym.h (processing_acc_compilation): Don't declare.
4375
4376 2018-07-16  Tom Tromey  <tom@tromey.com>
4377
4378         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
4379         * dbxread.c (read_ofile_symtab): Update.
4380         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
4381         * buildsym.h (last_source_start_addr): Remove.
4382         (set_last_source_start_addr, get_last_source_start_addr):
4383         Declare.
4384         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
4385         parameter.
4386         (struct buildsym_compunit) <m_last_source_start_addr>: New
4387         member.
4388         (prepare_for_building): Remove start_addr parameter.
4389         (start_symtab, restart_symtab, end_symtab_get_static_block)
4390         (end_symtab_with_blockvector): Update.
4391         (set_last_source_start_addr, get_last_source_start_addr): New
4392         functions.
4393
4394 2018-07-16  Tom Tromey  <tom@tromey.com>
4395
4396         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
4397         member.
4398         (have_line_numbers): Remove.
4399         (record_line, prepare_for_building, end_symtab_get_static_block)
4400         (augment_type_symtab): Update.
4401
4402 2018-07-16  Tom Tromey  <tom@tromey.com>
4403
4404         * buildsym.c (~buildsym_compunit): Free the macro table.
4405         (struct buildsym_compunit) <get_macro_table, release_macros>: New
4406         methods.
4407         <m_pending_macros>: New member.
4408         (pending_macros): Remove.
4409         (~scoped_free_pendings, get_macro_table, prepare_for_building)
4410         (reset_symtab_globals, end_symtab_get_static_block)
4411         (end_symtab_with_blockvector, augment_type_symtab)
4412         (buildsym_init): Update.
4413
4414 2018-07-16  Tom Tromey  <tom@tromey.com>
4415
4416         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
4417         parameter.
4418         (buildsym_compunit::set_last_source_file): New method.
4419         <m_last_source_file>: New member.
4420         (prepare_for_building): Remove "name" parameter.
4421         (start_symtab, restart_symtab, reset_symtab_globals): Update.
4422         (last_source_file): Remove.
4423         (set_last_source_file, get_last_source_file): Update.
4424
4425 2018-07-16  Tom Tromey  <tom@tromey.com>
4426
4427         * buildsym.c (prepare_for_building): Add assert.
4428
4429 2018-07-16  Tom Tromey  <tom@tromey.com>
4430
4431         * buildsym.c (~buildsym_compunit): Update.
4432         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
4433         (start_subfile, patch_subfile_names)
4434         (end_symtab_with_blockvector): Update.
4435
4436 2018-07-16  Tom Tromey  <tom@tromey.com>
4437
4438         * buildsym.c (struct buildsym_compunit): Add constructor,
4439         destructor, initializers.
4440         (start_buildsym_compunit): Remove.
4441         (free_buildsym_compunit): Use "delete".
4442         (start_symtab, restart_symtab): Use "new".
4443
4444 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
4445
4446         * symfile.c (set_objfile_default_section_offset): Remove struct
4447         keyword.
4448
4449 2018-07-14  Stafford Horne  <shorne@gmail.com>
4450
4451         * (Responsible Maintainers): Add myself as or1k maintainer.
4452
4453 2018-07-13  Tom Tromey  <tom@tromey.com>
4454
4455         * symfile.c (set_objfile_default_section_offset): Use extra braces
4456         around initializer.
4457
4458 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
4459
4460         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
4461         non-branching basr.
4462
4463 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4464
4465         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4466         unittests/cli-utils-selftests.c
4467         * unittests/cli-utils-selftests.c: New file.
4468
4469 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4470
4471         * NEWS: Mention new commands. Mention change to 'thread apply'.
4472
4473 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4474
4475         * thread.c (thr_try_catch_cmd): New function.
4476         (thread_apply_all_command): Handle qcs flags.
4477         (thread_apply_command): Handle qcs flags.
4478         (taas_command): New function.
4479         (tfaas_command): New function.
4480         (_initialize_thread): Update to setup the new commands 'taas
4481         and 'tfaas'. Change doc string for 'thread apply'.
4482
4483 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4484
4485         * stack.c: (trailing_outermost_frame): New function, mostly
4486         extracted from backtrace_command_1.
4487         (leading_innermost_frame): New function.
4488         (backtrace_command_1): Update to call trailing_outermost_frame.
4489         (frame_apply_command_count): New function.
4490         (frame_apply_level_command): New function.
4491         (frame_apply_all_command): New function.
4492         (frame_apply_command): New function.
4493         (faas_command): New function.
4494         (frame_cmd_list): New variable.
4495         (_initialize_stack): Update to setup the new commands 'frame apply'
4496         and 'faas'.
4497
4498 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4499
4500         * cli-utils.c (number_or_range_parser::get_number): Only handle
4501         numbers or convenience var as numbers.
4502         (parse_flags): New function.
4503         (parse_flags_qcs): New function.
4504         (number_or_range_parser::finished): Ensure parsing end is detected
4505         before end of string.
4506         * cli-utils.h (parse_flags): New function.
4507         (parse_flags_qcs): New function.
4508         (number_or_range_parser): Remove m_finished bool.
4509         (number_or_range_parser::skip_range): Set m_in_range to false.
4510
4511 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
4512
4513         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
4514         on Windows.
4515
4516 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4517             Jan Kratochvil  <jan.kratochvil@redhat.com>
4518             Paul Fertser  <fercerpav@gmail.com>
4519             Tsutomu Seki  <sekiriki@gmail.com>
4520             Pedro Alves  <palves@redhat.com>
4521
4522         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4523         'unittests/parse-connection-spec-selftests.c'.
4524         (COMMON_SFILES): Add 'common/netstuff.c'.
4525         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
4526         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
4527         * common/netstuff.c: New file.
4528         * common/netstuff.h: New file.
4529         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
4530         (wait_for_connect): Update comment.  New parameter
4531         'gdb::optional<int> sock' instead of 'struct serial *scb'.
4532         Use 'sock' directly instead of 'scb->fd'.
4533         (try_connect): New function, with code from 'net_open'.
4534         (net_open): Rewrite main loop to deal with multiple
4535         sockets/addresses.  Handle IPv6-style hostnames; implement
4536         support for IPv6 connections.
4537         * unittests/parse-connection-spec-selftests.c: New file.
4538
4539 2018-07-11  Pedro Alves  <palves@redhat.com>
4540
4541         PR gdb/23377
4542         * remote.c (remote_target::remote_detach_pid): Call
4543         set_current_process.
4544
4545 2018-07-11  Pedro Alves  <palves@redhat.com>
4546
4547         * h8300-tdep.c (h8300_gdbarch_init): Remove
4548         set_gdbarch_ecoff_reg_to_regnum calls.
4549
4550 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4551
4552         PR c++/23373
4553         * c-typeprint.c (c_type_print_base_struct_union): Don't print
4554         offsets/sizes for static members of a class/struct.
4555
4556 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
4557
4558         * target-descriptions.c (tdesc_register_bitsize): Rename.
4559         * target-descriptions.h (tdesc_register_bitsize): Likewise.
4560         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
4561         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
4562
4563 2018-07-10  Tom Tromey  <tom@tromey.com>
4564
4565         * breakpoint.c (moribund_locations): Now static and a
4566         std::vector.
4567         (breakpoint_init_inferior, moribund_breakpoint_here_p)
4568         (build_bpstat_chain, update_global_location_list)
4569         (breakpoint_retire_moribund): Update.
4570         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
4571         VEC.
4572
4573 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4574
4575         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
4576         (riscv_register_reggroup_p): Use new function, remove unneeded
4577         parenthesis.
4578         (riscv_push_dummy_call): Extend assert to compare against xlen or
4579         flen based on register type.
4580
4581 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4582
4583         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
4584
4585 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4586
4587         * remote.c (show_hardware_watchpoint_limit): New function.
4588         (show_hardware_watchpoint_length_limit): New function.
4589         (show_hardware_breakpoint_limit): New function.
4590         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
4591         where appropriate, update help text.
4592
4593 2018-07-09  Tom Tromey  <tom@tromey.com>
4594
4595         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
4596         (CLIBS): Don't mention NAT_CLIBS.
4597
4598 2018-07-09  Tom Tromey  <tom@tromey.com>
4599
4600         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
4601         (LIBGDB_OBS, clean mostlyclean): Update.
4602         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
4603
4604 2018-07-09  Tom Tromey  <tom@tromey.com>
4605
4606         * Makefile.in (%.c: %.y): Use ECHO_YACC.
4607         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
4608         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
4609
4610 2018-07-09  Tom Tromey  <tom@tromey.com>
4611
4612         * Makefile.in (ALLDEPFILES): Remove exec.c.
4613         (COMMON_OBS): Remove exec.o.
4614         (COMMON_SFILES): Add exec.c.
4615
4616 2018-07-09  Tom Tromey  <tom@tromey.com>
4617
4618         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
4619
4620 2018-07-09  Tom Tromey  <tom@tromey.com>
4621
4622         * Makefile.in (clean mostlyclean): Remove stamp-version.
4623         (version.c): Depend on stamp-version.
4624         (stamp-version): New rule, from version.c rule.
4625
4626 2018-07-09  Tom Tromey  <tom@tromey.com>
4627
4628         * Makefile.in (init.c): Depend on stamp-init.
4629         (stamp-init): New rule, from init.c rule.
4630         (clean mostlyclean): Remove stamp-init.
4631
4632 2018-07-09  Tom Tromey  <tom@tromey.com>
4633
4634         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
4635         SUBDIR_GCC_COMPILE_SRCS.
4636
4637 2018-07-09  Tom Tromey  <tom@tromey.com>
4638
4639         * Makefile.in (init.c): Remove some unused sed rules.
4640
4641 2018-07-09  Tom Tromey  <tom@tromey.com>
4642
4643         * Makefile.in (TSOBS): Remove.
4644         (INIT_FILES): Update.
4645         (LIBGDB_OBS): Update.
4646         (COMMON_SFILES): Add inflow.c.
4647         (SFILES): Remove inflow.c.
4648
4649 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
4650
4651         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
4652
4653 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
4654
4655         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
4656         get_saveloc_name, is_signal_frame_name, step_name,
4657         init_remote_name, create_addr_space_name,
4658         destroy_addr_space_name, search_unwind_table_name,
4659         find_dyn_list_name): Constify.
4660
4661 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
4662
4663         * darwin-nat.c (darwin_pthread_kill): New function.
4664         (darwin_resume_thread): Use darwin_pthread_kill.
4665
4666 2018-07-05  Tom de Vries  <tdevries@suse.de>
4667
4668         * macroexp.c (macro_buffer) <operator=>: New member function.
4669
4670 2018-07-04  Tom Tromey  <tom@tromey.com>
4671
4672         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
4673
4674 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
4675
4676         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
4677         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
4678         * maint.c: Likewise.
4679         * top.c: Likewise.
4680
4681 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
4682
4683         * NEWS: Create a new section for the next release branch.
4684         Rename the section of the current branch, now that it has
4685         been cut.
4686
4687 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
4688
4689         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
4690         * version.in: Bump version to 8.2.50.DATE-git.
4691
4692 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
4693             Pedro Alves  <palves@redhat.com>
4694
4695         * linux-nat.c (linux_init_ptrace): Rename to ...
4696         (linux_init_ptrace_procfs): ... this.  Call
4697         linux_proc_init_warnings.
4698         (linux_nat_target::post_attach)
4699         (linux_nat_target::post_startup_inferior): Adjust.
4700         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
4701         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
4702
4703 2018-07-04  Tom de Vries  <tdevries@suse.de>
4704
4705         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
4706         check ...
4707         (read_comp_unit_head): ... here.
4708
4709 2018-07-03  Tom Tromey  <tom@tromey.com>
4710
4711         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
4712         (stop_tracing, tstatus_command)
4713         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
4714         (print_one_static_tracepoint_marker): Update.
4715         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
4716         std::vector.
4717         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
4718         VEC.
4719         (all_tracepoints, static_tracepoints_here): Return std::vector.
4720
4721 2018-07-03  Tom Tromey  <tom@tromey.com>
4722
4723         * common/ptid.c (ptid_equal): Remove.
4724         * common/ptid.h (ptid_equal): Don't declare.
4725         * ada-tasks.c: Update.
4726         * breakpoint.c: Update.
4727         * common/agent.c: Update.
4728         * corelow.c: Update.
4729         * darwin-nat-info.c: Update.
4730         * darwin-nat.c: Update.
4731         * dcache.c: Update.
4732         * dtrace-probe.c: Update.
4733         * dummy-frame.c: Update.
4734         * fbsd-nat.c: Update.
4735         * frame.c: Update.
4736         * gdbthread.h: Update.
4737         * gnu-nat.c: Update.
4738         * go32-nat.c: Update.
4739         * inf-loop.c: Update.
4740         * inf-ptrace.c: Update.
4741         * infcall.c: Update.
4742         * infcmd.c: Update.
4743         * inflow.c: Update.
4744         * infrun.c: Update.
4745         * linux-fork.c: Update.
4746         * linux-nat.c: Update.
4747         * linux-thread-db.c: Update.
4748         * mi/mi-cmd-var.c: Update.
4749         * mi/mi-interp.c: Update.
4750         * mi/mi-main.c: Update.
4751         * nto-procfs.c: Update.
4752         * ppc-linux-tdep.c: Update.
4753         * procfs.c: Update.
4754         * python/py-inferior.c: Update.
4755         * python/py-record-btrace.c: Update.
4756         * python/py-record.c: Update.
4757         * ravenscar-thread.c: Update.
4758         * regcache.c: Update.
4759         * remote-sim.c: Update.
4760         * remote.c: Update.
4761         * sol-thread.c: Update.
4762         * solib.c: Update.
4763         * target.c: Update.
4764         * tui/tui-stack.c: Update.
4765         * varobj.c: Update.
4766         * windows-nat.c: Update.
4767         * windows-tdep.c: Update.
4768
4769 2018-07-03  Tom Tromey  <tom@tromey.com>
4770
4771         * common/ptid.c (ptid_match): Remove.
4772         * common/ptid.h (ptid_match): Don't declare.
4773         * fbsd-nat.c: Update.
4774         * infcmd.c: Update.
4775         * infrun.c: Update.
4776         * linux-nat.c: Update.
4777         * record-btrace.c: Update.
4778         * regcache.c: Update.
4779         * remote.c: Update.
4780
4781 2018-07-03  Tom Tromey  <tom@tromey.com>
4782
4783         * common/ptid.c (ptid_tid_p): Remove.
4784         * common/ptid.h (ptid_tid_p): Don't declare.
4785         * sol-thread.c: Update.
4786
4787 2018-07-03  Tom Tromey  <tom@tromey.com>
4788
4789         * common/ptid.c (ptid_lwp_p): Remove.
4790         * common/ptid.h (ptid_lwp_p): Don't declare.
4791         * fbsd-nat.c: Update.
4792         * linux-nat.c: Update.
4793         * nat/linux-procfs.c: Update.
4794         * nat/x86-linux-dregs.c: Update.
4795         * sol-thread.c: Update.
4796
4797 2018-07-03  Tom Tromey  <tom@tromey.com>
4798
4799         * common/ptid.c (ptid_is_pid): Remove.
4800         * common/ptid.h (ptid_is_pid): Don't declare.
4801         * infrun.c: Update.
4802         * linux-nat.c: Update.
4803         * mi/mi-interp.c: Update.
4804         * remote.c: Update.
4805         * thread.c: Update.
4806
4807 2018-07-03  Tom Tromey  <tom@tromey.com>
4808
4809         * common/ptid.c (ptid_get_tid): Remove.
4810         * common/ptid.h (ptid_get_tid): Don't declare.
4811         * ada-tasks.c: Update.
4812         * aix-thread.c: Update.
4813         * bsd-uthread.c: Update.
4814         * darwin-nat.c: Update.
4815         * fbsd-nat.c: Update.
4816         * i386-darwin-nat.c: Update.
4817         * infrun.c: Update.
4818         * linux-tdep.c: Update.
4819         * nto-procfs.c: Update.
4820         * ppc-ravenscar-thread.c: Update.
4821         * python/py-infthread.c: Update.
4822         * ravenscar-thread.c: Update.
4823         * sol-thread.c: Update.
4824         * sparc-ravenscar-thread.c: Update.
4825         * windows-nat.c: Update.
4826
4827 2018-07-03  Tom Tromey  <tom@tromey.com>
4828
4829         * common/ptid.c (ptid_get_lwp): Remove.
4830         * common/ptid.h (ptid_get_lwp): Don't declare.
4831         * aarch64-linux-nat.c: Update.
4832         * ada-tasks.c: Update.
4833         * aix-thread.c: Update.
4834         * amd64-linux-nat.c: Update.
4835         * arm-linux-nat.c: Update.
4836         * corelow.c: Update.
4837         * fbsd-nat.c: Update.
4838         * fbsd-tdep.c: Update.
4839         * gnu-nat.c: Update.
4840         * i386-cygwin-tdep.c: Update.
4841         * i386-gnu-nat.c: Update.
4842         * i386-linux-nat.c: Update.
4843         * ia64-linux-nat.c: Update.
4844         * inf-ptrace.c: Update.
4845         * infrun.c: Update.
4846         * linux-fork.c: Update.
4847         * linux-nat.c: Update.
4848         * linux-tdep.c: Update.
4849         * linux-thread-db.c: Update.
4850         * mips-linux-nat.c: Update.
4851         * nat/aarch64-linux-hw-point.c: Update.
4852         * nat/aarch64-linux.c: Update.
4853         * nat/linux-btrace.c: Update.
4854         * nat/linux-osdata.c: Update.
4855         * nat/linux-procfs.c: Update.
4856         * nat/x86-linux-dregs.c: Update.
4857         * obsd-nat.c: Update.
4858         * ppc-fbsd-nat.c: Update.
4859         * ppc-linux-nat.c: Update.
4860         * procfs.c: Update.
4861         * python/py-infthread.c: Update.
4862         * ravenscar-thread.c: Update.
4863         * remote.c: Update.
4864         * s390-linux-nat.c: Update.
4865         * sol-thread.c: Update.
4866         * sol2-tdep.c: Update.
4867         * spu-linux-nat.c: Update.
4868         * x86-linux-nat.c: Update.
4869         * xtensa-linux-nat.c: Update.
4870
4871 2018-07-03  Tom Tromey  <tom@tromey.com>
4872
4873         * common/ptid.c (ptid_get_pid): Remove.
4874         * common/ptid.h (ptid_get_pid): Don't declare.
4875         * aarch64-linux-nat.c: Update.
4876         * ada-lang.c: Update.
4877         * aix-thread.c: Update.
4878         * alpha-bsd-nat.c: Update.
4879         * amd64-fbsd-nat.c: Update.
4880         * amd64-linux-nat.c: Update.
4881         * arm-linux-nat.c: Update.
4882         * arm-nbsd-nat.c: Update.
4883         * auxv.c: Update.
4884         * break-catch-syscall.c: Update.
4885         * breakpoint.c: Update.
4886         * bsd-uthread.c: Update.
4887         * corelow.c: Update.
4888         * ctf.c: Update.
4889         * darwin-nat.c: Update.
4890         * fbsd-nat.c: Update.
4891         * fbsd-tdep.c: Update.
4892         * gcore.c: Update.
4893         * gnu-nat.c: Update.
4894         * hppa-nbsd-nat.c: Update.
4895         * hppa-obsd-nat.c: Update.
4896         * i386-fbsd-nat.c: Update.
4897         * ia64-linux-nat.c: Update.
4898         * inf-ptrace.c: Update.
4899         * infcmd.c: Update.
4900         * inferior.c: Update.
4901         * inferior.h: Update.
4902         * inflow.c: Update.
4903         * infrun.c: Update.
4904         * linux-fork.c: Update.
4905         * linux-nat.c: Update.
4906         * linux-tdep.c: Update.
4907         * linux-thread-db.c: Update.
4908         * m68k-bsd-nat.c: Update.
4909         * mi/mi-interp.c: Update.
4910         * mi/mi-main.c: Update.
4911         * mips-linux-nat.c: Update.
4912         * mips-nbsd-nat.c: Update.
4913         * mips64-obsd-nat.c: Update.
4914         * nat/aarch64-linux-hw-point.c: Update.
4915         * nat/aarch64-linux.c: Update.
4916         * nat/linux-btrace.c: Update.
4917         * nat/linux-osdata.c: Update.
4918         * nat/linux-procfs.c: Update.
4919         * nat/x86-linux-dregs.c: Update.
4920         * nto-procfs.c: Update.
4921         * obsd-nat.c: Update.
4922         * ppc-linux-nat.c: Update.
4923         * ppc-nbsd-nat.c: Update.
4924         * ppc-obsd-nat.c: Update.
4925         * proc-service.c: Update.
4926         * procfs.c: Update.
4927         * python/py-inferior.c: Update.
4928         * python/py-infthread.c: Update.
4929         * ravenscar-thread.c: Update.
4930         * record.c: Update.
4931         * remote-sim.c: Update.
4932         * remote.c: Update.
4933         * rs6000-nat.c: Update.
4934         * s390-linux-nat.c: Update.
4935         * sh-nbsd-nat.c: Update.
4936         * sol-thread.c: Update.
4937         * sparc-nat.c: Update.
4938         * sparc64-tdep.c: Update.
4939         * spu-linux-nat.c: Update.
4940         * spu-tdep.c: Update.
4941         * target-debug.h: Update.
4942         * target.c: Update.
4943         * thread.c: Update.
4944         * tid-parse.c: Update.
4945         * tracefile-tfile.c: Update.
4946         * vax-bsd-nat.c: Update.
4947         * windows-nat.c: Update.
4948         * x86-linux-nat.c: Update.
4949         * x86-nat.c: Update.
4950
4951 2018-07-03  Tom Tromey  <tom@tromey.com>
4952
4953         * common/ptid.c (pid_to_ptid): Remove.
4954         * common/ptid.h (pid_to_ptid): Don't declare.
4955         * aix-thread.c: Update.
4956         * arm-linux-nat.c: Update.
4957         * common/ptid.c: Update.
4958         * common/ptid.h: Update.
4959         * corelow.c: Update.
4960         * ctf.c: Update.
4961         * darwin-nat.c: Update.
4962         * fbsd-nat.c: Update.
4963         * fork-child.c: Update.
4964         * gnu-nat.c: Update.
4965         * go32-nat.c: Update.
4966         * inf-ptrace.c: Update.
4967         * infcmd.c: Update.
4968         * inferior.c: Update.
4969         * infrun.c: Update.
4970         * linux-fork.c: Update.
4971         * linux-nat.c: Update.
4972         * nat/aarch64-linux-hw-point.c: Update.
4973         * nat/fork-inferior.c: Update.
4974         * nat/x86-linux-dregs.c: Update.
4975         * nto-procfs.c: Update.
4976         * obsd-nat.c: Update.
4977         * procfs.c: Update.
4978         * progspace.c: Update.
4979         * remote.c: Update.
4980         * rs6000-nat.c: Update.
4981         * s390-linux-nat.c: Update.
4982         * sol-thread.c: Update.
4983         * spu-linux-nat.c: Update.
4984         * target.c: Update.
4985         * top.c: Update.
4986         * tracefile-tfile.c: Update.
4987         * windows-nat.c: Update.
4988
4989 2018-07-03  Tom Tromey  <tom@tromey.com>
4990
4991         * common/ptid.h (ptid_build): Don't declare.
4992         * common/ptid.c (ptid_build): Remove.
4993         * aix-thread.c: Update.
4994         * bsd-kvm.c: Update.
4995         * bsd-uthread.c: Update.
4996         * common/agent.c: Update.
4997         * common/ptid.c: Update.
4998         * common/ptid.h: Update.
4999         * corelow.c: Update.
5000         * darwin-nat.c: Update.
5001         * fbsd-nat.c: Update.
5002         * gnu-nat.c: Update.
5003         * linux-fork.c: Update.
5004         * linux-nat.c: Update.
5005         * linux-thread-db.c: Update.
5006         * nat/linux-osdata.c: Update.
5007         * nat/linux-procfs.c: Update.
5008         * nto-procfs.c: Update.
5009         * obsd-nat.c: Update.
5010         * proc-service.c: Update.
5011         * procfs.c: Update.
5012         * ravenscar-thread.c: Update.
5013         * remote-sim.c: Update.
5014         * remote.c: Update.
5015         * sol-thread.c: Update.
5016         * target.c: Update.
5017         * windows-nat.c: Update.
5018
5019 2018-07-03  Tom Tromey  <tom@tromey.com>
5020
5021         * infrun.c (follow_exec): Use exit_inferior_silent.
5022         * inferior.c (exit_inferior_num_silent): Remove.
5023         * inferior.h (exit_inferior_num_silent): Don't declare.
5024
5025 2018-07-03  Tom Tromey  <tom@tromey.com>
5026
5027         PR cli/23340:
5028         * darwin-nat.c (darwin_attach_pid): Reset inferior and
5029         inferior_ptid on error.
5030
5031 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
5032             Simon Marchi  <simon.marchi@polymtl.ca>
5033
5034         PR tdep/8282
5035         * disasm.h (gdb_disassembler): Add
5036         `m_disassembler_options_holder'. member
5037         * disasm.c (get_all_disassembler_options): New function.
5038         (gdb_disassembler::gdb_disassembler): Use it.
5039         (gdb_buffered_insn_length_init_dis): Likewise.
5040         (gdb_buffered_insn_length): Adjust accordingly.
5041         (set_disassembler_options): Handle options with arguments.
5042         (show_disassembler_options_sfunc): Likewise.  Add a leading new
5043         line if showing options with descriptions.
5044         (disassembler_options_completer): Adapt to using the
5045         `disasm_options_and_args_t' structure.
5046         * mips-tdep.c (mips_disassembler_options): New variable.
5047         (mips_disassembler_options_o32): Likewise.
5048         (mips_disassembler_options_n32): Likewise.
5049         (mips_disassembler_options_n64): Likewise.
5050         (gdb_print_insn_mips): Don't set `disassembler_options'.
5051         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
5052         functions.
5053         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
5054         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
5055         `gdbarch_disassembler_options_implicit' and
5056         `gdbarch_valid_disassembler_options'.
5057         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
5058         `disasm_options_and_args_t' structure.
5059         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
5060         method.
5061         (valid_disassembler_options): Switch from `disasm_options_t' to
5062         the `disasm_options_and_args_t' structure.
5063         * NEWS: Document `set disassembler-options' support for the MIPS
5064         target.
5065         * gdbarch.h: Regenerate.
5066         * gdbarch.c: Regenerate.
5067
5068 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
5069
5070         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
5071
5072 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
5073
5074         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
5075         parameter in call to amd64_target_description.
5076         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
5077         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
5078         (amd64fbsd_init_abi): Likewise.
5079         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
5080         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
5081         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
5082         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
5083
5084 2018-06-29  Pedro Alves  <palves@redhat.com>
5085
5086         * gdb/amd64-tdep.h (amd64_create_target_description): Add
5087         "segments" parameter.
5088         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
5089         (_initialize_amd64_tdep): Update call to
5090         amd64_create_target_description.
5091         (amd64_target_description): Add "segments" parameter.  Adjust
5092         the implementation to use it.
5093         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
5094         call to amd64_create_target_description.
5095         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
5096         * gdb/arch/amd64.h (amd64_create_target_description): Add
5097         "segments" register.
5098         * gdb/arch/amd64.c (amd64_create_target_description): Add
5099         "segments" parameter.  Call create_feature_i386_64bit_segments
5100         only if SEGMENTS is true.
5101         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
5102         call to amd64_create_target_description.
5103
5104 2018-06-29  Pedro Alves  <palves@redhat.com>
5105
5106         * thread.c (thread_target_id_str): New, factored out from ...
5107         (print_thread_info_1): ... here.  Use it to compute the max
5108         "Target Id" column width.
5109
5110 2018-06-29  Pedro Alves  <palves@redhat.com>
5111
5112         * remote.c (remote_target::extra_thread_info): Delete
5113         'display_buf' and 'n' locals.  from the cache, regardless of
5114         packet mechanims is in use.  Use cache for qThreadExtra and qP
5115         methods too.
5116
5117 2018-06-29  Pedro Alves  <palves@redhat.com>
5118
5119         * blockframe.c (find_pc_sect_containing_function): New function.
5120         * breakpoint.c (print_breakpoint_location): Don't call
5121         find_pc_sect_function.
5122         * linespec.c (create_sals_line_offset): Record the location's
5123         symbol in the sal.
5124         * linespec.c (convert_address_location_to_sals): Fill in sal's
5125         symbol with find_pc_sect_containing_function.
5126         * symtab.c (find_function_start_sal): Rename to ...
5127         (find_function_start_sal_1): ... this.
5128         (find_function_start_sal): Reimplement as wrapper around
5129         find_function_start_sal_1, and use
5130         find_pc_sect_containing_function to fill in the sal's symbol.
5131         (find_function_start_sal(symbol*, bool)): Adjust.
5132         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
5133         comments.
5134         (find_pc_sect_containing_function): Declare.
5135
5136 2018-06-29  Pedro Alves  <palves@redhat.com>
5137
5138         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
5139         true if the the location has no symbol.
5140
5141 2018-06-28  Tom Tromey  <tom@tromey.com>
5142
5143         * NEWS: Mention --enable-codesign.
5144         * silent-rules.mk (ECHO_SIGN): New variable.
5145         * configure.ac: Add --enable-codesign.
5146         * configure: Rebuild.
5147         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
5148         (gdb$(EXEEXT)): Optionally invoke codesign.
5149
5150 2018-06-28  Pedro Alves  <palves@redhat.com>
5151
5152         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
5153         comments.
5154         (switch_to_thread_no_regs): Adjust comment.
5155         * infcmd.c (stop_pc): Delete.
5156         (post_create_inferior, info_program_command): Replace references
5157         to stop_pc with references to thread_info->suspend.stop_pc.
5158         * inferior.h (stop_pc): Delete declaration.
5159         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
5160         (handle_inferior_event_1, handle_signal_stop)
5161         (process_event_stop_test, keep_going_stepped_thread)
5162         (handle_step_into_function, handle_step_into_function_backward)
5163         (print_stop_location): Replace references to stop_pc with
5164         references to thread_info->suspend.stop_pc.
5165         (struct infcall_suspend_state) <stop_pc>: Delete field.
5166         (save_infcall_suspend_state, restore_infcall_suspend_state):
5167         Remove references to inf_stat->stop_pc.
5168         * linux-fork.c (fork_load_infrun_state): Likewise.
5169         * record-btrace.c (record_btrace_set_replay): Likewise.
5170         * record-full.c (record_full_goto_entry): Likewise.
5171         * remote.c (print_one_stopped_thread): Likewise.
5172         * target.c (target_resume): Extend comment.
5173         * thread.c (set_executing_thread): New.
5174         (set_executing): Use it.
5175         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
5176         Remove references to stop_pc.
5177
5178 2018-06-28  Pedro Alves  <palves@redhat.com>
5179
5180         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
5181         Moving fetching stop_pc until after ecs->event_thread is refreshed.
5182
5183 2018-06-28  Tom Tromey  <tom@tromey.com>
5184
5185         * coffread.c (coff_symfile_finish): Update.
5186         * xcoffread.c (xcoff_symfile_finish): Update.
5187         * elfread.c (elf_symfile_finish): Update.
5188         * symfile.h (dwarf2_free_objfile): Don't declare.
5189         * dwarf2read.c (_initialize_dwarf2_read): Use
5190         register_objfile_data_with_cleanup.
5191         (dwarf2_free_objfile): Now static.  Change signature.
5192
5193 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5194
5195         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
5196         option "-o" to add-symbol-file-load to add an offset to each
5197         section's load address.
5198         * symfile.c (set_objfile_default_section_offset): New function.
5199
5200 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5201
5202         * symfile.c (add_symbol_file_command): Make sure that sections
5203         with the same name are sorted in the same order.
5204
5205 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5206
5207         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
5208         require the second argument.  If omitted, load sections at the
5209         addresses specified in the file.
5210
5211 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5212
5213         * symfile.c (symbol_file_command, symbol_file_add_main_1)
5214         (_initialize_symfile): Add option "-o" to symbol-file to add an
5215         offset to each section of the symbol file.
5216
5217 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5218
5219         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
5220
5221 2018-06-27  Tom Tromey  <tom@tromey.com>
5222
5223         * stack.c (_initialize_stack): Update "func" help text.
5224
5225 2018-06-27  Tom Tromey  <tom@tromey.com>
5226
5227         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
5228         std::vector.
5229         (unwind_infopy_str, pyuw_create_unwind_info)
5230         (unwind_infopy_add_saved_register, pyuw_sniffer)
5231         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
5232         Update.
5233         (struct saved_reg): Add constructor.
5234         <value>: Now a gdbpy_ref<>.
5235
5236 2018-06-27  Tom Tromey  <tom@tromey.com>
5237
5238         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
5239
5240 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5241
5242         * gdb-gdb.py.in: Format using autopep8.
5243
5244 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5245
5246         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
5247         (type_lookup_function): Recognize CORE_ADDR values.
5248
5249 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5250
5251         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
5252         print tag_name.
5253
5254 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5255
5256         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
5257         <__lt__>: Add.
5258
5259 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5260
5261         * gdb-gdb.py: Move to...
5262         * gdb-gdb.py.in: ... here.
5263         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
5264         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
5265         dependencies.
5266         (distclean): Remove gdb-gdb.py when cleaning.
5267         (gdb-gdb.py, gdb-gdb.gdb): New rules.
5268         * configure: Re-generate.
5269
5270 2018-06-27  Pedro Alves  <palves@redhat.com>
5271
5272         * proc-service.c (get_ps_regcache): New.
5273         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
5274         (ps_lsetfpregs): Use it.
5275
5276 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
5277
5278         PR gdb/21695
5279         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
5280         (dwarf_decode_lines_1): Adjust.
5281
5282 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5283
5284         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
5285         override.
5286         <info_proc>: Likewise.
5287
5288 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
5289
5290         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
5291         to windows_fetch_one_register, and only handle the case of
5292         fetching one register.  Move the code that reloads the context
5293         and iterates over all registers if R is negative to...
5294         (windows_nat_target::fetch_registers): ... here.
5295         (do_windows_store_inferior_registers): Rename to
5296         windows_store_one_register, and only handle the case of storing
5297         one register.  Move the code that handles the case where r is
5298         negative to...
5299         (windows_nat_target::store_registers) ... here.
5300
5301 2018-06-26  Tom Tromey  <tom@tromey.com>
5302
5303         PR rust/22574:
5304         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
5305         * rust-lang.c (rust_print_struct_def): Add podata parameter.
5306         Update.
5307         (rust_internal_print_type): Add podata parameter.
5308         (rust_print_type): Update.
5309
5310 2018-06-26  Tom Tromey  <tom@tromey.com>
5311
5312         * typeprint.h (struct print_offset_data) <update, finish,
5313         maybe_print_hole>: New methods.
5314         <indentation>: New constant.
5315         * typeprint.c (print_offset_data::indentation): Define.
5316         (print_offset_data::maybe_print_hole, print_offset_data::update)
5317         (print_offset_data::finish): Move from c-typeprint.c and rename.
5318         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
5319         (print_spaces_filtered_with_print_options): Update.
5320         (c_print_type_union_field_offset, maybe_print_hole)
5321         (c_print_type_struct_field_offset): Move to typeprint.c and
5322         rename.
5323         (c_type_print_base_struct_union): Update.
5324
5325 2018-06-25  Pedro Alves  <palves@redhat.com>
5326
5327         * gdbthread.h (thread_info_ref, delete_thread)
5328         (delete_thread_silent, first_thread_of_inferior)
5329         (any_thread_of_inferior, switch_to_thread)
5330         (enable_thread_stack_temporaries)
5331         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5332         (get_last_thread_stack_temporary)
5333         (value_in_thread_stack_temporaries, can_access_registers_thread):
5334         Spell out "struct thread_info" instead of just "thread_info".
5335         * inferior.h (notice_new_inferior): Likewise.
5336
5337 2018-06-25  Pedro Alves  <palves@redhat.com>
5338
5339         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5340         pass thread_info pointer to delete_thread.
5341         (windows_nat_target::detach): Pass inferior pointer to
5342         detach_inferior.
5343         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
5344         delete_thread.
5345         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
5346         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
5347         and pass a thread_info pointer to delete_thread.
5348         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
5349         pass thread_info pointer to delete_thread.
5350         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
5351         delete_thread_silent call.
5352         * procfs.c (procfs_target::detach): Pass inferior pointer to
5353         detach_inferior.
5354         (procfs_target::wait): Pass thread_info pointer to delete_thread.
5355         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
5356         delete_thread_silent call.
5357         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5358         pass thread_info pointer to delete_thread.
5359         (windows_nat_target::detach): Pass inferior pointer to
5360         delete_inferior.
5361
5362 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5363
5364         * regcache.c (readable_regcache::read_part): Fix asserts.
5365         (reg_buffer::raw_collect_part): New function.
5366         (regcache::write_part): Fix asserts.
5367         (reg_buffer::raw_supply_part): New function.
5368         (regcache::transfer_regset_register): New helper function.
5369         (regcache::transfer_regset): Call new functions.
5370         (regcache_supply_regset): Use gdb_byte*.
5371         (regcache::supply_regset): Likewise.
5372         (regcache_collect_regset): Likewise.
5373         (regcache::collect_regset): Likewise.
5374         * regcache.h (reg_buffer::raw_collect_part): New declaration.
5375         (reg_buffer::raw_supply_part): Likewise.
5376         (regcache::transfer_regset_register): Likewise.
5377         (regcache::transfer_regset): Use gdb_byte*.
5378
5379 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5380
5381         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
5382
5383 2018-06-21  Pedro Alves  <palves@redhat.com>
5384
5385         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
5386         instead of a ptid_t.  All callers adjusted.
5387         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
5388         adjusted.
5389         (print_ada_task_info, display_current_task_id, task_command_1):
5390         Adjust.
5391         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
5392         inferior_thread.
5393         (breakpoint_kind): Adjust.
5394         (remove_breakpoints_pid): Rename to ...
5395         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
5396         pointer.  All callers adjusted.
5397         (bpstat_clear_actions): Use inferior_thread.
5398         (get_bpstat_thread): New.
5399         (bpstat_do_actions): Use it.
5400         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
5401         to take a thread_info pointer.  All callers adjusted.
5402         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
5403         (breakpoint_re_set_thread): Use inferior_thread.
5404         * breakpoint.h (struct inferior): Forward declare.
5405         (bpstat_stop_status): Update.
5406         (remove_breakpoints_pid): Delete.
5407         (remove_breakpoints_inf): New.
5408         * bsd-uthread.c (bsd_uthread_target::wait)
5409         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
5410         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
5411         (maint_btrace_packet_history_cmd)
5412         (maint_btrace_clear_packet_history_cmd): Adjust.
5413         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
5414         inferior_thread.
5415         * cli/cli-interp.c: Include "inferior.h".
5416         * common/refcounted-object.h (struct
5417         refcounted_object_ref_policy): New.
5418         * compile/compile-object-load.c: Include gdbthread.h.
5419         (store_regs): Use inferior_thread.
5420         * corelow.c (core_target::close): Use current_inferior.
5421         (core_target_open): Adjust to use first_thread_of_inferior and use
5422         the current inferior.
5423         * ctf.c (ctf_target::close): Adjust to use current_inferior.
5424         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
5425         <thread>: ... this new field.  All references adjusted.
5426         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
5427         Take a thread_info pointer instead of a ptid_t.
5428         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
5429         (dummy_frame_discard, register_dummy_frame_dtor): Take a
5430         thread_info pointer instead of a ptid_t.
5431         * elfread.c: Include "inferior.h".
5432         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
5433         Use inferior_thread.
5434         * eval.c (evaluate_subexp): Likewise.
5435         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
5436         inferior_thread.
5437         * gdb_proc_service.h (struct thread_info): Forward declare.
5438         (struct ps_prochandle) <ptid>: Delete, replaced by ...
5439         <thread>: ... this new field.  All references adjusted.
5440         * gdbarch.h, gdbarch.c: Regenerate.
5441         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
5442         'thread' parameter.  All implementations and callers adjusted.
5443         * gdbthread.h (thread_info) <set_running>: New method.
5444         (delete_thread, delete_thread_silent): Take a thread_info pointer
5445         instead of a ptid.
5446         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
5447         (first_thread_of_process): Delete, replaced by ...
5448         (first_thread_of_inferior): ... this new function.  All callers
5449         adjusted.
5450         (any_live_thread_of_process): Delete, replaced by ...
5451         (any_live_thread_of_inferior): ... this new function.  All callers
5452         adjusted.
5453         (switch_to_thread, switch_to_no_thread): Declare.
5454         (is_executing): Delete.
5455         (enable_thread_stack_temporaries): Update comment.
5456         <enable_thread_stack_temporaries>: Take a thread_info pointer
5457         instead of a ptid_t.  Incref the thread.
5458         <~enable_thread_stack_temporaries>: Decref the thread.
5459         <m_ptid>: Delete
5460         <m_thr>: New.
5461         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5462         (get_last_thread_stack_temporary)
5463         (value_in_thread_stack_temporaries, can_access_registers_thread):
5464         Take a thread_info pointer instead of a ptid_t.  All callers
5465         adjusted.
5466         * infcall.c (get_call_return_value): Use inferior_thread.
5467         (run_inferior_call): Work with thread pointers instead of ptid_t.
5468         (call_function_by_hand_dummy): Work with thread pointers instead
5469         of ptid_t.  Use thread_info_ref.
5470         * infcmd.c (proceed_thread_callback): Access thread's state
5471         directly.
5472         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
5473         access thread's state directly.
5474         (continue_command): Use inferior_thread.
5475         (info_program_command): Use find_thread_ptid and access thread
5476         state directly.
5477         (proceed_after_attach_callback): Use thread state directly.
5478         (notice_new_inferior): Take a thread_info pointer instead of a
5479         ptid_t.  All callers adjusted.
5480         (exit_inferior): Take an inferior pointer instead of a pid.  All
5481         callers adjusted.
5482         (exit_inferior_silent): New.
5483         (detach_inferior): Delete.
5484         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
5485         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
5486         (detach_inferior_command, kill_inferior_command): Use
5487         find_inferior_id instead of valid_gdb_inferior_id and
5488         gdb_inferior_id_to_pid.
5489         (inferior_command): Use inferior and thread pointers.
5490         * inferior.h (struct thread_info): Forward declare.
5491         (notice_new_inferior): Take a thread_info pointer instead of a
5492         ptid_t.  All callers adjusted.
5493         (detach_inferior): Delete declaration.
5494         (exit_inferior, exit_inferior_silent): Take an inferior pointer
5495         instead of a pid.  All callers adjusted.
5496         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
5497         (valid_gdb_inferior_id): Delete.
5498         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
5499         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
5500         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
5501         ...
5502         <inf>: ... this new field.
5503         <step_ptid>: Delete, replaced by ...
5504         <step_thread>: ... this new field.
5505         (get_displaced_stepping_state): Take an inferior pointer instead
5506         of a pid.  All callers adjusted.
5507         (displaced_step_in_progress_any_inferior): Adjust.
5508         (displaced_step_in_progress_thread): Take a thread pointer instead
5509         of a ptid_t.  All callers adjusted.
5510         (displaced_step_in_progress, add_displaced_stepping_state): Take
5511         an inferior pointer instead of a pid.  All callers adjusted.
5512         (get_displaced_step_closure_by_addr): Adjust.
5513         (remove_displaced_stepping_state): Take an inferior pointer
5514         instead of a pid.  All callers adjusted.
5515         (displaced_step_prepare_throw, displaced_step_prepare)
5516         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
5517         All callers adjusted.
5518         (start_step_over): Adjust.
5519         (infrun_thread_ptid_changed): Remove bit updating ptids in the
5520         displaced step queue.
5521         (do_target_resume): Adjust.
5522         (fetch_inferior_event): Use inferior_thread.
5523         (context_switch, get_inferior_stop_soon): Take an
5524         execution_control_state pointer instead of a ptid_t.  All callers
5525         adjusted.
5526         (switch_to_thread_cleanup): Delete.
5527         (stop_all_threads): Use scoped_restore_current_thread.
5528         * inline-frame.c: Include "gdbthread.h".
5529         (inline_state) <inline_state>: Take a thread pointer instead of a
5530         ptid_t.  All callers adjusted.
5531         <ptid>: Delete, replaced by ...
5532         <thread>: ... this new field.
5533         (find_inline_frame_state): Take a thread pointer instead of a
5534         ptid_t.  All callers adjusted.
5535         (skip_inline_frames, step_into_inline_frame)
5536         (inline_skipped_frames, inline_skipped_symbol): Take a thread
5537         pointer instead of a ptid_t.  All callers adjusted.
5538         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
5539         (inline_skipped_frames, inline_skipped_symbol): Likewise.
5540         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
5541         pointers directly.
5542         * linux-nat.c (get_detach_signal): Likewise.
5543         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
5544         (thread_db_notice_clone): Adjust.
5545         (thread_db_find_new_threads_silently)
5546         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
5547         a thread pointer instead of a ptid_t.  All callers adjusted.
5548         * mi/mi-cmd-var.c: Include "inferior.h".
5549         (mi_cmd_var_update_iter): Update to use thread pointers.
5550         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
5551         inferior directly.
5552         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
5553         out to ...
5554         (mi_output_running): ... this new function.
5555         (mi_on_resume_1): Adjust to use it.
5556         (mi_user_selected_context_changed): Adjust to use inferior_thread.
5557         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
5558         directly.
5559         (interrupt_thread_callback): : Adjust to use thread and inferior
5560         pointers.
5561         * proc-service.c: Include "gdbthread.h".
5562         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
5563         * progspace-and-thread.c: Include "inferior.h".
5564         * progspace.c: Include "inferior.h".
5565         * python/py-exitedevent.c (create_exited_event_object): Adjust to
5566         hold a reference to an inferior_object.
5567         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
5568         inferior_thread.
5569         * python/py-inferior.c (struct inferior_object): Give the type a
5570         tag name instead of a typedef.
5571         (python_on_normal_stop): No need to check if the current thread is
5572         listed.
5573         (inferior_to_inferior_object): Change return type to
5574         inferior_object.  All callers adjusted.
5575         (find_thread_object): Delete, bits factored out to ...
5576         (thread_to_thread_object): ... this new function.
5577         * python/py-infthread.c (create_thread_object): Use
5578         inferior_to_inferior_object.
5579         (thpy_is_stopped): Use thread pointer directly.
5580         (gdbpy_selected_thread): Use inferior_thread.
5581         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
5582         field, replaced with ...
5583         <thread>: ... this new field.  All users adjusted.
5584         (btpy_insn_or_gap_new): Drop const.
5585         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
5586         callers adjusted.
5587         * python/py-record.c: Include "gdbthread.h".
5588         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5589         a ptid_t.  All callers adjusted.
5590         (gdbpy_current_recording): Use inferior_thread.
5591         * python/py-record.h (recpy_record_object) <ptid>: Delete
5592         field, replaced with ...
5593         <thread>: ... this new field.  All users adjusted.
5594         (recpy_element_object) <ptid>: Delete
5595         field, replaced with ...
5596         <thread>: ... this new field.  All users adjusted.
5597         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5598         a ptid_t.  All callers adjusted.
5599         * python/py-threadevent.c: Include "gdbthread.h".
5600         (get_event_thread): Use thread_to_thread_object.
5601         * python/python-internal.h (struct inferior_object): Forward
5602         declare.
5603         (find_thread_object, find_inferior_object): Delete declarations.
5604         (thread_to_thread_object, inferior_to_inferior_object): New
5605         declarations.
5606         * record-btrace.c: Include "inferior.h".
5607         (require_btrace_thread): Use inferior_thread.
5608         (record_btrace_frame_sniffer)
5609         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
5610         (get_thread_current_frame): Use scoped_restore_current_thread and
5611         switch_to_thread.
5612         (get_thread_current_frame): Use thread pointer directly.
5613         (record_btrace_replay_at_breakpoint): Use thread's inferior
5614         pointer directly.
5615         * record-full.c: Include "inferior.h".
5616         * regcache.c: Include "gdbthread.h".
5617         (get_thread_arch_regcache): Use the inferior's address space
5618         directly.
5619         (get_thread_regcache, registers_changed_thread): New.
5620         * regcache.h (get_thread_regcache(thread_info *thread)): New
5621         overload.
5622         (registers_changed_thread): New.
5623         (remote_target) <remote_detach_1>: Swap order of parameters.
5624         (remote_add_thread): <remote_add_thread>: Return the new thread.
5625         (get_remote_thread_info(ptid_t)): New overload.
5626         (remote_target::remote_notice_new_inferior): Use thread pointers
5627         directly.
5628         (remote_target::process_initial_stop_replies): Use
5629         thread_info::set_running.
5630         (remote_target::remote_detach_1, remote_target::detach)
5631         (extended_remote_target::detach): Adjust.
5632         * stack.c (frame_show_address): Use inferior_thread.
5633         * target-debug.h (target_debug_print_thread_info_pp): New.
5634         * target-delegates.c: Regenerate.
5635         * target.c (default_thread_address_space): Delete.
5636         (memory_xfer_partial_1): Use current_inferior.
5637         (target_detach): Use current_inferior.
5638         (target_thread_address_space): Delete.
5639         (generic_mourn_inferior): Use current_inferior.
5640         * target.h (struct target_ops) <thread_address_space>: Delete.
5641         (target_thread_address_space): Delete.
5642         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
5643         pointers directly.
5644         (delete_thread_1, delete_thread, delete_thread_silent): Take a
5645         thread pointer instead of a ptid_t.  Adjust all callers.
5646         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
5647         (first_thread_of_process): Delete, replaced by ...
5648         (first_thread_of_inferior): ... this new function.  All callers
5649         adjusted.
5650         (any_thread_of_process): Rename to ...
5651         (any_thread_of_inferior): ... this, and take an inferior pointer.
5652         (any_live_thread_of_process): Rename to ...
5653         (any_live_thread_of_inferior): ... this, and take an inferior
5654         pointer.
5655         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5656         (value_in_thread_stack_temporaries)
5657         (get_last_thread_stack_temporary): Take a thread pointer instead
5658         of a ptid_t.  Adjust all callers.
5659         (thread_info::set_running): New.
5660         (validate_registers_access): Use inferior_thread.
5661         (can_access_registers_ptid): Rename to ...
5662         (can_access_registers_thread): ... this, and take a thread
5663         pointer.
5664         (print_thread_info_1): Adjust to compare thread pointers instead
5665         of ptids.
5666         (switch_to_no_thread, switch_to_thread): Make extern.
5667         (scoped_restore_current_thread::~scoped_restore_current_thread):
5668         Use m_thread pointer directly.
5669         (scoped_restore_current_thread::scoped_restore_current_thread):
5670         Use inferior_thread.
5671         (thread_command): Use thread pointer directly.
5672         (thread_num_make_value_helper): Use inferior_thread.
5673         * top.c (execute_command): Use inferior_thread.
5674         * tui/tui-interp.c: Include "inferior.h".
5675         * varobj.c (varobj_create): Use inferior_thread.
5676         (value_of_root_1): Use find_thread_global_id instead of
5677         global_thread_id_to_ptid.
5678
5679 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
5680
5681         * regcache.c (readable_regcache::read_part): Avoid memcpy when
5682         possible.
5683         (regcache::write_part): Likewise.
5684         (readable_regcache::cooked_read_part): Update comment.
5685         (readable_regcache::cooked_write_part): Likewise.
5686         * regcache.h: (readable_regcache::read_part): Likewise.
5687         (regcache::write_part): Likewise.
5688
5689 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
5690             Dirk Schubert  <dirk.schubert@arm.com>
5691
5692         * aarch64-linux-nat.c (post_attach): New.
5693         (aarch64_linux_nat_target::post_attach): Override post_attach to
5694         record the number of hardware debug registers.
5695
5696 2018-06-20  Tom Tromey  <tom@tromey.com>
5697
5698         * python/py-param.c (add_setshow_generic): Make parameters const.
5699         (parmpy_init): Update.
5700
5701 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
5702
5703         * regcache.h (regcache_cooked_read_ftype): Rename to...
5704         (register_read_ftype): ...this, change type to function_view.
5705         (class reg_buffer) <save>: Remove src parameter.
5706         (readonly_detached_regcache) <readonly_detached_regcache>: Make
5707         parameter non-const in first overload.  Remove src parameter in
5708         second overload.
5709         * regcache.c (do_cooked_read): Remove.
5710         (readonly_detached_regcache::readonly_detached_regcache): Make
5711         parameter non-const, adjust call to other constructor.
5712         (reg_buffer::save): Remove src parameter.
5713         * frame.c (do_frame_register_read): Remove.
5714         (frame_save_as_regcache): Use lambda function.
5715         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
5716         parameter to ppu2spu_data *.
5717         (ppu2spu_sniffer): Use lambda function.
5718
5719 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
5720
5721         * record-full.c (record_full_target::insert_breakpoint): Remove
5722         "struct" keyword, add const.
5723
5724 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
5725
5726         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
5727         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
5728         * configure.ac: Remove AC_PREREQ, add missing quoting.
5729         * gnulib/configure.ac: Modernize usage of
5730         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
5731         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
5732         (AUTOMAKE_VERSION): Bump to 1.15.1.
5733         * configure: Re-generate.
5734         * config.in: Re-generate.
5735         * aclocal.m4: Re-generate.
5736         * gnulib/aclocal.m4: Re-generate.
5737         * gnulib/config.in: Re-generate.
5738         * gnulib/configure: Re-generate.
5739         * gnulib/import/Makefile.in: Re-generate.
5740
5741 2018-06-19  Pedro Alves  <palves@redhat.com>
5742
5743         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
5744         (lookup_minimal_symbol_by_pc_section): ... here with
5745         gdb_assert_not_reached added.
5746
5747 2018-06-19  Pedro Alves  <palves@redhat.com>
5748
5749         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
5750         parameter with a block parameter.  Compare location's block symbol
5751         with the frame's block instead of addresses.
5752         (skip_inline_frames): Pass the current block instead of the
5753         frame's address.  Break out as soon as we determine the frame
5754         should not be skipped.
5755
5756 2018-06-18  Tom Tromey  <tom@tromey.com>
5757
5758         * solib-aix.c (solib_aix_get_section_offsets): Return
5759         unique_xmalloc_ptr.
5760         (solib_aix_solib_create_inferior_hook): Update.
5761
5762 2018-06-18  Tom Tromey  <tom@tromey.com>
5763
5764         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
5765
5766 2018-06-18  Tom Tromey  <tom@tromey.com>
5767
5768         * solib-frv.c (frv_relocate_main_executable): Use
5769         unique_xmalloc_ptr.
5770         * solib-dsbt.c (dsbt_relocate_main_executable): Use
5771         unique_xmalloc_ptr.
5772
5773 2018-06-18  Tom Tromey  <tom@tromey.com>
5774
5775         * objfiles.h (inhibit_section_map_updates): Update.
5776         (resume_section_map_updates, resume_section_map_updates_cleanup):
5777         Remove.
5778         * solib-svr4.c (svr4_handle_solib_event): Update.
5779         * objfiles.c (inhibit_section_map_updates): Return
5780         scoped_restore_tmpl<int>.
5781         (resume_section_map_updates, resume_section_map_updates_cleanup):
5782         Remove.
5783
5784 2018-06-18  Tom Tromey  <tom@tromey.com>
5785
5786         * valprint.h (read_string): Update.
5787         * valprint.c (read_string): Change type of "buffer".
5788         (val_print_string): Update.
5789         * python/py-value.c (valpy_string): Update.
5790         * language.h (struct language_defn) <la_get_string>: Change
5791         type of "buffer".
5792         (default_get_string, c_get_string): Update.
5793         * language.c (default_get_string): Change type of "buffer".
5794         * guile/scm-value.c (gdbscm_value_to_string): Update.
5795         * c-lang.c (c_get_string): Change type of "buffer".
5796
5797 2018-06-18  Tom Tromey  <tom@tromey.com>
5798
5799         * ser-mingw.c (struct pipe_state_destroyer): New.
5800         (pipe_state_up): New typedef.
5801         (cleanup_pipe_state): Remove.
5802         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
5803
5804 2018-06-18  Tom Tromey  <tom@tromey.com>
5805
5806         * rust-lang.h (rust_yyerror): Don't declare.
5807         * rust-lang.c (rust_language_defn): Update.
5808         * rust-exp.y (yyerror): Now static.
5809         * parse.c (parse_exp_in_context_1): Update.
5810         * p-lang.h (p_yyerror): Don't declare.
5811         * p-lang.c (p_language_defn): Update.
5812         * p-exp.y (yyerror): Now static.
5813         * opencl-lang.c (opencl_language_defn): Update.
5814         * objc-lang.c (objc_language_defn): Update.
5815         * m2-lang.h (m2_yyerror): Don't declare.
5816         * m2-lang.c (m2_language_defn): Update.
5817         * m2-exp.y (yyerror): Now static.
5818         * language.h (struct language_defn) <la_error>: Remove.
5819         * language.c (unk_lang_error): Remove.
5820         (unknown_language_defn, auto_language_defn): Remove.
5821         * go-lang.h (go_yyerror): Don't declare.
5822         * go-lang.c (go_language_defn): Update.
5823         * go-exp.y (yyerror): Now static.
5824         * f-lang.h (f_yyerror): Don't declare.
5825         * f-lang.c (f_language_defn): Update.
5826         * f-exp.y (yyerror): Now static.
5827         * d-lang.h (d_yyerror): Don't declare.
5828         * d-lang.c (d_language_defn): Update.
5829         * d-exp.y (yyerror): Now static.
5830         * c-lang.h (c_yyerror): Don't declare.
5831         * c-lang.c (c_language_defn, cplus_language_defn)
5832         (asm_language_defn, minimal_language_defn): Update.
5833         * c-exp.y (yyerror): Now static.
5834         * ada-lang.h (ada_yyerror): Don't declare.
5835         * ada-lang.c (ada_language_defn): Update.
5836         * ada-exp.y (yyerror): Now static.
5837
5838 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
5839
5840         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
5841         (store_sveregs_to_thread): Likewise.
5842         (aarch64_linux_fetch_inferior_registers): Check for SVE.
5843         (aarch64_linux_store_inferior_registers): Likewise.
5844         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
5845         function.
5846         (aarch64_sve_regs_copy_to_regcache): Likewise.
5847         (aarch64_sve_regs_copy_from_regcache): Likewise.
5848         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
5849         declaration.
5850         (aarch64_sve_regs_copy_to_regcache): Likewise.
5851         (aarch64_sve_regs_copy_from_regcache): Likewise.
5852         (sve_context): Structure from Linux headers.
5853         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
5854         (SVE_SIG_ZREG_SIZE): Likewise.
5855         (SVE_SIG_PREG_SIZE): Likewise.
5856         (SVE_SIG_FFR_SIZE): Likewise.
5857         (SVE_SIG_REGS_OFFSET): Likewise.
5858         (SVE_SIG_ZREGS_OFFSET): Likewise.
5859         (SVE_SIG_ZREG_OFFSET): Likewise.
5860         (SVE_SIG_ZREGS_SIZE): Likewise.
5861         (SVE_SIG_PREGS_OFFSET): Likewise.
5862         (SVE_SIG_PREG_OFFSET): Likewise.
5863         (SVE_SIG_PREGS_SIZE): Likewise.
5864         (SVE_SIG_FFR_OFFSET): Likewise.
5865         (SVE_SIG_REGS_SIZE): Likewise.
5866         (SVE_SIG_CONTEXT_SIZE): Likewise.
5867         (SVE_PT_REGS_MASK): Likewise.
5868         (SVE_PT_REGS_FPSIMD): Likewise.
5869         (SVE_PT_REGS_SVE): Likewise.
5870         (SVE_PT_VL_INHERIT): Likewise.
5871         (SVE_PT_VL_ONEXEC): Likewise.
5872         (SVE_PT_REGS_OFFSET): Likewise.
5873         (SVE_PT_FPSIMD_OFFSET): Likewise.
5874         (SVE_PT_FPSIMD_SIZE): Likewise.
5875         (SVE_PT_SVE_ZREG_SIZE): Likewise.
5876         (SVE_PT_SVE_PREG_SIZE): Likewise.
5877         (SVE_PT_SVE_FFR_SIZE): Likewise.
5878         (SVE_PT_SVE_FPSR_SIZE): Likewise.
5879         (SVE_PT_SVE_FPCR_SIZE): Likewise.
5880         (__SVE_SIG_TO_PT): Likewise.
5881         (SVE_PT_SVE_OFFSET): Likewise.
5882         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
5883         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
5884         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
5885         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
5886         (SVE_PT_SVE_PREG_OFFSET): Likewise.
5887         (SVE_PT_SVE_PREGS_SIZE): Likewise.
5888         (SVE_PT_SVE_FFR_OFFSET): Likewise.
5889         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
5890         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
5891         (SVE_PT_SVE_SIZE): Likewise.
5892         (SVE_PT_SIZE): Likewise.
5893         (HAS_SVE_STATE): New define.
5894
5895 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
5896
5897         * nat/aarch64-sve-linux-sigcontext.h: New file.
5898         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
5899         new files.
5900         (SVE_VQ_MIN): Likewise.
5901         (SVE_VQ_MAX): Likewise.
5902         (SVE_VL_MIN): Likewise.
5903         (SVE_VL_MAX): Likewise.
5904         (SVE_NUM_ZREGS): Likewise.
5905         (SVE_NUM_PREGS): Likewise.
5906         (sve_vl_valid): Likewise.
5907         (struct user_sve_header): Likewise.
5908
5909 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
5910             Richard Bunt <Richard.Bunt@arm.com>
5911
5912         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
5913         was requested by GDB.
5914
5915 2018-06-15  Tom de Vries  <tdevries@suse.de>
5916
5917         * MAINTAINERS (Write After Approval): Add Tom de Vries.
5918
5919 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
5920
5921         * gnulib/update-gnulib.sh: Print expected versions of
5922         autoconf/aclocal.
5923
5924 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
5925
5926         * arch-utils.c (default_type_align): Use type_length_units.
5927         * gdbtypes.c (type_align): Use type_length_units.
5928
5929 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5930
5931         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
5932         of 'define' command.
5933
5934 2018-06-14  Tom de Vries  <tdevries@suse.de>
5935
5936         PR cli/22573
5937         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
5938         get_no_prettyformat_print_options.
5939
5940 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
5941
5942         * sparc-nat.h: Include target.h.
5943         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
5944         <fetch_registers>: Remove this argument in function call.
5945         <store_registers>: Remove this argument in function call, remove
5946         extra semicolon.
5947         <low_forget_process>: Call sparc64_forget_process instead of
5948         sparc_forget_process.
5949
5950 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5951
5952         * procfs.c (_initialize_procfs): Use add_inf_child_target.
5953         (procfs_target::make_corefile_notes): Adjust to new
5954         target_read_alloc return type.
5955
5956 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
5957             Stephen Roberts  <stephen.roberts@arm.com>
5958
5959         PR gdb/22882
5960         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
5961         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
5962         Move should_notify_stop local into more inner scope.
5963
5964 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
5965             Stephen Roberts  <stephen.roberts@arm.com>
5966
5967         PR gdb/22882
5968         * infrun.c (resume_1): Add call to mark_async_event_handler.
5969
5970 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
5971
5972         * infrun.c (do_target_wait): Change old version of $pc printed.
5973
5974 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
5975
5976         * dwarf2read.c (read_index_from_section): Rename to...
5977         (read_gdb_index_from_section): ... this, update all callers.
5978         (dwarf2_read_index): Rename to...
5979         (dwarf2_read_gdb_index): ... this, update all callers.
5980
5981 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
5982
5983         * gdb/hppa-linux-nat.c
5984         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
5985         hppa_linux_nat_target::fetch_registers.
5986
5987 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
5988
5989         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
5990         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
5991         (AARCH64_DWARF_SVE_FFR): Likewise.
5992         (AARCH64_DWARF_SVE_P0): Likewise.
5993         (AARCH64_DWARF_SVE_Z0): Likewise.
5994
5995 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
5996
5997         * common/common-regcache.h (raw_compare): New function.
5998         * regcache.c (regcache::raw_compare): Likewise.
5999         * regcache.h (regcache::raw_compare): New declaration.
6000
6001 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6002
6003         * common/common-regcache.h (reg_buffer_common): New structure.
6004         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
6005         (reg_buffer::raw_supply): Likewise.
6006         (reg_buffer::raw_supply_integer): Likewise.
6007         (reg_buffer::raw_supply_zeroed): Likewise.
6008         (reg_buffer::raw_collect): Likewise.
6009         (reg_buffer::raw_collect_integer): Likewise.
6010         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
6011         (reg_buffer::raw_supply): Likewise.
6012         (reg_buffer::raw_supply_integer): Likewise.
6013         (reg_buffer::raw_supply_zeroed): Likewise.
6014         (reg_buffer::raw_collect): Likewise.
6015         (reg_buffer::raw_collect_integer): Likewise.
6016
6017 2018-06-10  Tom Tromey  <tom@tromey.com>
6018
6019         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
6020         (class remote_state) <stop_reply_queue>: Now std::vector.
6021         (remote_state::~remote_state)
6022         (remote_target::stop_reply_queue_length): Update.
6023         (struct queue_iter_param, remove_child_of_pending_fork)
6024         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
6025         (check_pending_event_prevents_wildcard_vcont_callback)
6026         (remove_stop_reply_for_inferior)
6027         (remove_stop_reply_of_remote_state)
6028         (remote_notif_remove_once_on_match)
6029         (stop_reply_match_ptid_and_ws)
6030         (remote_kill_child_of_pending_fork): Remove.
6031         (remote_target::remove_new_fork_children)
6032         (remote_target::check_pending_events_prevent_wildcard_vcont)
6033         (remote_target::discard_pending_stop_replies)
6034         (remote_target::discard_pending_stop_replies_in_queue)
6035         (remote_target::remote_notif_remove_queued_reply)
6036         (remote_target::queued_stop_reply)
6037         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
6038         (remote_target::wait, remote_target::kill_new_fork_children)
6039         (remote_target::async): Update.
6040
6041 2018-06-10  Tom Tromey  <tom@tromey.com>
6042
6043         * record-full.c (record_full_arch_list_cleanups): Remove.
6044         (record_full_message): Use try/catch.
6045         (record_full_wait_cleanups): Remove.
6046         (record_full_wait_1): Use try/catch.
6047         (record_full_restore): Likewise.
6048
6049 2018-06-10  Tom Tromey  <tom@tromey.com>
6050
6051         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
6052         declare VEC.  Add constructor.
6053         <in_target_beneath>: Now bool.
6054         (record_full_breakpoints): Now a std::vector, static.
6055         (record_full_sync_record_breakpoints)
6056         (record_full_init_record_breakpoints)
6057         (record_full_target::insert_breakpoint)
6058         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
6059
6060 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
6061
6062         * dwarf2read.c (process_cu_includes): Remove struct keyword.
6063         * serial.c (serial_interface_lookup): Remove struct keyword.
6064
6065 2018-06-10  Tom Tromey  <tom@tromey.com>
6066
6067         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
6068         method.
6069         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
6070         a method.
6071         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
6072         method.
6073         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
6074         "beneath" as a method.
6075         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
6076         Use "beneath" as a method.
6077
6078 2018-06-10  Tom Tromey  <tom@tromey.com>
6079
6080         * tracefile.c (struct trace_file_writer_deleter): New.
6081         <operator()>: Rename from trace_file_writer_xfree.
6082         (trace_file_writer_up): New typedef.
6083         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
6084
6085 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6086
6087         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
6088         <m_registers, m_register_status>: Change type to
6089         std::unique_ptr.
6090         * regcache.c (reg_buffer::reg_buffer): Use new instead of
6091         XCNEWVEC.
6092
6093 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6094
6095         * common/common-regcache.h (enum register_status): Add
6096         underlying type "signed char".
6097         * regcache.h (reg_buffer) <m_register_status>: Change type to
6098         register_status *.
6099         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
6100         register_status instead of signed char.
6101         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
6102         (reg_buffer::get_register_status): Remove cast.
6103         (readable_regcache::raw_read): Remove cast.
6104         (readable_regcache::cooked_read): Remove cast.
6105
6106 2018-06-09  Tom Tromey  <tom@tromey.com>
6107
6108         * source.c (reverse_search_command, forward_search_command): Use
6109         scoped_fd.
6110
6111 2018-06-09  Tom Tromey  <tom@tromey.com>
6112
6113         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
6114         (serial_ops_list): Now static, std::vector.
6115         (serial_interface_lookup, serial_add_interface): Update.
6116
6117 2018-06-09  Tom Tromey  <tom@tromey.com>
6118
6119         * dwarf2read.c (process_cu_includes): Update.
6120         (process_full_comp_unit): Update.
6121         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
6122         std::vector.
6123
6124 2018-06-08  Paul Koning  <paul_koning@dell.com>
6125
6126         PR gdb/23252
6127
6128         * python/python.c (do_start_initialization):
6129         Avoid call to internal Python API.
6130         (init__gdb_module): New function.
6131
6132 2018-06-08  Gary Benson <gbenson@redhat.com>
6133
6134         * linux-thread-db.c (valprint.h): New include.
6135         (struct check_thread_db_info): New structure.
6136         (check_thread_db_on_load, tdb_testinfo): New static globals.
6137         (check_thread_db, check_thread_db_callback): New functions.
6138         (try_thread_db_load_1): Run integrity checks if requested.
6139         (maintenance_check_libthread_db): New function.
6140         (_initialize_thread_db): Register "maint check libthread-db"
6141         and "maint set/show check-libthread-db".
6142         * NEWS: Mention the above new commands.
6143
6144 2018-06-08  Tom Tromey  <tom@tromey.com>
6145
6146         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
6147         now a method.
6148
6149 2018-06-08  Tom Tromey  <tom@tromey.com>
6150
6151         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
6152
6153 2018-06-08  Tom Tromey  <tom@tromey.com>
6154
6155         * common/btrace-common.h (struct btrace_data): Add constructor,
6156         destructor, move assignment operator.
6157         <empty, clear, fini>: New methods.
6158         <format>: Initialize.
6159         (btrace_data_init, btrace_data_fini, btrace_data_clear)
6160         (btrace_data_empty): Don't declare.
6161         * common/btrace-common.c (btrace_data_init): Remove.
6162         (btrace_data::fini): Rename from btrace_data_fini.
6163         (btrace_data::empty): Rename from btrace_data_empty.
6164         (btrace_data::clear): Rename from btrace_data_clear.  Return
6165         bool.
6166         * btrace.h (make_cleanup_btrace_data): Don't declare.
6167         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
6168         (parse_xml_btrace): Update.
6169         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
6170         (maint_btrace_clear_packet_history_cmd): Update.
6171
6172 2018-06-07  Pedro Alves  <palves@redhat.com>
6173
6174         * target.h (target_ops) <beneath>: Now a method.  All references
6175         updated.
6176         (class target_stack): New.
6177         * target.c (g_target_stack): New.
6178         (g_current_top_target): Delete.
6179         (current_top_target): Get the top target out of g_target_stack.
6180         (target_stack::push, target_stack::unpush): New.
6181         (push_target, unpush_target): Reimplement.
6182         (target_is_pushed): Reimplement in terms of g_target_stack.
6183         (target_ops::beneath, target_stack::find_beneath): New.
6184
6185 2018-06-07  Pedro Alves  <palves@redhat.com>
6186
6187         * target.h (find_target_beneath): Delete declaration.
6188         * target.c (find_target_beneath): Delete definition.
6189         * aix-thread.c: All callers of find_target_beneath adjusted to
6190         call target_ops::beneath instead.
6191         * bsd-uthread.c: Likewise.
6192         * linux-thread-db.c: Likewise.
6193         * ravenscar-thread.c: Likewise.
6194         * sol-thread.c: Likewise.
6195         * spu-multiarch.c: Likewise.
6196
6197 2018-06-07  Pedro Alves  <palves@redhat.com>
6198
6199         * target.h (target_ops) <beneath>: Now a method.  All references
6200         updated.
6201         (target_ops) <m_beneath>: New.
6202         * target.c (target_ops::beneath): New.
6203         * corelow.c: Adjust all references to target_ops::beneath.
6204         * linux-thread-db.c: Likewise.
6205         * make-target-delegates: Likewise.
6206         * record-btrace.c: Likewise.
6207         * record-full.c: Likewise.
6208         * remote.c: Likewise.
6209         * target.c: Likewise.
6210         * target-delegates.c: Regenerate.
6211
6212 2018-06-07  Pedro Alves  <palves@redhat.com>
6213
6214         * target.h (target_stack): Delete.
6215         (current_top_target): Declare function.
6216         * target.c (target_stack): Delete.
6217         (g_current_top_target): New.
6218         (current_top_target): New function.
6219         * auxv.c: Use current_top_target instead of target_stack
6220         throughout.
6221         * avr-tdep.c: Likewise.
6222         * breakpoint.c: Likewise.
6223         * corefile.c: Likewise.
6224         * elfread.c: Likewise.
6225         * eval.c: Likewise.
6226         * exceptions.c: Likewise.
6227         * frame.c: Likewise.
6228         * gdbarch-selftests.c: Likewise.
6229         * gnu-v3-abi.c: Likewise.
6230         * ia64-tdep.c: Likewise.
6231         * ia64-vms-tdep.c: Likewise.
6232         * infcall.c: Likewise.
6233         * infcmd.c: Likewise.
6234         * infrun.c: Likewise.
6235         * linespec.c: Likewise.
6236         * linux-tdep.c: Likewise.
6237         * minsyms.c: Likewise.
6238         * ppc-linux-nat.c: Likewise.
6239         * ppc-linux-tdep.c: Likewise.
6240         * procfs.c: Likewise.
6241         * regcache.c: Likewise.
6242         * remote.c: Likewise.
6243         * rs6000-tdep.c: Likewise.
6244         * s390-linux-nat.c: Likewise.
6245         * s390-tdep.c: Likewise.
6246         * solib-aix.c: Likewise.
6247         * solib-darwin.c: Likewise.
6248         * solib-dsbt.c: Likewise.
6249         * solib-spu.c: Likewise.
6250         * solib-svr4.c: Likewise.
6251         * solib-target.c: Likewise.
6252         * sparc-tdep.c: Likewise.
6253         * sparc64-tdep.c: Likewise.
6254         * spu-tdep.c: Likewise.
6255         * symfile.c: Likewise.
6256         * symtab.c: Likewise.
6257         * target-descriptions.c: Likewise.
6258         * target-memory.c: Likewise.
6259         * target.c: Likewise.
6260         * target.h: Likewise.
6261         * tracefile-tfile.c: Likewise.
6262         * tracepoint.c: Likewise.
6263         * valops.c: Likewise.
6264         * valprint.c: Likewise.
6265         * value.c: Likewise.
6266         * windows-tdep.c: Likewise.
6267         * mi/mi-main.c: Likewise.
6268
6269 2018-06-07  Tom Tromey  <tom@tromey.com>
6270
6271         * valprint.h (build_address_symbolic): Declare.
6272         * printcmd.c (print_address_symbolic): Update.
6273         (build_address_symbolic): Change "name" and "filename" to
6274         std::string.
6275         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
6276         Update.
6277         * defs.h (build_address_symbolic): Remove declaration.
6278
6279 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
6280
6281         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
6282         (aarch64_vnv_type): Add function.
6283         (aarch64_pseudo_register_name): Add V regs for SVE.
6284         (aarch64_pseudo_register_type): Likewise.
6285         (aarch64_pseudo_register_reggroup_p): Likewise.
6286         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
6287         (aarch64_pseudo_read_value): Add V regs for SVE.
6288         (aarch64_pseudo_write_2): Use V0 offset for SVE
6289         (aarch64_pseudo_write): Add V regs for SVE.
6290         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
6291
6292 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
6293
6294         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
6295         (sve_vl_from_vq): Likewise.
6296
6297 2018-06-05  Tom Tromey  <tom@tromey.com>
6298
6299         * cli/cli-cmds.c (show_version): Update.
6300         * top.c (print_gdb_version): Add "interactive" parameter.
6301         Update.
6302         * main.c (captured_main_1): Update.
6303         * top.h (print_gdb_version): Add "interactive" parameter and a
6304         comment.
6305
6306 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
6307
6308         * common/enum-flags.h: Add trailing semicolon to example in
6309         comment.
6310
6311 2018-06-05  Tom Tromey  <tom@tromey.com>
6312
6313         PR cli/12326:
6314         * NEWS: Add entry about pager.
6315         * utils.c (pagination_disabled_for_command): New global.
6316         (prompt_for_continue): Allow "c" response to prompt.
6317         (reinitialize_more_filter): Clear
6318         pagination_disabled_for_command.
6319         (fputs_maybe_filtered): Check pagination_disabled_for_command.
6320
6321 2018-06-04  Tom Tromey  <tom@tromey.com>
6322
6323         * ada-lang.h (ada_lookup_symbol_list): Update.
6324         * ada-lang.c (resolve_subexp): Update.
6325         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
6326         parameter.
6327         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
6328         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
6329         results parameter to std::vector.
6330         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
6331         Update.
6332         * ada-exp.y (block_lookup): Update.
6333         (select_possible_type_sym): Change type of syms.  Remove nsyms
6334         parameter.
6335         (write_var_or_type, write_name_assoc): Update.
6336
6337 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
6338
6339         * windows-nat.c (windows_nat_target::xfer_partial): Return
6340         TARGET_XFER_E_IO if we need to delegate to the target beneath
6341         but BENEATH is NULL.
6342
6343 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
6344
6345         * Makefile.in (config.status): Add configure.nat as a
6346         dependency.
6347
6348 2018-06-04  Tom Tromey  <tom@tromey.com>
6349
6350         * cp-name-parser.y (cpname_state): Add method declarations.
6351         (HANDLE_QUAL): Update.
6352         (cpname_state::d_grab, cpname_state::fill_comp)
6353         (cpname_state::make_operator, cpname_state::make_dtor)
6354         (cpname_state::make_builtin_type, cpname_state::make_name)
6355         (cpname_state::d_qualify, cpname_state::d_int_type)
6356         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
6357         (%union): Move earlier.
6358
6359 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6360
6361         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
6362
6363 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6364
6365         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
6366         (aarch64_pseudo_write_1): Likewise.
6367         (aarch64_pseudo_read_value): Use helper.
6368         (aarch64_pseudo_write): Likewise.
6369
6370 2018-06-04  Pedro Alves  <palves@redhat.com>
6371
6372         * darwin-nat.c (darwin_ops): Delete.
6373         (darwin_attach_pid): Use get_native_target.
6374
6375 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6376
6377         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
6378         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
6379
6380 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6381
6382         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
6383         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
6384         (aarch64_gdbarch_init): Check for SVE.
6385         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
6386
6387 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6388
6389         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
6390         * aarch64-tdep.h (aarch64_read_description): Likewise.
6391         * arch/aarch64.c (aarch64_create_target_description): Likewise.
6392         * arch/aarch64.h (aarch64_create_target_description): Likewise.
6393         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
6394         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
6395         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
6396
6397 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
6398
6399         * value.c (value_fetch_lazy_bitfield): New.
6400         (value_fetch_lazy_memory): New.
6401         (value_fetch_lazy_register): New.
6402         (value_fetch_lazy): Factor out to smaller functions.
6403
6404 2018-06-01  Tom Tromey  <tom@tromey.com>
6405
6406         * cp-name-parser.y (backslashable, represented): Now const.
6407
6408 2018-06-01  Tom Tromey  <tom@tromey.com>
6409
6410         * cp-name-parser.y: Include parser-defs.h.
6411         (parser_fprintf): Remove declaration.
6412
6413 2018-06-01  Tom Tromey  <tom@tromey.com>
6414
6415         * cp-name-parser.y: Use %pure-parser, %lex-param, and
6416         %parse-param.
6417         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
6418         (global_result): Remove globals.
6419         (struct cpname_state): New.
6420         (yyparse): Don't declare.
6421         (yylex, yyerror): Move declarations after %union.
6422         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
6423         (make_name): Add state parameter.
6424         Update all callers.
6425         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
6426         parameter.
6427         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
6428         Update.
6429         (yylex): Add lvalp, state parameters.
6430         (yyerror): Add state parameter.
6431         (cp_demangled_name_to_comp): Update.
6432
6433 2018-06-01  Tom Tromey  <tom@tromey.com>
6434
6435         * cp-name-parser.y (parser_fprintf): Declare.
6436         (GDB_YY_REMAP_PREFIX): Define.
6437         Include yy-remap.h.  Don't redefine yy* identifiers.
6438
6439 2018-06-01  Tom Tromey  <tom@tromey.com>
6440
6441         * python/py-type.c (typy_legacy_template_argument): Update.
6442         * cp-support.h (cp_demangled_name_to_comp): Update.
6443         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
6444         parameter to be a "std::string *".
6445         (main): Update.
6446
6447 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
6448
6449         * ada-lex.l: Include "diagnostics.h" instead of
6450         "common/diagnostics.h".
6451         * unittests/environ-selftests.c: Likewise.
6452         * common/diagnostics.h: Moved to ../include.
6453
6454 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
6455
6456         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
6457         to language_mode_manual while calling breakpoint_re_set_one.
6458
6459 2018-06-01  Tom Tromey  <tom@tromey.com>
6460
6461         * valops.c (value_cast_structs, destructor_name_p): Update.
6462         * symtab.c (gdb_mangle_name): Update.
6463         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
6464         Update.
6465         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
6466         (pascal_object_print_value_fields, pascal_object_print_value):
6467         Update.
6468         * p-typeprint.c (pascal_type_print_derivation_info): Update.
6469         * linespec.c (find_methods): Update.
6470         * gdbtypes.h (type_name_no_tag): Remove.
6471         (type_name_or_error): Rename from type_name_no_tag_or_error.
6472         * gdbtypes.c (type_name_no_tag): Remove.
6473         (type_name_or_error): Rename from type_name_no_tag_or_error.
6474         (lookup_struct_elt_type, check_typedef): Update.
6475         * expprint.c (print_subexp_standard): Update.
6476         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
6477         * d-namespace.c (d_lookup_nested_symbol): Update.
6478         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
6479         (cp_print_class_member): Update.
6480         * cp-namespace.c (cp_lookup_nested_symbol): Update.
6481         * completer.c (add_struct_fields): Update.
6482         * c-typeprint.c (cp_type_print_derivation_info)
6483         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
6484         Update.
6485         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
6486         (ada_prefer_type, ada_is_exception_sym): Update.
6487
6488 2018-06-01  Tom Tromey  <tom@tromey.com>
6489
6490         * valops.c (enum_constant_from_type, value_namespace_elt)
6491         (value_maybe_namespace_elt): Update.
6492         * valarith.c (find_size_for_pointer_math): Update.
6493         * target-descriptions.c (make_gdb_type): Update.
6494         * symmisc.c (print_symbol): Update.
6495         * stabsread.c (define_symbol, read_type)
6496         (complain_about_struct_wipeout, add_undefined_type)
6497         (cleanup_undefined_types_1): Update.
6498         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
6499         (rust_range_type_p, val_print_struct, rust_print_struct_def)
6500         (rust_internal_print_type, rust_composite_type)
6501         (rust_evaluate_funcall, rust_evaluate_subexp)
6502         (rust_inclusive_range_type_p): Update.
6503         * python/py-type.c (typy_get_tag): Update.
6504         * p-typeprint.c (pascal_type_print_base): Update.
6505         * mdebugread.c (parse_symbol, parse_type): Update.
6506         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
6507         Update.
6508         * guile/scm-type.c (gdbscm_type_tag): Update.
6509         * go-lang.c (sixg_string_p): Update.
6510         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
6511         Update.
6512         * gdbtypes.h (struct main_type) <tag_name>: Remove.
6513         (TYPE_TAG_NAME): Remove.
6514         * gdbtypes.c (type_name_no_tag): Simplify.
6515         (check_typedef, check_types_equal, recursive_dump_type)
6516         (copy_type_recursive, arch_composite_type): Update.
6517         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
6518         in summary mode when needed.
6519         * eval.c (evaluate_funcall): Update.
6520         * dwarf2read.c (fixup_go_packaging, read_structure_type)
6521         (process_structure_scope, read_enumeration_type)
6522         (read_namespace_type, read_module_type, determine_prefix): Update.
6523         * cp-support.c (inspect_type): Update.
6524         * coffread.c (process_coff_symbol, decode_base_type): Update.
6525         * c-varobj.c (c_is_path_expr_parent): Update.
6526         * c-typeprint.c (c_type_print_base_struct_union): Update.
6527         (c_type_print_base_1): Update.  Print struct/class/union/enum in
6528         summary when using C language.
6529         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
6530         (gen_maybe_namespace_elt): Update.
6531         * ada-lang.c (ada_type_name): Simplify.
6532         (empty_record, ada_template_to_fixed_record_type_1)
6533         (template_to_static_fixed_type)
6534         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
6535
6536 2018-06-01  Tom Tromey  <tom@tromey.com>
6537
6538         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
6539         c_print_type.
6540         * c-typeprint.c (c_print_type_1): Add "language" parameter.
6541         (c_print_type): Update.
6542         (c_print_type): New overload.
6543         (c_type_print_varspec_prefix, c_type_print_args)
6544         (c_type_print_varspec_suffix, c_print_type_no_offsets)
6545         (c_type_print_base_struct_union, c_type_print_base_1)
6546         (cp_type_print_method_args): Add "language" parameter.
6547         (c_type_print_base): Update.
6548         * c-lang.h (c_print_type): Add new overload.
6549
6550 2018-06-01  Tom Tromey  <tom@tromey.com>
6551
6552         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
6553         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
6554
6555 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
6556
6557         * aarch64-tdep.c (aarch64_sve_register_names): New const
6558         var.
6559         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
6560         (AARCH64_SVE_Z_REGS_NUM): New define.
6561         (AARCH64_SVE_P_REGS_NUM): Likewise.
6562         (AARCH64_SVE_NUM_REGS): Likewise.
6563
6564 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
6565
6566         * nat/linux-ptrace.h [__alpha__]
6567         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
6568         definitions.
6569
6570 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
6571
6572         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
6573         the endianness selected.
6574         * NEWS: Document `set endian auto' mode operation update.
6575
6576 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
6577
6578         * Makefile.in: Add new header.
6579         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
6580         (sve_vl_from_vg): Likewise.
6581         (sve_vq_from_vl): Likewise.
6582         (sve_vl_from_vq): Likewise.
6583         (sve_vq_from_vg): Likewise.
6584         (sve_vg_from_vq): Likewise.
6585         * configure.nat: Add new c file.
6586         * nat/aarch64-sve-linux-ptrace.c: New file.
6587         * nat/aarch64-sve-linux-ptrace.h: New file.
6588
6589 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
6590
6591         * aarch64-linux-nat.c (aarch64_linux_read_description):
6592         Add parmeter zero.
6593         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
6594         Likewise.
6595         * aarch64-tdep.c (tdesc_aarch64_list): Add.
6596         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
6597         (aarch64_gdbarch_init): Add parmeter zero.
6598         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
6599         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
6600         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
6601         parmeter.
6602         * doc/gdb.texinfo: Describe SVE feature
6603         * features/aarch64-sve.c: New file.
6604
6605 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
6606
6607         PR gdb/23210
6608         * gdbarch.sh (significant_addr_bit): Default to zero when
6609         not set by target architecture.
6610         * gdbarch.c: Re-generated.
6611         * utils.c (address_significant): Update.
6612
6613 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
6614
6615         * stack.c (func_command): Remove trailing newline in call to error.
6616
6617 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6618
6619         * regcache.h (regcache_raw_collect): Remove, update callers to
6620         use regcache::raw_collect.
6621         * regcache.c (regcache_raw_collect): Remove.
6622
6623 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6624
6625         * regcache.h (regcache_raw_supply): Remove, update callers to
6626         use detached_regcache::raw_supply.
6627         * regcache.c (regcache_raw_supply): Remove.
6628
6629 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6630
6631         * regcache.h (regcache_cooked_write_part): Remove, update
6632         callers to use regcache::cooked_write_part.
6633         * regcache.c (regcache_cooked_write_part): Remove.
6634
6635 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6636
6637         * regcache.h (regcache_cooked_read_part): Remove, update callers
6638         to use readable_regcache::cooked_read_part.
6639         * regcache.c (regcache_cooked_read_part): Remove.
6640
6641 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6642
6643         * regcache.h (regcache_cooked_read_value): Remove, update
6644         callers to use readable_regcache::cooked_read_value.
6645         * regcache.c (regcache_cooked_read_value): Remove.
6646
6647 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6648
6649         * regcache.h (regcache_cooked_write): Remove, update callers to
6650         use regcache::cooked_write.
6651         * regcache.c (regcache_cooked_write): Remove.
6652
6653 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6654
6655         * regcache.h (regcache_invalidate): Remove, update callers to
6656         use detached_regcache::invalidate instead.
6657         * regcache.c (regcache_invalidate): Remove.
6658
6659 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6660
6661         * regcache.h (regcache_raw_write_part): Remove, update callers
6662         to use regcache::raw_write_part instead.
6663         * regcache.c (regcache_raw_write_part): Remove.
6664
6665 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6666
6667         * regcache.h (regcache_raw_read_part): Remove, update callers to
6668         use readable_regcache::raw_read_part instead.
6669         * regcache.c (regcache_raw_read_part): Remove.
6670
6671 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6672
6673         * regcache.h (regcache_cooked_read): Remove, update callers to
6674         use readable_regcache::cooked_read instead.
6675         * regcache.c (regcache_cooked_read): Remove.
6676
6677 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6678
6679         * regcache.h (regcache_raw_write): Remove, update callers to use
6680         regcache::raw_write instead.
6681         * regcache.c (regcache_raw_write): Remove.
6682
6683 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6684
6685         * regcache.h (regcache_raw_read): Remove, update callers to use
6686         readable_regcache::raw_read instead.
6687         * regcache.c (regcache_raw_read): Remove.
6688
6689 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6690
6691         * regcache.h (regcache_raw_update): Remove, update callers to
6692         use readable_regcache::raw_update instead.
6693         * regcache.c (regcache_raw_update): Remove.
6694
6695 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6696
6697         * regcache.h (regcache_register_status): Remove, update callers
6698         to use reg_buffer::get_register_status directly instead.
6699         * regcache.c (regcache_register_status): Remove.
6700
6701 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6702
6703         * regcache.h (regcache_get_ptid): Remove, update all callers to
6704         call regcache::ptid instead.
6705         * regcache.c (regcache_get_ptid): Remove.
6706
6707 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6708
6709         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
6710
6711 2018-05-30  Pedro Alves  <palves@redhat.com>
6712
6713         * common/common-exceptions.h (exception_rethrow): Use
6714         ATTRIBUTE_NORETURN.
6715
6716 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
6717
6718         * breakpoint.c (print_solib_event, check_status_catch_solib):
6719         Remove struct keyword in range-based for loops.
6720         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
6721         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
6722         Likewise.
6723         * linespec.c (find_superclass_methods, search_minsyms_for_name):
6724         Likewise.
6725         * symfile.c (addr_info_make_relative): Likewise.
6726         * thread.c (value_in_thread_stack_temporaries): Likewise.
6727
6728 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
6729
6730         PR gdb/16841
6731         * valops.c (value_struct_elt_for_reference): Call check_typedef on
6732         aggregate type to get its real type before accessing it.
6733
6734 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
6735
6736         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
6737         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
6738         * coff-pe-read.c (add_pe_forwarded_sym): Replace
6739         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
6740         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
6741         * jit.c (jit_breakpoint_re_set_internal): Likewise.
6742         * printcmd.c (info_address_command): Likewise.
6743
6744 2018-05-29  Tom Tromey  <tom@tromey.com>
6745
6746         * windows-nat.c (handle_exception): Update fall-through comment.
6747
6748 2018-05-29  Tom Tromey  <tom@tromey.com>
6749
6750         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
6751         (struct program_space) <added_solibs>: Now a std::vector.
6752         * breakpoint.c (print_solib_event): Update.
6753         (check_status_catch_solib): Update.
6754         * progspace.c (clear_program_space_solib_cache): Update.
6755         * solib.c (update_solib_list): Update.
6756
6757 2018-05-29  Tom Tromey  <tom@tromey.com>
6758
6759         * python/py-type.c (typy_richcompare): Update.
6760         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
6761         * gdbtypes.h (types_deeply_equal): Return bool.
6762         (types_equal): Likewise.
6763         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
6764         declare VEC.
6765         (check_types_equal): Change worklist to std::vector.  Return
6766         bool.
6767         (struct type_equality_entry): Add constructor.
6768         (compare_maybe_null_strings): Return bool.
6769         (check_types_worklist): Return bool.  Change worklist to
6770         std::vector.
6771         (types_deeply_equal): Use std::vector.
6772         (types_equal): Return bool.
6773         (compare_maybe_null_strings): Simplify.
6774
6775 2018-05-29  Tom Tromey  <tom@tromey.com>
6776
6777         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
6778
6779 2018-05-29  Tom Tromey  <tom@tromey.com>
6780
6781         * objc-lang.h: Don't include cp-support.h.
6782         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
6783         declare VEC.
6784
6785 2018-05-27  Tom Tromey  <tom@tromey.com>
6786
6787         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
6788
6789 2018-05-25  Tom Tromey  <tom@tromey.com>
6790
6791         * value.c (value::location): Initialize.
6792
6793 2018-05-25  Tom Tromey  <tom@tromey.com>
6794
6795         * dbxread.c (init_bincl_list): Remove.
6796         (bincl_list): Now a std::vector.
6797         (bincls_allocated, next_bincl): Remove.
6798         (free_bincl_list, do_free_bincl_list_cleanup)
6799         (make_cleanup_free_bincl_list): Remove.
6800         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
6801         unique_xmalloc_ptr.
6802         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
6803         (struct header_file_location): Add constructor.
6804         (add_bincl_to_list): Remove.
6805
6806 2018-05-25  Tom Tromey  <tom@tromey.com>
6807
6808         * tui/tui.c (tui_enable): Update.
6809         * mi/mi-interp.c (mi_interp::init): Update.
6810         * interps.h (class interp) <name>: New method.
6811         <m_name>: Rename from name.
6812         (~scoped_restore_interp): Update.
6813         * interps.c (interp::interp): Update.
6814         (interp_add, interp_set, interp_lookup_existing)
6815         (current_interp_named_p): Update.
6816
6817 2018-05-25  Tom Tromey  <tom@tromey.com>
6818
6819         * interps.c (interp_name): Remove.
6820         * mi/mi-interp.c (mi_interp::init): Update.
6821         * interps.h (interp_name): Remove.
6822         (~scoped_restore_interp): Update.
6823         * tui/tui.c (tui_enable): Update.
6824
6825 2018-05-25  Tom Tromey  <tom@tromey.com>
6826
6827         * utils.c (fputs_maybe_filtered): Update.
6828         * linespec.c (decode_line_full): Update.
6829         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
6830         (mi_print_breakpoint_for_event, mi_solib_loaded)
6831         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
6832         (mi_user_selected_context_changed): Update.
6833         * mi/mi-main.c (mi_execute_command): Update.
6834         * cli/cli-script.c (execute_control_command): Update.
6835         * python/python.c (execute_gdb_command): Update.
6836         * solib.c (info_sharedlibrary_command): Update.
6837         * interps.c (interp_ui_out): Remove.
6838         * interps.h (interp_ui_out): Remove.
6839
6840 2018-05-25  Tom Tromey  <tom@tromey.com>
6841
6842         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
6843         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
6844         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
6845
6846 2018-05-25  Tom Tromey  <tom@tromey.com>
6847
6848         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
6849         * interps.c (interp_exec): Use scoped_restore.
6850
6851 2018-05-25  Tom Tromey  <tom@tromey.com>
6852
6853         * remote.c (remote_target::remote_file_get): Use
6854         gdb::byte_vector.
6855         (remote_target::remote_file_put): Likewise.
6856
6857 2018-05-25  Tom Tromey  <tom@tromey.com>
6858
6859         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
6860         a std::string.
6861         (get_pe_section_index, add_pe_exported_sym): Update.
6862         (read_pe_exported_syms): Use gdb::def_vector.
6863
6864 2018-05-25  Tom Tromey  <tom@tromey.com>
6865
6866         * frame.c (remove_prev_frame): Remove.
6867         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
6868
6869 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
6870
6871         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
6872         Remove prototypes.
6873         * mips-linux-nat.c (supply_fpregset): Always call
6874         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
6875         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
6876         `mips_fill_fpregset'.
6877         * mips-linux-tdep.c (mips_supply_fpregset)
6878         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
6879         (mips_fill_fpregset_wrapper): Remove functions.
6880         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
6881         (mips_linux_fpregset): Remove variable.
6882         (mips_linux_iterate_over_regset_sections): Use
6883         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
6884         (mips_linux_o32_sigframe_init): Remove comment.
6885
6886 2018-05-25  Pedro Alves  <palves@redhat.com>
6887
6888         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
6889         (struct readahead_cache, struct packet_reg, struct
6890         remote_arch_state, class remote_state): Move higher up in the
6891         file.
6892         (remote_target::m_remote_state): Now an object instead of a pointer.
6893         (remote_target::get_remote_state): Adjust.
6894
6895 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
6896
6897         * stack.c (select_and_print_frame): Delete.
6898         (struct function_bounds): Move struct within function.
6899         (func_command): Most content moved into new function
6900         find_frame_for_function, use new function, print result, add
6901         function comment.
6902         (find_frame_for_function): New function, now returns a result.
6903
6904 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6905
6906         * stack.c (iterate_over_block_arg_vars): Fix comment.
6907         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
6908
6909 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
6910
6911         PR gdb/23203
6912         * frame.c
6913         (scoped_restore_selected_frame::scoped_restore_selected_frame):
6914         Define.
6915         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
6916         Define.
6917         * frame.h (class scoped_restore_selected_frame): New class.
6918         * stack.c (print_frame_local_vars): Remove catching and rethrowing
6919         of any exception, use scoped_restore_selected_frame to restore the
6920         frame instead.
6921
6922 2018-05-24  Pedro Alves  <palves@redhat.com>
6923
6924         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
6925         override.
6926
6927 2018-05-23  Tom Tromey  <tom@tromey.com>
6928
6929         * complaints.c (struct complaints): Remove.
6930         (symfile_complaint_book): Remove.
6931         (series): New global.
6932         (complaint_internal): Update.
6933         (clear_complaints): Update.
6934
6935 2018-05-23  Tom Tromey  <tom@tromey.com>
6936
6937         * complaints.c (counters): New global.
6938         (struct complain): Remove.
6939         (struct complaints) <root>: Remove.
6940         (complaint_sentinel): Remove.
6941         (symfile_complaint_book): Update.
6942         (find_complaint) Remove.
6943         (complaint_internal, clear_complaints): Update.
6944
6945 2018-05-23  Tom Tromey  <tom@tromey.com>
6946
6947         * complaints.c (struct complain) <file, line>: Remove.
6948         (find_complaint): Remove file, line parameters.
6949         (complaint_internal): Update.
6950
6951 2018-05-23  Tom Tromey  <tom@tromey.com>
6952
6953         * complaints.c (vcomplaint): Remove.
6954         (complaint_internal) Merge in contents of vcomplaint.
6955
6956 2018-05-23  Tom Tromey  <tom@tromey.com>
6957
6958         * complaints.c (struct complaints) <explanation>: Remove.
6959         (symfile_explanations): Remove.
6960         (symfile_complaint_book): Update.
6961         (vcomplaint): Update.
6962         (struct explanation): Remove.
6963
6964 2018-05-23  Tom Tromey  <tom@tromey.com>
6965
6966         * complaints.c (symfile_complaints): Remove.
6967         (complaint_internal): Remove "complaints" parameter.
6968         (clear_complaints, vcomplaint): Remove "c" parameter.
6969         (get_complaints): Remove.
6970         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
6971         (dwarf2_debug_line_missing_file_complaint)
6972         (dwarf2_debug_line_missing_end_sequence_complaint)
6973         (dwarf2_complex_location_expr_complaint)
6974         (dwarf2_const_value_length_mismatch_complaint)
6975         (dwarf2_section_buffer_overflow_complaint)
6976         (dwarf2_macro_malformed_definition_complaint)
6977         (dwarf2_invalid_attrib_class_complaint)
6978         (create_addrmap_from_index, dw2_symtab_iter_next)
6979         (dw2_expand_marked_cus)
6980         (dw2_debug_names_iterator::find_vec_in_debug_names)
6981         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
6982         (create_debug_type_hash_table, init_cutu_and_read_dies)
6983         (partial_die_parent_scope, add_partial_enumeration)
6984         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
6985         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
6986         (read_import_statement, read_file_scope, create_dwo_cu_reader)
6987         (create_cus_hash_table, create_dwp_hash_table)
6988         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
6989         (dwarf2_rnglists_process, dwarf2_ranges_process)
6990         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
6991         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
6992         (handle_struct_member_die, process_structure_scope)
6993         (read_array_type, read_common_block, read_module_type)
6994         (read_tag_pointer_type, read_typedef, read_base_type)
6995         (read_subrange_type, load_partial_dies, partial_die_info::read)
6996         (partial_die_info::read, partial_die_info::read)
6997         (partial_die_info::read, read_checked_initial_length_and_offset)
6998         (dwarf2_string_attr, read_formatted_entries)
6999         (dwarf_decode_line_header)
7000         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
7001         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
7002         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
7003         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
7004         (get_signatured_type, get_DW_AT_signature_type)
7005         (decode_locdesc, file_file_name, consume_improper_spaces)
7006         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
7007         (dwarf_decode_macro_bytes, dwarf_decode_macros)
7008         (dwarf2_symbol_mark_computed, set_die_type)
7009         (read_attribute_value): Update.
7010         * stap-probe.c (handle_stap_probe, get_stap_base_address):
7011         Update.
7012         * dbxread.c (unknown_symtype_complaint)
7013         (lbrac_mismatch_complaint, repeated_header_complaint)
7014         (set_namestring, function_outside_compilation_unit_complaint)
7015         (read_dbx_symtab, process_one_symbol): Update.
7016         * gdbtypes.c (stub_noname_complaint): Update.
7017         * windows-nat.c (handle_unload_dll): Update.
7018         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
7019         (decode_base_type): Update.
7020         * xcoffread.c (bf_notfound_complaint, ef_complaint)
7021         (eb_complaint, record_include_begin, record_include_end)
7022         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
7023         (process_xcoff_symbol, read_symbol)
7024         (function_outside_compilation_unit_complaint)
7025         (scan_xcoff_symtab): Update.
7026         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
7027         * buildsym.c (finish_block_internal, make_blockvector)
7028         (end_symtab_get_static_block, augment_type_symtab): Update.
7029         * dtrace-probe.c (dtrace_process_dof)
7030         (dtrace_static_probe_ops::get_probes): Update.
7031         * complaints.h (struct complaint): Don't declare.
7032         (symfile_complaints): Remove.
7033         (complaint_internal): Remove "complaints" parameter.
7034         (complaint): Likewise.
7035         (clear_complaints): Likewise.
7036         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7037         (reread_symbols): Update.
7038         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
7039         (dwarf2_frame_cache, decode_frame_entry): Update.
7040         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
7041         * objc-lang.c (lookup_objc_class, lookup_child_selector)
7042         (info_selectors_command): Update.
7043         * macrotab.c (macro_include, check_for_redefinition)
7044         (macro_undef): Update.
7045         * objfiles.c (filter_overlapping_sections): Update.
7046         * stabsread.c (invalid_cpp_abbrev_complaint)
7047         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
7048         (define_symbol, error_type, read_type, rs6000_builtin_type)
7049         (stabs_method_name_from_physname, read_member_functions)
7050         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
7051         (attach_fields_to_type, complain_about_struct_wipeout)
7052         (read_range_type, read_args, common_block_start)
7053         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
7054         Update.
7055         * mdebugread.c (index_complaint, unknown_ext_complaint)
7056         (basic_type_complaint, bad_tag_guess_complaint)
7057         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
7058         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
7059         (parse_procedure, parse_lines)
7060         (function_outside_compilation_unit_complaint)
7061         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
7062         (bad_tag_guess_complaint, reg_value_complaint): Update.
7063         * cp-support.c (demangled_name_complaint): Update.
7064         * macroscope.c (sal_macro_scope): Update.
7065         * dwarf-index-write.c (class debug_names): Update.
7066
7067 2018-05-23  Tom Tromey  <tom@tromey.com>
7068
7069         * complaints.c (clear_complaints): Remove "noisy" parameter.
7070         * complaints.h (clear_complaints): Update.
7071         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7072         (reread_symbols): Update.
7073
7074 2018-05-23  Tom Tromey  <tom@tromey.com>
7075
7076         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
7077         SUBSEQUENT_MESSAGE.
7078         (vcomplaint, clear_complaints): Update.
7079         (symfile_explanations): Remove some messages.
7080
7081 2018-05-23  Tom Tromey  <tom@tromey.com>
7082
7083         * complaints.c (internal_complaint): Remove.
7084         * complaints.h (internal_complaint): Remove.
7085
7086 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7087
7088         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
7089
7090 2018-05-22  Pedro Alves  <palves@redhat.com>
7091
7092         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
7093         (remote_fileio_badfd, remote_fileio_return_errno)
7094         (remote_fileio_return_success, remote_fileio_func_open)
7095         (remote_fileio_func_open, remote_fileio_func_close)
7096         (remote_fileio_func_read, remote_fileio_func_write)
7097         (remote_fileio_func_lseek, remote_fileio_func_rename)
7098         (remote_fileio_func_unlink, remote_fileio_func_stat)
7099         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
7100         (remote_fileio_func_isatty, remote_fileio_func_system): Add
7101         remote_target parameter.
7102         (remote_fio_func_map) <func>: Add remote_target parameter.
7103         (do_remote_fileio_request, remote_fileio_request):
7104         * remote-fileio.h (remote_fileio_request):
7105         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
7106         remote_target parameter.
7107         (remote_notif_process, handle_notification): Adjust to pass down
7108         the remote.
7109         (remote_notif_state_allocate): Add remote_target parameter.  Save
7110         it.
7111         * remote-notif.h (struct remote_target): Forward declare.
7112         (struct notif_client) <parse, ack, can_get_pending_events>: Add
7113         remote_target parameter.
7114         (struct remote_notif_state) <remote>: New field.
7115         (remote_notif_ack, remote_notif_parse): Add remote_target
7116         parameter.
7117         (remote_notif_state_allocate, remote_notif_state_allocate): Add
7118         remote_target parameter.
7119         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
7120         (threads_listing_context, rmt_thread_action, protocol_feature)
7121         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
7122         (packet_result, struct threads_listing_context, remote_state):
7123         Move definitions and declarations higher up.
7124         (remote_target) <~remote_target>: Declare.
7125         (remote_download_command_source, remote_file_put, remote_file_get)
7126         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
7127         (remote_hostio_pread_vFile, remote_hostio_send_command)
7128         (remote_hostio_set_filesystem, remote_hostio_open)
7129         (remote_hostio_close, remote_hostio_unlink, remote_state)
7130         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
7131         (get_memory_write_packet_size, get_memory_read_packet_size)
7132         (append_pending_thread_resumptions, remote_detach_1)
7133         (append_resumption, remote_resume_with_vcont)
7134         (add_current_inferior_and_thread, wait_ns, wait_as)
7135         (process_stop_reply, remote_notice_new_inferior)
7136         (process_initial_stop_replies, remote_add_thread)
7137         (btrace_sync_conf, remote_btrace_maybe_reopen)
7138         (remove_new_fork_children, kill_new_fork_children)
7139         (discard_pending_stop_replies, stop_reply_queue_length)
7140         (check_pending_events_prevent_wildcard_vcont)
7141         (discard_pending_stop_replies_in_queue, stop_reply)
7142         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
7143         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
7144         (remote_interrupt_as, remote_interrupt_ns)
7145         (remote_get_noisy_reply, remote_query_attached)
7146         (remote_add_inferior, remote_current_thread, get_current_thread)
7147         (set_thread, set_general_thread, set_continue_thread)
7148         (set_general_process, write_ptid)
7149         (remote_unpack_thread_info_response, remote_get_threadinfo)
7150         (parse_threadlist_response, remote_get_threadlist)
7151         (remote_threadlist_iterator, remote_get_threads_with_ql)
7152         (remote_get_threads_with_qxfer)
7153         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
7154         (get_offsets, remote_check_symbols, remote_supported_packet)
7155         (remote_query_supported, remote_packet_size)
7156         (remote_serial_quit_handler, remote_detach_pid)
7157         (remote_vcont_probe, remote_resume_with_hc)
7158         (send_interrupt_sequence, interrupt_query)
7159         (remote_notif_get_pending_events, fetch_register_using_p)
7160         (send_g_packet, process_g_packet, fetch_registers_using_g)
7161         (store_register_using_P, store_registers_using_G)
7162         (set_remote_traceframe, check_binary_download)
7163         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
7164         (remote_xfer_live_readonly_partial, remote_read_bytes)
7165         (remote_send_printf, remote_flash_write, readchar)
7166         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
7167         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
7168         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
7169         (extended_remote_disable_randomization, extended_remote_run)
7170         (send_environment_packet, extended_remote_environment_support)
7171         (extended_remote_set_inferior_cwd, remote_write_qxfer)
7172         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
7173         (packet_command): Now methods of ...
7174         (remote_target): ... this class.
7175         (m_remote_state) <remote_target>: New field.
7176         (struct remote_state) <stop_reply_queue,
7177         remote_async_inferior_event_token, wait_forever_enabled_p>: New
7178         fields.
7179         (remote_state::remote_state): Allocate stop_reply_queue.
7180         (remote_state): Delete global.
7181         (get_remote_state_raw): Delete.
7182         (remote_target::get_remote_state): Allocate m_remote_state on
7183         demand.
7184         (get_current_remote_target): New.
7185         (remote_ops, extended_remote_ops): Delete.
7186         (wait_forever_enabled_p, remote_async_inferior_event_token):
7187         Delete, moved to struct remote_state.
7188         (remote_target::close): Delete self.  Destruction bits split to
7189         ...
7190         (remote_target::~remote_target): ... this.
7191         (show_memory_packet_size): Adjust to use
7192         get_current_remote_target.
7193         (struct protocol_feature) <func>: Add remote_target parameter.
7194         All callers adjusted.
7195         (curr_quit_handler_target): New.
7196         (remote_serial_quit_handler): Reimplement.
7197         (remote_target::open_1): Adjust to use get_current_remote_target.
7198         Heap-allocate remote_target/extended_remote_target instances.
7199         (vcont_builder::vcont_builder): Add remote_target parameter, and
7200         save it in m_remote.  All callers adjusted.
7201         (vcont_builder::m_remote): New field.
7202         (vcont_builder::restart, vcont_builder::flush)
7203         (vcont_builder::push_action): Use it.
7204         (remote_target::commit_resume): Use it.
7205         (struct queue_iter_param) <remote>: New field.
7206         (remote_target::remove_new_fork_children): Fill in 'remote' field.
7207         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
7208         (check_pending_event_prevents_wildcard_vcont_callback)
7209         (remote_target::check_pending_events_prevent_wildcard_vcont)
7210         (remote_target::discard_pending_stop_replies)
7211         (remote_target::discard_pending_stop_replies_in_queue)
7212         (remote_target::remote_notif_remove_queued_reply): Fill in
7213         'remote' field.
7214         (remote_notif_get_pending_events): New.
7215         (remote_target::readchar, remote_target::remote_serial_write):
7216         Save/restore curr_quit_handler_target.
7217         (putpkt): New.
7218         (kill_new_fork_children): Fill in 'remote' field.
7219         (packet_command): Use get_current_remote_target, defer to
7220         remote_target method of same name.
7221         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
7222         parameter, and save it in m_remote.  All callers adjusted.
7223         (scoped_remote_fd::release): Use m_remote.
7224         (scoped_remote_fd::m_remote): New field.
7225         (remote_file_put, remote_file_get, remote_file_delete): Use
7226         get_current_remote_target, defer to remote_target method of same
7227         name.
7228         (remote_btrace_reset): Add remote_state paremeter.  Update all
7229         callers.
7230         (remote_async_inferior_event_handler). Pass down 'data'.
7231         (remote_new_objfile): Use get_current_remote_target.
7232         (remote_target::vcont_r_supported): New.
7233         (set_range_stepping): Use get_current_remote_target and
7234         remote_target::vcont_r_supported.
7235         (_initialize_remote): Don't allocate 'remote_state' and
7236         'stop_reply_queue' globals.
7237         * remote.h (struct remote_target): Forward declare.
7238         (getpkt, putpkt, remote_notif_get_pending_events): Add
7239         'remote_target' parameter.
7240
7241 2018-05-22  Pedro Alves  <palves@redhat.com>
7242
7243         * remote.c (vcont_builder): Now a class.  Make all data members
7244         private.
7245         (vcont_builder) <vcont_builder, restart, flush, push_action>:
7246         Declare methods.
7247         (vcont_builder_restart): Rename to ...
7248         (vcont_builder::restart): ... this.
7249         (vcont_builder_flush): Rename to ...
7250         (vcont_builder::flush): ... this.
7251         (vcont_builder_push_action): Rename to ...
7252         (vcont_builder::push_action): ... this.
7253         (remote_target::commit_resume): Adjust.
7254
7255 2018-05-22  Pedro Alves  <palves@redhat.com>
7256
7257         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
7258         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
7259         (get_fixed_memory_packet_size): New.
7260         (get_memory_packet_size): Use it.
7261         (set_memory_packet_size): Don't override the config size with
7262         DEFAULT_MAX_MEMORY_PACKET_SIZE.
7263         (show_memory_packet_size): Use get_fixed_memory_packet_size.
7264         Don't refer to get_memory_packet_size if not connected to a remote
7265         target.  Show "(default)" if configured size is 0.
7266
7267 2018-05-22  Pedro Alves  <palves@redhat.com>
7268
7269         * remote.c (remote_target::mourn_inferior): Move
7270         discard_pending_stop_replies call here from ...
7271         (_initialize_remote): ... here.
7272
7273 2018-05-22  Pedro Alves  <palves@redhat.com>
7274
7275         * remote.c (compare_section_command): Remove set_general_process
7276         call.
7277
7278 2018-05-22  Pedro Alves  <palves@redhat.com>
7279
7280         * remote.c (struct packet_reg, struct remote_arch_state):
7281         Move higher up in the file.
7282         (remote_state) <m_arch_states>: Store remote_arch_state values
7283         instead of remote_arch_state pointers.
7284         (remote_state::get_remote_arch_state): Adjust.
7285
7286 2018-05-22  Pedro Alves  <palves@redhat.com>
7287
7288         * remote.c: Include <unordered_map>.
7289         (remote_state): Now a class.
7290         (remote_state) <get_remote_arch_state>: Declare method.
7291         <get_remote_arch_state>: New field.
7292         (remote_arch_state) <remote_arch_state>: Declare ctor.
7293         <regs>: Now a unique_ptr.
7294         (remote_gdbarch_data_handle): Delete.
7295         (get_remote_arch_state): Delete.
7296         (remote_state::get_remote_arch_state): New.
7297         (get_remote_state): Adjust to call remote_state's
7298         get_remote_arch_state method.
7299         (init_remote_state): Delete, bits factored out to ...
7300         (remote_arch_state::remote_arch_state): ... this new method.
7301         (get_remote_packet_size, get_memory_packet_size)
7302         (process_g_packet, remote_target::fetch_registers)
7303         (remote_target::prepare_to_store, store_registers_using_G)
7304         (remote_target::store_registers, remote_target::get_trace_status):
7305         Adjust to call remote_state's method.
7306         (_initialize_remote): Remove reference to
7307         remote_gdbarch_data_handle.
7308
7309 2018-05-22  Pedro Alves  <palves@redhat.com>
7310
7311         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
7312         pread>: New method declarations.
7313         (remote_target::open_1): Adjust.
7314         (readahead_cache_invalidate): Rename to ...
7315         (readahead_cache::invalidate): ... this, and adjust to be a class
7316         method.
7317         (readahead_cache_invalidate_fd): Rename to ...
7318         (readahead_cache::invalidate_fd): ... this, and adjust to be a
7319         class method.
7320         (remote_hostio_pwrite): Adjust.
7321         (remote_hostio_pread_from_cache): Rename to ...
7322         (readahead_cache::pread): ... this, and adjust to be a class
7323         method.
7324         (remote_hostio_close): Adjust.
7325
7326 2018-05-22  Pedro Alves  <palves@redhat.com>
7327
7328         * remote.c (remote_hostio_close_cleanup): Delete.
7329         (class scoped_remote_fd): New.
7330         (remote_file_put, remote_file_get): Use it.
7331
7332 2018-05-22  Pedro Alves  <palves@redhat.com>
7333
7334         (struct vCont_action_support): Use bool and initialize all fields.
7335         (struct readahead_cache): Initialize all fields.
7336         (remote_state): Use bool and initialize all fields.
7337         (remote_state::remote_state, remote_state::~remote_state): New.
7338         (new_remote_state): Delete.
7339         (_initialize_remote): Use new to allocate remote_state.
7340
7341 2018-05-22  Pedro Alves  <palves@redhat.com>
7342             張俊芝  <zjz@zjz.name>
7343
7344         PR gdb/22973
7345         * c-exp.y: Include "c-support.h".
7346         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
7347         of tolower.  Use c_ident_is_alpha to scan names.
7348         * c-lang.c: Include "c-support.h".
7349         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
7350         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
7351         * c-support.h: New file, with bits factored out from ...
7352         * cp-name-parser.y: ... this file.
7353         Include "c-support.h".
7354         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
7355         c-support.h and renamed.
7356         (symbol_end, yylex): Adjust.
7357
7358 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7359
7360         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
7361         parameter type to CORE_ADDR.
7362         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
7363         parameter type in declaration to CORE_ADDR.
7364         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
7365         target_auxv_search to get AT_HWCAP and use the result to get the
7366         target description.
7367         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
7368         to CORE_ADDR. Remove the cast of the return value to unsigned
7369         long. Fix error predicate of target_auxv_search.
7370         (ppc_linux_nat_target::read_description): Change the type of the
7371         hwcap variable to CORE_ADDR.
7372
7373 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7374
7375         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
7376         if the size of fpscr is larger than 32 bits.
7377
7378 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7379
7380         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
7381         (ppc32_linux_vsxregmap): New global.
7382         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
7383         regcache_supply_regset, and regcache_collect_regset.
7384         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
7385         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
7386         (fetch_vsx_register, store_vsx_register): Remove.
7387         (fetch_vsx_registers): Add regno parameter. Get regset using
7388         ppc_linux_vsxregset. Use regset to supply registers.
7389         (store_vsx_registers): Add regno parameter. Get regset using
7390         ppc_linux_vsxregset. Use regset to collect registers.
7391         (fetch_register): Call fetch_vsx_registers instead of
7392         fetch_vsx_register.
7393         (store_register): Call store_vsx_registers instead of
7394         store_vsx_register.
7395         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
7396         new regno parameter.
7397         (store_ppc_registers): Call store_vsx_registers with -1 for the
7398         new regno parameter.
7399         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
7400         (ppc_collect_vsxregset): Remove.
7401
7402 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7403
7404         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
7405         offset fields.
7406         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
7407         for vector register offset fields.
7408         (ppc64_fbsd_reg_offsets): Likewise.
7409         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7410         to vector register offset fields.
7411         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7412         to vector register offset fields.
7413         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
7414         vector register offset fields.
7415         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
7416         initializers for vector register offset fields.
7417         (rs6000_aix64_reg_offsets): Likewise.
7418         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
7419         (ppc_supply_vrregset): Remove.
7420         (ppc_collect_vrregset): Remove.
7421         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
7422         (ppc_linux_vrregset) : New function.
7423         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
7424         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
7425         (ppc32_linux_vrregset): Remove.
7426         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
7427         and use result instead of ppc32_linux_vrregset.
7428         (ppc32_linux_reg_offsets): Remove initializers for vector register
7429         offset fields.
7430         (ppc64_linux_reg_offsets): Likewise.
7431         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
7432         * ppc-linux-nat.c: Include regset.h.
7433         (gdb_vrregset_t): Adjust comment to account for little-endian
7434         mode.
7435         (supply_vrregset, fill_vrregset): Remove.
7436         (fetch_altivec_register, store_altivec_register): Remove.
7437         (fetch_altivec_registers): Add regno parameter. Get regset using
7438         ppc_linux_vrregset. Use regset to supply registers.
7439         (store_altivec_registers): Add regno parameter. Get regset using
7440         ppc_linux_vrregset. Use regset to collect registers.
7441         (fetch_register): Call fetch_altivec_registers instead of
7442         fetch_altivec_register.
7443         (store_register): Call store_altivec_registers instead of
7444         store_altivec_register.
7445         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
7446         the new regno parameter.
7447         (store_ppc_registers): Call store_altivec_registers with -1 for
7448         the new regno parameter.
7449
7450 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7451
7452         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
7453         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
7454         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
7455         (gdb_vrregset_t): Change array type size to
7456         PPC_LINUX_SIZEOF_VRREGSET.
7457         (gdb_vsxregset_t): Change array type size to
7458         PPC_LINUX_SIZEOF_VSXREGSET.
7459         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
7460         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
7461         PPC_LINUX_SIZEOF_VSXREGSET.
7462
7463 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7464
7465         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
7466         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
7467         nat/ppc-linux.c.
7468         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
7469         ppc_linux_target_wordsize with tid.
7470         (ppc_linux_nat_target::read_description): Call ppc_linux_target
7471         wordsize with tid.
7472         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
7473         (ppc64_64bit_inferior_p): Add static and inline specifiers.
7474         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
7475         tid parameter. Remove static specifier.
7476         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
7477         (ppc_linux_target_wordsize): New declaration.
7478
7479 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7480
7481         * arch/ppc-linux-common.c: New file.
7482         * arch/ppc-linux-common.h: New file.
7483         * arch/ppc-linux-tdesc.h: New file.
7484         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
7485         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
7486         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
7487         arch/ppc-linux-tdesc.h.
7488         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
7489         arch/ppc-linux-tdesc.h.
7490         (ppc_linux_nat_target::read_description): Remove target
7491         description matching code. Fill a ppc_linux_features struct and
7492         call ppc_linux_match_description with it. Move comment about ISA
7493         2.05 to ppc-linux-common.c.
7494         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
7495         arch/ppc-linux-tdesc.h.
7496         (ppc_linux_core_read_description): Remove target description
7497         matching code. Fill a ppc_linux_features struct and call
7498         ppc_linux_match_description with it.
7499         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
7500         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
7501         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
7502         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
7503         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
7504         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
7505         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
7506         (tdesc_powerpc_e500l): Remove.
7507
7508 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
7509
7510         * ada-lang.c (catch_assert_command): Pass empty string instead
7511         of NULL for excep_string argument.
7512
7513 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7514
7515         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
7516         the width of the requested register exceeds the width of the
7517         `ptrace' data type.
7518
7519 2018-05-21  Tom Tromey  <tom@tromey.com>
7520
7521         * printcmd.c (output_command): Remove.
7522         (output_command_const): Rename to output_command.
7523         * valprint.h (output_command): Rename from output_command_const.
7524         * tracepoint.c (trace_dump_actions): Call output_command.
7525
7526 2018-05-21  Tom Tromey  <tom@tromey.com>
7527
7528         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
7529         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
7530         * ada-lang.h (create_ada_exception_catchpoint): Update.
7531         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
7532         std::string.
7533         (create_excep_cond_exprs, ~ada_catchpoint)
7534         (should_stop_exception, print_one_exception)
7535         (print_mention_exception, print_recreate_exception): Update.
7536         (ada_get_next_arg): Remove.
7537         (catch_ada_exception_command_split): Use std::string.  Change type
7538         of "excep_string", "cond_string".
7539         (catch_ada_exception_command): Update.
7540         (create_ada_exception_catchpoint): Change type of excep_string.
7541         (ada_exception_sal): Remove excep_string parameter.
7542         (~ada_catchpoint): Remove.
7543
7544 2018-05-21  Tom Tromey  <tom@tromey.com>
7545
7546         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
7547         cleanup.
7548
7549 2018-05-21  Tom Tromey  <tom@tromey.com>
7550
7551         * ada-lang.c (ada_exception_message_1, ada_exception_message):
7552         Return unique_xmalloc_ptr.
7553         (print_it_exception): Update.
7554
7555 2018-05-21  Tom Tromey  <tom@tromey.com>
7556
7557         * tracepoint.c (trace_dump_actions): Use std::string.
7558
7559 2018-05-21  Tom Tromey  <tom@tromey.com>
7560
7561         * symfile.c (reread_symbols): Use std::string for original_name.
7562
7563 2018-05-21  Tom Tromey  <tom@tromey.com>
7564
7565         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
7566         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
7567         constructor.
7568
7569 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
7570
7571         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
7572         instance to...
7573         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
7574         * objfiles.c (get_objfile_bfd_data): Allocate
7575         objfile_per_bfd_storage with obstack_new when allocating on
7576         obstack.
7577
7578 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7579
7580         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
7581         OBSTACK_ZALLOC.
7582         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
7583         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
7584         * mdebugread.c (mdebug_build_psymtabs): Likewise.
7585         (add_pending): Likewise.
7586         (parse_symbol): Likewise.
7587         (parse_partial_symbols): Likewise.
7588         (psymtab_to_symtab_1): Likewise.
7589         (new_psymtab): Likewise.
7590         (elfmdebug_build_psymtabs): Likewise.
7591         * minsyms.c (terminate_minimal_symbol_table): Likewise.
7592         * objfiles.c (get_objfile_bfd_data): Likewise.
7593         (objfile_register_static_link): Likewise.
7594         * psymtab.c (allocate_psymtab): Likewise.
7595         * stabsread.c (read_member_functions): Likewise.
7596         * xcoffread.c (xcoff_end_psymtab): Likewise.
7597
7598 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7599
7600         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
7601         compiler supports std::is_trivially_constructible.
7602         * common/poison.h: Include obstack.h.
7603         (IsMallocable): Define to is_trivially_constructible if the
7604         compiler supports it, define to true_type otherwise.
7605         (xobnew): New.
7606         (XOBNEW): Redefine.
7607         (xobnewvec): New.
7608         (XOBNEWVEC): Redefine.
7609         * gdb_obstack.h (obstack_zalloc): New.
7610         (OBSTACK_ZALLOC): Redefine.
7611         (obstack_calloc): New.
7612         (OBSTACK_CALLOC): Redefine.
7613         (obstack_new): New.
7614         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
7615         (gdbarch_obstack): New declaration in gdbarch.h, definition in
7616         gdbarch.c.
7617         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
7618         obstack_calloc/obstack_zalloc.
7619         (gdbarch_obstack_zalloc): Remove.
7620         * target-descriptions.c (tdesc_data_init): Use obstack_new.
7621
7622 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7623
7624         * stack.c (backtrace_command_1): Remove useless variable int i.
7625
7626 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7627
7628         * stack.c (print_frame_info): Fix comment.
7629
7630 2018-05-18  Tom Tromey  <tom@tromey.com>
7631
7632         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
7633         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
7634         (~dwarf2_per_objfile): Update
7635         (dwarf2_get_dwz_file): Use new.
7636         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
7637         unique_ptr.
7638
7639 2018-05-18  Tom Tromey  <tom@tromey.com>
7640
7641         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
7642         unique_ptr.
7643         * dwarf2read.c (struct dwp_file): Add constructor and
7644         initializers.
7645         (open_and_init_dwp_file): Return a unique_ptr.
7646         (dwarf2_per_objfile, create_dwp_hash_table)
7647         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
7648         (lookup_dwo_unit_in_dwp): Update.
7649         (open_and_init_dwp_file, get_dwp_file): Update.
7650
7651 2018-05-18  Tom Tromey  <tom@tromey.com>
7652
7653         * dwarf2read.c (dwarf2_per_objfile): Update.
7654         (struct mapped_index): Add initializers.
7655         (dwarf2_read_index): Use new.
7656         (dw2_symtab_iter_init): Update.
7657         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
7658         unique_ptr.
7659
7660 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
7661
7662         * dwarf2read.c (mapped_index) <total_size>: Remove.
7663
7664 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
7665
7666         * unittests/format_pieces-selftests.c (test_format_specifier):
7667         Add ARI comments.
7668
7669 2018-05-18  Tom Tromey  <tom@tromey.com>
7670
7671         * c-typeprint.c (maybe_print_hole): New function.
7672         (c_print_type_struct_field_offset): Update.
7673         (c_type_print_base_struct_union): Call maybe_print_hole.
7674
7675 2018-05-17  Keith Seitz  <keiths@redhat.com>
7676
7677         * breakpoint.c (build_bpstat_chain): New function, moved from
7678         bpstat_stop_status.
7679         (bpstat_stop_status): Add optional parameter, `stop_chain'.
7680         If no stop chain is passed, call build_bpstat_chain to build it.
7681         * breakpoint.h (build_bpstat_chain): Declare.
7682         (bpstat_stop_status): Move documentation here from breakpoint.c.
7683         * infrun.c (handle_signal_stop): Before eliding inlined frames,
7684         build the stop chain and pass it to skip_inline_frames.
7685         Pass this stop chain to bpstat_stop_status.
7686         * inline-frame.c: Include breakpoint.h.
7687         (stopped_by_user_bp_inline_frame): New function.
7688         (skip_inline_frames): Add parameter `stop_chain'.
7689         Move documention to inline-frame.h.
7690         If non-NULL, use stopped_by_user_bp_inline_frame to determine
7691         whether the frame should be elided.
7692         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
7693         Add moved documentation and update for new parameter.
7694
7695 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
7696
7697         PR cli/14975
7698         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
7699         unittests/format_pieces-selftests.c.
7700         * common/format.h (format_piece) <operator==>: New.
7701         (format_pieces) <operator[]>: Remove.
7702         * common/format.c (format_pieces::format_pieces): Handle \e.
7703         * unittests/format_pieces-selftests.c: New.
7704
7705 2018-05-17  Tom Tromey  <tom@tromey.com>
7706
7707         PR symtab/23010:
7708         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
7709         (dw2_instantiate_symtab): Add skip_partial parameter.
7710         (dw2_find_last_source_symtab, dw2_map_expand_apply)
7711         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
7712         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
7713         (dw2_expand_symtabs_matching_one)
7714         (dw2_find_pc_sect_compunit_symtab)
7715         (dw2_debug_names_lookup_symbol)
7716         (dw2_debug_names_expand_symtabs_for_function): Update.
7717         (init_cutu_and_read_dies): Add skip_partial parameter.
7718         (process_psymtab_comp_unit, build_type_psymtabs_1)
7719         (process_skeletonless_type_unit, load_partial_comp_unit)
7720         (psymtab_to_symtab_1): Update.
7721         (load_full_comp_unit): Add skip_partial parameter.
7722         (process_imported_unit_die, dwarf2_read_addr_index)
7723         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
7724         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
7725         (read_signatured_type): Update.
7726
7727 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
7728
7729         * value.c (release_value): Remove unused variable.
7730         (record_latest_value): Likewise.
7731         (access_value_history): Likewise.
7732         (preserve_values): Likewise.
7733
7734 2018-05-17  Tom Tromey  <tom@tromey.com>
7735
7736         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
7737         Initialize.
7738
7739 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
7740
7741         PR gdb/22286
7742         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
7743         Also handle registers whose width is not a multiple of
7744         PTRACE_TYPE_RET.
7745         (linux_nat_trad_target::store_register): Likewise.
7746
7747 2018-05-16  Tom Tromey  <tom@tromey.com>
7748
7749         * gdbcore.h (core_bfd): Redefine.
7750         * corelow.c (core_target::close): Update.
7751         (core_target_open): Update.
7752         * progspace.h (struct program_space) <cbfd>: Now a
7753         gdb_bfd_ref_ptr.
7754
7755 2018-05-16  Tom Tromey  <tom@tromey.com>
7756
7757         PR cli/19551:
7758         * symfile-add-flags.h (enum symfile_add_flags)
7759         <SYMFILE_NOT_FILENAME>: New constant.
7760         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
7761         objfile name from BFD.
7762         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
7763         * minidebug.c (find_separate_debug_file_in_section): Put
7764         ".gnu_debugdata" into BFD's file name.
7765
7766 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
7767
7768         * regcache.c (regcache_read_ftype, regcache_write_ftype):
7769         Remove.
7770
7771 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
7772
7773         PR binutils/21446
7774         * aarch64-tdep.c (aarch64_analyze_prologue,
7775         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
7776         Indicate not interested in errors.
7777
7778 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
7779
7780         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
7781         Supply the MIPS_ZERO_REGNUM register.
7782
7783 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
7784
7785         * mips-tdep.c (mask_address_var): Make variable static.
7786
7787 2018-05-14  Tom Tromey  <tom@tromey.com>
7788
7789         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
7790
7791 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
7792
7793         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
7794         FXSAVE_ADDR for the mxcsr register.
7795
7796 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
7797
7798         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
7799
7800 2018-05-11  Pedro Alves  <palves@redhat.com>
7801
7802         * corelow.c (core_target) <core_target>: No longer inline.
7803         Initialize m_core_gdbarch, m_core_vec and build the section table
7804         here.
7805         <~core_target>: New.
7806         <core_gdbarch, get_core_register_section>: New methods.
7807         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
7808         factored out from ...
7809         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
7810         (core_ops): Delete.
7811         (sniff_core_bfd): Add gdbarch parameter.
7812         (core_close): Delete, merged into ...
7813         (core_target::close): ... here.  Delete self.
7814         (core_close_cleanup): Delete.
7815         (core_target_open): Allocate a core_target on the heap.  Use a
7816         unique_ptr instead of a cleanup.  Bits moved into the core_target
7817         ctor.  Adjust to use core_target methods instead of globals.
7818         (get_core_register_section): Rename to ...
7819         (core_target::get_core_register_section): ... this and adjust.
7820         (struct get_core_registers_cb_data): New.
7821         (get_core_registers_cb): Use it.  Use bool.
7822         (core_target::fetch_registers, core_target::files_info)
7823         (core_target::xfer_partial, core_target::read_description)
7824         (core_target::pid_to, core_target::thread_name): Adjust to
7825         reference class fields instead of globals.
7826         * target.h (struct target_ops_deleter, target_ops_up): New.
7827
7828 2018-05-11  Pedro Alves  <palves@redhat.com>
7829
7830         * corefile.c (core_file_command): Move to corelow.c.
7831         * corelow.c (the_core_target): Delete.
7832         (core_file_command): Moved from corefile.c.  Check exec_bfd
7833         instead of the_core_target.  Use target_detach instead of calling
7834         into the_core_target directly.
7835         (maybe_say_no_core_file_now): New.
7836         (core_target::detach): Use it.
7837         (_initialize_corelow): Remove references to the_core_target.
7838         * gdbcore.h (the_core_target): Delete.
7839
7840 2018-05-11  Tom Tromey  <tromey@redhat.com>
7841             Pedro Alves  <palves@redhat.com>
7842
7843         * corefile.c (core_bfd): Remove.
7844         * gdbcore.h (core_bfd): Now a macro.
7845         * progspace.h (struct program_space) <cbfd>: New field.
7846
7847 2018-05-11  Tom Tromey  <tom@tromey.com>
7848
7849         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
7850         gdb::def_vector.
7851
7852 2018-05-10  Tom Tromey  <tom@tromey.com>
7853
7854         * configure: Rebuild.
7855         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
7856
7857 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
7858
7859         PR server/23158:
7860         * regformats/regdat.sh: Adjust script, following the addition
7861         of the new expedite_regs parameter to init_target_desc.
7862
7863 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
7864     
7865         PR gdb/23127
7866         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
7867         set_gdbarch_significant_addr_bit.
7868         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
7869         set_gdbarch_significant_addr_bit.
7870         * utils.c (address_significant): Update to sign extend addr.
7871
7872 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
7873
7874         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
7875         (xtensa_linux_init_abi): Limit tdep->num_regs by
7876         tdep->num_nopriv_regs.
7877         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
7878         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
7879         not initialized.
7880
7881 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
7882
7883         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
7884
7885 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
7886
7887         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
7888         (I387_MXCSR_INIT_VAL): New constant.
7889         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
7890         buffer if it was supplied by the inferior.
7891         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
7892         (i387_xsave_get_clear_bv): New function.
7893         (i387_supply_xsave): Only read x87 control registers from the
7894         xsave buffer if the feature is enabled, and the state will have
7895         been written, otherwise, provide a suitable default.
7896         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
7897         including x87 control registers.  Update control registers if they
7898         have changed from the default value, and mark features as enabled
7899         as required.
7900         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
7901
7902 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
7903
7904         * spu-tdep.c (info_spu_event_command): Fix output formatting.
7905
7906 2018-05-07  Tom Tromey  <tom@tromey.com>
7907
7908         * configure: Rebuild.
7909         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
7910
7911 2018-05-07  Tom Tromey  <tom@tromey.com>
7912
7913         PR tdep/20362:
7914         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
7915         bit.  Use correct value for VDIV.
7916
7917 2018-05-04  Tom Tromey  <tom@tromey.com>
7918
7919         * configure: Rebuild.
7920         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
7921
7922 2018-05-04  Tom Tromey  <tom@tromey.com>
7923
7924         * linux-record.c (record_linux_system_call) <case
7925         RECORD_SYS_RECVFROM>: Add "break".
7926
7927 2018-05-04  Tom Tromey  <tom@tromey.com>
7928
7929         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
7930         Add missing "break".
7931         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
7932         Add missing "break".
7933
7934 2018-05-04  Tom Tromey  <tom@tromey.com>
7935
7936         * rs6000-tdep.c (ppc_process_record_op4)
7937         (ppc_process_record_op63): Add fall-through comment.
7938
7939 2018-05-04  Tom Tromey  <tom@tromey.com>
7940
7941         * i386-tdep.c (i386_process_record): Add fall-through comment.
7942
7943 2018-05-04  Tom Tromey  <tom@tromey.com>
7944
7945         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
7946         comment.
7947
7948 2018-05-04  Tom Tromey  <tom@tromey.com>
7949
7950         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
7951         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
7952         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
7953         comment.
7954         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
7955         comment.
7956         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
7957         comment.
7958
7959 2018-05-04  Tom Tromey  <tom@tromey.com>
7960
7961         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
7962
7963 2018-05-04  Tom Tromey  <tom@tromey.com>
7964
7965         * s390-tdep.c (s390_process_record): Fix fall-through comments.
7966         * xcoffread.c (scan_xcoff_symtab): Move comment later.
7967         * symfile.c (section_is_mapped): Fix fall-through comment.
7968         * stabsread.c (define_symbol, read_member_functions): Fix
7969         fall-through comment.
7970         * s390-linux-tdep.c (s390_process_record): Fix fall-through
7971         comment.
7972         * remote.c (remote_wait_as): Fix fall-through comment.
7973         * p-exp.y (yylex): Fix fall-through comment.
7974         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
7975         comment.
7976         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
7977         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
7978         * jv-exp.y (yylex): Fix fall-through comment.
7979         * go-exp.y (lex_one_token): Fix fall-through comment.
7980         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
7981         fall-through comment.
7982         * f-exp.y (yylex): Fix fall-through comment.
7983         * dwarf2read.c (process_die): Fix fall-through comments.
7984         * dbxread.c (process_one_symbol): Fix fall-through comment.
7985         * d-exp.y (lex_one_token): Fix fall-through comment.
7986         * cp-name-parser.y (yylex): Fix fall-through comment.
7987         * coffread.c (coff_symtab_read): Fix fall-through comment.
7988         * c-exp.y (lex_one_token): Fix fall-through comment.
7989         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
7990         comment.
7991         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
7992         comment.
7993
7994 2018-05-04  Tom Tromey  <tom@tromey.com>
7995
7996         PR python/22730:
7997         * NEWS: Mention gdb.execute change.
7998         * gdbcmd.h (execute_control_command): Don't declare.
7999         * python/python.c (execute_gdb_command): Use read_command_lines_1,
8000         execute_control_commands, execute_control_commands_to_string.
8001         * cli/cli-script.h (execute_control_commands)
8002         (execute_control_commands_to_string): Declare.
8003         (execute_control_command): Add from_tty parameter.
8004         * cli/cli-script.c (execute_control_commands)
8005         (execute_control_commands_to_string): New functions.
8006         (execute_user_command): Use execute_control_commands.
8007         (execute_control_command_1): Add "from_tty" parameter.  Update.
8008         (execute_control_command): Likewise.
8009
8010 2018-05-04  Tom Tromey  <tom@tromey.com>
8011
8012         PR python/22731:
8013         * NEWS: Mention that breakpoint commands are writable.
8014         * python/py-breakpoint.c (bppy_set_commands): New function.
8015         (breakpoint_object_getset) <"commands">: Use it.
8016
8017 2018-05-04  Tom Tromey  <tom@tromey.com>
8018
8019         * tracepoint.c (actions_command): Update.
8020         * mi/mi-cmd-break.c (mi_command_line_array)
8021         (mi_command_line_array_cnt, mi_command_line_array_ptr)
8022         (mi_read_next_line): Remove.
8023         (mi_cmd_break_commands): Update.
8024         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
8025         function_view.
8026         * cli/cli-script.c (get_command_line): Update.
8027         (process_next_line): Use function_view.  Constify.
8028         (recurse_read_control_structure, read_command_lines)
8029         (read_command_lines_1): Change argument types to function_view.
8030         (do_define_command, document_command): Update.
8031         * breakpoint.h (check_tracepoint_command): Don't declare.
8032         * breakpoint.c (check_tracepoint_command): Remove.
8033         (commands_command_1, create_tracepoint_from_upload): Update.
8034
8035 2018-05-04  Tom Tromey  <tom@tromey.com>
8036
8037         PR gdb/11750:
8038         * cli/cli-script.h (enum command_control_type) <define_control>:
8039         New constant.
8040         * cli/cli-script.c (multi_line_command_p): Handle define_control.
8041         (build_command_line, execute_control_command_1)
8042         (process_next_line): Likewise.
8043         (do_define_command): New function, extracted from define_command.
8044         (define_command): Use it.
8045
8046 2018-05-04  Tom Tromey  <tom@tromey.com>
8047
8048         * tracepoint.c (actions_command): Update.
8049         * cli/cli-script.h (read_command_lines): Update.
8050         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
8051         (MAX_TMPBUF): Remove define.
8052         (define_command): Use string_printf.
8053         (document_command): Likewise.
8054         * breakpoint.c (commands_command_1): Update.
8055
8056 2018-05-04  Tom Tromey  <tom@tromey.com>
8057
8058         * top.c (execute_command): Update.
8059         * cli/cli-script.h (print_command_lines): Now varargs.
8060         * cli/cli-script.c (print_command_lines): Now varargs.
8061         (execute_control_command_1) <case while_control, case if_control>:
8062         Update.
8063
8064 2018-05-04  Tom Tromey  <tom@tromey.com>
8065
8066         * tracepoint.c (all_tracepoint_actions): Rename from
8067         all_tracepoint_actions_and_cleanup.  Change return type.
8068         (actions_command, encode_actions_1, encode_actions)
8069         (trace_dump_actions, tdump_command): Update.
8070         * remote.c (remote_download_command_source): Update.
8071         * python/python.c (gdbpy_eval_from_control_command)
8072         (python_command, python_interactive_command): Update.
8073         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
8074         * guile/guile.c (guile_command)
8075         (gdbscm_eval_from_control_command, guile_command): Update.
8076         * compile/compile.c (compile_code_command)
8077         (compile_print_command, compile_to_object): Update.
8078         * cli/cli-script.h (struct command_lines_deleter): New.
8079         (counted_command_line): New typedef.
8080         (struct command_line): Add constructor, destructor.
8081         <body_list>: Remove.
8082         <body_list_0, body_list_1>: New members.
8083         (command_line_up): Remove typedef.
8084         (read_command_lines, read_command_lines_1, get_command_line):
8085         Update.
8086         (copy_command_lines): Don't declare.
8087         * cli/cli-script.c (build_command_line): Use "new".
8088         (get_command_line): Return counted_command_line.
8089         (print_command_lines, execute_user_command)
8090         (execute_control_command_1, while_command, if_command): Update.
8091         (realloc_body_list): Remove.
8092         (process_next_line, recurse_read_control_structure): Update.
8093         (read_command_lines, read_command_lines_1): Return counted_command_line.
8094         (free_command_lines): Use "delete".
8095         (copy_command_lines): Remove.
8096         (define_command, document_command, show_user_1): Update.
8097         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
8098         a counted_command_line.
8099         * breakpoint.h (counted_command_line): Remove typedef.
8100         (breakpoint_set_commands): Update.
8101         * breakpoint.c (check_no_tracepoint_commands)
8102         (validate_commands_for_breakpoint): Update.
8103         (breakpoint_set_commands): Change commands to be a
8104         counted_command_line.
8105         (commands_command_1, update_dprintf_command_list)
8106         (create_tracepoint_from_upload): Update.
8107
8108 2018-05-04  Tom Tromey  <tom@tromey.com>
8109
8110         * cli/cli-decode.h (cmd_list_element): New constructor.
8111         (~cmd_list_element): New destructor.
8112         (struct cmd_list_element): Add initializers.
8113         * cli/cli-decode.c (do_add_cmd): Use "new".
8114         (delete_cmd): Use "delete".
8115
8116 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
8117             Pedro Alves <palves@redhat.com>
8118
8119         PR breakpoints/19806 and support for PR external/20207.
8120         * NEWS: Mention Aarch64 watchpoint improvements.
8121         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
8122         watchpoints and PR external/20207 watchpoints.
8123         * nat/aarch64-linux-hw-point.c
8124         (kernel_supports_any_contiguous_range): New.
8125         (aarch64_watchpoint_offset): New.
8126         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
8127         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
8128         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
8129         (aarch64_align_watchpoint): New parameters aligned_offset_p and
8130         next_addr_orig_p.  Support PR external/20207 watchpoints.
8131         (aarch64_downgrade_regs): New.
8132         (aarch64_dr_state_insert_one_point): New parameters offset and
8133         addr_orig.
8134         (aarch64_dr_state_remove_one_point): Likewise.
8135         (aarch64_handle_breakpoint): Update caller.
8136         (aarch64_handle_aligned_watchpoint): Likewise.
8137         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
8138         aligned_offset.
8139         (aarch64_linux_set_debug_regs): Remove const from state.  Call
8140         aarch64_downgrade_regs.
8141         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
8142         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
8143         (DR_CONTROL_MASK): ... this.
8144         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
8145         (unsigned int aarch64_watchpoint_offset): New prototype.
8146         (aarch64_linux_set_debug_regs): Remove const from state.
8147         * utils.c (align_up, align_down): Move to ...
8148         * common/common-utils.c (align_up, align_down): ... here.
8149         * utils.h (align_up, align_down): Move to ...
8150         * common/common-utils.h (align_up, align_down): ... here.
8151
8152 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
8153
8154         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
8155         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
8156         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
8157         Re-implement to match the ABI as summarized in GCC's
8158         gcc/config/sparc/sparc.c.  All callers updated.
8159         (sparc32_store_arguments): Remove assertion.
8160
8161 2018-05-04  Tom Tromey  <tom@tromey.com>
8162
8163         * printcmd.c: Don't include tui.h.
8164         (decode_format): Use skip_spaces.
8165
8166 2018-05-04  Tom Tromey  <tom@tromey.com>
8167
8168         PR gdb/22619:
8169         * printcmd.c (last_count): New global.
8170         (x_command): Use saved count when repeating.
8171
8172 2018-05-04  Tom Tromey  <tom@tromey.com>
8173
8174         * nto-procfs.c (do_closedir_cleanup): Remove.
8175         (procfs_pidlist): Use gdb_dir_up.
8176         * procfs.c (do_closedir_cleanup): Remove.
8177         (proc_update_threads): Use gdb_dir_up.
8178         * common/filestuff.h (struct gdb_dir_deleter): New.
8179         (gdb_dir_up): New typedef.
8180
8181 2018-05-04  Tom Tromey  <tom@tromey.com>
8182
8183         * ada-lang.c (print_mention_exception): Use std::string.
8184
8185 2018-05-04  Tom Tromey  <tom@tromey.com>
8186
8187         * ada-lang.c (create_excep_cond_exprs): Update.
8188         (ada_exception_catchpoint_cond_string): Use std::string.
8189
8190 2018-05-04  Tom Tromey  <tom@tromey.com>
8191
8192         * ada-lang.c (xget_renaming_scope): Return std::string.
8193         (old_renaming_is_invisible): Update.
8194
8195 2018-05-04  Tom Tromey  <tom@tromey.com>
8196
8197         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
8198         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
8199
8200 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
8201
8202         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
8203
8204 2018-05-04  Tom Tromey  <tom@tromey.com>
8205
8206         * remote.c (remote_query_supported_append): Change type.
8207         (remote_check_symbols): Update.
8208
8209 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
8210
8211         PR gdb/11420
8212         * configure.ac: Prepend libpython.
8213         * python/python-config.py: Likewise.
8214         * configure: Regenerate.
8215
8216 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
8217
8218         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
8219
8220 2018-05-03  Pedro Alves  <palves@redhat.com>
8221
8222         * s390-linux-nat.c
8223         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
8224         override.  Write 'true' instead of '1'.
8225         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
8226         declaration.
8227
8228 2018-05-02  Pedro Alves  <palves@redhat.com>
8229
8230         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
8231         add_inf_child_target.
8232         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
8233         add_inf_child_target.
8234         * aix-thread.c (aix_thread_target_info): New.
8235         (aix_thread_target) <shortname, longname, doc>: Delete.
8236         <info>: New.
8237         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
8238         add_inf_child_target.
8239         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
8240         add_inf_child_target.
8241         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
8242         add_inf_child_target.
8243         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
8244         add_inf_child_target.
8245         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
8246         add_inf_child_target.
8247         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
8248         add_inf_child_target.
8249         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
8250         add_inf_child_target.
8251         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
8252         add_inf_child_target.
8253         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
8254         add_inf_child_target.
8255         * bfd-target.c (target_bfd_target_info): New.
8256         (target_bfd) <shortname, longname, doc>: Delete.
8257         <info>: New.
8258         * bsd-kvm.c (bsd_kvm_target_info): New.
8259         (bsd_kvm_target) <shortname, longname, doc>: Delete.
8260         <info>: New.
8261         (bsd_kvm_target::open): Rename to ...
8262         (bsd_kvm_target_open): ... this.  Adjust.
8263         * bsd-uthread.c (bsd_uthread_target_info): New.
8264         (bsd_uthread_target) <shortname, longname, doc>: Delete.
8265         <info>: New.
8266         * corefile.c (core_file_command): Adjust.
8267         * corelow.c (core_target_info): New.
8268         (core_target) <shortname, longname, doc>: Delete.
8269         <info>: New.
8270         (core_target::open): Rename to ...
8271         (core_target_open): ... this.  Adjust.
8272         * ctf.c (ctf_target_info): New.
8273         (ctf_target) <shortname, longname, doc>: Delete.
8274         <info>: New.
8275         (ctf_target::open): Rename to ...
8276         (ctf_target_open): ... this.
8277         (_initialize_ctf): Adjust.
8278         * exec.c (exec_target_info): New.
8279         (exec_target) <shortname, longname, doc>: Delete.
8280         <info>: New.
8281         (exec_target::open): Rename to ...
8282         (exec_target_open): ... this.
8283         * gdbcore.h (core_target_open): Declare.
8284         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
8285         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
8286         add_inf_child_target.
8287         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
8288         add_inf_child_target.
8289         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
8290         add_inf_child_target.
8291         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
8292         add_inf_child_target.
8293         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
8294         add_inf_child_target.
8295         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
8296         add_inf_child_target.
8297         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
8298         add_inf_child_target.
8299         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
8300         add_inf_child_target.
8301         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
8302         add_inf_child_target.
8303         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
8304         add_inf_child_target.
8305         * inf-child.c (inf_child_target_info): New.
8306         (inf_child_target::info): New.
8307         (inf_child_open_target): Remove 'target' parameter.  Use
8308         get_native_target instead.
8309         (inf_child_target::open): Delete.
8310         (add_inf_child_target): New.
8311         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
8312         Delete.
8313         <info>: New.
8314         (add_inf_child_target): Declare.
8315         (inf_child_open_target): Declare.
8316         * linux-thread-db.c (thread_db_target_info): New.
8317         (thread_db_target) <shortname, longname, doc>: Delete.
8318         <info>: New.
8319         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
8320         add_inf_child_target.
8321         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
8322         add_inf_child_target.
8323         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
8324         add_inf_child_target.
8325         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
8326         add_inf_child_target.
8327         * make-target-delegates (print_class): Adjust.
8328         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
8329         add_inf_child_target.
8330         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
8331         add_inf_child_target.
8332         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
8333         add_inf_child_target.
8334         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
8335         add_inf_child_target.
8336         * nto-procfs.c (nto_native_target_info): New.
8337         (nto_procfs_target_native) <shortname, longname, doc>:
8338         Delete.
8339         <info>: New.
8340         (nto_procfs_target_info): New.
8341         (nto_procfs_target_procfs) <shortname, longname, doc>:
8342         Delete.
8343         <info>: New.
8344         (init_procfs_targets): Adjust.
8345         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
8346         add_inf_child_target.
8347         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
8348         add_inf_child_target.
8349         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
8350         add_inf_child_target.
8351         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
8352         add_inf_child_target.
8353         * ravenscar-thread.c (ravenscar_target_info): New.
8354         (ravenscar_thread_target) <shortname, longname, doc>:
8355         Delete.
8356         <info>: New.
8357         * record-btrace.c (record_btrace_target_info):
8358         (record_btrace_target) <shortname, longname, doc>: Delete.
8359         <info>: New.
8360         (record_btrace_target::open): Rename to ...
8361         (record_btrace_target_open): ... this.  Adjust.
8362         * record-full.c (record_longname, record_doc): New.
8363         (record_full_base_target) <shortname, longname, doc>: Delete.
8364         <info>: New.
8365         (record_full_target_info): New.
8366         (record_full_target): <shortname>: Delete.
8367         <info>: New.
8368         (record_full_core_open_1, record_full_open_1): Update comments.
8369         (record_full_base_target::open): Rename to ...
8370         (record_full_open): ... this.
8371         (cmd_record_full_restore): Update.
8372         (_initialize_record_full): Update.
8373         * remote-sim.c (remote_sim_target_info): New.
8374         (gdbsim_target) <shortname, longname, doc>: Delete.
8375         <info>: New.
8376         (gdbsim_target::open): Rename to ...
8377         (gdbsim_target_open): ... this.
8378         (_initialize_remote_sim): Adjust.
8379         * remote.c (remote_doc): New.
8380         (remote_target_info): New.
8381         (remote_target) <shortname, longname, doc>: Delete.
8382         <info>: New.
8383         (extended_remote_target_info): New.
8384         (extended_remote_target) <shortname, longname, doc>: Delete.
8385         <info>: New.
8386         (remote_target::open_1): Make static.  Adjust.
8387         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
8388         * s390-linux-nat.c (_initialize_s390_nat): Use
8389         add_inf_child_target.
8390         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
8391         add_inf_child_target.
8392         * sol-thread.c (thread_db_target_info): New.
8393         (sol_thread_target) <shortname, longname, doc>: Delete.
8394         <info>: New.
8395         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
8396         add_inf_child_target.
8397         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
8398         add_inf_child_target.
8399         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
8400         add_inf_child_target.
8401         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
8402         add_inf_child_target.
8403         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
8404         add_inf_child_target.
8405         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
8406         add_inf_child_target.
8407         * spu-linux-nat.c (_initialize_spu_nat): Use
8408         add_inf_child_target.
8409         * spu-multiarch.c (spu_multiarch_target_info): New.
8410         (spu_multiarch_target) <shortname, longname, doc>: Delete.
8411         <info>: New.
8412         * target-delegates.c: Regenerate.
8413         * target.c: Include <unordered_map>.
8414         (target_ops_p): Delete.
8415         (DEF_VEC_P(target_ops_p)): Delete.
8416         (target_factories): New.
8417         (test_target_info): New.
8418         (test_target_ops::info): New.
8419         (open_target): Adjust to use target_factories.
8420         (add_target_with_completer): Rename to ...
8421         (add_target): ... this.  Change prototype.  Register target_info
8422         and open callback in target_factories.  Register target_info in
8423         command context instead of target_ops.
8424         (add_target): Delete old implementation.
8425         (add_deprecated_target_alias): Change prototype.  Adjust.
8426         (the_native_target): New.
8427         (set_native_target, get_native_target): New.
8428         (find_default_run_target): Use the_native_target.
8429         (find_attach_target, find_run_target): Simplify.
8430         (target_ops::open): Delete.
8431         (dummy_target_info): New.
8432         (dummy_target::shortname, dummy_target::longname)
8433         (dummy_target::doc): Delete.
8434         (dummy_target::info): New.
8435         (debug_target::shortname, debug_target::longname)
8436         (debug_target::doc): Delete.
8437         (debug_target::info): New.
8438         * target.h (struct target_info): New.
8439         (target_ops::~target_ops): Add comment.
8440         (target_ops::info): New.
8441         (target_ops::shortname, target_ops::longname, target_ops::doc): No
8442         longer virtual.  Implement in terms of target_info.
8443         (set_native_target, get_native_target): Declare.
8444         (target_open_ftype): New.
8445         (add_target, add_target_with_completer)
8446         (add_deprecated_target_alias): Change prototype.
8447         (test_target) <shortname, longname, doc>: Delete.
8448         <info>: New.
8449         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
8450         add_inf_child_target.
8451         * tracefile-tfile.c (tfile_target_info): New.
8452         (tfile_target) <shortname, longname, doc>: Delete.
8453         <info>: New.
8454         (tfile_target::open): Rename to ...
8455         (tfile_target_open): ... this.
8456         (_initialize_tracefile_tfile): Adjust.
8457         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
8458         add_inf_child_target.
8459         * windows-nat.c (_initialize_windows_nat): Use
8460         add_inf_child_target.
8461         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
8462         add_inf_child_target.
8463
8464 2018-05-02  Pedro Alves  <palves@redhat.com>
8465
8466         * linux-nat.h (linux_nat_target) <low_new_thread,
8467         low_delete_thread, low_new_fork, low_forget_process,
8468         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
8469         New virtual methods.
8470         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8471         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
8472         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
8473         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8474         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
8475         Delete.
8476         * linux-fork.c (delete_fork): Adjust to call low method.
8477         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
8478         (linux_nat_new_fork, linux_nat_forget_process_hook)
8479         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
8480         (linux_nat_status_is_event):
8481         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
8482         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
8483         to call low method.
8484         (sigtrap_is_event): Rename to ...
8485         (linux_nat_target::low_status_is_event): ... this.
8486         (linux_nat_set_status_is_event): Delete.
8487         (save_stop_reason, linux_nat_wait_1)
8488         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
8489         low methods.
8490         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8491         (linux_nat_set_new_fork, linux_nat_set_forget_process)
8492         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8493         (linux_nat_set_prepare_to_resume): Delete.
8494         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
8495         low virtual methods.
8496         * amd64-linux-nat.c: Likewise.
8497         * arm-linux-nat.c: Likewise.
8498         * i386-linux-nat.c: Likewise.
8499         * ia64-linux-nat.c: Likewise.
8500         * mips-linux-nat.c: Likewise.
8501         * ppc-linux-nat.c: Likewise.
8502         * s390-linux-nat.c: Likewise.
8503         * sparc64-linux-nat.c: Likewise.
8504         * x86-linux-nat.c: Likewise.
8505         * x86-linux-nat.h: Include "nat/x86-linux.h".
8506         (x86_linux_nat_target) <low_new_fork, low_forget_process,
8507         low_prepare_to_resume, low_new_thread, low_delete_thread>:
8508         Override methods.
8509
8510 2018-05-02  Pedro Alves  <palves@redhat.com>
8511
8512         * target.h (target_ops)
8513         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
8514         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
8515         stopped_by_watchpoint, have_continuable_watchpoint,
8516         stopped_data_address, watchpoint_addr_within_range,
8517         can_accel_watchpoint_condition, can_run, thread_alive,
8518         has_all_memory, has_memory, has_stack, has_registers,
8519         has_execution, can_async_p, is_async_p, supports_non_stop,
8520         always_non_stop_p, can_execute_reverse, supports_multi_process,
8521         supports_enable_disable_tracepoint,
8522         supports_disable_randomization, supports_string_tracing,
8523         supports_evaluation_of_breakpoint_conditions,
8524         can_run_breakpoint_commands, filesystem_is_local,
8525         can_download_tracepoint, get_trace_state_variable_value,
8526         set_trace_notes, get_tib_address, use_agent, can_use_agent,
8527         record_is_replaying, record_will_replay,
8528         augmented_libraries_svr4_read>: Adjust to return bool.
8529         * aarch64-linux-nat.c: All implementations adjusted.
8530         * aix-thread.c: All implementations adjusted.
8531         * arm-linux-nat.c: All implementations adjusted.
8532         * breakpoint.c: All implementations adjusted.
8533         * bsd-kvm.c: All implementations adjusted.
8534         * bsd-uthread.c: All implementations adjusted.
8535         * corelow.c: All implementations adjusted.
8536         * ctf.c: All implementations adjusted.
8537         * darwin-nat.c: All implementations adjusted.
8538         * darwin-nat.h: All implementations adjusted.
8539         * exec.c: All implementations adjusted.
8540         * fbsd-nat.c: All implementations adjusted.
8541         * fbsd-nat.h: All implementations adjusted.
8542         * gnu-nat.c: All implementations adjusted.
8543         * gnu-nat.h: All implementations adjusted.
8544         * go32-nat.c: All implementations adjusted.
8545         * ia64-linux-nat.c: All implementations adjusted.
8546         * inf-child.c: All implementations adjusted.
8547         * inf-child.h: All implementations adjusted.
8548         * inf-ptrace.c: All implementations adjusted.
8549         * inf-ptrace.h: All implementations adjusted.
8550         * linux-nat.c: All implementations adjusted.
8551         * linux-nat.h: All implementations adjusted.
8552         * mips-linux-nat.c: All implementations adjusted.
8553         * nto-procfs.c: All implementations adjusted.
8554         * ppc-linux-nat.c: All implementations adjusted.
8555         * procfs.c: All implementations adjusted.
8556         * ravenscar-thread.c: All implementations adjusted.
8557         * record-btrace.c: All implementations adjusted.
8558         * record-full.c: All implementations adjusted.
8559         * remote-sim.c: All implementations adjusted.
8560         * remote.c: All implementations adjusted.
8561         * s390-linux-nat.c: All implementations adjusted.
8562         * sol-thread.c: All implementations adjusted.
8563         * spu-multiarch.c: All implementations adjusted.
8564         * target-delegates.c: All implementations adjusted.
8565         * target.c: All implementations adjusted.
8566         * target.h: All implementations adjusted.
8567         * tracefile-tfile.c: All implementations adjusted.
8568         * tracefile.c: All implementations adjusted.
8569         * tracefile.h: All implementations adjusted.
8570         * windows-nat.c: All implementations adjusted.
8571         * x86-linux-nat.h: All implementations adjusted.
8572         * x86-nat.h: All implementations adjusted.
8573
8574 2018-05-02  Pedro Alves  <palves@redhat.com>
8575
8576         * make-target-delegates (scan_target_h): Don't trim lines here.
8577         Replace sequences of tabs and/or whitespace with a single
8578         whitespace.
8579         (top level, parsing methods): Trim each line before processing it
8580         here.
8581
8582 2018-05-02  Pedro Alves  <palves@redhat.com>
8583             John Baldwin  <jhb@freebsd.org>
8584
8585         * target.h (enum strata) <debug_stratum>: New.
8586         (struct target_ops) <all delegation methods>: Replace by C++
8587         virtual methods, and drop "to_" prefix.  All references updated
8588         throughout.
8589         <to_shortname, to_longname, to_doc, to_data,
8590         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
8591         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
8592         virtual methods.  All references updated throughout.
8593         <can_attach, supports_terminal_ours, can_create_inferior,
8594         get_thread_control_capabilities, attach_no_wait>: New
8595         virtual methods.
8596         <insert_breakpoint, remove_breakpoint>: Now
8597         TARGET_DEFAULT_NORETURN methods.
8598         <info_proc>: Now returns bool.
8599         <to_magic>: Delete.
8600         (OPS_MAGIC): Delete.
8601         (current_target): Delete.  All references replaced by references
8602         to ...
8603         (target_stack): ... this.  New.
8604         (target_shortname, target_longname): Adjust.
8605         (target_can_run): Now a function declaration.
8606         (default_child_has_all_memory, default_child_has_memory)
8607         (default_child_has_stack, default_child_has_registers)
8608         (default_child_has_execution): Remove target_ops parameter.
8609         (complete_target_initialization): Delete.
8610         (memory_breakpoint_target): New template class.
8611         (test_target_ops): Refactor as a C++ class with virtual methods.
8612         * make-target-delegates (NAME_PART): Tighten.
8613         (POINTER_PART, CP_SYMBOL): New.
8614         (SIMPLE_RETURN_PART): Reimplement.
8615         (VEC_RETURN_PART): Expect less.
8616         (RETURN_PART, VIRTUAL_PART): New.
8617         (METHOD): Adjust to C++ virtual methods.
8618         (scan_target_h): Remove reference to C99.
8619         (dname): Output "target_ops::" prefix.
8620         (write_function_header): Adjust to output a C++ class method.
8621         (write_declaration): New.
8622         (write_delegator): Adjust to output a C++ class method.
8623         (tdname): Output "dummy_target::" prefix.
8624         (write_tdefault, write_debugmethod): Adjust to output a C++ class
8625         method.
8626         (tdefault_names, debug_names): Delete.
8627         (return_types, tdefaults, styles, argtypes_array): New.
8628         (top level): All methods are delegators.
8629         (print_class): New.
8630         (top level): Print dummy_target and debug_target classes.
8631         * target-delegates.c: Regenerate.
8632         * target-debug.h (target_debug_print_enum_info_proc_what)
8633         (target_debug_print_thread_control_capabilities)
8634         (target_debug_print_thread_info_p): New.
8635         * target.c (dummy_target): Delete.
8636         (the_dummy_target, the_debug_target): New.
8637         (target_stack): Now extern.
8638         (set_targetdebug): Push/unpush debug target.
8639         (default_child_has_all_memory, default_child_has_memory)
8640         (default_child_has_stack, default_child_has_registers)
8641         (default_child_has_execution): Remove target_ops parameter.
8642         (complete_target_initialization): Delete.
8643         (add_target_with_completer): No longer call
8644         complete_target_initialization.
8645         (target_supports_terminal_ours): Use regular delegation.
8646         (update_current_target): Delete.
8647         (push_target): No longer check magic number.  Don't call
8648         update_current_target.
8649         (unpush_target): Don't call update_current_target.
8650         (target_is_pushed): No longer check magic number.
8651         (target_require_runnable): Skip for all stratums over
8652         process_stratum.
8653         (target_ops::info_proc): New.
8654         (target_info_proc): Use find_target_at and
8655         find_default_run_target.
8656         (target_supports_disable_randomization): Use regular delegation.
8657         (target_get_osdata): Use find_target_at.
8658         (target_ops::open, target_ops::close, target_ops::can_attach)
8659         (target_ops::attach, target_ops::can_create_inferior)
8660         (target_ops::create_inferior, target_ops::can_run)
8661         (target_can_run): New.
8662         (default_fileio_target): Use regular delegation.
8663         (target_ops::fileio_open, target_ops::fileio_pwrite)
8664         (target_ops::fileio_pread, target_ops::fileio_fstat)
8665         (target_ops::fileio_close, target_ops::fileio_unlink)
8666         (target_ops::fileio_readlink): New.
8667         (target_fileio_open_1, target_fileio_unlink)
8668         (target_fileio_readlink): Always call the target method.  Handle
8669         FILEIO_ENOSYS.
8670         (return_zero, return_zero_has_execution): Delete.
8671         (init_dummy_target): Delete.
8672         (dummy_target::dummy_target, dummy_target::shortname)
8673         (dummy_target::longname, dummy_target::doc)
8674         (debug_target::debug_target, debug_target::shortname)
8675         (debug_target::longname, debug_target::doc): New.
8676         (target_supports_delete_record): Use regular delegation.
8677         (setup_target_debug): Delete.
8678         (maintenance_print_target_stack): Skip debug_stratum.
8679         (initialize_targets): Instantiate the_dummy_target and
8680         the_debug_target.
8681         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
8682         use target_stack.
8683         (target_auxv_search, fprint_target_auxv): Adjust.
8684         (info_auxv_command): Adjust to use target_stack.
8685         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
8686         * exceptions.c (print_flush): Handle a NULL target_stack.
8687         * regcache.c (target_ops_no_register): Refactor as class with
8688         virtual methods.
8689
8690         * exec.c (exec_target): New class.
8691         (exec_ops): Now an exec_target.
8692         (exec_open, exec_close_1, exec_get_section_table)
8693         (exec_xfer_partial, exec_files_info, exec_has_memory)
8694         (exec_make_note_section): Refactor as exec_target methods.
8695         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
8696         Delete.
8697         (exec_target::find_memory_regions): New.
8698         (_initialize_exec): Don't call init_exec_ops.
8699         * gdbcore.h (exec_file_clear): Delete.
8700
8701         * corefile.c (core_target): Delete.
8702         (core_file_command): Adjust.
8703         * corelow.c (core_target): New class.
8704         (the_core_target): New.
8705         (core_close): Remove target_ops parameter.
8706         (core_close_cleanup): Adjust.
8707         (core_target::close): New.
8708         (core_open, core_detach, get_core_registers, core_files_info)
8709         (core_xfer_partial, core_thread_alive, core_read_description)
8710         (core_pid_to_str, core_thread_name, core_has_memory)
8711         (core_has_stack, core_has_registers, core_info_proc): Rework as
8712         core_target methods.
8713         (ignore, core_remove_breakpoint, init_core_ops): Delete.
8714         (_initialize_corelow): Initialize the_core_target.
8715         * gdbcore.h (core_target): Delete.
8716         (the_core_target): New.
8717
8718         * ctf.c: (ctf_target): New class.
8719         (ctf_ops): Now a ctf_target.
8720         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
8721         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
8722         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
8723         methods.
8724         (init_ctf_ops): Delete.
8725         (_initialize_ctf): Don't call it.
8726         * tracefile-tfile.c (tfile_target): New class.
8727         (tfile_ops): Now a tfile_target.
8728         (tfile_open, tfile_close, tfile_files_info)
8729         (tfile_get_tracepoint_status, tfile_trace_find)
8730         (tfile_fetch_registers, tfile_xfer_partial)
8731         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
8732         Refactor as tfile_target methods.
8733         (tfile_xfer_partial_features): Remove target_ops parameter.
8734         (init_tfile_ops): Delete.
8735         (_initialize_tracefile_tfile): Don't call it.
8736         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
8737         (tracefile_has_stack, tracefile_has_registers)
8738         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
8739         tracefile_target methods.
8740         (init_tracefile_ops): Delete.
8741         (tracefile_target::tracefile_target): New.
8742         * tracefile.h: Include "target.h".
8743         (tracefile_target): New class.
8744         (init_tracefile_ops): Delete.
8745
8746         * spu-multiarch.c (spu_multiarch_target): New class.
8747         (spu_ops): Now a spu_multiarch_target.
8748         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
8749         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
8750         (spu_search_memory, spu_mourn_inferior): Refactor as
8751         spu_multiarch_target methods.
8752         (init_spu_ops): Delete.
8753         (_initialize_spu_multiarch): Remove references to init_spu_ops,
8754         complete_target_initialization.
8755
8756         * ravenscar-thread.c (ravenscar_thread_target): New class.
8757         (ravenscar_ops): Now a ravenscar_thread_target.
8758         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
8759         (ravenscar_thread_alive, ravenscar_pid_to_str)
8760         (ravenscar_fetch_registers, ravenscar_store_registers)
8761         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
8762         (ravenscar_stopped_by_hw_breakpoint)
8763         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
8764         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
8765         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
8766         methods.
8767         (init_ravenscar_thread_ops): Delete.
8768         (_initialize_ravenscar): Remove references to
8769         init_ravenscar_thread_ops and complete_target_initialization.
8770
8771         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
8772         (bsd_uthread_target): New class.
8773         (bsd_uthread_ops): Now a bsd_uthread_target.
8774         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
8775         (bsd_uthread_close, bsd_uthread_mourn_inferior)
8776         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
8777         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
8778         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
8779         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
8780         (bsd_uthread_target): Delete function.
8781         (_initialize_bsd_uthread): Remove reference to
8782         complete_target_initialization.
8783
8784         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
8785         (target_bfd): ... this new class.
8786         (target_bfd_xfer_partial, target_bfd_get_section_table)
8787         (target_bfd_close): Refactor as target_bfd methods.
8788         (target_bfd::~target_bfd): New.
8789         (target_bfd_reopen): Adjust.
8790         (target_bfd::close): New.
8791
8792         * record-btrace.c (record_btrace_target): New class.
8793         (record_btrace_ops): Now a record_btrace_target.
8794         (record_btrace_open, record_btrace_stop_recording)
8795         (record_btrace_disconnect, record_btrace_close)
8796         (record_btrace_async, record_btrace_info)
8797         (record_btrace_insn_history, record_btrace_insn_history_range)
8798         (record_btrace_insn_history_from, record_btrace_call_history)
8799         (record_btrace_call_history_range)
8800         (record_btrace_call_history_from, record_btrace_record_method)
8801         (record_btrace_is_replaying, record_btrace_will_replay)
8802         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
8803         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
8804         (record_btrace_store_registers, record_btrace_prepare_to_store)
8805         (record_btrace_to_get_unwinder)
8806         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
8807         (record_btrace_commit_resume, record_btrace_wait)
8808         (record_btrace_stop, record_btrace_can_execute_reverse)
8809         (record_btrace_stopped_by_sw_breakpoint)
8810         (record_btrace_supports_stopped_by_sw_breakpoint)
8811         (record_btrace_stopped_by_hw_breakpoint)
8812         (record_btrace_supports_stopped_by_hw_breakpoint)
8813         (record_btrace_update_thread_list, record_btrace_thread_alive)
8814         (record_btrace_goto_begin, record_btrace_goto_end)
8815         (record_btrace_goto, record_btrace_stop_replaying_all)
8816         (record_btrace_execution_direction)
8817         (record_btrace_prepare_to_generate_core)
8818         (record_btrace_done_generating_core): Refactor as
8819         record_btrace_target methods.
8820         (init_record_btrace_ops): Delete.
8821         (_initialize_record_btrace): Remove reference to
8822         init_record_btrace_ops.
8823         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
8824         the execution_direction global.
8825         (record_full_base_target, record_full_target)
8826         (record_full_core_target): New classes.
8827         (record_full_ops): Now a record_full_target.
8828         (record_full_core_ops): Now a record_full_core_target.
8829         (record_full_target::detach, record_full_target::disconnect)
8830         (record_full_core_target::disconnect)
8831         (record_full_target::mourn_inferior, record_full_target::kill):
8832         New.
8833         (record_full_open, record_full_close, record_full_async): Refactor
8834         as methods of the record_full_base_target class.
8835         (record_full_resume, record_full_commit_resume): Refactor
8836         as methods of the record_full_target class.
8837         (record_full_wait, record_full_stopped_by_watchpoint)
8838         (record_full_stopped_data_address)
8839         (record_full_stopped_by_sw_breakpoint)
8840         (record_full_supports_stopped_by_sw_breakpoint)
8841         (record_full_stopped_by_hw_breakpoint)
8842         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
8843         methods of the record_full_base_target class.
8844         (record_full_store_registers, record_full_xfer_partial)
8845         (record_full_insert_breakpoint, record_full_remove_breakpoint):
8846         Refactor as methods of the record_full_target class.
8847         (record_full_can_execute_reverse, record_full_get_bookmark)
8848         (record_full_goto_bookmark, record_full_execution_direction)
8849         (record_full_record_method, record_full_info, record_full_delete)
8850         (record_full_is_replaying, record_full_will_replay)
8851         (record_full_goto_begin, record_full_goto_end, record_full_goto)
8852         (record_full_stop_replaying): Refactor as methods of the
8853         record_full_base_target class.
8854         (record_full_core_resume, record_full_core_kill)
8855         (record_full_core_fetch_registers)
8856         (record_full_core_prepare_to_store)
8857         (record_full_core_store_registers, record_full_core_xfer_partial)
8858         (record_full_core_insert_breakpoint)
8859         (record_full_core_remove_breakpoint)
8860         (record_full_core_has_execution): Refactor
8861         as methods of the record_full_core_target class.
8862         (record_full_base_target::supports_delete_record): New.
8863         (init_record_full_ops): Delete.
8864         (init_record_full_core_ops): Delete.
8865         (record_full_save): Refactor as method of the
8866         record_full_base_target class.
8867         (_initialize_record_full): Remove references to
8868         init_record_full_ops and init_record_full_core_ops.
8869
8870         * remote.c (remote_target, extended_remote_target): New classes.
8871         (remote_ops): Now a remote_target.
8872         (extended_remote_ops): Now an extended_remote_target.
8873         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
8874         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
8875         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
8876         (remote_pass_signals, remote_set_syscall_catchpoint)
8877         (remote_program_signals, )
8878         (remote_thread_always_alive): Remove target_ops parameter.
8879         (remote_thread_alive, remote_thread_name)
8880         (remote_update_thread_list, remote_threads_extra_info)
8881         (remote_static_tracepoint_marker_at)
8882         (remote_static_tracepoint_markers_by_strid)
8883         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
8884         (remote_open): Refactor as methods of remote_target.
8885         (extended_remote_open, extended_remote_detach)
8886         (extended_remote_attach, extended_remote_post_attach):
8887         (extended_remote_supports_disable_randomization)
8888         (extended_remote_create_inferior): : Refactor as method of
8889         extended_remote_target.
8890         (remote_set_permissions, remote_open_1, remote_detach)
8891         (remote_follow_fork, remote_follow_exec, remote_disconnect)
8892         (remote_resume, remote_commit_resume, remote_stop)
8893         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
8894         (remote_terminal_ours, remote_wait, remote_fetch_registers)
8895         (remote_prepare_to_store, remote_store_registers)
8896         (remote_flash_erase, remote_flash_done, remote_files_info)
8897         (remote_kill, remote_mourn, remote_insert_breakpoint)
8898         (remote_remove_breakpoint, remote_insert_watchpoint)
8899         (remote_watchpoint_addr_within_range)
8900         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
8901         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
8902         (remote_supports_stopped_by_sw_breakpoint)
8903         (remote_stopped_by_hw_breakpoint)
8904         (remote_supports_stopped_by_hw_breakpoint)
8905         (remote_stopped_by_watchpoint, remote_stopped_data_address)
8906         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
8907         (remote_verify_memory): Refactor as methods of remote_target.
8908         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
8909         parameter.
8910         (remote_xfer_partial, remote_get_memory_xfer_limit)
8911         (remote_search_memory, remote_rcmd, remote_memory_map)
8912         (remote_pid_to_str, remote_get_thread_local_address)
8913         (remote_get_tib_address, remote_read_description): Refactor as
8914         methods of remote_target.
8915         (remote_target::fileio_open, remote_target::fileio_pwrite)
8916         (remote_target::fileio_pread, remote_target::fileio_close): New.
8917         (remote_hostio_readlink, remote_hostio_fstat)
8918         (remote_filesystem_is_local, remote_can_execute_reverse)
8919         (remote_supports_non_stop, remote_supports_disable_randomization)
8920         (remote_supports_multi_process, remote_supports_cond_breakpoints)
8921         (remote_supports_enable_disable_tracepoint)
8922         (remote_supports_string_tracing)
8923         (remote_can_run_breakpoint_commands, remote_trace_init)
8924         (remote_download_tracepoint, remote_can_download_tracepoint)
8925         (remote_download_trace_state_variable, remote_enable_tracepoint)
8926         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
8927         (remote_trace_start, remote_get_trace_status)
8928         (remote_get_tracepoint_status, remote_trace_stop)
8929         (remote_trace_find, remote_get_trace_state_variable_value)
8930         (remote_save_trace_data, remote_get_raw_trace_data)
8931         (remote_set_disconnected_tracing, remote_core_of_thread)
8932         (remote_set_circular_trace_buffer, remote_traceframe_info)
8933         (remote_get_min_fast_tracepoint_insn_len)
8934         (remote_set_trace_buffer_size, remote_set_trace_notes)
8935         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
8936         (remote_disable_btrace, remote_teardown_btrace)
8937         (remote_read_btrace, remote_btrace_conf)
8938         (remote_augmented_libraries_svr4_read, remote_load)
8939         (remote_pid_to_exec_file, remote_can_do_single_step)
8940         (remote_execution_direction, remote_thread_handle_to_thread_info):
8941         Refactor as methods of remote_target.
8942         (init_remote_ops, init_extended_remote_ops): Delete.
8943         (remote_can_async_p, remote_is_async_p, remote_async)
8944         (remote_thread_events, remote_upload_tracepoints)
8945         (remote_upload_trace_state_variables): Refactor as methods of
8946         remote_target.
8947         (_initialize_remote): Remove references to init_remote_ops and
8948         init_extended_remote_ops.
8949
8950         * remote-sim.c (gdbsim_target): New class.
8951         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
8952         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
8953         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
8954         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
8955         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
8956         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
8957         Refactor as methods of gdbsim_target.
8958         (gdbsim_ops): Now a gdbsim_target.
8959         (init_gdbsim_ops): Delete.
8960         (gdbsim_cntrl_c): Adjust.
8961         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
8962
8963         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
8964         (the_amd64_linux_nat_target): New.
8965         (amd64_linux_fetch_inferior_registers)
8966         (amd64_linux_store_inferior_registers): Refactor as methods of
8967         amd64_linux_nat_target.
8968         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
8969         * i386-linux-nat.c: Don't include "linux-nat.h".
8970         (i386_linux_nat_target): New class.
8971         (the_i386_linux_nat_target): New.
8972         (i386_linux_fetch_inferior_registers)
8973         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
8974         as methods of i386_linux_nat_target.
8975         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
8976         * inf-child.c (inf_child_ops): Delete.
8977         (inf_child_fetch_inferior_registers)
8978         (inf_child_store_inferior_registers): Delete.
8979         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
8980         methods of inf_child_target.
8981         (inf_child_target::supports_terminal_ours)
8982         (inf_child_target::terminal_init)
8983         (inf_child_target::terminal_inferior)
8984         (inf_child_target::terminal_ours_for_output)
8985         (inf_child_target::terminal_ours, inf_child_target::interrupt)
8986         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
8987         New.
8988         (inf_child_open, inf_child_disconnect, inf_child_close)
8989         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
8990         (inf_child_post_startup_inferior, inf_child_can_run)
8991         (inf_child_pid_to_exec_file): Refactor as methods of
8992         inf_child_target.
8993         (inf_child_follow_fork): Delete.
8994         (inf_child_target::can_create_inferior)
8995         (inf_child_target::can_attach): New.
8996         (inf_child_target::has_all_memory, inf_child_target::has_memory)
8997         (inf_child_target::has_stack, inf_child_target::has_registers)
8998         (inf_child_target::has_execution): New.
8999         (inf_child_fileio_open, inf_child_fileio_pwrite)
9000         (inf_child_fileio_pread, inf_child_fileio_fstat)
9001         (inf_child_fileio_close, inf_child_fileio_unlink)
9002         (inf_child_fileio_readlink, inf_child_use_agent)
9003         (inf_child_can_use_agent): Refactor as methods of
9004         inf_child_target.
9005         (return_zero, inf_child_target): Delete.
9006         (inf_child_target::inf_child_target): New.
9007         * inf-child.h: Include "target.h".
9008         (inf_child_target): Delete function prototype.
9009         (inf_child_target): New class.
9010         (inf_child_open_target, inf_child_mourn_inferior)
9011         (inf_child_maybe_unpush_target): Delete.
9012         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
9013         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
9014         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
9015         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
9016         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
9017         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
9018         (inf_ptrace_wait, inf_ptrace_xfer_partial)
9019         (inf_ptrace_thread_alive, inf_ptrace_files_info)
9020         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
9021         methods of inf_ptrace_target.
9022         (inf_ptrace_target): Delete function.
9023         * inf-ptrace.h: Include "inf-child.h".
9024         (inf_ptrace_target): Delete function declaration.
9025         (inf_ptrace_target): New class.
9026         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
9027         * linux-nat.c (linux_target): New.
9028         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
9029         (linux_nat_target::~linux_nat_target): New.
9030         (linux_child_post_attach, linux_child_post_startup_inferior)
9031         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
9032         (linux_child_remove_fork_catchpoint)
9033         (linux_child_insert_vfork_catchpoint)
9034         (linux_child_remove_vfork_catchpoint)
9035         (linux_child_insert_exec_catchpoint)
9036         (linux_child_remove_exec_catchpoint)
9037         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
9038         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
9039         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
9040         (linux_nat_stopped_data_address)
9041         (linux_nat_stopped_by_sw_breakpoint)
9042         (linux_nat_supports_stopped_by_sw_breakpoint)
9043         (linux_nat_stopped_by_hw_breakpoint)
9044         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
9045         (linux_nat_kill, linux_nat_mourn_inferior)
9046         (linux_nat_xfer_partial, linux_nat_thread_alive)
9047         (linux_nat_update_thread_list, linux_nat_pid_to_str)
9048         (linux_nat_thread_name, linux_child_pid_to_exec_file)
9049         (linux_child_static_tracepoint_markers_by_strid)
9050         (linux_nat_is_async_p, linux_nat_can_async_p)
9051         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
9052         (linux_nat_supports_multi_process)
9053         (linux_nat_supports_disable_randomization, linux_nat_async)
9054         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
9055         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
9056         (linux_nat_fileio_open, linux_nat_fileio_readlink)
9057         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
9058         methods of linux_nat_target.
9059         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
9060         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
9061         parameter.
9062         (check_stopped_by_watchpoint): Adjust.
9063         (linux_xfer_partial): Delete.
9064         (linux_target_install_ops, linux_target, linux_nat_add_target):
9065         Delete.
9066         (linux_nat_target::linux_nat_target): New.
9067         * linux-nat.h: Include "inf-ptrace.h".
9068         (linux_nat_target): New.
9069         (linux_target, linux_target_install_ops, linux_nat_add_target):
9070         Delete function declarations.
9071         (linux_target): Declare global.
9072         * linux-thread-db.c (thread_db_target): New.
9073         (thread_db_target::thread_db_target): New.
9074         (thread_db_ops): Delete.
9075         (the_thread_db_target): New.
9076         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
9077         (thread_db_update_thread_list, thread_db_pid_to_str)
9078         (thread_db_extra_thread_info)
9079         (thread_db_thread_handle_to_thread_info)
9080         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
9081         (thread_db_resume): Refactor as methods of thread_db_target.
9082         (init_thread_db_ops): Delete.
9083         (_initialize_thread_db): Remove reference to init_thread_db_ops.
9084         * x86-linux-nat.c: Don't include "linux-nat.h".
9085         (super_post_startup_inferior): Delete.
9086         (x86_linux_nat_target::~x86_linux_nat_target): New.
9087         (x86_linux_child_post_startup_inferior)
9088         (x86_linux_read_description, x86_linux_enable_btrace)
9089         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
9090         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
9091         methods of x86_linux_nat_target.
9092         (x86_linux_create_target): Delete.  Bits folded ...
9093         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
9094         pointer.
9095         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
9096         (x86_linux_nat_target): New class.
9097         (x86_linux_create_target): Delete.
9098         (x86_linux_add_target): Now takes a linux_nat_target pointer.
9099         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
9100         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
9101         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
9102         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
9103         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
9104         make extern.
9105         (x86_use_watchpoints): Delete.
9106         * x86-nat.h: Include "breakpoint.h" and "target.h".
9107         (x86_use_watchpoints): Delete.
9108         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
9109         (x86_stopped_by_watchpoint, x86_stopped_data_address)
9110         (x86_insert_watchpoint, x86_remove_watchpoint)
9111         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
9112         (x86_stopped_by_hw_breakpoint): New declarations.
9113         (x86_nat_target): New template class.
9114
9115         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
9116         (the_ppc_linux_nat_target): New.
9117         (ppc_linux_fetch_inferior_registers)
9118         (ppc_linux_can_use_hw_breakpoint)
9119         (ppc_linux_region_ok_for_hw_watchpoint)
9120         (ppc_linux_ranged_break_num_registers)
9121         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
9122         (ppc_linux_insert_mask_watchpoint)
9123         (ppc_linux_remove_mask_watchpoint)
9124         (ppc_linux_can_accel_watchpoint_condition)
9125         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
9126         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
9127         (ppc_linux_watchpoint_addr_within_range)
9128         (ppc_linux_masked_watch_num_registers)
9129         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
9130         (ppc_linux_read_description): Refactor as methods of
9131         ppc_linux_nat_target.
9132         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
9133
9134         * procfs.c (procfs_xfer_partial): Delete forward declaration.
9135         (procfs_target): New class.
9136         (the_procfs_target): New.
9137         (procfs_target): Delete function.
9138         (procfs_auxv_parse, procfs_attach, procfs_detach)
9139         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
9140         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
9141         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
9142         (procfs_create_inferior, procfs_update_thread_list)
9143         (procfs_thread_alive, procfs_pid_to_str)
9144         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
9145         (procfs_stopped_data_address, procfs_insert_watchpoint)
9146         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
9147         (proc_find_memory_regions, procfs_info_proc)
9148         (procfs_make_note_section): Refactor as methods of procfs_target.
9149         (_initialize_procfs): Adjust.
9150         * sol-thread.c (sol_thread_target): New class.
9151         (sol_thread_ops): Now a sol_thread_target.
9152         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
9153         (sol_thread_fetch_registers, sol_thread_store_registers)
9154         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
9155         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
9156         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
9157         (init_sol_thread_ops): Delete.
9158         (_initialize_sol_thread): Adjust.  Remove references to
9159         init_sol_thread_ops and complete_target_initialization.
9160
9161         * windows-nat.c (windows_nat_target): New class.
9162         (windows_fetch_inferior_registers)
9163         (windows_store_inferior_registers, windows_resume, windows_wait)
9164         (windows_attach, windows_detach, windows_pid_to_exec_file)
9165         (windows_files_info, windows_create_inferior)
9166         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
9167         (windows_close, windows_pid_to_str, windows_xfer_partial)
9168         (windows_get_tib_address, windows_get_ada_task_ptid)
9169         (windows_thread_name, windows_thread_alive): Refactor as
9170         windows_nat_target methods.
9171         (do_initial_windows_stuff): Adjust.
9172         (windows_target): Delete function.
9173         (_initialize_windows_nat): Adjust.
9174
9175         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
9176         (darwin_mourn_inferior, darwin_kill_inferior)
9177         (darwin_create_inferior, darwin_attach, darwin_detach)
9178         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
9179         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
9180         (darwin_supports_multi_process): Refactor as darwin_nat_target
9181         methods.
9182         (darwin_resume_to, darwin_files_info): Delete.
9183         (_initialize_darwin_inferior): Rename to ...
9184         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
9185         * darwin-nat.h: Include "inf-child.h".
9186         (darwin_nat_target): New class.
9187         (darwin_complete_target): Delete.
9188         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
9189         (darwin_target): New.
9190         (i386_darwin_fetch_inferior_registers)
9191         (i386_darwin_store_inferior_registers): Refactor as methods of
9192         darwin_nat_target.
9193         (darwin_complete_target): Delete, with ...
9194         (_initialize_i386_darwin_nat): ... bits factored out here.
9195
9196         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
9197         (the_alpha_linux_nat_target): New.
9198         (alpha_linux_register_u_offset): Refactor as
9199         alpha_linux_nat_target method.
9200         (_initialize_alpha_linux_nat): Adjust.
9201         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
9202         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9203         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
9204         methods of linux_nat_trad_target.
9205         (linux_trad_target): Delete.
9206         * linux-nat-trad.h (linux_trad_target): Delete function.
9207         (linux_nat_trad_target): New class.
9208         * mips-linux-nat.c (mips_linux_nat_target): New class.
9209         (super_fetch_registers, super_store_registers, super_close):
9210         Delete.
9211         (the_mips_linux_nat_target): New.
9212         (mips64_linux_regsets_fetch_registers)
9213         (mips64_linux_regsets_store_registers)
9214         (mips64_linux_fetch_registers, mips64_linux_store_registers)
9215         (mips_linux_register_u_offset, mips_linux_read_description)
9216         (mips_linux_can_use_hw_breakpoint)
9217         (mips_linux_stopped_by_watchpoint)
9218         (mips_linux_stopped_data_address)
9219         (mips_linux_region_ok_for_hw_watchpoint)
9220         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
9221         (mips_linux_close): Refactor as methods of mips_linux_nat.
9222         (_initialize_mips_linux_nat): Adjust to C++ification.
9223
9224         * aix-thread.c (aix_thread_target): New class.
9225         (aix_thread_ops): Now an aix_thread_target.
9226         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
9227         (aix_thread_fetch_registers, aix_thread_store_registers)
9228         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
9229         (aix_thread_thread_alive, aix_thread_pid_to_str)
9230         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
9231         Refactor as methods of aix_thread_target.
9232         (init_aix_thread_ops): Delete.
9233         (_initialize_aix_thread): Remove references to init_aix_thread_ops
9234         and complete_target_initialization.
9235         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
9236         (rs6000_nat_target): New class.
9237         (the_rs6000_nat_target): New.
9238         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
9239         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
9240         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
9241         (super_create_inferior): Delete.
9242         (_initialize_rs6000_nat): Adjust to C++ification.
9243
9244         * arm-linux-nat.c (arm_linux_nat_target): New class.
9245         (the_arm_linux_nat_target): New.
9246         (arm_linux_fetch_inferior_registers)
9247         (arm_linux_store_inferior_registers, arm_linux_read_description)
9248         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
9249         (arm_linux_remove_hw_breakpoint)
9250         (arm_linux_region_ok_for_hw_watchpoint)
9251         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
9252         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
9253         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
9254         arm_linux_nat_target.
9255         (_initialize_arm_linux_nat): Adjust to C++ification.
9256
9257         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
9258         (the_aarch64_linux_nat_target): New.
9259         (aarch64_linux_fetch_inferior_registers)
9260         (aarch64_linux_store_inferior_registers)
9261         (aarch64_linux_child_post_startup_inferior)
9262         (aarch64_linux_read_description)
9263         (aarch64_linux_can_use_hw_breakpoint)
9264         (aarch64_linux_insert_hw_breakpoint)
9265         (aarch64_linux_remove_hw_breakpoint)
9266         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
9267         (aarch64_linux_region_ok_for_hw_watchpoint)
9268         (aarch64_linux_stopped_data_address)
9269         (aarch64_linux_stopped_by_watchpoint)
9270         (aarch64_linux_watchpoint_addr_within_range)
9271         (aarch64_linux_can_do_single_step): Refactor as methods of
9272         aarch64_linux_nat_target.
9273         (super_post_startup_inferior): Delete.
9274         (_initialize_aarch64_linux_nat): Adjust to C++ification.
9275
9276         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
9277         (the_hppa_linux_nat_target): New.
9278         (hppa_linux_fetch_inferior_registers)
9279         (hppa_linux_store_inferior_registers): Refactor as methods of
9280         hppa_linux_nat_target.
9281         (_initialize_hppa_linux_nat): Adjust to C++ification.
9282
9283         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
9284         (the_ia64_linux_nat_target): New.
9285         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
9286         (ia64_linux_stopped_data_address)
9287         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
9288         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
9289         ia64_linux_nat_target methods.
9290         (super_xfer_partial): Delete.
9291         (_initialize_ia64_linux_nat): Adjust to C++ification.
9292
9293         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
9294         (the_m32r_linux_nat_target): New.
9295         (m32r_linux_fetch_inferior_registers)
9296         (m32r_linux_store_inferior_registers): Refactor as
9297         m32r_linux_nat_target methods.
9298         (_initialize_m32r_linux_nat): Adjust to C++ification.
9299
9300         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
9301         (the_m68k_linux_nat_target): New.
9302         (m68k_linux_fetch_inferior_registers)
9303         (m68k_linux_store_inferior_registers): Refactor as
9304         m68k_linux_nat_target methods.
9305         (_initialize_m68k_linux_nat): Adjust to C++ification.
9306
9307         * s390-linux-nat.c (s390_linux_nat_target): New class.
9308         (the_s390_linux_nat_target): New.
9309         (s390_linux_fetch_inferior_registers)
9310         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
9311         (s390_insert_watchpoint, s390_remove_watchpoint)
9312         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
9313         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
9314         (s390_auxv_parse, s390_read_description): Refactor as methods of
9315         s390_linux_nat_target.
9316         (_initialize_s390_nat): Adjust to C++ification.
9317
9318         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
9319         (the_sparc_linux_nat_target): New.
9320         (_initialize_sparc_linux_nat): Adjust to C++ification.
9321         * sparc-nat.c (sparc_fetch_inferior_registers)
9322         (sparc_store_inferior_registers): Remove target_ops parameter.
9323         * sparc-nat.h (sparc_fetch_inferior_registers)
9324         (sparc_store_inferior_registers): Remove target_ops parameter.
9325         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
9326         (the_sparc64_linux_nat_target): New.
9327         (_initialize_sparc64_linux_nat): Adjust to C++ification.
9328
9329         * spu-linux-nat.c (spu_linux_nat_target): New class.
9330         (the_spu_linux_nat_target): New.
9331         (spu_child_post_startup_inferior, spu_child_post_attach)
9332         (spu_child_wait, spu_fetch_inferior_registers)
9333         (spu_store_inferior_registers, spu_xfer_partial)
9334         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
9335         methods.
9336         (_initialize_spu_nat): Adjust to C++ification.
9337
9338         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
9339         (the_tilegx_linux_nat_target): New.
9340         (fetch_inferior_registers, store_inferior_registers):
9341         Refactor as methods.
9342         (_initialize_tile_linux_nat): Adjust to C++ification.
9343
9344         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
9345         (the_xtensa_linux_nat_target): New.
9346         (xtensa_linux_fetch_inferior_registers)
9347         (xtensa_linux_store_inferior_registers): Refactor as
9348         xtensa_linux_nat_target methods.
9349         (_initialize_xtensa_linux_nat): Adjust to C++ification.
9350
9351         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
9352         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
9353         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
9354         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
9355         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
9356         (fbsd_stopped_by_sw_breakpoint)
9357         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
9358         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
9359         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
9360         (fbsd_post_startup_inferior, fbsd_post_attach)
9361         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
9362         (fbsd_set_syscall_catchpoint)
9363         (super_xfer_partial, super_resume, super_wait)
9364         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
9365         (fbsd_handle_debug_trap): Remove target_ops parameter.
9366         (fbsd_nat_add_target): Delete.
9367         * fbsd-nat.h: Include "inf-ptrace.h".
9368         (fbsd_nat_add_target): Delete.
9369         (USE_SIGTRAP_SIGINFO): Define.
9370         (fbsd_nat_target): New class.
9371
9372         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
9373         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
9374         (amd64bsd_target): Delete.
9375         * amd64-bsd-nat.h: New file.
9376         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
9377         "x86-bsd-nat.h".
9378         (amd64_fbsd_nat_target): New class.
9379         (the_amd64_fbsd_nat_target): New.
9380         (amd64fbsd_read_description): Refactor as method of
9381         amd64_fbsd_nat_target.
9382         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9383         (_initialize_amd64fbsd_nat): Adjust to C++ification.
9384         * amd64-nat.h (amd64bsd_target): Delete function declaration.
9385         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
9386         (i386bsd_store_inferior_registers): Remove target_ops parameter.
9387         (i386bsd_target): Delete.
9388         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
9389         (i386bsd_fetch_inferior_registers)
9390         (i386bsd_store_inferior_registers): Declare.
9391         (i386_bsd_nat_target): New class.
9392         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
9393         (the_i386_fbsd_nat_target): New.
9394         (i386fbsd_resume, i386fbsd_read_description): Refactor as
9395         i386_fbsd_nat_target methods.
9396         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9397         (_initialize_i386fbsd_nat): Adjust to C++ification.
9398         * x86-bsd-nat.c (super_mourn_inferior): Delete.
9399         (x86bsd_mourn_inferior, x86bsd_target): Delete.
9400         (_initialize_x86_bsd_nat): Adjust to C++ification.
9401         * x86-bsd-nat.h: Include "x86-nat.h".
9402         (x86bsd_target): Delete declaration.
9403         (x86bsd_nat_target): New class.
9404
9405         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
9406         (the_aarch64_fbsd_nat_target): New.
9407         (aarch64_fbsd_fetch_inferior_registers)
9408         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
9409         aarch64_fbsd_nat_target.
9410         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
9411         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
9412         (the_alpha_bsd_nat_target): New.
9413         (alphabsd_fetch_inferior_registers)
9414         (alphabsd_store_inferior_registers): Refactor as
9415         alpha_bsd_nat_target methods.
9416         (_initialize_alphabsd_nat): Refactor as methods of
9417         alpha_bsd_nat_target.
9418         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
9419         (the_amd64_nbsd_nat_target): New.
9420         (_initialize_amd64nbsd_nat): Adjust to C++ification.
9421         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
9422         (the_amd64_obsd_nat_target): New.
9423         (_initialize_amd64obsd_nat): Adjust to C++ification.
9424         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
9425         (the_arm_fbsd_nat_target): New.
9426         (arm_fbsd_fetch_inferior_registers)
9427         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
9428         (_initialize_arm_fbsd_nat): Refactor as methods of
9429         arm_fbsd_nat_target.
9430         (_initialize_arm_fbsd_nat): Adjust to C++ification.
9431         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
9432         (the_arm_netbsd_nat_target): New.
9433         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
9434         arm_netbsd_nat_target.
9435         (_initialize_arm_netbsd_nat): Adjust to C++ification.
9436         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
9437         (the_hppa_nbsd_nat_target): New.
9438         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
9439         hppa_nbsd_nat_target methods.
9440         (_initialize_hppanbsd_nat): Adjust to C++ification.
9441         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
9442         (the_hppa_obsd_nat_target): New.
9443         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
9444         methods of hppa_obsd_nat_target.
9445         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
9446         add_target.
9447         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
9448         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
9449         add_target.
9450         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
9451         (_initialize_i386obsd_nat): Use add_target.
9452         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
9453         (the_m68k_bsd_nat_target): New.
9454         (m68kbsd_fetch_inferior_registers)
9455         (m68kbsd_store_inferior_registers): Refactor as methods of
9456         m68k_bsd_nat_target.
9457         (_initialize_m68kbsd_nat): Adjust to C++ification.
9458         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
9459         (the_mips_fbsd_nat_target): New.
9460         (mips_fbsd_fetch_inferior_registers)
9461         (mips_fbsd_store_inferior_registers): Refactor as methods of
9462         mips_fbsd_nat_target.
9463         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
9464         add_target.
9465         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
9466         (the_mips_nbsd_nat_target): New.
9467         (mipsnbsd_fetch_inferior_registers)
9468         (mipsnbsd_store_inferior_registers): Refactor as methods of
9469         mips_nbsd_nat_target.
9470         (_initialize_mipsnbsd_nat): Adjust to C++ification.
9471         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
9472         (the_mips64_obsd_nat_target): New.
9473         (mips64obsd_fetch_inferior_registers)
9474         (mips64obsd_store_inferior_registers): Refactor as methods of
9475         mips64_obsd_nat_target.
9476         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
9477         add_target.
9478         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
9479         nbsd_nat_target.
9480         * nbsd-nat.h: Include "inf-ptrace.h".
9481         (nbsd_nat_target): New class.
9482         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
9483         (obsd_wait): Refactor as methods of obsd_nat_target.
9484         (obsd_add_target): Delete.
9485         * obsd-nat.h: Include "inf-ptrace.h".
9486         (obsd_nat_target): New class.
9487         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
9488         (the_ppc_fbsd_nat_target): New.
9489         (ppcfbsd_fetch_inferior_registers)
9490         (ppcfbsd_store_inferior_registers): Refactor as methods of
9491         ppc_fbsd_nat_target.
9492         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
9493         add_target.
9494         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
9495         (the_ppc_nbsd_nat_target): New.
9496         (ppcnbsd_fetch_inferior_registers)
9497         (ppcnbsd_store_inferior_registers): Refactor as methods of
9498         ppc_nbsd_nat_target.
9499         (_initialize_ppcnbsd_nat): Adjust to C++ification.
9500         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
9501         (the_ppc_obsd_nat_target): New.
9502         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
9503         methods of ppc_obsd_nat_target.
9504         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
9505         add_target.
9506         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
9507         (the_sh_nbsd_nat_target): New.
9508         (shnbsd_fetch_inferior_registers)
9509         (shnbsd_store_inferior_registers): Refactor as methods of
9510         sh_nbsd_nat_target.
9511         (_initialize_shnbsd_nat): Adjust to C++ification.
9512         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
9513         (inf_ptrace_xfer_partial): Delete.
9514         (sparc_xfer_partial, sparc_target): Delete.
9515         * sparc-nat.h (sparc_fetch_inferior_registers)
9516         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
9517         (sparc_target): Delete function declaration.
9518         (sparc_target): New template class.
9519         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
9520         (_initialize_sparcnbsd_nat): Adjust to C++ification.
9521         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
9522         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
9523         add_target.
9524         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
9525         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
9526         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
9527         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
9528         add_target.
9529         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
9530         (the_vax_bsd_nat_target): New.
9531         (vaxbsd_fetch_inferior_registers)
9532         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
9533         methods.
9534         (_initialize_vaxbsd_nat): Adjust to C++ification.
9535
9536         * bsd-kvm.c (bsd_kvm_target): New class.
9537         (bsd_kvm_ops): Now a bsd_kvm_target.
9538         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
9539         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
9540         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
9541         bsd_kvm_target.
9542         (bsd_kvm_return_one): Delete.
9543         (bsd_kvm_add_target): Adjust to C++ification.
9544
9545         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
9546         (nto_procfs_target_procfs): New classes.
9547         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
9548         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
9549         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
9550         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
9551         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
9552         (procfs_remove_hw_breakpoint, procfs_resume)
9553         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
9554         (procfs_kill_inferior, procfs_store_registers)
9555         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
9556         as methods of nto_procfs_target.
9557         (nto_procfs_ops): Now an nto_procfs_target_procfs.
9558         (nto_native_ops): Delete.
9559         (procfs_open, procfs_native_open): Delete.
9560         (nto_native_ops): Now an nto_procfs_target_native.
9561         (init_procfs_targets): Adjust to C++ification.
9562         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
9563         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
9564         Refactor as methods of nto_procfs_target.
9565
9566         * go32-nat.c (go32_nat_target): New class.
9567         (the_go32_nat_target): New.
9568         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
9569         (go32_store_registers, go32_xfer_partial, go32_files_info)
9570         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
9571         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
9572         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
9573         (go32_pid_to_str): Refactor as methods of go32_nat_target.
9574         (go32_target): Delete.
9575         (_initialize_go32_nat): Adjust to C++ification.
9576
9577         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
9578         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
9579         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
9580         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
9581         gnu_nat_target.
9582         (gnu_target): Delete.
9583         * gnu-nat.h (gnu_target): Delete.
9584         (gnu_nat_target): New class.
9585         * i386-gnu-nat.c (gnu_base_target): New.
9586         (i386_gnu_nat_target): New class.
9587         (the_i386_gnu_nat_target): New.
9588         (_initialize_i386gnu_nat): Adjust to C++ification.
9589
9590 2018-05-02  Pedro Alves  <palves@redhat.com>
9591
9592         * bfd-target.c (target_bfd_xclose): Rename to ...
9593         (target_bfd_close): ... this.
9594         (target_bfd_reopen): Adjust.
9595         * target.c (target_close): Remove references to to_xclose.
9596         * target.h (target_ops::to_xclose): Delete.
9597         (target_ops::to_close): Update comments.
9598
9599 2018-05-02  Pedro Alves  <palves@redhat.com>
9600
9601         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
9602         "linux-nat.h".
9603         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
9604         * inf-ptrace.c (inf_ptrace_register_u_offset)
9605         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9606         (inf_ptrace_store_register, inf_ptrace_store_registers)
9607         (inf_ptrace_trad_target): Move to ...
9608         * linux-nat-trad.c: ... this new file.
9609         * linux-nat-trad.h: New file.
9610         * linux-nat.c (linux_target_install_ops): Make extern.
9611         (linux_trad_target): Delete.
9612         * linux-nat.h (linux_trad_target): Delete declaration.
9613         (linux_target_install_ops): Declare.
9614         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
9615         "linux-nat.h".
9616
9617 2018-05-02  Pedro Alves  <palves@redhat.com>
9618
9619         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
9620         procfs_target/add_target here.
9621         * procfs.c (procfs_target): Make static.
9622         (_initialize_procfs): Call add_target here.
9623         * procfs.h (struct target_ops): Remove forward declaration.
9624         (procfs_target): Remove declaration.
9625         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
9626
9627 2018-05-02  Pedro Alves  <palves@redhat.com>
9628
9629         * procfs.c (procfs_stopped_by_watchpoint)
9630         (procfs_insert_watchpoint, procfs_remove_watchpoint)
9631         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
9632         Forward declare.
9633         (procfs_use_watchpoints): Delete, move contents...
9634         (procfs_target): ... here.
9635         * procfs.h (procfs_use_watchpoints): Delete declaration.
9636         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
9637         procfs_use_watchpoints.
9638         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
9639         procfs_use_watchpoints.
9640
9641 2018-05-02  Tom Tromey  <tom@tromey.com>
9642
9643         PR python/20084:
9644         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
9645         and var_zuinteger_unlimited.
9646         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
9647         and PARAM_ZUINTEGER_UNLIMITED.
9648         (set_parameter_value): Handle var_zuinteger and
9649         var_zuinteger_unlimited.
9650         (add_setshow_generic): Likewise.
9651         (parmpy_init): Likewise.
9652
9653 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
9654
9655         PR rust/23124
9656         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
9657         pointer is not null before dereferencing it.
9658
9659 2018-04-30  Tom Tromey  <tom@tromey.com>
9660
9661         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
9662         is_mi_like_p.
9663
9664 2018-04-30  Tom Tromey  <tom@tromey.com>
9665
9666         * breakpoint.c (mention): Remove use of is_mi_like_p.
9667         (print_mention_ranged_breakpoint): Likewise.
9668         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
9669         of is_mi_like_p.
9670
9671 2018-04-30  Tom Tromey  <tom@tromey.com>
9672
9673         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
9674
9675 2018-04-30  Tom Tromey  <tom@tromey.com>
9676
9677         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
9678         (info_spu_event_command): Remove some uses of is_mi_like_p.
9679
9680 2018-04-30  Tom Tromey  <tom@tromey.com>
9681
9682         * python/py-framefilter.c (py_print_single_arg)
9683         (enumerate_locals, py_print_args, py_print_frame): Remove some
9684         uses of is_mi_like_p.
9685
9686 2018-04-30  Tom Tromey  <tom@tromey.com>
9687
9688         * ui-out.c: Update.
9689         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
9690         * ui-out.h (ui_out::is_mi_like_p): Now const.
9691         (ui_out::do_is_mi_like_p): Now const.
9692         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
9693
9694 2018-04-30  Tom Tromey  <tom@tromey.com>
9695
9696         * varobj.c (varobj_set_visualizer): Use new_reference.
9697         * python/python.c (gdbpy_decode_line): Use new_reference.
9698         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
9699         new_reference.
9700
9701 2018-04-30  Tom Tromey  <tom@tromey.com>
9702
9703         * varobj.c (install_new_value): Use new_reference.
9704         * value.h (value_incref): Return void.  Swap intro comment with
9705         value_decref.
9706         * value.c (set_value_parent): Use new_reference.
9707         (value_incref): Return void.  Update intro comment.
9708         (release_value): Use new_reference.
9709         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
9710
9711 2018-04-30  Tom Tromey  <tom@tromey.com>
9712
9713         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
9714         * gdb_bfd.h (new_bfd_ref): Remove.
9715         (gdb_bfd_open): Update comment.
9716         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
9717         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
9718         (gdb_bfd_fdopenr): Use new_reference.
9719         * exec.c (exec_file_attach): Use new_reference.
9720
9721 2018-04-30  Tom Tromey  <tom@tromey.com>
9722
9723         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
9724         method.
9725
9726 2018-04-30  Tom Tromey  <tom@tromey.com>
9727
9728         * jit.c (jit_read_code_entry): Use type_align.
9729         * i386-tdep.c (i386_gdbarch_init): Don't call
9730         set_gdbarch_long_long_align_bit.
9731         * gdbarch.sh: Remove long_long_align_bit.
9732         * gdbarch.c, gdbarch.h: Rebuild.
9733         * arc-tdep.c (arc_type_align): New function.
9734         (arc_gdbarch_init): Use arc_type_align.  Don't call
9735         set_gdbarch_long_long_align_bit.
9736
9737 2018-04-30  Tom Tromey  <tom@tromey.com>
9738
9739         * rust-lang.c (rust_type_alignment): Remove.
9740         (rust_composite_type): Use type_align.
9741
9742 2018-04-30  Tom Tromey  <tom@tromey.com>
9743
9744         * NEWS: Mention Type.align.
9745         * python/py-type.c (typy_get_alignof): New function.
9746         (type_object_getset): Add "alignof".
9747
9748 2018-04-30  Tom Tromey  <tom@tromey.com>
9749
9750         PR exp/17095:
9751         * NEWS: Update.
9752         * std-operator.def (UNOP_ALIGNOF): New operator.
9753         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
9754         New.
9755         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
9756         * c-lang.c (c_op_print_tab): Add alignof.
9757         * c-exp.y (ALIGNOF): New token.
9758         (exp): Add "ALIGNOF" production.
9759         (ident_tokens): Add _Alignof and alignof.
9760
9761 2018-04-30  Tom Tromey  <tom@tromey.com>
9762
9763         * i386-tdep.c (i386_type_align): New function.
9764         (i386_gdbarch_init): Update.
9765         * gdbarch.sh (type_align): New method.
9766         * gdbarch.c, gdbarch.h: Rebuild.
9767         * arch-utils.h (default_type_align): Declare.
9768         * arch-utils.c (default_type_align): New function.
9769         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
9770         (struct type) <align_log2>: New field.
9771         <instance_flags>: Now a bitfield.
9772         (TYPE_RAW_ALIGN): New macro.
9773         (type_align, type_raw_align, set_type_align): Declare.
9774         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
9775         functions.
9776         * dwarf2read.c (quirk_rust_enum): Set type alignment.
9777         (get_alignment, maybe_set_alignment): New functions.
9778         (read_structure_type, read_enumeration_type, read_array_type)
9779         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
9780         (read_subrange_type, read_base_type): Set type alignment.
9781
9782 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
9783
9784         * dwarf2read.c (read_index_from_section): Use bool.
9785
9786 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
9787
9788         PR gdb/22950
9789         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
9790         with #ifdef.
9791
9792 2018-04-29  John Reiser  <jreiser@BitWagon.com>
9793
9794         PR build/22873
9795         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
9796         last step, and do it atomically.
9797
9798 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
9799
9800         * compile/compile-c-types.c (convert_int, convert_float):
9801         Update for C FE v1.
9802
9803 2018-04-27  Tom Tromey  <tom@tromey.com>
9804
9805         PR rust/22545:
9806         * rust-lang.c (rust_inclusive_range_type_p): New function.
9807         (rust_range): Handle inclusive ranges.
9808         (rust_compute_range): Likewise.
9809         * rust-exp.y (struct rust_op) <inclusive>: New field.
9810         (DOTDOTEQ): New constant.
9811         (range_expr): Add "..=" productions.
9812         (operator_tokens): Add "..=" token.
9813         (ast_range): Add "inclusive" parameter.
9814         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
9815         ranges.
9816         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
9817         bounds values.
9818         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
9819         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
9820         Update comments.
9821         * expprint.c (print_subexp_standard): Handle new bounds values.
9822         (dump_subexp_body_standard): Likewise.
9823
9824 2018-04-27  Tom Tromey  <tom@tromey.com>
9825
9826         * configure: Rebuild.
9827         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
9828         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
9829         "OVERRIDE".
9830         (class symbol_needs_eval_context): Likewise.
9831         * dwarf2read.c (mock_mapped_index::symbol_name_count)
9832         (mock_mapped_index::symbol_name_at): Use "override".  Remove
9833         "virtual".
9834         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
9835         "override".
9836         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
9837         * aarch64-tdep.c (instruction_reader::read): Use "override".
9838         (instruction_reader_test::read): Likewise.
9839         * arm-tdep.c (instruction_reader::read): Use "override".
9840         (instruction_reader_thumb::read): Likewise.
9841
9842 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
9843
9844         PR remote/9665
9845         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
9846         instead of remote_send.
9847         (remote_send): Remove.
9848
9849 2018-04-26  Pedro Alves  <palves@redhat.com>
9850
9851         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
9852         find_function_start_sal instead of find_pc_line.
9853
9854 2018-04-26  Pedro Alves  <palves@redhat.com>
9855
9856         * breakpoint.c (set_breakpoint_location_function): Handle
9857         mst_data_gnu_ifunc.
9858         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
9859         * elfread.c (elf_symtab_read): Give data symbols with
9860         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
9861         (elf_rel_plt_read): Update comment.
9862         * linespec.c (convert_linespec_to_sals): Handle
9863         mst_data_gnu_ifunc.
9864         (minsym_found): Handle mst_data_gnu_ifunc.
9865         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
9866         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
9867         * parse.c (find_minsym_type_and_address): Handle
9868         mst_data_gnu_ifunc.
9869         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
9870         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
9871         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
9872         comment.
9873         <mst_data_gnu_ifunc>: New enumerator.
9874
9875 2018-04-26  Pedro Alves  <palves@redhat.com>
9876
9877         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
9878         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
9879         'want_trampoline' parameter by a lookup_msym_prefer parameter.
9880         Handle it.
9881         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
9882         (lookup_minimal_symbol_by_pc): Adjust.
9883         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
9884         (lookup_solib_trampoline_symbol_by_pc): Adjust.
9885         * minsyms.h (lookup_msym_prefer): New enum.
9886         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
9887         parameter by a lookup_msym_prefer parameter.
9888
9889 2018-04-26  Pedro Alves  <palves@redhat.com>
9890
9891         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
9892         ends in "@plt" instead of looking at the symbol's section.
9893
9894 2018-04-26  Pedro Alves  <palves@redhat.com>
9895
9896         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
9897         all references.
9898         (find_pc_partial_function_gnu_ifunc): Rename to ...
9899         (find_pc_partial_function): ... this, and remove references to
9900         'is_gnu_ifunc_p'.
9901         (find_pc_partial_function): Delete old implementation.
9902         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
9903
9904 2018-04-26  Pedro Alves  <palves@redhat.com>
9905
9906         * linespec.c (struct bound_minimal_symbol_search_key): New.
9907         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
9908         skip first line if we found a GNU ifunc minimal symbol by name.
9909         (compare_msymbols): Change parameters to work with a destructured
9910         lhs minsym.
9911         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
9912         functions.
9913
9914 2018-04-26  Pedro Alves  <palves@redhat.com>
9915
9916         * breakpoint.c (set_breakpoint_location_function): Don't resolve
9917         ifunc targets here.  Instead, if we have an ifunc minsym, use its
9918         address/name.
9919         (add_location_to_breakpoint): Store the minsym and the objfile in
9920         the breakpoint location.
9921         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
9922         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
9923         Record the minsym in the sal.
9924         * symtab.h (symtab_and_line) <msymbol>: New field.
9925
9926 2018-04-26  Pedro Alves  <palves@redhat.com>
9927
9928         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
9929         unless we actually resolved the ifunc.
9930
9931 2018-04-26  Pedro Alves  <palves@redhat.com>
9932
9933         * c-exp.y (variable production): Prefer ifunc minsyms over
9934         regular function symbols.
9935         * symtab.c (find_gnu_ifunc): New function.
9936         * minsyms.h (lookup_msym_prefer): New enum.
9937         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
9938         parameter by a lookup_msym_prefer parameter.
9939         * symtab.h (find_gnu_ifunc): New declaration.
9940
9941 2018-04-26  Pedro Alves  <palves@redhat.com>
9942
9943         * blockframe.c (find_gnu_ifunc_target_type): New function.
9944         (find_function_type): New.
9945         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
9946         return a value with a memory address.
9947         (eval_call): For calls to GNU ifunc functions, try to find the
9948         type of the target function from the type that the resolver
9949         returns.
9950         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
9951         symbols.
9952         * infcall.c (find_function_return_type): Delete.
9953         (find_function_addr): Add 'function_type' parameter.  For calls to
9954         GNU ifunc functions, try to find the type of the target function
9955         from the type that the resolver returns, and return it via
9956         FUNCTION_TYPE.
9957         (call_function_by_hand_dummy): Adjust to use the function type
9958         returned by find_function_addr.
9959         (find_function_addr): Add 'function_type' parameter and move
9960         description here.
9961         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
9962         declarations.
9963
9964 2018-04-26  Pedro Alves  <palves@redhat.com>
9965
9966         * c-exp.y (variable production): Skip finding an alias for ifunc
9967         symbols.
9968
9969 2018-04-26  Pedro Alves  <palves@redhat.com>
9970
9971         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
9972
9973 2018-04-25  Pedro Alves  <palves@redhat.com>
9974
9975         * infcmd.c (kill_command): Print the pid as string, not the whole
9976         thread's ptid.  Add comment.  s/has been killed/killed/ in output
9977         message.
9978         * remote.c (remote_detach_1): Print the pid as string, not the
9979         whole thread's ptid.
9980
9981 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
9982             Sergio Durigan Junior  <sergiodj@redhat.com>
9983             Pedro Alves  <palves@redhat.com>
9984
9985         * infcmd.c (kill_command): Print message when inferior has
9986         been killed.
9987         * inferior.c (print_inferior_events): Remove 'static'.  Set as
9988         '1'.
9989         (add_inferior): Improve message printed when
9990         'print_inferior_events' is on.
9991         (exit_inferior): Remove message printed when
9992         'print_inferior_events' is on.
9993         (detach_inferior): Improve message printed when
9994         'print_inferior_events' is on.
9995         (initialize_inferiors): Use 'add_inferior_silent' to set
9996         'current_inferior_'.
9997         * inferior.h (print_inferior_events): Declare here as
9998         'extern'.
9999         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
10000         '[Detaching...]' messages when 'print_inferior_events' is on.
10001         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
10002         as prefix/suffix for messages.  Remove periods.  Fix erroneous
10003         'Detaching after fork from child...', replace it by '... from
10004         parent...'.
10005         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
10006         prefix/suffix when printing 'Detaching...' messages.  Print
10007         them when 'print_inferior_events' is on.
10008         * remote.c (remote_detach_1): Print message when detaching
10009         from inferior and '!is_fork_parent'.
10010
10011 2018-04-24  Tom Tromey  <tom@tromey.com>
10012
10013         * cli-out.h: Reindent.
10014
10015 2018-04-24  Tom Tromey  <tom@tromey.com>
10016
10017         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
10018         (cli_ui_out::do_field_string): Use fputs_filtered.
10019         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
10020
10021 2018-04-23  Tom Tromey  <tom@tromey.com>
10022
10023         * guile/scm-frame.c (gdbscm_frame_read_var): Use
10024         gdb::unique_xmalloc_ptr.
10025
10026 2018-04-23  Tom Tromey  <tom@tromey.com>
10027
10028         * configure: Rebuild.
10029
10030 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
10031
10032         PR gdb/23095
10033         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
10034         prepare_for_testing.  Set normal_bp to r_debug_state if target
10035         is bsd.
10036
10037 2018-04-21  Pedro Alves  <palves@redhat.com>
10038             Rajendra SY  <rajendra.sy@gmail.com>
10039
10040         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
10041         * remote.c (extended_remote_attach): In all-stop mode, mark the
10042         thread as executing.
10043
10044 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10045
10046         * thread.c (thread_apply_all_command): Fix comment.
10047         (thread_command): Fix comment.
10048
10049 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
10050
10051         * common/tdesc.h (tdesc_create_feature): Remove xml filename
10052         parameter.
10053         * features/aarch64-core.c (create_feature_aarch64_core):
10054         Regenerate.
10055         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
10056         Likewise.
10057         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
10058         Likewise.
10059         * features/i386/32bit-avx512.c
10060         (create_feature_i386_32bit_avx512): Likewise.
10061         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
10062         Likewise.
10063         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
10064         Likewise.
10065         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
10066         Likewise.
10067         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
10068         Likewise.
10069         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
10070         Likewise.
10071         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
10072         Likewise.
10073         * features/i386/64bit-avx512.c
10074         (create_feature_i386_64bit_avx512): Likewise.
10075         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
10076         Likewise.
10077         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
10078         Likewise.
10079         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
10080         Likewise.
10081         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
10082         Likewise.
10083         * features/i386/64bit-segments.c
10084         (create_feature_i386_64bit_segments): Likewise.
10085         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
10086         Likewise.
10087         * features/i386/x32-core.c
10088         (create_feature_i386_x32_core): Likewise.
10089         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
10090         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
10091         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
10092         * target-descriptions.c: In generated code, don't pass xml
10093         filename.
10094
10095 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10096
10097         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
10098         (print_xml_feature::visit_post): Likewise.
10099         (print_xml_feature::visit): Likewise.
10100         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
10101         (print_xml_feature): Add new class.
10102         * regformats/regdat.sh: Null xmltarget on feature targets.
10103         * target-descriptions.c (struct target_desc): Add xmltarget.
10104         (maintenance_check_tdesc_xml_convert): Add unittest function.
10105         (tdesc_get_features_xml): Add function to get xml.
10106         (maintenance_check_xml_descriptions): Test xml generation.
10107         * xml-tdesc.c (string_read_description_xml): Add function.
10108         * xml-tdesc.h (string_read_description_xml): Add declaration.
10109
10110 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10111
10112         * features/Makefile: Add feature marker to targets with new style
10113         target descriptions.
10114         * regformats/aarch64.dat: Regenerate.
10115         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
10116         * regformats/i386/amd64-avx-linux.dat: Likewise.
10117         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
10118         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
10119         * regformats/i386/amd64-linux.dat: Likewise.
10120         * regformats/i386/amd64-mpx-linux.dat: Likewise.
10121         * regformats/i386/amd64.dat: Likewise.
10122         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
10123         * regformats/i386/i386-avx-linux.dat: Likewise.
10124         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
10125         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
10126         * regformats/i386/i386-linux.dat: Likewise.
10127         * regformats/i386/i386-mmx-linux.dat: Likewise.
10128         * regformats/i386/i386-mpx-linux.dat: Likewise.
10129         * regformats/i386/i386.dat: Likewise.
10130         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
10131         * regformats/i386/x32-avx-linux.dat: Likewise.
10132         * regformats/i386/x32-linux.dat: Likewise.
10133         * regformats/tic6x-c62x-linux.dat: Likewise.
10134         * regformats/tic6x-c64x-linux.dat: Likewise.
10135         * regformats/tic6x-c64xp-linux.dat: Likewise.
10136         * regformats/regdat.sh: Parse feature marker.
10137
10138 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10139
10140         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
10141         (tdesc_osabi_name): Likewise.
10142         * target-descriptions.c (tdesc_architecture_name): Add new
10143         function.
10144         (tdesc_osabi_name): Likewise.
10145
10146 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10147
10148         * common/tdesc.c (tdesc_predefined_type): Move to here.
10149         (tdesc_named_type): Likewise.
10150         (tdesc_create_vector): Likewise.
10151         (tdesc_create_struct): Likewise.
10152         (tdesc_set_struct_size): Likewise.
10153         (tdesc_create_union): Likewise.
10154         (tdesc_create_flags): Likewise.
10155         (tdesc_create_enum): Likewise.
10156         (tdesc_add_field): Likewise.
10157         (tdesc_add_typed_bitfield): Likewise.
10158         (tdesc_add_bitfield): Likewise.
10159         (tdesc_add_flag): Likewise.
10160         (tdesc_add_enum_value): Likewise.
10161         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
10162         (struct tdesc_type_vector): Likewise.
10163         (struct tdesc_type_field): Likewise.
10164         (struct tdesc_type_with_fields): Likewise.
10165         (tdesc_create_enum): Add declaration.
10166         (tdesc_add_typed_bitfield): Likewise.
10167         (tdesc_add_enum_value): Likewise.
10168         * target-descriptions.c (tdesc_type_field): Move from here.
10169         (tdesc_type_builtin): Likewise.
10170         (tdesc_type_vector): Likewise.
10171         (tdesc_type_with_fields): Likewise.
10172         (tdesc_predefined_types): Likewise.
10173         (tdesc_named_type): Likewise.
10174         (tdesc_create_vector): Likewise.
10175         (tdesc_create_struct): Likewise.
10176         (tdesc_set_struct_size): Likewise.
10177         (tdesc_create_union): Likewise.
10178         (tdesc_create_flags): Likewise.
10179         (tdesc_create_enum): Likewise.
10180         (tdesc_add_field): Likewise.
10181         (tdesc_add_typed_bitfield): Likewise.
10182         (tdesc_add_bitfield): Likewise.
10183         (tdesc_add_flag): Likewise.
10184         (tdesc_add_enum_value): Likewise.
10185         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
10186         (tdesc_add_typed_bitfield): Likewise.
10187         (tdesc_add_enum_value): Likewise.
10188
10189 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10190
10191         * common/tdesc.c (tdesc_feature::accept): Move to here.
10192         (tdesc_feature::operator==): Likewise.
10193         (tdesc_create_reg): Likewise.
10194         * common/tdesc.h (tdesc_type_kind): Likewise.
10195         (struct tdesc_type): Likewise.
10196         (struct tdesc_feature): Likewise.
10197         * regformats/regdat.sh: Create a feature.
10198         * target-descriptions.c (tdesc_type_kind): Move from here.
10199         (tdesc_type): Likewise.
10200         (tdesc_type_up): Likewise.
10201         (tdesc_feature): Likewise.
10202         (tdesc_create_reg): Likewise.
10203
10204 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10205
10206         * Makefile.in: Add arch/tdesc.c
10207         * common/tdesc.c: New file.
10208         * common/tdesc.h (tdesc_element_visitor): Move to here.
10209         (tdesc_element): Likewise.
10210         (tdesc_reg): Likewise.
10211         (tdesc_reg_up): Likewise.
10212         * regformats/regdef.h (reg): Add offset to constructors.
10213         * target-descriptions.c (tdesc_element_visitor): Move from here.
10214         (tdesc_element): Likewise.
10215         (tdesc_reg): Likewise.
10216         (tdesc_reg_up): Likewise.
10217
10218 2018-04-17  Tom Tromey  <tom@tromey.com>
10219
10220         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
10221         discriminant field.
10222
10223 2018-04-17  Tom Tromey  <tom@tromey.com>
10224
10225         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
10226
10227 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10228
10229         * symtab.c (print_symbol_info): Skip printing filename and line
10230         number when `last' is NULL.
10231         (symtab_symbol_info): Use empty string instead of NULL for first
10232         invocation of print_symbol_info.
10233         (rbreak_command): Pass NULL to `last' parameter of
10234         print_symbol_info.
10235
10236 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
10237
10238         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
10239         instead of nullptr.
10240
10241 2018-04-16  Pedro Alves  <palves@redhat.com>
10242
10243         * MAINTAINERS (sh): Remove.
10244         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
10245         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
10246         (ALLDEPFILES): Remove sh64-tdep.c.
10247         * NEWS: Mentions that support for SH-5/SH64 is removed.
10248         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
10249         (sh*-*-openbsd*): Ditto.
10250         (sh64-*-elf*): Remove.
10251         (sh*): Remove.
10252         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
10253         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
10254         * sh-tdep.c: No longer include "sh64-tdep.h".
10255         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
10256         * sh64-tdep.c, sh64-tdep.h: Remove files.
10257
10258 2018-04-16  Pedro Alves  <palves@redhat.com>
10259
10260         * MAINTAINERS: Remove m88k.
10261         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
10262         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
10263         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
10264         * NEWS: Mention that support for m88k was removed.
10265         * configure.host (m88*-*-*): Remove support.
10266         * configure.nat (m88k-*-*): Remove support.
10267         * configure.tgt (m88*-*-openbsd*): Remove.
10268         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
10269
10270 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
10271
10272         * configure.tgt (x86_tobjs): New variable.
10273         (amd64_tobjs, i386_tobjs): Use it.
10274
10275 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10276
10277         * symtab.c (print_symbol_info): Precede the symbol definition by
10278         the line number when available.
10279         * NEWS: Advertise this enhancement.
10280
10281 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10282
10283         * NEWS (New options): announce set/show record btrace cpu.
10284         * btrace.c: Include record-btrace.h.
10285         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
10286         the vendor is unknown.
10287         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
10288         Maybe overwrite the btrace configuration's cpu.
10289         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
10290         (btrace_fetch): Add cpu parameter.  Update callers.
10291         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
10292         Maybe overwrite the btrace configuration's cpu.  Skip enabling
10293         errata workarounds if the vendor is unknown.
10294         * python/py-record-btrace.c: Include record-btrace.h.
10295         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
10296         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
10297         * record-btrace.c (record_btrace_cpu_state_kind): New.
10298         (record_btrace_cpu): New.
10299         (set_record_btrace_cpu_cmdlist): New.
10300         (record_btrace_get_cpu): New.
10301         (require_btrace_thread, record_btrace_info)
10302         (record_btrace_resume_thread): Call record_btrace_get_cpu.
10303         (cmd_set_record_btrace_cpu_none): New.
10304         (cmd_set_record_btrace_cpu_auto): New.
10305         (cmd_set_record_btrace_cpu): New.
10306         (cmd_show_record_btrace_cpu): New.
10307         (_initialize_record_btrace): Initialize set/show record btrace cpu
10308         commands.
10309         * record-btrace.h (record_btrace_get_cpu): New.
10310
10311 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10312
10313         * record.c (set_record_command): Fix typo in message.
10314
10315 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10316
10317         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
10318
10319 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10320
10321         * infrun.c (process_event_stop_test): Call
10322         gdbarch_in_indirect_branch_thunk.
10323         * gdbarch.sh (in_indirect_branch_thunk): New.
10324         * gdbarch.c: Regenerated.
10325         * gdbarch.h: Regenerated.
10326         * x86-tdep.h: New.
10327         * x86-tdep.c: New.
10328         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
10329         (HFILES_NO_SRCDIR): Add x86-tdep.h.
10330         (ALLDEPFILES): Add x86-tdep.c.
10331         * arch-utils.h (default_in_indirect_branch_thunk): New.
10332         * arch-utils.c (default_in_indirect_branch_thunk): New.
10333         * i386-tdep: Include x86-tdep.h.
10334         (i386_in_indirect_branch_thunk): New.
10335         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
10336         function.
10337         * amd64-tdep: Include x86-tdep.h.
10338         (amd64_in_indirect_branch_thunk): New.
10339         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
10340
10341 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
10342
10343         PR gdb/23053
10344         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
10345         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
10346         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
10347         regression.
10348
10349 2018-04-12  Tom Tromey  <tom@tromey.com>
10350
10351         * rust-lang.c (rust_print_struct_def): Remove univariant code.
10352         (rust_evaluate_subexp): Likewise.
10353
10354 2018-04-12  Pedro Alves  <palves@redhat.com>
10355
10356         * procfs.c (procfs_detach): Make forward declaration's prototype
10357         match definition's protototype.
10358         (proc_get_LDT_entry): Remove stale do_cleanups call.
10359
10360 2018-04-12  Pedro Alves  <palves@redhat.com>
10361
10362         * target.h (target_ops::to_has_exited): Delete.
10363         (target_has_exited): Delete.
10364         * target-delegates.c: Regenerate.
10365
10366 2018-04-11  Pedro Alves  <palves@redhat.com>
10367
10368         * target.c (fileio_fh_t::t): Add comment.
10369         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10370         (target_fileio_close): Handle a NULL target.
10371         (invalidate_fileio_fh): New.
10372         (target_close): Call it.
10373         * remote.c (remote_hostio_send_command): No longer check whether
10374         remote_desc is open.
10375
10376 2018-04-11  Pedro Alves  <palves@redhat.com>
10377
10378         * target.c (fileio_fh_t): Make it a named struct instead of a
10379         typedef.
10380         (fileio_fh_t::is_closed): New method.
10381         (DEF_VEC_O (fileio_fh_t)): Remove.
10382         (fileio_fhandles): Now a std::vector.
10383         (is_closed_fileio_fh): Delete.
10384         (acquire_fileio_fd): Adjust.  Rename parameters.
10385         (release_fileio_fd): Adjust.
10386         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
10387         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10388         (target_fileio_close): Adjust.
10389
10390 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
10391
10392         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
10393         index.
10394
10395 2018-04-10  Pedro Alves  <palves@redhat.com>
10396
10397         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
10398         (scoped_finish_thread_state): New class.
10399         * infcmd.c (run_command_1): Use it instead of finish_thread_state
10400         cleanup.
10401         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
10402         (fetch_inferior_event, normal_stop): Likewise.
10403         * thread.c (finish_thread_state_cleanup): Delete.
10404
10405 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10406             Pedro Alves  <palves@redhat.com>
10407
10408         * value.c: Include "selftest.h" and "common/array-view.h".
10409         (struct range) <operator ==>: New.
10410         (test_ranges_contain): New.
10411         (check_ranges_vector): New.
10412         (test_insert_into_bit_range_vector): New.
10413         (_initialize_values): Register selftests.
10414         * common/array-view.h (operator==, operator!=): New.
10415
10416 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10417
10418         * common/gdb_vecs.h (unordered_remove): Add overload that takes
10419         an iterator.
10420         * inline-frame.c: Include <algorithm>.
10421         (struct inline_state): Add constructor.
10422         (inline_state_s): Remove.
10423         (DEF_VEC_O(inline_state_s)): Remove.
10424         (inline_states): Change type to std::vector.
10425         (find_inline_frame_state): Adjust to std::vector.
10426         (allocate_inline_frame_state): Remove.
10427         (clear_inline_frame_state): Adjust to std::vector.
10428         (skip_inline_frames): Adjust to std::vector.
10429
10430 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10431
10432         * tracepoint.h (struct trace_state_variable): Add constructor.
10433         <name>: Change type to std::string.
10434         * tracepoint.c (tsv_s): Remove.
10435         (DEF_VEC_O(tsv_s)): Remove.
10436         (tvariables): Change to std::vector.
10437         (create_trace_state_variable): Adjust to std::vector.
10438         (find_trace_state_variable): Likewise.
10439         (find_trace_state_variable_by_number): Likewise.
10440         (delete_trace_state_variable): Likewise.
10441         (trace_variable_command): Adjust to std::string.
10442         (delete_trace_variable_command): Likewise.
10443         (tvariables_info_1): Adjust to std::vector.
10444         (save_trace_state_variables): Likewise.
10445         (start_tracing): Likewise.
10446         (merge_uploaded_trace_state_variables): Adjust to std::vector
10447         and std::string.
10448         * target.h (struct target_ops)
10449         <to_download_trace_state_variable>: Pass reference to
10450         trace_state_variable.
10451         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
10452         * target-delegates.c: Re-generate.
10453         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
10454         (mi_tsv_deleted): Likewise.
10455         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
10456         * remote.c (remote_download_trace_state_variable): Change
10457         pointer to reference and adjust.
10458         * make-target-delegates (parse_argtypes): Handle references.
10459         (write_function_header): Likewise.
10460         (munge_type): Likewise.
10461
10462 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10463
10464         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10465         string_view-selftests.c.
10466         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
10467         testsuite.
10468         * unittests/basic_string_view/cons/char/1.cc: Likewise.
10469         * unittests/basic_string_view/cons/char/2.cc: Likewise.
10470         * unittests/basic_string_view/cons/char/3.cc: Likewise.
10471         * unittests/basic_string_view/element_access/char/1.cc:
10472         Likewise.
10473         * unittests/basic_string_view/element_access/char/empty.cc:
10474         Likewise.
10475         * unittests/basic_string_view/element_access/char/front_back.cc:
10476         Likewise.
10477         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
10478         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
10479         Likewise.
10480         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
10481         Likewise.
10482         * unittests/basic_string_view/modifiers/swap/char/1.cc:
10483         Likewise.
10484         * unittests/basic_string_view/operations/compare/char/1.cc:
10485         Likewise.
10486         * unittests/basic_string_view/operations/compare/char/13650.cc:
10487         Likewise.
10488         * unittests/basic_string_view/operations/copy/char/1.cc:
10489         Likewise.
10490         * unittests/basic_string_view/operations/data/char/1.cc:
10491         Likewise.
10492         * unittests/basic_string_view/operations/find/char/1.cc:
10493         Likewise.
10494         * unittests/basic_string_view/operations/find/char/2.cc:
10495         Likewise.
10496         * unittests/basic_string_view/operations/find/char/3.cc:
10497         Likewise.
10498         * unittests/basic_string_view/operations/find/char/4.cc:
10499         Likewise.
10500         * unittests/basic_string_view/operations/rfind/char/1.cc:
10501         Likewise.
10502         * unittests/basic_string_view/operations/rfind/char/2.cc:
10503         Likewise.
10504         * unittests/basic_string_view/operations/rfind/char/3.cc:
10505         Likewise.
10506         * unittests/basic_string_view/operations/substr/char/1.cc:
10507         Likewise.
10508         * unittests/basic_string_view/operators/char/2.cc: Likewise.
10509         * unittests/string_view-selftests.c: New file.
10510
10511 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10512
10513         * unittests/basic_string_view/capacity/1.cc: New file.
10514         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
10515         * unittests/basic_string_view/cons/char/1.cc: New file.
10516         * unittests/basic_string_view/cons/char/2.cc: New file.
10517         * unittests/basic_string_view/cons/char/3.cc: New file.
10518         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
10519         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
10520         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
10521         * unittests/basic_string_view/element_access/char/1.cc: New file.
10522         * unittests/basic_string_view/element_access/char/2.cc: New file.
10523         * unittests/basic_string_view/element_access/char/empty.cc: New file.
10524         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
10525         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
10526         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
10527         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
10528         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
10529         * unittests/basic_string_view/include.cc: New file.
10530         * unittests/basic_string_view/inserters/char/1.cc: New file.
10531         * unittests/basic_string_view/inserters/char/2.cc: New file.
10532         * unittests/basic_string_view/inserters/char/3.cc: New file.
10533         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
10534         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
10535         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
10536         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
10537         * unittests/basic_string_view/literals/types.cc: New file.
10538         * unittests/basic_string_view/literals/values.cc: New file.
10539         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
10540         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
10541         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
10542         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
10543         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
10544         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
10545         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
10546         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
10547         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
10548         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
10549         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
10550         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
10551         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
10552         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
10553         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
10554         * unittests/basic_string_view/operations/data/char/1.cc: New file.
10555         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
10556         * unittests/basic_string_view/operations/find/char/1.cc: New file.
10557         * unittests/basic_string_view/operations/find/char/2.cc: New file.
10558         * unittests/basic_string_view/operations/find/char/3.cc: New file.
10559         * unittests/basic_string_view/operations/find/char/4.cc: New file.
10560         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
10561         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
10562         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
10563         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
10564         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
10565         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
10566         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
10567         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
10568         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
10569         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
10570         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
10571         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
10572         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
10573         * unittests/basic_string_view/operators/char/2.cc: New file.
10574         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
10575         * unittests/basic_string_view/range_access/char/1.cc: New file.
10576         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
10577         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
10578         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
10579         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
10580         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
10581         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
10582         * unittests/basic_string_view/requirements/typedefs.cc: New file.
10583         * unittests/basic_string_view/typedefs.cc: New file.
10584         * unittests/basic_string_view/types/1.cc: New file.
10585
10586 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10587
10588         * common/gdb_string_view.h: Remove libstdc++ implementation
10589         details, adjust to gdb reality.
10590         * common/gdb_string_view.tcc: Likewise.
10591         * cli/cli-script.c (struct string_view): Remove.
10592         (user_args) <m_args>: Change element type to gdb::string_view.
10593         (user_args::insert_args): Adjust.
10594
10595 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10596
10597         * common/gdb_string_view.h: New file.
10598         * common/gdb_string_view.tcc: New file.
10599
10600 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10601
10602         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
10603         * configure: Re-generate.
10604
10605 2018-04-09  Pedro Alves  <palves@redhat.com>
10606
10607         * gdbarch.sh: Include "observable.h" instead of "observer.h".
10608         (set_target_gdbarch): Call
10609         gdb::observers::architecture_changed.notify instead of
10610         observer_notify_architecture_changed.
10611
10612 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10613
10614         * tracepoint.c (struct current_traceframe_cleanup): Remove.
10615         (do_restore_current_traceframe_cleanup): Remove.
10616         (restore_current_traceframe_cleanup_dtor): Remove.
10617         (make_cleanup_restore_current_traceframe): Remove.
10618         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
10619         New.
10620         * tracepoint.h (struct scoped_restore_current_traceframe): New.
10621         * infrun.c (fetch_inferior_event): Use
10622         scoped_restore_current_traceframe.
10623
10624 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10625
10626         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
10627         Remove.
10628         <n_allocated_type_units>: Remove.
10629         <all_type_units>: Change to std::vector.
10630         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
10631         to std::vector change.
10632         (dwarf2_per_objfile::get_cutu): Likewise.
10633         (dwarf2_per_objfile::get_tu): Likewise.
10634         (create_signatured_type_table_from_index): Likewise.
10635         (create_signatured_type_table_from_debug_names): Likewise.
10636         (dw2_symtab_iter_next): Likewise.
10637         (dw2_print_stats): Likewise.
10638         (dw2_expand_all_symtabs): Likewise.
10639         (dw2_expand_marked_cus): Likewise.
10640         (dw2_debug_names_iterator::next): Likewise.
10641         (dwarf2_initialize_objfile): Likewise.
10642         (add_signatured_type_cu_to_table): Likewise.
10643         (create_all_type_units): Likewise.
10644         (add_type_unit): Likewise.
10645         (struct tu_abbrev_offset): Add constructor.
10646         (build_type_psymtabs_1): Adjust to std::vector change.
10647         (print_tu_stats): Likewise.
10648         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
10649         (write_debug_names): Likewise.
10650
10651 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10652
10653         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
10654         Make an std::vector.
10655         <n_comp_units>: Remove.
10656         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
10657         to std::vector change.
10658         (dwarf2_per_objfile::get_cutu): Likewise.
10659         (dwarf2_per_objfile::get_cu): Likewise.
10660         (create_cus_from_index): Likewise.
10661         (create_addrmap_from_index): Likewise.
10662         (create_addrmap_from_aranges): Likewise.
10663         (dwarf2_read_index): Likewise.
10664         (dw2_find_last_source_symtab): Likewise.
10665         (dw2_map_symtabs_matching_filename): Likewise.
10666         (dw2_symtab_iter_next): Likewise.
10667         (dw2_print_stats): Likewise.
10668         (dw2_expand_all_symtabs): Likewise.
10669         (dw2_expand_symtabs_with_fullname): Likewise.
10670         (dw2_expand_marked_cus): Likewise.
10671         (dw2_map_symbol_filenames): Likewise.
10672         (create_cus_from_debug_names): Likewise.
10673         (dwarf2_read_debug_names): Likewise.
10674         (dw2_debug_names_iterator::next): Likewise.
10675         (dwarf2_initialize_objfile): Likewise.
10676         (set_partial_user): Likewise.
10677         (dwarf2_build_psymtabs_hard): Likewise.
10678         (read_comp_units_from_section): Remove arguments, adjust to
10679         std::vector change.
10680         (create_all_comp_units): Adjust to std::vector and
10681         read_comp_units_from_section changes.
10682         (dwarf2_find_containing_comp_unit): Adjust to std::vector
10683         change.
10684         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
10685         (psyms_seen_size): Likewise.
10686         (write_gdbindex): Likewise.
10687         (write_debug_names): Likewise.
10688
10689 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10690
10691         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
10692         with dwarf2_per_objfile.
10693         (create_cus_from_index): Likewise.
10694         (create_signatured_type_table_from_index): Likewise.
10695         (dwarf2_read_index): Likewise.
10696         (dwarf2_initialize_objfile): Likewise.
10697         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
10698         per_cu rather than get_dwarf2_per_objfile.
10699
10700 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10701
10702         * dwarf2read.h (struct signatured_type): Forward declare.
10703         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
10704         New methods.
10705         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
10706         (dw2_get_cutu): ...this.
10707         (dwarf2_per_objfile::get_cu): Rename from...
10708         (dw2_get_cu): ...this.
10709         (dwarf2_per_objfile::get_tu): New.
10710         (create_addrmap_from_index): Adjust.
10711         (create_addrmap_from_aranges): Adjust.
10712         (dw2_find_last_source_symtab): Adjust.
10713         (dw2_map_symtabs_matching_filename): Adjust.
10714         (dw2_symtab_iter_next): Adjust.
10715         (dw2_print_stats): Adjust.
10716         (dw2_expand_all_symtabs): Adjust.
10717         (dw2_expand_symtabs_with_fullname): Adjust.
10718         (dw2_expand_marked_cus): Adjust.
10719         (dw_expand_symtabs_matching_file_matcher): Adjust.
10720         (dw2_map_symbol_filenames): Adjust.
10721         (dw2_debug_names_iterator::next): Adjust.
10722         (dwarf2_initialize_objfile): Adjust.
10723         (set_partial_user): Adjust.
10724         (dwarf2_build_psymtabs_hard): Adjust.
10725
10726 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10727
10728         * dwarf2read.c (create_signatured_type_table_from_debug_names):
10729         Remove unused variables.
10730         (dw2_map_symtabs_matching_filename): Likewise.
10731         (dwarf2_record_block_ranges): Likewise.
10732         (dwarf2_read_addr_index): Likewise.
10733         (follow_die_offset): Likewise.
10734
10735 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10736
10737         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
10738         to symbol_file_add_main.
10739
10740 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10741
10742         PR mi/22299
10743         * mi/mi-console.c (do_fputc_async_safe): New.
10744         (mi_console_file::write_async_safe): New.
10745         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
10746         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
10747         New.
10748         * ui-file.c (ui_file::putstrn): Adjust call to
10749         fputstrn_unfiltered.
10750         * utils.c (printchar): Replace do_fputs and do_fprintf
10751         parameters by do_fputc.
10752         (fputstr_filtered): Adjust call to printchar.
10753         (fputstr_unfiltered): Likewise.
10754         (fputstrn_filtered): Likewise.
10755         (fputstrn_unfiltered): Add do_fputc parameter, pass to
10756         printchar.
10757         * utils.h (do_fputc_ftype): New typedef.
10758         (fputstrn_unfiltered): Add do_fputc parameter.
10759
10760 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10761
10762         * regformats/i386/i386-avx.dat: Remove.
10763
10764 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
10765
10766         PR gdb/22979
10767         * amd64-tdep.c (amd64_none_init_abi): New function.
10768         (amd64_x32_none_init_abi): New function.
10769         (_initialize_amd64_tdep): Register handlers for x86-64 and
10770         x64_32 with GDB_OSABI_NONE.
10771         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
10772         GDB_OSABI_NONE osabi.
10773
10774 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
10775
10776         PR gdb/22980
10777         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
10778         GDB_OSABI_NONE.
10779         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
10780         * osabi.c (gdb_osabi_names): Add "unknown" entry.
10781
10782 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
10783
10784         * common/byte-vector.h (char_vector): New type.
10785         * target.h (target_read_alloc): Return
10786         gdb::optional<byte_vector>.
10787         (target_read_stralloc): Return gdb::optional<char_vector>.
10788         (target_get_osdata): Return gdb::optional<char_vector>.
10789         * target.c (target_read_alloc_1): Templatize.  Replacement
10790         manual memory management with vector.
10791         (target_read_alloc): Change return type, adjust.
10792         (target_read_stralloc): Change return type, adjust.
10793         (target_get_osdata): Change return type, adjust.
10794         * auxv.c (struct auxv_info) <length>: Remove.
10795         <data>: Change type to gdb::optional<byte_vector>.
10796         (auxv_inferior_data_cleanup): Free auxv_info with delete.
10797         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
10798         (target_auxv_search): Adjust.
10799         (fprint_target_auxv): Adjust.
10800         * avr-tdep.c (avr_io_reg_read_command): Adjust.
10801         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
10802         (linux_make_corefile_notes): Adjust.
10803         * osdata.c (get_osdata): Adjust.
10804         * remote.c (remote_get_threads_with_qxfer): Adjust.
10805         (remote_memory_map): Adjust.
10806         (remote_traceframe_info): Adjust.
10807         (btrace_read_config): Adjust.
10808         (remote_read_btrace): Adjust.
10809         (remote_pid_to_exec_file): Adjust.
10810         * solib-aix.c (solib_aix_get_library_list): Adjust.
10811         * solib-dsbt.c (decode_loadmap): Don't free buf.
10812         (dsbt_get_initial_loadmaps): Adjust.
10813         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
10814         * solib-target.c (solib_target_current_sos): Adjust.
10815         * tracepoint.c (sdata_make_value): Adjust.
10816         * xml-support.c (xinclude_start_include): Adjust.
10817         (xml_fetch_content_from_file): Adjust.
10818         * xml-support.h (xml_fetch_another): Change return type.
10819         (xml_fetch_content_from_file): Change return type.
10820         * xml-syscall.c (xml_init_syscalls_info): Adjust.
10821         * xml-tdesc.c (file_read_description_xml): Adjust.
10822         (fetch_available_features_from_target): Change return type.
10823         (target_fetch_description_xml): Adjust.
10824         (target_read_description_xml): Adjust.
10825
10826 2018-04-06  Tom Tromey  <tom@tromey.com>
10827
10828         * value.c (~value): Update.
10829         (struct value) <contents>: Now unique_xmalloc_ptr.
10830         (value_contents_bits_eq, allocate_value_contents)
10831         (value_contents_raw, value_contents_all_raw)
10832         (value_contents_for_printing, value_contents_for_printing_const)
10833         (set_value_enclosing_type): Update.
10834
10835 2018-04-06  Tom Tromey  <tom@tromey.com>
10836
10837         * value.c (range_s): Remove typedef, VEC.
10838         (struct range): Add operator<.
10839         (range_lessthan): Remove.
10840         (ranges_contain): Change type.
10841         (~value): Update.
10842         (struct value) <unavailable, optimized_out>: Now std::vector.
10843         (value_entirely_available)
10844         (value_entirely_covered_by_range_vector)
10845         (value_entirely_unavailable, value_entirely_optimized_out):
10846         Update.
10847         (insert_into_bit_range_vector): Change argument type.
10848         (find_first_range_overlap): Likewise.
10849         (struct ranges_and_idx, value_contents_bits_eq)
10850         (require_not_optimized_out, require_available): Update.
10851         (ranges_copy_adjusted): Change argument types.
10852         (value_optimized_out, value_copy, value_fetch_lazy): Update.
10853
10854 2018-04-06  Tom Tromey  <tom@tromey.com>
10855
10856         * value.c (~value): Update.
10857         (struct value) <parent>: Now a value_ref_ptr.
10858         (value_parent, set_value_parent, value_address, value_copy):
10859         Update.
10860
10861 2018-04-06  Tom Tromey  <tom@tromey.com>
10862
10863         * value.c (struct value): Add constructor, destructor, and member
10864         initializers.
10865         (allocate_value_lazy, value_decref): Update.
10866
10867 2018-04-06  Tom Tromey  <tom@tromey.com>
10868
10869         * value.c (struct value) <released, next>: Remove.
10870         (all_values): Now a std::vector.
10871         (allocate_value_lazy): Update.
10872         (value_next): Remove.
10873         (value_mark, value_free_to_mark, release_value)
10874         (value_release_to_mark): Update.
10875
10876 2018-04-06  Tom Tromey  <tom@tromey.com>
10877
10878         * value.h (fetch_subexp_value, value_release_to_mark): Update.
10879         (free_value_chain): Remove.
10880         * value.c (free_value_chain): Remove.
10881         (value_release_to_mark): Return a std::vector.
10882         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
10883         std::vector.
10884         (check_condition): Update.
10885         * eval.c (fetch_subexp_value): Change "val_chain" to a
10886         std::vector.
10887         * breakpoint.c (update_watchpoint): Update.
10888         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
10889
10890 2018-04-06  Tom Tromey  <tom@tromey.com>
10891
10892         * value.h (free_all_values): Remove.
10893         * value.c (free_all_values): Remove.
10894
10895 2018-04-06  Tom Tromey  <tom@tromey.com>
10896
10897         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
10898         (value_history_chain, value_history_count): Remove.
10899         (value_history): New global.
10900         (record_latest_value, access_value_history, show_values)
10901         (preserve_values): Update.
10902
10903 2018-04-06  Tom Tromey  <tom@tromey.com>
10904
10905         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
10906         * varobj.c (varobj_set_display_format, varobj_set_value)
10907         (install_default_visualizer, construct_visualizer)
10908         (install_new_value, ~varobj, varobj_get_value_type)
10909         (my_value_of_variable, varobj_editable_p): Update.
10910         * c-varobj.c (c_describe_child, c_value_of_variable)
10911         (cplus_number_of_children, cplus_describe_child): Update.
10912         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
10913         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
10914         (ada_value_of_variable, ada_value_is_changeable_p): Update.
10915
10916 2018-04-06  Tom Tromey  <tom@tromey.com>
10917
10918         * printcmd.c (last_examine_address): Change type to
10919         value_ref_ptr.
10920         (do_examine, x_command): Update.
10921
10922 2018-04-06  Tom Tromey  <tom@tromey.com>
10923
10924         * value.c (release_value): Update.
10925         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
10926         (struct bpstats) <val>: Now a value_ref_ptr.
10927         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
10928         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
10929         (~watchpoint, print_it_watchpoint, watch_command_1)
10930         (invalidate_bp_value_on_memory_change): Update.
10931
10932 2018-04-06  Tom Tromey  <tom@tromey.com>
10933
10934         * varobj.c (varobj_clear_saved_item)
10935         (update_dynamic_varobj_children, install_new_value, ~varobj):
10936         Update.
10937         * value.h (value_incref): Move declaration earlier.
10938         (value_decref): Rename from value_free.
10939         (struct value_ref_policy): New.
10940         (value_ref_ptr): New typedef.
10941         (struct value_deleter): Remove.
10942         (gdb_value_up): Remove typedef.
10943         (release_value): Change return type.
10944         (release_value_or_incref): Remove.
10945         * value.c (set_value_parent): Update.
10946         (value_incref): Change return type.
10947         (value_decref): Rename from value_free.
10948         (value_free_to_mark, free_all_values, free_value_chain): Update.
10949         (release_value): Return value_ref_ptr.
10950         (release_value_or_incref): Remove.
10951         (record_latest_value, set_internalvar, clear_internalvar):
10952         Update.
10953         * stack.c (info_frame_command): Don't call value_free.
10954         * python/py-value.c (valpy_dealloc, valpy_new)
10955         (value_to_value_object): Update.
10956         * printcmd.c (do_examine): Update.
10957         * opencl-lang.c (lval_func_free_closure): Update.
10958         * mi/mi-main.c (register_changed_p): Don't call value_free.
10959         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
10960         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
10961         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
10962         value_free.
10963         * guile/scm-value.c (vlscm_free_value_smob)
10964         (vlscm_scm_from_value): Update.
10965         * frame.c (frame_register_unwind, frame_unwind_register_signed)
10966         (frame_unwind_register_unsigned, get_frame_register_bytes)
10967         (put_frame_register_bytes): Don't call value_free.
10968         * findvar.c (address_from_register): Don't call value_free.
10969         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
10970         * dwarf2loc.c (entry_data_value_free_closure)
10971         (value_of_dwarf_reg_entry, free_pieced_value_closure)
10972         (dwarf2_evaluate_loc_desc_full): Update.
10973         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
10974         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
10975         (~watchpoint, watch_command_1)
10976         (invalidate_bp_value_on_memory_change): Update.
10977         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
10978
10979 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
10980
10981         PR gdb/23022
10982         * warning.m4: Add -Wno-error=deprecated-register.
10983         * configure: Re-generate.
10984
10985 2018-04-05  Tom Tromey  <tom@tromey.com>
10986
10987         * linespec.h: Remove include of "vec.h".
10988
10989 2018-04-05  Tom Tromey  <tom@tromey.com>
10990
10991         * linespec.c (typep): Remove typedef.
10992         (find_methods, find_superclass_methods): Take a std::vector.
10993         (find_method): Use std::vector.
10994
10995 2018-04-05  Tom Tromey  <tom@tromey.com>
10996
10997         * utils.c (compare_strings): Remove.
10998         * utils.h (compare_strings): Remove.
10999         * objc-lang.h (find_imps): Update.
11000         * objc-lang.c (find_methods): Take a std::vector.
11001         (uniquify_strings, find_imps): Likewise.
11002         * linespec.c (find_methods): Take a std::vector.
11003         (decode_objc): Use std::vector.
11004         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
11005         a std::vector.
11006         (find_method, find_function_symbols): Use std::vector.
11007
11008 2018-04-05  Tom Tromey  <tom@tromey.com>
11009
11010         * completer.c (completion_tracker::completion_tracker): Remove
11011         cast.
11012         (completion_tracker::discard_completions): Likewise.
11013         * breakpoint.c (ambiguous_names_p): Remove cast.
11014         * ada-lang.c (_initialize_ada_language): Remove cast.
11015         * utils.h (streq): Update.
11016         (streq_hash): Add new declaration.
11017         * utils.c (streq): Return bool.
11018         (streq_hash): New function.
11019
11020 2018-04-05  Tom Tromey  <tom@tromey.com>
11021
11022         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
11023         Remove a string copy.
11024
11025 2018-04-05  Tom Tromey  <tom@tromey.com>
11026
11027         * linespec.c (filter_results): Use std::vector.
11028         (decode_line_2, decode_line_full): Update.
11029
11030 2018-04-05  Tom Tromey  <tom@tromey.com>
11031
11032         * linespec.c (canonical_to_fullform): Return std::string.
11033         (filter_results): Update.
11034         (struct decode_line_2_item): Add constructor.
11035         <fullform, displayform>: Now std::string.
11036         (decode_line_2_compare_items): Now a std::sort comparator.
11037         (decode_line_2): Update.
11038
11039 2018-04-05  Tom Tromey  <tom@tromey.com>
11040
11041         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
11042         (unexpected_linespec_error): Update.
11043         (linespec_parse_basic, parse_linespec): Update.
11044
11045 2018-04-05  Tom Tromey  <tom@tromey.com>
11046
11047         * linespec.c (linespec_parse_basic): Reindent.
11048
11049 2018-04-05  Tom Tromey  <tom@tromey.com>
11050
11051         * minsyms.h (iterate_over_minimal_symbols): Update.
11052         * minsyms.c (iterate_over_minimal_symbols): Take a
11053         gdb::function_view.
11054         * linespec.c (struct collect_minsyms): Remove.
11055         (compare_msyms): Now a std::sort comparator.
11056         (add_minsym): Add parameters.
11057         (search_minsyms_for_name): Update.  Use std::vector.
11058
11059 2018-04-03  Tom Tromey  <tom@tromey.com>
11060
11061         * mipsread.c (read_alphacoff_dynamic_symtab): Use
11062         gdb::byte_vector.
11063
11064 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11065
11066         * MAINTAINERS (Write After Approval): Add Weimin Pan.
11067
11068 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11069
11070         PR gdb/16959
11071         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
11072         printing static type.
11073
11074 2018-04-01  Tom Tromey  <tom@tromey.com>
11075
11076         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
11077         (rs6000_xfer_shared_libraries): Update.
11078
11079 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
11080
11081         * common/gdb_vecs.h (char_ptr): Remove.
11082         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
11083
11084 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11085
11086         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
11087         with std::vector.
11088         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
11089
11090 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11091
11092         * tracepoint.h (struct uploaded_tp): Initialize fields.
11093         <actions, step_actions, cmd_strings>: Change type to
11094         std::vector<char *>.
11095         * tracepoint.c (get_uploaded_tp): Allocate with new.
11096         (free_uploaded_tps): Free with delete.
11097         (parse_tracepoint_definition): Adjust to std::vector change.
11098         * breakpoint.c (read_uploaded_action): Likewise.
11099         (create_tracepoint_from_upload): Likewise.
11100         * ctf.c (ctf_write_uploaded_tp): Likewise.
11101         (SET_ARRAY_FIELD): Likewise.
11102         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
11103
11104 2018-03-30  Tom Tromey  <tom@tromey.com>
11105
11106         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
11107         std::unique_ptr.
11108         (svr4_keep_data_in_core): Update.
11109         (svr4_read_so_list): Update.
11110
11111 2018-03-30  Tom Tromey  <tom@tromey.com>
11112
11113         * windows-nat.c (handle_output_debug_string, handle_exception):
11114         Update.
11115         * target.h (target_read_string): Update.
11116         * target.c (target_read_string): Change "string" to
11117         unique_xmalloc_ptr.
11118         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
11119         Update.
11120         * solib-frv.c (frv_current_sos): Update.
11121         * solib-dsbt.c (dsbt_current_sos): Update.
11122         * solib-darwin.c (darwin_current_sos): Update.
11123         * linux-thread-db.c (inferior_has_bug): Update.
11124         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
11125         Update.  Remove alloca.
11126         * ada-lang.c (ada_main_name): Update.
11127
11128 2018-03-30  Tom Tromey  <tom@tromey.com>
11129
11130         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
11131         (struct dwo_file_deleter): New.
11132         (dwo_file_up): New typedef.
11133         (open_and_init_dwo_file): Use dwo_file_up.
11134         (free_dwo_file_cleanup): Remove.
11135
11136 2018-03-30  Tom Tromey  <tom@tromey.com>
11137
11138         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
11139         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
11140
11141 2018-03-30  Tom Tromey  <tom@tromey.com>
11142
11143         * dwarf2read.c (class free_cached_comp_units): New class.
11144         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
11145         (free_cached_comp_units): Remove function.
11146
11147 2018-03-30  Tom Tromey  <tom@tromey.com>
11148
11149         * utils.h (make_cleanup_unpush_target): Remove.
11150         * inf-ptrace.c (struct target_unpusher): New.
11151         (target_unpush_up) New typedef.
11152         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
11153         target_unpush_up.
11154         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
11155
11156 2018-03-27  Tom Tromey  <tom@tromey.com>
11157
11158         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
11159
11160 2018-03-27  Pedro Alves  <palves@redhat.com>
11161             Tom Tromey  <tom@tromey.com>
11162
11163         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
11164         destructor.  Now a class.
11165         (gdb_readline_wrapper_cleanup): Remove function.
11166         (gdb_readline_wrapper): Remove cleanups.
11167
11168 2018-03-27  Tom Tromey  <tom@tromey.com>
11169
11170         * typeprint.h (struct type_print_options) <local_typedefs,
11171         global_typedefs>: Remove "struct" keyword.
11172         (class typedef_hash_table): New class.
11173         (recursively_update_typedef_hash, add_template_parameters)
11174         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
11175         (find_typedef_in_hash): Don't declare.
11176         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
11177         (typedef_hash_table::recursively_update): Rename from
11178         recursively_update_typedef_hash.  Now a member.
11179         (typedef_hash_table::add_template_parameters): Rename from
11180         add_template_parameters.  Now a member.
11181         (typedef_hash_table::typedef_hash_table): Now a constructor;
11182         rename from create_typedef_hash.
11183         (typedef_hash_table::~typedef_hash_table): Now a destructor;
11184         rename from free_typedef_hash.
11185         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
11186         (do_free_global_table): Remove.
11187         (typedef_hash_table::typedef_hash_table): New constructor; renamed
11188         from copy_type_recursive.
11189         (create_global_typedef_table): Remove.
11190         (typedef_hash_table::find_global_typedef): Now a member of
11191         typedef_hash_table.
11192         (typedef_hash_table::find_typedef): Rename from
11193         find_typedef_in_hash; now a member.
11194         (whatis_exp): Update.
11195         * extension.h (struct ext_lang_type_printers): Add constructor and
11196         destructor.
11197         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
11198         declare.
11199         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
11200         Now a constructor; rename from start_ext_lang_type_printers.
11201         (ext_lang_type_printers): Now a destructor; rename from
11202         free_ext_lang_type_printers.
11203         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
11204         Update.
11205         (c_type_print_base_struct_union): Update.  Remove cleanups.
11206
11207 2018-03-27  Tom Tromey  <tom@tromey.com>
11208
11209         * dwarf-index-write.c: Include <cmath>.
11210
11211 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11212
11213         * NEWS: Add entry describing new "set|show varsize-limit" command.
11214         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
11215         command.
11216         * printcmd.c (_initialize_printcmd): Add "set var" alias of
11217         "set variable".
11218
11219 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
11220
11221         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
11222         dwarf-index-write.c
11223         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
11224         * dwarf-index-common.c: New file.
11225         * dwarf-index-common.h: New file.
11226         * dwarf-index-write.c: New file.
11227         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
11228         (struct dwarf2_section_info): Move from here.
11229         (dwarf2_section_info_def): Likewise.
11230         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
11231         (offset_type): Likewise.
11232         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
11233         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
11234         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
11235         (byte_swap): Likewise.
11236         (MAYBE_SWAP): Likewise.
11237         (dwarf2_per_cu_ptr): Likewise.
11238         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
11239         (struct tu_stats): Likewise.
11240         (struct dwarf2_per_objfile): Likewise.
11241         (struct dwarf2_per_cu_data): Likewise.
11242         (struct signatured_type): Likewise.
11243         (sig_type_ptr): Likewise.
11244         (DEF_VEC_P (sig_type_ptr)): Likewise.
11245         (INDEX4_SUFFIX): Likewise.
11246         (INDEX5_SUFFIX): Likewise.
11247         (DEBUG_STR_SUFFIX): Likewise.
11248         (dwarf2_read_section): Make non-static.
11249         (mapped_index_string_hash): Move from here.
11250         (dwarf5_djb_hash): Likewise.
11251         (file_write): Likewise.
11252         (class data_buf): Likewise.
11253         (struct symtab_index_entry): Likewise.
11254         (struct mapped_symtab): Likewise.
11255         (find_slot): Likewise.
11256         (hash_expand): Likewise.
11257         (add_index_entry): Likewise.
11258         (uniquify_cu_indices): Likewise.
11259         (class c_str_view): Likewise.
11260         (class c_str_view_hasher): Likewise.
11261         (class vector_hasher): Likewise.
11262         (write_hash_table): Likewise.
11263         (psym_index_map): Likewise.
11264         (struct addrmap_index_data): Likewise.
11265         (add_address_entry): Likewise.
11266         (add_address_entry_worker): Likewise.
11267         (write_address_map): Likewise.
11268         (symbol_kind): Likewise.
11269         (write_psymbols): Likewise.
11270         (struct signatured_type_index_data): Likewise.
11271         (write_one_signatured_type): Likewise.
11272         (recursively_count_psymbols): Likewise.
11273         (recursively_write_psymbols): Likewise.
11274         (class debug_names): Likewise.
11275         (check_dwarf64_offsets): Likewise.
11276         (psyms_seen_size): Likewise.
11277         (write_gdbindex): Likewise.
11278         (write_debug_names): Likewise.
11279         (assert_file_size): Likewise.
11280         (write_psymtabs_to_index): Likewise.
11281         (save_gdb_index_command): Likewise.
11282         (_initialize_dwarf2_read): Don't register the "save gdb-index"
11283         command.
11284         * dwarf2read.h: New file.
11285
11286 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11287
11288         PR gdb/22670
11289         * dwarf2read.c (dwarf2_physname): Do not return the demangled
11290         symbol name if the CU's language stores symbol names in linkage
11291         format.
11292         * language.h (struct language_defn)
11293         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
11294         all instances of this struct.
11295
11296 2018-03-26  Tom Tromey  <tom@tromey.com>
11297
11298         * stack.c (backtrace_command_1): Remove verbose code.
11299
11300 2018-03-26  Tom Tromey  <tom@tromey.com>
11301
11302         * python/py-framefilter.c (py_print_type): Don't catch
11303         exceptions.  Return void.
11304         (py_print_value): Likewise.
11305         (py_print_single_arg): Likewise.
11306         (enumerate_args): Don't catch exceptions.
11307         (py_print_args): Likewise.
11308         (py_print_frame): Likewise.
11309         (gdbpy_apply_frame_filter): Catch exceptions here.
11310
11311 2018-03-26  Tom Tromey  <tom@tromey.com>
11312
11313         * stack.c (_initialize_stack): Remove trailing newlines from help
11314         text.  Add "Usage" line to "backtrace" help.
11315
11316 2018-03-26  Tom Tromey  <tom@tromey.com>
11317
11318         PR python/16486:
11319         * python/py-framefilter.c (py_print_args): Call wrap_hint.
11320
11321 2018-03-26  Tom Tromey  <tom@tromey.com>
11322
11323         * python/py-framefilter.c (py_print_single_arg): Return
11324         EXT_LANG_BT_ERROR from catch.
11325
11326 2018-03-26  Tom Tromey  <tom@tromey.com>
11327
11328         PR backtrace/15584:
11329         * stack.c (backtrace_command_1): Move some code into no-filters
11330         "if".
11331
11332 2018-03-26  Tom Tromey  <tom@tromey.com>
11333
11334         * python/py-framefilter.c (throw_quit_or_print_exception): New
11335         function.
11336         (gdbpy_apply_frame_filter): Use it.
11337
11338 2018-03-26  Tom Tromey  <tom@tromey.com>
11339
11340         PR cli/17716:
11341         * python/py-framefilter.c (py_print_type, py_print_value)
11342         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
11343         RETURN_MASK_ERROR.
11344
11345 2018-03-26  Tom Tromey  <tom@tromey.com>
11346
11347         * python/py-framefilter.c (enumerate_args): Use
11348         gdb::unique_xmalloc_ptr.
11349
11350 2018-03-26  Tom Tromey  <tom@tromey.com>
11351
11352         * python/py-framefilter.c (py_print_frame): Return
11353         EXT_LANG_BT_OK.
11354         (gdbpy_apply_frame_filter): Update comment.
11355         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
11356         Remove.
11357         <EXT_LANG_BT_NO_FILTERS>: Change value.
11358
11359 2018-03-26  Tom Tromey  <tom@tromey.com>
11360
11361         PR backtrace/15582:
11362         * stack.c (backtrace_command): Parse "hide" argument.
11363         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
11364         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
11365         constant.
11366
11367 2018-03-26  Tom Tromey  <tom@tromey.com>
11368
11369         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
11370         add "flags".
11371         (backtrace_command): Remove "fulltrace", add "flags".
11372
11373 2018-03-26  Tom Tromey  <tom@tromey.com>
11374
11375         * stack.c (backtrace_command): Rewrite command line parsing.
11376
11377 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11378
11379         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
11380
11381 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11382
11383         * filename-seen-cache.h: Add include guard.
11384
11385 2018-03-26  Keith Seitz  <keiths@redhat.com>
11386
11387         * symfile.c (place_section): Remove "struct" from section_addr_info
11388         in comment.
11389         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
11390         "struct" keyword from section_addr_info.
11391
11392 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
11393
11394         * regformats/regdef.h (reg): Add constructors.
11395
11396 2018-03-25  Pedro Alves  <palves@redhat.com>
11397
11398         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
11399         if then/else bodies in var_func_name extraction.
11400
11401 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
11402
11403         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
11404         lookup_minimal_symbol() to find symbol entry.
11405         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
11406
11407 2018-03-23  Keith Seitz  <keiths@redhat.com>
11408
11409         PR c++/22968
11410         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
11411         nested type definitions for C++, too.
11412
11413 2018-03-23  Tom Tromey  <tom@tromey.com>
11414
11415         * machoread.c (struct oso_el): Add a constructor.  Don't define as
11416         a typedef.
11417         (macho_register_oso): Remove.
11418         (macho_symtab_read): Take a std::vector.
11419         (oso_el_compare_name): Now a std::sort comparator.
11420         (macho_symfile_read_all_oso): Take a std::vector.
11421         (macho_symfile_read): Use std::vector.  Remove cleanups.
11422
11423 2018-03-22  Tom Tromey  <tom@tromey.com>
11424
11425         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
11426         (record_full_goto_bookmark): Use std::string.
11427
11428 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11429
11430         PR tdep/18295
11431         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
11432         a single mask.
11433
11434 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11435
11436         * rs6000-tdep.c (store_insn_p): New function.
11437         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
11438         and cr_reg to their unshifted values. Use store_insn_p to
11439         match LR saves using either R1 or fdata->alloca_reg. Use
11440         store_insn_p to match CR saves. Set alloca_reg_offset
11441         when alloca_reg and framep are set. Remove lr_reg shift
11442         when assigning to fdata->lr_register.
11443
11444 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11445
11446         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
11447         command line args instead of emitting a warning.
11448
11449 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11450
11451         * tracepoint.h (struct static_tracepoint_marker): Initialize
11452         fields, define default constructor, move constructor and move
11453         assignment, disable the rest.
11454         <str_id, extra>: Make std::string.
11455         (release_static_tracepoint_marker): Remove.
11456         (free_current_marker): Remove.
11457         * tracepoint.c (free_current_marker): Remove.
11458         (parse_static_tracepoint_marker_definition): Adjust to
11459         std::string, use new hex2str overload.
11460         (release_static_tracepoint_marker): Remove.
11461         (print_one_static_tracepoint_marker): Get marker by reference
11462         and adjust to std::string.
11463         (info_static_tracepoint_markers_command): Adjust to std::vector
11464         changes
11465         * target.h (static_tracepoint_marker_p): Remove typedef.
11466         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
11467         (struct target_ops) <to_static_tracepoint_marker_at>: Return
11468         bool.
11469         <to_static_tracepoint_markers_by_strid>: Return std::vector.
11470         * target-debug.h
11471         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
11472         (target_debug_print_std_vector_static_tracepoint_marker): New.
11473         (target_debug_print_struct_static_tracepoint_marker_p): Rename
11474         to...
11475         (target_debug_print_static_tracepoint_marker_p): ... this.
11476         * target-delegates.c: Re-generate.
11477         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
11478         Make std::string.
11479         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
11480         (decode_static_tracepoint_spec): Adjust to std::vector.
11481         (tracepoint_print_one_detail): Adjust to std::string.
11482         (strace_marker_decode_location): Adjust to std::string.
11483         (update_static_tracepoint): Adjust to std::string, remove call
11484         to release_static_tracepoint_marker.
11485         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
11486         Adjust to std::vector.
11487         * remote.c (remote_static_tracepoint_marker_at): Return bool.
11488         (remote_static_tracepoint_markers_by_strid): Adjust to
11489         std::vector.
11490         * common/rsp-low.h (hex2str): New overload with explicit count
11491         of bytes.
11492         * common/rsp-low.c (hex2str): New overload with explicit count
11493         of bytes.
11494         * unittests/rsp-low-selftests.c (test_hex2str): New function.
11495         (_initialize_rsp_low_selftests): Add test_hex2str test.
11496         * unittests/tracepoint-selftests.c
11497         (test_parse_static_tracepoint_marker_definition): Adjust to
11498         std::string.
11499
11500 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11501
11502         * tracepoint.c (parse_static_tracepoint_marker_definition):
11503         Consider case where the definition is followed by more
11504         definitions.
11505         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11506         tracepoint-selftests.c.
11507         * unittests/tracepoint-selftests.c: New.
11508
11509 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11510
11511         * MAINTAINERS (Write After Approval): Add Pedro Franco de
11512         Carvalho.
11513
11514 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11515
11516         * symtab.c (find_pc_sect_line): fixed indentation.
11517
11518 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11519
11520         * symtab.c (find_pc_sect_line): now uses binary search.
11521
11522 2018-03-19  Tom Tromey  <tom@tromey.com>
11523
11524         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
11525         "IDENT" production.
11526
11527 2018-03-19  Pedro Alves  <palves@redhat.com>
11528             Tom Tromey  <tom@tromey.com>
11529
11530         * unittests/observable-selftests.c: New file.
11531         * common/observable.h: New file.
11532         * observable.h: New file.
11533         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
11534         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
11535         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
11536         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
11537         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
11538         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
11539         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
11540         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
11541         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
11542         python/py-breakpoint.c, python/py-finishbreakpoint.c,
11543         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
11544         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
11545         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
11546         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
11547         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
11548         tui/tui-interp.c, valops.c: Update all users.
11549         * tui/tui-hooks.c (tui_bp_created_observer)
11550         (tui_bp_deleted_observer, tui_bp_modified_observer)
11551         (tui_inferior_exit_observer, tui_before_prompt_observer)
11552         (tui_normal_stop_observer, tui_register_changed_observer):
11553         Remove.
11554         (tui_observers_token): New global.
11555         (attach_or_detach, tui_attach_detach_observers): New functions.
11556         (tui_install_hooks, tui_remove_hooks): Use
11557         tui_attach_detach_observers.
11558         * record-btrace.c (record_btrace_thread_observer): Remove.
11559         (record_btrace_thread_observer_token): New global.
11560         * observer.sh: Remove.
11561         * observer.c: Rename to observable.c.
11562         * observable.c (namespace gdb_observers): Define new objects.
11563         (observer_debug): Move into gdb_observers namespace.
11564         (struct observer, struct observer_list, xalloc_observer_list_node)
11565         (xfree_observer_list_node, generic_observer_attach)
11566         (generic_observer_detach, generic_observer_notify): Remove.
11567         (_initialize_observer): Update.
11568         Don't include observer.inc.
11569         * Makefile.in (generated_files): Remove observer.h, observer.inc.
11570         (clean mostlyclean): Likewise.
11571         (observer.h, observer.inc): Remove targets.
11572         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
11573         (COMMON_SFILES): Use observable.c, not observer.c.
11574         * .gitignore: Remove observer.h.
11575
11576 2018-03-18  Tom Tromey  <tom@tromey.com>
11577
11578         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
11579         gdb::def_vector.
11580         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
11581
11582 2018-03-17  Tom Tromey  <tom@tromey.com>
11583
11584         * auto-load.c (auto_load_objfile_script_1): Use std::string.
11585
11586 2018-03-17  Tom Tromey  <tom@tromey.com>
11587
11588         * target.c (class scoped_target_fd): New.
11589         (target_fileio_close_cleanup): Remove.
11590         (target_fileio_read_alloc_1): Use scoped_target_fd.
11591
11592 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
11593
11594         * silent-rules.mk: New.
11595         * Makefile.in: Include silent-rules.mk
11596         (srcdir, VPATH, top_srcdir): Move up.
11597         (COMPILE): Add ECHO_CXX.
11598         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
11599         (init.c): Add ECHO_INIT_C.
11600         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
11601         (version.c): Add ECHO_GEN.
11602         (printcmd.o): Add ECHO_CXX.
11603         (target-float.o): Add ECHO_CXX.
11604         (ada-exp.o): Add ECHO_CXX.
11605         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
11606         (insight$(EXEEXT)): Add ECHO_CXXLD.
11607         * gnulib/configure.ac: Add AM_SILENT_RULES.
11608         * gnulib/aclocal.m4: Re-generate.
11609         * gnulib/configure: Re-generate.
11610         * gnulib/import/Makefile.in: Re-generate.
11611
11612 2018-03-16  Tom Tromey  <tom@tromey.com>
11613
11614         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
11615         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
11616         * utils.c (do_free_section_addr_info)
11617         (make_cleanup_free_section_addr_info): Remove.
11618         * symfile.h (struct other_sections): Add constructor.
11619         (struct section_addr_info): Remove.
11620         (section_addr_info): New typedef.
11621         (struct sym_fns) <sym_offsets>: Change type of parameter.
11622         (build_section_addr_info_from_objfile)
11623         (relative_addr_info_to_section_offsets, addr_info_make_relative)
11624         (default_symfile_offsets, symbol_file_add)
11625         (symbol_file_add_from_bfd)
11626         (build_section_addr_info_from_section_table): Update.
11627         (alloc_section_addr_info, free_section_addr_info): Don't declare.
11628         * symfile.c (alloc_section_addr_info): Remove.
11629         (build_section_addr_info_from_section_table): Change return type.
11630         Update.
11631         (build_section_addr_info_from_bfd)
11632         (build_section_addr_info_from_objfile): Likewise.
11633         (free_section_addr_info): Remove.
11634         (relative_addr_info_to_section_offsets): Change type of "addrs".
11635         (addrs_section_compar): Now a std::sort comparator.
11636         (addrs_section_sort): Change return type.
11637         (addr_info_make_relative): Change type of "addrs".  Update.
11638         (default_symfile_offsets, syms_from_objfile_1)
11639         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
11640         (symbol_file_add_separate): Update.
11641         (symbol_file_add): Change type of "addrs".  Update.
11642         (add_symbol_file_command): Update.  Remove cleanups.
11643         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
11644         cleanups.
11645         * symfile-debug.c (debug_sym_offsets): Change type of "info".
11646         * solib.c (solib_read_symbols): Update.
11647         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
11648         * machoread.c (macho_symfile_offsets): Update.
11649         * jit.c (jit_bfd_try_read_symtab): Update.
11650
11651 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
11652
11653         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11654         unittests/utils-selftests.c.
11655         * unittests/utils-selftests.c: New file.
11656
11657 2018-03-14  Tom Tromey  <tom@tromey.com>
11658
11659         PR cli/14977:
11660         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
11661         for NULL.
11662
11663 2018-03-14  Tom Tromey  <tom@tromey.com>
11664
11665         PR cli/19918:
11666         * printcmd.c (printf_pointer): Allow "-" in format.
11667
11668 2018-03-14  Tom Tromey  <tom@tromey.com>
11669
11670         * printcmd.c (_initialize_printcmd): Add usage to printf.
11671
11672 2018-03-14  Yao Qi  <qiyao@sourceware.org>
11673
11674         * MAINTAINERS: Update my email address.
11675
11676 2018-03-13  Tom Tromey  <tom@tromey.com>
11677
11678         * machoread.c (macho_check_dsym): Change filenamep to a
11679         std::string*.
11680         (macho_symfile_read): Update.
11681         * symfile.c (load_command): Use std::string.
11682
11683 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
11684
11685         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
11686         to error message string.
11687         (riscv_register_name): Use xsnprintf instead of sprintf.
11688         (riscv_insn::fetch_instruction): Use gdb_assert instead of
11689         internal_error.
11690         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
11691         error.
11692         (riscv_push_dummy_call): Likewise.
11693
11694 2018-03-12  Tom Tromey  <tom@tromey.com>
11695
11696         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
11697         Use gdb::byte_vector.
11698         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
11699
11700 2018-03-12  Yao Qi  <yao.qi@linaro.org>
11701
11702         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
11703         parameter type to readable_regcache.
11704         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
11705         the declaration.
11706
11707 2018-03-11  Tom Tromey  <tom@tromey.com>
11708
11709         * dwarf2read.c (struct nextfield): Add initializers.
11710         (struct nextfnfield): Remove.
11711         (struct fnfieldlist): Add initializers.  Remove "length" and
11712         "head", use std::vector.
11713         (struct decl_field_list): Remove.
11714         (struct field_info): Add initializers.
11715         <fields, baseclasses>: Now std::vector.
11716         <nbaseclasses, nfnfields, typedef_field_list_count,
11717         nested_types_list_count>: Remove.
11718         (dwarf2_add_field, dwarf2_add_type_defn)
11719         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
11720         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
11721         (process_structure_scope): Update.
11722
11723 2018-03-11  Tom Tromey  <tom@tromey.com>
11724
11725         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
11726         for use by std::sort.
11727         (build_type_psymtabs_1): Use std::vector.
11728
11729 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
11730
11731         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
11732         and LIBMPFR in the printed configuration.
11733
11734 2018-03-08  Tom Tromey  <tom@tromey.com>
11735
11736         * source.c (get_filename_and_charpos): Use scoped_fd.
11737         * nto-procfs.c (procfs_open_1): Use scoped_fd.
11738         (procfs_pidlist): Likewise.
11739         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
11740         (iterate_over_mappings): Likewise.
11741
11742 2018-03-08  Tom Tromey  <tom@tromey.com>
11743
11744         * infcall.c (struct call_return_meta_info)
11745         <stack_temporaries_enabled>: Remove.
11746         (get_call_return_value, call_function_by_hand_dummy): Update.
11747         * thread.c (disable_thread_stack_temporaries): Remove.
11748         (enable_thread_stack_temporaries): Remove.
11749         (thread_stack_temporaries_enabled_p): Return bool.
11750         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
11751         (get_last_thread_stack_temporary): Update.
11752         * eval.c (evaluate_subexp): Update.
11753         * gdbthread.h (class enable_thread_stack_temporaries): Now a
11754         class, not a function.
11755         (value_ptr, value_vec): Remove typedefs.
11756         (class thread_info) <stack_temporaries_enabled>: Now bool.
11757         <stack_temporaries>: Now a std::vector.
11758         (thread_stack_temporaries_enabled_p)
11759         (value_in_thread_stack_temporaries): Return bool.
11760
11761 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
11762
11763         * remote.c (putpkt_binary): Fix omitted bytes reporting.
11764         (getpkt_or_notif_sane_1): Likewise.
11765
11766 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
11767
11768         * build-id.c (build_id_to_debug_bfd): Use std::string.
11769
11770 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
11771
11772         * build-id.c (find_separate_debug_file_by_buildid): Return
11773         std::string.
11774         * build-id.h (find_separate_debug_file_by_buildid): Return
11775         std::string.
11776         * coffread.c (coff_symfile_read): Adjust to std::string.
11777         * elfread.c (elf_symfile_read): Adjust to std::string.
11778         * symfile.c (separate_debug_file_exists): Change parameter to
11779         std::string.
11780         (find_separate_debug_file): Return std::string.
11781         (find_separate_debug_file_by_debuglink): Return std::string.
11782         * symfile.h (find_separate_debug_file_by_debuglink): Return
11783         std::string.
11784
11785 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
11786
11787         * common/xml-utils.c (xml_escape_text): Move code to...
11788         (xml_escape_text_append): ... this new function.
11789         * common/xml-utils.h (xml_escape_text_append): New declaration.
11790         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
11791         New function.
11792         (_initialize_xml_utils): register test_xml_escape_text_append as
11793         a selftest.
11794
11795 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
11796
11797         * defs.h: Remove MAX_REGISTER_SIZE.
11798         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
11799         asserts.
11800         * python/py-unwind.c (pyuw_sniffer): Likewise.
11801
11802 2018-03-07  Tom Tromey  <tom@tromey.com>
11803
11804         * linux-tdep.c (linux_info_proc): Update.
11805         * target.h (struct target_ops) <to_fileio_readlink>: Return
11806         optional<string>.
11807         (target_fileio_readlink): Return optional<string>.
11808         * remote.c (remote_hostio_readlink): Return optional<string>.
11809         * inf-child.c (inf_child_fileio_readlink): Return
11810         optional<string>.
11811         * target.c (target_fileio_readlink): Return optional<string>.
11812
11813 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
11814
11815         * regcache.c (cooked_read_test): Add riscv to the list of
11816         architectures that have a save_reggroup.
11817
11818 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11819
11820         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
11821         value is not a dynamic class object.
11822
11823 2018-03-06  Tom Tromey  <tom@tromey.com>
11824
11825         * rust-exp.y: Formatting fixes.
11826
11827 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11828
11829         * riscv-tdep.c (riscv_register_name): Remove target description
11830         support.
11831         (riscv_gdbarch_init): Remove target description check.
11832
11833 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11834
11835         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
11836         comment.
11837         * riscv-tdep.h: Likewise.
11838
11839 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11840
11841         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
11842         (riscv_pseudo_register_write): Delete.
11843         (riscv_gdbarch_init): Remove all use of pseudo registers.
11844
11845 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
11846
11847         * record-btrace.c (btrace_print_lines): Replace cleanup
11848         parameter with RAII equivalents.
11849         (btrace_insn_history): Replace cleanup with RAII equivalents.
11850         * ui-out.h (make_cleanup_ui_out_list_begin_end,
11851         make_cleanup_ui_out_tuple_begin_end): Remove.
11852         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
11853         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
11854         make_cleanup_ui_out_list_begin_end): Remove.
11855
11856 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
11857
11858         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
11859         parameter types to std::vector.  Use bool.
11860         (record_btrace_wait): Replace VEC(tp_t) with
11861         std::vector<thread_info *>.
11862         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
11863
11864 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
11865
11866         * record-btrace.c (record_btrace_disable_callback): Remove.
11867         (struct scoped_btrace_disable): New.
11868         (record_btrace_open): Use scoped_btrace_disable.
11869
11870 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11871
11872         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
11873         reading values from registers.
11874
11875 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11876
11877         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
11878         where appropriate.
11879
11880 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11881
11882         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
11883         change parameter type.  Use GDB's print functions, and use
11884         core_addr_to_string where appropriate.
11885         (riscv_push_dummy_call): Use core_addr_to_string where
11886         appropriate, update call to riscv_print_arg_location, and reindent
11887         a few lines.
11888         (riscv_return_value): Update call to riscv_print_arg_location.
11889
11890 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11891             Tim Newsome <tim@sifive.com>
11892             Albert Ou <a0u@eecs.berkeley.edu>
11893             Darius Rad <darius@bluespec.com>
11894
11895         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
11896         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
11897         (ALLDEPFILES): Add riscv-tdep.c
11898         * configure.tgt: Add riscv support.
11899         * riscv-tdep.c: New file.
11900         * riscv-tdep.h: New file.
11901         * NEWS: Mention new target.
11902         * MAINTAINERS: Add entry for riscv.
11903
11904 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11905
11906         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
11907         fields within aggregates.
11908
11909 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
11910
11911         * record-btrace.c (btrace_print_lines): Change type of flags to
11912         gdb_disassembly_flags.
11913
11914 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
11915
11916         * fbsd-nat.c: Include "inf-ptrace.h".
11917         (USE_SIGTRAP_SIGINFO): Conditionally define.
11918         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
11919         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
11920         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
11921         function.
11922         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
11923         Likewise.
11924         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
11925         Likewise.
11926         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
11927         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
11928         "supports_stopped_by_hw_breakpoint" target methods.
11929
11930 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
11931
11932         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
11933         * fbsd-nat.c (debug_fbsd_nat): New variable.
11934         (show_fbsd_nat_debug): New function.
11935         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
11936         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
11937
11938 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
11939
11940         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
11941         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
11942         prototype.
11943         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
11944         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
11945         method.
11946
11947 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11948
11949         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
11950         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
11951
11952 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11953
11954         * charset.c (struct charset_vector): New.
11955         (charsets): Change type to charset_vector.
11956         (find_charset_names): Adjust.
11957         (add_one): Adjust.
11958         (_initialize_charset): Adjust.
11959
11960 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11961
11962         * progspace.h (struct program_space) <deleted_solibs>: Change
11963         type to std::vector<std::string>.
11964         * progspace.c (clear_program_space_solib_cache): Adjust.
11965         * breakpoint.c (print_solib_event): Adjust.
11966         (check_status_catch_solib): Adjust.
11967         * solib.c (update_solib_list): Adjust.
11968         * ui-out.h (class ui_out) <field_string>: New overload.
11969         * ui-out.c (ui_out::field_string): New overload.
11970
11971 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11972
11973         * progspace.h (struct program_space): Add constructor and
11974         destructor, initialize fields.
11975         (add_program_space): Remove.
11976         * progspace.c (add_program_space): Rename to...
11977         (program_space::program_space): ... this.
11978         (release_program_space): Rename to...
11979         (program_space::~program_space): ... this.
11980         (delete_program_space): Use delete to delete program_space.
11981         (initialize_progspace): Use new to allocate program_space.
11982         * inferior.c (add_inferior_with_spaces): Likewise.
11983         (clone_inferior_command): Likewise.
11984         * infrun.c (follow_fork_inferior): Likewise.
11985         (handle_vfork_child_exec_or_exit): Likewise.
11986
11987 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11988
11989         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
11990         (delim_string_to_char_ptr_vec): Return std::vector of
11991         gdb::unique_xmalloc_ptr.
11992         (dirnames_to_char_ptr_vec_append): Take std::vector of
11993         gdb::unique_xmalloc_ptr.
11994         (dirnames_to_char_ptr_vec): Return std::vector of
11995         gdb::unique_xmalloc_ptr.
11996         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
11997         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
11998         (delim_string_to_char_ptr_vec): Return an std::vector of
11999         gdb::unique_xmalloc_ptr, adjust the code.
12000         (dirnames_to_char_ptr_vec_append): Take an std::vector of
12001         gdb::unique_xmalloc_ptr, adjust the code.
12002         (dirnames_to_char_ptr_vec): Return an std::vector of
12003         gdb::unique_xmalloc_ptr, adjust the code.
12004         * auto-load.c (auto_load_safe_path_vec): Change type to
12005         std::vector of gdb::unique_xmalloc_ptr.
12006         (auto_load_expand_dir_vars): Return an std::vector of
12007         gdb::unique_xmalloc_ptr, adjust the code.
12008         (auto_load_safe_path_vec_update): Adjust.
12009         (filename_is_in_auto_load_safe_path_vec): Adjust.
12010         (auto_load_objfile_script_1): Adjust.
12011         * build-id.c (build_id_to_debug_bfd): Adjust.
12012         * linux-thread-db.c (thread_db_load_search): Adjust.
12013         * source.c (add_path): Adjust.
12014         (openp): Adjust.
12015         * symfile.c (find_separate_debug_file): Adjust.
12016         * utils.c (do_free_char_ptr_vec): Remove.
12017         (make_cleanup_free_char_ptr_vec): Remove.
12018
12019 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
12020
12021         PR gdb/22907
12022         * common/pathstuff.c: Conditionally include "<windows.h>".
12023
12024 2018-03-01  Georg Sauthoff  <mail@georg.so>
12025
12026         PR gdb/22888
12027         * gcore.in: Quote variables and switch interpreter to bash.
12028
12029 2018-03-01  Tom Tromey  <tom@tromey.com>
12030
12031         * dwarf2read.c (alloc_discriminant_info): Fix default_index
12032         assertion.  Add assertion for discriminant_index.
12033         (quirk_rust_enum): Use correct base type name in univariant case.
12034
12035 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
12036
12037         * record.c (get_call_history_modifiers): Return a
12038         record_print_flags.
12039         (cmd_record_call_history): Adjust.
12040         * record-btrace.c (record_btrace_call_history): Adjust.
12041         (record_btrace_call_history_range): Adjust.
12042         (record_btrace_call_history_from): Adjust.
12043         * target-debug.h (target_debug_print_record_print_flags): New.
12044         * target-delegates.c: Re-generate.
12045         * target.c (target_call_history): Change flags type.
12046         (target_call_history_from): Likewise.
12047         (target_call_history_range): Likewise.
12048         * target.h (struct target_ops) <target_call_history>: Likewise.
12049         (target_call_history_from): Likewise.
12050         (target_call_history_range): Likewise.
12051
12052 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12053             Simon Marchi  <simon.marchi@polymtl.ca>
12054
12055         * common/common-utils.c: Include "sys/stat.h".
12056         (is_regular_file): Move here from "source.c"; change return
12057         type to "bool".
12058         * common/common-utils.h (is_regular_file): New prototype.
12059         * common/pathstuff.c (contains_dir_separator): New function.
12060         * common/pathstuff.h (contains_dir_separator): New prototype.
12061         * source.c: Don't include "sys/stat.h".
12062         (is_regular_file): Move to "common/common-utils.c".
12063
12064 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12065
12066         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
12067         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
12068         * auto-load.c: Include "common/pathstuff.h".
12069         * common/common-def.h (current_directory): Move here.
12070         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
12071         function.
12072         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
12073         prototype.
12074         * common/pathstuff.c: New file.
12075         * common/pathstuff.h: New file.
12076         * compile/compile.c: Include "common/pathstuff.h".
12077         * defs.h (current_directory): Move to "common/common-defs.h".
12078         * dwarf2read.c: Include "common/pathstuff.h".
12079         * exec.c: Likewise.
12080         * guile/scm-safe-call.c: Likewise.
12081         * linux-thread-db.c: Likewise.
12082         * main.c: Likewise.
12083         * nto-tdep.c: Likewise.
12084         * objfiles.c: Likewise.
12085         * source.c: Likewise.
12086         * symtab.c: Likewise.
12087         * utils.c: Include "common/pathstuff.h".
12088         (gdb_realpath): Move to "common/pathstuff.c".
12089         (gdb_realpath_keepfile): Likewise.
12090         (gdb_abspath): Likewise.
12091         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
12092         (gdb_realpath_keepfile): Likewise.
12093         (gdb_abspath): Likewise.
12094
12095 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
12096
12097         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
12098         wildcard process pid for super_resume for kernels with a
12099         specific bug.
12100
12101 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
12102
12103         * compile/compile.c (get_args): Add additional comments
12104         explaining function.
12105
12106 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
12107             Tom Tromey  <tom@tromey.com>
12108
12109         * target.h (memory_write_request_s): Remove typedef.  Don't define
12110         VEC.
12111         (target_write_memory_blocks): Change argument to std::vector.
12112         (struct memory_write_request): Add constructor.
12113         * target-memory.c (compare_block_starting_address): Return bool.
12114         Change argument types.
12115         (claim_memory): Change arguments to use std::vector.
12116         (split_regular_and_flash_blocks, blocks_to_erase)
12117         (compute_garbled_blocks): Likewise.
12118         (cleanup_request_data, cleanup_write_requests_vector): Remove.
12119         (target_write_memory_blocks): Change argument to std::vector.
12120         * symfile.c (struct load_section_data): Add constructor and
12121         destructor.  Use std::vector for "requests".
12122         (struct load_progress_data): Add initializers.
12123         (load_section_callback): Update.  Use "new".
12124         (clear_memory_write_data): Remove.
12125         (generic_load): Update.
12126
12127 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
12128
12129         * arch/aarch64.h: Use common/tdesc.h.
12130
12131 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12132
12133         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
12134         architecture with a 64-bit ABI.
12135
12136 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12137
12138         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
12139         ahead of target description loading.
12140
12141 2018-02-26  Tom Tromey  <tom@tromey.com>
12142
12143         * stack.c (backtrace_command_1): Update.
12144         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
12145         of "flags".
12146         * python/py-framefilter.c (py_print_frame)
12147         (gdbpy_apply_frame_filter): Change type of "flags".
12148         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
12149         of "flags".
12150         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
12151         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
12152         * extension.h (enum frame_filter_flag): Rename from
12153         frame_filter_flags.
12154         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
12155         (apply_ext_lang_frame_filter): Change type of "flags".
12156         * extension.c (apply_ext_lang_frame_filter): Change type of
12157         "flags".
12158         * extension-priv.h (struct extension_language_ops)
12159         <apply_frame_filter>: Change type of "flags".
12160
12161 2018-02-26  Tom Tromey  <tom@tromey.com>
12162
12163         PR python/16497:
12164         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
12165         off-by-one in py_end computation.
12166         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
12167         PRINT_MORE_FRAMES.
12168         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
12169         constant.
12170
12171 2018-02-26  Tom Tromey  <tom@tromey.com>
12172
12173         * dwarf2read.c (struct variant_field): New.
12174         (struct nextfield) <variant>: New field.
12175         (dwarf2_add_field): Handle DW_TAG_variant_part.
12176         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
12177         discriminated union.
12178         (read_structure_type): Handle DW_TAG_variant_part.
12179         (handle_struct_member_die): New function, extracted from
12180         process_structure_scope.  Handle DW_TAG_variant.
12181         (process_structure_scope): Handle discriminated unions.  Call
12182         handle_struct_member_die.
12183
12184 2018-02-26  Tom Tromey  <tom@tromey.com>
12185
12186         * rust-lang.h (rust_last_path_segment): Declare.
12187         * rust-lang.c (rust_last_path_segment): Now public.  Change
12188         contract.
12189         (struct disr_info): Remove.
12190         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
12191         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
12192         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
12193         (rust_enum_p, rust_enum_variant): New function.
12194         (rust_underscore_fields): Remove "offset" parameter.
12195         (rust_print_enum): New function.
12196         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
12197         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
12198         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
12199         enums.
12200         (rust_internal_print_type): New function, from rust_print_type.
12201         Remove enum code.
12202         (rust_print_type): Call rust_internal_print_type.
12203         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
12204         Update enum handling.
12205         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
12206         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
12207         (rust_union_quirks): New functions.
12208         (process_full_comp_unit, process_full_type_unit): Call
12209         rust_union_quirks.
12210         (process_structure_scope): Update rust_unions if necessary.
12211
12212 2018-02-26  Tom Tromey  <tom@tromey.com>
12213
12214         * value.h (value_union_variant): Declare.
12215         * valops.c (value_union_variant): New function.
12216         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
12217         (struct discriminant_info): New.
12218         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
12219         enumerator.
12220         (struct main_type) <flag_discriminated_union>: New field.
12221
12222 2018-02-26  Tom Tromey  <tom@tromey.com>
12223
12224         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12225         unittests/unpack-selftests.c.
12226         * unittests/unpack-selftests.c: New file.
12227         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
12228
12229 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12230
12231         * dwarf2read.c (struct partial_die_info) <read>: New method.
12232         (read_partial_die): Remove the declaration.
12233         (load_partial_dies): Update.
12234         (partial_die_info::partial_die_info):
12235         (read_partial_die): Change it to partial_die_info::read.
12236
12237 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12238
12239         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
12240         (fixup_partial_die): Remove declaration.
12241         (scan_partial_symbols): Update.
12242         (partial_die_parent_scope): Likewise.
12243         (partial_die_full_name): Likewise.
12244         (fixup_partial_die): Change it to partial_die_info::fixup.
12245
12246 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12247
12248         * dwarf2read.c (read_partial_die): Update the declaration.
12249         (load_partial_dies): Caller update.
12250         (read_partial_die): Remove one argument abbrev_len.
12251
12252 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12253
12254         * dwarf2read.c (struct partial_die_info): Add ctor, delete
12255         assignment operator.
12256         (load_partial_dies): Use ctor and copy ctor.
12257         (read_partial_die): Update.
12258         (dwarf2_cu::find_partial_die): Use ctor.
12259
12260 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12261
12262         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
12263         (find_partial_die_in_comp_unit): Change it to
12264         dwarf2_cu::find_partial_die.
12265         (find_partial_die): Update.
12266
12267 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12268
12269         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
12270         is NULL.
12271
12272 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12273
12274         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
12275
12276 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
12277
12278         * arch/amd64.h: Use common/tdesc.h.
12279         * arch/i386.c: Likewise.
12280         * arch/i386.h: Likewise.
12281         * arch/tic6x.c: Likewise.
12282         * arch/tdesc.h: Move file from here...
12283         * common/tdesc.h: ...to here.
12284         * features/aarch64-core.c: Regenerate.
12285         * features/aarch64-fpu.c: Regenerate.
12286         * features/i386/32bit-avx.c: Regenerate.
12287         * features/i386/32bit-avx512.c: Regenerate.
12288         * features/i386/32bit-core.c: Regenerate.
12289         * features/i386/32bit-linux.c: Regenerate.
12290         * features/i386/32bit-mpx.c: Regenerate.
12291         * features/i386/32bit-pkeys.c: Regenerate.
12292         * features/i386/32bit-sse.c: Regenerate.
12293         * features/i386/64bit-avx.c: Regenerate.
12294         * features/i386/64bit-avx512.c: Regenerate.
12295         * features/i386/64bit-core.c: Regenerate.
12296         * features/i386/64bit-linux.c: Regenerate.
12297         * features/i386/64bit-mpx.c: Regenerate.
12298         * features/i386/64bit-pkeys.c: Regenerate.
12299         * features/i386/64bit-segments.c: Regenerate.
12300         * features/i386/64bit-sse.c: Regenerate.
12301         * features/i386/x32-core.c: Regenerate.
12302         * features/tic6x-c6xp.c: Regenerate.
12303         * features/tic6x-core.c: Regenerate.
12304         * features/tic6x-gp.c: Regenerate.
12305         * target-descriptions.c: Use common/tdesc.h.
12306         * target-descriptions.h: Likewise.
12307
12308 2018-02-24  Tom Tromey  <tom@tromey.com>
12309
12310         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
12311         (try_thread_db_load_from_dir, thread_db_load_search): Use
12312         std::string.
12313         (info_auto_load_libthread_db_compare): Return bool.  Change
12314         argument types.
12315         (info_auto_load_libthread_db): Use std::vector, std::string.
12316         Remove cleanups.
12317
12318 2018-02-24  Tom Tromey  <tom@tromey.com>
12319
12320         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
12321         std::string.
12322         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
12323         std::string*.
12324         * gdbarch.c: Rebuild.
12325         * gdbarch.h: Rebuild.
12326         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
12327         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
12328         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
12329         std::string*.
12330
12331 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
12332
12333         * gdbtypes.h (sect_offset): Change type to uint64_t.
12334         (sect_offset_str): New function.
12335         * dwarf2read.c (create_addrmap_from_aranges): Use
12336         sect_offset_str.
12337         (error_check_comp_unit_head): Likewise.
12338         (create_debug_type_hash_table): Likewise.
12339         (read_cutu_die_from_dwo): Likewise.
12340         (init_cutu_and_read_dies): Likewise.
12341         (init_cutu_and_read_dies_no_follow): Likewise.
12342         (process_psymtab_comp_unit_reader): Likewise.
12343         (partial_die_parent_scope): Likewise.
12344         (peek_die_abbrev): Likewise.
12345         (process_queue): Likewise.
12346         (dwarf2_physname): Likewise.
12347         (read_namespace_alias): Likewise.
12348         (read_import_statement): Likewise.
12349         (create_dwo_cu_reader): Likewise.
12350         (create_cus_hash_table): Likewise.
12351         (lookup_dwo_cutu): Likewise.
12352         (inherit_abstract_dies): Likewise.
12353         (read_func_scope): Likewise.
12354         (read_call_site_scope): Likewise.
12355         (dwarf2_add_member_fn): Likewise.
12356         (read_common_block): Likewise.
12357         (read_module_type): Likewise.
12358         (read_typedef): Likewise.
12359         (read_subrange_type): Likewise.
12360         (load_partial_dies): Likewise.
12361         (read_partial_die): Likewise.
12362         (find_partial_die): Likewise.
12363         (read_str_index): Likewise.
12364         (dwarf2_string_attr): Likewise.
12365         (build_error_marker_type): Likewise.
12366         (lookup_die_type): Likewise.
12367         (dump_die_shallow): Likewise.
12368         (follow_die_ref): Likewise.
12369         (dwarf2_fetch_die_loc_sect_off): Likewise.
12370         (dwarf2_fetch_constant_bytes): Likewise.
12371         (follow_die_sig): Likewise.
12372         (get_signatured_type): Likewise.
12373         (get_DW_AT_signature_type): Likewise.
12374         (dwarf2_find_containing_comp_unit): Likewise.
12375         (set_die_type): Likewise.
12376
12377 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
12378
12379         * arch/aarch64.c: Include "common-defs.h".
12380         * arch/amd64.c: Likewise.
12381         * arch/i386.c: Likewise.
12382
12383 2018-02-21  Tom Tromey  <tom@tromey.com>
12384
12385         * value.h: (extract_field_op): Update.
12386         * eval.c (extract_field_op): Return a const char *.
12387         * expression.h (parse_expression_for_completion): Update.
12388         * completer.c (complete_expression): Update.
12389         (add_struct_fields): Make fieldname const.
12390         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
12391         (mark_completion_tag, parse_exp_in_context_1): Update.
12392         (parse_expression_for_completion): Change "name" to
12393         unique_xmalloc_ptr*.
12394
12395 2018-02-21  Tom Tromey  <tom@tromey.com>
12396
12397         * infcall.c (call_function_by_hand_dummy): Use std::vector.
12398
12399 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12400
12401         * avr-tdep.c (avr_read_pc): Change parameter type to
12402         readable_regcache.
12403         * gdbarch.sh (read_pc): Likewise.
12404         * gdbarch.c: Re-generated.
12405         * gdbarch.h: Re-generated.
12406         * hppa-tdep.c (hppa_read_pc): Change parameter type to
12407         readable_regcache.
12408         * ia64-tdep.c (ia64_read_pc): Likewise.
12409         * mips-tdep.c (mips_read_pc): Likewise.
12410         * spu-tdep.c (spu_read_pc): Likewise.
12411
12412 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12413
12414         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
12415         * regcache-dump.c: New file.
12416         * regcache.c: Move register_dump to regcache-dump.c.
12417         (maintenance_print_registers): Likewise.
12418         (maintenance_print_raw_registers): Likewise.
12419         (maintenance_print_cooked_registers): Likewise.
12420         (maintenance_print_register_groups): Likewise.
12421         (maintenance_print_remote_registers): Likewise.
12422         (_initialize_regcache): Likewise.
12423         * regcache.h (register_dump): Moved from regcache.c.
12424
12425 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12426
12427         * regcache.c (regcache::regcache): Update.
12428         (regcache::invalidate): Move it to detached_regcache::invalidate.
12429         (get_thread_arch_aspace_regcache): Update.
12430         (regcache::raw_update): Update.
12431         (regcache::cooked_read): Remove some code.
12432         (regcache::cooked_read_value): Likewise.
12433         (regcache::raw_write): Remove assert on m_readonly_p.
12434         (regcache::raw_supply_integer): Move it to
12435         detached_regcache::raw_supply_integer.
12436         (regcache::raw_supply_zeroed): Likewise.
12437         * regcache.h (detached_regcache) <raw_supply_integer>: New
12438         declaration.
12439         <raw_supply_zeroed, invalidate>: Likewise.
12440         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
12441         <invalidate>: Likewise.
12442         <m_readonly_p>: Removed.
12443
12444 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12445
12446         * infcmd.c (get_return_value): Let stop_regs point to
12447         get_current_regcache.
12448         * regcache.c (regcache::regcache): Remove.
12449         (register_dump_reg_buffer): New class.
12450         (regcache_print): Adjust.
12451         * regcache.h (regcache): Remove constructors.
12452
12453 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12454
12455         * regcache.c (class register_dump): New class.
12456         (register_dump_regcache, register_dump_none): New class.
12457         (register_dump_remote, register_dump_groups): New class.
12458         (regcache_print): Update.
12459         * regcache.h (regcache_dump_what): Move it to regcache.c.
12460         (regcache) <dump>: Remove.
12461
12462 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12463
12464         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
12465          reg_buffer_rw *.
12466         (jit_unwind_reg_set_impl): Call raw_supply.
12467         (jit_frame_sniffer): Use reg_buffer_rw.
12468         * record-full.c (record_full_core_regbuf): Change its type.
12469         (record_full_core_open_1): Use reg_buffer_rw.
12470         (record_full_close): Likewise.
12471         (record_full_core_fetch_registers): Use regcache->raw_supply.
12472         (record_full_core_store_registers): Likewise.
12473         * regcache.c (regcache::get_register_status): Move it to
12474         reg_buffer.
12475         (regcache_raw_set_cached_value): Remove.
12476         (regcache::raw_set_cached_value): Remove.
12477         (regcache::raw_write): Call raw_supply.
12478         (regcache::raw_supply): Move it to reg_buffer_rw.
12479         * regcache.h (regcache_raw_set_cached_value): Remove.
12480         (reg_buffer_rw): New class.
12481
12482 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12483
12484         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
12485         readonly_detached_regcache.
12486         (dummy_frame_prev_register): Use regcache->cooked_read.
12487         * frame.c (frame_save_as_regcache): Change return type.
12488         (frame_pop): Update.
12489         * frame.h (frame_save_as_regcache): Update declaration.
12490         * inferior.h (get_infcall_suspend_state_regcache): Update
12491         declaration.
12492         * infrun.c (infcall_suspend_state) <registers>: use
12493         readonly_detached_regcache.
12494         (save_infcall_suspend_state): Don't use regcache_dup.
12495         (get_infcall_suspend_state_regcache): Change return type.
12496         * linux-fork.c (struct fork_info) <savedregs>: Change to
12497         readonly_detached_regcache.
12498         <pc>: New field.
12499         (fork_save_infrun_state): Don't use regcache_dup.
12500         (info_checkpoints_command): Adjust.
12501         * mi/mi-main.c (register_changed_p): Update declaration.
12502         (mi_cmd_data_list_changed_registers): Use
12503         readonly_detached_regcache.
12504         (register_changed_p): Change parameter type to
12505         readonly_detached_regcache.
12506         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
12507         readonly_detached_regcache.
12508         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
12509         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
12510         New.
12511         (regcache::save): Move it to reg_buffer.
12512         (regcache::restore): Change parameter type.
12513         (regcache_dup): Remove.
12514         * regcache.h (reg_buffer) <save>: New method.
12515         (readonly_detached_regcache): New class.
12516         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
12517         readonly_detached_regcache.
12518         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
12519
12520 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12521
12522         * frame.c (frame_save_as_regcache): Use regcache method save.
12523         (frame_pop): Use regcache method restore.
12524         * infrun.c (restore_infcall_suspend_state): Likewise.
12525         * linux-fork.c (fork_load_infrun_state): Likewise.
12526         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
12527         save.
12528         * regcache.c (regcache_save): Remove.
12529         (regcache::restore): More asserts.
12530         (regcache_cpy): Remove.
12531         * regcache.h (regcache_save): Remove the declaration.
12532         (regcache::restore): Move from private to public.
12533         Remove the friend declaration of regcache_cpy.
12534         (regcache_cpy): Remove declaration.
12535
12536 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12537
12538         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
12539         parameter type to 'readable_regcache *'.
12540         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
12541         * arm-tdep.c (arm_neon_quad_read): Likewise.
12542         (arm_pseudo_read): Likewise.
12543         * avr-tdep.c (avr_pseudo_register_read): Likewise.
12544         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
12545         * frv-tdep.c (frv_pseudo_register_read): Likewise.
12546         * gdbarch.c: Re-generated.
12547         * gdbarch.h: Re-generated.
12548         * gdbarch.sh (pseudo_register_read): Change parameter type to
12549         'readable_regcache *'.
12550         (pseudo_register_read_value): Likewise.
12551         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
12552         (h8300_pseudo_register_read): Likewise.
12553         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
12554         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
12555         (i386_pseudo_register_read_into_value): Likewise.
12556         (i386_pseudo_register_read_value): Likewise.
12557         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
12558         declaration.
12559         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
12560         * m32c-tdep.c (m32c_raw_read): Likewise.
12561         (m32c_read_flg): Likewise.
12562         (m32c_banked_register): Likewise.
12563         (m32c_banked_read): Likewise.
12564         (m32c_sb_read): Likewise.
12565         (m32c_part_read): Likewise.
12566         (m32c_cat_read): Likewise.
12567         (m32c_r3r2r1r0_read): Likewise.
12568         (m32c_pseudo_register_read): Likewise.
12569         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
12570         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
12571         (mep_pseudo_cr64_read): Likewise.
12572         (mep_pseudo_register_read): Likewise.
12573         * mips-tdep.c (mips_pseudo_register_read): Likewise.
12574         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
12575         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
12576         * regcache.c (regcache::raw_read): Move it to readable_regcache.
12577         (regcache::cooked_read): Likewise.
12578         (regcache::cooked_read_value): Likewise.
12579         (regcache_cooked_read_signed):
12580         (regcache::cooked_read): Likewise.
12581         * regcache.h (readable_regcache): New class.
12582         (regcache): Inherit readable_regcache.  Move some methods to
12583         readable_regcache.
12584         * rl78-tdep.c (rl78_pseudo_register_read): Change
12585         parameter type to 'readable_regcache *'.
12586         * rs6000-tdep.c (do_regcache_raw_read): Remove.
12587         (e500_pseudo_register_read): Change parameter type to
12588         'readable_regcache *'.
12589         (dfp_pseudo_register_read): Likewise.
12590         (vsx_pseudo_register_read): Likewise.
12591         (efpr_pseudo_register_read): Likewise.
12592         * s390-tdep.c (s390_pseudo_register_read): Likewise.
12593         * sh-tdep.c (sh_pseudo_register_read): Likewise.
12594         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
12595         (sh64_pseudo_register_read): Likewise.
12596         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
12597         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
12598         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
12599         (spu_pseudo_register_read): Likewise.
12600         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
12601         (xtensa_pseudo_register_read): Likewise.
12602
12603 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12604
12605         * regcache.c (regcache::regcache): Call reg_buffer ctor.
12606         (regcache::arch): Move it to reg_buffer::arch.
12607         (regcache::register_buffer): Likewise.
12608         (regcache::assert_regnum): Likewise.
12609         (regcache::num_raw_registers): Likewise.
12610         * regcache.h (reg_buffer): New class.
12611         (regcache): Inherit reg_buffer.
12612
12613 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
12614
12615         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
12616         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
12617
12618 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
12619
12620         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
12621
12622 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
12623
12624         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
12625         (SFILES): Remove common/*.c files.
12626         (COMMON_OBS): Remove some *.o files built from common/*.c files.
12627         * common/common.host: Add common reference.
12628         * configure.ac: Likewise.
12629         * configure: Regenerate.
12630
12631 2018-02-16  Yao Qi  <yao.qi@linaro.org>
12632
12633         * block.c (block_namespace_info): Inherit allocate_on_obstack.
12634         (block_initialize_namespace): Use new.
12635         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
12636         (dwarf2_free_objfile): Use delete.
12637         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
12638         (copy_type_recursive): Use new.
12639         * gdb_obstack.h (allocate_on_obstack): New.
12640
12641 2018-02-15  Yao Qi  <yao.qi@linaro.org>
12642
12643         PR gdb/22849
12644         * inferior.c (exit_inferior_1): Reset inf->control.
12645
12646 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
12647
12648         * ada-lang.c (ada_to_fixed_value_create): Delete advance
12649         declaration.
12650
12651 2018-02-14  Pedro Alves  <palves@redhat.com>
12652
12653         * frame-unwind.c (frame_unwind_try_unwinder): Always call
12654         frame_cleanup_after_sniffer on exception.
12655
12656 2018-02-14  Tom Tromey  <tom@tromey.com>
12657
12658         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
12659         const.
12660         (solib_bfd_open): Make pathname const.
12661         * solib.c (solib_bfd_open): Make pathname const.
12662         * solib-spu.c (spu_bfd_fopen): Make name const.
12663         (spu_bfd_open): Make pathname const.
12664         * solib-darwin.c (darwin_bfd_open): Make pathname const.
12665         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
12666
12667 2018-02-14  Tom Tromey  <tom@tromey.com>
12668
12669         * symfile.c (symfile_bfd_open): Update.
12670         * source.h (openp, source_full_path_of, find_and_open_source):
12671         Change argument type to unique_xmalloc_ptr.
12672         * source.c (openp): Take a unique_xmalloc_ptr.
12673         (source_full_path_of, find_and_open_source): Likewise.
12674         (open_source_file, symtab_to_fullname): Update.
12675         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
12676         unique_xmalloc_ptr.
12677         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
12678         (exec_file_find): Update.
12679         * psymtab.c (psymtab_to_fullname): Update.
12680         * nto-tdep.h (nto_find_and_open_solib): Update.
12681         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
12682         unique_xmalloc_ptr.
12683         * exec.c (exec_file_attach): Update.
12684         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
12685         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
12686
12687 2018-02-14  Tom Tromey  <tom@tromey.com>
12688
12689         * solib.c: Include source.h.
12690         * nto-tdep.c: Include source.h.
12691         * mi/mi-cmd-env.c: Include source.h.
12692         * infcmd.c: Include source.h.
12693         * exec.c: Include source.h.
12694         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
12695         (add_path, directory_switch, source_path, init_source_path): Move
12696         declarations...
12697         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
12698         (add_path, directory_switch, source_path, init_source_path):
12699         ...here.
12700
12701 2018-02-14  Tom Tromey  <tom@tromey.com>
12702
12703         * solist.h (exec_file_find, solib_find): Return
12704         unique_xmalloc_ptr.
12705         (solib_bfd_fopen): Take a const char *.
12706         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
12707         (exec_file_find, solib_find): Likewise.
12708         (solib_bfd_fopen): Do not take ownership of "pathname".
12709         (solib_bfd_open): Use unique_xmalloc_ptr.
12710         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
12711         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
12712         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
12713         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
12714
12715 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
12716
12717         * ada-lang.c (name_match_type_from_name): Remove reference to
12718         ada_name_for_lookup in function's documentation.
12719         * ada-lang.h (ada_name_for_lookup): Delete declaration.
12720
12721 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
12722
12723         * defs.h (enum openp_flags): New enum.
12724         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
12725         Move to enum openp_flags.
12726         (openp_flags): New enum flags.
12727         (openp): Change parameter type to openp_flags.
12728         * source.c (openp): Change parameter type to openp_flags.
12729         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
12730         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
12731
12732 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
12733
12734         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
12735         per-command.
12736
12737 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12738
12739         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
12740         into...
12741         (class dwarf2_queue_guard): ...the destructor of this new class.
12742         (dw2_do_instantiate_symtab): Create instance of the new class
12743         dwarf2_queue_guard, remove cleanup.
12744
12745 2018-02-09  Tom Tromey  <tom@tromey.com>
12746
12747         * source.c (find_source_lines): Don't reference past the end of
12748         the vector.
12749
12750 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12751
12752         * remote.c (remote_btrace_maybe_reopen): Change error message.
12753         * btrace.c (btrace_enable): Likewise.
12754         (parse_xml_btrace): Likewise.
12755         (parse_xml_btrace_conf): Likewise.
12756
12757 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12758
12759         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
12760         (linux_enable_pt, linux_enable_bts): Call
12761         diagnose_perf_event_open_fail.
12762
12763 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12764
12765         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
12766         Remove parameter and change return type.  Update callers.  Move it.
12767         (linux_enable_bts, linux_enable_pt): Improve error message.
12768         (linux_enable_pt): Remove zero buffer size check.
12769         (linux_enable_btrace): Improve error messages.  Remove NULL return
12770         check.
12771
12772 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12773
12774         * btrace.c (btrace_enable): Remove target_supports_btrace call.
12775         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
12776         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
12777         (linux_supports_pt, linux_supports_btrace): Remove.
12778         (linux_enable_bts): Call cpu_supports_bts.
12779         * nat/linux-btrace.h (linux_supports_btrace): Remove.
12780         * remote.c (remote_supports_btrace): Remove.
12781         (init_remote_ops): Remove remote_supports_btrace.
12782         * target-delegates.c: Regenerated.
12783         * target.c (target_supports_btrace): Remove.
12784         * target.h (target_ops) <to_supports_btrace>: Remove
12785         (target_supports_btrace): Remove.
12786         * x86-linux-nat.c (x86_linux_create_target): Remove
12787         linux_supports_btrace.
12788
12789 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12790
12791         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
12792         btrace failed.
12793         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
12794         exception and use message in own exception.
12795
12796 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12797
12798         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
12799         (perf_event_pt_event_type): Use gdb_file_up.
12800         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
12801         scoped_fd, and scoped_mmap.
12802
12803 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12804
12805         * common/scoped_mmap.h: New.
12806         * unittests/scoped_mmap-selftest.c: New.
12807         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12808         unittests/scoped_mmap-selftest.c.
12809
12810 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12811
12812         * common/scoped_fd.h: New.
12813         * unittests/scoped_fd-selftest.c: New.
12814         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12815         unittests/scoped_fd-selftest.c.
12816
12817 2018-02-09  Tom Tromey  <tom@tromey.com>
12818
12819         * auto-load.c (auto_load_section_scripts): Use
12820         gdb::unique_xmalloc_ptr.
12821
12822 2018-02-09  Tom Tromey  <tom@tromey.com>
12823
12824         * auto-load.c (execute_script_contents): Use std::string.
12825
12826 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
12827
12828         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
12829         Python function, rather than a new command.
12830
12831 2018-02-08  Tom Tromey  <tom@tromey.com>
12832
12833         * solib.c (solib_find_1): Use std::string.
12834         (solib_bfd_fopen): Use unique_xmalloc_ptr.
12835
12836 2018-02-08  Tom Tromey  <tom@tromey.com>
12837
12838         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
12839
12840 2018-02-08  Tom Tromey  <tom@tromey.com>
12841
12842         * source.c (find_source_lines): Use gdb::def_vector.
12843
12844 2018-02-08  Tom Tromey  <tom@tromey.com>
12845
12846         * macrocmd.c (struct temporary_macro_definition): New.
12847         (macro_define_command): Use temporary_macro_definition.  Remove
12848         cleanups.
12849         (free_macro_definition_ptr): Remove.
12850
12851 2018-02-08  Tom Tromey  <tom@tromey.com>
12852
12853         * macroexp.c (maybe_expand): Use std::string.
12854
12855 2018-02-08  Tom Tromey  <tom@tromey.com>
12856
12857         * macroexp.c (struct macro_buffer): Add initializers for some
12858         members.
12859         (init_buffer, init_shared_buffer, free_buffer)
12860         (free_buffer_return_text): Remove.
12861         (macro_buffer): New constructors.
12862         (~macro_buffer): New destructor.
12863         (macro_buffer::set_shared): New method.
12864         (macro_buffer::resize_buffer, macro_buffer::appendc)
12865         (macro_buffer::appendmem): Now methods, not free functions.
12866         (set_token, append_tokens_without_splicing, stringify)
12867         (macro_stringify): Update.
12868         (gather_arguments): Change return type.  Remove argc_p argument,
12869         add args_ptr argument.  Use std::vector.
12870         (substitute_args): Remove argc argument.  Accept std::vector.
12871         (expand): Update.  Use std::vector.
12872         (scan, macro_expand, macro_expand_next): Update.
12873
12874 2018-02-08  Tom Tromey  <tom@tromey.com>
12875
12876         * symtab.c (default_collect_symbol_completion_matches_break_on):
12877         Use unique_xmalloc_ptr.
12878         * macroscope.h: (sal_macro_scope, user_macro_scope)
12879         (default_macro_scope): Return unique_xmalloc_ptr.
12880         * macroscope.c (sal_macro_scope, user_macro_scope)
12881         (default_macro_scope): Return unique_xmalloc_ptr.
12882         * macroexp.h (macro_expand, macro_expand_once): Return
12883         unique_xmalloc_ptr.
12884         * macroexp.c (macro_expand, macro_expand_once): Return
12885         unique_xmalloc_ptr.
12886         * macrocmd.c (macro_expand_command, macro_expand_once_command)
12887         (info_macro_command, info_macros_command): Use
12888         unique_xmalloc_ptr.
12889         * compile/compile-c-support.c (write_macro_definitions): Use
12890         unique_xmalloc_ptr.
12891         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
12892
12893 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
12894
12895         * value.c (value_static_field): Assign field type instead of
12896         containing type when returning an optimized out value.
12897
12898 2018-02-06  Yao Qi  <yao.qi@linaro.org>
12899
12900         * ft32-tdep.c (ft32_read_pc): Remove.
12901         (ft32_write_pc): Remove.
12902         (ft32_gdbarch_init): Update.
12903         * m32r-tdep.c (m32r_read_pc): Remove.
12904         (m32r_gdbarch_init): Update.
12905         * mep-tdep.c (mep_read_pc): Remove.
12906         (mep_gdbarch_init): Update.
12907         * microblaze-tdep.c (microblaze_write_pc): Remove.
12908         (microblaze_gdbarch_init): Update.
12909         * mn10300-tdep.c (mn10300_read_pc): Remove.
12910         (mn10300_write_pc): Remove.
12911         (mn10300_gdbarch_init): Update.
12912         * moxie-tdep.c (moxie_read_pc): Remove.
12913         (moxie_write_pc): Remove.
12914         (moxie_gdbarch_init): Update.
12915
12916 2018-02-06  Yao Qi  <yao.qi@linaro.org>
12917
12918         * expprint.c (print_subexp_standard): Handle
12919         OP_F77_UNDETERMINED_ARGLIST.
12920         (dump_subexp_body_standard): Likewise.
12921
12922 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
12923
12924         * target-descriptions.c (tdesc_element_visitor) Add empty
12925         implementations.
12926         (tdesc_type): Move make_gdb_type from here.
12927         (tdesc_type_builtin): Likewise.
12928         (tdesc_type_vector): Likewise.
12929         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
12930         (make_gdb_type_struct): Move from tdesc_type_with_fields.
12931         (make_gdb_type_union): Likewise.
12932         (make_gdb_type_flags): Likewise.
12933         (make_gdb_type_enum): Likewise.
12934         (make_gdb_type): New function.
12935         (tdesc_register_type): Use static make_gdb_type.
12936
12937 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
12938
12939         * infcmd.c (default_print_one_register_info): Align natural-format
12940         column values consistently one under another.
12941         (pad_to_column): New function.
12942
12943 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
12944
12945         * dwarf2read.c (dwarf2_physname): Move commment.
12946
12947 2018-02-01  Leszek Swirski  <leszeks@google.com>
12948
12949         * varobj.c (varobj_formatted_print_options): Allow recursive
12950         pretty printing if pretty printing is enabled.
12951
12952 2018-02-01  Leszek Swirski  <leszeks@google.com>
12953
12954         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
12955         names after a structop as a filename.
12956
12957 2018-02-01  Yao Qi  <yao.qi@linaro.org>
12958
12959         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
12960         (arm_record_coproc_data_proc): Likewise.
12961
12962 2018-02-01  Yao Qi  <yao.qi@linaro.org>
12963
12964         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
12965
12966 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
12967
12968         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
12969         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
12970
12971 2018-01-31  Pedro Alves  <palves@redhat.com>
12972
12973         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
12974         * inflow.c (child_terminal_save_inferior): Wrap reference to
12975         tcgetpgrp in HAVE_TERMIOS_H.
12976         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
12977         _WIN32.
12978         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
12979         always iterate over all inferiors.
12980         (gdbsim_cntrl_c): Adjust.
12981         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
12982
12983 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
12984
12985         * gdbtypes.c (lookup_array_range_type): Make sure the array's
12986         index type is objfile-owned if the element type is as well.
12987
12988 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
12989
12990         GDB 8.1 released.
12991
12992 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12993
12994         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
12995         "features/s390x-linux64.c".
12996         (_initialize_s390_linux_tdep): Remove initialization of tdescs
12997         s390_linux32 and s390x_linux64.
12998         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
12999         default tdesc.
13000         * s390-tdep.c: Include "features/s390-linux32.c" and
13001         "features/s390x-linux64.c".
13002         (s390_tdesc_valid): Add check for tdesc_has_registers.
13003         (s390_gdbarch_init): Make sure there is always a valid tdesc.
13004         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
13005         tdesc_s390x_linux64.
13006         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
13007         tdesc_s390x_linux64 to...
13008         * s390-tdep.h: ...here.
13009
13010 2018-01-30  Pedro Alves  <palves@redhat.com>
13011
13012         PR gdb/13211
13013         * config.in, configure: Regenerate.
13014         * configure.ac: Check for getpgid.
13015         * go32-nat.c (go32_pass_ctrlc): New.
13016         (go32_target): Install it.
13017         * inf-child.c (inf_child_target): Install
13018         child_terminal_save_inferior, child_pass_ctrlc and
13019         child_interrupt.
13020         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
13021         (inf_ptrace_target): No longer install it.
13022         * infcmd.c (interrupt_target_1): Adjust.
13023         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
13024         (child_interrupt): Declare.
13025         (inferior::terminal_state): New.
13026         * inflow.c (struct terminal_info): Update comments.
13027         (inferior_process_group): Delete.
13028         (terminal_is_ours): Delete.
13029         (gdb_tty_state): New.
13030         (child_terminal_init): Adjust.
13031         (is_gdb_terminal, sharing_input_terminal_1)
13032         (sharing_input_terminal): New functions.
13033         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
13034         Set the process's actual process group in the foreground if
13035         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
13036         mark terminal as the inferior's if not sharing GDB's terminal.
13037         Don't check attach_flag.
13038         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
13039         pass down a target_terminal_state.
13040         (child_terminal_save_inferior): New, factored out from ...
13041         (child_terminal_ours_1): ... this.  Handle
13042         target_terminal_state::is_ours_for_output.
13043         (child_interrupt, child_pass_ctrlc): New.
13044         (inflow_inferior_exit): Clear the inferior's terminal_state.
13045         (copy_terminal_info): Copy the inferior's terminal state.
13046         (_initialize_inflow): Remove reference to terminal_is_ours.
13047         * inflow.h (inferior_process_group): Delete.
13048         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
13049         * procfs.c (procfs_target): Don't install procfs_interrupt.
13050         (procfs_interrupt): Delete.
13051         * remote.c (remote_serial_quit_handler): Adjust.
13052         (remote_interrupt): Remove ptid parameter.  Adjust.
13053         * target-delegates.c: Regenerate.
13054         * target.c: Include "terminal.h".
13055         (target_terminal::terminal_state): Rename to ...
13056         (target_terminal::m_terminal_state): ... this.
13057         (target_terminal::init): Adjust.
13058         (target_terminal::inferior): Adjust to per-inferior
13059         terminal_state.
13060         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
13061         (target_terminal::ours, target_terminal::ours_for_output): Use
13062         target_terminal_is_ours_kind.
13063         (target_interrupt): Remove ptid parameter.  Adjust.
13064         (default_target_pass_ctrlc): Adjust.
13065         * target.h (target_ops::to_terminal_save_inferior): New field.
13066         (target_ops::to_interrupt): Remove ptid_t parameter.
13067         (target_interrupt): Remove ptid_t parameter.  Update comment.
13068         (target_pass_ctrlc): Update comment.
13069         * target/target.h (target_terminal_state): New scoped enum,
13070         factored out of ...
13071         (target_terminal::terminal_state): ... here.
13072         (target_terminal::inferior): Update comments.
13073         (target_terminal::restore_inferior): New.
13074         (target_terminal::is_inferior, target_terminal::is_ours)
13075         (target_terminal::is_ours_for_output): Adjust.
13076         (target_terminal::scoped_restore_terminal_state): Adjust to
13077         rename, and call restore_inferior() instead of inferior().
13078         (target_terminal::scoped_restore_terminal_state::m_state): Change
13079         type.
13080         (target_terminal::terminal_state): Rename to ...
13081         (target_terminal::m_terminal_state): ... this and change type.
13082
13083 2018-01-30  Pedro Alves  <palves@redhat.com>
13084
13085         * linux-nat.c (wait_for_signal): New function.
13086         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
13087         directly.
13088         (async_terminal_is_ours)
13089         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
13090         (linux_nat_add_target): Don't override
13091         to_terminal_inferior/to_terminal_ours.
13092
13093 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
13094
13095         * remote.c (remote_follow_fork): Don't call "detach_inferior".
13096
13097 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
13098
13099         * dwarf2read.c (free_dwo_files): Add forward-declaration.
13100         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
13101         dwarf2_per_objfile_free here.
13102         (dwarf2_per_objfile_free): Remove.
13103         (_initialize_dwarf2_read): Don't register
13104         dwarf2_per_objfile_free as a registry cleanup.
13105
13106 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
13107
13108         Avoid compilation errors in MinGW native builds
13109
13110         The error is triggered by including python-internal.h, and the
13111         error message is:
13112
13113              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
13114                       from build-gnulib/import/math.h:27,
13115                       from d:/usr/Python26/include/pyport.h:235,
13116                       from d:/usr/Python26/include/Python.h:58,
13117                       from python/python-internal.h:94,
13118                       from python/py-arch.c:24:
13119              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
13120         using ::hypot;
13121                 ^~~~~
13122
13123         This happens because Python headers define 'hypot' to expand t
13124         '_hypot' in the Windows builds.
13125         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
13126         'hypoth'.  This avoids a compilation error.
13127
13128 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13129
13130         * MAINTAINERS (Write After Approval): Fix ordering.
13131
13132 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13133
13134         * MAINTAINERS (Write After Approval): Add Alan Hayward.
13135
13136 2018-01-26  Alan Modra  <amodra@gmail.com>
13137
13138         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
13139         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
13140         Remove nop.  Make const.  Comment.
13141         (powerpc32_plt_stub_so_2): New.
13142         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
13143         Correct count.  Update uses.
13144         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
13145         Move common code reading PLT entry word.  Correct
13146         powerpc32_plt_stub PLT address calculation.
13147         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
13148         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
13149         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
13150         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
13151         (ppc64_standard_linkage8): Likewise.
13152         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
13153         Correct insns description.
13154         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
13155
13156 2018-01-24  Pedro Alves  <palves@redhat.com>
13157
13158         GCC PR libstdc++/83906
13159         * gdbtypes.c (operator==(const dynamic_prop &,
13160         const dynamic_prop &)): New.
13161         (operator==(const range_bounds &, const range_bounds &)): New.
13162         (check_types_equal): Use them instead of memcmp.
13163         * gdbtypes.h (operator==(const dynamic_prop &,
13164         const dynamic_prop &)): Declare.
13165         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
13166         (operator==(const range_bounds &, const range_bounds &)): Declare.
13167         (operator!=(const range_bounds &, const range_bounds &)): Declare.
13168
13169 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13170
13171         * s390-linux-tdep.c (s390_record_address_mask)
13172         (s390_record_calc_disp_common, s390_record_calc_disp)
13173         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13174         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13175         (s390_process_record): Move to s390-tdep.c.
13176         (s390_linux_init_abi_any): Adjust.
13177         * s390-tdep.c (s390_record_address_mask)
13178         (s390_record_calc_disp_common, s390_record_calc_disp)
13179         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13180         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13181         (s390_process_record): Moved from s390-linux-tdep.c
13182         (s390_gdbarch_init): Adjust.
13183
13184 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13185
13186         * s390-linux-nat.c (s390-tdep.h): New include.
13187         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
13188         (HFILES_NO_SRCDIR): Add s390-tdep.h.
13189         (ALLDEPFILES): Add s390-tdep.c.
13190         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
13191         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
13192         * s390-tdep.h: ...this.  New file.
13193         * s390-linux-tdep.c (s390-tdep.h): New include.
13194         (_initialize_s390_tdep): Rename to...
13195         (_initialize_s390_linux_tdep): ...this and adjust.
13196         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
13197         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
13198         s390-tdep.h.
13199         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
13200         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
13201         (s390_is_partial_instruction, s390_software_single_step)
13202         (is_non_branch_ril, s390_displaced_step_copy_insn)
13203         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
13204         (s390_prologue_data, s390_addr, s390_store, s390_load)
13205         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
13206         (s390_register_call_saved, s390_guess_tracepoint_registers)
13207         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
13208         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
13209         (s390_pseudo_register_name, s390_pseudo_register_type)
13210         (s390_pseudo_register_read, s390_pseudo_register_write)
13211         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
13212         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
13213         (s390_addr_bits_remove, s390_address_class_type_flags)
13214         (s390_address_class_type_flags_to_name)
13215         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
13216         (s390_function_arg_float, s390_function_arg_vector)
13217         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
13218         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
13219         (s390_frame_align, s390_register_return_value, s390_return_value)
13220         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
13221         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
13222         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
13223         (s390_trad_frame_prev_register, s390_unwind_cache)
13224         (s390_prologue_frame_unwind_cache)
13225         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
13226         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
13227         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
13228         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
13229         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
13230         (s390_frame_base_address, s390_local_base_address)
13231         (s390_frame_base, s390_gcc_target_options)
13232         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
13233         (s390_validate_reg_range, s390_tdesc_valid)
13234         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
13235         * s390-tdep.c: ...this.  New file.
13236
13237 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13238
13239         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
13240         (s390_process_record, s390_gdbarch_tdep_alloc)
13241         (s390_linux_init_abi_any): Use/set new hook.
13242
13243 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13244
13245         * s390-linux-tdep.c (osabi.h): New include.
13246         (s390_linux_init_abi_31, s390_linux_init_abi_64)
13247         (s390_linux_init_abi_any): New functions.
13248         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
13249
13250 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13251
13252         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
13253         tdesc_has_registers check
13254
13255 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13256
13257         * s390-linux-tdep.c (s390_tdesc_valid): New function.
13258         (s390_validate_reg_range): New macro.
13259         (s390_gdbarch_init): Adjust.
13260
13261 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13262
13263         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
13264         (s390_gdbarch_tdep_alloc): Adjust.
13265         (s390_gdbarch_init): Adjust.
13266
13267 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13268
13269         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
13270         <have_tdb>: Change type to bool.
13271         (s390_gdbarch_tdep_alloc): Adjust.
13272         (s390_gdbarch_init): Adjust.
13273
13274 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13275
13276         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
13277         (gdbarch_tdep) <have_upper, have_vx>: New fields.
13278         (s390_gdbarch_tdep_alloc): New function.
13279         (s390_gdbarch_init): Allocate tdep at start and use its fields
13280         instead of separate variables.
13281
13282 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13283
13284         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
13285         when looking for cached gdbarch and add comment for remaining.
13286
13287 2018-01-22  Pedro Alves  <palves@redhat.com>
13288             Sergio Durigan Junior  <sergiodj@redhat.com>
13289
13290         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
13291         case.
13292
13293 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
13294
13295         * MAINTAINERS: Update my company e-mail address.
13296
13297 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13298
13299         * regcache.c (cooked_write_test): New function.
13300         (_initialize_regcache): Register the test.
13301
13302 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13303
13304         * ia64-tdep.c (ia64_pseudo_register_read): Call
13305         regcache->cooked_read instead of regcache_cooked_read_unsigned.
13306         * m32c-tdep.c (m32c_cat_read): Likewise.
13307         (m32c_r3r2r1r0_read): Likewise.
13308         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13309         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13310
13311 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13312
13313         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
13314         method raw_read instead of regcache_raw_read.
13315         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13316         * arm-tdep.c (arm_neon_quad_read): Likewise.
13317         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13318         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13319         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13320         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
13321         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13322         (i386_pseudo_register_read_into_value): Likewise.
13323         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13324         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13325         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13326         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
13327         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
13328         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
13329         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13330         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
13331         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
13332
13333 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13334
13335         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
13336         * configure.tgt: Remove target mt.
13337         * mt-tdep.c: Remove.
13338         * regcache.c (cooked_read_test): Remove the check for mt.
13339
13340 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13341
13342         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
13343         instead of gdbarch_pseudo_register_read_value.
13344
13345 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13346
13347         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
13348         language is Ada.
13349
13350 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13351
13352         * linespec.c (create_sals_line_offset): Remove code that preserved
13353         the symtab_and_line's line number.
13354
13355 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13356
13357         * varobj.c (varobj_create): Don't set valid_block when creating a
13358         floating varobj.
13359
13360 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13361
13362         * varobj.c (varobj_create): Remove out of date comment.
13363
13364 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13365
13366         PR mi/20395
13367         * ada-exp.y (write_var_from_sym): Pass extra parameter when
13368         updating innermost block.
13369         * parse.c (innermost_block_tracker::update): Take extra type
13370         parameter, and check types match before updating innermost block.
13371         (write_dollar_variable): Update innermost block for registers.
13372         * parser-defs.h (enum innermost_block_tracker_type): New enum.
13373         (innermost_block_tracker::innermost_block_tracker): Initialise
13374         m_types member.
13375         (innermost_block_tracker::reset): Take type parameter.
13376         (innermost_block_tracker::update): Take type parameter, and pass
13377         type through as needed.
13378         (innermost_block_tracker::m_types): New member.
13379         * varobj.c (varobj_create): Pass type when reseting innermost
13380         block.
13381
13382 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13383
13384         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
13385         * ada-lang.c (resolve_subexp): Likewise.
13386         * breakpoint.c (set_breakpoint_condition) Likewise.
13387         (watch_command_1) Likewise.
13388         * c-exp.y (variable): Likewise.
13389         * d-exp.y (PrimaryExpression): Likewise.
13390         * f-exp.y (variable): Likewise.
13391         * go-exp.y (variable): Likewise.
13392         * m2-exp.y (variable): Likewise.
13393         * objfiles.c (objfile::~objfile): Likewise.
13394         * p-exp.y (variable): Likewise.
13395         * parse.c (innermost_block): Change type.
13396         * parser-defs.h (class innermost_block_tracker): New.
13397         (innermost_block): Change to innermost_block_tracker.
13398         * printcmd.c (display_command): Switch to innermost_block API.
13399         (do_one_display): Likewise.
13400         * rust-exp.y (do_one_display): Likewise.
13401         * symfile.c (clear_symtab_users): Likewise.
13402         * varobj.c (varobj_create): Switch to innermost_block API, replace
13403         use of innermost_block with block stored on varobj object.
13404
13405 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13406
13407         * expression.h (innermost_block): Remove declaration.
13408         * varobj.c: Add 'parser-defs.h' include.
13409
13410 2018-01-19  Tom Tromey  <tom@tromey.com>
13411
13412         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
13413         symbols in the static and global blocks.
13414
13415 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
13416
13417         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
13418         gdb_ptrace.h, and move including gdb_wait.h ...
13419         * nat/linux-ptrace.h: ... to here.
13420
13421 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13422
13423         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
13424         inf_ptrace_detach_success.
13425         (inf_ptrace_detach_success): Add inferior parameter, use it
13426         instead of inferior_ptid, pass it to detach_inferior.
13427         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
13428         parameter.
13429         * inferior.c (detach_inferior): Add overload that takes an
13430         inferior object.
13431         * inferior.h (detach_inferior): Likewise.
13432         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
13433         use inferior_ptid, adjust call to inf_ptrace_detach_success.
13434         * linux-thread-db.c (thread_db_detach): Use inf parameter.
13435
13436 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13437
13438         * target.h (struct target_ops) <to_detach>: Add inferior
13439         parameter.
13440         (target_detach): Likewise.
13441         * target.c (dispose_inferior): Pass inferior down.
13442         (target_detach): Pass inferior down.  Assert that it is equal to
13443         the current inferior.
13444         * aix-thread.c (aix_thread_detach): Pass inferior down.
13445         * corefile.c (core_file_command): Pass current_inferior() down.
13446         * corelow.c (core_detach): Add inferior parameter.
13447         * darwin-nat.c (darwin_detach): Likewise.
13448         * gnu-nat.c (gnu_detach): Likewise.
13449         * inf-ptrace.c (inf_ptrace_detach): Likewise.
13450         * infcmd.c (detach_command): Pass current_inferior() down to
13451         target_detach.
13452         * infrun.c (follow_fork_inferior): Pass parent_inf to
13453         target_detach.
13454         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
13455         target_detach.
13456         * linux-nat.c (linux_nat_detach): Add inferior parameter.
13457         * linux-thread-db.c (thread_db_detach): Likewise.
13458         * nto-procfs.c (procfs_detach): Likewise.
13459         * procfs.c (procfs_detach): Likewise.
13460         * record.c (record_detach): Likewise.
13461         * record.h (struct inferior): Forward-declare.
13462         (record_detach): Add inferior parameter.
13463         * remote-sim.c (gdbsim_detach): Likewise.
13464         * remote.c (remote_detach_1): Likewise.
13465         (remote_detach): Likewise.
13466         (extended_remote_detach): Likewise.
13467         * sol-thread.c (sol_thread_detach): Likewise.
13468         * target-debug.h (target_debug_print_inferior_p): New macro.
13469         * target-delegates.c: Re-generate.
13470         * top.c (kill_or_detach): Pass inferior down to target_detach.
13471         * windows-nat.c (windows_detach): Add inferior parameter.
13472
13473 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13474
13475         * target.h (struct target_ops) <to_detach>: Remove args
13476         parameter.
13477         (target_detach): Likewise.
13478         * target.c (dispose_inferior): Adjust.
13479         (target_detach): Remove args parameter, adjust.
13480         * aix-thread.c (aix_thread_detach): Adjust.
13481         * corefile.c (core_file_command): Adjust.
13482         * corelow.c (core_detach): Adjust.
13483         * darwin-nat.c (darwin_detach): Adjust.
13484         * gnu-nat.c (gnu_detach): Adjust.
13485         * inf-ptrace.c (inf_ptrace_detach): Adjust.
13486         * infcmd.c (detach_command): Adjust
13487         * infrun.c (follow_fork_inferior): Adjust.
13488         (handle_vfork_child_exec_or_exit): Adjust.
13489         * linux-fork.c (linux_fork_detach): Remove args parameter.
13490         * linux-fork.h (linux_fork_detach): Likewise.
13491         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
13492         * linux-thread-db.c (thread_db_detach): Likewise.
13493         * nto-procfs.c (procfs_detach): Likewise.
13494         * procfs.c (procfs_detach): Likewise.
13495         (do_detach): Remove signo parameter.
13496         * record.c (record_detach): Remove args parameter.
13497         * record.h (record_detach): Likewise.
13498         * remote-sim.c (gdbsim_detach): Likewise.
13499         * remote.c (remote_detach_1): Likewise.
13500         (remote_detach): Likewise.
13501         (extended_remote_detach): Likewise.
13502         * sol-thread.c (sol_thread_detach): Likewise.
13503         * target-delegates.c: Re-generate.
13504         * top.c (struct qt_args) <args>: Remove field.
13505         (kill_or_detach): Don't pass args.
13506         (quit_force): Don't set args.
13507         * windows-nat.c (windows_detach): Remove args parameter.
13508
13509 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13510
13511         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
13512         (arm_linux_init_abi): Install it.
13513
13514 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13515
13516         * osabi.c (gdb_osabi_names): Extend the regexp for
13517         arm-linux-gnueabihf.
13518
13519 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13520
13521         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
13522         m_abbrevs.
13523         (abbrev_table::add_abbrev): Update.
13524         (abbrev_table::lookup_abbrev): Update.
13525
13526 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13527
13528         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
13529
13530 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
13531
13532         * compile/compile.c (compile_to_object): Convert "triplet_rx"
13533         to "std::string".
13534
13535 2018-01-17  Tom Tromey  <tom@tromey.com>
13536
13537         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
13538
13539 2018-01-17  Tom Tromey  <tom@tromey.com>
13540
13541         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
13542         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
13543         (create_array_type_with_stride): Update.
13544         * dwarf2read.c (set_die_type): Update.
13545
13546 2018-01-17  Tom Tromey  <tom@tromey.com>
13547
13548         * dwarf2read.c (delayed_method_info): Remove typedef.
13549         (dwarf2_cu::method_info): Now a std::vector.
13550         (add_to_method_list): Update.
13551         (free_delayed_list): Remove.
13552         (compute_delayed_physnames): Update.
13553         (process_full_comp_unit, process_full_type_unit): Clear the method
13554         list.  Remove cleanups.
13555         (psymtab_include_file_name): Add name_holder parameter.  Use
13556         unique_xmalloc_ptr.
13557         (dwarf_decode_lines): Update.
13558
13559 2018-01-17  Tom Tromey  <tom@tromey.com>
13560             Simon Marchi  <simon.marchi@ericsson.com>
13561
13562         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
13563         (dwarf2_per_objfile::free_cached_comp_units)
13564         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13565         (init_cutu_and_read_dies_no_follow): Update.
13566         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
13567         (dwarf2_cu::~dwarf2_cu): New.
13568         (free_heap_comp_unit, free_stack_comp_unit): Remove.
13569         (age_cached_comp_units, free_one_cached_comp_unit): Update.
13570
13571 2018-01-17  Tom Tromey  <tom@tromey.com>
13572             Simon Marchi  <simon.marchi@ericsson.com>
13573
13574         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
13575         (struct die_reader_specs) <abbrev_table>: New member.
13576         (struct abbrev_table): Add constructor.
13577         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
13578         <abbrev_obstack>: Now an auto_obstack.
13579         (abbrev_table_up): New typedef.
13580         (init_cu_die_reader): Add abbrev_table parameter.
13581         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
13582         Add result_dwo_abbrev_table.
13583         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13584         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
13585         Update.
13586         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
13587         parameter.
13588         (skip_children): Update.
13589         (abbrev_table::alloc_abbrev): Rename from
13590         abbrev_table_alloc_abbrev.
13591         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
13592         (abbrev_table::lookup_abbrev): Rename from
13593         abbrev_table_lookup_abbrev.
13594         (abbrev_table_read_table): Return abbrev_table_up.
13595         (abbrev_table_free, abbrev_table_free_cleanup)
13596         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
13597         (load_partial_dies): Update.
13598
13599 2018-01-17  Tom Tromey  <tom@tromey.com>
13600
13601         * dwarf2read.c (dwarf2_compute_name): Update comment.
13602         (read_func_scope, read_variable): Update.
13603         (new_symbol): Remove.
13604         (new_symbol_full): Rename to new_symbol.
13605
13606 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
13607
13608         PR gdb/16577
13609         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
13610         a warning instead of throwing an error, set section size to 0 and return
13611         NULL.
13612         * gdb_bfd.h (gdb_bfd_map_section): Update description.
13613
13614 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
13615
13616         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
13617         std::string.
13618         (linux_ptrace_attach_fail_reason_string): Likewise.
13619         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
13620         Likewise.
13621         (linux_ptrace_attach_fail_reason_string): Likewise.
13622         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
13623
13624 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
13625
13626         * linux-nat.c (linux_nat_attach): Remove xstrdup.
13627
13628 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
13629
13630         PR gdb/21559
13631         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
13632         checking for fs_base/gs_base fields in struct user_regs_struct.
13633         * configure: Regenerate.
13634
13635 2018-01-17  Yao Qi  <yao.qi@linaro.org>
13636
13637         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
13638         function.
13639         (aarch64_linux_init_abi): Install it to gdbarch hook
13640         gcc_target_options.
13641
13642 2018-01-15  Pedro Alves  <palves@redhat.com>
13643
13644         * common/signals-state-save-restore.c
13645         (save_original_signals_state): Fix typos.
13646
13647 2017-01-12  Tom Tromey  <tom@tromey.com>
13648             Sergio Durigan Junior  <sergiodj@redhat.com>
13649
13650         * Makefile.in (install-only): Install gdb-add-index.
13651
13652 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
13653
13654         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
13655
13656 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13657
13658         * infrun.c (keep_going_pass_signal): Clear step-over info when
13659         insert_breakpoints fails.
13660
13661 2018-01-11  Pedro Alves  <palves@redhat.com>
13662
13663         PR gdb/22583
13664         * infrun.c (resume): Rename to ...
13665         (resume_1): ... this.
13666         (resume): Reimplement as wrapper around resume_1.
13667
13668 2018-01-11  Pedro Alves  <palves@redhat.com>
13669
13670         PR remote/22597
13671         * remote.c (remote_parse_stop_reply): Default to the last-set
13672         general thread instead of to 'magic_null_ptid'.
13673
13674 2018-01-10  Pedro Alves  <palves@redhat.com>
13675
13676         * language.h (language_get_symbol_name_matcher): Rename ...
13677         (get_symbol_name_matcher): ... this.
13678         * language.c (language_get_symbol_name_matcher): Ditto.
13679         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
13680         callers adjusted.
13681
13682 2018-01-10  Pedro Alves  <palves@redhat.com>
13683
13684         PR gdb/22670
13685         * dwarf2read.c
13686         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
13687         Adjust to use language_get_symbol_name_matcher instead of
13688         language_defn::la_get_symbol_name_matcher.
13689         * language.c (language_get_symbol_name_matcher): If in Ada mode
13690         and the lookup name is a verbatim match, return Ada's matcher.
13691         * language.h (language_get_symbol_name_matcher): Adjust comment.
13692         (ada_lookup_name_info::verbatim_p):: New method.
13693
13694 2018-01-10  Pedro Alves  <palves@redhat.com>
13695
13696         PR gdb/22670
13697         * ada-lang.c (ada_collect_symbol_completion_matches): If the
13698         minsym's language is language_auto or language_cplus, pass down
13699         language_ada instead.
13700         * symtab.c (compare_symbol_name): Don't frob symbol language here.
13701
13702 2018-01-10  Pedro Alves  <palves@redhat.com>
13703
13704         PR gdb/22670
13705         * minsyms.c (linkage_name_str): New function.
13706         (iterate_over_minimal_symbols): Use it.
13707
13708 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13709
13710         * NEWS: Document that 'info proc' now works on FreeBSD.
13711
13712 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13713
13714         * configure.ac: Check for kinfo_getfile in libutil.
13715         * configure: Regenerate.
13716         * config.in: Regenerate.
13717         * fbsd-nat.c: Include "fbsd-tdep.h".
13718         (fbsd_fetch_cmdline): New.
13719         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
13720         rather than calling error.
13721         (fbsd_info_proc): New.
13722         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
13723         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
13724         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
13725
13726 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13727
13728         * fbsd-nat.c (struct free_deleter): Remove.
13729         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
13730
13731 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13732
13733         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
13734         NULL for an empty pathname.
13735
13736 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13737
13738         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
13739         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
13740         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
13741         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
13742         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
13743         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
13744         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
13745         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
13746         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
13747         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
13748         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
13749         (fbsd_core_fetch_timeval, fbsd_print_sigset)
13750         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
13751         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
13752         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
13753
13754 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
13755
13756         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
13757         (gnu_xfer_auxv): New function.
13758         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
13759         TARGET_OBJECT_AUXV.
13760
13761 2018-01-08  Yao Qi  <yao.qi@linaro.org>
13762             Simon Marchi  <simon.marchi@ericsson.com>
13763
13764         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
13765         common/selftest.c.
13766         (COMMON_OBS): Remove selftest.o.
13767         * configure.ac: Append selftest-arch.c and common/selftest.c to
13768         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
13769         * configure: Re-generated.
13770         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
13771         GDB_SELF_TEST.
13772         (maintenance_info_selftests): Likewise.
13773
13774 2018-01-08  Xavier Roirand  <roirand@adacore.com>
13775
13776         * ada-valprint.c (val_print_packed_array_elements): Use
13777         proper number of elements when printing an array indexed
13778         by an enumeration type.
13779
13780 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13781
13782         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
13783         (dw2_get_file_names_reader): Adjust.
13784         (lookup_dwo_signatured_type): Adjust.
13785         (lookup_dwp_signatured_type): Adjust.
13786         (lookup_signatured_type): Adjust.
13787         (create_type_unit_group): Adjust.
13788         (get_type_unit_group): Adjust.
13789         (process_psymtab_comp_unit_reader): Adjust.
13790         (build_type_psymtabs_reader): Adjust.
13791         (scan_partial_symbols): Adjust.
13792         (add_partial_symbol): Adjust.
13793         (add_partial_subprogram): Adjust.
13794         (peek_die_abbrev): Adjust.
13795         (fixup_go_packaging): Adjust.
13796         (process_imported_unit_die): Adjust.
13797         (dwarf2_compute_name): Adjust.
13798         (dwarf2_physname): Adjust.
13799         (read_import_statement): Adjust.
13800         (handle_DW_AT_stmt_list): Adjust.
13801         (read_file_scope): Adjust.
13802         (read_func_scope): Adjust.
13803         (read_lexical_block_scope): Adjust.
13804         (read_call_site_scope): Adjust.
13805         (read_variable): Adjust.
13806         (dwarf2_rnglists_process): Adjust.
13807         (dwarf2_ranges_process): Adjust.
13808         (dwarf2_ranges_read): Adjust.
13809         (dwarf2_get_pc_bounds): Adjust.
13810         (dwarf2_record_block_ranges): Adjust.
13811         (dwarf2_add_field): Adjust.
13812         (dwarf2_add_member_fn): Adjust.
13813         (read_structure_type): Adjust.
13814         (process_structure_scope): Adjust.
13815         (read_enumeration_type): Adjust.
13816         (read_array_type): Adjust.
13817         (mark_common_block_symbol_computed): Adjust.
13818         (read_common_block): Adjust.
13819         (read_namespace_type): Adjust.
13820         (read_namespace): Adjust.
13821         (read_module_type): Adjust.
13822         (read_tag_pointer_type): Adjust.
13823         (read_tag_ptr_to_member_type): Adjust.
13824         (read_tag_string_type): Adjust.
13825         (read_subroutine_type): Adjust.
13826         (read_typedef): Adjust.
13827         (read_base_type): Adjust.
13828         (attr_to_dynamic_prop): Adjust.
13829         (read_subrange_type): Adjust.
13830         (read_unspecified_type): Adjust.
13831         (dwarf2_read_abbrevs): Adjust.
13832         (load_partial_dies): Adjust.
13833         (read_partial_die): Adjust.
13834         (find_partial_die): Adjust.
13835         (guess_partial_die_structure_name): Adjust.
13836         (fixup_partial_die): Adjust.
13837         (read_attribute_value): Adjust.
13838         (read_addr_index): Adjust.
13839         (read_addr_index_from_leb128): Adjust.
13840         (read_str_index): Adjust.
13841         (dwarf2_string_attr): Adjust.
13842         (get_debug_line_section): Adjust.
13843         (dwarf_decode_line_header): Adjust.
13844         (lnp_state_machine::check_line_address): Adjust.
13845         (dwarf_decode_lines_1): Adjust.
13846         (dwarf_decode_lines): Adjust.
13847         (dwarf2_start_symtab): Adjust.
13848         (var_decode_location): Adjust.
13849         (new_symbol_full): Adjust.
13850         (dwarf2_const_value_data): Adjust.
13851         (dwarf2_const_value_attr): Adjust.
13852         (dwarf2_const_value): Adjust.
13853         (die_type): Adjust.
13854         (die_containing_type): Adjust.
13855         (build_error_marker_type): Adjust.
13856         (lookup_die_type): Adjust.
13857         (guess_full_die_structure_name): Adjust.
13858         (anonymous_struct_prefix): Adjust.
13859         (determine_prefix): Adjust.
13860         (dwarf2_name): Adjust.
13861         (follow_die_ref_or_sig): Adjust.
13862         (follow_die_offset): Adjust.
13863         (follow_die_ref): Adjust.
13864         (follow_die_sig_1): Adjust.
13865         (follow_die_sig): Adjust.
13866         (get_signatured_type): Adjust.
13867         (get_DW_AT_signature_type): Adjust.
13868         (decode_locdesc): Adjust.
13869         (dwarf_decode_macros): Adjust.
13870         (cu_debug_loc_section): Adjust.
13871         (fill_in_loclist_baton): Adjust.
13872         (dwarf2_symbol_mark_computed): Adjust.
13873         (init_one_comp_unit): Don't assign
13874         dwarf2_cu::dwarf2_per_objfile.
13875         (set_die_type): Adjust.
13876
13877 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
13878
13879         * dwarf2read.c (struct mapped_debug_names): Add constructor.
13880         <dwarf2_per_objfile>: New field.
13881         (dwarf2_per_objfile): Remove global.
13882         (get_dwarf2_per_objfile): New function.
13883         (set_dwarf2_per_objfile): New function.
13884         (dwarf2_build_psymtabs_hard): Change objfile parameter to
13885         dwarf2_per_objfile.
13886         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
13887         (read_abbrev_offset): Likewise.
13888         (read_indirect_string): Likewise.
13889         (read_indirect_line_string): Likewise.
13890         (read_indirect_string_at_offset): Likewise.
13891         (read_indirect_string_from_dwz): Likewise.
13892         (dwarf2_find_containing_comp_unit): Change objfile parameter to
13893         dwarf2_per_objfile.
13894         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
13895         (create_all_comp_units): Change objfile parameter to
13896         dwarf2_per_objfile.
13897         (create_all_type_units): Likewise.
13898         (process_queue): Add dwarf2_per_objfile parameter.
13899         (read_and_check_comp_unit_head): Likewise.
13900         (lookup_dwo_unit_in_dwp): Likewise.
13901         (get_dwp_file): Likewise.
13902         (process_cu_includes): Likewise.
13903         (struct free_dwo_file_cleanup_data): New struct.
13904         (dwarf2_has_info): Use get_dwarf2_per_objfile and
13905         set_dwarf2_per_objfile.
13906         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
13907         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
13908         context, adjust calls.
13909         (dw2_instantiate_symtab): Likewise.
13910         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
13911         (dw2_get_cu): Likewise.
13912         (create_cu_from_index_list): Change objfile parameter to
13913         dwarf2_per_objfile.
13914         (create_cus_from_index_list): Get dwarf2_per_objfile from
13915         context, adjust calls.
13916         (create_cus_from_index): Likewise.
13917         (create_signatured_type_table_from_index): Change objfile
13918         parameter to dwarf2_per_objfile.
13919         (create_signatured_type_table_from_debug_names): Change objfile
13920         parameter to dwarf2_per_objfile.
13921         (create_addrmap_from_index): Likewise.
13922         (create_addrmap_from_aranges): Likewise.
13923         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
13924         (dw2_setup): Remove.
13925         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
13926         context.
13927         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
13928         get_dwarf2_per_objfile.
13929         (dw2_forget_cached_source_info): Likewise.
13930         (dw2_map_symtabs_matching_filename): Likewise.
13931         (struct dw2_symtab_iterator) <index>: Remove.
13932         <dwarf2_per_objfile>: New field.
13933         (dw2_symtab_iter_init): Replace index parameter with
13934         dwarf2_per_objfile.
13935         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
13936         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
13937         (dw2_print_stats): Likewise.
13938         (dw2_dump): Likewise.
13939         (dw2_expand_symtabs_for_function): Likewise.
13940         (dw2_expand_all_symtabs): Likewise.
13941         (dw2_expand_symtabs_with_fullname): Likewise.
13942         (dw2_expand_marked_cus): Replace index and objfile parameters
13943         with dwarf2_per_objfile.
13944         (dw_expand_symtabs_matching_file_matcher): Add
13945         dwarf2_per_objfile parameter and adjust calls.
13946         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
13947         adjust calls.
13948         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
13949         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
13950         adjust calls.
13951         (create_cus_from_debug_names_list): Replace objfile parameter
13952         with dwarf2_per_objfile and adjust calls.
13953         (create_cus_from_debug_names): Likewise.
13954         (dwarf2_read_debug_names): Likewise.
13955         (mapped_debug_names::namei_to_name): Adjust call.
13956         (dw2_debug_names_iterator::next): Likewise.
13957         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
13958         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
13959         (dw2_debug_names_dump): Likewise.
13960         (dw2_debug_names_expand_symtabs_for_function): Likewise.
13961         (dw2_debug_names_expand_symtabs_matching): Likewise.
13962         (dwarf2_initialize_objfile): Likewise.
13963         (dwarf2_build_psymtabs): Likewise.
13964         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
13965         this_cu.
13966         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
13967         (read_and_check_comp_unit_head): Likewise.
13968         (read_abbrev_offset): Likewise.
13969         (create_debug_type_hash_table): Likewise.
13970         (create_debug_types_hash_table): Likewise.
13971         (create_all_type_units): Replace objfile parameter with
13972         dwarf2_per_objfile.
13973         (add_type_unit): Add dwarf2_per_objfile parameter.
13974         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
13975         with dwarf2_per_objfile.
13976         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
13977         (lookup_dwp_signatured_type): Likewise.
13978         (lookup_signatured_type): Likewise.
13979         (read_cutu_die_from_dwo): Likewise.
13980         (init_tu_and_read_dwo_dies): Likewise.
13981         (init_cutu_and_read_dies): Likewise.
13982         (init_cutu_and_read_dies_no_follow): Likewise.
13983         (allocate_type_unit_groups_table): Add objfile parameter.
13984         (create_type_unit_group): Use dwarf2_per_objfile from cu.
13985         (get_type_unit_group): Likewise.
13986         (process_psymtab_comp_unit): Update call.
13987         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
13988         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
13989         (print_tu_stats): Likewise.
13990         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
13991         in void* parameter.
13992         (build_type_psymtabs): Change objfile parameter to
13993         dwarf2_per_objfile.
13994         (process_skeletonless_type_unit): Use dwarf2_per_objfile
13995         passed in void* parameter.
13996         (process_skeletonless_type_units): Change objfile parameter to
13997         dwarf2_per_objfile.
13998         (set_partial_user): Likewise.
13999         (dwarf2_build_psymtabs_hard): Likewise.
14000         (read_comp_units_from_section): Likewise.
14001         (create_all_comp_units): Likewise.
14002         (scan_partial_symbols): Update calls.
14003         (add_partial_symbol): Likewise.
14004         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
14005         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
14006         (process_queue): Add dwarf2_per_objfile parameter.
14007         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
14008         (compute_compunit_symtab_includes): Likewise.
14009         (process_cu_includes): Add dwarf2_per_objfile parameter.
14010         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
14011         (process_full_type_unit): Likewise.
14012         (process_imported_unit_die): Update call.
14013         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
14014         (read_file_scope): Likewise.
14015         (allocate_dwo_file_hash_table): Add objfile parameter.
14016         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
14017         (create_cus_hash_table): Likewise.
14018         (create_dwp_hash_table): Likewise.
14019         (create_dwo_unit_in_dwp_v1): Likewise.
14020         (create_dwp_v2_section): Likewise.
14021         (create_dwo_unit_in_dwp_v2): Likewise.
14022         (lookup_dwo_unit_in_dwp): Likewise.
14023         (try_open_dwop_file): Likewise.
14024         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
14025         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
14026         cleanup to include a reference to dwarf2_per_objfile.
14027         (open_dwp_file): Add dwarf2_per_objfile parameter.
14028         (open_and_init_dwp_file): Likewise.
14029         (get_dwp_file): Likewise.
14030         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
14031         (queue_and_load_all_dwo_tus): Update call.
14032         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
14033         data.
14034         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
14035         (dwarf2_ranges_process): Likewise.
14036         (dwarf2_get_pc_bounds): Likewise.
14037         (mark_common_block_symbol_computed): Likewise.
14038         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14039         (dwarf2_read_abbrevs): Update call.
14040         (read_partial_die): Use dwarf2_per_objfile from cu.
14041         (find_partial_die): Likewise.
14042         (fixup_partial_die): Likewise.
14043         (read_attribute_value): Likewise.
14044         (read_indirect_string_at_offset_from): Add objfile parameter.
14045         (read_indirect_string_at_offset): Add dwarf2_per_objfile
14046         parameter.
14047         (read_indirect_string_from_dwz): Add objfile parameter.
14048         (read_indirect_string): Add objfile parameter.
14049         (read_addr_index_1): Add dwarf2_per_objfile parameter.
14050         (read_addr_index): Use dwarf2_per_objfile from cu.
14051         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
14052         call dw2_setup.
14053         (read_str_index): Use dwarf2_per_objfile from cu.
14054         (get_debug_line_section): Likewise.
14055         (read_formatted_entries): Add dwarf2_per_objfile parameter.
14056         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
14057         (new_symbol_full): Use dwarf2_per_objfile from cu.
14058         (build_error_marker_type): Likewise.
14059         (lookup_die_type): Likewise.
14060         (determine_prefix): Likewise.
14061         (follow_die_offset): Likewise.
14062         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
14063         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
14064         (dwarf2_fetch_die_type_sect_off): Likewise.
14065         (dwarf2_get_die_type): Likewise.
14066         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
14067         (get_signatured_type): Likewise.
14068         (get_DW_AT_signature_type): Likewise.
14069         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
14070         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
14071         (cu_debug_loc_section): Likewise.
14072         (fill_in_loclist_baton): Likewise.
14073         (dwarf2_symbol_mark_computed): Likewise.
14074         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14075         dwarf2_per_objfile.
14076         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
14077         parameter.
14078         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14079         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
14080         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
14081         (set_die_type): Use dwarf2_free_objfile from cu.
14082         (get_die_type_at_offset): Likewise.
14083         (dwarf2_per_objfile_free): Don't assign global variable.
14084         (debug_names) <constructor>: Add dwarf2_per_objfile
14085         parameter, update m_debugstrlookup construction.
14086         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
14087         parameter.
14088         <m_dwarf2_per_objfile>: New field.
14089         <lookup>: Use m_dwarf2_per_objfile.
14090         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
14091         (psyms_seen_size): Likewise.
14092         (write_gdbindex): Replace objfile parameter with
14093         dwarf2_per_objfile.
14094         (write_debug_names): Likewise.
14095         (write_psymtabs_to_index): Likewise.
14096         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
14097         calls.
14098
14099 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14100
14101         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
14102         <dwarf2_per_objfile>: New field.
14103         (struct dwarf2_per_cu_data) <objfile>: Remove.
14104         <dwarf2_per_objfile>: New field.
14105         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
14106         of objfile.
14107         (create_signatured_type_table_from_index): Likewise.
14108         (create_debug_type_hash_table): Likewise.
14109         (fill_in_sig_entry_from_dwo_entry): Likewise.
14110         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
14111         (create_type_unit_group): Assign dwarf2_per_objfile instead of
14112         objfile.
14113         (create_partial_symtab): Access objfile through
14114         dwarf2_per_objfile.
14115         (process_psymtab_comp_unit_reader): Likewise.
14116         (read_comp_units_from_section): Likewise.
14117         (scan_partial_symbols): Likewise.
14118         (add_partial_symbol): Likewise.
14119         (add_partial_subprogram): Likewise.
14120         (peek_die_abbrev): Likewise.
14121         (fixup_go_packaging): Likewise.
14122         (process_full_comp_unit): Likewise.
14123         (process_full_type_unit): Likewise.
14124         (process_imported_unit_die): Likewise.
14125         (dwarf2_compute_name): Likewise.
14126         (dwarf2_physname): Likewise.
14127         (read_import_statement): Likewise.
14128         (create_cus_hash_table): Assign dwarf2_physname instead of
14129         objfile.
14130         (read_func_scope): Access objfile through dwarf2_per_objfile.
14131         (read_lexical_block_scope): Likewise.
14132         (read_call_site_scope): Likewise.
14133         (read_variable): Likewise.
14134         (dwarf2_rnglists_process): Likewise.
14135         (dwarf2_ranges_process): Likewise.
14136         (dwarf2_ranges_read): Likewise.
14137         (dwarf2_record_block_ranges): Likewise.
14138         (dwarf2_add_field): Likewise.
14139         (dwarf2_add_member_fn): Likewise.
14140         (read_structure_type): Likewise.
14141         (process_structure_scope): Likewise.
14142         (read_enumeration_type): Likewise.
14143         (read_array_type): Likewise.
14144         (read_common_block): Likewise.
14145         (read_namespace_type): Likewise.
14146         (read_namespace): Likewise.
14147         (read_module_type): Likewise.
14148         (read_tag_pointer_type): Likewise.
14149         (read_tag_ptr_to_member_type): Likewise.
14150         (read_tag_string_type): Likewise.
14151         (read_subroutine_type): Likewise.
14152         (read_typedef): Likewise.
14153         (read_base_type): Likewise.
14154         (attr_to_dynamic_prop): Likewise.
14155         (read_subrange_type): Likewise.
14156         (read_unspecified_type): Likewise.
14157         (load_partial_dies): Likewise.
14158         (read_partial_die): Likewise.
14159         (find_partial_die): Likewise.
14160         (guess_partial_die_structure_name): Likewise.
14161         (fixup_partial_die): Likewise.
14162         (read_attribute_value): Likewise.
14163         (read_addr_index_from_leb128): Likewise.
14164         (dwarf2_read_addr_index): Likewise.
14165         (dwarf2_string_attr): Likewise.
14166         (lnp_state_machine::check_line_address): Likewise.
14167         (dwarf_decode_lines_1): Likewise.
14168         (dwarf_decode_lines): Likewise.
14169         (dwarf2_start_symtab): Likewise.
14170         (var_decode_location): Likewise.
14171         (new_symbol_full): Likewise.
14172         (dwarf2_const_value_data): Likewise.
14173         (dwarf2_const_value_attr): Likewise.
14174         (dwarf2_const_value): Likewise.
14175         (die_type): Likewise.
14176         (die_containing_type): Likewise.
14177         (lookup_die_type): Likewise.
14178         (guess_full_die_structure_name): Likewise.
14179         (anonymous_struct_prefix): Likewise.
14180         (dwarf2_name): Likewise.
14181         (follow_die_ref_or_sig): Likewise.
14182         (follow_die_offset): Likewise.
14183         (follow_die_ref): Likewise.
14184         (dwarf2_fetch_die_loc_sect_off): Likewise.
14185         (dwarf2_fetch_constant_bytes): Likewise.
14186         (dwarf2_fetch_die_type_sect_off): Likewise.
14187         (dwarf2_get_die_type): Likewise.
14188         (follow_die_sig): Likewise.
14189         (decode_locdesc): Likewise.
14190         (dwarf2_per_cu_objfile): Likewise.
14191         (dwarf2_per_cu_text_offset): Likewise.
14192         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
14193         objfile.
14194         (set_die_type): Access objfile through
14195         dwarf2_per_objfile.
14196
14197 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14198
14199         * valprint.c (converted_character_d): Remove typedef.
14200         (DEF_VEC_O (converted_character_d)): Remove.
14201         (count_next_character): Use std::vector.
14202         (print_converted_chars_to_obstack): Likewise.
14203         (generic_printstr): Likewise.
14204
14205 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14206
14207         * xml-support.h (struct gdb_xml_value): Add constructor.
14208         <value>: Change type to unique_xmalloc_ptr.
14209         (gdb_xml_value_s): Remove typedef.
14210         (DEF_VEC_O (gdb_xml_value_s)): Remove.
14211         (gdb_xml_element_start_handler): Change parameter type to
14212         std::vector.
14213         (xml_find_attribute): Likewise.
14214         * xml-support.c (xml_find_attribute): Change parameter type to
14215         std::vector and adjust.
14216         (gdb_xml_values_cleanup): Remove.
14217         (gdb_xml_parser::start_element): Adjust to std::vector.
14218         (xinclude_start_include): Change paraeter type to std::vector
14219         and adjust.
14220         * btrace.c (check_xml_btrace_version): Likewise.
14221         (parse_xml_btrace_block): Likewise.
14222         (parse_xml_btrace_pt_config_cpu): Likewise.
14223         (parse_xml_btrace_pt): Likewise.
14224         (parse_xml_btrace_conf_bts): Likewise.
14225         (parse_xml_btrace_conf_pt): Likewise.
14226         * memory-map.c (memory_map_start_memory): Likewise.
14227         (memory_map_start_property): Likewise.
14228         * osdata.c (osdata_start_osdata): Likewise.
14229         (osdata_start_item): Likewise.
14230         (osdata_start_column): Likewise.
14231         * remote.c (start_thread): Likewise.
14232         * solib-aix.c (library_list_start_library): Likewise.
14233         (library_list_start_list): Likewise.
14234         * solib-svr4.c (library_list_start_library): Likewise.
14235         (svr4_library_list_start_list): Likewise.
14236         * solib-target.c (library_list_start_segment): Likewise.
14237         (library_list_start_section): Likewise.
14238         (library_list_start_library): Likewise.
14239         (library_list_start_list): Likewise.
14240         * tracepoint.c (traceframe_info_start_memory): Likewise.
14241         (traceframe_info_start_tvar): Likewise.
14242         * xml-syscall.c (syscall_start_syscall): Likewise.
14243         * xml-tdesc.c (tdesc_start_target): Likewise.
14244         (tdesc_start_feature): Likewise.
14245         (tdesc_start_reg): Likewise.
14246         (tdesc_start_union): Likewise.
14247         (tdesc_start_struct): Likewise.
14248         (tdesc_start_flags): Likewise.
14249         (tdesc_start_enum): Likewise.
14250         (tdesc_start_field): Likewise.
14251         (tdesc_start_enum_value): Likewise.
14252         (tdesc_start_vector): Likewise.
14253
14254 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14255
14256         * extension.h (struct xmethod_worker) <clone>: Remove.
14257         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
14258         Remove.
14259         (python_xmethod_worker::clone): Remove.
14260         * valops.c (find_overload_match): Use std::move instead of
14261         clone.
14262
14263 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14264
14265         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
14266         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
14267         <free_xmethod_worker_data>: Remove.
14268         <get_matching_xmethod_workers>: Chance VEC to std::vector.
14269         <get_xmethod_arg_types>: Remove.
14270         <get_xmethod_result_type>: Remove.
14271         <invoke_xmethod>: Remove.
14272         * extension.c (new_xmethod_worker): Remove.
14273         (clone_xmethod_worker): Remove.
14274         (get_matching_xmethod_workers): Return void, pass std::vector by
14275         pointer.
14276         (get_xmethod_arg_types): Rename to...
14277         (xmethod_worker::get_arg_types): ... this, and adjust.
14278         (get_xmethod_result_type): Rename to...
14279         (xmethod_worker::get_result_type): ... this, and adjust.
14280         (invoke_xmethod): Remove.
14281         (free_xmethod_worker): Remove.
14282         (free_xmethod_worker_vec): Remove.
14283         * extension.h (enum ext_lang_rc): Move here from
14284         extension-priv.h.
14285         (struct xmethod_worker): Add constructor and destructor.
14286         <data>: Remove.
14287         <value>: Remove.
14288         <invoke, clone, do_get_result_type, do_get_arg_types>: New
14289         virtual pure methods.
14290         <get_arg_types, get_result_type>: New methods.
14291         (xmethod_worker_ptr): Remove typedef.
14292         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
14293         (xmethod_worker_vec): Remove typedef.
14294         (xmethod_worker_up): New typedef.
14295         (invoke_xmethod): Remove.
14296         (clone_xmethod_worker): Remove.
14297         (free_xmethod_worker): Remove.
14298         (free_xmethod_worker_vec): Remove.
14299         (get_xmethod_arg_types): Remove.
14300         (get_xmethod_result_type): Remove.
14301         * valops.c (find_method_list): Use std::vector, don't use
14302         intermediate vector.
14303         (value_find_oload_method_list): Use std::vector.
14304         (find_overload_match): Use std::vector.
14305         (find_oload_champ): Use std::vector.
14306         * value.c (value_free): Use operator delete.
14307         (value_of_xmethod): Rename to...
14308         (value_from_xmethod): ... this.  Don't assign
14309         xmethod_worker::value, take rvalue-reference.
14310         (result_type_of_xmethod): Adjust.
14311         (call_xmethod): Adjust.
14312         * value.h: Include extension.h.
14313         (struct xmethod_worker): Don't forward-declare.
14314         (value_of_xmethod): Rename to...
14315         (value_from_xmethod): ... this, take rvalue-reference.
14316         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
14317         (struct python_xmethod_worker): ... this, add constructor and
14318         destructor.
14319         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
14320         (gdbpy_free_xmethod_worker_data): Rename to...
14321         (python_xmethod_worker::~python_xmethod_worker): ... this and
14322         adjust.
14323         (gdbpy_clone_xmethod_worker_data): Rename to...
14324         (python_xmethod_worker::clone): ... this and adjust.
14325         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
14326         temporary vector.
14327         (gdbpy_get_xmethod_arg_types): Rename to...
14328         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
14329         (gdbpy_get_xmethod_result_type): Rename to...
14330         (python_xmethod_worker::do_get_result_type): ... this and
14331         adjust.
14332         (gdbpy_invoke_xmethod): Rename to...
14333         (python_xmethod_worker::invoke): ... this and adjust.
14334         (new_python_xmethod_worker): Rename to...
14335         (python_xmethod_worker::python_xmethod_worker): ... this and
14336         adjust.
14337         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
14338         Remove.
14339         (gdbpy_free_xmethod_worker_data): Remove.
14340         (gdbpy_get_matching_xmethod_workers): Use std::vector.
14341         (gdbpy_get_xmethod_arg_types): Remove.
14342         (gdbpy_get_xmethod_result_type): Remove.
14343         (gdbpy_invoke_xmethod): Remove.
14344         * python/python.c (python_extension_ops): Remove obsolete
14345         callbacks.
14346
14347 2018-01-05  Pedro Alves  <palves@redhat.com>
14348
14349         PR gdb/18653
14350         * common/signals-state-save-restore.c
14351         (save_original_signals_state): New parameter 'quiet'.  Warn if we
14352         find a custom handler preinstalled, instead of internal erroring.
14353         But only warn if !quiet.
14354         * common/signals-state-save-restore.h
14355         (save_original_signals_state): New parameter 'quiet'.
14356         * main.c (captured_main_1): Move save_original_signals_state call
14357         after option handling, and pass QUIET.
14358
14359 2018-01-05  Pedro Alves  <palves@redhat.com>
14360
14361         * spu-tdep.c (spu_catch_start): Pass
14362         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
14363
14364 2018-01-05  Pedro Alves  <palves@redhat.com>
14365
14366         PR gdb/22670
14367         * ada-lang.c (literal_symbol_name_matcher): New function.
14368         (ada_get_symbol_name_matcher): Use it for
14369         symbol_name_match_type::SEARCH_NAME.
14370         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
14371         it down instead of assuming symbol_name_match_type::FULL.
14372         * block.h (block_lookup_symbol): New parameter 'match_type'.
14373         * c-valprint.c (print_unpacked_pointer): Use
14374         lookup_symbol_search_name instead of lookup_symbol.
14375         * compile/compile-object-load.c (get_out_value_type): Pass down
14376         symbol_name_match_type::SEARCH_NAME.
14377         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
14378         symbol_name_match_type::FULL.
14379         * cp-support.c (cp_get_symbol_name_matcher): Handle
14380         symbol_name_match_type::SEARCH_NAME.
14381         * infrun.c (insert_exception_resume_breakpoint): Use
14382         lookup_symbol_search_name.
14383         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
14384         * psymtab.c (maintenance_check_psymtabs): Use
14385         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
14386         * stack.c (print_frame_args): Use lookup_symbol_search_name and
14387         SYMBOL_SEARCH_NAME.
14388         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
14389         if symbol_name_match_type::SEARCH_NAME.
14390         (lookup_symbol_in_language): Pass down
14391         symbol_name_match_type::FULL.
14392         (lookup_symbol_search_name): New.
14393         (lookup_language_this): Pass down
14394         symbol_name_match_type::SEARCH_NAME.
14395         (lookup_symbol_aux, lookup_local_symbol): New parameter
14396         'match_type'.  Pass it down.
14397         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
14398         (lookup_symbol_search_name): New declaration.
14399         (lookup_symbol_in_block): New 'match_type' parameter.
14400
14401 2018-01-05  Pedro Alves  <palves@redhat.com>
14402
14403         PR gdb/22670
14404         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
14405         ada_lookup_symbol.
14406         (ada_lookup_symbol): Reimplement in terms of
14407         ada_lookup_symbol_list, bits factored out from
14408         ada_lookup_encoded_symbol.
14409
14410 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14411
14412         * ada-exp.y (write_object_renaming): When subscripting an array
14413         using a symbol as the index, pass the block in call to
14414         ada_lookup_encoded_symbol when looking that symbol up.
14415
14416 2018-01-05  Jerome Guitton  <guitton@adacore.com>
14417
14418         * ada-lang.c (ada_array_length): Use ada_index_type instead of
14419         TYPE_INDEX_TYPE.
14420
14421 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14422
14423         * ada-lang.c (ada_to_fixed_value_create): Add handling of
14424         the case where VALUE_LVAL (val0) is not lval_memory.
14425
14426 2018-01-05  Xavier Roirand  <roirand@adacore.com>
14427
14428         * ada-valprint.c (print_optional_low_bound): Handle
14429         character-indexed array printing like boolean-indexed array
14430         printing.
14431
14432 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14433
14434         * NEWS: Create a new section for the next release branch.
14435         Rename the section of the current branch, now that it has
14436         been cut.
14437
14438 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14439
14440         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
14441         * version.in: Bump version to 8.1.50.DATE-git.
14442
14443 2018-01-03  Xavier Roirand  <roirand@adacore.com>
14444
14445         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
14446         Add field.
14447         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
14448         Add field.
14449         (default_exception_support_info) <catch_handlers_sym>: Add field.
14450         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
14451         (ada_exception_name_addr_1): Add "catch handlers" handling.
14452         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
14453         Update all callers.
14454         (create_excep_cond_exprs) <ex>: Add parameter.
14455         (re_set_exception): Update create_excep_cond_exprs call.
14456         (print_it_exception, print_one_exception, print_mention_exception)
14457         (print_recreate_exception): Add "catch handler" handling.
14458         (allocate_location_catch_handlers, re_set_catch_handlers)
14459         (check_status_catch_handlers, print_it_catch_handlers)
14460         (print_one_catch_handlers, print_mention_catch_handlers)
14461         (print_recreate_catch_handlers): New function.
14462         (catch_handlers_breakpoint_ops): New variable.
14463         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
14464         Add parameter.  Add "catch handler" handling.
14465         (ada_exception_sym_name, ada_exception_breakpoint_ops):
14466         Add "catch handler" handling.
14467         (ada_exception_catchpoint_cond_string): Add "catch handler"
14468         handling.
14469         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
14470         call.
14471         (catch_ada_handlers_command): New function.
14472         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
14473         operations structure.
14474         (_initialize_ada_language): Add "catch handlers" command entry.
14475         * NEWS: Document "catch handlers" feature.
14476
14477 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14478
14479         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
14480         account when creating the array type of the slice.
14481         (ada_value_slice): Likewise.
14482
14483 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14484
14485         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
14486         New enum value.
14487         (create_array_type_with_stride): Add byte_stride_prop parameter.
14488         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
14489         New parameter.  Update all callers in this file.
14490         (array_type_has_dynamic_stride): New function.
14491         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
14492         of arrays with dynamic byte strides.
14493         * dwarf2read.c (read_array_type): Add support for dynamic
14494         DW_AT_byte_stride attributes.
14495
14496 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14497
14498         * dwarf2read.c (read_unspecified_type): Treat
14499         DW_TAG_enumeration_type DIEs from Ada units as stubs.
14500
14501 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14502
14503         Update copyright year range in all GDB files.
14504
14505 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
14506
14507         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
14508         and gdb/testsuite/gdb.base/step-line.c.
14509
14510 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14511
14512         * copyright.py (main): Dump the contents of
14513         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
14514         even if BY_HAND is empty.
14515
14516 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14517
14518         * top.c (print_gdb_version): Update Copyright year in version
14519         message.
14520
14521 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14522
14523         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
14524
14525 For older changes see ChangeLog-2017.
14526 \f
14527 Local Variables:
14528 mode: change-log
14529 left-margin: 8
14530 fill-column: 74
14531 version-control: never
14532 coding: utf-8
14533 End: