Fix Python gdb.Breakpoint.location crash
[external/binutils.git] / gdb / ChangeLog
1 2018-10-06  Tom Tromey  <tom@tromey.com>
2
3         * python/py-breakpoint.c (bppy_get_location): Handle a
4         bp_breakpoint without a location.
5
6 2018-10-06  Tom Tromey  <tom@tromey.com>
7
8         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
9         (_RegEx): Reformat help text.
10         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
11         (AnyCallerIs, AnyCallerMatches): Reformat help text.
12         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
13         text.
14         * python/lib/gdb/command/xmethods.py (InfoXMethod)
15         (EnableXMethod, DisableXMethod): Remove help indentation.
16         Capitalize meta-syntactic variables.
17         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
18         (EnableUnwinder, DisableUnwinder): Remove help indentation.
19         Capitalize meta-syntactic variables.
20         * python/lib/gdb/command/explore.py (ExploreCommand)
21         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
22         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
23         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
24         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
25         Remove help indentation.
26         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
27         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
28         (DisableFrameFilter, SetFrameFilterPriority)
29         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
30
31 2018-10-06  Tom Tromey  <tom@tromey.com>
32
33         PR tui/28819:
34         * tui/tui-io.c (gdb_wgetch): New function.
35         (tui_mld_getc, tui_getc): Use it.
36
37 2018-10-05  Tom Tromey  <tom@tromey.com>
38
39         * sol-thread.c (sol_thread_target::wait): Rename inner
40         "save_ptid".
41
42 2018-10-04  Tom Tromey  <tom@tromey.com>
43
44         * configure: Rebuild.
45         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
46
47 2018-10-04  Tom Tromey  <tom@tromey.com>
48
49         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
50         declaration of "block".
51
52 2018-10-04  Tom Tromey  <tom@tromey.com>
53
54         * common/filestuff.c (fdwalk): Remove inner declaration of
55         "result".
56
57 2018-10-04  Tom Tromey  <tom@tromey.com>
58
59         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
60         "structs_addr" and hoist declaration.
61
62 2018-10-04  Tom Tromey  <tom@tromey.com>
63
64         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
65         variable "size".
66
67 2018-10-04  Tom Tromey  <tom@tromey.com>
68
69         * mdebugread.c (parse_partial_symbols): Use std::string.
70
71 2018-10-04  Tom Tromey  <tom@tromey.com>
72
73         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
74         * p-valprint.c (pascal_val_print): Split inner "i" variable.
75         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
76         header.
77         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
78         more inner scope.
79         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
80         * varobj.c (varobj_update): Rename inner "newobj",
81         "type_changed".
82         * valprint.c (generic_emit_char): Rename inner "buf".
83         * valops.c (find_overload_match): Rename inner "temp".
84         (value_struct_elt_for_reference): Declare "v" in more inner
85         scope.
86         * v850-tdep.c (v850_push_dummy_call): Rename "len".
87         * unittests/array-view-selftests.c (run_tests): Rename inner
88         "vec".
89         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
90         header.
91         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
92         "tsv" in more inner scope.
93         (print_one_static_tracepoint_marker): Rename inner
94         "tuple_emitter".
95         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
96         (tic6x_push_dummy_call): Don't redeclare "addr".
97         * target-float.c: Declare "dto" lower.
98         * symtab.c (lookup_local_symbol): Rename inner "sym".
99         (find_pc_sect_line): Rename inner "pc".
100         * stack.c (print_frame): Don't redeclare "gdbarch".
101         (return_command): Rename inner "gdbarch".
102         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
103         "sp".
104         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
105         header.
106         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
107         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
108         scope.
109         * remote.c (remote_target::update_thread_list): Don't redeclare
110         "tp".
111         (remote_target::process_initial_stop_replies): Rename inner
112         "thread".
113         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
114         (remote_target::wait_as): Don't redeclare "stop_reply".
115         (remote_target::get_thread_local_address): Rename inner
116         "result".
117         (remote_target::get_tib_address): Likewise.
118
119         * regcache.c (cooked_read_test): Rename "regnum".
120         * record-btrace.c (cmd_record_btrace_start): Rename inner
121         "exception".
122         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
123         loop header.
124         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
125         header.
126         (ppu2spu_sniffer): Rename inner "buf".
127         * parse.c (operator_check_standard): Rename inner "type",
128         "objfile".
129         * p-valprint.c (pascal_val_print): Introduce new scope for
130         "low_bound", "high_bound".
131         * p-exp.y (yylex): Declare "i" in loop header.
132         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
133         Lower declaration of "s".
134         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
135         header.
136         (nios2_push_dummy_call): Rename "len".
137         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
138         "buf".
139         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
140         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
141         (linux_xfer_osdata_modules): Likewise.
142         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
143         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
144         (mips_o64_push_dummy_call): Likewise.
145         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
146         "op".
147         * mi/mi-main.c (list_available_thread_groups): Rename inner
148         "tuple_emitter".
149         (mi_cmd_data_read_memory): Rename inner "opts".
150         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
151         "tuple_emitter".
152         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
153         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
154         more inner scope.
155         (parse_partial_symbols): Rename inner "pst", "p", "name"
156         * main.c (captured_main_1): Rename inner "i"s.
157         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
158         "oso2".
159         * linux-tdep.c (linux_info_proc): Rename inner "filename".
160         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
161         * infrun.c (handle_no_resumed): Don't redeclare "thread".
162         (handle_signal_stop): Rename inner "gdbarch".
163         (handle_command): Declare "signum" in loop header.
164         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
165         "status".
166         (examine_prologue): Rename inner "sol" and "sof".
167         (ia64_extract_return_value): Rename inner "val".  Declare another
168         "val" in a more inner scope.
169         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
170         inner scope.
171         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
172         "except".
173         * findvar.c (default_read_var_value): Don't redeclare "addr".
174         * f-exp.y (yylex): Declare "i" in loop header.
175         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
176         Rename inner "type", "expect_type".
177         (evaluate_subexp_for_sizeof): Rename inner "pc".
178         * elfread.c (elf_symfile_read): Rename inner "abfd".
179         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
180         "bytes_read".
181         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
182         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
183         (dwarf_decode_line_header): Rename inner "lh".
184         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
185         "offset".  Declare "i" in loop header.
186         (disassemble_dwarf_expression): Rename inner "addr_size".
187         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
188         inner "result".
189         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
190         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
191         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
192         "inner_list_emitter".
193         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
194         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
195         declaration in a block.
196         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
197         * cp-valprint.c (cp_print_value_fields): Don't redeclare
198         "obstack_final_size".
199         * cp-support.c (inspect_type): Declare "i" in loop header.
200         * compile/compile.c (compile_instance::insert_symbol_error):
201         Rename inner "e".
202         * common/agent.c (agent_run_command): Remove inner "ret"
203         declaration.
204         * coffread.c (coff_symfile_read): Rename inner "name".
205         (coff_symfile_read): Rename inner "abfd".
206         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
207         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
208         "high".
209         * c-exp.y (lex_one_token): Move "len" declaration lower.
210         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
211         "gdbarch".
212         (create_exception_master_breakpoint): Likewise.  Don't redeclare
213         "b".
214         (watch_command_1): Declare "mark" later.
215         (clear_command): Don't shadow "a" or "b".
216         (delete_command): Rename inner "b".
217         (delete_trace_command): Likewise.
218         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
219         "op".
220         (arm_gdbarch_init): Remove inner "e_flags".
221         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
222         "offset" in inner blocks.
223
224 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
225
226         * dwarf-index-write.c (file_write): Don't write if the vector is
227         empty.
228
229 2018-10-05  Tom de Vries  <tdevries@suse.de>
230
231         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
232         PyArg_ParseTuple call.
233
234 2018-10-05  Tom de Vries  <tdevries@suse.de>
235
236         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
237         PyArg_ParseTuple call.
238
239 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
240
241         * psymtab.c (recursively_search_psymtabs): Reformat parameters
242         to avoid exceeding 80 characters per line limit.
243
244 2018-10-04  Tom Tromey  <tom@tromey.com>
245
246         * symfile.c (syms_from_objfile_1, finish_new_objfile)
247         (reread_symbols): Update.
248         * complaints.h (clear_complaints): Remove argument.
249         * complaints.c (enum complaint_series): Remove.
250         (series): Remove global.
251         (complaint_internal): Update.
252         (clear_complaints): Remove argument.
253
254 2018-10-04  Tom Tromey  <tom@tromey.com>
255
256         * symfile.c (symbol_file_add_with_addrs): Do not print "no
257         debugging symbols" message if there is a separate debug objfile.
258
259 2018-10-04  Tom Tromey  <tom@tromey.com>
260
261         PR cli/19551:
262         * symfile.c (symbol_file_add_with_addrs): Update output.
263         * psymtab.c (require_partial_symbols): Update output.
264
265 2018-10-04  Tom Tromey  <tom@tromey.com>
266
267         PR cli/22234:
268         * complaints.c: Emit \n.
269
270 2018-10-04  Tom Tromey  <tom@tromey.com>
271
272         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
273         (separate_debug_file_exists, find_separate_debug_file)
274         (add_symbol_file_command, reread_symbols, allocate_symtab)
275         (allocate_compunit_symtab): Use filtered printing, not
276         unfiltered.
277         * psymtab.c (require_partial_symbols, dump_psymtab)
278         (allocate_psymtab): Use filtered printing, not unfiltered.
279
280 2018-10-04  Tom Tromey  <tom@tromey.com>
281
282         * complaints.c (complaint_internal): Correctly check complaint
283         count.
284
285 2018-10-04  Tom Tromey  <tom@tromey.com>
286
287         * complaints.h (struct complaints): Remove declaration.
288         * complaints.c (clear_complaints): Remove an unused variable.
289
290 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
291
292         * MAINTAINERS (Write After Approval): Add self.
293
294 2018-10-03  Tom Tromey  <tom@tromey.com>
295
296         * guile/scm-value.c (gdbscm_value_to_string): Initialize
297         "buffer_contents".
298         * coffread.c (coff_symtab_read): Initialize "newobj".
299
300 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
301
302         * dwarf2read.c (read_func_scope): Remove struct keyword in
303         range-based for.
304
305 2018-10-03  Tom Tromey  <tom@tromey.com>
306
307         * README: Mention --enable-ubsan.
308         * NEWS: Mention --enable-ubsan.
309         * acinclude.m4: Include sanitize.m4.
310         * configure: Rebuild.
311         * configure.ac: Call AM_GDB_UBSAN.
312         * sanitize.m4: New file.
313
314 2018-10-03  Tom Tromey  <tom@tromey.com>
315
316         * expression.h (enum exp_opcode): Use uint8_t as base type.
317         * expprint.c (op_name): Handle invalid opcodes.
318
319 2018-10-03  Tom Tromey  <tom@tromey.com>
320
321         * parse.c (prefixify_expression): Add assert.
322         (parse_exp_in_context_1): Throw exception if the expression is
323         empty.
324
325 2018-10-03  Tom Tromey  <tom@tromey.com>
326
327         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
328
329 2018-10-03  Tom Tromey  <tom@tromey.com>
330
331         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
332
333 2018-10-03  Tom Tromey  <tom@tromey.com>
334
335         * dwarf2read.c (read_subrange_type): Make "negative_mask"
336         unsigned.
337
338 2018-10-03  Tom Tromey  <tom@tromey.com>
339
340         * findvar.c (extract_integer): Do work in an unsigned type.
341
342 2018-10-03  Tom Tromey  <tom@tromey.com>
343
344         * common/enum-flags.h (enum_flags::operator~): Add static assert.
345         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
346         base type.
347         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
348         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
349         type.
350         * c-lang.h (enum c_string_type_values): Use unsigned as base
351         type.
352         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
353
354 2018-10-03  Tom Tromey  <tom@tromey.com>
355
356         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
357         <~dwarf2_frame_state_reg_info>: Update.
358         <dwarf2_frame_state_reg_info>: Update.
359         <alloc_regs>: Add assertion.  Update.
360         <reg>: Now a std::vector.
361         <num_regs>: Remove.
362         <swap>: Update.
363         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
364         (execute_cfa_program_test, dwarf2_frame_cache): Update.
365
366 2018-10-03  Tom Tromey  <tom@tromey.com>
367
368         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
369
370 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
371
372         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
373
374 2018-10-02  Tom Tromey  <tom@tromey.com>
375
376         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
377
378 2018-10-02  John Darrington <john@darrington.wattle.id.au>
379
380         * NEWS: Mention changed commands.
381         * ser-uds.c: New file.
382         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
383         * configure: Regenerate.
384         * Makefile.in: Add new file.
385         * serial.c (serial_open): Check if filename is a socket
386           and lookup the appropriate interface accordingly.
387
388 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
389
390         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
391         define.
392         (AARCH64_EXTRA_MAGIC): Likewise.
393         (AARCH64_FPSIMD_MAGIC): Likewise.
394         (AARCH64_SVE_MAGIC): Likewise.
395         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
396         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
397         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
398         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
399         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
400         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
401         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
402         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
403         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
404         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
405         (read_aarch64_ctx): Add function.
406         (aarch64_linux_sigframe_init): Detect FP registers.
407
408 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
409
410         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
411         (AARCH64_D0_REGNUM): Likewise.
412         (AARCH64_S0_REGNUM): Likewise.
413         (AARCH64_H0_REGNUM): Likewise.
414         (AARCH64_B0_REGNUM): Likewise.
415         (AARCH64_SVE_V0_REGNUM): Likewise.
416         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
417         (AARCH64_D0_REGNUM): Likewise.
418         (AARCH64_S0_REGNUM): Likewise.
419         (AARCH64_H0_REGNUM): Likewise.
420         (AARCH64_B0_REGNUM): Likewise.
421         (AARCH64_SVE_V0_REGNUM): Likewise.
422
423 2018-10-01  Gary Benson <gbenson@redhat.com>
424
425         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
426         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
427         prfpregset_t instead of gdb_prfpregset_t.
428         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
429         * configure, config.in: Rebuild.
430
431 2018-10-01  Gary Benson <gbenson@redhat.com>
432
433         * common/gdb_proc_service.h: New file, factored out from...
434         * gdb_proc_service.h: Moved common code to the above file.
435         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
436
437 2018-10-01  Gary Benson <gbenson@redhat.com>
438
439         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
440         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
441
442 2018-10-01  Gary Benson <gbenson@redhat.com>
443
444         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
445         (AC_CHECK_HEADERS): Check for linux/elf.h.
446         * configure, config.in: Rebuild.
447         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
448         doesn't define elf_fpregset_t.
449
450 2018-10-01  Gary Benson <gbenson@redhat.com>
451
452         * gdb_proc_service.h: Whitespace change.
453
454 2018-10-01  Tom Tromey  <tom@tromey.com>
455
456         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
457         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
458         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
459
460 2018-10-01  Tom Tromey  <tom@tromey.com>
461
462         * README: Minor change.
463
464 2018-09-30  Pedro Alves  <palves@redhat.com>
465
466         * darwin-nat-info.c (darwin_debug_regions_recurse)
467         (info_mach_exceptions_command): Remove unused local variables.
468         * darwin-nat.c (darwin_decode_notify_message)
469         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
470         (darwin_stop_inferior, darwin_setup_exceptions)
471         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
472         (darwin_nat_target::attach, darwin_nat_target::detach)
473         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
474         local variables.
475         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
476         variables.
477
478 2018-09-29  Tom Tromey  <tom@tromey.com>
479
480         * README: Remove some leftover text.
481
482 2018-09-29  Tom Tromey  <tom@tromey.com>
483
484         * PROBLEMS: Rewrite.
485         * README: Update.
486
487 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
488
489         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
490         case with explicit breakpoint kind.
491         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
492         'additional_info' and related logic.
493         (riscv_debug_breakpoints): New variable.
494         (riscv_breakpoint_kind_from_pc): Use the length of the existing
495         instruction to determine the breakpoint kind.
496         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
497         flag.  Update description of 'set/show riscv
498         use-compressed-breakpoints' flag.
499
500 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
501
502         (NEWS): Mention changes to frame related commands.
503         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
504         (add_prefix_cmd_suppress_notification): New function.
505         (add_com_suppress_notification): Call
506         add_cmd_suppress_notification.
507         * command.h (add_cmd_suppress_notification): Declare.
508         (add_prefix_cmd_suppress_notification): Declare.
509         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
510         (parse_frame_specification): Moved from stack.c, with
511         simplification to handle a single argument.
512         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
513         switch to the selected frame.  Add a header comment.
514         * stack.c: Remove 'safe-ctype.h' include.
515         (find_frame_for_function): Add declaration.
516         (find_frame_for_address): New function.
517         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
518         (frame_selection_by_function_completer): New function.
519         (info_frame_command): Rename to...
520         (info_frame_command_core): ...this, and update parameter types.
521         (select_frame_command): Rename to...
522         (select_frame_command_core): ...this, and update parameter types.
523         (frame_command): Rename to...
524         (frame_command_core): ...this, and update parameter types.
525         (class frame_command_helper): New class to wrap implementations of
526         frame related sub-commands.
527         (frame_apply_cmd_list): New static global.
528         (frame_cmd_list): Make static.
529         (select_frame_cmd_list): New global for sub-commands.
530         (info_frame_cmd_list): New global for sub-commands.
531         (_initialize_stack): Register sub-commands for 'frame',
532         'select-frame', and 'info frame'.  Update 'frame apply' commands
533         to use frame_apply_cmd_list.  Move function local static
534         frame_apply_list to file static frame_apply_cmd_list for
535         consistency.
536         * stack.h (select_frame_command): Delete declarationn.
537         (select_frame_for_mi): Declare new function.
538
539 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
540
541         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
542         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
543         and NOP.
544
545 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
546
547         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
548
549 2018-09-26  Tom Tromey  <tom@tromey.com>
550
551         * valops.c (auto_abandon): Remove dead code.
552
553 2018-09-26  Tom Tromey  <tom@tromey.com>
554
555         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
556
557 2018-09-24  Tom Tromey  <tom@tromey.com>
558
559         * common/pathstuff.c (get_standard_cache_dir): Make
560         "xdg_cache_home" and "home" const.
561         * top.c (init_history): Make "tmpenv" const.
562         * main.c (get_init_files): Make "homedir" const.
563
564 2018-09-23  Tom Tromey  <tom@tromey.com>
565
566         PR python/18852:
567         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
568
569 2018-09-23  Tom Tromey  <tom@tromey.com>
570
571         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
572         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
573         * python/python-internal.h (gdbpy_handle_exception): Declare.
574         * python/py-utils.c (gdbpy_handle_exception): New function.
575
576 2018-09-23  Tom Tromey  <tom@tromey.com>
577
578         PR python/17284:
579         * python/py-type.c (typy_template_argument): Check for negative
580         argument number.
581
582 2018-09-23  Tom Tromey  <tom@tromey.com>
583
584         PR python/14062:
585         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
586
587 2018-09-23  Tom Tromey  <tom@tromey.com>
588
589         PR python/18170:
590         * python/py-value.c (valpy_int): Allow conversion from pointer
591         type.
592
593 2018-09-23  Tom Tromey  <tom@tromey.com>
594
595         PR python/20126:
596         * python/py-value.c (valpy_int): Respect type sign.
597
598 2018-09-23  Tom Tromey  <tom@tromey.com>
599
600         PR python/18352;
601         * python/py-value.c (valpy_float): Allow conversions from int or
602         char.
603         (valpy_int, valpy_long): Allow conversions from float.
604
605 2018-09-23  Tom Tromey  <tom@tromey.com>
606
607         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
608         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
609
610 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
611
612         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
613         __sighndlr.
614         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
615
616 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
617
618         * windows-nat.c (windows_nat_target::wait): Remove a spurious
619         target_terminal::ours().
620
621 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
622
623         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
624         of vl to ULONGEST.
625
626 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
627
628         * breakpoint.c (update_inserted_breakpoint_locations): Remove
629         redundant condition.
630
631 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
632
633         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
634
635         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
636         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
637         * sol-thread.c (ps_pdmodel): Don't guard definition.
638
639         * procfs.c: Fix formatting.
640
641         * procfs.c (sysset_t_alloc): Remove.
642         (create_procinfo): Use XNEW instead of sysset_t_alloc.
643         (procfs_debug_inferior): Likewise.
644         (procfs_set_exec_trap): Likewise.
645         (proc_set_traced_sysentry): Don't allocate argp dynamically.
646         (proc_set_traced_sysexit): Likewise.
647
648         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
649         (dead_procinfo): Likewise.
650         (proc_warn): Likewise.
651         (proc_error): Likewise.
652         (proc_get_LDT_entry): Likewise.
653         (do_attach): Likewise.
654         (procfs_target::pid_to_str): Likewise.
655         (iterate_over_mappings): Likewise.
656
657         * procfs.c (create_procinfo): Fix ARI warning.
658         (proc_get_status): Likewise.
659         (proc_stop_process): Likewise.
660         (proc_run_process): Likewise.
661         (proc_kill): Likewise.
662         (proc_get_LDT_entry): Likewise.
663         (procfs_find_LDT_entry): Likewise.
664         (proc_update_threads): Likewise.
665         (proc_iterate_over_threads): Likewise.
666         (do_attach): Likewise.
667         (procfs_xfer_memory): Likewise.
668         (invalidate_cache): Likewise.
669         (procfs_target::resume): Likewise.
670         (procfs_init_inferior): Likewise.
671         (procfs_set_exec_trap): Likewise.
672         (procfs_target::thread_alive): Likewise.
673         (procfs_target::pid_to_exec_file): Likewise.
674         (iterate_over_mappings): Likewise.
675         (procfs_target::make_corefile_notes): Likewise.
676         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
677
678         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
679         (procfs_find_LDT_entry): Likewise.
680         * sol-thread.c (ps_lgetLDT): Likewise.
681
682 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
683
684         PR tdep/17903
685         * procfs.c (procfs_target): Declare pid_to_exec_file.
686         (procfs_target::pid_to_exec_file): New.
687
688 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
689
690         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
691         renaming.
692         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
693         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
694
695 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
696
697         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
698         (supply_fpregset, fill_fpregset): Move ...
699         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
700         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
701         Remove references to ioctl-based procfs.
702         Include <sys/reg.h>.
703         Remove PR_MODEL_NATIVE guards.
704         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
705         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
706
707 2018-09-19  Xavier Roirand  <roirand@adacore.com>
708
709         PR gdb/20981:
710         * solib-darwin.c (darwin_get_dyld_bfd): New function.
711         (darwin_solib_get_all_image_info_addr_at_init): Update call.
712         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
713
714 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
715
716         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
717         (fbsd_print_sockaddr_in6): Likewise.
718
719 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
720             Chris January  <chris.january@arm.com>
721
722         * eval.c (skip_undetermined_arglist): Skip argument list helper.
723         (evaluate_subexp_standard): Return a dummy type when
724         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
725         OP_F77_UNDETERMINED_ARGLIST case.
726         * expression.h (enum noside): Update comment.
727
728 2018-09-19  George Vasick <george.vasick@oracle.com>
729
730         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
731
732 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
733             April Chin <april.chin@oracle.com>
734             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
735
736         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
737         uint_t lwpid_t.
738         (create_procinfo): Print pids in /proc without leading zeros.
739
740 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
741
742         * nios2-tdep.c (nios2_gcc_target_options): New.
743         (nios2_gdb_arch_init): Install new hook.
744
745 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
746
747         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
748         New file.
749         * update-gnulib.sh: Apply patch.
750         * configure: Re-generate.
751
752 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
753
754         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
755         description.  Make "info proc" command descriptions more
756         consistent.
757
758 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
759
760         * NEWS: Mention 'info proc files' command.
761
762 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
763
764         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
765         descriptors for IP_FILES and IP_ALL.
766
767 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
768
769         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
770         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
771         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
772         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
773         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
774         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
775         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
776         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
777         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
778         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
779         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
780         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
781         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
782         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
783         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
784         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
785         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
786         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
787         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
788         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
789         (struct fbsd_sockaddr_un): New types.
790         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
791         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
792         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
793         (fbsd_core_info_proc_files): New functions.
794         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
795         IP_ALL.
796         * fbsd-tdep.h (fbsd_info_proc_files_header)
797         (fbsd_info_proc_files_entry): New.
798
799 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
800
801         * defs.h (enum info_proc_what) [IP_FILES]: New value.
802         * infcmd.c (info_proc_cmd_files): New function.
803         (_initialize_infcmd): Register 'info proc files' command.
804
805 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
806
807         * gnulib/aclocal-m4-deps.mk: Re-generate.
808         * gnulib/aclocal.m4: Re-generate.
809         * gnulib/config.in: Re-generate.
810         * gnulib/configure: Re-generate.
811         * gnulib/import/Makefile.am: Re-generate.
812         * gnulib/import/Makefile.in: Re-generate.
813         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
814         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
815         * gnulib/import/arpa_inet.in.h: New file.
816         * gnulib/import/inet_ntop.c: New file.
817         * gnulib/import/m4/arpa_inet_h.m4: New file.
818         * gnulib/import/m4/inet_ntop.m4: New file.
819         * gnulib/import/m4/netinet_in_h.m4: New file.
820         * gnulib/import/m4/socklen.m4: New file.
821         * gnulib/import/m4/sockpfaf.m4: New file.
822         * gnulib/import/m4/stdalign.m4: New file.
823         * gnulib/import/m4/sys_uio_h.m4: New file.
824         * gnulib/import/netinet_in.in.h: New file.
825         * gnulib/import/stdalign.in.h: New file.
826         * gnulib/import/sys_socket.c: New file.
827         * gnulib/import/sys_socket.in.h: New file.
828         * gnulib/import/sys_uio.in.h: New file.
829         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
830         module.
831
832 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
833
834         * gnulib/aclocal-m4-deps.mk: New file.
835         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
836         deterministically.
837
838 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
839
840         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
841         KVE_PATH.
842
843 2018-09-18  Tom Tromey  <tom@tromey.com>
844
845         * compile/compile-object-load.c (struct
846         link_hash_table_cleanup_data): Add constructor and destructor.
847         Use DISABLE_COPY_AND_ASSIGN.
848         (~link_hash_table_cleanup_data): Rename from
849         link_hash_table_free.  Now a destructor.
850         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
851
852 2018-09-18  Tom Tromey  <tom@tromey.com>
853
854         * compile/compile-object-run.c (do_module_cleanup): Use delete.
855         * compile/compile-object-load.c (struct munmap_list): Move to
856         header file.
857         (munmap_list::add): Rename from munmap_list_add; rewrite.
858         (munmap_list::~munmap_list): Rename from munmap_list_free.
859         (munmap_listp_free_cleanup): Remove.
860         (compile_object_load): Update.
861         * compile/compile-object-load.h (struct munmap_list): Move from
862         compile-object-load.c.  Rewrite.
863
864 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
865
866         * aarch64-tdep.c (pass_in_v): Use register size.
867         (aarch64_extract_return_value): Likewise.
868         (aarch64_store_return_value): Likewise.
869
870 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
871
872         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
873         rlim_t.
874
875 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
876
877         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
878         Fix short help line.
879
880 2018-09-17  Tom Tromey  <tom@tromey.com>
881
882         PR python/20445:
883         * configure: Rebuild.
884         * configure.ac: Conditionally use -DNDEBUG for Python.
885
886 2018-09-17  Tom Tromey  <tom@tromey.com>
887
888         * configure: Rebuild.
889         * configure.ac: Use gmp as a library dependency when checking for
890         mpfr.
891
892 2018-09-17  Pedro Alves  <palves@redhat.com>
893
894         * python/py-inferior.c (find_inferior_object): Delete.
895
896 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
897
898         * compile/compile-cplus-types.c
899         (compile_cplus_instance::enter_scope): Don't use new_scope after
900         std::move.
901
902 2018-09-17  Tom Tromey  <tom@tromey.com>
903
904         * common/pathstuff.c (get_standard_cache_dir): Use
905         ~/Library/Caches on macOS.
906         * common/pathstuff.h (get_standard_cache_dir): Update comment.
907
908 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
909
910         PR python/23669
911         * breakpoint.c (commands_cmd_element): New.
912         (_initialize_breakpoint): Assign commands_cmd_element.
913         * breakpoint.h (commands_cmd_element): New.
914         * cli/cli-script.c (while_cmd_element, if_command,
915         define_cmd_element): New.
916         (command_name_equals): Remove.
917         (process_next_line): Compare commands by pointer, not by name.
918         (_initialize_cli_script): Assign the various cmd_list_element
919         variables.
920         * compile/compile.c (compile_cmd_element): New.
921         (_initialize_compile): Assign compile_cmd_element.
922         * compile/compile.h (compile_cmd_element): New.
923         * guile/guile.c (guile_cmd_element): New.
924         (install_gdb_commands): Assign guile_cmd_element.
925         * guile/guile.h (guile_cmd_element): New.
926         * python/python.c (python_cmd_element): New.
927         (_initialize_python): Assign python_cmd_element.
928         * python/python.h (python_cmd_element): New.
929         * tracepoint.c (while_stepping_cmd_element): New.
930         (_initialize_tracepoint): Assign while_stepping_cmd_element.
931         * tracepoint.h (while_stepping_cmd_element): New.
932
933 2018-09-17  Tom Tromey  <tom@tromey.com>
934
935         * infrun.c (save_infcall_suspend_state): Return
936         infcall_suspend_state_up.
937         (save_infcall_control_state): Return infcall_control_state_up.
938         * inferior.h (save_infcall_suspend_state)
939         (save_infcall_control_state): Declare later.  Return unique
940         pointers.
941
942 2018-09-17  Tom Tromey  <tom@tromey.com>
943
944         * infrun.c (struct stop_context): Declare constructor,
945         destructor, "changed" method.
946         (stop_context::stop_context): Rename from save_stop_context.
947         (stop_context::~stop_context): Rename from
948         release_stop_context_cleanup.
949         (normal_stop): Update.
950         (stop_context::changed): Rename from stop_context_changed.  Return
951         bool.
952
953 2018-09-17  Tom Tromey  <tom@tromey.com>
954
955         * inferior.h (struct infcall_suspend_state_deleter): New.
956         (infcall_suspend_state_up): New typedef.
957         (struct infcall_control_state_deleter): New.
958         (infcall_control_state_up): New typedef.
959         (make_cleanup_restore_infcall_suspend_state)
960         (make_cleanup_restore_infcall_control_state): Don't declare.
961         * infcall.c (call_function_by_hand_dummy): Update.
962         * infrun.c (do_restore_infcall_suspend_state_cleanup)
963         (make_cleanup_restore_infcall_suspend_state): Remove.
964         (do_restore_infcall_control_state_cleanup)
965         (make_cleanup_restore_infcall_control_state): Remove.
966
967 2018-09-17  Tom Tromey  <tom@tromey.com>
968
969         * gdbthread.h (struct thread_control_state): Add initializer.
970         (class thread_info) <control>: Remove initializer.
971         * inferior.h (struct inferior_control_state): Add initializer.
972         (class inferior) <control>: Remove initializer.
973         (exit_inferior_1): Update.
974         * infrun.c (struct infcall_control_state): Add constructors.
975         (save_infcall_control_state): Use new.
976         (restore_infcall_control_state, discard_infcall_control_state):
977         Use delete.
978
979 2018-09-17  Tom Tromey  <tom@tromey.com>
980
981         * infrun.c (struct infcall_suspend_state) <registers>: Now a
982         unique_ptr.
983         <siginfo_data>: Now a unique_xmalloc_ptr.
984         (save_infcall_suspend_state, restore_infcall_suspend_state)
985         (discard_infcall_suspend_state)
986         (get_infcall_suspend_state_regcache): Update.
987
988 2018-09-17  Tom Tromey  <tom@tromey.com>
989
990         * gdbthread.h (struct thread_suspend_state): Add initializers.
991         (class thread_info) <suspend>: Remove initializer.
992         * infrun.c (struct infcall_suspend_state): Add initializers.
993         (save_infcall_suspend_state): Use new.
994         (discard_infcall_suspend_state): Use delete.
995
996 2018-09-16  Tom Tromey  <tom@tromey.com>
997
998         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
999         Remove.
1000         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
1001         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
1002         (py_varobj_iter_new): Likewise.
1003         (py_varobj_get_iterator): Use gdbpy_ref.
1004
1005 2018-09-16  Tom Tromey  <tom@tromey.com>
1006
1007         * python/py-threadevent.c (py_get_event_thread): Simplify.
1008         * python/py-inferior.c (infpy_thread_from_thread_handle):
1009         Return immediately after calling thread_to_thread_object.  Use
1010         Py_RETURN_NONE.
1011         (thread_to_thread_object): Set the exception on a NULL return.
1012
1013 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
1014
1015         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
1016
1017 2018-09-16  Tom Tromey  <tom@tromey.com>
1018
1019         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
1020         Remove.
1021
1022 2018-09-16  Tom Tromey  <tom@tromey.com>
1023
1024         * python/python-internal.h (thread_to_thread_object): Change
1025         return type.
1026         * python/py-inferior.c (thread_to_thread_object): Return a new
1027         reference.
1028         (infpy_thread_from_thread_handle): Update.
1029         * python/py-infthread.c (gdbpy_selected_thread): Update.
1030         * python/py-stopevent.c (create_stop_event_object): Update.
1031         * python/py-threadevent.c (py_get_event_thread): Return a new
1032         reference.
1033         (py_get_event_thread): Update.
1034         * python/py-event.h (py_get_event_thread): Change return type.
1035         * python/py-continueevent.c (create_continue_event_object):
1036         Update.
1037
1038 2018-09-16  Tom Tromey  <tom@tromey.com>
1039
1040         * python/py-progspace.c (pspy_get_objfiles): Update.
1041         * python/python-internal.h (objfile_to_objfile_object): Change
1042         return type.
1043         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1044         Update.
1045         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1046         Update.
1047         * python/python.c (gdbpy_get_current_objfile): Update.
1048         (gdbpy_objfiles): Update.
1049         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
1050         Update.
1051         (objfile_to_objfile_object): Return a new reference.
1052         * python/py-symtab.c (stpy_get_objfile): Update.
1053         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
1054         Update.
1055
1056 2018-09-16  Tom Tromey  <tom@tromey.com>
1057
1058         * python/py-inferior.c (infpy_get_progspace): Update.
1059         * python/python-internal.h (pspace_to_pspace_object): Change
1060         return type.
1061         * python/py-newobjfileevent.c
1062         (create_clear_objfiles_event_object): Update.
1063         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1064         Update.
1065         * python/python.c (gdbpy_get_current_progspace): Update.
1066         (gdbpy_progspaces): Update.
1067         * python/py-progspace.c (pspace_to_pspace_object): Return a new
1068         reference.
1069         * python/py-objfile.c (objfpy_get_progspace): Update.
1070         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
1071         Update.
1072
1073 2018-09-16  Tom Tromey  <tom@tromey.com>
1074
1075         * python/lib/gdb/__init__.py (current_progspace, objfiles)
1076         (solib_name, block_for_pc, find_pc_line): New functions.
1077         (execute_unwinders): Update.
1078         * python/py-block.c (gdbpy_block_for_pc): Remove.
1079         * python/py-inferior.c (infpy_get_progspace): New function.
1080         (inferior_object_getset) <progspace>: Add.
1081         * python/py-progspace.c (pspy_objfiles): Rewrite.
1082         (pspy_solib_name, pspy_block_for_pc)
1083         (pspy_find_pc_line, pspy_is_valid): New functions.
1084         (progspace_object_methods): Add entries for solib_name,
1085         block_for_pc, find_pc_line, is_valid.
1086         * python/python-internal.h (gdbpy_block_for_pc)
1087         (build_objfiles_list): Don't declare.
1088         * python/python.c: Don't include solib.h.
1089         (gdbpy_solib_name, gdbpy_find_pc_line)
1090         (gdbpy_get_current_progspace, build_objfiles_list)
1091         (gdbpy_objfiles): Remove.
1092         (GdbMethods) <current_progspace, objfiles, block_for_pc,
1093         solib_name, find_pc_line>: Remove entries.
1094
1095 2018-09-16  Tom Tromey  <tom@tromey.com>
1096
1097         * top.c (new_ui_command): Use GNU style for metasyntactic
1098         variables.
1099         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
1100         variables.
1101         * maint.c (maintenance_translate_address): Remove "<>" around
1102         text.
1103         * interps.c (interpreter_exec_cmd): Use GNU style for
1104         metasyntactic variables.
1105         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
1106         metasyntactic variables.
1107         * tracepoint.c (tfind_range_command): Use GNU style for
1108         metasyntactic variables.
1109         (tfind_outside_command): Likewise.
1110         (_initialize_tracepoint): Likewise.
1111         * remote.c (extended_remote_target::create_inferior): Use GNU
1112         style for metasyntactic variables.
1113         * sparc64-tdep.c (adi_examine_command): Use GNU style for
1114         metasyntactic variables.
1115         (adi_assign_command): Likewise.
1116
1117 2018-09-16  Tom Tromey  <tom@tromey.com>
1118
1119         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
1120         metasyntactic variables.  Print message if no disassembler options
1121         are available.
1122
1123 2018-09-15  Tom Tromey  <tom@tromey.com>
1124
1125         * infcmd.c (get_inferior_args): Return const char *.
1126         * inferior.h (get_inferior_args): Return type now const.
1127         * linux-tdep.c (linux_fill_prpsinfo): Update.
1128         * procfs.c (procfs_target::make_corefile_notes): Update.
1129
1130 2018-09-07  Tom Tromey  <tom@tromey.com>
1131
1132         * python/python.c (execute_gdb_command): Call bpstat_do_actions
1133         inside the TRY.
1134
1135 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
1136
1137         * nios2-tdep.c (nios2_type_align): New.
1138         (nios2_gdb_arch_init): Install type_align hook.
1139
1140 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
1141
1142         * eval.c (fake_method::fake_method): Call xzalloc directly for a
1143         type that is neither object file owned, nor gdbarch owned.
1144         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
1145         gdbarch is non-NULL.
1146         (alloc_type_instance): Allocate non-objfile owned types on the
1147         gdbarch obstack.
1148         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
1149         using TYPE_ALLOC to ensure memory is allocated on the correct
1150         obstack.
1151         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
1152         obstack, or the gdbarch obstack.
1153         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
1154
1155 2018-09-14  Tom Tromey  <tom@tromey.com>
1156
1157         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
1158         block.
1159
1160 2018-09-14  Tom Tromey  <tom@tromey.com>
1161
1162         * nat/fork-inferior.c (get_startup_shell): Remove "static".
1163
1164 2018-09-13  Tom Tromey  <tom@tromey.com>
1165
1166         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
1167         static.
1168
1169 2018-09-13  Tom Tromey  <tom@tromey.com>
1170
1171         * exec.c (try_open_exec_file): Use std::string.
1172
1173 2018-09-13  Tom Tromey  <tom@tromey.com>
1174
1175         * utils.h (gdb_bfd_errmsg): Return std::string.
1176         * exec.c (exec_file_attach): Update.
1177         * compile/compile-object-load.c (compile_object_load): Update.
1178         * utils.c (gdb_bfd_errmsg): Return std::string.
1179
1180 2018-09-13  Tom Tromey  <tom@tromey.com>
1181
1182         * procfs.c (struct procinfo_deleter): New.
1183         (procinfo_up): New typedef.
1184         (do_destroy_procinfo_cleanup): Remove.
1185         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
1186
1187 2018-09-13  Tom Tromey  <tom@tromey.com>
1188
1189         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
1190
1191 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1192 2018-09-13  Tom Tromey  <tom@tromey.com>
1193
1194         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
1195         (pspy_get_objfiles): New function.
1196         (progspace_object_methods): New.
1197         (pspace_object_type): Add tp_methods callback.
1198         * python/python-internal.h (build_objfiles_list): New
1199         declaration.
1200         * python/python.c (build_objfiles_list): New function.
1201         (gdbpy_objfiles): Implement using build_objfiles_list.
1202         * NEWS: Mention the Progspace.objfiles method.
1203
1204 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1205
1206         * python/py-inferior.c (infpy_get_progspace): New function.
1207         (inferior_object_getset): Add progspace property.
1208         * NEWS: Mention the new property.
1209
1210 2018-09-13  Tom Tromey  <tom@tromey.com>
1211
1212         PR rust/23650:
1213         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
1214
1215 2018-09-13  Tom Tromey  <tom@tromey.com>
1216
1217         PR rust/23626:
1218         * rust-lang.c (rust_enum_variant): Now static.
1219         (rust_empty_enum_p): New function.
1220         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
1221         Handle empty enum.
1222
1223 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1224
1225         * python/py-inferior.c (infpy_repr): New.
1226         (inferior_object_type): Register infpy_repr.
1227         * python/py-objfile.c (objfpy_repr): New.
1228         (objfile_object_type): Register objfpy_repr.
1229
1230 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1231
1232         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
1233
1234 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1235
1236         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
1237         typo.
1238
1239 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
1240
1241         * common/common-utils.c: Don't include '<sys/stat.h>'.
1242         (is_regular_file): Move to...
1243         * common/filestuff.c (is_regular_file): ... here.
1244         * common/common-utils.h (is_regular_file): Move to...
1245         * common/filestuff.h (is_regular_file): ... here.
1246
1247 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
1248
1249         * skip.c (debug_skip): New variable.
1250         (skiplist_entry::do_skip_file_p): Add debug output.
1251         (skiplist_entry::do_skip_gfile_p): Likewise.
1252         (skiplist_entry::skip_function_p): Likewise.
1253         (_initialize_step_skip): Create debug command.
1254         * NEWS: Mention set/show debug skip.
1255
1256 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1257
1258         * darwin-nat.c (should_disable_startup_with_shell):
1259         New function.
1260         (darwin_nat_target::create_inferior): Add call.
1261
1262 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1263
1264         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
1265         inf_port, msg_state>: Initialize.
1266         (struct darwin_thread_info) <signaled, single_step>: Change
1267         type and initialize.
1268         (struct darwin_thread_info) <event>: Initialize.
1269
1270 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1271
1272         PR gdb/23555
1273         PR gdb/23558
1274         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
1275         guesses.
1276
1277 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1278
1279         Revert:
1280         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1281
1282         PR gdb/23555
1283         PR gdb/23558
1284         * gnulib/aclocal.m4: Regenerate.
1285         * gnulib/config.in: Regenerate.
1286         * gnulib/configure: Regenerate.
1287         * gnulib/import/Makefile.am: Update.
1288         * gnulib/import/Makefile.in: Update.
1289         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
1290         * gnulib/import/_Noreturn.h: ... this.
1291         * gnulib/import/alloca.in.h: Update.
1292         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
1293         * gnulib/import/arg-nonnull.h: ... this.
1294         * gnulib/import/assure.h: Update.
1295         * gnulib/import/at-func.c: Update.
1296         * gnulib/import/basename-lgpl.c: Update.
1297         * gnulib/import/extra/snippet/c++defs.h: Rename to...
1298         * gnulib/import/c++defs.h: ... this.
1299         * gnulib/import/canonicalize-lgpl.c: Update.
1300         * gnulib/import/cdefs.h: Update.
1301         * gnulib/import/chdir-long.c: Update.
1302         * gnulib/import/chdir-long.h: Update.
1303         * gnulib/import/cloexec.c: Update.
1304         * gnulib/import/cloexec.h: Update.
1305         * gnulib/import/close.c: Update.
1306         * gnulib/import/closedir.c: Update.
1307         * gnulib/import/config.charset: Update.
1308         * gnulib/import/dirent-private.h: Update.
1309         * gnulib/import/dirent.in.h: Update.
1310         * gnulib/import/dirfd.c: Update.
1311         * gnulib/import/dirname-lgpl.c: Update.
1312         * gnulib/import/dirname.h: Update.
1313         * gnulib/import/dosname.h: Update.
1314         * gnulib/import/dup-safer-flag.c: Update.
1315         * gnulib/import/dup-safer.c: Update.
1316         * gnulib/import/dup.c: Update.
1317         * gnulib/import/dup2.c: Update.
1318         * gnulib/import/errno.in.h: Update.
1319         * gnulib/import/error.c: Update.
1320         * gnulib/import/error.h: Update.
1321         * gnulib/import/exitfail.c: Update.
1322         * gnulib/import/exitfail.h: Update.
1323         * gnulib/import/extra/update-copyright: Update.
1324         * gnulib/import/fchdir.c: Update.
1325         * gnulib/import/fcntl.c: Update.
1326         * gnulib/import/fcntl.in.h: Update.
1327         * gnulib/import/fd-hook.c: Update.
1328         * gnulib/import/fd-hook.h: Update.
1329         * gnulib/import/fd-safer-flag.c: Update.
1330         * gnulib/import/fd-safer.c: Update.
1331         * gnulib/import/fdopendir.c: Update.
1332         * gnulib/import/filename.h: Update.
1333         * gnulib/import/filenamecat-lgpl.c: Update.
1334         * gnulib/import/filenamecat.h: Update.
1335         * gnulib/import/flexmember.h: Update.
1336         * gnulib/import/float+.h: Update.
1337         * gnulib/import/float.c: Update.
1338         * gnulib/import/float.in.h: Update.
1339         * gnulib/import/fnmatch.c: Update.
1340         * gnulib/import/fnmatch.in.h: Update.
1341         * gnulib/import/fnmatch_loop.c: Update.
1342         * gnulib/import/fpucw.h: Update.
1343         * gnulib/import/frexp.c: Update.
1344         * gnulib/import/frexpl.c: Update.
1345         * gnulib/import/fstat.c: Update.
1346         * gnulib/import/fstatat.c: Update.
1347         * gnulib/import/getcwd-lgpl.c: Update.
1348         * gnulib/import/getcwd.c: Update.
1349         * gnulib/import/getdtablesize.c: Update.
1350         * gnulib/import/getlogin_r.c: Update.
1351         * gnulib/import/getprogname.c: Update.
1352         * gnulib/import/getprogname.h: Update.
1353         * gnulib/import/gettext.h: Update.
1354         * gnulib/import/gettimeofday.c: Update.
1355         * gnulib/import/glob-libc.h: Update.
1356         * gnulib/import/glob.c: Update.
1357         * gnulib/import/glob.in.h: Update.
1358         * gnulib/import/glob_internal.h: Update.
1359         * gnulib/import/glob_pattern_p.c: Update.
1360         * gnulib/import/globfree.c: Update.
1361         * gnulib/import/hard-locale.c: Update.
1362         * gnulib/import/hard-locale.h: Update.
1363         * gnulib/import/intprops.h: Update.
1364         * gnulib/import/inttypes.in.h: Update.
1365         * gnulib/import/isnan.c: Update.
1366         * gnulib/import/isnand-nolibm.h: Update.
1367         * gnulib/import/isnand.c: Update.
1368         * gnulib/import/isnanl-nolibm.h: Update.
1369         * gnulib/import/isnanl.c: Update.
1370         * gnulib/import/itold.c: Update.
1371         * gnulib/import/libc-config.h: Update.
1372         * gnulib/import/limits.in.h: Update.
1373         * gnulib/import/localcharset.c: Update.
1374         * gnulib/import/localcharset.h: Update.
1375         * gnulib/import/localtime-buffer.c: Update.
1376         * gnulib/import/localtime-buffer.h: Update.
1377         * gnulib/import/lstat.c: Update.
1378         * gnulib/import/m4/00gnulib.m4: Update.
1379         * gnulib/import/m4/__inline.m4: Update.
1380         * gnulib/import/m4/absolute-header.m4: Update.
1381         * gnulib/import/m4/alloca.m4: Update.
1382         * gnulib/import/m4/builtin-expect.m4: Update.
1383         * gnulib/import/m4/canonicalize.m4: Update.
1384         * gnulib/import/m4/chdir-long.m4: Update.
1385         * gnulib/import/m4/close.m4: Update.
1386         * gnulib/import/m4/closedir.m4: Update.
1387         * gnulib/import/m4/configmake.m4: Update.
1388         * gnulib/import/m4/d-ino.m4: Update.
1389         * gnulib/import/m4/d-type.m4: Update.
1390         * gnulib/import/m4/dirent_h.m4: Update.
1391         * gnulib/import/m4/dirfd.m4: Update.
1392         * gnulib/import/m4/dirname.m4: Update.
1393         * gnulib/import/m4/double-slash-root.m4: Update.
1394         * gnulib/import/m4/dup.m4: Update.
1395         * gnulib/import/m4/dup2.m4: Update.
1396         * gnulib/import/m4/eealloc.m4: Update.
1397         * gnulib/import/m4/environ.m4: Update.
1398         * gnulib/import/m4/errno_h.m4: Update.
1399         * gnulib/import/m4/error.m4: Update.
1400         * gnulib/import/m4/exponentd.m4: Update.
1401         * gnulib/import/m4/exponentl.m4: Update.
1402         * gnulib/import/m4/extensions.m4: Update.
1403         * gnulib/import/m4/extern-inline.m4: Update.
1404         * gnulib/import/m4/fchdir.m4: Update.
1405         * gnulib/import/m4/fcntl-o.m4: Update.
1406         * gnulib/import/m4/fcntl.m4: Update.
1407         * gnulib/import/m4/fcntl_h.m4: Update.
1408         * gnulib/import/m4/fdopendir.m4: Update.
1409         * gnulib/import/m4/filenamecat.m4: Update.
1410         * gnulib/import/m4/flexmember.m4: Update.
1411         * gnulib/import/m4/float_h.m4: Update.
1412         * gnulib/import/m4/fnmatch.m4: Update.
1413         * gnulib/import/m4/fnmatch_h.m4: Update.
1414         * gnulib/import/m4/fpieee.m4: Update.
1415         * gnulib/import/m4/frexp.m4: Update.
1416         * gnulib/import/m4/frexpl.m4: Update.
1417         * gnulib/import/m4/fstat.m4: Update.
1418         * gnulib/import/m4/fstatat.m4: Update.
1419         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
1420         * gnulib/import/m4/getcwd-path-max.m4: Update.
1421         * gnulib/import/m4/getcwd.m4: Update.
1422         * gnulib/import/m4/getdtablesize.m4: Update.
1423         * gnulib/import/m4/getlogin.m4: Update.
1424         * gnulib/import/m4/getlogin_r.m4: Update.
1425         * gnulib/import/m4/getpagesize.m4: Update.
1426         * gnulib/import/m4/getprogname.m4: Update.
1427         * gnulib/import/m4/gettimeofday.m4: Update.
1428         * gnulib/import/m4/glibc21.m4: Update.
1429         * gnulib/import/m4/glob.m4: Update.
1430         * gnulib/import/m4/glob_h.m4: Update.
1431         * gnulib/import/m4/gnulib-cache.m4: Update.
1432         * gnulib/import/m4/gnulib-common.m4: Update.
1433         * gnulib/import/m4/gnulib-comp.m4: Update.
1434         * gnulib/import/m4/gnulib-tool.m4: Update.
1435         * gnulib/import/m4/hard-locale.m4: Update.
1436         * gnulib/import/m4/include_next.m4: Update.
1437         * gnulib/import/m4/inttypes-pri.m4: Update.
1438         * gnulib/import/m4/inttypes.m4: Update.
1439         * gnulib/import/m4/isnand.m4: Update.
1440         * gnulib/import/m4/isnanl.m4: Update.
1441         * gnulib/import/m4/largefile.m4: Update.
1442         * gnulib/import/m4/limits-h.m4: Update.
1443         * gnulib/import/m4/localcharset.m4: Update.
1444         * gnulib/import/m4/locale-fr.m4: Update.
1445         * gnulib/import/m4/locale-ja.m4: Update.
1446         * gnulib/import/m4/locale-zh.m4: Update.
1447         * gnulib/import/m4/localtime-buffer.m4: Update.
1448         * gnulib/import/m4/longlong.m4: Update.
1449         * gnulib/import/m4/lstat.m4: Update.
1450         * gnulib/import/m4/malloc.m4: Update.
1451         * gnulib/import/m4/malloca.m4: Update.
1452         * gnulib/import/m4/math_h.m4: Update.
1453         * gnulib/import/m4/mbrtowc.m4: Update.
1454         * gnulib/import/m4/mbsinit.m4: Update.
1455         * gnulib/import/m4/mbsrtowcs.m4: Update.
1456         * gnulib/import/m4/mbstate_t.m4: Update.
1457         * gnulib/import/m4/memchr.m4: Update.
1458         * gnulib/import/m4/memmem.m4: Update.
1459         * gnulib/import/m4/mempcpy.m4: Update.
1460         * gnulib/import/m4/memrchr.m4: Update.
1461         * gnulib/import/m4/mkdir.m4: Update.
1462         * gnulib/import/m4/mkstemp.m4: Update.
1463         * gnulib/import/m4/mmap-anon.m4: Update.
1464         * gnulib/import/m4/mode_t.m4: Update.
1465         * gnulib/import/m4/msvc-inval.m4: Update.
1466         * gnulib/import/m4/msvc-nothrow.m4: Update.
1467         * gnulib/import/m4/multiarch.m4: Update.
1468         * gnulib/import/m4/nocrash.m4: Update.
1469         * gnulib/import/m4/off_t.m4: Update.
1470         * gnulib/import/m4/onceonly.m4: Update.
1471         * gnulib/import/m4/open-cloexec.m4: Update.
1472         * gnulib/import/m4/open.m4: Update.
1473         * gnulib/import/m4/openat.m4: Update.
1474         * gnulib/import/m4/opendir.m4: Update.
1475         * gnulib/import/m4/pathmax.m4: Update.
1476         * gnulib/import/m4/rawmemchr.m4: Update.
1477         * gnulib/import/m4/readdir.m4: Update.
1478         * gnulib/import/m4/readlink.m4: Update.
1479         * gnulib/import/m4/realloc.m4: Update.
1480         * gnulib/import/m4/rename.m4: Update.
1481         * gnulib/import/m4/rewinddir.m4: Update.
1482         * gnulib/import/m4/rmdir.m4: Update.
1483         * gnulib/import/m4/save-cwd.m4: Update.
1484         * gnulib/import/m4/secure_getenv.m4: Update.
1485         * gnulib/import/m4/setenv.m4: Update.
1486         * gnulib/import/m4/signal_h.m4: Update.
1487         * gnulib/import/m4/ssize_t.m4: Update.
1488         * gnulib/import/m4/stat-time.m4: Update.
1489         * gnulib/import/m4/stat.m4: Update.
1490         * gnulib/import/m4/std-gnu11.m4: Update.
1491         * gnulib/import/m4/stdbool.m4: Update.
1492         * gnulib/import/m4/stddef_h.m4: Update.
1493         * gnulib/import/m4/stdint.m4: Update.
1494         * gnulib/import/m4/stdio_h.m4: Update.
1495         * gnulib/import/m4/stdlib_h.m4: Update.
1496         * gnulib/import/m4/strchrnul.m4: Update.
1497         * gnulib/import/m4/strdup.m4: Update.
1498         * gnulib/import/m4/strerror.m4: Update.
1499         * gnulib/import/m4/string_h.m4: Update.
1500         * gnulib/import/m4/strstr.m4: Update.
1501         * gnulib/import/m4/strtok_r.m4: Update.
1502         * gnulib/import/m4/sys_socket_h.m4: Update.
1503         * gnulib/import/m4/sys_stat_h.m4: Update.
1504         * gnulib/import/m4/sys_time_h.m4: Update.
1505         * gnulib/import/m4/sys_types_h.m4: Update.
1506         * gnulib/import/m4/tempname.m4: Update.
1507         * gnulib/import/m4/time_h.m4: Update.
1508         * gnulib/import/m4/unistd-safer.m4: Update.
1509         * gnulib/import/m4/unistd_h.m4: Update.
1510         * gnulib/import/m4/warn-on-use.m4: Update.
1511         * gnulib/import/m4/wchar_h.m4: Update.
1512         * gnulib/import/m4/wchar_t.m4: Update.
1513         * gnulib/import/m4/wctype_h.m4: Update.
1514         * gnulib/import/m4/wint_t.m4: Update.
1515         * gnulib/import/malloc.c: Update.
1516         * gnulib/import/malloc/scratch_buffer.h: Update.
1517         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
1518         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
1519         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
1520         * gnulib/import/malloca.c: Update.
1521         * gnulib/import/malloca.h: Update.
1522         * gnulib/import/malloca.valgrind: Update.
1523         * gnulib/import/math.in.h: Update.
1524         * gnulib/import/mbrtowc.c: Update.
1525         * gnulib/import/mbsinit.c: Update.
1526         * gnulib/import/mbsrtowcs-impl.h: Update.
1527         * gnulib/import/mbsrtowcs-state.c: Update.
1528         * gnulib/import/mbsrtowcs.c: Update.
1529         * gnulib/import/memchr.c: Update.
1530         * gnulib/import/memmem.c: Update.
1531         * gnulib/import/mempcpy.c: Update.
1532         * gnulib/import/memrchr.c: Update.
1533         * gnulib/import/mkdir.c: Update.
1534         * gnulib/import/mkstemp.c: Update.
1535         * gnulib/import/msvc-inval.c: Update.
1536         * gnulib/import/msvc-inval.h: Update.
1537         * gnulib/import/msvc-nothrow.c: Update.
1538         * gnulib/import/msvc-nothrow.h: Update.
1539         * gnulib/import/open.c: Update.
1540         * gnulib/import/openat-die.c: Update.
1541         * gnulib/import/openat-priv.h: Update.
1542         * gnulib/import/openat-proc.c: Update.
1543         * gnulib/import/openat.c: Update.
1544         * gnulib/import/openat.h: Update.
1545         * gnulib/import/opendir.c: Update.
1546         * gnulib/import/pathmax.h: Update.
1547         * gnulib/import/pipe-safer.c: Update.
1548         * gnulib/import/rawmemchr.c: Update.
1549         * gnulib/import/readdir.c: Update.
1550         * gnulib/import/readlink.c: Update.
1551         * gnulib/import/realloc.c: Update.
1552         * gnulib/import/ref-add.sin: Update.
1553         * gnulib/import/ref-del.sin: Update.
1554         * gnulib/import/rename.c: Update.
1555         * gnulib/import/rewinddir.c: Update.
1556         * gnulib/import/rmdir.c: Update.
1557         * gnulib/import/same-inode.h: Update.
1558         * gnulib/import/save-cwd.c: Update.
1559         * gnulib/import/save-cwd.h: Update.
1560         * gnulib/import/scratch_buffer.h: Update.
1561         * gnulib/import/secure_getenv.c: Update.
1562         * gnulib/import/setenv.c: Update.
1563         * gnulib/import/signal.in.h: Update.
1564         * gnulib/import/stat-time.c: Update.
1565         * gnulib/import/stat-time.h: Update.
1566         * gnulib/import/stat-w32.c: Update.
1567         * gnulib/import/stat-w32.h: Update.
1568         * gnulib/import/stat.c: Update.
1569         * gnulib/import/stdbool.in.h: Update.
1570         * gnulib/import/stddef.in.h: Update.
1571         * gnulib/import/stdint.in.h: Update.
1572         * gnulib/import/stdio.in.h: Update.
1573         * gnulib/import/stdlib.in.h: Update.
1574         * gnulib/import/str-two-way.h: Update.
1575         * gnulib/import/strchrnul.c: Update.
1576         * gnulib/import/strdup.c: Update.
1577         * gnulib/import/streq.h: Update.
1578         * gnulib/import/strerror-override.c: Update.
1579         * gnulib/import/strerror-override.h: Update.
1580         * gnulib/import/strerror.c: Update.
1581         * gnulib/import/string.in.h: Update.
1582         * gnulib/import/stripslash.c: Update.
1583         * gnulib/import/strnlen1.c: Update.
1584         * gnulib/import/strnlen1.h: Update.
1585         * gnulib/import/strstr.c: Update.
1586         * gnulib/import/strtok_r.c: Update.
1587         * gnulib/import/sys_stat.in.h: Update.
1588         * gnulib/import/sys_time.in.h: Update.
1589         * gnulib/import/sys_types.in.h: Update.
1590         * gnulib/import/tempname.c: Update.
1591         * gnulib/import/tempname.h: Update.
1592         * gnulib/import/time.in.h: Update.
1593         * gnulib/import/unistd--.h: Update.
1594         * gnulib/import/unistd-safer.h: Update.
1595         * gnulib/import/unistd.in.h: Update.
1596         * gnulib/import/unsetenv.c: Update.
1597         * gnulib/import/verify.h: Update.
1598         * gnulib/import/extra/snippet/warn-on-use.h: Update.
1599         * gnulib/import/wchar.in.h: Update.
1600         * gnulib/import/wctype.in.h: Update.
1601         * gnulib/import/xalloc-oversized.h: Update.
1602         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
1603         "53e2c179f26a890fa6685af4b6c1397ee370433b".
1604
1605 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
1606
1607         * record-btrace.c (get_thread_current_frame): Remove
1608         old_inferior_ptid.
1609
1610 2018-09-10  Jerome Guitton  <guitton@adacore.com>
1611
1612         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
1613         with check_tag to 1 if and only if the type is tagged and the
1614         component being searched cannot been found in the current
1615         view. Otherwise, always call ada_to_fixed_type with
1616         check_tag to 0.
1617
1618 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1619
1620         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
1621         declaration.
1622         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
1623         * ada-varobj.c (ada_varobj_get_number_of_children,
1624         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
1625
1626 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1627
1628         * ada-valprint.c (ada_value_print): Use type instead of
1629         enclosing type.
1630
1631 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1632
1633         * ada-lang.c (ada_value_subscript): Handle case when parameter is
1634         an array of access to unconstrained array.
1635
1636 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1637
1638         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
1639         (ada_check_typedef): Use it.
1640
1641 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1642
1643         * ada-varobj.c (ada_varobj_describe_struct_child)
1644         (ada_varobj_describe_child): Handle union case like struct one.
1645
1646 2018-09-10  Tom Tromey  <tom@tromey.com>
1647
1648         PR python/18380:
1649         * python/python.c (_initialize_python): Make example in "python"
1650         help work in Python 3.
1651
1652 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
1653
1654         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
1655         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
1656         $(EXEEXT) to the script, as it is not a program.
1657
1658 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
1659
1660         * python/py-prettyprint.c (pretty_print_one_value): Return
1661         gdbpy_ref<>.
1662         (print_string_repr): Adjust.
1663         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
1664         * python/python-internal.h (apply_varobj_pretty_printer): Return
1665         gdbpy_ref<>.
1666         * varobj.c (varobj_value_get_print_value): Adjust.
1667
1668 2018-09-08  Tom Tromey  <tom@tromey.com>
1669
1670         PR python/16047:
1671         * python/py-prettyprint.c (pretty_print_one_value): Check for
1672         to_string method.
1673
1674 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1675
1676         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
1677         replace_operator_with_call.
1678
1679 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1680
1681         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
1682
1683 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1684
1685         * ada-typeprint.c (print_range): Print the bounds using TYPE
1686         rather than its TYPE_TARGET_TYPE.
1687
1688 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1689
1690         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
1691         call to ada_to_fixed_value_create.
1692
1693 2018-09-08  Jerome Guitton  <guitton@adacore.com>
1694
1695         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
1696
1697 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1698
1699         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
1700         by calls to error.
1701
1702 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1703
1704         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
1705         Move update of loop variable "fi".
1706
1707 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1708
1709         * ada-lang.c (value_assign_to_component): In the case of
1710         big-endian targets, extract the bits of the given VAL
1711         using an src_offset of zero if container is not a scalar.
1712
1713 2018-09-06  Simon Ser  <contact@emersion.fr>
1714
1715         PR gdb/23105
1716         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
1717         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
1718         * fbsd-tdep.c (fbsd_make_note_desc): New.
1719         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
1720         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
1721         * target.h (enum target_object) Add FreeBSD-specific
1722         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
1723
1724 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
1725
1726         * compile/compile-c.h (generate_c_for_variable_locations):
1727         Change reference to pointer.
1728         * compile/compile-c-support.c (compile_program) <compute>:
1729         Likewise.
1730         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
1731         (generate_c_for_for_one_variable): Likewise
1732         (generate_c_for_variable_locations): Likewise
1733         * compile/compile-c-types.c (compile_c_instance::convert_type):
1734         Likewise
1735         * compile/compile-cplus-symbols.c (convert_one_symbol):
1736         std::move the scope passed to enter_scope.
1737         * compile/compile-cplus-types.c
1738         (compile_cplus_instance::enter_scope): Make parameter
1739         rvalue-reference.
1740         (compile_cplus_instance::new_scope): Change reference to
1741         pointer.
1742         (compile_cplus_instance::convert_type): Likewise
1743         (compile_cplus_convert_typedef): std::move the scope passed to
1744         enter_scope.
1745         (compile_cplus_convert_struct_or_union): Likewise.
1746         (compile_cplus_convert_enum): Likewise.
1747         (compile_cplus_convert_namespace): Likewise.
1748         * compile/compile-cplus.h (compile_cplus_instance)
1749         <enter_scope>: Make parameter rvalue-reference.
1750         * compile/compile-internal.h (compile_instance)
1751         <get_cached_type>: Likewise
1752         * compile/compile-loc2c.c (push): Likewise
1753         (pushf): Likewise
1754         (unary): Likewise
1755         (binary): Likewise
1756         (print_label): Likewise
1757         (pushf_register_address): Likewise
1758         (pushf_register): Likewise
1759         (do_compile_dwarf_expr_to_c): Likewise
1760         (compile_dwarf_expr_to_c): Likewise
1761         (compile_dwarf_bounds_to_c): Likewise
1762         * compile/compile.c (compile_instance::get_cached_type):
1763         Likewise
1764         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
1765         (compile_dwarf_bounds_to_c): Likewise
1766         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
1767         (dwarf2_compile_property_to_c): Likewise
1768         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
1769         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
1770         Likewise
1771
1772 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
1773
1774         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
1775         * tui/tui-data.c (init_content_element): Don't initialize it.
1776
1777 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
1778
1779         * tui/tui-data.h (struct tui_win_info)
1780         <detail::opaque>: Remove.
1781         * tui/tui-data.c (init_win_info): Remove assignment.
1782
1783 2018-09-05  Tom Tromey  <tom@tromey.com>
1784
1785         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
1786         -Wformat-nonliteral.
1787         * target-float.c (host_float_ops<T>::to_string)
1788         (host_float_ops<T>::from_string): Use
1789         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
1790         * configure: Rebuild.
1791
1792 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
1793
1794         * printcmd.c (printf_c_string): Use
1795         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
1796         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
1797
1798 2018-09-05  Tom Tromey  <tom@tromey.com>
1799
1800         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
1801
1802 2018-09-05  Tom de Vries  <tdevries@suse.de>
1803
1804         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
1805         with resolve_abstract_p == true.
1806         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
1807         defaulting to false. Propagate resolve_abstract_p to
1808         dwarf2_fetch_die_loc_sect_off.
1809         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
1810         parameter, defaulting to false.
1811         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
1812         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
1813         parameter.
1814         * dwarf2read.h (struct die_info): Forward-declare.
1815         (die_info_ptr): New typedef.
1816         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
1817
1818 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
1819
1820         GDB 8.2 released.
1821
1822 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
1823             Pedro Alves  <palves@redhat.com>
1824
1825         * gnulib/Makefile.in (aclocal_m4_deps): Move to
1826         "aclocal-m4-deps.mk".  Include file here.
1827         $(srcdir)/aclocal.m4: Add "configure.ac".
1828         * gnulib/aclocal-m4-deps.mk: New file.
1829         * gnulib/update-gnulib.sh: Automatically update
1830         "aclocal-m4-deps.mk".
1831
1832 2018-09-04  Tom Tromey  <tom@tromey.com>
1833
1834         * configure: Rebuild.
1835         * configure.ac: Remove multi-ice code.
1836
1837 2018-09-04  Tom Tromey  <tom@tromey.com>
1838
1839         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
1840         (ada-exp.o): Update.
1841
1842 2018-09-04  Tom Tromey  <tom@tromey.com>
1843
1844         * Makefile.in (printcmd.o, target-float.o): Remove.
1845         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
1846
1847 2018-09-04  Tom Tromey  <tom@tromey.com>
1848
1849         * gnulib/Makefile.in: Remove obsolete comment.
1850         * Makefile.in: Remove obsolete comment.
1851
1852 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
1853
1854         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
1855         line with '+'.
1856
1857 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
1858
1859         * riscv-tdep.c: Add 'prologue-value.h' include.
1860         (struct riscv_unwind_cache): New struct.
1861         (riscv_debug_unwinder): New global.
1862         (riscv_scan_prologue): Update arguments, capture register details
1863         from prologue scan.
1864         (riscv_skip_prologue): Reformat arguments line, move end of
1865         prologue calculation into riscv_scan_prologue.
1866         (riscv_frame_cache): Update return type, create
1867         riscv_unwind_cache, scan the prologue, and fill in remaining cache
1868         details.
1869         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
1870         (riscv_frame_prev_register): Use the trad_frame within the
1871         riscv_unwind_cache.
1872         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
1873         flag.
1874
1875 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
1876
1877         * trad-frame.h (trad_frame_set_realreg): Declare.
1878         (trad_frame_set_addr): Declare.
1879         * trad-frame.c (trad_frame_set_realreg): Define new function.
1880         (trad_frame_set_addr): Define new function.
1881         (trad_frame_set_reg_realreg): Use new function.
1882         (trad_frame_set_reg_addr): Use new function.
1883
1884 2018-09-01  Keith Seitz  <keiths@redhat.com>
1885
1886         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
1887         pulongest instead of "%lld".
1888         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
1889         ATTRIBUTE_UNUSED.
1890
1891 2018-08-31  Tom Tromey  <tom@tromey.com>
1892
1893         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
1894         variant part type.
1895
1896 2018-08-31  Pedro Alves  <palves@redhat.com>
1897
1898         * gdbarch.h: Regenerate.
1899
1900 2018-08-31  Pedro Alves  <palves@redhat.com>
1901
1902         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
1903         * target.h (Hardware watchpoint interfaces): Describe
1904         continuable/steppable/non-steppable watchpoints.
1905         * gdbarch.h, gdbarch.c: Regenerate.
1906
1907 2018-08-31  Pedro Alves  <palves@redhat.com>
1908
1909         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
1910         Delete.
1911         * s390-linux-nat.c
1912         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
1913         * target.h (target_ops::have_continuable_watchpoint): Delete.
1914         (target_have_continuable_watchpoint): Delete.
1915         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
1916         * target-delegates.c: Regenerate.
1917
1918 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
1919
1920         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
1921         the files present in "gnulib/import/m4/".
1922
1923 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
1924
1925         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
1926         c.sw, c.swsp, and c.sdsp.
1927
1928 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
1929
1930         * riscv-tdep.c (struct riscv_inferior_data): Delete.
1931         (riscv_read_misa_reg): Don't cache value read into inferior data.
1932         (riscv_new_inferior_data): Delete.
1933         (riscv_inferior_data_cleanup): Delete.
1934         (riscv_inferior_data): Delete.
1935         (riscv_invalidate_inferior_data): Delete.
1936         (_initialize_riscv_tdep): Remove initialisation of inferior data.
1937
1938 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
1939
1940         * compile/compile-cplus-types.c
1941         (compile_cplus_instance::leave_scope): Take the address of scope
1942         object.
1943         (compile_cplus_instance::convert_qualified_base): Compare quals
1944         to 0.
1945
1946 2018-08-30  Keith Seitz  <keiths@redhat.com>
1947
1948         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
1949         Use "%s" and host_address_to_string instead of "%p" in printf.
1950
1951 2018-08-29  Keith Seitz  <keiths@redhat.com>
1952
1953         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
1954         and compile-cplus-types.c.
1955         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
1956         * c-lang.c (cplus_language_defn): Set C++ compile functions.
1957         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
1958         Declare.
1959         * compile/compile-c-support.c: Include compile-cplus.h.
1960         (load_libcompile): Templatize.
1961         (get_compile_context): "New" function.
1962         (c_get_compile_context): Use get_compile_context.
1963         (cplus_get_compile_context): New function.
1964         (cplus_push_user_expression, cplus_pop_user_expression)
1965         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
1966         (cplus_compute_program): Define new structs/functions.
1967         * compile/compile-cplus-symmbols.c: New file.
1968         * compile/compile-cplus-types.c: New file.
1969         * compile/compile-cplus.h: New file.
1970         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
1971         Declare.
1972         * compile/compile-object-load.c (get_out_value_type): Use
1973         strncmp_iw when comparing symbol names.
1974         (compile_object_load): Add mst_bss and mst_data.
1975         * compile/compile.c (_initialize_compile): Remove
1976         -Wno-implicit-function-declaration from `compile_args'.
1977         * compile/gcc-cp-plugin.h: New file.
1978         * NEWS: Mention C++ compile support and new debug options.
1979
1980 2018-08-29  Keith Seitz  <keiths@redhat.com>
1981
1982         * linespec.c (collect_info::add_symbol): Make virtual.
1983         (struct symbol_searcher_collect_info): New struct.
1984         (symbol_searcher::find_all_symbols): New method.
1985         * symtab.h (class symbol_searcher): New class.
1986
1987 2018-08-29  Keith Seitz  <keiths@redhat.com>
1988
1989         * linespec.c (struct linespec) <function_symbols, label_symbols>:
1990         Change to vector of block_symbol.  Update all users.
1991         (struct collect_info) <symbols>: Likewise.
1992         (collect_info::add_symbol): Take block_symbol as argument.
1993         Update all callers.
1994         (decode_compound_collector) <m_symbols>: Change type to vector
1995         of block_symbol.  Update all users.
1996         (decode_compound_collector::operator ()): Change parameter type
1997         to block_symbol.
1998         (find_method, find_function_symbols, find_linespec_symbols)
1999         (find_label_symbols_in_block, find_label_symbols): Change symbol
2000         vectors to block_symbol vectors.
2001         * symtab.h (symbol_found_callback_ftype): Change parameter type to
2002         block_symbol.
2003
2004 2018-08-29  Keith Seitz  <keiths@redhat.com>
2005
2006         * linespec.c (symbolp): Remove typedef and VEC definitions.
2007         (bound_minimal_symbol_d): Likewise.
2008
2009 2018-08-29  Keith Seitz  <keiths@redhat.com>
2010
2011         * linespec.c (decode_compound_collector::decode_compound_collector):
2012         Remove initialization for `m_symtabs'.
2013         (decode_compound_collector::release_symbols): Change return type
2014         to std::vector.  Update all callers.
2015         (class decode_compound_collector) <m_symbols>: Change type to
2016         std::vector.
2017         (lookup_prefix_sym): Change return type to std::vector.  Update all
2018         callers.
2019         (compare_symbols): Remove.
2020         (std_compare_symbols): Rename to `compare_symbols'.
2021         (find_method): Change `sym_classes' parameter to std::vector.
2022         Update all callers.  Use std::sort to sort sym_classes.
2023         (find_linespec_symbols): Remove cleanup.
2024
2025 2018-08-29  Keith Seitz  <keiths@redhat.com>
2026
2027         * linespec.c (struct linespec) <minimal_symbols>: Change type to
2028         std::vector.  Update all users.
2029         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
2030         (struct collect_info) <minimal_symbols>: Likewise.
2031         (compare_msymbols): Return bool.  Change parameters to const
2032         bound_minimal_symbol references.
2033         (find_method, find_function_symbols, find_linespec_symbols): Change
2034         `minsyms' parameter to std::vector.  Update all callers.
2035
2036 2018-08-29  Keith Seitz  <keiths@redhat.com>
2037
2038         * linespec.c (struct linespec) <label_symbols>: Change type to
2039         std::vector.  Update all users.
2040         (find_label_symbols_in_block): Change `result' parameter to
2041         std::vector.  Update all callers.
2042         (find_label_symbols): Return std::vector.  Update all callers.
2043
2044 2018-08-29  Keith Seitz  <keiths@redhat.com>
2045
2046         * linespec.c (struct linespec) <function_symbols>: Change type to
2047         std::vector.  Update all users.
2048         (struct collect_info) <function_symbols>: Likewise.
2049         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
2050         (std_compare_symbols): New function.
2051         (find_method, find_function_symbols, find_linespec_symbols)
2052         (find_label_symbols_in_block): Change `symbols' parameter to
2053         std::vector.  Update all callers.
2054         (find_label_symbols): Likewise for `function_symbols' and
2055         `label_funcs_ret'.
2056
2057 2018-08-29  Keith Seitz  <keiths@redhat.com>
2058
2059         * linespec.c (symtab_vector_up): Define.
2060         (struct linespec) <file_symtabs>: Change type to std::vector *.
2061         Update all uses.
2062         (struct collect_info) <file_symtabs>: Likewise.
2063         (collect_symtabs_from_filename): Return symtab_vector_up.
2064         Update all callers.
2065         (decode_objc): Remove cleanup.
2066         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
2067         (symtab_collector::release_symtabs): Return symtab_vector_up.
2068         Update all callers.
2069         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
2070         Update all users.
2071         (collect_symtabs_from_filename, symtabs_from_filename): Return
2072         symtab_vector_up.  Update all callers.
2073
2074 2018-08-29  Tom Tromey  <tom@tromey.com>
2075
2076         * csky-tdep.c (csky_analyze_prologue): Use
2077         core_addr_to_string_nz.
2078
2079 2018-08-29  Tom Tromey  <tom@tromey.com>
2080
2081         * windows-nat.c (struct xlate_exception) <them>: Change type to
2082         DWORD.
2083         (xlate): Fix formatting.  Remove last entry.
2084         (struct xlate_exception, xlate): Comment out.
2085         (windows_nat_target::resume): Use ranged for.
2086
2087 2018-08-29  Jim Wilson  <jimw@sifive.com>
2088
2089         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
2090         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
2091         of NT_PRFPREG.
2092         (riscv_linux_nat_target::store_registers): Likewise.
2093
2094 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2095
2096         PR gdb/23555
2097         PR gdb/23558
2098         * gnulib/aclocal.m4: Regenerate.
2099         * gnulib/config.in: Regenerate.
2100         * gnulib/configure: Regenerate.
2101         * gnulib/import/Makefile.am: Update.
2102         * gnulib/import/Makefile.in: Update.
2103         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2104         * gnulib/import/_Noreturn.h: ... this.
2105         * gnulib/import/alloca.in.h: Update.
2106         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2107         * gnulib/import/arg-nonnull.h: ... this.
2108         * gnulib/import/assure.h: Update.
2109         * gnulib/import/at-func.c: Update.
2110         * gnulib/import/basename-lgpl.c: Update.
2111         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2112         * gnulib/import/c++defs.h: ... this.
2113         * gnulib/import/canonicalize-lgpl.c: Update.
2114         * gnulib/import/cdefs.h: Update.
2115         * gnulib/import/chdir-long.c: Update.
2116         * gnulib/import/chdir-long.h: Update.
2117         * gnulib/import/cloexec.c: Update.
2118         * gnulib/import/cloexec.h: Update.
2119         * gnulib/import/close.c: Update.
2120         * gnulib/import/closedir.c: Update.
2121         * gnulib/import/config.charset: Update.
2122         * gnulib/import/dirent-private.h: Update.
2123         * gnulib/import/dirent.in.h: Update.
2124         * gnulib/import/dirfd.c: Update.
2125         * gnulib/import/dirname-lgpl.c: Update.
2126         * gnulib/import/dirname.h: Update.
2127         * gnulib/import/dosname.h: Update.
2128         * gnulib/import/dup-safer-flag.c: Update.
2129         * gnulib/import/dup-safer.c: Update.
2130         * gnulib/import/dup.c: Update.
2131         * gnulib/import/dup2.c: Update.
2132         * gnulib/import/errno.in.h: Update.
2133         * gnulib/import/error.c: Update.
2134         * gnulib/import/error.h: Update.
2135         * gnulib/import/exitfail.c: Update.
2136         * gnulib/import/exitfail.h: Update.
2137         * gnulib/import/extra/update-copyright: Update.
2138         * gnulib/import/fchdir.c: Update.
2139         * gnulib/import/fcntl.c: Update.
2140         * gnulib/import/fcntl.in.h: Update.
2141         * gnulib/import/fd-hook.c: Update.
2142         * gnulib/import/fd-hook.h: Update.
2143         * gnulib/import/fd-safer-flag.c: Update.
2144         * gnulib/import/fd-safer.c: Update.
2145         * gnulib/import/fdopendir.c: Update.
2146         * gnulib/import/filename.h: Update.
2147         * gnulib/import/filenamecat-lgpl.c: Update.
2148         * gnulib/import/filenamecat.h: Update.
2149         * gnulib/import/flexmember.h: Update.
2150         * gnulib/import/float+.h: Update.
2151         * gnulib/import/float.c: Update.
2152         * gnulib/import/float.in.h: Update.
2153         * gnulib/import/fnmatch.c: Update.
2154         * gnulib/import/fnmatch.in.h: Update.
2155         * gnulib/import/fnmatch_loop.c: Update.
2156         * gnulib/import/fpucw.h: Update.
2157         * gnulib/import/frexp.c: Update.
2158         * gnulib/import/frexpl.c: Update.
2159         * gnulib/import/fstat.c: Update.
2160         * gnulib/import/fstatat.c: Update.
2161         * gnulib/import/getcwd-lgpl.c: Update.
2162         * gnulib/import/getcwd.c: Update.
2163         * gnulib/import/getdtablesize.c: Update.
2164         * gnulib/import/getlogin_r.c: Update.
2165         * gnulib/import/getprogname.c: Update.
2166         * gnulib/import/getprogname.h: Update.
2167         * gnulib/import/gettext.h: Update.
2168         * gnulib/import/gettimeofday.c: Update.
2169         * gnulib/import/glob-libc.h: Update.
2170         * gnulib/import/glob.c: Update.
2171         * gnulib/import/glob.in.h: Update.
2172         * gnulib/import/glob_internal.h: Update.
2173         * gnulib/import/glob_pattern_p.c: Update.
2174         * gnulib/import/globfree.c: Update.
2175         * gnulib/import/hard-locale.c: Update.
2176         * gnulib/import/hard-locale.h: Update.
2177         * gnulib/import/intprops.h: Update.
2178         * gnulib/import/inttypes.in.h: Update.
2179         * gnulib/import/isnan.c: Update.
2180         * gnulib/import/isnand-nolibm.h: Update.
2181         * gnulib/import/isnand.c: Update.
2182         * gnulib/import/isnanl-nolibm.h: Update.
2183         * gnulib/import/isnanl.c: Update.
2184         * gnulib/import/itold.c: Update.
2185         * gnulib/import/libc-config.h: Update.
2186         * gnulib/import/limits.in.h: Update.
2187         * gnulib/import/localcharset.c: Update.
2188         * gnulib/import/localcharset.h: Update.
2189         * gnulib/import/localtime-buffer.c: Update.
2190         * gnulib/import/localtime-buffer.h: Update.
2191         * gnulib/import/lstat.c: Update.
2192         * gnulib/import/m4/00gnulib.m4: Update.
2193         * gnulib/import/m4/__inline.m4: Update.
2194         * gnulib/import/m4/absolute-header.m4: Update.
2195         * gnulib/import/m4/alloca.m4: Update.
2196         * gnulib/import/m4/builtin-expect.m4: Update.
2197         * gnulib/import/m4/canonicalize.m4: Update.
2198         * gnulib/import/m4/chdir-long.m4: Update.
2199         * gnulib/import/m4/close.m4: Update.
2200         * gnulib/import/m4/closedir.m4: Update.
2201         * gnulib/import/m4/configmake.m4: Update.
2202         * gnulib/import/m4/d-ino.m4: Update.
2203         * gnulib/import/m4/d-type.m4: Update.
2204         * gnulib/import/m4/dirent_h.m4: Update.
2205         * gnulib/import/m4/dirfd.m4: Update.
2206         * gnulib/import/m4/dirname.m4: Update.
2207         * gnulib/import/m4/double-slash-root.m4: Update.
2208         * gnulib/import/m4/dup.m4: Update.
2209         * gnulib/import/m4/dup2.m4: Update.
2210         * gnulib/import/m4/eealloc.m4: Update.
2211         * gnulib/import/m4/environ.m4: Update.
2212         * gnulib/import/m4/errno_h.m4: Update.
2213         * gnulib/import/m4/error.m4: Update.
2214         * gnulib/import/m4/exponentd.m4: Update.
2215         * gnulib/import/m4/exponentl.m4: Update.
2216         * gnulib/import/m4/extensions.m4: Update.
2217         * gnulib/import/m4/extern-inline.m4: Update.
2218         * gnulib/import/m4/fchdir.m4: Update.
2219         * gnulib/import/m4/fcntl-o.m4: Update.
2220         * gnulib/import/m4/fcntl.m4: Update.
2221         * gnulib/import/m4/fcntl_h.m4: Update.
2222         * gnulib/import/m4/fdopendir.m4: Update.
2223         * gnulib/import/m4/filenamecat.m4: Update.
2224         * gnulib/import/m4/flexmember.m4: Update.
2225         * gnulib/import/m4/float_h.m4: Update.
2226         * gnulib/import/m4/fnmatch.m4: Update.
2227         * gnulib/import/m4/fnmatch_h.m4: Update.
2228         * gnulib/import/m4/fpieee.m4: Update.
2229         * gnulib/import/m4/frexp.m4: Update.
2230         * gnulib/import/m4/frexpl.m4: Update.
2231         * gnulib/import/m4/fstat.m4: Update.
2232         * gnulib/import/m4/fstatat.m4: Update.
2233         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2234         * gnulib/import/m4/getcwd-path-max.m4: Update.
2235         * gnulib/import/m4/getcwd.m4: Update.
2236         * gnulib/import/m4/getdtablesize.m4: Update.
2237         * gnulib/import/m4/getlogin.m4: Update.
2238         * gnulib/import/m4/getlogin_r.m4: Update.
2239         * gnulib/import/m4/getpagesize.m4: Update.
2240         * gnulib/import/m4/getprogname.m4: Update.
2241         * gnulib/import/m4/gettimeofday.m4: Update.
2242         * gnulib/import/m4/glibc21.m4: Update.
2243         * gnulib/import/m4/glob.m4: Update.
2244         * gnulib/import/m4/glob_h.m4: Update.
2245         * gnulib/import/m4/gnulib-cache.m4: Update.
2246         * gnulib/import/m4/gnulib-common.m4: Update.
2247         * gnulib/import/m4/gnulib-comp.m4: Update.
2248         * gnulib/import/m4/gnulib-tool.m4: Update.
2249         * gnulib/import/m4/hard-locale.m4: Update.
2250         * gnulib/import/m4/include_next.m4: Update.
2251         * gnulib/import/m4/inttypes-pri.m4: Update.
2252         * gnulib/import/m4/inttypes.m4: Update.
2253         * gnulib/import/m4/isnand.m4: Update.
2254         * gnulib/import/m4/isnanl.m4: Update.
2255         * gnulib/import/m4/largefile.m4: Update.
2256         * gnulib/import/m4/limits-h.m4: Update.
2257         * gnulib/import/m4/localcharset.m4: Update.
2258         * gnulib/import/m4/locale-fr.m4: Update.
2259         * gnulib/import/m4/locale-ja.m4: Update.
2260         * gnulib/import/m4/locale-zh.m4: Update.
2261         * gnulib/import/m4/localtime-buffer.m4: Update.
2262         * gnulib/import/m4/longlong.m4: Update.
2263         * gnulib/import/m4/lstat.m4: Update.
2264         * gnulib/import/m4/malloc.m4: Update.
2265         * gnulib/import/m4/malloca.m4: Update.
2266         * gnulib/import/m4/math_h.m4: Update.
2267         * gnulib/import/m4/mbrtowc.m4: Update.
2268         * gnulib/import/m4/mbsinit.m4: Update.
2269         * gnulib/import/m4/mbsrtowcs.m4: Update.
2270         * gnulib/import/m4/mbstate_t.m4: Update.
2271         * gnulib/import/m4/memchr.m4: Update.
2272         * gnulib/import/m4/memmem.m4: Update.
2273         * gnulib/import/m4/mempcpy.m4: Update.
2274         * gnulib/import/m4/memrchr.m4: Update.
2275         * gnulib/import/m4/mkdir.m4: Update.
2276         * gnulib/import/m4/mkstemp.m4: Update.
2277         * gnulib/import/m4/mmap-anon.m4: Update.
2278         * gnulib/import/m4/mode_t.m4: Update.
2279         * gnulib/import/m4/msvc-inval.m4: Update.
2280         * gnulib/import/m4/msvc-nothrow.m4: Update.
2281         * gnulib/import/m4/multiarch.m4: Update.
2282         * gnulib/import/m4/nocrash.m4: Update.
2283         * gnulib/import/m4/off_t.m4: Update.
2284         * gnulib/import/m4/onceonly.m4: Update.
2285         * gnulib/import/m4/open-cloexec.m4: Update.
2286         * gnulib/import/m4/open.m4: Update.
2287         * gnulib/import/m4/openat.m4: Update.
2288         * gnulib/import/m4/opendir.m4: Update.
2289         * gnulib/import/m4/pathmax.m4: Update.
2290         * gnulib/import/m4/rawmemchr.m4: Update.
2291         * gnulib/import/m4/readdir.m4: Update.
2292         * gnulib/import/m4/readlink.m4: Update.
2293         * gnulib/import/m4/realloc.m4: Update.
2294         * gnulib/import/m4/rename.m4: Update.
2295         * gnulib/import/m4/rewinddir.m4: Update.
2296         * gnulib/import/m4/rmdir.m4: Update.
2297         * gnulib/import/m4/save-cwd.m4: Update.
2298         * gnulib/import/m4/secure_getenv.m4: Update.
2299         * gnulib/import/m4/setenv.m4: Update.
2300         * gnulib/import/m4/signal_h.m4: Update.
2301         * gnulib/import/m4/ssize_t.m4: Update.
2302         * gnulib/import/m4/stat-time.m4: Update.
2303         * gnulib/import/m4/stat.m4: Update.
2304         * gnulib/import/m4/std-gnu11.m4: Update.
2305         * gnulib/import/m4/stdbool.m4: Update.
2306         * gnulib/import/m4/stddef_h.m4: Update.
2307         * gnulib/import/m4/stdint.m4: Update.
2308         * gnulib/import/m4/stdio_h.m4: Update.
2309         * gnulib/import/m4/stdlib_h.m4: Update.
2310         * gnulib/import/m4/strchrnul.m4: Update.
2311         * gnulib/import/m4/strdup.m4: Update.
2312         * gnulib/import/m4/strerror.m4: Update.
2313         * gnulib/import/m4/string_h.m4: Update.
2314         * gnulib/import/m4/strstr.m4: Update.
2315         * gnulib/import/m4/strtok_r.m4: Update.
2316         * gnulib/import/m4/sys_socket_h.m4: Update.
2317         * gnulib/import/m4/sys_stat_h.m4: Update.
2318         * gnulib/import/m4/sys_time_h.m4: Update.
2319         * gnulib/import/m4/sys_types_h.m4: Update.
2320         * gnulib/import/m4/tempname.m4: Update.
2321         * gnulib/import/m4/time_h.m4: Update.
2322         * gnulib/import/m4/unistd-safer.m4: Update.
2323         * gnulib/import/m4/unistd_h.m4: Update.
2324         * gnulib/import/m4/warn-on-use.m4: Update.
2325         * gnulib/import/m4/wchar_h.m4: Update.
2326         * gnulib/import/m4/wchar_t.m4: Update.
2327         * gnulib/import/m4/wctype_h.m4: Update.
2328         * gnulib/import/m4/wint_t.m4: Update.
2329         * gnulib/import/malloc.c: Update.
2330         * gnulib/import/malloc/scratch_buffer.h: Update.
2331         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2332         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2333         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2334         * gnulib/import/malloca.c: Update.
2335         * gnulib/import/malloca.h: Update.
2336         * gnulib/import/malloca.valgrind: Update.
2337         * gnulib/import/math.in.h: Update.
2338         * gnulib/import/mbrtowc.c: Update.
2339         * gnulib/import/mbsinit.c: Update.
2340         * gnulib/import/mbsrtowcs-impl.h: Update.
2341         * gnulib/import/mbsrtowcs-state.c: Update.
2342         * gnulib/import/mbsrtowcs.c: Update.
2343         * gnulib/import/memchr.c: Update.
2344         * gnulib/import/memmem.c: Update.
2345         * gnulib/import/mempcpy.c: Update.
2346         * gnulib/import/memrchr.c: Update.
2347         * gnulib/import/mkdir.c: Update.
2348         * gnulib/import/mkstemp.c: Update.
2349         * gnulib/import/msvc-inval.c: Update.
2350         * gnulib/import/msvc-inval.h: Update.
2351         * gnulib/import/msvc-nothrow.c: Update.
2352         * gnulib/import/msvc-nothrow.h: Update.
2353         * gnulib/import/open.c: Update.
2354         * gnulib/import/openat-die.c: Update.
2355         * gnulib/import/openat-priv.h: Update.
2356         * gnulib/import/openat-proc.c: Update.
2357         * gnulib/import/openat.c: Update.
2358         * gnulib/import/openat.h: Update.
2359         * gnulib/import/opendir.c: Update.
2360         * gnulib/import/pathmax.h: Update.
2361         * gnulib/import/pipe-safer.c: Update.
2362         * gnulib/import/rawmemchr.c: Update.
2363         * gnulib/import/readdir.c: Update.
2364         * gnulib/import/readlink.c: Update.
2365         * gnulib/import/realloc.c: Update.
2366         * gnulib/import/ref-add.sin: Update.
2367         * gnulib/import/ref-del.sin: Update.
2368         * gnulib/import/rename.c: Update.
2369         * gnulib/import/rewinddir.c: Update.
2370         * gnulib/import/rmdir.c: Update.
2371         * gnulib/import/same-inode.h: Update.
2372         * gnulib/import/save-cwd.c: Update.
2373         * gnulib/import/save-cwd.h: Update.
2374         * gnulib/import/scratch_buffer.h: Update.
2375         * gnulib/import/secure_getenv.c: Update.
2376         * gnulib/import/setenv.c: Update.
2377         * gnulib/import/signal.in.h: Update.
2378         * gnulib/import/stat-time.c: Update.
2379         * gnulib/import/stat-time.h: Update.
2380         * gnulib/import/stat-w32.c: Update.
2381         * gnulib/import/stat-w32.h: Update.
2382         * gnulib/import/stat.c: Update.
2383         * gnulib/import/stdbool.in.h: Update.
2384         * gnulib/import/stddef.in.h: Update.
2385         * gnulib/import/stdint.in.h: Update.
2386         * gnulib/import/stdio.in.h: Update.
2387         * gnulib/import/stdlib.in.h: Update.
2388         * gnulib/import/str-two-way.h: Update.
2389         * gnulib/import/strchrnul.c: Update.
2390         * gnulib/import/strdup.c: Update.
2391         * gnulib/import/streq.h: Update.
2392         * gnulib/import/strerror-override.c: Update.
2393         * gnulib/import/strerror-override.h: Update.
2394         * gnulib/import/strerror.c: Update.
2395         * gnulib/import/string.in.h: Update.
2396         * gnulib/import/stripslash.c: Update.
2397         * gnulib/import/strnlen1.c: Update.
2398         * gnulib/import/strnlen1.h: Update.
2399         * gnulib/import/strstr.c: Update.
2400         * gnulib/import/strtok_r.c: Update.
2401         * gnulib/import/sys_stat.in.h: Update.
2402         * gnulib/import/sys_time.in.h: Update.
2403         * gnulib/import/sys_types.in.h: Update.
2404         * gnulib/import/tempname.c: Update.
2405         * gnulib/import/tempname.h: Update.
2406         * gnulib/import/time.in.h: Update.
2407         * gnulib/import/unistd--.h: Update.
2408         * gnulib/import/unistd-safer.h: Update.
2409         * gnulib/import/unistd.in.h: Update.
2410         * gnulib/import/unsetenv.c: Update.
2411         * gnulib/import/verify.h: Update.
2412         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2413         * gnulib/import/wchar.in.h: Update.
2414         * gnulib/import/wctype.in.h: Update.
2415         * gnulib/import/xalloc-oversized.h: Update.
2416         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2417         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2418
2419 2018-08-16  Gary Benson <gbenson@redhat.com>
2420
2421         PR gdb/13000:
2422         * gdb/main.c (captured_main_1): Exit with nonzero status
2423         in batch mode if the last command to be executed failed.
2424         * NEWS: Mention the above.
2425
2426 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
2427
2428         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
2429         end of warning message.
2430
2431 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2432
2433         PR gdb/22943:
2434         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
2435         (aarch64_extract_return_value): Use
2436         aapcs_is_vfp_call_or_return_candidate.
2437         (aarch64_return_in_memory): Likewise.
2438         (aarch64_store_return_value): Likewise.
2439
2440 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2441
2442         * aarch64-tdep.c
2443         (aapcs_is_vfp_call_or_return_candidate): Make static
2444         (pass_in_v_or_stack): Remove function.
2445         (pass_in_v_vfp_candidate): New function.
2446         (aarch64_push_dummy_call): Check for float register candidates.
2447
2448 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2449
2450         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
2451         (aapcs_is_vfp_call_or_return_candidate_1): New function.
2452         (aapcs_is_vfp_call_or_return_candidate): Likewise.
2453
2454 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
2455
2456         PR build/23399
2457         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
2458         (struct ipa_sym_addresses): Rename to...
2459         (struct ipa_sym_addresses_common): ... this.
2460         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
2461
2462 2018-08-28  Tom Tromey  <tom@tromey.com>
2463
2464         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2465         (token_fifo): Now a std::vector.
2466         (yylex, c_parse): Update.
2467         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2468         (token_fifo): Now a std::vector.
2469         (yylex, d_parse): Update.
2470         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2471         (token_fifo): Now a std::vector.
2472         (yylex, go_parse): Update.
2473
2474 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
2475
2476         * parser-defs.h (struct type_stack) <elements>: Change type to
2477         std::vector<union type_stack_elt>.
2478         <depth, size>: Remove.
2479         * parse.c (parse_exp_in_context_1): Adjust.
2480         (type_stack_reserve): Remove.
2481         (check_type_stack_depth): Remove.
2482         (insert_into_type_stack): Adjust to std::vector.
2483         (insert_type): Likewise.
2484         (push_type): Likewise.
2485         (push_type_int): Likewise.
2486         (insert_type_address_space): Likewise.
2487         (pop_type): Likewise.
2488         (pop_type_int): Likewise.
2489         (pop_typelist): Likewise.
2490         (pop_type_stack): Likewise.
2491         (append_type_stack): Likewise.
2492         (push_type_stack): Likewise.
2493         (get_type_stack): Likewise.
2494         (type_stack_cleanup): Likewise.
2495         (push_typelist): Likewise.
2496         (follow_types): Likewise.
2497         (_initialize_parse): Likewise.
2498
2499 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
2500
2501         * NEWS: Mention csky target.
2502
2503 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
2504             Hafiz Abid Qadeer  <abidh@codesourcery.com>
2505             Don Breazeal  <donb@codesourcery.com>
2506
2507         * csky-linux-tdep.c: New file.
2508         * csky-tdep.c: Likewise.
2509         * csky-tdep.h: Likewise.
2510         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
2511         csky-tdep.o.
2512         (HFILES_NO_SRCDIR): Add csky-tdep.h.
2513         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
2514         * configure.tgt: Add csky support.
2515
2516 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
2517
2518         * python/py-framefilter.c (py_print_frame): Print frame architecture
2519         when printing on an MI output.
2520
2521 2018-08-27  Tom Tromey  <tom@tromey.com>
2522
2523         PR build/23087:
2524         * configure: Rebuild.
2525         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
2526
2527 2018-08-27  Tom Tromey  <tom@tromey.com>
2528
2529         * aarch64-linux-tdep.c
2530         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
2531         casts to int.
2532
2533 2018-08-27  Tom Tromey  <tom@tromey.com>
2534
2535         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
2536         unsigned.
2537         (ppc64_standard_linkage1, ppc64_standard_linkage2)
2538         (ppc64_standard_linkage3, ppc64_standard_linkage4)
2539         (ppc64_standard_linkage5, ppc64_standard_linkage6)
2540         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
2541         unsigned.
2542
2543 2018-08-27  Tom Tromey  <tom@tromey.com>
2544
2545         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
2546         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
2547
2548 2018-08-27  Tom Tromey  <tom@tromey.com>
2549
2550         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
2551         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
2552         ULONGEST_MAX.
2553         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
2554         ULONGEST_MAX.
2555         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
2556         ULONGEST_MAX.
2557         * sparc-linux-tdep.c (sparc32_linux_sigframe)
2558         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
2559         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
2560         ULONGEST_MAX.
2561         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
2562         (ppc64_linux_sigaction_tramp_frame)
2563         (ppc32_linux_sighandler_tramp_frame)
2564         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2565         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
2566         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
2567         * mn10300-linux-tdep.c (am33_linux_sigframe)
2568         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
2569         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
2570         * mips-linux-tdep.c (mips_linux_o32_sigframe)
2571         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
2572         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
2573         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
2574         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
2575         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
2576         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
2577         * microblaze-linux-tdep.c
2578         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2579         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
2580         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
2581         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
2582         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
2583         * common/common-types.h (ULONGEST_MAX): New define.
2584         (CORE_ADDR_MAX): Fix formatting.
2585         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
2586         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
2587         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
2588         (arm_linux_rt_sigreturn_tramp_frame)
2589         (arm_eabi_linux_sigreturn_tramp_frame)
2590         (arm_eabi_linux_rt_sigreturn_tramp_frame)
2591         (thumb2_eabi_linux_sigreturn_tramp_frame)
2592         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
2593         (arm_linux_restart_syscall_tramp_frame)
2594         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
2595         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
2596         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
2597         ULONGEST_MAX.
2598         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
2599
2600 2018-08-27  Tom Tromey  <tom@tromey.com>
2601
2602         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
2603         CORE_ADDR_MAX.
2604         * mips-tdep.c (mips_deal_with_atomic_sequence)
2605         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
2606         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
2607         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
2608         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
2609         CORE_ADDR_MAX.
2610         * aarch64-tdep.c (aarch64_software_single_step): Use
2611         CORE_ADDR_MAX.
2612
2613 2018-08-27  Tom Tromey  <tom@tromey.com>
2614
2615         * linespec.c (complete_linespec_component): Add cast to "char".
2616         * completer.c (completion_tracker::build_completion_result): Add
2617         cast to "char".
2618
2619 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2620
2621         * solist.h (struct solist, struct target_so_ops): Fix
2622         indentation.
2623
2624 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2625
2626         * ada-tasks.c (ada_task_info_s): Remove typedef.
2627         (DEF_VEC_O(ada_task_info_s)): Remove.
2628         (struct ada_tasks_inferior_data): Initialize fields.
2629         <task_list>: Make an std::vector.
2630         (get_ada_tasks_inferior_data): Allocate with new.
2631         (ada_get_task_number): Adjust.
2632         (get_task_number_from_id): Likewise.
2633         (valid_task_id): Likewise.
2634         (ada_get_task_info_from_ptid): Likewise.
2635         (iterate_over_live_ada_tasks): Likewise.
2636         (add_ada_task): Likewise.
2637         (read_known_tasks): Likewise.
2638         (ada_build_task_list): Likewise.
2639         (print_ada_task_info): Likewise.
2640         (info_task): Likewise.
2641         (task_command_1): Likewise.
2642
2643 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2644
2645         * ada-lang.c (add_angle_brackets): Return std::string.
2646
2647 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
2648
2649         * python/py-threadevent.c (py_get_event_thread): Initialize
2650         pythread.
2651
2652 2018-08-24  Pedro Alves  <palves@redhat.com>
2653
2654         * python/py-bpevent.c (create_breakpoint_event_object): Use
2655         copy-initialization.
2656         * python/py-continueevent.c (emit_continue_event): Use
2657         copy-initialization.
2658         * python/py-exitedevent.c (create_exited_event_object): Return a
2659         gdbpy_ref<>.
2660         (emit_exited_event): Use copy-initialization.
2661         * python/py-inferior.c (python_new_inferior)
2662         (python_inferior_deleted, add_thread_object): Use
2663         copy-initialization.
2664         * python/py-infevents.c (create_inferior_call_event_object)
2665         (create_register_changed_event_object)
2666         (create_memory_changed_event_object): Return a gdbpy_ref<>.
2667         (emit_inferior_call_event, emit_memory_changed_event)
2668         (emit_register_changed_event): Use copy-initialization.
2669         * python/py-newobjfileevent.c (create_new_objfile_event_object):
2670         Return a gdbpy_ref<>.
2671         (emit_new_objfile_event): Use copy-initialization.
2672         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
2673         (emit_clear_objfiles_event): Use copy-initialization.
2674         * python/py-signalevent.c (create_signal_event_object): Use
2675         copy-initialization.
2676         * python/py-threadevent.c (create_thread_event_object): Use
2677         copy-initialization.
2678
2679 2018-08-24  Pedro Alves  <palves@redhat.com>
2680             Simon Marchi  <simon.marchi@ericsson.com>
2681
2682         PR gdb/23379
2683         * python/py-continueevent.c: Include "gdbthread.h".
2684         (create_continue_event_object): Add intro comment.  Add 'ptid'
2685         parameter.  Use it to find thread to pass to
2686         create_thread_event_object.
2687         (emit_continue_event): Pass PTID down to
2688         create_continue_event_object.
2689         * python/py-event.h (py_get_event_thread): Declare.
2690         (create_thread_event_object): Remove default from 'thread'
2691         parameter.
2692         * python/py-stopevent.c (create_stop_event_object): Use
2693         py_get_event_thread.
2694         * python/py-threadevent.c (get_event_thread): Rename to ...
2695         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
2696         and use it to find the thread.
2697         (create_thread_event_object): Assert that THREAD isn't null.
2698         Don't find the event thread here.
2699
2700 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
2701
2702         * block.h (blockrange, blockranges): New struct declarations.
2703         (struct block): Add new field named `ranges'.
2704         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
2705         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
2706         macros for accessing ranges in struct block.
2707         (make_blockranges): New declaration.
2708         block.c (make_blockranges): New function.
2709         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
2710         for block.
2711         * symtab.h (find_pc_partial_function): Add new parameter `block'.
2712         * blockframe.c (cache_pc_function_block): New static global.
2713         (clear_pc_function_cache): Clear cache_pc_function_block.
2714         (find_pc_partial_function): Move comment to symtab.h.  Add
2715         support for non-contiguous blocks.
2716         * cli/cli-cmds.c (block.h): Include.
2717         (print_disassembly): Handle printing of non-contiguous blocks.
2718         (disassemble_current_function): Likewise.
2719         (disassemble_command): Likewise.
2720
2721         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
2722         BLOCK_START.
2723         * blockframe.c (get_pc_function_start): Likewise.
2724         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
2725         (gcc_symbol_address): Likewise.
2726         * compile/compile-object-run.c (compile_object_run): Likewise.
2727         * compile/compile.c (get_expr_block_and_pc): Likewise.
2728         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
2729         (func_addr_to_tail_call_list): Likewise.
2730         * findvar.c (default_read_var_value): Likewise.
2731         * inline-frame.c (inline_frame_this_id): Likewise.
2732         (skip-inline_frames): Likewise.
2733         * infcmd.c (until_next_command): Likewise.
2734         * linespec.c (convert_linespec_to_sals): Likewise.
2735         * parse.c (parse_exp_in_context_1): Likewise.
2736         * printcmd.c (build_address_symbolic): likewise.
2737         (info_address_command): Likewise.
2738         symtab.c (find_function_start_sal): Likewise.
2739         (skip_prologue_sal): Likewise.
2740         (find_function_alias_target): Likewise.
2741         (find_gnu_ifunc): Likewise.
2742         * stack.c (find_frame_funname): Likewise.
2743         * symtab.c (fixup_symbol_section): Likewise.
2744         (find_function_start_sal): Likewise.
2745         (skip_prologue_sal): Likewsie.
2746         (find_function_alias_target): Likewise.
2747         (find_gnu_ifunc): Likewise.
2748         * tracepoint.c (info_scope_command): Likewise.
2749         * value.c (value_fn_field): Likewise.
2750
2751         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
2752         in place of find_pc_partial_function.
2753         * blockframe.c (find_function_entry_range_from_pc): New function.
2754         * symtab.h (find_function_entry_range_from_pc): Declare and document.
2755         * objfiles.c (objfile_relocate1): Relocate start and end addresses
2756         for each range in a block.
2757
2758
2759 2018-08-23  Xavier Roirand  <roirand@adacore.com>
2760
2761         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
2762         incrementation.
2763
2764 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2765
2766         * solib-svr4.c (read_program_headers_from_bfd): Return
2767         gdb::optional<gdb::byte_vector>.
2768         (svr4_exec_displacement): Adjust.
2769
2770 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2771
2772         * solib-svr4.c (read_program_header): Return
2773         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
2774         (find_program_interpreter): Return
2775         gdb::optional<gdb::byte_vector>.
2776         (scan_dyntag_auxv): Adjust.
2777         (enable_break): Adjust.
2778         (svr4_exec_displacement): Adjust.
2779
2780 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2781
2782         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
2783         * inf-child.c (inf_child_target::terminal_save_inferior): New.
2784
2785 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2786
2787         * guile/scm-string.c (gdbscm_scm_from_printf): Use
2788         string_vprintf.
2789         * guile/scm-utils.c (gdbscm_printf): Likewise.
2790         * serial.c (serial_printf): Likewise.
2791         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
2792
2793 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
2794
2795         * stack.c (print_frame): Print frame architecture when printing on
2796         an MI output.
2797         * NEWS: Mention new "arch" attribute in frame output.
2798
2799 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
2800
2801         * arch/aarch64.h (aarch64_regnum): Update comment.
2802
2803 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
2804
2805         * NEWS: Add SVE to 8.2 section.
2806
2807 2018-08-21  Pedro Alves  <palves@redhat.com>
2808
2809         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
2810         out from gdbscm_parse_function_args.
2811         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
2812         gdbscm_parse_function_args_1.
2813
2814 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
2815
2816         PR gdb/17816
2817         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
2818         operator.
2819
2820 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
2821
2822         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
2823
2824 2018-08-19  Michael Spang  <spang@google.com>
2825
2826         PR gdb/11786
2827         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
2828         for PT_TLS segments.
2829
2830 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
2831
2832         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
2833         dwarf_variable_value.
2834         * dwarf2-frame.c (class dwarf_expr_executor):
2835         Add override for dwarf_variable_value.
2836         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
2837         (class symbol_needs_eval_context): Likewise.
2838         (indirect_synthetic_pointer): Add forward declaration.
2839         (sect_variable_value): New function.
2840         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
2841         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
2842         for DW_OP_GNU_variable_value.
2843
2844 2018-08-16  Tom Tromey  <tom@tromey.com>
2845
2846         * top.c (read_command_file): Update.
2847         (command_line_input): Remove "repeat" argument.
2848         * ada-lang.c (get_selections): Update.
2849         * linespec.c (decode_line_2): Update.
2850         * defs.h (command_line_input): Remove argument.
2851         * cli/cli-script.c (read_next_line): Update.
2852         * python/py-gdb-readline.c: Update.
2853
2854 2018-08-17  Tom Tromey  <tom@tromey.com>
2855
2856         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
2857         command_line_input.
2858
2859 2018-08-15  Tom Tromey  <tom@tromey.com>
2860
2861         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
2862
2863 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
2864
2865         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
2866         If used, use find_pc_partial_function to find address range
2867         to disassemble.
2868         * mi/mi-main.c (mi_cmd_list_features): Report
2869         "data-disassemble-a-option" feature.
2870         * NEWS: Mention new -data-disassemble option -a.
2871
2872 2018-08-13  Tom Tromey  <tom@tromey.com>
2873
2874         * common/common-defs.h (_FORTIFY_SOURCE): Define.
2875
2876 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
2877
2878         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
2879         (aarch64_linux_collect_sve_regset): Likewise.
2880         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
2881         * regcache.h (regcache_map_entry_size): New function.
2882
2883 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
2884
2885         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
2886         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
2887         (SVE_HEADER_VL_LENGTH): Likewise.
2888         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
2889         (SVE_HEADER_FLAGS_LENGTH): Likewise.
2890         (SVE_HEADER_RESERVED_LENGTH): Likewise.
2891         (SVE_HEADER_SIZE_OFFSET): Likewise.
2892         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
2893         (SVE_HEADER_VL_OFFSET): Likewise.
2894         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
2895         (SVE_HEADER_FLAGS_OFFSET): Likewise.
2896         (SVE_HEADER_RESERVED_OFFSET): Likewise.
2897         (SVE_HEADER_SIZE): Likewise.
2898         (aarch64_linux_core_read_vq): Add function.
2899         (aarch64_linux_core_read_description): Check for SVE section.
2900
2901 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
2902
2903         * aarch64-fbsd-tdep.c
2904         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
2905         collect_size.
2906         * aarch64-linux-tdep.c
2907         (aarch64_linux_iterate_over_regset_sections): Likewise.
2908         * alpha-linux-tdep.c
2909         (alpha_linux_iterate_over_regset_sections):
2910         * alpha-nbsd-tdep.c
2911         (alphanbsd_iterate_over_regset_sections): Likewise.
2912         * amd64-fbsd-tdep.c
2913         (amd64fbsd_iterate_over_regset_sections): Likewise.
2914         * amd64-linux-tdep.c
2915         (amd64_linux_iterate_over_regset_sections): Likewise.
2916         * arm-bsd-tdep.c
2917         (armbsd_iterate_over_regset_sections): Likewise.
2918         * arm-fbsd-tdep.c
2919         (arm_fbsd_iterate_over_regset_sections): Likewise.
2920         * arm-linux-tdep.c
2921         (arm_linux_iterate_over_regset_sections): Likewise.
2922         * corelow.c (get_core_registers_cb): Likewise.
2923         (core_target::fetch_registers): Likewise.
2924         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
2925         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
2926         * gdbarch.h (void): Regenerate.
2927         * gdbarch.sh: Add supply_size and collect_size.
2928         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
2929         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
2930         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
2931         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
2932         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
2933         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
2934         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
2935         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
2936         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
2937         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
2938         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
2939         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
2940         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
2941         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
2942         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
2943         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
2944         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
2945         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
2946         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
2947         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
2948         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
2949         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
2950         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
2951         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
2952         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
2953         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
2954         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
2955         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
2956         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
2957         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
2958
2959 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
2960
2961         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
2962         with string_printf.
2963
2964 2018-08-10  Keith Seitz  <keiths@redhat.com>
2965
2966         * compile/compile-c-support.c (add_code_header, add_code_footer):
2967         Move into policy class.
2968         (c_push_user_expression, pop_user_expression_nop)
2969         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
2970         (compile_program): New host class.
2971         (c_compile_program): New typedef.
2972         (c_compute_porgram): Use c_compile_program.
2973
2974 2018-08-10  Keith Seitz  <keiths@redhat.com>
2975
2976         * compile/compile-internal.h (compile_instance::~compile_instance):
2977         Remove calls to htab_delete.
2978         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
2979         * compile.c (compile_instance::compile_instance): Initialize
2980         htab unique pointers.
2981         (compile_instance::get_cached_type, compile_instance::insert_type)
2982         (compile_instance::error_symbol_once): Update for unique_ptr.
2983
2984 2018-08-10  Keith Seitz  <keiths@redhat.com>
2985
2986         * compile/compile-c-symbols.c (struct symbol_error)
2987         (hash_symbol_error, eq_symbol_error, del_symbol_error)
2988         (compile_instance::insert_symbol_error)
2989         (compile_instance::error_symbol_once): Move to ...
2990         * compile/compile.c: ... here.
2991
2992 2018-08-10  Keith Seitz  <keiths@redhat.com>
2993
2994         * compile/compile-c-support.c (c_get_compile_context): Use `new'
2995         instead of `new_compile_instance'.
2996         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
2997         Update description.
2998         If the symbol error map is not initialized, create it.
2999         (generate_c_for_for_one_symbol): Do not check/initialize
3000         the symbol error map.
3001         * compile/compile-c-types.c (compile_c_instance): Make a class.
3002         Update all callers.
3003         (compile_instance::compile_instance): Initialize the type cache.
3004         (get_cached_type): New function.
3005         (insert_type): Update description.
3006         (compile_c_instance::m_default_cflags): Define.
3007         (convert_type): Update description.  Use get_cached_type.
3008         (delete_instance): Moved to destructor.
3009         (new_compile_instance): Moved to constructor.
3010         * compile/compile-c.h (compile_c_instance): Make class inheriting
3011         from compile_instance.
3012         <base>: Remove field.
3013         <type_map, symbol_err_map>: Move to base class.
3014         <c_plugin>: Rename to `m_plugin' and remove pointer type.
3015         * compile/compile-internal.h (compile_instance): Make class.
3016         <type_map_t, symbol_err_map_t>: Define.
3017         <fe>: Rename to `m_gcc_fe'.
3018         <scope, block, gcc_target_options>: Add `m_' prefix.
3019         <m_type_map, m_symbol_err_map>: New fields, moved from
3020         compile_c_instance.
3021         <destroy>: Remove.
3022         (convert_type, new_compile_instance): Remove.
3023         * compile/compile.c (cleanup_compile_instance): Remove.
3024         (compile_to_object): Use unique_ptr to eliminate cleanups.
3025         (compile_instance::set_print_callback, compile_instance::version)
3026         (compile_instance::set_verbose)
3027         (compile_instance::set_driver_filename)
3028         (compile_instance::set_triplet_regexp)
3029         (compile_instance::set_arguments)
3030         (compile_instance::set_source_file)
3031         (compile_instance::compile): Define.
3032
3033 2018-08-10  Keith Seitz  <keiths@redhat.com>
3034
3035         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
3036         * compile/compile-c-types.c: Define GCC_METHODN macros and include
3037         gcc-c-fe.def to define C plugin.
3038         (delete_instance): Delete `c_plugin'.
3039         (new_compile_instance): Initialize `c_plugin'.
3040         * compile/compile-c.h: Include gcc_c_plugin.h.
3041         (struct compile_c_instance) <c_plugin>: New member.
3042         * gcc-c-plugin.h: New file.
3043         Update all callers with API change.
3044
3045 2018-08-10  Keith Seitz  <keiths@redhat.com>
3046
3047         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
3048         (HFILES_NO_SRCDIR): ... to here.
3049         Add compile-internal.h and compile-c.h.
3050         * compile/compile-c-support.c: Include compile-c.h.
3051         * compile/compile-c-symbols.c: Include compile-c.h.
3052         (generate_c_for_variable_locations): Update comment.
3053         * compile/compile-c-types.c: Include compile-c.h.
3054         * compile/compile-c.h: New file -- moved C language declarations
3055         from other files here.
3056         * compile/compile-internal.h: Do not include hashtab.h or
3057         common/enum-flags.h.
3058         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
3059         (gcc_convert_symbol, gcc_symbol_address)
3060         (generate_c_for_variable_locations, c_get_mode_for_size)
3061         (c_get_range_decl_name): Definitions moved to compile-c.h.
3062         * compile/compile-loc2c.c: Include compile-c.h.
3063
3064 2018-08-10  Keith Seitz  <keiths@redhat.com>
3065
3066         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
3067         (c_symbol_substitution_name): ... this.
3068         Update all callers.
3069
3070 2018-08-10  Keith Seitz  <keiths@redhat.com>
3071
3072         * compile/compile-c-support.c (c_compute_program): Use
3073         unique_xmalloc_ptr to eliminate cleanup.
3074         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
3075         Return a unique_xmalloc_ptr and eliminate cleanup.
3076         * compile/compile-internal.h (generate_c_for_variable_locations):
3077         Return unique_xmalloc_ptr and update description.
3078
3079 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
3080
3081         * corelow.c (core_target::get_core_register_section): Rename
3082         min_size to section_min_size.
3083
3084 2018-08-09  Jim Wilson  <jimw@sifive.com>
3085
3086         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
3087         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
3088         * NEWS: Mention new GNU/Linux RISC-V target.
3089         * configure.host: Add riscv*-*-linux*.
3090         * configure.nat: Add riscv*.
3091         * configure.tgt: Add riscv*-*-linux*.
3092         * riscv-linux-nat.c: New file.
3093         * riscv-linux-tdep.c: New file.
3094
3095 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3096
3097         * infrun.c (resume): Make static, add forward declaration.
3098         (proceed): Update header comment.
3099         * infrun.h (resume): Delete declaration.
3100
3101 2018-08-09  Tom Tromey  <tom@tromey.com>
3102
3103         * riscv-tdep.h: Minor formatting fixes.
3104
3105 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
3106
3107         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
3108         * dwarf-index-cache.c (create_dir_and_check): Likewise.
3109         (test_mkdir_recursive): Likewise.
3110         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
3111
3112 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3113
3114         * valarith.c (value_subscripted_rvalue): If an array is not in
3115         memory, and we don't know the upper bound, then we can't know that
3116         the requested element exists or not.
3117
3118 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
3119
3120         * target.c (str_comma_list_concat_elem): Fix typo in comment.
3121         (target_options_to_string): Add comment.
3122
3123 2018-08-08  Tom Tromey  <tom@tromey.com>
3124
3125         * unittests/scoped_mmap-selftests.c: Check result of "write".
3126
3127 2018-08-08  Jim Wilson  <jimw@sifive.com>
3128
3129         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
3130         (decode_register_index_short): New.
3131         (decode_j_type_insn, decode_cj_type_insn): New.
3132         (decode_b_type_insn, decode_cb_type_insn): New.
3133         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
3134         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
3135         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
3136         is_c_sw_insn instead of is_sw_insn.
3137         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
3138         (riscv_software_single_step): New.
3139         * riscv-tdep.h (riscv_software_single_step): Declare.
3140
3141         * riscv-tdep.c (riscv_isa_xlen): Drop static.
3142         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
3143
3144 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
3145
3146         PR gdb/18050:
3147         * target.c (dispose_inferior): Don't dispose of inferiors that are
3148         already killed.
3149
3150 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
3151
3152         * remote.c (remote_target::download_tracepoint): Change char* to
3153         const char*.
3154
3155 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
3156
3157         * target.h (target_options_to_string): Return an std::string.
3158         * target.c (str_comma_list_concat_elem): Return void, use
3159         std::string.
3160         (do_option): Likewise.
3161         (target_options_to_string): Return an std::string.
3162         * linux-nat.c (linux_nat_target::wait): Adjust.
3163         * target-debug.h (target_debug_print_options): Adjust.
3164
3165 2018-08-07  Tom Tromey  <tom@tromey.com>
3166
3167         * Makefile.in (CPPFLAGS): New variable.
3168         (INTERNAL_CPPFLAGS): Use it.
3169
3170 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3171
3172         * NEWS: Mention the index cache.
3173
3174 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3175
3176         * common/pathstuff.h (get_standard_cache_dir): New.
3177         * common/pathstuff.c (get_standard_cache_dir): New.
3178         * build-id.h (build_id_to_string): New.
3179         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
3180         DEBUG_STR_SUFFIX): Move to here.
3181         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
3182         DEBUG_STR_SUFFIX): Move from there.
3183         (write_psymtabs_to_index): Make non-static, add basename
3184         parameter.  Write to temporary files, rename when done.
3185         (save_gdb_index_command): Adjust call to
3186         write_psymtabs_to_index.
3187         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
3188         field.
3189         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
3190         (get_gdb_index_contents_from_cache): New.
3191         (get_gdb_index_contents_from_cache_dwz): New.
3192         (dwarf2_initialize_objfile): Read index from cache.
3193         (dwarf2_build_psymtabs): Save to index.
3194         * dwarf-index-cache.h: New file.
3195         * dwarf-index-cache.c: New file.
3196         * dwarf-index-write.h: New file.
3197
3198 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3199
3200         * gnulib/aclocal.m4: Re-generate.
3201         * gnulib/config.in: Re-generate.
3202         * gnulib/configure: Re-generate.
3203         * gnulib/import/Makefile.am: Re-generate.
3204         * gnulib/import/Makefile.in: Re-generate.
3205         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3206         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3207         * gnulib/import/m4/mkdir.m4: New file.
3208         * gnulib/import/mkdir.c: New file.
3209         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
3210         module.
3211
3212 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3213
3214         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
3215         * common/scoped_mmap.c: New file.
3216         * common/scoped_mmap.h (destroy): New method.
3217         (~scoped_mmap, reset): Use destroy.
3218         (scoped_mmap): New move constructor.
3219         (mmap_file): New declaration.
3220         * unittests/scoped_mmap-selftests.c (test_normal,
3221         test_invalid_filename, run_tests): New functions.
3222         (_initialize_scoped_mmap_selftests): Register selftest.
3223
3224 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3225
3226         * dwarf2read.c (read_gdb_index_from_section): Rename to...
3227         (read_gdb_index_from_buffer): ... this.  Remove section
3228         parameter, add buffer parameter.
3229         (get_gdb_index_contents_ftype,
3230         get_gdb_index_contents_dwz_ftype): New typedefs.
3231         (dwarf2_read_gdb_index): Add callback parameters to get the
3232         index contents.
3233         (get_gdb_index_contents_from_section): New.
3234         (dwarf2_initialize_objfile): Update call to
3235         dwarf2_read_gdb_index.
3236
3237 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3238
3239         * common/filestuff.h (gdb_fopen_cloexec): New overload.
3240         (gdb_open_cloexec): Likewise.
3241         * nat/linux-osdata.c (command_from_pid): Use string_printf.
3242         (commandline_from_pid): Likewise.
3243         (linux_xfer_osdata_threads): Likewise.
3244         (linux_xfer_osdata_fds): Likewise.
3245         * ada-lang.c (is_package_name): Likewise.
3246         * auxv.c (procfs_xfer_auxv): Likewise.
3247         * breakpoint.c (print_one_breakpoint_location): Use
3248         uiout::field_fmt.
3249         (print_one_catch_solib): Use string_printf.
3250         * coff-pe-read.c (add_pe_exported_sym): Likewise.
3251         (add_pe_forwarded_sym): Likewise.
3252         * dwarf2read.c (create_type_unit_group): Likewise.
3253         (build_error_marker_type): Likewise.
3254         * infcall.c (get_function_name): Likewise.
3255         * valprint.c (print_converted_chars_to_obstack): Likewise.
3256         * xtensa-tdep.c (xtensa_register_type): Likewise.
3257
3258 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
3259
3260         * remote.c (remote_target::download_tracepoint): Fix format
3261         string errors.
3262
3263 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3264
3265         * tracefile.c: Include common/byte-vector.h.
3266         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
3267         with trace_regblock_size if needed.  Update uses of buf.
3268
3269 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3270
3271         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
3272         std::vector<unsigned char>.
3273         * tracepoint.c (collection_list::collection_list): Remove
3274         m_regs_mask initializer from initializer list.  Resize
3275         m_regs_mask using the largest remote register number.
3276         (collection_list::add_remote_register): Remove size check on
3277         m_regs_mask.  Use at to access element.
3278         (collection_list::stringify): Change type of temp_buf to
3279         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
3280         stringify the register mask.  Use pack_hex_byte for the register
3281         mask.
3282
3283 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3284
3285         * tracepoint.h (class collection_list) <add_register>: Remove.
3286         <add_remote_register, add_ax_registers, add_local_register>:
3287         Declare.
3288         <add_memrange>: Add scope parameter.
3289         * tracepoint.c (encode_actions_1): Likewise.
3290         (collection_list::add_register): Rename to ...
3291         (collection_list::add_remote_register): ... this.  Update
3292         comment.
3293         (collection_list::add_ax_registers, add_local_register): New
3294         methods.
3295         (collection_list::add_memrange): Add scope parameter.  Call
3296         add_local_register instead of add_register.
3297         (finalize_tracepoint_aexpr): New function.
3298         (collection_list::collect_symbol): Update calls to add_memrange.
3299         Call add_local_register instead of add_register.  Call
3300         add_ax_registers.  Call finalize_tracepoint_aexpr.
3301         (encode_actions_1): Get remote regnos for $reg action.  Call
3302         add_remote_register, add_ax_registers, and add_local_register.
3303         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
3304         (validate_actionline): Call finalize_tracepoint_aexpr.
3305
3306 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3307
3308         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
3309         Replace array buf with gdb::char_vector buf, of size
3310         get_remote_packet_size ().  Replace references to buf and
3311         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
3312         and xsnprintf with snprintf.  Raise errors if the buffer is too
3313         small.
3314
3315 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3316
3317         * remote.c (remote_target::download_tracepoint): Fix the has_more
3318         predicate in the QTDP action list iteration.
3319
3320 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3321
3322         * remote.c (remote_target::download_tracepoint): Fix indentation
3323         in for block.
3324
3325 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3326
3327         * proc-api.c (_initialize_proc_api): Remove c, unused.
3328         * procfs.c (procfs_init_inferior): Remove signals, unused.
3329         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
3330         unused.
3331
3332 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
3333             Andrew Burgess  <andrew.burgess@embecosm.com>
3334
3335         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
3336         'W_STOPCODE (0)' as this could be ambiguous.
3337
3338 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
3339
3340         * ser-tcp.c (net_open): Fix thinko when deciding whether to
3341         disable TCP's Nagle algorithm (use "ai_protocol" instead of
3342         "ai_socktype").
3343
3344 2018-08-02  Tom Tromey  <tom@tromey.com>
3345
3346         PR symtab/16842.
3347         * dwarf2read.c (read_func_scope): Set symtab on template parameter
3348         symbols.
3349         (process_structure_scope): Likewise.
3350
3351 2018-08-02  Xavier Roirand  <roirand@adacore.com>
3352
3353         PR gdb/22629:
3354         * darwin-nat.c (darwin_kill_inferior): Fix handling of
3355         kill inferior.
3356
3357 2018-08-02  Tom Tromey  <tom@tromey.com>
3358
3359         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
3360         (darwin_suspend_inferior, darwin_resume_inferior)
3361         (darwin_decode_notify_message, darwin_resume_inferior_threads)
3362         (darwin_check_new_threads): Check result of get_darwin_inferior.
3363
3364 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
3365
3366         GDB 8.1.1 released.
3367
3368 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
3369
3370         * varobj.c (varobj_get_path_expr_parent): Report an error if
3371         parent is a dynamic varobj.
3372
3373 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3374
3375         * gnulib/aclocal.m4: Re-generate.
3376         * gnulib/config.in: Re-generate.
3377         * gnulib/configure: Re-generate.
3378         * gnulib/import/Makefile.in: Re-generate.
3379         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3380         * gnulib/import/m4/onceonly.m4: Re-generate.
3381
3382 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3383
3384         * target-descriptions.c (struct xml_test_tdesc): New.
3385         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
3386         (record_xml_tdesc): Update.
3387         (maintenance_check_xml_descriptions): Update.
3388         * target-descriptions.h (record_xml_tdesc): Update comment.
3389
3390 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3391
3392         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
3393         checking array bounds are defined.
3394
3395 2018-07-30  Tom Tromey  <tom@tromey.com>
3396
3397         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
3398         irreflexivity violation.
3399
3400 2018-07-30  Tom Tromey  <tom@tromey.com>
3401
3402         * cli/cli-decode.c (lookup_cmd): Remove lint code.
3403         * value.c (unpack_long): Remove lint code.
3404         * valops.c (value_ind): Remove lint code.
3405         * valarith.c (value_x_binop, value_x_unop, value_equal)
3406         (value_pos): Remove lint code.
3407
3408 2018-07-28  Tom de Vries  <tdevries@suse.de>
3409
3410         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
3411         with undefined upper bound as <optimized out>.
3412
3413 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
3414
3415         * gcore.in: Rename variable "name" to "prefix".  Expand
3416         "usage" text.
3417
3418 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
3419
3420         * windows-nat.c (windows_nat_target::create_inferior): Update to
3421         call close() in global namespace.
3422
3423 2018-07-26  Tom Tromey  <tom@tromey.com>
3424
3425         * dwarf-index-write.c (add_address_entry): Don't add objfile
3426         offsets.
3427         * dbxread.c (find_stab_function): Rename from
3428         find_stab_function_addr.  Return a bound_minimal_symbol.
3429         (read_dbx_symtab): Use raw_text_low, raw_text_high.
3430         Don't add objfile offsets.
3431         (end_psymtab): Use raw_text_low, raw_text_high,
3432         MSYMBOL_VALUE_RAW_ADDRESS.
3433         (read_ofile_symtab): Update.
3434         (process_one_symbol): Update.
3435         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
3436         offsets.
3437         (dw2_relocate): Remove.
3438         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
3439         searching addrmap.
3440         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
3441         Update.
3442         (process_psymtab_comp_unit_reader, add_partial_symbol)
3443         (add_partial_subprogram, dwarf2_ranges_read): Update.
3444         (load_partial_dies): Update.
3445         (add_address_entry): Don't add objfile offsets.
3446         (dwarf2_build_include_psymtabs): Update.
3447         (create_addrmap_from_aranges): Don't add objfile offsets.
3448         (dw2_find_pc_sect_compunit_symtab): Update.
3449         * mdebugread.c (parse_symbol): Don't add objfile offsets.
3450         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
3451         Update.
3452         (parse_partial_symbols): Don't add objfile offsets.  Use
3453         raw_text_low, raw_text_high.  Update.
3454         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
3455         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
3456         or call 'relocate' quick function.  Clear psymbol_map.
3457         * psympriv.h (struct partial_symbol) <address>: Add section
3458         offset.
3459         <set_unrelocated_address>: Rename from set_address.
3460         <raw_text_low, raw_text_high>: New methods.
3461         <text_low, text_high>: Add objfile parameter.
3462         (add_psymbol_to_bcache): Add 'section' parameter.  Call
3463         set_unrelocated_address.
3464         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3465         (find_pc_psymbol): Update.
3466         (fixup_psymbol_section, relocate_psymtabs): Remove.
3467         (dump_psymtab, psym_functions): Update.
3468         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
3469         parameter.
3470         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
3471         (start_psymtab_common): Update.
3472         * symfile-debug.c (debug_qf_relocate): Remove.
3473         (debug_sym_quick_functions): Update.
3474         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
3475         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
3476         Update.
3477
3478 2018-07-26  Tom Tromey  <tromey@redhat.com>
3479
3480         * dbxread.c (end_psymtab): Use text_high_valid and
3481         text_low_valid.
3482         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
3483         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
3484         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3485         Update comment.
3486         <text_low_valid, text_high_valid>: New fields.
3487         <set_text_low, set_text_high>: Update.
3488         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
3489
3490 2018-07-26  Tom Tromey  <tom@tromey.com>
3491
3492         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
3493         Update.
3494         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
3495         textlow and texthigh fields.
3496         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
3497         Update.
3498         * mdebugread.c (parse_lines, parse_partial_symbols)
3499         (psymtab_to_symtab_1): Update.
3500         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3501         Rename fields.  Update comment.  Now private.
3502         <text_low, text_high, set_text_low, set_text_high>: New methods.
3503         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3504         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
3505         (start_psymtab_common, maintenance_info_psymtabs)
3506         (maintenance_check_psymtabs): Update.
3507         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
3508         texthigh fields.
3509         (scan_xcoff_symtab): Update.
3510
3511 2018-07-26  Tom Tromey  <tromey@redhat.com>
3512
3513         * psympriv.h (struct partial_symbol) <unrelocated_address,
3514         address, set_address>: New methods.
3515         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
3516         (fixup_psymbol_section, relocate_psymtabs): Update.
3517         (print_partial_symbols): Add 'objfile' parameter.  Update.
3518         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
3519         Update.
3520
3521 2018-07-26  Tom Tromey  <tom@tromey.com>
3522
3523         * dwarf-index-write.c (write_psymbols, debug_names::insert)
3524         (debug_names::write_psymbols): Update.
3525         * psympriv.h (struct partial_symbol): Derive from
3526         general_symbol_info.
3527         <obj_section>: New method.
3528         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
3529         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3530         (find_pc_sect_psymbol, fixup_psymbol_section)
3531         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
3532         (print_partial_symbols, recursively_search_psymtabs)
3533         (compare_psymbols, psymbol_hash, psymbol_compare)
3534         (add_psymbol_to_bcache, maintenance_check_psymtabs)
3535         (psymbol_name_matches, psym_fill_psymbol_map): Update.
3536
3537 2018-07-26  Tom Tromey  <tromey@redhat.com>
3538
3539         * dbxread.c (end_psymtab): Remove dead code.
3540
3541 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
3542
3543         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
3544         DWARF unwinders are disabled.
3545         * dwarf2-frame.c: Add dwarf2read.h include.
3546         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
3547         disabled.
3548         (dwarf2_frame_unwinders_enabled_p): Define.
3549         (show_dwarf_unwinders_enabled_p): New function.
3550         (_initialize_dwarf2_frame): Register switch to control DWARF
3551         unwinder use.
3552         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
3553         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
3554         (show_dwarf_cmdlist): Remove static keyword.
3555         * dwarf2read.h (set_dwarf_cmdlist): Declare.
3556         (show_dwarf_cmdlist): Declare.
3557         * NEWS: Document new feature.
3558
3559 2018-07-26  Tom de Vries  <tdevries@suse.de>
3560
3561         PR breakpoints/23366
3562         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
3563
3564 2018-07-26  Tom de Vries  <tdevries@suse.de>
3565
3566         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
3567         DW_AT_count can't be translated to a dynamic prop.
3568
3569 2018-07-25  Tom de Vries  <tdevries@suse.de>
3570
3571         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
3572         try/catch.
3573
3574 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
3575
3576         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
3577
3578 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
3579
3580         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
3581
3582 2018-07-24  Keith Seitz  <keiths@redhat.comt
3583
3584         PR symtab/23010
3585         * dwarf2read.c (dw2_add_symbol_to_list): New function.
3586         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
3587         instead of add_symbol_to_list.
3588         (read_file_scope): Call prepare_one_comp_unit before reading
3589         any other DIEs.
3590
3591 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
3592
3593         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
3594
3595 2018-07-24  Tom Tromey  <tom@tromey.com>
3596
3597         * utils.c (malloc, realloc, free): Don't declare.
3598         * configure, config.in: Rebuild.
3599         * configure.ac: Don't check for declarations of free, malloc, or
3600         realloc.
3601
3602 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3603
3604         * aarch64-linux-nat.c
3605         (aarch64_linux_nat_target::stopped_data_address): Remove unused
3606         variable.
3607         * arm-linux-nat.c (fetch_regs): Likewise.
3608         (store_regs): Likewise.
3609         (fetch_vfp_regs): Likewise.
3610         (store_vfp_regs): Likewise.
3611         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
3612         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
3613         (arm_linux_nat_target::insert_watchpoint): Likewise.
3614         (arm_linux_nat_target::remove_watchpoint): Likewise.
3615         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
3616         Likewise.
3617         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
3618         Likewise.
3619         * ppc-linux-nat.c (fetch_register): Likewise.
3620         (fetch_all_gp_regs): Likewise.
3621         (fetch_ppc_registers): Likewise.
3622         (store_all_gp_regs): Likewise.
3623         (store_ppc_registers): Likewise.
3624         (hwdebug_insert_point): Likewise.
3625         (can_use_watchpoint_cond_accel): Likewise.
3626         * remote-sim.c (gdb_os_write_stdout): Likewise.
3627
3628 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3629             Tom Tromey  <tom@tromey.com>
3630
3631         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
3632         test for it.
3633         * configure: Rebuild.
3634
3635 2018-07-22  Tom Tromey  <tom@tromey.com>
3636
3637         * regformats/regdat.sh: Define xmltarget_${name} inside
3638         #ifndef IN_PROCESS_AGENT.
3639
3640 2018-07-22  Tom Tromey  <tom@tromey.com>
3641
3642         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
3643
3644 2018-07-22  Tom Tromey  <tom@tromey.com>
3645
3646         * symfile.c (reread_symbols): Notify iter, not objfile.
3647
3648 2018-07-22  Tom Tromey  <tom@tromey.com>
3649
3650         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
3651         Use arch_ops.
3652         (ravenscar_thread_target::prepare_to_store): Likewise.
3653
3654 2018-07-22  Tom Tromey  <tom@tromey.com>
3655
3656         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
3657         unused variable.  Call value_fetch_lazy when needed.
3658         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
3659         Remove unused variable.  Call value_fetch_lazy when needed.
3660
3661 2018-07-22  Tom Tromey  <tom@tromey.com>
3662
3663         * m32c-tdep.c (mark_dma): Return void.
3664         (make_regs): Remove unused declarations.
3665
3666 2018-07-22  Tom Tromey  <tom@tromey.com>
3667
3668         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
3669         cmdscm_get_valid_command_smob_arg_unsafe for effect.
3670         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
3671         bkscm_get_valid_block_smob_arg_unsafe for effect.
3672
3673 2018-07-22  Tom Tromey  <tom@tromey.com>
3674
3675         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
3676         value_type.
3677
3678 2018-07-22  Tom Tromey  <tom@tromey.com>
3679
3680         * windows-nat.c (saved_context): Conditionally define.
3681         * remote.c (remote_target::remote_btrace_maybe_reopen):
3682         Conditionally declare "warned".
3683         * inflow.c (sigquit_ours): Conditionally define.
3684         (new_tty): Move "tty" declaration inside #if.
3685         * guile/guile.c (guile_datadir): Conditionally define.
3686         * charset.c (set_be_le_names): Move some declarations inside #if.
3687         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
3688         #if.
3689         (parse_xml_btrace_conf): Likewise.
3690
3691 2018-07-22  Tom Tromey  <tom@tromey.com>
3692
3693         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
3694
3695 2018-07-22  Tom Tromey  <tom@tromey.com>
3696
3697         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
3698         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
3699         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
3700         * buildsym-legacy.c (get_macro_table): Remove unused variable.
3701         * stack.c (frame_apply_level_command): Remove unused variable.
3702         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
3703         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
3704         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
3705         unused variable.
3706         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
3707         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
3708         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
3709         variable.
3710         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
3711         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
3712         variable.
3713         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
3714         Remove unused variable.
3715         * cli/cli-script.c (recurse_read_control_structure): Remove unused
3716         variable.
3717         * common/tdesc.c (print_xml_feature::visit): Remove unused
3718         variable.
3719         * compile/compile-object-load.c (store_regs): Remove unused
3720         variables.
3721         * complaints.c (clear_complaints): Remove unused variable.
3722         * corelow.c (core_target_open): Remove unused variable.
3723         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
3724         variable.
3725         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
3726         variable.
3727         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
3728         variable.
3729         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
3730         variable.
3731         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
3732         variable.
3733         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
3734         variable.
3735         * ia64-tdep.c (examine_prologue): Remove unused variable.
3736         * infcall.c (run_inferior_call): Remove unused variable.
3737         * inferior.c (exit_inferior): Remove unused variable.
3738         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
3739         * linespec.c (decode_line_2): Remove unused variable.
3740         * linux-nat.c (super_close): Remove.
3741         * linux-tdep.c (linux_info_proc): Remove unused variable.
3742         * mi/mi-main.c (mi_execute_command): Remove unused variable.
3743         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
3744         Remove unused variable.
3745         * parse.c (find_minsym_type_and_address): Remove unused variable.
3746         * printcmd.c (info_symbol_command, printf_floating): Remove unused
3747         variable.
3748         * python/py-breakpoint.c (bppy_set_commands): Remove unused
3749         variable.
3750         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
3751         variables.
3752         * record-btrace.c (record_btrace_target::store_registers): Remove
3753         unused variable.
3754         (cmd_show_record_btrace_cpu): Remove unused variable.
3755         * riscv-tdep.c (riscv_register_reggroup_p)
3756         (riscv_push_dummy_call, riscv_return_value): Remove unused
3757         variable.
3758         * rust-exp.y (literal): Remove unused variable.
3759         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
3760         unused variable.
3761         <STRUCTOP_ANONYMOUS>: Likewise.
3762         * s390-linux-tdep.c (s390_linux_init_abi_31)
3763         (s390_linux_init_abi_64): Remove unused variable.
3764         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
3765         (file_select_thread, net_windows_open, _initialize_ser_windows):
3766         Remove unused variables.
3767         * symtab.c (find_pc_sect_line): Remove unused variable.
3768         * target-memory.c (compute_garbled_blocks): Remove unused
3769         variable.
3770         (target_write_memory_blocks): Remove unused variable.
3771         * target.c (target_stack::unpush): Remove unused variables.
3772         * tracepoint.c (start_tracing, all_tracepoint_actions)
3773         (merge_uploaded_trace_state_variables)
3774         (print_one_static_tracepoint_marker): Remove unused variable.
3775         * unittests/basic_string_view/element_access/char/1.cc (test01):
3776         Remove unused variable.
3777         * windows-nat.c (windows_continue, windows_add_all_dlls)
3778         (do_initial_windows_stuff, windows_nat_target::create_inferior):
3779         Remove unused variables.
3780
3781 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
3782
3783         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
3784         attr_profile in HAVE_ELF.
3785         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
3786         HAVE_ELF.
3787
3788 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
3789
3790         * frame.c (frame_register_unwind): Change parameter name.
3791         (frame_unwind_register): Likewise.
3792         (frame_unwind_register_value): Likewise.
3793         (frame_unwind_register_signed): Likewise.
3794         (frame_unwind_register_unsigned): Likewise.
3795         * frame.h (frame_register_unwind): Likewise.
3796         (frame_unwind_register): Likewise.
3797         (frame_unwind_register_value): Likewise.
3798         (frame_unwind_register_signed): Likewise.
3799         (frame_unwind_register_unsigned): Likewise.
3800         (frame_unwind_arch): Likewise.
3801
3802 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
3803
3804         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
3805         ISA maintenance.
3806
3807 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
3808
3809         * mips-linux-nat.c (mips_linux_nat_target::read_description):
3810         Call `get_ptrace_pid' rather than extracting the ptrace PID by
3811         hand.
3812
3813 2018-07-20  Keith Seitz  <keiths@redhat.com>
3814
3815         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
3816         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
3817         m_compunit_symtab, m_language>: Add "m_" prefix.
3818         Update all uses.
3819         * buildsym.c: Update all uses.
3820
3821 2018-07-20  Tom Tromey  <tom@tromey.com>
3822
3823         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
3824         * buildsym.h (record_line_ftype): Remove typedef.
3825
3826 2018-07-20  Tom Tromey  <tom@tromey.com>
3827
3828         * buildsym-legacy.h (augment_type_symtab): Don't declare.
3829         (end_expandable_symtab): Likewise.
3830         (end_symtab_get_static_block): Likewise.
3831         (end_symtab_from_static_block): Likewise.
3832         * buildsym-legacy.c (augment_type_symtab): Remove.
3833         (end_expandable_symtab): Remove.
3834         (end_symtab_get_static_block): Remove.
3835         (end_symtab_from_static_block): Remove.
3836
3837 2018-07-20  Tom Tromey  <tom@tromey.com>
3838
3839         * dwarf2read.c: Include buildsym.h.
3840         (struct dwarf2_cu) <builder>: New method.
3841         (fixup_go_packaging): Update.
3842         (process_full_comp_unit, process_full_type_unit): Update.  Don't
3843         use scoped_free_pendings.
3844         (using_directives): Add "cu" parameter, remove "language".
3845         (read_import_statement, setup_type_unit_groups, )
3846         (read_func_scope, read_lexical_block_scope)
3847         (dwarf2_record_block_ranges, read_namespace): Update.
3848         (lnp_state_machine::lnp_state_machine): Add cu parameter.
3849         (lnp_state_machine::handle_end_sequence): Update.
3850         (class lnp_state_machine) <m_cu>: New member.
3851         <m_record_line_callback>: Remove.
3852         <m_currently_recording_lines>: New member.
3853         (lnp_state_machine::handle_set_file): Update.
3854         (noop_record_line): Remove.
3855         (dwarf_record_line_p): Add cu parameter.
3856         (dwarf_record_line_1, dwarf_finish_line): Likewise.
3857         (lnp_state_machine::record_line)
3858         (lnp_state_machine::lnp_state_machine)
3859         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
3860         (dwarf_decode_lines): Update.
3861         (dwarf2_start_subfile): Add cu parameter.
3862         (dwarf2_start_symtab, new_symbol): Update.
3863         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
3864         Remove dwarf2_per_objfile parameter.
3865         (dwarf_decode_macros): Update.
3866
3867 2018-07-20  Tom Tromey  <tom@tromey.com>
3868
3869         * stabsread.c (define_symbol): Update.
3870         * buildsym-legacy.h (get_buildsym_compunit): Declare.
3871         * dwarf2read.c (new_symbol): Update.
3872         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
3873         * cp-namespace.c: Include buildsym.h.
3874         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
3875         * buildsym-legacy.c (get_buildsym_compunit): New function.
3876
3877 2018-07-20  Tom Tromey  <tom@tromey.com>
3878
3879         * xcoffread.c: Include buildsym-legacy.h.
3880         * windows-nat.c: Include buildsym-legacy.h.
3881         * stabsread.c: Include buildsym-legacy.h.
3882         * mdebugread.c: Include buildsym-legacy.h.
3883         * buildsym-legacy.h: New file.
3884         * buildsym-legacy.c: New file, from buildsym.c.
3885         * go32-nat.c: Include buildsym-legacy.h.
3886         * dwarf2read.c: Include buildsym-legacy.h.
3887         * dbxread.c: Include buildsym-legacy.h.
3888         * cp-namespace.c: Include buildsym-legacy.h.
3889         * coffread.c: Include buildsym-legacy.h.
3890         * buildsym.h: Move some contents to buildsym-legacy.h.
3891         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
3892         buildsym-legacy.c.
3893         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
3894
3895 2018-07-20  Tom Tromey  <tom@tromey.com>
3896
3897         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
3898         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
3899         (buildsym_compunit::buildsym_compunit)
3900         (buildsym_compunit::~buildsym_compunit)
3901         (buildsym_compunit::get_macro_table): Define.
3902
3903 2018-07-20  Tom Tromey  <tom@tromey.com>
3904
3905         * buildsym.c (reset_symtab_globals): Remove.
3906         (buildsym_compunit::end_symtab_from_static_block): Update.
3907         (buildsym_compunit::augment_type_symtab): Update.
3908         (end_symtab_from_static_block): Call free_buildsym_compunit.
3909         (augment_type_symtab, end_symtab, end_expandable_symtab):
3910         Likewise.
3911
3912 2018-07-20  Tom Tromey  <tom@tromey.com>
3913
3914         * arch-utils.c: Do not include buildsym.h.
3915         * mipsread.c: Do not include buildsym.h.
3916         * machoread.c: Do not include buildsym.h.
3917         * elfread.c: Do not include buildsym.h.
3918
3919 2018-07-20  Tom Tromey  <tom@tromey.com>
3920
3921         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
3922         initialization.
3923         (buildsym_compunit): Add new constructor.
3924         (struct buildsym_compunit) <get_last_source_file, finish_block,
3925         record_block_range, start_subfile, patch_subfile_names,
3926         push_subfile, pop_subfile, record_line, get_compunit_symtab,
3927         set_last_source_start_addr, get_last_source_start_addr,
3928         get_local_using_directives, set_local_using_directives,
3929         get_global_using_directives, outermost_context_p,
3930         get_current_context_stack, get_context_stack_depth,
3931         get_current_subfile, get_local_symbols, get_file_symbols,
3932         get_global_symbols, record_debugformat, record_producer,
3933         push_context, pop_context, end_symtab_get_static_block,
3934         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
3935         New public methods.
3936         <record_pending_block, finish_block_internal, make_blockvector,
3937         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
3938         private methods.
3939         Update all users.
3940
3941 2018-05-22  Tom Tromey  <tom@tromey.com>
3942
3943         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
3944         parameter.
3945         (finish_block_internal): Update.
3946
3947 2018-07-20  Tom Tromey  <tom@tromey.com>
3948
3949         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
3950         parameter.
3951         (finish_block_internal): Update.
3952
3953 2018-07-20  Tom Tromey  <tom@tromey.com>
3954
3955         * buildsym.h (EXTERN): Don't define or undef.
3956         * buildsym.c (EXTERN): Don't define.
3957
3958 2018-07-20  Tom Tromey  <tom@tromey.com>
3959
3960         * buildsym.c: Remove TODO comment.
3961
3962 2018-07-20  Tom Tromey  <tom@tromey.com>
3963
3964         * coffread.c (coff_symtab_read): Update.
3965         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
3966         (xcoff_new_init): Update.
3967         * mipsread.c (mipscoff_new_init): Update.
3968         * mdebugread.c (mdebug_build_psymtabs): Update.
3969         * elfread.c (elf_new_init): Update.
3970         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
3971         Update.
3972         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
3973         (coffstab_build_psymtabs, elfstab_build_psymtabs)
3974         (stabsect_build_psymtabs): Update.
3975         * buildsym.h (buildsym_init): Don't declare.
3976         * buildsym.c: Update comment.
3977         (prepare_for_building): Remove.
3978         (start_symtab, restart_symtab): Update.
3979         (reset_symtab_globals): Update comment.
3980         (buildsym_init): Remove.
3981
3982 2018-07-20  Tom Tromey  <tom@tromey.com>
3983
3984         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
3985         * stabsread.c (patch_block_stabs, define_symbol, read_type)
3986         (read_enum_type, common_block_start, common_block_end)
3987         (cleanup_undefined_types_1, finish_global_stabs): Update.
3988         * mdebugread.c (psymtab_to_symtab_1): Update.
3989         * dwarf2read.c (fixup_go_packaging, read_func_scope)
3990         (read_lexical_block_scope, new_symbol): Update.
3991         * dbxread.c (process_one_symbol): Update.
3992         * coffread.c (coff_symtab_read, process_coff_symbol)
3993         (coff_read_enum_type): Update.
3994         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
3995         declare.
3996         (get_local_symbols, get_file_symbols, get_global_symbols): New
3997         functions.
3998         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
3999         m_global_symbols.
4000         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
4001         (~scoped_free_pendings): Update.
4002         (finish_block, prepare_for_building, reset_symtab_globals)
4003         (end_symtab_get_static_block, end_symtab_with_blockvector)
4004         (augment_type_symtab, push_context): Update.
4005         (get_local_symbols, get_file_symbols, get_global_symbols): New
4006         functions.
4007         (buildsym_init): Update.
4008
4009 2018-07-20  Tom Tromey  <tom@tromey.com>
4010
4011         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
4012         (process_full_type_unit): Likewise.
4013         (dwarf2_start_symtab): Set list_in_scope.
4014
4015 2018-07-20  Tom Tromey  <tom@tromey.com>
4016
4017         * dwarf2read.c (process_psymtab_comp_unit_reader)
4018         (build_type_psymtabs_reader): Do not set list_in_scope.
4019
4020 2018-07-20  Tom Tromey  <tom@tromey.com>
4021
4022         * buildsym.c (free_pendings): Remove.
4023         (add_symbol_to_list, scoped_free_pendings)
4024         (finish_block_internal, buildsym_init): Update.
4025
4026 2018-07-20  Tom Tromey  <tom@tromey.com>
4027
4028         * xcoffread.c (read_xcoff_symtab): Update.
4029         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
4030         Update.
4031         * dbxread.c (process_one_symbol): Update.
4032         * coffread.c (coff_symtab_read): Update.
4033         * buildsym.h (finish_block): Update.
4034         * buildsym.c (finish_block): Remove "listhead" argument.
4035         (end_symtab_get_static_block): Update.
4036
4037 2018-07-20  Tom Tromey  <tom@tromey.com>
4038
4039         * buildsym.h (class scoped_free_pendings): Remove constructor.
4040         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
4041         method.
4042         <m_pending_block_obstack, m_pending_blocks>: New members.
4043         (pending_block_obstack, pending_blocks): Remove.
4044         (scoped_free_pendings::scoped_free_pendings): Default.
4045         (~scoped_free_pendings): Update.
4046         (free_pending_blocks): Remove.
4047         (finish_block_internal, record_pending_block, make_blockvector)
4048         (end_symtab_get_static_block, augment_type_symtab, push_context)
4049         (buildsym_init): Update.
4050
4051 2018-07-20  Tom Tromey  <tom@tromey.com>
4052
4053         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
4054         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
4055         members.
4056         (pending_addrmap, pending_addrmap_obstack)
4057         (pending_addrmap_interesting): Remove.
4058         (scoped_free_pendings, record_block_range, make_blockvector)
4059         (prepare_for_building, reset_symtab_globals, buildsym_init):
4060         Update.
4061
4062 2018-07-20  Tom Tromey  <tom@tromey.com>
4063
4064         * xcoffread.c (process_linenos): Update.
4065         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
4066         * mdebugread.c (psymtab_to_symtab_1): Update.
4067         * dwarf2read.c (setup_type_unit_groups)
4068         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
4069         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
4070         * dbxread.c (process_one_symbol): Update.
4071         * coffread.c (coff_symtab_read, enter_linenos)
4072         (process_coff_symbol): Update.
4073         * buildsym.h (current_subfile): Don't declare.
4074         (get_current_subfile): Declare.
4075         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
4076         member.
4077         (start_subfile, free_buildsym_compunit, push_subfile)
4078         (prepare_for_building, start_symtab): Update.
4079         (get_current_subfile): New function.
4080
4081 2018-07-20  Tom Tromey  <tom@tromey.com>
4082
4083         * coffread.c (coff_symtab_read): Update.
4084         * xcoffread.c (read_xcoff_symtab): Update.
4085         * dwarf2read.c (new_symbol): Update.
4086         (read_func_scope, read_lexical_block_scope): Update.
4087         * dbxread.c (process_one_symbol): Update.
4088         * buildsym.h (context_stack, context_stack_depth): Don't declare.
4089         (outermost_context_p): Remove macro.
4090         (outermost_context_p, get_current_context_stack)
4091         (get_context_stack_depth): Declare.
4092         (pop_context): Return struct context_stack.
4093         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
4094         member.
4095         (context_stack_size): Remove.
4096         (INITIAL_CONTEXT_STACK_SIZE): Remove.
4097         (prepare_for_building, end_symtab_get_static_block)
4098         (augment_type_symtab, push_context): Update.
4099         (pop_context): Return struct context_stack.
4100         (outermost_context_p, get_current_context_stack)
4101         (get_context_stack_depth): New functions.
4102         (buildsym_init): Update.
4103
4104 2018-07-20  Tom Tromey  <tom@tromey.com>
4105
4106         * rust-exp.y: Now a pure parser.  Update all rules.
4107         (%union): Move earlier.
4108         (current_parser, work_obstack): Remove globals.
4109         (rust_parser, ~rust_parser): Update.
4110         (class rust_parser) <copy_name, concat3, crate_name, super_name,
4111         lex_character, lex_number, lex_string, lex_identifier,
4112         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
4113         convert_name, convert_params_to_expression,
4114         convert_ast_to_expression, ast_basic_type, ast_operation,
4115         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
4116         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
4117         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
4118         ast_array_type, ast_slice_type, ast_reference_type,
4119         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
4120         (rust_parse): Update.
4121         (rustyyerror, rustyylex): Add parser parameter.
4122         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
4123         (rust_lex_stringish_test, rust_lex_test_sequence)
4124         (rust_lex_test_trailing_dot, rust_lex_test_completion)
4125         (rust_lex_test_push_back, rust_lex_tests): Update.
4126
4127 2018-07-19  Pedro Alves  <palves@redhat.com>
4128
4129         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
4130         gdb::unique_xmalloc_ptr.
4131         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
4132         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
4133         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
4134         copy-initialization.
4135         * guile/scm-pretty-print.c (ppscm_print_children): Use
4136         gdb::unique_xmalloc_ptr instead of cleanups.
4137         (gdbscm_apply_val_pretty_printer): Remove cleanups.
4138         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
4139         gdb::unique_xmalloc_ptr.
4140         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4141         Adjust to use gdb::unique_xmalloc_ptr.
4142         * guile/scm-utils.c (extract_arg): Adjust.
4143         * guile/scm-value.c (gdbscm_value_field): Adjust to use
4144         gdb::unique_xmalloc_ptr instead of a cleanup.
4145
4146 2018-07-19  Tom Tromey  <tom@tromey.com>
4147
4148         * utils.c (do_value_free_to_mark)
4149         (make_cleanup_value_free_to_mark): Remove.
4150         * utils.h (make_cleanup_value_free_to_mark): Remove.
4151
4152 2018-07-19  Pedro Alves  <palves@redhat.com>
4153
4154         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
4155         forwarding reference.
4156
4157 2018-07-18  Pedro Alves  <palves@redhat.com>
4158
4159         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
4160         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
4161         cleanup.
4162
4163 2018-07-18  Pedro Alves  <palves@redhat.com>
4164
4165         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
4166         exceptions.
4167         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
4168         (gdbscm_wrap): New.
4169         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
4170         directly instead of a cleanup.
4171         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
4172         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
4173         (vlscm_binop_gdbthrow): New, factored out from ...
4174         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
4175         (vlscm_rich_compare): Use gdbscm_wrap.
4176         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
4177         instead of a cleanup.
4178         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
4179         cleanup.
4180         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4181         Use xfree directly instead of a cleanup.
4182         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
4183         Adjust to use gdbscm_wrap and scoped_value_mark.
4184         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
4185         (gdbscm_value_address, gdbscm_value_dereference)
4186         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
4187         scoped_value_mark.
4188         (gdbscm_value_dynamic_type): Use scoped_value_mark.
4189         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
4190         scoped_value_mark.
4191         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
4192         gdbscm_wrap and scoped_value_mark.
4193         (gdbscm_value_to_string): Use xfree directly instead of a
4194         cleanup.  Move 'buffer' unique_ptr to TRY scope.
4195         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
4196         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
4197         scoped_value_mark.
4198         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
4199         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
4200         scoped_value_mark.
4201         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
4202         gdbscm_wrap.
4203
4204 2018-07-18  Tom de Vries  <tdevries@suse.de>
4205
4206         * findvar.c (default_read_var_value): Also resolve dynamic type for
4207         LOC_OPTIMIZED_OUT vars.
4208
4209 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
4210
4211         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
4212         decoding.
4213
4214 2018-07-17  Tom Tromey  <tom@tromey.com>
4215
4216         * guile/scm-param.c (pascm_set_func, pascm_show_func)
4217         (compute_enum_list, pascm_set_param_value_x)
4218         (gdbscm_parameter_value): Update.
4219         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
4220         (gdbscm_scm_to_host_string): Update.
4221         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
4222         Update.
4223         * guile/scm-cmd.c (cmdscm_add_completion): Update.
4224         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
4225         * guile/scm-string.c (gdbscm_scm_to_string): Return
4226         unique_xmalloc_ptr.
4227         (gdbscm_scm_to_host_string): Likewise.
4228
4229 2018-07-17  Tom Tromey  <tom@tromey.com>
4230
4231         * guile/guile.c (gdbscm_eval_from_control_command): Update.
4232         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
4233         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
4234         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
4235         unique_xmalloc_ptr.
4236
4237 2018-07-17  Tom Tromey  <tom@tromey.com>
4238
4239         * guile/scm-param.c (pascm_signal_setshow_error): Update.
4240         * guile/guile-internal.h (gdbscm_exception_message_to_string):
4241         Update.
4242         * guile/scm-cmd.c (cmdscm_function): Update.
4243         * guile/scm-pretty-print.c
4244         (ppscm_print_exception_unless_memory_error): Update.
4245         * guile/scm-exception.c (gdbscm_exception_message_to_string):
4246         Return unique_xmalloc_ptr.
4247
4248 2018-07-17  Tom Tromey  <tom@tromey.com>
4249
4250         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
4251         Use string_printf.
4252
4253 2018-07-17  Jim Wilson  <jimw@sifive.com>
4254
4255         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
4256         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
4257         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
4258         unecessary braces after EF_RISCV_RVC test.  Delete call to
4259         set_gdbarch_decr_pc_after_break.
4260
4261         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
4262         RISCV_LAST_FP_REGNUM + 1.
4263         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
4264
4265 2018-07-17  Tom Tromey  <tom@tromey.com>
4266
4267         * configure.ac: Remove --disable-gdbcli.
4268         * configure: Rebuild.
4269         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
4270         (SUBDIR_CLI_CFLAGS): Remove.
4271         (SFILES): Use SUBDIR_CLI_SRCS.
4272         (COMMON_OBS): Use SUBDIR_CLI_OBS.
4273
4274 2018-07-17  Tom Tromey  <tom@tromey.com>
4275
4276         PR gdb/18624:
4277         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
4278
4279 2018-07-16  Jim Wilson  <jimw@sifive.com>
4280
4281         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
4282
4283 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4284
4285         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
4286         variable.
4287         (libunwind_frame_sniffer): Likewise.
4288         (libunwind_frame_prev_register): Likewise.
4289         (libunwind_sigtramp_frame_sniffer): Likewise.
4290         * ia64-tdep.c (ia64_access_reg): Likewise.
4291         (ia64_access_rse_reg): Likewise.
4292         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
4293         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
4294
4295 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4296
4297         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
4298
4299 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4300
4301         * remote-sim.c (gdbsim_target::close,
4302         gdbsim_target::mourn_inferior): Remove unused variables.
4303
4304 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
4305
4306         * ia64-tdep.c (ktab_buf): New global.
4307         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
4308         (get_kernel_table): Adjust.
4309
4310 2018-07-16  Tom Tromey  <tom@tromey.com>
4311
4312         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
4313         * dwarf2read.c (using_directives, new_symbol): Use
4314         outermost_context_p.
4315         * dbxread.c (process_one_symbol): Use outermost_context_p.
4316         * coffread.c (coff_symtab_read): Use outermost_context_p.
4317
4318 2018-07-16  Tom Tromey  <tom@tromey.com>
4319
4320         * dwarf2read.c (using_directives, read_func_scope)
4321         (read_lexical_block_scope): Update.
4322         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
4323         * buildsym.h (local_using_directives, global_using_directives):
4324         Don't declare.
4325         (get_local_using_directives, set_local_using_directives)
4326         (get_global_using_directives): Declare.
4327         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
4328         m_global_using_directives>: New members.
4329         (finish_block_internal, prepare_for_building)
4330         (reset_symtab_globals, end_symtab_get_static_block)
4331         (push_context): Update.
4332         (get_local_using_directives, set_local_using_directives)
4333         (get_global_using_directives): New functions.
4334         (buildsym_init): Update.
4335
4336 2018-07-16  Tom Tromey  <tom@tromey.com>
4337
4338         * xcoffread.c (xcoff_initial_scan): Don't call
4339         free_pending_blocks.
4340         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
4341         * buildsym.h (class scoped_free_pendings): Add constructor.
4342         (free_pending_blocks): Don't declare.
4343         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
4344         (free_pending_blocks): Now static.
4345
4346 2018-07-16  Tom Tromey  <tom@tromey.com>
4347
4348         * buildsym.h (push_subfile, pop_subfile): Update declarations.
4349         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
4350         member.
4351         (struct subfile_stack): Remove.
4352         (subfile_stack): Remove.
4353         (push_subfile, pop_subfile, buildsym_init): Update.
4354
4355 2018-07-16  Tom Tromey  <tom@tromey.com>
4356
4357         * buildsym.c (push_subfile): Use gdb_assert.
4358         (pop_subfile): Use gdb_assert.
4359
4360 2018-07-16  Tom Tromey  <tom@tromey.com>
4361
4362         * buildsym.h (merge_symbol_lists): Remove.
4363         * buildsym.c (merge_symbol_lists): Remove.
4364
4365 2018-07-16  Tom Tromey  <tom@tromey.com>
4366
4367         * stabsread.c (scan_file_globals): Update comment.
4368         * stabsread.h (scan_file_globals): Move from buildsym.h.
4369         * buildsym.h (scan_file_globals): Move to stabsread.h.
4370
4371 2018-07-16  Tom Tromey  <tom@tromey.com>
4372
4373         * xcoffread.c (xcoff_new_init): Update.
4374         * mipsread.c (mipscoff_new_init): Update.
4375         * mdebugread.c (mdebug_build_psymtabs): Update.
4376         * elfread.c (elf_new_init): Update.
4377         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
4378         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
4379         * buildsym.h (buildsym_new_init): Don't declare.
4380         * buildsym.c (buildsym_new_init): Remove.
4381
4382 2018-07-16  Tom Tromey  <tom@tromey.com>
4383
4384         * stabsread.h (within_function): Move from buildsym.h.
4385         * stabsread.c (start_stabs): Clear within_function.
4386         * coffread.c (coff_start_symtab): Clear within_function.
4387         * buildsym.h (within_function): Move to stabsread.h.
4388         * buildsym.c (prepare_for_building): Update.
4389
4390 2018-07-16  Tom Tromey  <tom@tromey.com>
4391
4392         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
4393         * dwarf2read.c (dwarf2_start_symtab): Don't set
4394         processing_gcc_compilation.
4395         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
4396
4397 2018-07-16  Tom Tromey  <tom@tromey.com>
4398
4399         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
4400         (next_symbol_text_func): Move from buildsym.h.
4401         * stabsread.c (hashname): Move from buildsym.c.
4402         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
4403         (next_symbol_text_func, hashname): Move to stabsread.h.
4404         * buildsym.c: Don't include bcache.h
4405         (hashname): Move to stasbread.c.
4406
4407 2018-07-16  Tom Tromey  <tom@tromey.com>
4408
4409         * buildsym.h (context_stack_size): Don't declare.
4410         * buildsym.c (context_stack_size): New global.
4411
4412 2018-07-16  Tom Tromey  <tom@tromey.com>
4413
4414         * dbxread.c (processing_acc_compilation): New global.
4415         * buildsym.h (processing_acc_compilation): Don't declare.
4416
4417 2018-07-16  Tom Tromey  <tom@tromey.com>
4418
4419         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
4420         * dbxread.c (read_ofile_symtab): Update.
4421         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
4422         * buildsym.h (last_source_start_addr): Remove.
4423         (set_last_source_start_addr, get_last_source_start_addr):
4424         Declare.
4425         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
4426         parameter.
4427         (struct buildsym_compunit) <m_last_source_start_addr>: New
4428         member.
4429         (prepare_for_building): Remove start_addr parameter.
4430         (start_symtab, restart_symtab, end_symtab_get_static_block)
4431         (end_symtab_with_blockvector): Update.
4432         (set_last_source_start_addr, get_last_source_start_addr): New
4433         functions.
4434
4435 2018-07-16  Tom Tromey  <tom@tromey.com>
4436
4437         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
4438         member.
4439         (have_line_numbers): Remove.
4440         (record_line, prepare_for_building, end_symtab_get_static_block)
4441         (augment_type_symtab): Update.
4442
4443 2018-07-16  Tom Tromey  <tom@tromey.com>
4444
4445         * buildsym.c (~buildsym_compunit): Free the macro table.
4446         (struct buildsym_compunit) <get_macro_table, release_macros>: New
4447         methods.
4448         <m_pending_macros>: New member.
4449         (pending_macros): Remove.
4450         (~scoped_free_pendings, get_macro_table, prepare_for_building)
4451         (reset_symtab_globals, end_symtab_get_static_block)
4452         (end_symtab_with_blockvector, augment_type_symtab)
4453         (buildsym_init): Update.
4454
4455 2018-07-16  Tom Tromey  <tom@tromey.com>
4456
4457         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
4458         parameter.
4459         (buildsym_compunit::set_last_source_file): New method.
4460         <m_last_source_file>: New member.
4461         (prepare_for_building): Remove "name" parameter.
4462         (start_symtab, restart_symtab, reset_symtab_globals): Update.
4463         (last_source_file): Remove.
4464         (set_last_source_file, get_last_source_file): Update.
4465
4466 2018-07-16  Tom Tromey  <tom@tromey.com>
4467
4468         * buildsym.c (prepare_for_building): Add assert.
4469
4470 2018-07-16  Tom Tromey  <tom@tromey.com>
4471
4472         * buildsym.c (~buildsym_compunit): Update.
4473         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
4474         (start_subfile, patch_subfile_names)
4475         (end_symtab_with_blockvector): Update.
4476
4477 2018-07-16  Tom Tromey  <tom@tromey.com>
4478
4479         * buildsym.c (struct buildsym_compunit): Add constructor,
4480         destructor, initializers.
4481         (start_buildsym_compunit): Remove.
4482         (free_buildsym_compunit): Use "delete".
4483         (start_symtab, restart_symtab): Use "new".
4484
4485 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
4486
4487         * symfile.c (set_objfile_default_section_offset): Remove struct
4488         keyword.
4489
4490 2018-07-14  Stafford Horne  <shorne@gmail.com>
4491
4492         * (Responsible Maintainers): Add myself as or1k maintainer.
4493
4494 2018-07-13  Tom Tromey  <tom@tromey.com>
4495
4496         * symfile.c (set_objfile_default_section_offset): Use extra braces
4497         around initializer.
4498
4499 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
4500
4501         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
4502         non-branching basr.
4503
4504 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4505
4506         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4507         unittests/cli-utils-selftests.c
4508         * unittests/cli-utils-selftests.c: New file.
4509
4510 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4511
4512         * NEWS: Mention new commands. Mention change to 'thread apply'.
4513
4514 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4515
4516         * thread.c (thr_try_catch_cmd): New function.
4517         (thread_apply_all_command): Handle qcs flags.
4518         (thread_apply_command): Handle qcs flags.
4519         (taas_command): New function.
4520         (tfaas_command): New function.
4521         (_initialize_thread): Update to setup the new commands 'taas
4522         and 'tfaas'. Change doc string for 'thread apply'.
4523
4524 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4525
4526         * stack.c: (trailing_outermost_frame): New function, mostly
4527         extracted from backtrace_command_1.
4528         (leading_innermost_frame): New function.
4529         (backtrace_command_1): Update to call trailing_outermost_frame.
4530         (frame_apply_command_count): New function.
4531         (frame_apply_level_command): New function.
4532         (frame_apply_all_command): New function.
4533         (frame_apply_command): New function.
4534         (faas_command): New function.
4535         (frame_cmd_list): New variable.
4536         (_initialize_stack): Update to setup the new commands 'frame apply'
4537         and 'faas'.
4538
4539 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4540
4541         * cli-utils.c (number_or_range_parser::get_number): Only handle
4542         numbers or convenience var as numbers.
4543         (parse_flags): New function.
4544         (parse_flags_qcs): New function.
4545         (number_or_range_parser::finished): Ensure parsing end is detected
4546         before end of string.
4547         * cli-utils.h (parse_flags): New function.
4548         (parse_flags_qcs): New function.
4549         (number_or_range_parser): Remove m_finished bool.
4550         (number_or_range_parser::skip_range): Set m_in_range to false.
4551
4552 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
4553
4554         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
4555         on Windows.
4556
4557 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4558             Jan Kratochvil  <jan.kratochvil@redhat.com>
4559             Paul Fertser  <fercerpav@gmail.com>
4560             Tsutomu Seki  <sekiriki@gmail.com>
4561             Pedro Alves  <palves@redhat.com>
4562
4563         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4564         'unittests/parse-connection-spec-selftests.c'.
4565         (COMMON_SFILES): Add 'common/netstuff.c'.
4566         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
4567         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
4568         * common/netstuff.c: New file.
4569         * common/netstuff.h: New file.
4570         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
4571         (wait_for_connect): Update comment.  New parameter
4572         'gdb::optional<int> sock' instead of 'struct serial *scb'.
4573         Use 'sock' directly instead of 'scb->fd'.
4574         (try_connect): New function, with code from 'net_open'.
4575         (net_open): Rewrite main loop to deal with multiple
4576         sockets/addresses.  Handle IPv6-style hostnames; implement
4577         support for IPv6 connections.
4578         * unittests/parse-connection-spec-selftests.c: New file.
4579
4580 2018-07-11  Pedro Alves  <palves@redhat.com>
4581
4582         PR gdb/23377
4583         * remote.c (remote_target::remote_detach_pid): Call
4584         set_current_process.
4585
4586 2018-07-11  Pedro Alves  <palves@redhat.com>
4587
4588         * h8300-tdep.c (h8300_gdbarch_init): Remove
4589         set_gdbarch_ecoff_reg_to_regnum calls.
4590
4591 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4592
4593         PR c++/23373
4594         * c-typeprint.c (c_type_print_base_struct_union): Don't print
4595         offsets/sizes for static members of a class/struct.
4596
4597 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
4598
4599         * target-descriptions.c (tdesc_register_bitsize): Rename.
4600         * target-descriptions.h (tdesc_register_bitsize): Likewise.
4601         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
4602         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
4603
4604 2018-07-10  Tom Tromey  <tom@tromey.com>
4605
4606         * breakpoint.c (moribund_locations): Now static and a
4607         std::vector.
4608         (breakpoint_init_inferior, moribund_breakpoint_here_p)
4609         (build_bpstat_chain, update_global_location_list)
4610         (breakpoint_retire_moribund): Update.
4611         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
4612         VEC.
4613
4614 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4615
4616         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
4617         (riscv_register_reggroup_p): Use new function, remove unneeded
4618         parenthesis.
4619         (riscv_push_dummy_call): Extend assert to compare against xlen or
4620         flen based on register type.
4621
4622 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4623
4624         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
4625
4626 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4627
4628         * remote.c (show_hardware_watchpoint_limit): New function.
4629         (show_hardware_watchpoint_length_limit): New function.
4630         (show_hardware_breakpoint_limit): New function.
4631         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
4632         where appropriate, update help text.
4633
4634 2018-07-09  Tom Tromey  <tom@tromey.com>
4635
4636         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
4637         (CLIBS): Don't mention NAT_CLIBS.
4638
4639 2018-07-09  Tom Tromey  <tom@tromey.com>
4640
4641         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
4642         (LIBGDB_OBS, clean mostlyclean): Update.
4643         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
4644
4645 2018-07-09  Tom Tromey  <tom@tromey.com>
4646
4647         * Makefile.in (%.c: %.y): Use ECHO_YACC.
4648         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
4649         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
4650
4651 2018-07-09  Tom Tromey  <tom@tromey.com>
4652
4653         * Makefile.in (ALLDEPFILES): Remove exec.c.
4654         (COMMON_OBS): Remove exec.o.
4655         (COMMON_SFILES): Add exec.c.
4656
4657 2018-07-09  Tom Tromey  <tom@tromey.com>
4658
4659         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
4660
4661 2018-07-09  Tom Tromey  <tom@tromey.com>
4662
4663         * Makefile.in (clean mostlyclean): Remove stamp-version.
4664         (version.c): Depend on stamp-version.
4665         (stamp-version): New rule, from version.c rule.
4666
4667 2018-07-09  Tom Tromey  <tom@tromey.com>
4668
4669         * Makefile.in (init.c): Depend on stamp-init.
4670         (stamp-init): New rule, from init.c rule.
4671         (clean mostlyclean): Remove stamp-init.
4672
4673 2018-07-09  Tom Tromey  <tom@tromey.com>
4674
4675         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
4676         SUBDIR_GCC_COMPILE_SRCS.
4677
4678 2018-07-09  Tom Tromey  <tom@tromey.com>
4679
4680         * Makefile.in (init.c): Remove some unused sed rules.
4681
4682 2018-07-09  Tom Tromey  <tom@tromey.com>
4683
4684         * Makefile.in (TSOBS): Remove.
4685         (INIT_FILES): Update.
4686         (LIBGDB_OBS): Update.
4687         (COMMON_SFILES): Add inflow.c.
4688         (SFILES): Remove inflow.c.
4689
4690 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
4691
4692         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
4693
4694 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
4695
4696         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
4697         get_saveloc_name, is_signal_frame_name, step_name,
4698         init_remote_name, create_addr_space_name,
4699         destroy_addr_space_name, search_unwind_table_name,
4700         find_dyn_list_name): Constify.
4701
4702 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
4703
4704         * darwin-nat.c (darwin_pthread_kill): New function.
4705         (darwin_resume_thread): Use darwin_pthread_kill.
4706
4707 2018-07-05  Tom de Vries  <tdevries@suse.de>
4708
4709         * macroexp.c (macro_buffer) <operator=>: New member function.
4710
4711 2018-07-04  Tom Tromey  <tom@tromey.com>
4712
4713         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
4714
4715 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
4716
4717         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
4718         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
4719         * maint.c: Likewise.
4720         * top.c: Likewise.
4721
4722 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
4723
4724         * NEWS: Create a new section for the next release branch.
4725         Rename the section of the current branch, now that it has
4726         been cut.
4727
4728 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
4729
4730         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
4731         * version.in: Bump version to 8.2.50.DATE-git.
4732
4733 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
4734             Pedro Alves  <palves@redhat.com>
4735
4736         * linux-nat.c (linux_init_ptrace): Rename to ...
4737         (linux_init_ptrace_procfs): ... this.  Call
4738         linux_proc_init_warnings.
4739         (linux_nat_target::post_attach)
4740         (linux_nat_target::post_startup_inferior): Adjust.
4741         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
4742         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
4743
4744 2018-07-04  Tom de Vries  <tdevries@suse.de>
4745
4746         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
4747         check ...
4748         (read_comp_unit_head): ... here.
4749
4750 2018-07-03  Tom Tromey  <tom@tromey.com>
4751
4752         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
4753         (stop_tracing, tstatus_command)
4754         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
4755         (print_one_static_tracepoint_marker): Update.
4756         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
4757         std::vector.
4758         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
4759         VEC.
4760         (all_tracepoints, static_tracepoints_here): Return std::vector.
4761
4762 2018-07-03  Tom Tromey  <tom@tromey.com>
4763
4764         * common/ptid.c (ptid_equal): Remove.
4765         * common/ptid.h (ptid_equal): Don't declare.
4766         * ada-tasks.c: Update.
4767         * breakpoint.c: Update.
4768         * common/agent.c: Update.
4769         * corelow.c: Update.
4770         * darwin-nat-info.c: Update.
4771         * darwin-nat.c: Update.
4772         * dcache.c: Update.
4773         * dtrace-probe.c: Update.
4774         * dummy-frame.c: Update.
4775         * fbsd-nat.c: Update.
4776         * frame.c: Update.
4777         * gdbthread.h: Update.
4778         * gnu-nat.c: Update.
4779         * go32-nat.c: Update.
4780         * inf-loop.c: Update.
4781         * inf-ptrace.c: Update.
4782         * infcall.c: Update.
4783         * infcmd.c: Update.
4784         * inflow.c: Update.
4785         * infrun.c: Update.
4786         * linux-fork.c: Update.
4787         * linux-nat.c: Update.
4788         * linux-thread-db.c: Update.
4789         * mi/mi-cmd-var.c: Update.
4790         * mi/mi-interp.c: Update.
4791         * mi/mi-main.c: Update.
4792         * nto-procfs.c: Update.
4793         * ppc-linux-tdep.c: Update.
4794         * procfs.c: Update.
4795         * python/py-inferior.c: Update.
4796         * python/py-record-btrace.c: Update.
4797         * python/py-record.c: Update.
4798         * ravenscar-thread.c: Update.
4799         * regcache.c: Update.
4800         * remote-sim.c: Update.
4801         * remote.c: Update.
4802         * sol-thread.c: Update.
4803         * solib.c: Update.
4804         * target.c: Update.
4805         * tui/tui-stack.c: Update.
4806         * varobj.c: Update.
4807         * windows-nat.c: Update.
4808         * windows-tdep.c: Update.
4809
4810 2018-07-03  Tom Tromey  <tom@tromey.com>
4811
4812         * common/ptid.c (ptid_match): Remove.
4813         * common/ptid.h (ptid_match): Don't declare.
4814         * fbsd-nat.c: Update.
4815         * infcmd.c: Update.
4816         * infrun.c: Update.
4817         * linux-nat.c: Update.
4818         * record-btrace.c: Update.
4819         * regcache.c: Update.
4820         * remote.c: Update.
4821
4822 2018-07-03  Tom Tromey  <tom@tromey.com>
4823
4824         * common/ptid.c (ptid_tid_p): Remove.
4825         * common/ptid.h (ptid_tid_p): Don't declare.
4826         * sol-thread.c: Update.
4827
4828 2018-07-03  Tom Tromey  <tom@tromey.com>
4829
4830         * common/ptid.c (ptid_lwp_p): Remove.
4831         * common/ptid.h (ptid_lwp_p): Don't declare.
4832         * fbsd-nat.c: Update.
4833         * linux-nat.c: Update.
4834         * nat/linux-procfs.c: Update.
4835         * nat/x86-linux-dregs.c: Update.
4836         * sol-thread.c: Update.
4837
4838 2018-07-03  Tom Tromey  <tom@tromey.com>
4839
4840         * common/ptid.c (ptid_is_pid): Remove.
4841         * common/ptid.h (ptid_is_pid): Don't declare.
4842         * infrun.c: Update.
4843         * linux-nat.c: Update.
4844         * mi/mi-interp.c: Update.
4845         * remote.c: Update.
4846         * thread.c: Update.
4847
4848 2018-07-03  Tom Tromey  <tom@tromey.com>
4849
4850         * common/ptid.c (ptid_get_tid): Remove.
4851         * common/ptid.h (ptid_get_tid): Don't declare.
4852         * ada-tasks.c: Update.
4853         * aix-thread.c: Update.
4854         * bsd-uthread.c: Update.
4855         * darwin-nat.c: Update.
4856         * fbsd-nat.c: Update.
4857         * i386-darwin-nat.c: Update.
4858         * infrun.c: Update.
4859         * linux-tdep.c: Update.
4860         * nto-procfs.c: Update.
4861         * ppc-ravenscar-thread.c: Update.
4862         * python/py-infthread.c: Update.
4863         * ravenscar-thread.c: Update.
4864         * sol-thread.c: Update.
4865         * sparc-ravenscar-thread.c: Update.
4866         * windows-nat.c: Update.
4867
4868 2018-07-03  Tom Tromey  <tom@tromey.com>
4869
4870         * common/ptid.c (ptid_get_lwp): Remove.
4871         * common/ptid.h (ptid_get_lwp): Don't declare.
4872         * aarch64-linux-nat.c: Update.
4873         * ada-tasks.c: Update.
4874         * aix-thread.c: Update.
4875         * amd64-linux-nat.c: Update.
4876         * arm-linux-nat.c: Update.
4877         * corelow.c: Update.
4878         * fbsd-nat.c: Update.
4879         * fbsd-tdep.c: Update.
4880         * gnu-nat.c: Update.
4881         * i386-cygwin-tdep.c: Update.
4882         * i386-gnu-nat.c: Update.
4883         * i386-linux-nat.c: Update.
4884         * ia64-linux-nat.c: Update.
4885         * inf-ptrace.c: Update.
4886         * infrun.c: Update.
4887         * linux-fork.c: Update.
4888         * linux-nat.c: Update.
4889         * linux-tdep.c: Update.
4890         * linux-thread-db.c: Update.
4891         * mips-linux-nat.c: Update.
4892         * nat/aarch64-linux-hw-point.c: Update.
4893         * nat/aarch64-linux.c: Update.
4894         * nat/linux-btrace.c: Update.
4895         * nat/linux-osdata.c: Update.
4896         * nat/linux-procfs.c: Update.
4897         * nat/x86-linux-dregs.c: Update.
4898         * obsd-nat.c: Update.
4899         * ppc-fbsd-nat.c: Update.
4900         * ppc-linux-nat.c: Update.
4901         * procfs.c: Update.
4902         * python/py-infthread.c: Update.
4903         * ravenscar-thread.c: Update.
4904         * remote.c: Update.
4905         * s390-linux-nat.c: Update.
4906         * sol-thread.c: Update.
4907         * sol2-tdep.c: Update.
4908         * spu-linux-nat.c: Update.
4909         * x86-linux-nat.c: Update.
4910         * xtensa-linux-nat.c: Update.
4911
4912 2018-07-03  Tom Tromey  <tom@tromey.com>
4913
4914         * common/ptid.c (ptid_get_pid): Remove.
4915         * common/ptid.h (ptid_get_pid): Don't declare.
4916         * aarch64-linux-nat.c: Update.
4917         * ada-lang.c: Update.
4918         * aix-thread.c: Update.
4919         * alpha-bsd-nat.c: Update.
4920         * amd64-fbsd-nat.c: Update.
4921         * amd64-linux-nat.c: Update.
4922         * arm-linux-nat.c: Update.
4923         * arm-nbsd-nat.c: Update.
4924         * auxv.c: Update.
4925         * break-catch-syscall.c: Update.
4926         * breakpoint.c: Update.
4927         * bsd-uthread.c: Update.
4928         * corelow.c: Update.
4929         * ctf.c: Update.
4930         * darwin-nat.c: Update.
4931         * fbsd-nat.c: Update.
4932         * fbsd-tdep.c: Update.
4933         * gcore.c: Update.
4934         * gnu-nat.c: Update.
4935         * hppa-nbsd-nat.c: Update.
4936         * hppa-obsd-nat.c: Update.
4937         * i386-fbsd-nat.c: Update.
4938         * ia64-linux-nat.c: Update.
4939         * inf-ptrace.c: Update.
4940         * infcmd.c: Update.
4941         * inferior.c: Update.
4942         * inferior.h: Update.
4943         * inflow.c: Update.
4944         * infrun.c: Update.
4945         * linux-fork.c: Update.
4946         * linux-nat.c: Update.
4947         * linux-tdep.c: Update.
4948         * linux-thread-db.c: Update.
4949         * m68k-bsd-nat.c: Update.
4950         * mi/mi-interp.c: Update.
4951         * mi/mi-main.c: Update.
4952         * mips-linux-nat.c: Update.
4953         * mips-nbsd-nat.c: Update.
4954         * mips64-obsd-nat.c: Update.
4955         * nat/aarch64-linux-hw-point.c: Update.
4956         * nat/aarch64-linux.c: Update.
4957         * nat/linux-btrace.c: Update.
4958         * nat/linux-osdata.c: Update.
4959         * nat/linux-procfs.c: Update.
4960         * nat/x86-linux-dregs.c: Update.
4961         * nto-procfs.c: Update.
4962         * obsd-nat.c: Update.
4963         * ppc-linux-nat.c: Update.
4964         * ppc-nbsd-nat.c: Update.
4965         * ppc-obsd-nat.c: Update.
4966         * proc-service.c: Update.
4967         * procfs.c: Update.
4968         * python/py-inferior.c: Update.
4969         * python/py-infthread.c: Update.
4970         * ravenscar-thread.c: Update.
4971         * record.c: Update.
4972         * remote-sim.c: Update.
4973         * remote.c: Update.
4974         * rs6000-nat.c: Update.
4975         * s390-linux-nat.c: Update.
4976         * sh-nbsd-nat.c: Update.
4977         * sol-thread.c: Update.
4978         * sparc-nat.c: Update.
4979         * sparc64-tdep.c: Update.
4980         * spu-linux-nat.c: Update.
4981         * spu-tdep.c: Update.
4982         * target-debug.h: Update.
4983         * target.c: Update.
4984         * thread.c: Update.
4985         * tid-parse.c: Update.
4986         * tracefile-tfile.c: Update.
4987         * vax-bsd-nat.c: Update.
4988         * windows-nat.c: Update.
4989         * x86-linux-nat.c: Update.
4990         * x86-nat.c: Update.
4991
4992 2018-07-03  Tom Tromey  <tom@tromey.com>
4993
4994         * common/ptid.c (pid_to_ptid): Remove.
4995         * common/ptid.h (pid_to_ptid): Don't declare.
4996         * aix-thread.c: Update.
4997         * arm-linux-nat.c: Update.
4998         * common/ptid.c: Update.
4999         * common/ptid.h: Update.
5000         * corelow.c: Update.
5001         * ctf.c: Update.
5002         * darwin-nat.c: Update.
5003         * fbsd-nat.c: Update.
5004         * fork-child.c: Update.
5005         * gnu-nat.c: Update.
5006         * go32-nat.c: Update.
5007         * inf-ptrace.c: Update.
5008         * infcmd.c: Update.
5009         * inferior.c: Update.
5010         * infrun.c: Update.
5011         * linux-fork.c: Update.
5012         * linux-nat.c: Update.
5013         * nat/aarch64-linux-hw-point.c: Update.
5014         * nat/fork-inferior.c: Update.
5015         * nat/x86-linux-dregs.c: Update.
5016         * nto-procfs.c: Update.
5017         * obsd-nat.c: Update.
5018         * procfs.c: Update.
5019         * progspace.c: Update.
5020         * remote.c: Update.
5021         * rs6000-nat.c: Update.
5022         * s390-linux-nat.c: Update.
5023         * sol-thread.c: Update.
5024         * spu-linux-nat.c: Update.
5025         * target.c: Update.
5026         * top.c: Update.
5027         * tracefile-tfile.c: Update.
5028         * windows-nat.c: Update.
5029
5030 2018-07-03  Tom Tromey  <tom@tromey.com>
5031
5032         * common/ptid.h (ptid_build): Don't declare.
5033         * common/ptid.c (ptid_build): Remove.
5034         * aix-thread.c: Update.
5035         * bsd-kvm.c: Update.
5036         * bsd-uthread.c: Update.
5037         * common/agent.c: Update.
5038         * common/ptid.c: Update.
5039         * common/ptid.h: Update.
5040         * corelow.c: Update.
5041         * darwin-nat.c: Update.
5042         * fbsd-nat.c: Update.
5043         * gnu-nat.c: Update.
5044         * linux-fork.c: Update.
5045         * linux-nat.c: Update.
5046         * linux-thread-db.c: Update.
5047         * nat/linux-osdata.c: Update.
5048         * nat/linux-procfs.c: Update.
5049         * nto-procfs.c: Update.
5050         * obsd-nat.c: Update.
5051         * proc-service.c: Update.
5052         * procfs.c: Update.
5053         * ravenscar-thread.c: Update.
5054         * remote-sim.c: Update.
5055         * remote.c: Update.
5056         * sol-thread.c: Update.
5057         * target.c: Update.
5058         * windows-nat.c: Update.
5059
5060 2018-07-03  Tom Tromey  <tom@tromey.com>
5061
5062         * infrun.c (follow_exec): Use exit_inferior_silent.
5063         * inferior.c (exit_inferior_num_silent): Remove.
5064         * inferior.h (exit_inferior_num_silent): Don't declare.
5065
5066 2018-07-03  Tom Tromey  <tom@tromey.com>
5067
5068         PR cli/23340:
5069         * darwin-nat.c (darwin_attach_pid): Reset inferior and
5070         inferior_ptid on error.
5071
5072 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
5073             Simon Marchi  <simon.marchi@polymtl.ca>
5074
5075         PR tdep/8282
5076         * disasm.h (gdb_disassembler): Add
5077         `m_disassembler_options_holder'. member
5078         * disasm.c (get_all_disassembler_options): New function.
5079         (gdb_disassembler::gdb_disassembler): Use it.
5080         (gdb_buffered_insn_length_init_dis): Likewise.
5081         (gdb_buffered_insn_length): Adjust accordingly.
5082         (set_disassembler_options): Handle options with arguments.
5083         (show_disassembler_options_sfunc): Likewise.  Add a leading new
5084         line if showing options with descriptions.
5085         (disassembler_options_completer): Adapt to using the
5086         `disasm_options_and_args_t' structure.
5087         * mips-tdep.c (mips_disassembler_options): New variable.
5088         (mips_disassembler_options_o32): Likewise.
5089         (mips_disassembler_options_n32): Likewise.
5090         (mips_disassembler_options_n64): Likewise.
5091         (gdb_print_insn_mips): Don't set `disassembler_options'.
5092         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
5093         functions.
5094         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
5095         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
5096         `gdbarch_disassembler_options_implicit' and
5097         `gdbarch_valid_disassembler_options'.
5098         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
5099         `disasm_options_and_args_t' structure.
5100         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
5101         method.
5102         (valid_disassembler_options): Switch from `disasm_options_t' to
5103         the `disasm_options_and_args_t' structure.
5104         * NEWS: Document `set disassembler-options' support for the MIPS
5105         target.
5106         * gdbarch.h: Regenerate.
5107         * gdbarch.c: Regenerate.
5108
5109 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
5110
5111         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
5112
5113 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
5114
5115         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
5116         parameter in call to amd64_target_description.
5117         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
5118         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
5119         (amd64fbsd_init_abi): Likewise.
5120         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
5121         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
5122         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
5123         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
5124
5125 2018-06-29  Pedro Alves  <palves@redhat.com>
5126
5127         * gdb/amd64-tdep.h (amd64_create_target_description): Add
5128         "segments" parameter.
5129         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
5130         (_initialize_amd64_tdep): Update call to
5131         amd64_create_target_description.
5132         (amd64_target_description): Add "segments" parameter.  Adjust
5133         the implementation to use it.
5134         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
5135         call to amd64_create_target_description.
5136         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
5137         * gdb/arch/amd64.h (amd64_create_target_description): Add
5138         "segments" register.
5139         * gdb/arch/amd64.c (amd64_create_target_description): Add
5140         "segments" parameter.  Call create_feature_i386_64bit_segments
5141         only if SEGMENTS is true.
5142         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
5143         call to amd64_create_target_description.
5144
5145 2018-06-29  Pedro Alves  <palves@redhat.com>
5146
5147         * thread.c (thread_target_id_str): New, factored out from ...
5148         (print_thread_info_1): ... here.  Use it to compute the max
5149         "Target Id" column width.
5150
5151 2018-06-29  Pedro Alves  <palves@redhat.com>
5152
5153         * remote.c (remote_target::extra_thread_info): Delete
5154         'display_buf' and 'n' locals.  from the cache, regardless of
5155         packet mechanims is in use.  Use cache for qThreadExtra and qP
5156         methods too.
5157
5158 2018-06-29  Pedro Alves  <palves@redhat.com>
5159
5160         * blockframe.c (find_pc_sect_containing_function): New function.
5161         * breakpoint.c (print_breakpoint_location): Don't call
5162         find_pc_sect_function.
5163         * linespec.c (create_sals_line_offset): Record the location's
5164         symbol in the sal.
5165         * linespec.c (convert_address_location_to_sals): Fill in sal's
5166         symbol with find_pc_sect_containing_function.
5167         * symtab.c (find_function_start_sal): Rename to ...
5168         (find_function_start_sal_1): ... this.
5169         (find_function_start_sal): Reimplement as wrapper around
5170         find_function_start_sal_1, and use
5171         find_pc_sect_containing_function to fill in the sal's symbol.
5172         (find_function_start_sal(symbol*, bool)): Adjust.
5173         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
5174         comments.
5175         (find_pc_sect_containing_function): Declare.
5176
5177 2018-06-29  Pedro Alves  <palves@redhat.com>
5178
5179         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
5180         true if the the location has no symbol.
5181
5182 2018-06-28  Tom Tromey  <tom@tromey.com>
5183
5184         * NEWS: Mention --enable-codesign.
5185         * silent-rules.mk (ECHO_SIGN): New variable.
5186         * configure.ac: Add --enable-codesign.
5187         * configure: Rebuild.
5188         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
5189         (gdb$(EXEEXT)): Optionally invoke codesign.
5190
5191 2018-06-28  Pedro Alves  <palves@redhat.com>
5192
5193         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
5194         comments.
5195         (switch_to_thread_no_regs): Adjust comment.
5196         * infcmd.c (stop_pc): Delete.
5197         (post_create_inferior, info_program_command): Replace references
5198         to stop_pc with references to thread_info->suspend.stop_pc.
5199         * inferior.h (stop_pc): Delete declaration.
5200         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
5201         (handle_inferior_event_1, handle_signal_stop)
5202         (process_event_stop_test, keep_going_stepped_thread)
5203         (handle_step_into_function, handle_step_into_function_backward)
5204         (print_stop_location): Replace references to stop_pc with
5205         references to thread_info->suspend.stop_pc.
5206         (struct infcall_suspend_state) <stop_pc>: Delete field.
5207         (save_infcall_suspend_state, restore_infcall_suspend_state):
5208         Remove references to inf_stat->stop_pc.
5209         * linux-fork.c (fork_load_infrun_state): Likewise.
5210         * record-btrace.c (record_btrace_set_replay): Likewise.
5211         * record-full.c (record_full_goto_entry): Likewise.
5212         * remote.c (print_one_stopped_thread): Likewise.
5213         * target.c (target_resume): Extend comment.
5214         * thread.c (set_executing_thread): New.
5215         (set_executing): Use it.
5216         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
5217         Remove references to stop_pc.
5218
5219 2018-06-28  Pedro Alves  <palves@redhat.com>
5220
5221         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
5222         Moving fetching stop_pc until after ecs->event_thread is refreshed.
5223
5224 2018-06-28  Tom Tromey  <tom@tromey.com>
5225
5226         * coffread.c (coff_symfile_finish): Update.
5227         * xcoffread.c (xcoff_symfile_finish): Update.
5228         * elfread.c (elf_symfile_finish): Update.
5229         * symfile.h (dwarf2_free_objfile): Don't declare.
5230         * dwarf2read.c (_initialize_dwarf2_read): Use
5231         register_objfile_data_with_cleanup.
5232         (dwarf2_free_objfile): Now static.  Change signature.
5233
5234 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5235
5236         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
5237         option "-o" to add-symbol-file-load to add an offset to each
5238         section's load address.
5239         * symfile.c (set_objfile_default_section_offset): New function.
5240
5241 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5242
5243         * symfile.c (add_symbol_file_command): Make sure that sections
5244         with the same name are sorted in the same order.
5245
5246 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5247
5248         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
5249         require the second argument.  If omitted, load sections at the
5250         addresses specified in the file.
5251
5252 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5253
5254         * symfile.c (symbol_file_command, symbol_file_add_main_1)
5255         (_initialize_symfile): Add option "-o" to symbol-file to add an
5256         offset to each section of the symbol file.
5257
5258 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5259
5260         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
5261
5262 2018-06-27  Tom Tromey  <tom@tromey.com>
5263
5264         * stack.c (_initialize_stack): Update "func" help text.
5265
5266 2018-06-27  Tom Tromey  <tom@tromey.com>
5267
5268         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
5269         std::vector.
5270         (unwind_infopy_str, pyuw_create_unwind_info)
5271         (unwind_infopy_add_saved_register, pyuw_sniffer)
5272         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
5273         Update.
5274         (struct saved_reg): Add constructor.
5275         <value>: Now a gdbpy_ref<>.
5276
5277 2018-06-27  Tom Tromey  <tom@tromey.com>
5278
5279         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
5280
5281 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5282
5283         * gdb-gdb.py.in: Format using autopep8.
5284
5285 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5286
5287         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
5288         (type_lookup_function): Recognize CORE_ADDR values.
5289
5290 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5291
5292         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
5293         print tag_name.
5294
5295 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5296
5297         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
5298         <__lt__>: Add.
5299
5300 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5301
5302         * gdb-gdb.py: Move to...
5303         * gdb-gdb.py.in: ... here.
5304         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
5305         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
5306         dependencies.
5307         (distclean): Remove gdb-gdb.py when cleaning.
5308         (gdb-gdb.py, gdb-gdb.gdb): New rules.
5309         * configure: Re-generate.
5310
5311 2018-06-27  Pedro Alves  <palves@redhat.com>
5312
5313         * proc-service.c (get_ps_regcache): New.
5314         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
5315         (ps_lsetfpregs): Use it.
5316
5317 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
5318
5319         PR gdb/21695
5320         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
5321         (dwarf_decode_lines_1): Adjust.
5322
5323 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5324
5325         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
5326         override.
5327         <info_proc>: Likewise.
5328
5329 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
5330
5331         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
5332         to windows_fetch_one_register, and only handle the case of
5333         fetching one register.  Move the code that reloads the context
5334         and iterates over all registers if R is negative to...
5335         (windows_nat_target::fetch_registers): ... here.
5336         (do_windows_store_inferior_registers): Rename to
5337         windows_store_one_register, and only handle the case of storing
5338         one register.  Move the code that handles the case where r is
5339         negative to...
5340         (windows_nat_target::store_registers) ... here.
5341
5342 2018-06-26  Tom Tromey  <tom@tromey.com>
5343
5344         PR rust/22574:
5345         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
5346         * rust-lang.c (rust_print_struct_def): Add podata parameter.
5347         Update.
5348         (rust_internal_print_type): Add podata parameter.
5349         (rust_print_type): Update.
5350
5351 2018-06-26  Tom Tromey  <tom@tromey.com>
5352
5353         * typeprint.h (struct print_offset_data) <update, finish,
5354         maybe_print_hole>: New methods.
5355         <indentation>: New constant.
5356         * typeprint.c (print_offset_data::indentation): Define.
5357         (print_offset_data::maybe_print_hole, print_offset_data::update)
5358         (print_offset_data::finish): Move from c-typeprint.c and rename.
5359         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
5360         (print_spaces_filtered_with_print_options): Update.
5361         (c_print_type_union_field_offset, maybe_print_hole)
5362         (c_print_type_struct_field_offset): Move to typeprint.c and
5363         rename.
5364         (c_type_print_base_struct_union): Update.
5365
5366 2018-06-25  Pedro Alves  <palves@redhat.com>
5367
5368         * gdbthread.h (thread_info_ref, delete_thread)
5369         (delete_thread_silent, first_thread_of_inferior)
5370         (any_thread_of_inferior, switch_to_thread)
5371         (enable_thread_stack_temporaries)
5372         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5373         (get_last_thread_stack_temporary)
5374         (value_in_thread_stack_temporaries, can_access_registers_thread):
5375         Spell out "struct thread_info" instead of just "thread_info".
5376         * inferior.h (notice_new_inferior): Likewise.
5377
5378 2018-06-25  Pedro Alves  <palves@redhat.com>
5379
5380         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5381         pass thread_info pointer to delete_thread.
5382         (windows_nat_target::detach): Pass inferior pointer to
5383         detach_inferior.
5384         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
5385         delete_thread.
5386         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
5387         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
5388         and pass a thread_info pointer to delete_thread.
5389         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
5390         pass thread_info pointer to delete_thread.
5391         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
5392         delete_thread_silent call.
5393         * procfs.c (procfs_target::detach): Pass inferior pointer to
5394         detach_inferior.
5395         (procfs_target::wait): Pass thread_info pointer to delete_thread.
5396         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
5397         delete_thread_silent call.
5398         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5399         pass thread_info pointer to delete_thread.
5400         (windows_nat_target::detach): Pass inferior pointer to
5401         delete_inferior.
5402
5403 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5404
5405         * regcache.c (readable_regcache::read_part): Fix asserts.
5406         (reg_buffer::raw_collect_part): New function.
5407         (regcache::write_part): Fix asserts.
5408         (reg_buffer::raw_supply_part): New function.
5409         (regcache::transfer_regset_register): New helper function.
5410         (regcache::transfer_regset): Call new functions.
5411         (regcache_supply_regset): Use gdb_byte*.
5412         (regcache::supply_regset): Likewise.
5413         (regcache_collect_regset): Likewise.
5414         (regcache::collect_regset): Likewise.
5415         * regcache.h (reg_buffer::raw_collect_part): New declaration.
5416         (reg_buffer::raw_supply_part): Likewise.
5417         (regcache::transfer_regset_register): Likewise.
5418         (regcache::transfer_regset): Use gdb_byte*.
5419
5420 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5421
5422         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
5423
5424 2018-06-21  Pedro Alves  <palves@redhat.com>
5425
5426         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
5427         instead of a ptid_t.  All callers adjusted.
5428         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
5429         adjusted.
5430         (print_ada_task_info, display_current_task_id, task_command_1):
5431         Adjust.
5432         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
5433         inferior_thread.
5434         (breakpoint_kind): Adjust.
5435         (remove_breakpoints_pid): Rename to ...
5436         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
5437         pointer.  All callers adjusted.
5438         (bpstat_clear_actions): Use inferior_thread.
5439         (get_bpstat_thread): New.
5440         (bpstat_do_actions): Use it.
5441         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
5442         to take a thread_info pointer.  All callers adjusted.
5443         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
5444         (breakpoint_re_set_thread): Use inferior_thread.
5445         * breakpoint.h (struct inferior): Forward declare.
5446         (bpstat_stop_status): Update.
5447         (remove_breakpoints_pid): Delete.
5448         (remove_breakpoints_inf): New.
5449         * bsd-uthread.c (bsd_uthread_target::wait)
5450         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
5451         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
5452         (maint_btrace_packet_history_cmd)
5453         (maint_btrace_clear_packet_history_cmd): Adjust.
5454         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
5455         inferior_thread.
5456         * cli/cli-interp.c: Include "inferior.h".
5457         * common/refcounted-object.h (struct
5458         refcounted_object_ref_policy): New.
5459         * compile/compile-object-load.c: Include gdbthread.h.
5460         (store_regs): Use inferior_thread.
5461         * corelow.c (core_target::close): Use current_inferior.
5462         (core_target_open): Adjust to use first_thread_of_inferior and use
5463         the current inferior.
5464         * ctf.c (ctf_target::close): Adjust to use current_inferior.
5465         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
5466         <thread>: ... this new field.  All references adjusted.
5467         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
5468         Take a thread_info pointer instead of a ptid_t.
5469         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
5470         (dummy_frame_discard, register_dummy_frame_dtor): Take a
5471         thread_info pointer instead of a ptid_t.
5472         * elfread.c: Include "inferior.h".
5473         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
5474         Use inferior_thread.
5475         * eval.c (evaluate_subexp): Likewise.
5476         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
5477         inferior_thread.
5478         * gdb_proc_service.h (struct thread_info): Forward declare.
5479         (struct ps_prochandle) <ptid>: Delete, replaced by ...
5480         <thread>: ... this new field.  All references adjusted.
5481         * gdbarch.h, gdbarch.c: Regenerate.
5482         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
5483         'thread' parameter.  All implementations and callers adjusted.
5484         * gdbthread.h (thread_info) <set_running>: New method.
5485         (delete_thread, delete_thread_silent): Take a thread_info pointer
5486         instead of a ptid.
5487         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
5488         (first_thread_of_process): Delete, replaced by ...
5489         (first_thread_of_inferior): ... this new function.  All callers
5490         adjusted.
5491         (any_live_thread_of_process): Delete, replaced by ...
5492         (any_live_thread_of_inferior): ... this new function.  All callers
5493         adjusted.
5494         (switch_to_thread, switch_to_no_thread): Declare.
5495         (is_executing): Delete.
5496         (enable_thread_stack_temporaries): Update comment.
5497         <enable_thread_stack_temporaries>: Take a thread_info pointer
5498         instead of a ptid_t.  Incref the thread.
5499         <~enable_thread_stack_temporaries>: Decref the thread.
5500         <m_ptid>: Delete
5501         <m_thr>: New.
5502         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5503         (get_last_thread_stack_temporary)
5504         (value_in_thread_stack_temporaries, can_access_registers_thread):
5505         Take a thread_info pointer instead of a ptid_t.  All callers
5506         adjusted.
5507         * infcall.c (get_call_return_value): Use inferior_thread.
5508         (run_inferior_call): Work with thread pointers instead of ptid_t.
5509         (call_function_by_hand_dummy): Work with thread pointers instead
5510         of ptid_t.  Use thread_info_ref.
5511         * infcmd.c (proceed_thread_callback): Access thread's state
5512         directly.
5513         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
5514         access thread's state directly.
5515         (continue_command): Use inferior_thread.
5516         (info_program_command): Use find_thread_ptid and access thread
5517         state directly.
5518         (proceed_after_attach_callback): Use thread state directly.
5519         (notice_new_inferior): Take a thread_info pointer instead of a
5520         ptid_t.  All callers adjusted.
5521         (exit_inferior): Take an inferior pointer instead of a pid.  All
5522         callers adjusted.
5523         (exit_inferior_silent): New.
5524         (detach_inferior): Delete.
5525         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
5526         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
5527         (detach_inferior_command, kill_inferior_command): Use
5528         find_inferior_id instead of valid_gdb_inferior_id and
5529         gdb_inferior_id_to_pid.
5530         (inferior_command): Use inferior and thread pointers.
5531         * inferior.h (struct thread_info): Forward declare.
5532         (notice_new_inferior): Take a thread_info pointer instead of a
5533         ptid_t.  All callers adjusted.
5534         (detach_inferior): Delete declaration.
5535         (exit_inferior, exit_inferior_silent): Take an inferior pointer
5536         instead of a pid.  All callers adjusted.
5537         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
5538         (valid_gdb_inferior_id): Delete.
5539         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
5540         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
5541         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
5542         ...
5543         <inf>: ... this new field.
5544         <step_ptid>: Delete, replaced by ...
5545         <step_thread>: ... this new field.
5546         (get_displaced_stepping_state): Take an inferior pointer instead
5547         of a pid.  All callers adjusted.
5548         (displaced_step_in_progress_any_inferior): Adjust.
5549         (displaced_step_in_progress_thread): Take a thread pointer instead
5550         of a ptid_t.  All callers adjusted.
5551         (displaced_step_in_progress, add_displaced_stepping_state): Take
5552         an inferior pointer instead of a pid.  All callers adjusted.
5553         (get_displaced_step_closure_by_addr): Adjust.
5554         (remove_displaced_stepping_state): Take an inferior pointer
5555         instead of a pid.  All callers adjusted.
5556         (displaced_step_prepare_throw, displaced_step_prepare)
5557         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
5558         All callers adjusted.
5559         (start_step_over): Adjust.
5560         (infrun_thread_ptid_changed): Remove bit updating ptids in the
5561         displaced step queue.
5562         (do_target_resume): Adjust.
5563         (fetch_inferior_event): Use inferior_thread.
5564         (context_switch, get_inferior_stop_soon): Take an
5565         execution_control_state pointer instead of a ptid_t.  All callers
5566         adjusted.
5567         (switch_to_thread_cleanup): Delete.
5568         (stop_all_threads): Use scoped_restore_current_thread.
5569         * inline-frame.c: Include "gdbthread.h".
5570         (inline_state) <inline_state>: Take a thread pointer instead of a
5571         ptid_t.  All callers adjusted.
5572         <ptid>: Delete, replaced by ...
5573         <thread>: ... this new field.
5574         (find_inline_frame_state): Take a thread pointer instead of a
5575         ptid_t.  All callers adjusted.
5576         (skip_inline_frames, step_into_inline_frame)
5577         (inline_skipped_frames, inline_skipped_symbol): Take a thread
5578         pointer instead of a ptid_t.  All callers adjusted.
5579         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
5580         (inline_skipped_frames, inline_skipped_symbol): Likewise.
5581         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
5582         pointers directly.
5583         * linux-nat.c (get_detach_signal): Likewise.
5584         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
5585         (thread_db_notice_clone): Adjust.
5586         (thread_db_find_new_threads_silently)
5587         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
5588         a thread pointer instead of a ptid_t.  All callers adjusted.
5589         * mi/mi-cmd-var.c: Include "inferior.h".
5590         (mi_cmd_var_update_iter): Update to use thread pointers.
5591         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
5592         inferior directly.
5593         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
5594         out to ...
5595         (mi_output_running): ... this new function.
5596         (mi_on_resume_1): Adjust to use it.
5597         (mi_user_selected_context_changed): Adjust to use inferior_thread.
5598         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
5599         directly.
5600         (interrupt_thread_callback): : Adjust to use thread and inferior
5601         pointers.
5602         * proc-service.c: Include "gdbthread.h".
5603         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
5604         * progspace-and-thread.c: Include "inferior.h".
5605         * progspace.c: Include "inferior.h".
5606         * python/py-exitedevent.c (create_exited_event_object): Adjust to
5607         hold a reference to an inferior_object.
5608         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
5609         inferior_thread.
5610         * python/py-inferior.c (struct inferior_object): Give the type a
5611         tag name instead of a typedef.
5612         (python_on_normal_stop): No need to check if the current thread is
5613         listed.
5614         (inferior_to_inferior_object): Change return type to
5615         inferior_object.  All callers adjusted.
5616         (find_thread_object): Delete, bits factored out to ...
5617         (thread_to_thread_object): ... this new function.
5618         * python/py-infthread.c (create_thread_object): Use
5619         inferior_to_inferior_object.
5620         (thpy_is_stopped): Use thread pointer directly.
5621         (gdbpy_selected_thread): Use inferior_thread.
5622         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
5623         field, replaced with ...
5624         <thread>: ... this new field.  All users adjusted.
5625         (btpy_insn_or_gap_new): Drop const.
5626         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
5627         callers adjusted.
5628         * python/py-record.c: Include "gdbthread.h".
5629         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5630         a ptid_t.  All callers adjusted.
5631         (gdbpy_current_recording): Use inferior_thread.
5632         * python/py-record.h (recpy_record_object) <ptid>: Delete
5633         field, replaced with ...
5634         <thread>: ... this new field.  All users adjusted.
5635         (recpy_element_object) <ptid>: Delete
5636         field, replaced with ...
5637         <thread>: ... this new field.  All users adjusted.
5638         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5639         a ptid_t.  All callers adjusted.
5640         * python/py-threadevent.c: Include "gdbthread.h".
5641         (get_event_thread): Use thread_to_thread_object.
5642         * python/python-internal.h (struct inferior_object): Forward
5643         declare.
5644         (find_thread_object, find_inferior_object): Delete declarations.
5645         (thread_to_thread_object, inferior_to_inferior_object): New
5646         declarations.
5647         * record-btrace.c: Include "inferior.h".
5648         (require_btrace_thread): Use inferior_thread.
5649         (record_btrace_frame_sniffer)
5650         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
5651         (get_thread_current_frame): Use scoped_restore_current_thread and
5652         switch_to_thread.
5653         (get_thread_current_frame): Use thread pointer directly.
5654         (record_btrace_replay_at_breakpoint): Use thread's inferior
5655         pointer directly.
5656         * record-full.c: Include "inferior.h".
5657         * regcache.c: Include "gdbthread.h".
5658         (get_thread_arch_regcache): Use the inferior's address space
5659         directly.
5660         (get_thread_regcache, registers_changed_thread): New.
5661         * regcache.h (get_thread_regcache(thread_info *thread)): New
5662         overload.
5663         (registers_changed_thread): New.
5664         (remote_target) <remote_detach_1>: Swap order of parameters.
5665         (remote_add_thread): <remote_add_thread>: Return the new thread.
5666         (get_remote_thread_info(ptid_t)): New overload.
5667         (remote_target::remote_notice_new_inferior): Use thread pointers
5668         directly.
5669         (remote_target::process_initial_stop_replies): Use
5670         thread_info::set_running.
5671         (remote_target::remote_detach_1, remote_target::detach)
5672         (extended_remote_target::detach): Adjust.
5673         * stack.c (frame_show_address): Use inferior_thread.
5674         * target-debug.h (target_debug_print_thread_info_pp): New.
5675         * target-delegates.c: Regenerate.
5676         * target.c (default_thread_address_space): Delete.
5677         (memory_xfer_partial_1): Use current_inferior.
5678         (target_detach): Use current_inferior.
5679         (target_thread_address_space): Delete.
5680         (generic_mourn_inferior): Use current_inferior.
5681         * target.h (struct target_ops) <thread_address_space>: Delete.
5682         (target_thread_address_space): Delete.
5683         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
5684         pointers directly.
5685         (delete_thread_1, delete_thread, delete_thread_silent): Take a
5686         thread pointer instead of a ptid_t.  Adjust all callers.
5687         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
5688         (first_thread_of_process): Delete, replaced by ...
5689         (first_thread_of_inferior): ... this new function.  All callers
5690         adjusted.
5691         (any_thread_of_process): Rename to ...
5692         (any_thread_of_inferior): ... this, and take an inferior pointer.
5693         (any_live_thread_of_process): Rename to ...
5694         (any_live_thread_of_inferior): ... this, and take an inferior
5695         pointer.
5696         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5697         (value_in_thread_stack_temporaries)
5698         (get_last_thread_stack_temporary): Take a thread pointer instead
5699         of a ptid_t.  Adjust all callers.
5700         (thread_info::set_running): New.
5701         (validate_registers_access): Use inferior_thread.
5702         (can_access_registers_ptid): Rename to ...
5703         (can_access_registers_thread): ... this, and take a thread
5704         pointer.
5705         (print_thread_info_1): Adjust to compare thread pointers instead
5706         of ptids.
5707         (switch_to_no_thread, switch_to_thread): Make extern.
5708         (scoped_restore_current_thread::~scoped_restore_current_thread):
5709         Use m_thread pointer directly.
5710         (scoped_restore_current_thread::scoped_restore_current_thread):
5711         Use inferior_thread.
5712         (thread_command): Use thread pointer directly.
5713         (thread_num_make_value_helper): Use inferior_thread.
5714         * top.c (execute_command): Use inferior_thread.
5715         * tui/tui-interp.c: Include "inferior.h".
5716         * varobj.c (varobj_create): Use inferior_thread.
5717         (value_of_root_1): Use find_thread_global_id instead of
5718         global_thread_id_to_ptid.
5719
5720 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
5721
5722         * regcache.c (readable_regcache::read_part): Avoid memcpy when
5723         possible.
5724         (regcache::write_part): Likewise.
5725         (readable_regcache::cooked_read_part): Update comment.
5726         (readable_regcache::cooked_write_part): Likewise.
5727         * regcache.h: (readable_regcache::read_part): Likewise.
5728         (regcache::write_part): Likewise.
5729
5730 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
5731             Dirk Schubert  <dirk.schubert@arm.com>
5732
5733         * aarch64-linux-nat.c (post_attach): New.
5734         (aarch64_linux_nat_target::post_attach): Override post_attach to
5735         record the number of hardware debug registers.
5736
5737 2018-06-20  Tom Tromey  <tom@tromey.com>
5738
5739         * python/py-param.c (add_setshow_generic): Make parameters const.
5740         (parmpy_init): Update.
5741
5742 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
5743
5744         * regcache.h (regcache_cooked_read_ftype): Rename to...
5745         (register_read_ftype): ...this, change type to function_view.
5746         (class reg_buffer) <save>: Remove src parameter.
5747         (readonly_detached_regcache) <readonly_detached_regcache>: Make
5748         parameter non-const in first overload.  Remove src parameter in
5749         second overload.
5750         * regcache.c (do_cooked_read): Remove.
5751         (readonly_detached_regcache::readonly_detached_regcache): Make
5752         parameter non-const, adjust call to other constructor.
5753         (reg_buffer::save): Remove src parameter.
5754         * frame.c (do_frame_register_read): Remove.
5755         (frame_save_as_regcache): Use lambda function.
5756         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
5757         parameter to ppu2spu_data *.
5758         (ppu2spu_sniffer): Use lambda function.
5759
5760 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
5761
5762         * record-full.c (record_full_target::insert_breakpoint): Remove
5763         "struct" keyword, add const.
5764
5765 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
5766
5767         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
5768         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
5769         * configure.ac: Remove AC_PREREQ, add missing quoting.
5770         * gnulib/configure.ac: Modernize usage of
5771         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
5772         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
5773         (AUTOMAKE_VERSION): Bump to 1.15.1.
5774         * configure: Re-generate.
5775         * config.in: Re-generate.
5776         * aclocal.m4: Re-generate.
5777         * gnulib/aclocal.m4: Re-generate.
5778         * gnulib/config.in: Re-generate.
5779         * gnulib/configure: Re-generate.
5780         * gnulib/import/Makefile.in: Re-generate.
5781
5782 2018-06-19  Pedro Alves  <palves@redhat.com>
5783
5784         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
5785         (lookup_minimal_symbol_by_pc_section): ... here with
5786         gdb_assert_not_reached added.
5787
5788 2018-06-19  Pedro Alves  <palves@redhat.com>
5789
5790         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
5791         parameter with a block parameter.  Compare location's block symbol
5792         with the frame's block instead of addresses.
5793         (skip_inline_frames): Pass the current block instead of the
5794         frame's address.  Break out as soon as we determine the frame
5795         should not be skipped.
5796
5797 2018-06-18  Tom Tromey  <tom@tromey.com>
5798
5799         * solib-aix.c (solib_aix_get_section_offsets): Return
5800         unique_xmalloc_ptr.
5801         (solib_aix_solib_create_inferior_hook): Update.
5802
5803 2018-06-18  Tom Tromey  <tom@tromey.com>
5804
5805         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
5806
5807 2018-06-18  Tom Tromey  <tom@tromey.com>
5808
5809         * solib-frv.c (frv_relocate_main_executable): Use
5810         unique_xmalloc_ptr.
5811         * solib-dsbt.c (dsbt_relocate_main_executable): Use
5812         unique_xmalloc_ptr.
5813
5814 2018-06-18  Tom Tromey  <tom@tromey.com>
5815
5816         * objfiles.h (inhibit_section_map_updates): Update.
5817         (resume_section_map_updates, resume_section_map_updates_cleanup):
5818         Remove.
5819         * solib-svr4.c (svr4_handle_solib_event): Update.
5820         * objfiles.c (inhibit_section_map_updates): Return
5821         scoped_restore_tmpl<int>.
5822         (resume_section_map_updates, resume_section_map_updates_cleanup):
5823         Remove.
5824
5825 2018-06-18  Tom Tromey  <tom@tromey.com>
5826
5827         * valprint.h (read_string): Update.
5828         * valprint.c (read_string): Change type of "buffer".
5829         (val_print_string): Update.
5830         * python/py-value.c (valpy_string): Update.
5831         * language.h (struct language_defn) <la_get_string>: Change
5832         type of "buffer".
5833         (default_get_string, c_get_string): Update.
5834         * language.c (default_get_string): Change type of "buffer".
5835         * guile/scm-value.c (gdbscm_value_to_string): Update.
5836         * c-lang.c (c_get_string): Change type of "buffer".
5837
5838 2018-06-18  Tom Tromey  <tom@tromey.com>
5839
5840         * ser-mingw.c (struct pipe_state_destroyer): New.
5841         (pipe_state_up): New typedef.
5842         (cleanup_pipe_state): Remove.
5843         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
5844
5845 2018-06-18  Tom Tromey  <tom@tromey.com>
5846
5847         * rust-lang.h (rust_yyerror): Don't declare.
5848         * rust-lang.c (rust_language_defn): Update.
5849         * rust-exp.y (yyerror): Now static.
5850         * parse.c (parse_exp_in_context_1): Update.
5851         * p-lang.h (p_yyerror): Don't declare.
5852         * p-lang.c (p_language_defn): Update.
5853         * p-exp.y (yyerror): Now static.
5854         * opencl-lang.c (opencl_language_defn): Update.
5855         * objc-lang.c (objc_language_defn): Update.
5856         * m2-lang.h (m2_yyerror): Don't declare.
5857         * m2-lang.c (m2_language_defn): Update.
5858         * m2-exp.y (yyerror): Now static.
5859         * language.h (struct language_defn) <la_error>: Remove.
5860         * language.c (unk_lang_error): Remove.
5861         (unknown_language_defn, auto_language_defn): Remove.
5862         * go-lang.h (go_yyerror): Don't declare.
5863         * go-lang.c (go_language_defn): Update.
5864         * go-exp.y (yyerror): Now static.
5865         * f-lang.h (f_yyerror): Don't declare.
5866         * f-lang.c (f_language_defn): Update.
5867         * f-exp.y (yyerror): Now static.
5868         * d-lang.h (d_yyerror): Don't declare.
5869         * d-lang.c (d_language_defn): Update.
5870         * d-exp.y (yyerror): Now static.
5871         * c-lang.h (c_yyerror): Don't declare.
5872         * c-lang.c (c_language_defn, cplus_language_defn)
5873         (asm_language_defn, minimal_language_defn): Update.
5874         * c-exp.y (yyerror): Now static.
5875         * ada-lang.h (ada_yyerror): Don't declare.
5876         * ada-lang.c (ada_language_defn): Update.
5877         * ada-exp.y (yyerror): Now static.
5878
5879 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
5880
5881         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
5882         (store_sveregs_to_thread): Likewise.
5883         (aarch64_linux_fetch_inferior_registers): Check for SVE.
5884         (aarch64_linux_store_inferior_registers): Likewise.
5885         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
5886         function.
5887         (aarch64_sve_regs_copy_to_regcache): Likewise.
5888         (aarch64_sve_regs_copy_from_regcache): Likewise.
5889         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
5890         declaration.
5891         (aarch64_sve_regs_copy_to_regcache): Likewise.
5892         (aarch64_sve_regs_copy_from_regcache): Likewise.
5893         (sve_context): Structure from Linux headers.
5894         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
5895         (SVE_SIG_ZREG_SIZE): Likewise.
5896         (SVE_SIG_PREG_SIZE): Likewise.
5897         (SVE_SIG_FFR_SIZE): Likewise.
5898         (SVE_SIG_REGS_OFFSET): Likewise.
5899         (SVE_SIG_ZREGS_OFFSET): Likewise.
5900         (SVE_SIG_ZREG_OFFSET): Likewise.
5901         (SVE_SIG_ZREGS_SIZE): Likewise.
5902         (SVE_SIG_PREGS_OFFSET): Likewise.
5903         (SVE_SIG_PREG_OFFSET): Likewise.
5904         (SVE_SIG_PREGS_SIZE): Likewise.
5905         (SVE_SIG_FFR_OFFSET): Likewise.
5906         (SVE_SIG_REGS_SIZE): Likewise.
5907         (SVE_SIG_CONTEXT_SIZE): Likewise.
5908         (SVE_PT_REGS_MASK): Likewise.
5909         (SVE_PT_REGS_FPSIMD): Likewise.
5910         (SVE_PT_REGS_SVE): Likewise.
5911         (SVE_PT_VL_INHERIT): Likewise.
5912         (SVE_PT_VL_ONEXEC): Likewise.
5913         (SVE_PT_REGS_OFFSET): Likewise.
5914         (SVE_PT_FPSIMD_OFFSET): Likewise.
5915         (SVE_PT_FPSIMD_SIZE): Likewise.
5916         (SVE_PT_SVE_ZREG_SIZE): Likewise.
5917         (SVE_PT_SVE_PREG_SIZE): Likewise.
5918         (SVE_PT_SVE_FFR_SIZE): Likewise.
5919         (SVE_PT_SVE_FPSR_SIZE): Likewise.
5920         (SVE_PT_SVE_FPCR_SIZE): Likewise.
5921         (__SVE_SIG_TO_PT): Likewise.
5922         (SVE_PT_SVE_OFFSET): Likewise.
5923         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
5924         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
5925         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
5926         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
5927         (SVE_PT_SVE_PREG_OFFSET): Likewise.
5928         (SVE_PT_SVE_PREGS_SIZE): Likewise.
5929         (SVE_PT_SVE_FFR_OFFSET): Likewise.
5930         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
5931         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
5932         (SVE_PT_SVE_SIZE): Likewise.
5933         (SVE_PT_SIZE): Likewise.
5934         (HAS_SVE_STATE): New define.
5935
5936 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
5937
5938         * nat/aarch64-sve-linux-sigcontext.h: New file.
5939         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
5940         new files.
5941         (SVE_VQ_MIN): Likewise.
5942         (SVE_VQ_MAX): Likewise.
5943         (SVE_VL_MIN): Likewise.
5944         (SVE_VL_MAX): Likewise.
5945         (SVE_NUM_ZREGS): Likewise.
5946         (SVE_NUM_PREGS): Likewise.
5947         (sve_vl_valid): Likewise.
5948         (struct user_sve_header): Likewise.
5949
5950 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
5951             Richard Bunt <Richard.Bunt@arm.com>
5952
5953         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
5954         was requested by GDB.
5955
5956 2018-06-15  Tom de Vries  <tdevries@suse.de>
5957
5958         * MAINTAINERS (Write After Approval): Add Tom de Vries.
5959
5960 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
5961
5962         * gnulib/update-gnulib.sh: Print expected versions of
5963         autoconf/aclocal.
5964
5965 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
5966
5967         * arch-utils.c (default_type_align): Use type_length_units.
5968         * gdbtypes.c (type_align): Use type_length_units.
5969
5970 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5971
5972         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
5973         of 'define' command.
5974
5975 2018-06-14  Tom de Vries  <tdevries@suse.de>
5976
5977         PR cli/22573
5978         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
5979         get_no_prettyformat_print_options.
5980
5981 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
5982
5983         * sparc-nat.h: Include target.h.
5984         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
5985         <fetch_registers>: Remove this argument in function call.
5986         <store_registers>: Remove this argument in function call, remove
5987         extra semicolon.
5988         <low_forget_process>: Call sparc64_forget_process instead of
5989         sparc_forget_process.
5990
5991 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5992
5993         * procfs.c (_initialize_procfs): Use add_inf_child_target.
5994         (procfs_target::make_corefile_notes): Adjust to new
5995         target_read_alloc return type.
5996
5997 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
5998             Stephen Roberts  <stephen.roberts@arm.com>
5999
6000         PR gdb/22882
6001         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
6002         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
6003         Move should_notify_stop local into more inner scope.
6004
6005 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6006             Stephen Roberts  <stephen.roberts@arm.com>
6007
6008         PR gdb/22882
6009         * infrun.c (resume_1): Add call to mark_async_event_handler.
6010
6011 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6012
6013         * infrun.c (do_target_wait): Change old version of $pc printed.
6014
6015 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
6016
6017         * dwarf2read.c (read_index_from_section): Rename to...
6018         (read_gdb_index_from_section): ... this, update all callers.
6019         (dwarf2_read_index): Rename to...
6020         (dwarf2_read_gdb_index): ... this, update all callers.
6021
6022 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
6023
6024         * gdb/hppa-linux-nat.c
6025         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
6026         hppa_linux_nat_target::fetch_registers.
6027
6028 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6029
6030         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
6031         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
6032         (AARCH64_DWARF_SVE_FFR): Likewise.
6033         (AARCH64_DWARF_SVE_P0): Likewise.
6034         (AARCH64_DWARF_SVE_Z0): Likewise.
6035
6036 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6037
6038         * common/common-regcache.h (raw_compare): New function.
6039         * regcache.c (regcache::raw_compare): Likewise.
6040         * regcache.h (regcache::raw_compare): New declaration.
6041
6042 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6043
6044         * common/common-regcache.h (reg_buffer_common): New structure.
6045         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
6046         (reg_buffer::raw_supply): Likewise.
6047         (reg_buffer::raw_supply_integer): Likewise.
6048         (reg_buffer::raw_supply_zeroed): Likewise.
6049         (reg_buffer::raw_collect): Likewise.
6050         (reg_buffer::raw_collect_integer): Likewise.
6051         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
6052         (reg_buffer::raw_supply): Likewise.
6053         (reg_buffer::raw_supply_integer): Likewise.
6054         (reg_buffer::raw_supply_zeroed): Likewise.
6055         (reg_buffer::raw_collect): Likewise.
6056         (reg_buffer::raw_collect_integer): Likewise.
6057
6058 2018-06-10  Tom Tromey  <tom@tromey.com>
6059
6060         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
6061         (class remote_state) <stop_reply_queue>: Now std::vector.
6062         (remote_state::~remote_state)
6063         (remote_target::stop_reply_queue_length): Update.
6064         (struct queue_iter_param, remove_child_of_pending_fork)
6065         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
6066         (check_pending_event_prevents_wildcard_vcont_callback)
6067         (remove_stop_reply_for_inferior)
6068         (remove_stop_reply_of_remote_state)
6069         (remote_notif_remove_once_on_match)
6070         (stop_reply_match_ptid_and_ws)
6071         (remote_kill_child_of_pending_fork): Remove.
6072         (remote_target::remove_new_fork_children)
6073         (remote_target::check_pending_events_prevent_wildcard_vcont)
6074         (remote_target::discard_pending_stop_replies)
6075         (remote_target::discard_pending_stop_replies_in_queue)
6076         (remote_target::remote_notif_remove_queued_reply)
6077         (remote_target::queued_stop_reply)
6078         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
6079         (remote_target::wait, remote_target::kill_new_fork_children)
6080         (remote_target::async): Update.
6081
6082 2018-06-10  Tom Tromey  <tom@tromey.com>
6083
6084         * record-full.c (record_full_arch_list_cleanups): Remove.
6085         (record_full_message): Use try/catch.
6086         (record_full_wait_cleanups): Remove.
6087         (record_full_wait_1): Use try/catch.
6088         (record_full_restore): Likewise.
6089
6090 2018-06-10  Tom Tromey  <tom@tromey.com>
6091
6092         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
6093         declare VEC.  Add constructor.
6094         <in_target_beneath>: Now bool.
6095         (record_full_breakpoints): Now a std::vector, static.
6096         (record_full_sync_record_breakpoints)
6097         (record_full_init_record_breakpoints)
6098         (record_full_target::insert_breakpoint)
6099         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
6100
6101 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
6102
6103         * dwarf2read.c (process_cu_includes): Remove struct keyword.
6104         * serial.c (serial_interface_lookup): Remove struct keyword.
6105
6106 2018-06-10  Tom Tromey  <tom@tromey.com>
6107
6108         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
6109         method.
6110         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
6111         a method.
6112         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
6113         method.
6114         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
6115         "beneath" as a method.
6116         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
6117         Use "beneath" as a method.
6118
6119 2018-06-10  Tom Tromey  <tom@tromey.com>
6120
6121         * tracefile.c (struct trace_file_writer_deleter): New.
6122         <operator()>: Rename from trace_file_writer_xfree.
6123         (trace_file_writer_up): New typedef.
6124         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
6125
6126 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6127
6128         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
6129         <m_registers, m_register_status>: Change type to
6130         std::unique_ptr.
6131         * regcache.c (reg_buffer::reg_buffer): Use new instead of
6132         XCNEWVEC.
6133
6134 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6135
6136         * common/common-regcache.h (enum register_status): Add
6137         underlying type "signed char".
6138         * regcache.h (reg_buffer) <m_register_status>: Change type to
6139         register_status *.
6140         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
6141         register_status instead of signed char.
6142         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
6143         (reg_buffer::get_register_status): Remove cast.
6144         (readable_regcache::raw_read): Remove cast.
6145         (readable_regcache::cooked_read): Remove cast.
6146
6147 2018-06-09  Tom Tromey  <tom@tromey.com>
6148
6149         * source.c (reverse_search_command, forward_search_command): Use
6150         scoped_fd.
6151
6152 2018-06-09  Tom Tromey  <tom@tromey.com>
6153
6154         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
6155         (serial_ops_list): Now static, std::vector.
6156         (serial_interface_lookup, serial_add_interface): Update.
6157
6158 2018-06-09  Tom Tromey  <tom@tromey.com>
6159
6160         * dwarf2read.c (process_cu_includes): Update.
6161         (process_full_comp_unit): Update.
6162         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
6163         std::vector.
6164
6165 2018-06-08  Paul Koning  <paul_koning@dell.com>
6166
6167         PR gdb/23252
6168
6169         * python/python.c (do_start_initialization):
6170         Avoid call to internal Python API.
6171         (init__gdb_module): New function.
6172
6173 2018-06-08  Gary Benson <gbenson@redhat.com>
6174
6175         * linux-thread-db.c (valprint.h): New include.
6176         (struct check_thread_db_info): New structure.
6177         (check_thread_db_on_load, tdb_testinfo): New static globals.
6178         (check_thread_db, check_thread_db_callback): New functions.
6179         (try_thread_db_load_1): Run integrity checks if requested.
6180         (maintenance_check_libthread_db): New function.
6181         (_initialize_thread_db): Register "maint check libthread-db"
6182         and "maint set/show check-libthread-db".
6183         * NEWS: Mention the above new commands.
6184
6185 2018-06-08  Tom Tromey  <tom@tromey.com>
6186
6187         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
6188         now a method.
6189
6190 2018-06-08  Tom Tromey  <tom@tromey.com>
6191
6192         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
6193
6194 2018-06-08  Tom Tromey  <tom@tromey.com>
6195
6196         * common/btrace-common.h (struct btrace_data): Add constructor,
6197         destructor, move assignment operator.
6198         <empty, clear, fini>: New methods.
6199         <format>: Initialize.
6200         (btrace_data_init, btrace_data_fini, btrace_data_clear)
6201         (btrace_data_empty): Don't declare.
6202         * common/btrace-common.c (btrace_data_init): Remove.
6203         (btrace_data::fini): Rename from btrace_data_fini.
6204         (btrace_data::empty): Rename from btrace_data_empty.
6205         (btrace_data::clear): Rename from btrace_data_clear.  Return
6206         bool.
6207         * btrace.h (make_cleanup_btrace_data): Don't declare.
6208         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
6209         (parse_xml_btrace): Update.
6210         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
6211         (maint_btrace_clear_packet_history_cmd): Update.
6212
6213 2018-06-07  Pedro Alves  <palves@redhat.com>
6214
6215         * target.h (target_ops) <beneath>: Now a method.  All references
6216         updated.
6217         (class target_stack): New.
6218         * target.c (g_target_stack): New.
6219         (g_current_top_target): Delete.
6220         (current_top_target): Get the top target out of g_target_stack.
6221         (target_stack::push, target_stack::unpush): New.
6222         (push_target, unpush_target): Reimplement.
6223         (target_is_pushed): Reimplement in terms of g_target_stack.
6224         (target_ops::beneath, target_stack::find_beneath): New.
6225
6226 2018-06-07  Pedro Alves  <palves@redhat.com>
6227
6228         * target.h (find_target_beneath): Delete declaration.
6229         * target.c (find_target_beneath): Delete definition.
6230         * aix-thread.c: All callers of find_target_beneath adjusted to
6231         call target_ops::beneath instead.
6232         * bsd-uthread.c: Likewise.
6233         * linux-thread-db.c: Likewise.
6234         * ravenscar-thread.c: Likewise.
6235         * sol-thread.c: Likewise.
6236         * spu-multiarch.c: Likewise.
6237
6238 2018-06-07  Pedro Alves  <palves@redhat.com>
6239
6240         * target.h (target_ops) <beneath>: Now a method.  All references
6241         updated.
6242         (target_ops) <m_beneath>: New.
6243         * target.c (target_ops::beneath): New.
6244         * corelow.c: Adjust all references to target_ops::beneath.
6245         * linux-thread-db.c: Likewise.
6246         * make-target-delegates: Likewise.
6247         * record-btrace.c: Likewise.
6248         * record-full.c: Likewise.
6249         * remote.c: Likewise.
6250         * target.c: Likewise.
6251         * target-delegates.c: Regenerate.
6252
6253 2018-06-07  Pedro Alves  <palves@redhat.com>
6254
6255         * target.h (target_stack): Delete.
6256         (current_top_target): Declare function.
6257         * target.c (target_stack): Delete.
6258         (g_current_top_target): New.
6259         (current_top_target): New function.
6260         * auxv.c: Use current_top_target instead of target_stack
6261         throughout.
6262         * avr-tdep.c: Likewise.
6263         * breakpoint.c: Likewise.
6264         * corefile.c: Likewise.
6265         * elfread.c: Likewise.
6266         * eval.c: Likewise.
6267         * exceptions.c: Likewise.
6268         * frame.c: Likewise.
6269         * gdbarch-selftests.c: Likewise.
6270         * gnu-v3-abi.c: Likewise.
6271         * ia64-tdep.c: Likewise.
6272         * ia64-vms-tdep.c: Likewise.
6273         * infcall.c: Likewise.
6274         * infcmd.c: Likewise.
6275         * infrun.c: Likewise.
6276         * linespec.c: Likewise.
6277         * linux-tdep.c: Likewise.
6278         * minsyms.c: Likewise.
6279         * ppc-linux-nat.c: Likewise.
6280         * ppc-linux-tdep.c: Likewise.
6281         * procfs.c: Likewise.
6282         * regcache.c: Likewise.
6283         * remote.c: Likewise.
6284         * rs6000-tdep.c: Likewise.
6285         * s390-linux-nat.c: Likewise.
6286         * s390-tdep.c: Likewise.
6287         * solib-aix.c: Likewise.
6288         * solib-darwin.c: Likewise.
6289         * solib-dsbt.c: Likewise.
6290         * solib-spu.c: Likewise.
6291         * solib-svr4.c: Likewise.
6292         * solib-target.c: Likewise.
6293         * sparc-tdep.c: Likewise.
6294         * sparc64-tdep.c: Likewise.
6295         * spu-tdep.c: Likewise.
6296         * symfile.c: Likewise.
6297         * symtab.c: Likewise.
6298         * target-descriptions.c: Likewise.
6299         * target-memory.c: Likewise.
6300         * target.c: Likewise.
6301         * target.h: Likewise.
6302         * tracefile-tfile.c: Likewise.
6303         * tracepoint.c: Likewise.
6304         * valops.c: Likewise.
6305         * valprint.c: Likewise.
6306         * value.c: Likewise.
6307         * windows-tdep.c: Likewise.
6308         * mi/mi-main.c: Likewise.
6309
6310 2018-06-07  Tom Tromey  <tom@tromey.com>
6311
6312         * valprint.h (build_address_symbolic): Declare.
6313         * printcmd.c (print_address_symbolic): Update.
6314         (build_address_symbolic): Change "name" and "filename" to
6315         std::string.
6316         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
6317         Update.
6318         * defs.h (build_address_symbolic): Remove declaration.
6319
6320 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
6321
6322         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
6323         (aarch64_vnv_type): Add function.
6324         (aarch64_pseudo_register_name): Add V regs for SVE.
6325         (aarch64_pseudo_register_type): Likewise.
6326         (aarch64_pseudo_register_reggroup_p): Likewise.
6327         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
6328         (aarch64_pseudo_read_value): Add V regs for SVE.
6329         (aarch64_pseudo_write_2): Use V0 offset for SVE
6330         (aarch64_pseudo_write): Add V regs for SVE.
6331         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
6332
6333 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
6334
6335         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
6336         (sve_vl_from_vq): Likewise.
6337
6338 2018-06-05  Tom Tromey  <tom@tromey.com>
6339
6340         * cli/cli-cmds.c (show_version): Update.
6341         * top.c (print_gdb_version): Add "interactive" parameter.
6342         Update.
6343         * main.c (captured_main_1): Update.
6344         * top.h (print_gdb_version): Add "interactive" parameter and a
6345         comment.
6346
6347 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
6348
6349         * common/enum-flags.h: Add trailing semicolon to example in
6350         comment.
6351
6352 2018-06-05  Tom Tromey  <tom@tromey.com>
6353
6354         PR cli/12326:
6355         * NEWS: Add entry about pager.
6356         * utils.c (pagination_disabled_for_command): New global.
6357         (prompt_for_continue): Allow "c" response to prompt.
6358         (reinitialize_more_filter): Clear
6359         pagination_disabled_for_command.
6360         (fputs_maybe_filtered): Check pagination_disabled_for_command.
6361
6362 2018-06-04  Tom Tromey  <tom@tromey.com>
6363
6364         * ada-lang.h (ada_lookup_symbol_list): Update.
6365         * ada-lang.c (resolve_subexp): Update.
6366         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
6367         parameter.
6368         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
6369         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
6370         results parameter to std::vector.
6371         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
6372         Update.
6373         * ada-exp.y (block_lookup): Update.
6374         (select_possible_type_sym): Change type of syms.  Remove nsyms
6375         parameter.
6376         (write_var_or_type, write_name_assoc): Update.
6377
6378 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
6379
6380         * windows-nat.c (windows_nat_target::xfer_partial): Return
6381         TARGET_XFER_E_IO if we need to delegate to the target beneath
6382         but BENEATH is NULL.
6383
6384 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
6385
6386         * Makefile.in (config.status): Add configure.nat as a
6387         dependency.
6388
6389 2018-06-04  Tom Tromey  <tom@tromey.com>
6390
6391         * cp-name-parser.y (cpname_state): Add method declarations.
6392         (HANDLE_QUAL): Update.
6393         (cpname_state::d_grab, cpname_state::fill_comp)
6394         (cpname_state::make_operator, cpname_state::make_dtor)
6395         (cpname_state::make_builtin_type, cpname_state::make_name)
6396         (cpname_state::d_qualify, cpname_state::d_int_type)
6397         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
6398         (%union): Move earlier.
6399
6400 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6401
6402         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
6403
6404 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6405
6406         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
6407         (aarch64_pseudo_write_1): Likewise.
6408         (aarch64_pseudo_read_value): Use helper.
6409         (aarch64_pseudo_write): Likewise.
6410
6411 2018-06-04  Pedro Alves  <palves@redhat.com>
6412
6413         * darwin-nat.c (darwin_ops): Delete.
6414         (darwin_attach_pid): Use get_native_target.
6415
6416 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6417
6418         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
6419         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
6420
6421 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6422
6423         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
6424         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
6425         (aarch64_gdbarch_init): Check for SVE.
6426         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
6427
6428 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6429
6430         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
6431         * aarch64-tdep.h (aarch64_read_description): Likewise.
6432         * arch/aarch64.c (aarch64_create_target_description): Likewise.
6433         * arch/aarch64.h (aarch64_create_target_description): Likewise.
6434         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
6435         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
6436         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
6437
6438 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
6439
6440         * value.c (value_fetch_lazy_bitfield): New.
6441         (value_fetch_lazy_memory): New.
6442         (value_fetch_lazy_register): New.
6443         (value_fetch_lazy): Factor out to smaller functions.
6444
6445 2018-06-01  Tom Tromey  <tom@tromey.com>
6446
6447         * cp-name-parser.y (backslashable, represented): Now const.
6448
6449 2018-06-01  Tom Tromey  <tom@tromey.com>
6450
6451         * cp-name-parser.y: Include parser-defs.h.
6452         (parser_fprintf): Remove declaration.
6453
6454 2018-06-01  Tom Tromey  <tom@tromey.com>
6455
6456         * cp-name-parser.y: Use %pure-parser, %lex-param, and
6457         %parse-param.
6458         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
6459         (global_result): Remove globals.
6460         (struct cpname_state): New.
6461         (yyparse): Don't declare.
6462         (yylex, yyerror): Move declarations after %union.
6463         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
6464         (make_name): Add state parameter.
6465         Update all callers.
6466         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
6467         parameter.
6468         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
6469         Update.
6470         (yylex): Add lvalp, state parameters.
6471         (yyerror): Add state parameter.
6472         (cp_demangled_name_to_comp): Update.
6473
6474 2018-06-01  Tom Tromey  <tom@tromey.com>
6475
6476         * cp-name-parser.y (parser_fprintf): Declare.
6477         (GDB_YY_REMAP_PREFIX): Define.
6478         Include yy-remap.h.  Don't redefine yy* identifiers.
6479
6480 2018-06-01  Tom Tromey  <tom@tromey.com>
6481
6482         * python/py-type.c (typy_legacy_template_argument): Update.
6483         * cp-support.h (cp_demangled_name_to_comp): Update.
6484         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
6485         parameter to be a "std::string *".
6486         (main): Update.
6487
6488 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
6489
6490         * ada-lex.l: Include "diagnostics.h" instead of
6491         "common/diagnostics.h".
6492         * unittests/environ-selftests.c: Likewise.
6493         * common/diagnostics.h: Moved to ../include.
6494
6495 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
6496
6497         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
6498         to language_mode_manual while calling breakpoint_re_set_one.
6499
6500 2018-06-01  Tom Tromey  <tom@tromey.com>
6501
6502         * valops.c (value_cast_structs, destructor_name_p): Update.
6503         * symtab.c (gdb_mangle_name): Update.
6504         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
6505         Update.
6506         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
6507         (pascal_object_print_value_fields, pascal_object_print_value):
6508         Update.
6509         * p-typeprint.c (pascal_type_print_derivation_info): Update.
6510         * linespec.c (find_methods): Update.
6511         * gdbtypes.h (type_name_no_tag): Remove.
6512         (type_name_or_error): Rename from type_name_no_tag_or_error.
6513         * gdbtypes.c (type_name_no_tag): Remove.
6514         (type_name_or_error): Rename from type_name_no_tag_or_error.
6515         (lookup_struct_elt_type, check_typedef): Update.
6516         * expprint.c (print_subexp_standard): Update.
6517         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
6518         * d-namespace.c (d_lookup_nested_symbol): Update.
6519         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
6520         (cp_print_class_member): Update.
6521         * cp-namespace.c (cp_lookup_nested_symbol): Update.
6522         * completer.c (add_struct_fields): Update.
6523         * c-typeprint.c (cp_type_print_derivation_info)
6524         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
6525         Update.
6526         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
6527         (ada_prefer_type, ada_is_exception_sym): Update.
6528
6529 2018-06-01  Tom Tromey  <tom@tromey.com>
6530
6531         * valops.c (enum_constant_from_type, value_namespace_elt)
6532         (value_maybe_namespace_elt): Update.
6533         * valarith.c (find_size_for_pointer_math): Update.
6534         * target-descriptions.c (make_gdb_type): Update.
6535         * symmisc.c (print_symbol): Update.
6536         * stabsread.c (define_symbol, read_type)
6537         (complain_about_struct_wipeout, add_undefined_type)
6538         (cleanup_undefined_types_1): Update.
6539         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
6540         (rust_range_type_p, val_print_struct, rust_print_struct_def)
6541         (rust_internal_print_type, rust_composite_type)
6542         (rust_evaluate_funcall, rust_evaluate_subexp)
6543         (rust_inclusive_range_type_p): Update.
6544         * python/py-type.c (typy_get_tag): Update.
6545         * p-typeprint.c (pascal_type_print_base): Update.
6546         * mdebugread.c (parse_symbol, parse_type): Update.
6547         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
6548         Update.
6549         * guile/scm-type.c (gdbscm_type_tag): Update.
6550         * go-lang.c (sixg_string_p): Update.
6551         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
6552         Update.
6553         * gdbtypes.h (struct main_type) <tag_name>: Remove.
6554         (TYPE_TAG_NAME): Remove.
6555         * gdbtypes.c (type_name_no_tag): Simplify.
6556         (check_typedef, check_types_equal, recursive_dump_type)
6557         (copy_type_recursive, arch_composite_type): Update.
6558         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
6559         in summary mode when needed.
6560         * eval.c (evaluate_funcall): Update.
6561         * dwarf2read.c (fixup_go_packaging, read_structure_type)
6562         (process_structure_scope, read_enumeration_type)
6563         (read_namespace_type, read_module_type, determine_prefix): Update.
6564         * cp-support.c (inspect_type): Update.
6565         * coffread.c (process_coff_symbol, decode_base_type): Update.
6566         * c-varobj.c (c_is_path_expr_parent): Update.
6567         * c-typeprint.c (c_type_print_base_struct_union): Update.
6568         (c_type_print_base_1): Update.  Print struct/class/union/enum in
6569         summary when using C language.
6570         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
6571         (gen_maybe_namespace_elt): Update.
6572         * ada-lang.c (ada_type_name): Simplify.
6573         (empty_record, ada_template_to_fixed_record_type_1)
6574         (template_to_static_fixed_type)
6575         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
6576
6577 2018-06-01  Tom Tromey  <tom@tromey.com>
6578
6579         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
6580         c_print_type.
6581         * c-typeprint.c (c_print_type_1): Add "language" parameter.
6582         (c_print_type): Update.
6583         (c_print_type): New overload.
6584         (c_type_print_varspec_prefix, c_type_print_args)
6585         (c_type_print_varspec_suffix, c_print_type_no_offsets)
6586         (c_type_print_base_struct_union, c_type_print_base_1)
6587         (cp_type_print_method_args): Add "language" parameter.
6588         (c_type_print_base): Update.
6589         * c-lang.h (c_print_type): Add new overload.
6590
6591 2018-06-01  Tom Tromey  <tom@tromey.com>
6592
6593         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
6594         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
6595
6596 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
6597
6598         * aarch64-tdep.c (aarch64_sve_register_names): New const
6599         var.
6600         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
6601         (AARCH64_SVE_Z_REGS_NUM): New define.
6602         (AARCH64_SVE_P_REGS_NUM): Likewise.
6603         (AARCH64_SVE_NUM_REGS): Likewise.
6604
6605 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
6606
6607         * nat/linux-ptrace.h [__alpha__]
6608         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
6609         definitions.
6610
6611 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
6612
6613         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
6614         the endianness selected.
6615         * NEWS: Document `set endian auto' mode operation update.
6616
6617 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
6618
6619         * Makefile.in: Add new header.
6620         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
6621         (sve_vl_from_vg): Likewise.
6622         (sve_vq_from_vl): Likewise.
6623         (sve_vl_from_vq): Likewise.
6624         (sve_vq_from_vg): Likewise.
6625         (sve_vg_from_vq): Likewise.
6626         * configure.nat: Add new c file.
6627         * nat/aarch64-sve-linux-ptrace.c: New file.
6628         * nat/aarch64-sve-linux-ptrace.h: New file.
6629
6630 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
6631
6632         * aarch64-linux-nat.c (aarch64_linux_read_description):
6633         Add parmeter zero.
6634         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
6635         Likewise.
6636         * aarch64-tdep.c (tdesc_aarch64_list): Add.
6637         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
6638         (aarch64_gdbarch_init): Add parmeter zero.
6639         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
6640         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
6641         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
6642         parmeter.
6643         * doc/gdb.texinfo: Describe SVE feature
6644         * features/aarch64-sve.c: New file.
6645
6646 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
6647
6648         PR gdb/23210
6649         * gdbarch.sh (significant_addr_bit): Default to zero when
6650         not set by target architecture.
6651         * gdbarch.c: Re-generated.
6652         * utils.c (address_significant): Update.
6653
6654 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
6655
6656         * stack.c (func_command): Remove trailing newline in call to error.
6657
6658 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6659
6660         * regcache.h (regcache_raw_collect): Remove, update callers to
6661         use regcache::raw_collect.
6662         * regcache.c (regcache_raw_collect): Remove.
6663
6664 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6665
6666         * regcache.h (regcache_raw_supply): Remove, update callers to
6667         use detached_regcache::raw_supply.
6668         * regcache.c (regcache_raw_supply): Remove.
6669
6670 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6671
6672         * regcache.h (regcache_cooked_write_part): Remove, update
6673         callers to use regcache::cooked_write_part.
6674         * regcache.c (regcache_cooked_write_part): Remove.
6675
6676 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6677
6678         * regcache.h (regcache_cooked_read_part): Remove, update callers
6679         to use readable_regcache::cooked_read_part.
6680         * regcache.c (regcache_cooked_read_part): Remove.
6681
6682 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6683
6684         * regcache.h (regcache_cooked_read_value): Remove, update
6685         callers to use readable_regcache::cooked_read_value.
6686         * regcache.c (regcache_cooked_read_value): Remove.
6687
6688 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6689
6690         * regcache.h (regcache_cooked_write): Remove, update callers to
6691         use regcache::cooked_write.
6692         * regcache.c (regcache_cooked_write): Remove.
6693
6694 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6695
6696         * regcache.h (regcache_invalidate): Remove, update callers to
6697         use detached_regcache::invalidate instead.
6698         * regcache.c (regcache_invalidate): Remove.
6699
6700 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6701
6702         * regcache.h (regcache_raw_write_part): Remove, update callers
6703         to use regcache::raw_write_part instead.
6704         * regcache.c (regcache_raw_write_part): Remove.
6705
6706 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6707
6708         * regcache.h (regcache_raw_read_part): Remove, update callers to
6709         use readable_regcache::raw_read_part instead.
6710         * regcache.c (regcache_raw_read_part): Remove.
6711
6712 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6713
6714         * regcache.h (regcache_cooked_read): Remove, update callers to
6715         use readable_regcache::cooked_read instead.
6716         * regcache.c (regcache_cooked_read): Remove.
6717
6718 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6719
6720         * regcache.h (regcache_raw_write): Remove, update callers to use
6721         regcache::raw_write instead.
6722         * regcache.c (regcache_raw_write): Remove.
6723
6724 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6725
6726         * regcache.h (regcache_raw_read): Remove, update callers to use
6727         readable_regcache::raw_read instead.
6728         * regcache.c (regcache_raw_read): Remove.
6729
6730 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6731
6732         * regcache.h (regcache_raw_update): Remove, update callers to
6733         use readable_regcache::raw_update instead.
6734         * regcache.c (regcache_raw_update): Remove.
6735
6736 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6737
6738         * regcache.h (regcache_register_status): Remove, update callers
6739         to use reg_buffer::get_register_status directly instead.
6740         * regcache.c (regcache_register_status): Remove.
6741
6742 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6743
6744         * regcache.h (regcache_get_ptid): Remove, update all callers to
6745         call regcache::ptid instead.
6746         * regcache.c (regcache_get_ptid): Remove.
6747
6748 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6749
6750         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
6751
6752 2018-05-30  Pedro Alves  <palves@redhat.com>
6753
6754         * common/common-exceptions.h (exception_rethrow): Use
6755         ATTRIBUTE_NORETURN.
6756
6757 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
6758
6759         * breakpoint.c (print_solib_event, check_status_catch_solib):
6760         Remove struct keyword in range-based for loops.
6761         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
6762         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
6763         Likewise.
6764         * linespec.c (find_superclass_methods, search_minsyms_for_name):
6765         Likewise.
6766         * symfile.c (addr_info_make_relative): Likewise.
6767         * thread.c (value_in_thread_stack_temporaries): Likewise.
6768
6769 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
6770
6771         PR gdb/16841
6772         * valops.c (value_struct_elt_for_reference): Call check_typedef on
6773         aggregate type to get its real type before accessing it.
6774
6775 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
6776
6777         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
6778         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
6779         * coff-pe-read.c (add_pe_forwarded_sym): Replace
6780         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
6781         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
6782         * jit.c (jit_breakpoint_re_set_internal): Likewise.
6783         * printcmd.c (info_address_command): Likewise.
6784
6785 2018-05-29  Tom Tromey  <tom@tromey.com>
6786
6787         * windows-nat.c (handle_exception): Update fall-through comment.
6788
6789 2018-05-29  Tom Tromey  <tom@tromey.com>
6790
6791         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
6792         (struct program_space) <added_solibs>: Now a std::vector.
6793         * breakpoint.c (print_solib_event): Update.
6794         (check_status_catch_solib): Update.
6795         * progspace.c (clear_program_space_solib_cache): Update.
6796         * solib.c (update_solib_list): Update.
6797
6798 2018-05-29  Tom Tromey  <tom@tromey.com>
6799
6800         * python/py-type.c (typy_richcompare): Update.
6801         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
6802         * gdbtypes.h (types_deeply_equal): Return bool.
6803         (types_equal): Likewise.
6804         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
6805         declare VEC.
6806         (check_types_equal): Change worklist to std::vector.  Return
6807         bool.
6808         (struct type_equality_entry): Add constructor.
6809         (compare_maybe_null_strings): Return bool.
6810         (check_types_worklist): Return bool.  Change worklist to
6811         std::vector.
6812         (types_deeply_equal): Use std::vector.
6813         (types_equal): Return bool.
6814         (compare_maybe_null_strings): Simplify.
6815
6816 2018-05-29  Tom Tromey  <tom@tromey.com>
6817
6818         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
6819
6820 2018-05-29  Tom Tromey  <tom@tromey.com>
6821
6822         * objc-lang.h: Don't include cp-support.h.
6823         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
6824         declare VEC.
6825
6826 2018-05-27  Tom Tromey  <tom@tromey.com>
6827
6828         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
6829
6830 2018-05-25  Tom Tromey  <tom@tromey.com>
6831
6832         * value.c (value::location): Initialize.
6833
6834 2018-05-25  Tom Tromey  <tom@tromey.com>
6835
6836         * dbxread.c (init_bincl_list): Remove.
6837         (bincl_list): Now a std::vector.
6838         (bincls_allocated, next_bincl): Remove.
6839         (free_bincl_list, do_free_bincl_list_cleanup)
6840         (make_cleanup_free_bincl_list): Remove.
6841         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
6842         unique_xmalloc_ptr.
6843         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
6844         (struct header_file_location): Add constructor.
6845         (add_bincl_to_list): Remove.
6846
6847 2018-05-25  Tom Tromey  <tom@tromey.com>
6848
6849         * tui/tui.c (tui_enable): Update.
6850         * mi/mi-interp.c (mi_interp::init): Update.
6851         * interps.h (class interp) <name>: New method.
6852         <m_name>: Rename from name.
6853         (~scoped_restore_interp): Update.
6854         * interps.c (interp::interp): Update.
6855         (interp_add, interp_set, interp_lookup_existing)
6856         (current_interp_named_p): Update.
6857
6858 2018-05-25  Tom Tromey  <tom@tromey.com>
6859
6860         * interps.c (interp_name): Remove.
6861         * mi/mi-interp.c (mi_interp::init): Update.
6862         * interps.h (interp_name): Remove.
6863         (~scoped_restore_interp): Update.
6864         * tui/tui.c (tui_enable): Update.
6865
6866 2018-05-25  Tom Tromey  <tom@tromey.com>
6867
6868         * utils.c (fputs_maybe_filtered): Update.
6869         * linespec.c (decode_line_full): Update.
6870         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
6871         (mi_print_breakpoint_for_event, mi_solib_loaded)
6872         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
6873         (mi_user_selected_context_changed): Update.
6874         * mi/mi-main.c (mi_execute_command): Update.
6875         * cli/cli-script.c (execute_control_command): Update.
6876         * python/python.c (execute_gdb_command): Update.
6877         * solib.c (info_sharedlibrary_command): Update.
6878         * interps.c (interp_ui_out): Remove.
6879         * interps.h (interp_ui_out): Remove.
6880
6881 2018-05-25  Tom Tromey  <tom@tromey.com>
6882
6883         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
6884         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
6885         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
6886
6887 2018-05-25  Tom Tromey  <tom@tromey.com>
6888
6889         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
6890         * interps.c (interp_exec): Use scoped_restore.
6891
6892 2018-05-25  Tom Tromey  <tom@tromey.com>
6893
6894         * remote.c (remote_target::remote_file_get): Use
6895         gdb::byte_vector.
6896         (remote_target::remote_file_put): Likewise.
6897
6898 2018-05-25  Tom Tromey  <tom@tromey.com>
6899
6900         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
6901         a std::string.
6902         (get_pe_section_index, add_pe_exported_sym): Update.
6903         (read_pe_exported_syms): Use gdb::def_vector.
6904
6905 2018-05-25  Tom Tromey  <tom@tromey.com>
6906
6907         * frame.c (remove_prev_frame): Remove.
6908         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
6909
6910 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
6911
6912         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
6913         Remove prototypes.
6914         * mips-linux-nat.c (supply_fpregset): Always call
6915         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
6916         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
6917         `mips_fill_fpregset'.
6918         * mips-linux-tdep.c (mips_supply_fpregset)
6919         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
6920         (mips_fill_fpregset_wrapper): Remove functions.
6921         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
6922         (mips_linux_fpregset): Remove variable.
6923         (mips_linux_iterate_over_regset_sections): Use
6924         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
6925         (mips_linux_o32_sigframe_init): Remove comment.
6926
6927 2018-05-25  Pedro Alves  <palves@redhat.com>
6928
6929         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
6930         (struct readahead_cache, struct packet_reg, struct
6931         remote_arch_state, class remote_state): Move higher up in the
6932         file.
6933         (remote_target::m_remote_state): Now an object instead of a pointer.
6934         (remote_target::get_remote_state): Adjust.
6935
6936 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
6937
6938         * stack.c (select_and_print_frame): Delete.
6939         (struct function_bounds): Move struct within function.
6940         (func_command): Most content moved into new function
6941         find_frame_for_function, use new function, print result, add
6942         function comment.
6943         (find_frame_for_function): New function, now returns a result.
6944
6945 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6946
6947         * stack.c (iterate_over_block_arg_vars): Fix comment.
6948         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
6949
6950 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
6951
6952         PR gdb/23203
6953         * frame.c
6954         (scoped_restore_selected_frame::scoped_restore_selected_frame):
6955         Define.
6956         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
6957         Define.
6958         * frame.h (class scoped_restore_selected_frame): New class.
6959         * stack.c (print_frame_local_vars): Remove catching and rethrowing
6960         of any exception, use scoped_restore_selected_frame to restore the
6961         frame instead.
6962
6963 2018-05-24  Pedro Alves  <palves@redhat.com>
6964
6965         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
6966         override.
6967
6968 2018-05-23  Tom Tromey  <tom@tromey.com>
6969
6970         * complaints.c (struct complaints): Remove.
6971         (symfile_complaint_book): Remove.
6972         (series): New global.
6973         (complaint_internal): Update.
6974         (clear_complaints): Update.
6975
6976 2018-05-23  Tom Tromey  <tom@tromey.com>
6977
6978         * complaints.c (counters): New global.
6979         (struct complain): Remove.
6980         (struct complaints) <root>: Remove.
6981         (complaint_sentinel): Remove.
6982         (symfile_complaint_book): Update.
6983         (find_complaint) Remove.
6984         (complaint_internal, clear_complaints): Update.
6985
6986 2018-05-23  Tom Tromey  <tom@tromey.com>
6987
6988         * complaints.c (struct complain) <file, line>: Remove.
6989         (find_complaint): Remove file, line parameters.
6990         (complaint_internal): Update.
6991
6992 2018-05-23  Tom Tromey  <tom@tromey.com>
6993
6994         * complaints.c (vcomplaint): Remove.
6995         (complaint_internal) Merge in contents of vcomplaint.
6996
6997 2018-05-23  Tom Tromey  <tom@tromey.com>
6998
6999         * complaints.c (struct complaints) <explanation>: Remove.
7000         (symfile_explanations): Remove.
7001         (symfile_complaint_book): Update.
7002         (vcomplaint): Update.
7003         (struct explanation): Remove.
7004
7005 2018-05-23  Tom Tromey  <tom@tromey.com>
7006
7007         * complaints.c (symfile_complaints): Remove.
7008         (complaint_internal): Remove "complaints" parameter.
7009         (clear_complaints, vcomplaint): Remove "c" parameter.
7010         (get_complaints): Remove.
7011         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
7012         (dwarf2_debug_line_missing_file_complaint)
7013         (dwarf2_debug_line_missing_end_sequence_complaint)
7014         (dwarf2_complex_location_expr_complaint)
7015         (dwarf2_const_value_length_mismatch_complaint)
7016         (dwarf2_section_buffer_overflow_complaint)
7017         (dwarf2_macro_malformed_definition_complaint)
7018         (dwarf2_invalid_attrib_class_complaint)
7019         (create_addrmap_from_index, dw2_symtab_iter_next)
7020         (dw2_expand_marked_cus)
7021         (dw2_debug_names_iterator::find_vec_in_debug_names)
7022         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
7023         (create_debug_type_hash_table, init_cutu_and_read_dies)
7024         (partial_die_parent_scope, add_partial_enumeration)
7025         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
7026         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
7027         (read_import_statement, read_file_scope, create_dwo_cu_reader)
7028         (create_cus_hash_table, create_dwp_hash_table)
7029         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
7030         (dwarf2_rnglists_process, dwarf2_ranges_process)
7031         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
7032         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
7033         (handle_struct_member_die, process_structure_scope)
7034         (read_array_type, read_common_block, read_module_type)
7035         (read_tag_pointer_type, read_typedef, read_base_type)
7036         (read_subrange_type, load_partial_dies, partial_die_info::read)
7037         (partial_die_info::read, partial_die_info::read)
7038         (partial_die_info::read, read_checked_initial_length_and_offset)
7039         (dwarf2_string_attr, read_formatted_entries)
7040         (dwarf_decode_line_header)
7041         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
7042         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
7043         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
7044         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
7045         (get_signatured_type, get_DW_AT_signature_type)
7046         (decode_locdesc, file_file_name, consume_improper_spaces)
7047         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
7048         (dwarf_decode_macro_bytes, dwarf_decode_macros)
7049         (dwarf2_symbol_mark_computed, set_die_type)
7050         (read_attribute_value): Update.
7051         * stap-probe.c (handle_stap_probe, get_stap_base_address):
7052         Update.
7053         * dbxread.c (unknown_symtype_complaint)
7054         (lbrac_mismatch_complaint, repeated_header_complaint)
7055         (set_namestring, function_outside_compilation_unit_complaint)
7056         (read_dbx_symtab, process_one_symbol): Update.
7057         * gdbtypes.c (stub_noname_complaint): Update.
7058         * windows-nat.c (handle_unload_dll): Update.
7059         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
7060         (decode_base_type): Update.
7061         * xcoffread.c (bf_notfound_complaint, ef_complaint)
7062         (eb_complaint, record_include_begin, record_include_end)
7063         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
7064         (process_xcoff_symbol, read_symbol)
7065         (function_outside_compilation_unit_complaint)
7066         (scan_xcoff_symtab): Update.
7067         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
7068         * buildsym.c (finish_block_internal, make_blockvector)
7069         (end_symtab_get_static_block, augment_type_symtab): Update.
7070         * dtrace-probe.c (dtrace_process_dof)
7071         (dtrace_static_probe_ops::get_probes): Update.
7072         * complaints.h (struct complaint): Don't declare.
7073         (symfile_complaints): Remove.
7074         (complaint_internal): Remove "complaints" parameter.
7075         (complaint): Likewise.
7076         (clear_complaints): Likewise.
7077         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7078         (reread_symbols): Update.
7079         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
7080         (dwarf2_frame_cache, decode_frame_entry): Update.
7081         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
7082         * objc-lang.c (lookup_objc_class, lookup_child_selector)
7083         (info_selectors_command): Update.
7084         * macrotab.c (macro_include, check_for_redefinition)
7085         (macro_undef): Update.
7086         * objfiles.c (filter_overlapping_sections): Update.
7087         * stabsread.c (invalid_cpp_abbrev_complaint)
7088         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
7089         (define_symbol, error_type, read_type, rs6000_builtin_type)
7090         (stabs_method_name_from_physname, read_member_functions)
7091         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
7092         (attach_fields_to_type, complain_about_struct_wipeout)
7093         (read_range_type, read_args, common_block_start)
7094         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
7095         Update.
7096         * mdebugread.c (index_complaint, unknown_ext_complaint)
7097         (basic_type_complaint, bad_tag_guess_complaint)
7098         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
7099         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
7100         (parse_procedure, parse_lines)
7101         (function_outside_compilation_unit_complaint)
7102         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
7103         (bad_tag_guess_complaint, reg_value_complaint): Update.
7104         * cp-support.c (demangled_name_complaint): Update.
7105         * macroscope.c (sal_macro_scope): Update.
7106         * dwarf-index-write.c (class debug_names): Update.
7107
7108 2018-05-23  Tom Tromey  <tom@tromey.com>
7109
7110         * complaints.c (clear_complaints): Remove "noisy" parameter.
7111         * complaints.h (clear_complaints): Update.
7112         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7113         (reread_symbols): Update.
7114
7115 2018-05-23  Tom Tromey  <tom@tromey.com>
7116
7117         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
7118         SUBSEQUENT_MESSAGE.
7119         (vcomplaint, clear_complaints): Update.
7120         (symfile_explanations): Remove some messages.
7121
7122 2018-05-23  Tom Tromey  <tom@tromey.com>
7123
7124         * complaints.c (internal_complaint): Remove.
7125         * complaints.h (internal_complaint): Remove.
7126
7127 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7128
7129         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
7130
7131 2018-05-22  Pedro Alves  <palves@redhat.com>
7132
7133         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
7134         (remote_fileio_badfd, remote_fileio_return_errno)
7135         (remote_fileio_return_success, remote_fileio_func_open)
7136         (remote_fileio_func_open, remote_fileio_func_close)
7137         (remote_fileio_func_read, remote_fileio_func_write)
7138         (remote_fileio_func_lseek, remote_fileio_func_rename)
7139         (remote_fileio_func_unlink, remote_fileio_func_stat)
7140         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
7141         (remote_fileio_func_isatty, remote_fileio_func_system): Add
7142         remote_target parameter.
7143         (remote_fio_func_map) <func>: Add remote_target parameter.
7144         (do_remote_fileio_request, remote_fileio_request):
7145         * remote-fileio.h (remote_fileio_request):
7146         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
7147         remote_target parameter.
7148         (remote_notif_process, handle_notification): Adjust to pass down
7149         the remote.
7150         (remote_notif_state_allocate): Add remote_target parameter.  Save
7151         it.
7152         * remote-notif.h (struct remote_target): Forward declare.
7153         (struct notif_client) <parse, ack, can_get_pending_events>: Add
7154         remote_target parameter.
7155         (struct remote_notif_state) <remote>: New field.
7156         (remote_notif_ack, remote_notif_parse): Add remote_target
7157         parameter.
7158         (remote_notif_state_allocate, remote_notif_state_allocate): Add
7159         remote_target parameter.
7160         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
7161         (threads_listing_context, rmt_thread_action, protocol_feature)
7162         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
7163         (packet_result, struct threads_listing_context, remote_state):
7164         Move definitions and declarations higher up.
7165         (remote_target) <~remote_target>: Declare.
7166         (remote_download_command_source, remote_file_put, remote_file_get)
7167         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
7168         (remote_hostio_pread_vFile, remote_hostio_send_command)
7169         (remote_hostio_set_filesystem, remote_hostio_open)
7170         (remote_hostio_close, remote_hostio_unlink, remote_state)
7171         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
7172         (get_memory_write_packet_size, get_memory_read_packet_size)
7173         (append_pending_thread_resumptions, remote_detach_1)
7174         (append_resumption, remote_resume_with_vcont)
7175         (add_current_inferior_and_thread, wait_ns, wait_as)
7176         (process_stop_reply, remote_notice_new_inferior)
7177         (process_initial_stop_replies, remote_add_thread)
7178         (btrace_sync_conf, remote_btrace_maybe_reopen)
7179         (remove_new_fork_children, kill_new_fork_children)
7180         (discard_pending_stop_replies, stop_reply_queue_length)
7181         (check_pending_events_prevent_wildcard_vcont)
7182         (discard_pending_stop_replies_in_queue, stop_reply)
7183         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
7184         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
7185         (remote_interrupt_as, remote_interrupt_ns)
7186         (remote_get_noisy_reply, remote_query_attached)
7187         (remote_add_inferior, remote_current_thread, get_current_thread)
7188         (set_thread, set_general_thread, set_continue_thread)
7189         (set_general_process, write_ptid)
7190         (remote_unpack_thread_info_response, remote_get_threadinfo)
7191         (parse_threadlist_response, remote_get_threadlist)
7192         (remote_threadlist_iterator, remote_get_threads_with_ql)
7193         (remote_get_threads_with_qxfer)
7194         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
7195         (get_offsets, remote_check_symbols, remote_supported_packet)
7196         (remote_query_supported, remote_packet_size)
7197         (remote_serial_quit_handler, remote_detach_pid)
7198         (remote_vcont_probe, remote_resume_with_hc)
7199         (send_interrupt_sequence, interrupt_query)
7200         (remote_notif_get_pending_events, fetch_register_using_p)
7201         (send_g_packet, process_g_packet, fetch_registers_using_g)
7202         (store_register_using_P, store_registers_using_G)
7203         (set_remote_traceframe, check_binary_download)
7204         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
7205         (remote_xfer_live_readonly_partial, remote_read_bytes)
7206         (remote_send_printf, remote_flash_write, readchar)
7207         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
7208         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
7209         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
7210         (extended_remote_disable_randomization, extended_remote_run)
7211         (send_environment_packet, extended_remote_environment_support)
7212         (extended_remote_set_inferior_cwd, remote_write_qxfer)
7213         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
7214         (packet_command): Now methods of ...
7215         (remote_target): ... this class.
7216         (m_remote_state) <remote_target>: New field.
7217         (struct remote_state) <stop_reply_queue,
7218         remote_async_inferior_event_token, wait_forever_enabled_p>: New
7219         fields.
7220         (remote_state::remote_state): Allocate stop_reply_queue.
7221         (remote_state): Delete global.
7222         (get_remote_state_raw): Delete.
7223         (remote_target::get_remote_state): Allocate m_remote_state on
7224         demand.
7225         (get_current_remote_target): New.
7226         (remote_ops, extended_remote_ops): Delete.
7227         (wait_forever_enabled_p, remote_async_inferior_event_token):
7228         Delete, moved to struct remote_state.
7229         (remote_target::close): Delete self.  Destruction bits split to
7230         ...
7231         (remote_target::~remote_target): ... this.
7232         (show_memory_packet_size): Adjust to use
7233         get_current_remote_target.
7234         (struct protocol_feature) <func>: Add remote_target parameter.
7235         All callers adjusted.
7236         (curr_quit_handler_target): New.
7237         (remote_serial_quit_handler): Reimplement.
7238         (remote_target::open_1): Adjust to use get_current_remote_target.
7239         Heap-allocate remote_target/extended_remote_target instances.
7240         (vcont_builder::vcont_builder): Add remote_target parameter, and
7241         save it in m_remote.  All callers adjusted.
7242         (vcont_builder::m_remote): New field.
7243         (vcont_builder::restart, vcont_builder::flush)
7244         (vcont_builder::push_action): Use it.
7245         (remote_target::commit_resume): Use it.
7246         (struct queue_iter_param) <remote>: New field.
7247         (remote_target::remove_new_fork_children): Fill in 'remote' field.
7248         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
7249         (check_pending_event_prevents_wildcard_vcont_callback)
7250         (remote_target::check_pending_events_prevent_wildcard_vcont)
7251         (remote_target::discard_pending_stop_replies)
7252         (remote_target::discard_pending_stop_replies_in_queue)
7253         (remote_target::remote_notif_remove_queued_reply): Fill in
7254         'remote' field.
7255         (remote_notif_get_pending_events): New.
7256         (remote_target::readchar, remote_target::remote_serial_write):
7257         Save/restore curr_quit_handler_target.
7258         (putpkt): New.
7259         (kill_new_fork_children): Fill in 'remote' field.
7260         (packet_command): Use get_current_remote_target, defer to
7261         remote_target method of same name.
7262         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
7263         parameter, and save it in m_remote.  All callers adjusted.
7264         (scoped_remote_fd::release): Use m_remote.
7265         (scoped_remote_fd::m_remote): New field.
7266         (remote_file_put, remote_file_get, remote_file_delete): Use
7267         get_current_remote_target, defer to remote_target method of same
7268         name.
7269         (remote_btrace_reset): Add remote_state paremeter.  Update all
7270         callers.
7271         (remote_async_inferior_event_handler). Pass down 'data'.
7272         (remote_new_objfile): Use get_current_remote_target.
7273         (remote_target::vcont_r_supported): New.
7274         (set_range_stepping): Use get_current_remote_target and
7275         remote_target::vcont_r_supported.
7276         (_initialize_remote): Don't allocate 'remote_state' and
7277         'stop_reply_queue' globals.
7278         * remote.h (struct remote_target): Forward declare.
7279         (getpkt, putpkt, remote_notif_get_pending_events): Add
7280         'remote_target' parameter.
7281
7282 2018-05-22  Pedro Alves  <palves@redhat.com>
7283
7284         * remote.c (vcont_builder): Now a class.  Make all data members
7285         private.
7286         (vcont_builder) <vcont_builder, restart, flush, push_action>:
7287         Declare methods.
7288         (vcont_builder_restart): Rename to ...
7289         (vcont_builder::restart): ... this.
7290         (vcont_builder_flush): Rename to ...
7291         (vcont_builder::flush): ... this.
7292         (vcont_builder_push_action): Rename to ...
7293         (vcont_builder::push_action): ... this.
7294         (remote_target::commit_resume): Adjust.
7295
7296 2018-05-22  Pedro Alves  <palves@redhat.com>
7297
7298         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
7299         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
7300         (get_fixed_memory_packet_size): New.
7301         (get_memory_packet_size): Use it.
7302         (set_memory_packet_size): Don't override the config size with
7303         DEFAULT_MAX_MEMORY_PACKET_SIZE.
7304         (show_memory_packet_size): Use get_fixed_memory_packet_size.
7305         Don't refer to get_memory_packet_size if not connected to a remote
7306         target.  Show "(default)" if configured size is 0.
7307
7308 2018-05-22  Pedro Alves  <palves@redhat.com>
7309
7310         * remote.c (remote_target::mourn_inferior): Move
7311         discard_pending_stop_replies call here from ...
7312         (_initialize_remote): ... here.
7313
7314 2018-05-22  Pedro Alves  <palves@redhat.com>
7315
7316         * remote.c (compare_section_command): Remove set_general_process
7317         call.
7318
7319 2018-05-22  Pedro Alves  <palves@redhat.com>
7320
7321         * remote.c (struct packet_reg, struct remote_arch_state):
7322         Move higher up in the file.
7323         (remote_state) <m_arch_states>: Store remote_arch_state values
7324         instead of remote_arch_state pointers.
7325         (remote_state::get_remote_arch_state): Adjust.
7326
7327 2018-05-22  Pedro Alves  <palves@redhat.com>
7328
7329         * remote.c: Include <unordered_map>.
7330         (remote_state): Now a class.
7331         (remote_state) <get_remote_arch_state>: Declare method.
7332         <get_remote_arch_state>: New field.
7333         (remote_arch_state) <remote_arch_state>: Declare ctor.
7334         <regs>: Now a unique_ptr.
7335         (remote_gdbarch_data_handle): Delete.
7336         (get_remote_arch_state): Delete.
7337         (remote_state::get_remote_arch_state): New.
7338         (get_remote_state): Adjust to call remote_state's
7339         get_remote_arch_state method.
7340         (init_remote_state): Delete, bits factored out to ...
7341         (remote_arch_state::remote_arch_state): ... this new method.
7342         (get_remote_packet_size, get_memory_packet_size)
7343         (process_g_packet, remote_target::fetch_registers)
7344         (remote_target::prepare_to_store, store_registers_using_G)
7345         (remote_target::store_registers, remote_target::get_trace_status):
7346         Adjust to call remote_state's method.
7347         (_initialize_remote): Remove reference to
7348         remote_gdbarch_data_handle.
7349
7350 2018-05-22  Pedro Alves  <palves@redhat.com>
7351
7352         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
7353         pread>: New method declarations.
7354         (remote_target::open_1): Adjust.
7355         (readahead_cache_invalidate): Rename to ...
7356         (readahead_cache::invalidate): ... this, and adjust to be a class
7357         method.
7358         (readahead_cache_invalidate_fd): Rename to ...
7359         (readahead_cache::invalidate_fd): ... this, and adjust to be a
7360         class method.
7361         (remote_hostio_pwrite): Adjust.
7362         (remote_hostio_pread_from_cache): Rename to ...
7363         (readahead_cache::pread): ... this, and adjust to be a class
7364         method.
7365         (remote_hostio_close): Adjust.
7366
7367 2018-05-22  Pedro Alves  <palves@redhat.com>
7368
7369         * remote.c (remote_hostio_close_cleanup): Delete.
7370         (class scoped_remote_fd): New.
7371         (remote_file_put, remote_file_get): Use it.
7372
7373 2018-05-22  Pedro Alves  <palves@redhat.com>
7374
7375         (struct vCont_action_support): Use bool and initialize all fields.
7376         (struct readahead_cache): Initialize all fields.
7377         (remote_state): Use bool and initialize all fields.
7378         (remote_state::remote_state, remote_state::~remote_state): New.
7379         (new_remote_state): Delete.
7380         (_initialize_remote): Use new to allocate remote_state.
7381
7382 2018-05-22  Pedro Alves  <palves@redhat.com>
7383             張俊芝  <zjz@zjz.name>
7384
7385         PR gdb/22973
7386         * c-exp.y: Include "c-support.h".
7387         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
7388         of tolower.  Use c_ident_is_alpha to scan names.
7389         * c-lang.c: Include "c-support.h".
7390         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
7391         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
7392         * c-support.h: New file, with bits factored out from ...
7393         * cp-name-parser.y: ... this file.
7394         Include "c-support.h".
7395         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
7396         c-support.h and renamed.
7397         (symbol_end, yylex): Adjust.
7398
7399 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7400
7401         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
7402         parameter type to CORE_ADDR.
7403         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
7404         parameter type in declaration to CORE_ADDR.
7405         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
7406         target_auxv_search to get AT_HWCAP and use the result to get the
7407         target description.
7408         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
7409         to CORE_ADDR. Remove the cast of the return value to unsigned
7410         long. Fix error predicate of target_auxv_search.
7411         (ppc_linux_nat_target::read_description): Change the type of the
7412         hwcap variable to CORE_ADDR.
7413
7414 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7415
7416         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
7417         if the size of fpscr is larger than 32 bits.
7418
7419 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7420
7421         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
7422         (ppc32_linux_vsxregmap): New global.
7423         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
7424         regcache_supply_regset, and regcache_collect_regset.
7425         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
7426         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
7427         (fetch_vsx_register, store_vsx_register): Remove.
7428         (fetch_vsx_registers): Add regno parameter. Get regset using
7429         ppc_linux_vsxregset. Use regset to supply registers.
7430         (store_vsx_registers): Add regno parameter. Get regset using
7431         ppc_linux_vsxregset. Use regset to collect registers.
7432         (fetch_register): Call fetch_vsx_registers instead of
7433         fetch_vsx_register.
7434         (store_register): Call store_vsx_registers instead of
7435         store_vsx_register.
7436         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
7437         new regno parameter.
7438         (store_ppc_registers): Call store_vsx_registers with -1 for the
7439         new regno parameter.
7440         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
7441         (ppc_collect_vsxregset): Remove.
7442
7443 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7444
7445         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
7446         offset fields.
7447         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
7448         for vector register offset fields.
7449         (ppc64_fbsd_reg_offsets): Likewise.
7450         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7451         to vector register offset fields.
7452         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7453         to vector register offset fields.
7454         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
7455         vector register offset fields.
7456         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
7457         initializers for vector register offset fields.
7458         (rs6000_aix64_reg_offsets): Likewise.
7459         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
7460         (ppc_supply_vrregset): Remove.
7461         (ppc_collect_vrregset): Remove.
7462         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
7463         (ppc_linux_vrregset) : New function.
7464         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
7465         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
7466         (ppc32_linux_vrregset): Remove.
7467         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
7468         and use result instead of ppc32_linux_vrregset.
7469         (ppc32_linux_reg_offsets): Remove initializers for vector register
7470         offset fields.
7471         (ppc64_linux_reg_offsets): Likewise.
7472         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
7473         * ppc-linux-nat.c: Include regset.h.
7474         (gdb_vrregset_t): Adjust comment to account for little-endian
7475         mode.
7476         (supply_vrregset, fill_vrregset): Remove.
7477         (fetch_altivec_register, store_altivec_register): Remove.
7478         (fetch_altivec_registers): Add regno parameter. Get regset using
7479         ppc_linux_vrregset. Use regset to supply registers.
7480         (store_altivec_registers): Add regno parameter. Get regset using
7481         ppc_linux_vrregset. Use regset to collect registers.
7482         (fetch_register): Call fetch_altivec_registers instead of
7483         fetch_altivec_register.
7484         (store_register): Call store_altivec_registers instead of
7485         store_altivec_register.
7486         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
7487         the new regno parameter.
7488         (store_ppc_registers): Call store_altivec_registers with -1 for
7489         the new regno parameter.
7490
7491 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7492
7493         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
7494         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
7495         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
7496         (gdb_vrregset_t): Change array type size to
7497         PPC_LINUX_SIZEOF_VRREGSET.
7498         (gdb_vsxregset_t): Change array type size to
7499         PPC_LINUX_SIZEOF_VSXREGSET.
7500         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
7501         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
7502         PPC_LINUX_SIZEOF_VSXREGSET.
7503
7504 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7505
7506         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
7507         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
7508         nat/ppc-linux.c.
7509         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
7510         ppc_linux_target_wordsize with tid.
7511         (ppc_linux_nat_target::read_description): Call ppc_linux_target
7512         wordsize with tid.
7513         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
7514         (ppc64_64bit_inferior_p): Add static and inline specifiers.
7515         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
7516         tid parameter. Remove static specifier.
7517         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
7518         (ppc_linux_target_wordsize): New declaration.
7519
7520 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7521
7522         * arch/ppc-linux-common.c: New file.
7523         * arch/ppc-linux-common.h: New file.
7524         * arch/ppc-linux-tdesc.h: New file.
7525         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
7526         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
7527         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
7528         arch/ppc-linux-tdesc.h.
7529         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
7530         arch/ppc-linux-tdesc.h.
7531         (ppc_linux_nat_target::read_description): Remove target
7532         description matching code. Fill a ppc_linux_features struct and
7533         call ppc_linux_match_description with it. Move comment about ISA
7534         2.05 to ppc-linux-common.c.
7535         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
7536         arch/ppc-linux-tdesc.h.
7537         (ppc_linux_core_read_description): Remove target description
7538         matching code. Fill a ppc_linux_features struct and call
7539         ppc_linux_match_description with it.
7540         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
7541         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
7542         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
7543         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
7544         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
7545         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
7546         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
7547         (tdesc_powerpc_e500l): Remove.
7548
7549 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
7550
7551         * ada-lang.c (catch_assert_command): Pass empty string instead
7552         of NULL for excep_string argument.
7553
7554 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7555
7556         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
7557         the width of the requested register exceeds the width of the
7558         `ptrace' data type.
7559
7560 2018-05-21  Tom Tromey  <tom@tromey.com>
7561
7562         * printcmd.c (output_command): Remove.
7563         (output_command_const): Rename to output_command.
7564         * valprint.h (output_command): Rename from output_command_const.
7565         * tracepoint.c (trace_dump_actions): Call output_command.
7566
7567 2018-05-21  Tom Tromey  <tom@tromey.com>
7568
7569         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
7570         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
7571         * ada-lang.h (create_ada_exception_catchpoint): Update.
7572         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
7573         std::string.
7574         (create_excep_cond_exprs, ~ada_catchpoint)
7575         (should_stop_exception, print_one_exception)
7576         (print_mention_exception, print_recreate_exception): Update.
7577         (ada_get_next_arg): Remove.
7578         (catch_ada_exception_command_split): Use std::string.  Change type
7579         of "excep_string", "cond_string".
7580         (catch_ada_exception_command): Update.
7581         (create_ada_exception_catchpoint): Change type of excep_string.
7582         (ada_exception_sal): Remove excep_string parameter.
7583         (~ada_catchpoint): Remove.
7584
7585 2018-05-21  Tom Tromey  <tom@tromey.com>
7586
7587         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
7588         cleanup.
7589
7590 2018-05-21  Tom Tromey  <tom@tromey.com>
7591
7592         * ada-lang.c (ada_exception_message_1, ada_exception_message):
7593         Return unique_xmalloc_ptr.
7594         (print_it_exception): Update.
7595
7596 2018-05-21  Tom Tromey  <tom@tromey.com>
7597
7598         * tracepoint.c (trace_dump_actions): Use std::string.
7599
7600 2018-05-21  Tom Tromey  <tom@tromey.com>
7601
7602         * symfile.c (reread_symbols): Use std::string for original_name.
7603
7604 2018-05-21  Tom Tromey  <tom@tromey.com>
7605
7606         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
7607         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
7608         constructor.
7609
7610 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
7611
7612         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
7613         instance to...
7614         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
7615         * objfiles.c (get_objfile_bfd_data): Allocate
7616         objfile_per_bfd_storage with obstack_new when allocating on
7617         obstack.
7618
7619 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7620
7621         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
7622         OBSTACK_ZALLOC.
7623         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
7624         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
7625         * mdebugread.c (mdebug_build_psymtabs): Likewise.
7626         (add_pending): Likewise.
7627         (parse_symbol): Likewise.
7628         (parse_partial_symbols): Likewise.
7629         (psymtab_to_symtab_1): Likewise.
7630         (new_psymtab): Likewise.
7631         (elfmdebug_build_psymtabs): Likewise.
7632         * minsyms.c (terminate_minimal_symbol_table): Likewise.
7633         * objfiles.c (get_objfile_bfd_data): Likewise.
7634         (objfile_register_static_link): Likewise.
7635         * psymtab.c (allocate_psymtab): Likewise.
7636         * stabsread.c (read_member_functions): Likewise.
7637         * xcoffread.c (xcoff_end_psymtab): Likewise.
7638
7639 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7640
7641         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
7642         compiler supports std::is_trivially_constructible.
7643         * common/poison.h: Include obstack.h.
7644         (IsMallocable): Define to is_trivially_constructible if the
7645         compiler supports it, define to true_type otherwise.
7646         (xobnew): New.
7647         (XOBNEW): Redefine.
7648         (xobnewvec): New.
7649         (XOBNEWVEC): Redefine.
7650         * gdb_obstack.h (obstack_zalloc): New.
7651         (OBSTACK_ZALLOC): Redefine.
7652         (obstack_calloc): New.
7653         (OBSTACK_CALLOC): Redefine.
7654         (obstack_new): New.
7655         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
7656         (gdbarch_obstack): New declaration in gdbarch.h, definition in
7657         gdbarch.c.
7658         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
7659         obstack_calloc/obstack_zalloc.
7660         (gdbarch_obstack_zalloc): Remove.
7661         * target-descriptions.c (tdesc_data_init): Use obstack_new.
7662
7663 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7664
7665         * stack.c (backtrace_command_1): Remove useless variable int i.
7666
7667 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7668
7669         * stack.c (print_frame_info): Fix comment.
7670
7671 2018-05-18  Tom Tromey  <tom@tromey.com>
7672
7673         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
7674         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
7675         (~dwarf2_per_objfile): Update
7676         (dwarf2_get_dwz_file): Use new.
7677         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
7678         unique_ptr.
7679
7680 2018-05-18  Tom Tromey  <tom@tromey.com>
7681
7682         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
7683         unique_ptr.
7684         * dwarf2read.c (struct dwp_file): Add constructor and
7685         initializers.
7686         (open_and_init_dwp_file): Return a unique_ptr.
7687         (dwarf2_per_objfile, create_dwp_hash_table)
7688         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
7689         (lookup_dwo_unit_in_dwp): Update.
7690         (open_and_init_dwp_file, get_dwp_file): Update.
7691
7692 2018-05-18  Tom Tromey  <tom@tromey.com>
7693
7694         * dwarf2read.c (dwarf2_per_objfile): Update.
7695         (struct mapped_index): Add initializers.
7696         (dwarf2_read_index): Use new.
7697         (dw2_symtab_iter_init): Update.
7698         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
7699         unique_ptr.
7700
7701 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
7702
7703         * dwarf2read.c (mapped_index) <total_size>: Remove.
7704
7705 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
7706
7707         * unittests/format_pieces-selftests.c (test_format_specifier):
7708         Add ARI comments.
7709
7710 2018-05-18  Tom Tromey  <tom@tromey.com>
7711
7712         * c-typeprint.c (maybe_print_hole): New function.
7713         (c_print_type_struct_field_offset): Update.
7714         (c_type_print_base_struct_union): Call maybe_print_hole.
7715
7716 2018-05-17  Keith Seitz  <keiths@redhat.com>
7717
7718         * breakpoint.c (build_bpstat_chain): New function, moved from
7719         bpstat_stop_status.
7720         (bpstat_stop_status): Add optional parameter, `stop_chain'.
7721         If no stop chain is passed, call build_bpstat_chain to build it.
7722         * breakpoint.h (build_bpstat_chain): Declare.
7723         (bpstat_stop_status): Move documentation here from breakpoint.c.
7724         * infrun.c (handle_signal_stop): Before eliding inlined frames,
7725         build the stop chain and pass it to skip_inline_frames.
7726         Pass this stop chain to bpstat_stop_status.
7727         * inline-frame.c: Include breakpoint.h.
7728         (stopped_by_user_bp_inline_frame): New function.
7729         (skip_inline_frames): Add parameter `stop_chain'.
7730         Move documention to inline-frame.h.
7731         If non-NULL, use stopped_by_user_bp_inline_frame to determine
7732         whether the frame should be elided.
7733         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
7734         Add moved documentation and update for new parameter.
7735
7736 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
7737
7738         PR cli/14975
7739         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
7740         unittests/format_pieces-selftests.c.
7741         * common/format.h (format_piece) <operator==>: New.
7742         (format_pieces) <operator[]>: Remove.
7743         * common/format.c (format_pieces::format_pieces): Handle \e.
7744         * unittests/format_pieces-selftests.c: New.
7745
7746 2018-05-17  Tom Tromey  <tom@tromey.com>
7747
7748         PR symtab/23010:
7749         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
7750         (dw2_instantiate_symtab): Add skip_partial parameter.
7751         (dw2_find_last_source_symtab, dw2_map_expand_apply)
7752         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
7753         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
7754         (dw2_expand_symtabs_matching_one)
7755         (dw2_find_pc_sect_compunit_symtab)
7756         (dw2_debug_names_lookup_symbol)
7757         (dw2_debug_names_expand_symtabs_for_function): Update.
7758         (init_cutu_and_read_dies): Add skip_partial parameter.
7759         (process_psymtab_comp_unit, build_type_psymtabs_1)
7760         (process_skeletonless_type_unit, load_partial_comp_unit)
7761         (psymtab_to_symtab_1): Update.
7762         (load_full_comp_unit): Add skip_partial parameter.
7763         (process_imported_unit_die, dwarf2_read_addr_index)
7764         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
7765         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
7766         (read_signatured_type): Update.
7767
7768 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
7769
7770         * value.c (release_value): Remove unused variable.
7771         (record_latest_value): Likewise.
7772         (access_value_history): Likewise.
7773         (preserve_values): Likewise.
7774
7775 2018-05-17  Tom Tromey  <tom@tromey.com>
7776
7777         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
7778         Initialize.
7779
7780 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
7781
7782         PR gdb/22286
7783         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
7784         Also handle registers whose width is not a multiple of
7785         PTRACE_TYPE_RET.
7786         (linux_nat_trad_target::store_register): Likewise.
7787
7788 2018-05-16  Tom Tromey  <tom@tromey.com>
7789
7790         * gdbcore.h (core_bfd): Redefine.
7791         * corelow.c (core_target::close): Update.
7792         (core_target_open): Update.
7793         * progspace.h (struct program_space) <cbfd>: Now a
7794         gdb_bfd_ref_ptr.
7795
7796 2018-05-16  Tom Tromey  <tom@tromey.com>
7797
7798         PR cli/19551:
7799         * symfile-add-flags.h (enum symfile_add_flags)
7800         <SYMFILE_NOT_FILENAME>: New constant.
7801         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
7802         objfile name from BFD.
7803         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
7804         * minidebug.c (find_separate_debug_file_in_section): Put
7805         ".gnu_debugdata" into BFD's file name.
7806
7807 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
7808
7809         * regcache.c (regcache_read_ftype, regcache_write_ftype):
7810         Remove.
7811
7812 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
7813
7814         PR binutils/21446
7815         * aarch64-tdep.c (aarch64_analyze_prologue,
7816         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
7817         Indicate not interested in errors.
7818
7819 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
7820
7821         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
7822         Supply the MIPS_ZERO_REGNUM register.
7823
7824 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
7825
7826         * mips-tdep.c (mask_address_var): Make variable static.
7827
7828 2018-05-14  Tom Tromey  <tom@tromey.com>
7829
7830         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
7831
7832 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
7833
7834         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
7835         FXSAVE_ADDR for the mxcsr register.
7836
7837 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
7838
7839         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
7840
7841 2018-05-11  Pedro Alves  <palves@redhat.com>
7842
7843         * corelow.c (core_target) <core_target>: No longer inline.
7844         Initialize m_core_gdbarch, m_core_vec and build the section table
7845         here.
7846         <~core_target>: New.
7847         <core_gdbarch, get_core_register_section>: New methods.
7848         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
7849         factored out from ...
7850         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
7851         (core_ops): Delete.
7852         (sniff_core_bfd): Add gdbarch parameter.
7853         (core_close): Delete, merged into ...
7854         (core_target::close): ... here.  Delete self.
7855         (core_close_cleanup): Delete.
7856         (core_target_open): Allocate a core_target on the heap.  Use a
7857         unique_ptr instead of a cleanup.  Bits moved into the core_target
7858         ctor.  Adjust to use core_target methods instead of globals.
7859         (get_core_register_section): Rename to ...
7860         (core_target::get_core_register_section): ... this and adjust.
7861         (struct get_core_registers_cb_data): New.
7862         (get_core_registers_cb): Use it.  Use bool.
7863         (core_target::fetch_registers, core_target::files_info)
7864         (core_target::xfer_partial, core_target::read_description)
7865         (core_target::pid_to, core_target::thread_name): Adjust to
7866         reference class fields instead of globals.
7867         * target.h (struct target_ops_deleter, target_ops_up): New.
7868
7869 2018-05-11  Pedro Alves  <palves@redhat.com>
7870
7871         * corefile.c (core_file_command): Move to corelow.c.
7872         * corelow.c (the_core_target): Delete.
7873         (core_file_command): Moved from corefile.c.  Check exec_bfd
7874         instead of the_core_target.  Use target_detach instead of calling
7875         into the_core_target directly.
7876         (maybe_say_no_core_file_now): New.
7877         (core_target::detach): Use it.
7878         (_initialize_corelow): Remove references to the_core_target.
7879         * gdbcore.h (the_core_target): Delete.
7880
7881 2018-05-11  Tom Tromey  <tromey@redhat.com>
7882             Pedro Alves  <palves@redhat.com>
7883
7884         * corefile.c (core_bfd): Remove.
7885         * gdbcore.h (core_bfd): Now a macro.
7886         * progspace.h (struct program_space) <cbfd>: New field.
7887
7888 2018-05-11  Tom Tromey  <tom@tromey.com>
7889
7890         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
7891         gdb::def_vector.
7892
7893 2018-05-10  Tom Tromey  <tom@tromey.com>
7894
7895         * configure: Rebuild.
7896         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
7897
7898 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
7899
7900         PR server/23158:
7901         * regformats/regdat.sh: Adjust script, following the addition
7902         of the new expedite_regs parameter to init_target_desc.
7903
7904 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
7905     
7906         PR gdb/23127
7907         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
7908         set_gdbarch_significant_addr_bit.
7909         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
7910         set_gdbarch_significant_addr_bit.
7911         * utils.c (address_significant): Update to sign extend addr.
7912
7913 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
7914
7915         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
7916         (xtensa_linux_init_abi): Limit tdep->num_regs by
7917         tdep->num_nopriv_regs.
7918         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
7919         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
7920         not initialized.
7921
7922 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
7923
7924         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
7925
7926 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
7927
7928         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
7929         (I387_MXCSR_INIT_VAL): New constant.
7930         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
7931         buffer if it was supplied by the inferior.
7932         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
7933         (i387_xsave_get_clear_bv): New function.
7934         (i387_supply_xsave): Only read x87 control registers from the
7935         xsave buffer if the feature is enabled, and the state will have
7936         been written, otherwise, provide a suitable default.
7937         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
7938         including x87 control registers.  Update control registers if they
7939         have changed from the default value, and mark features as enabled
7940         as required.
7941         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
7942
7943 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
7944
7945         * spu-tdep.c (info_spu_event_command): Fix output formatting.
7946
7947 2018-05-07  Tom Tromey  <tom@tromey.com>
7948
7949         * configure: Rebuild.
7950         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
7951
7952 2018-05-07  Tom Tromey  <tom@tromey.com>
7953
7954         PR tdep/20362:
7955         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
7956         bit.  Use correct value for VDIV.
7957
7958 2018-05-04  Tom Tromey  <tom@tromey.com>
7959
7960         * configure: Rebuild.
7961         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
7962
7963 2018-05-04  Tom Tromey  <tom@tromey.com>
7964
7965         * linux-record.c (record_linux_system_call) <case
7966         RECORD_SYS_RECVFROM>: Add "break".
7967
7968 2018-05-04  Tom Tromey  <tom@tromey.com>
7969
7970         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
7971         Add missing "break".
7972         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
7973         Add missing "break".
7974
7975 2018-05-04  Tom Tromey  <tom@tromey.com>
7976
7977         * rs6000-tdep.c (ppc_process_record_op4)
7978         (ppc_process_record_op63): Add fall-through comment.
7979
7980 2018-05-04  Tom Tromey  <tom@tromey.com>
7981
7982         * i386-tdep.c (i386_process_record): Add fall-through comment.
7983
7984 2018-05-04  Tom Tromey  <tom@tromey.com>
7985
7986         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
7987         comment.
7988
7989 2018-05-04  Tom Tromey  <tom@tromey.com>
7990
7991         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
7992         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
7993         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
7994         comment.
7995         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
7996         comment.
7997         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
7998         comment.
7999
8000 2018-05-04  Tom Tromey  <tom@tromey.com>
8001
8002         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
8003
8004 2018-05-04  Tom Tromey  <tom@tromey.com>
8005
8006         * s390-tdep.c (s390_process_record): Fix fall-through comments.
8007         * xcoffread.c (scan_xcoff_symtab): Move comment later.
8008         * symfile.c (section_is_mapped): Fix fall-through comment.
8009         * stabsread.c (define_symbol, read_member_functions): Fix
8010         fall-through comment.
8011         * s390-linux-tdep.c (s390_process_record): Fix fall-through
8012         comment.
8013         * remote.c (remote_wait_as): Fix fall-through comment.
8014         * p-exp.y (yylex): Fix fall-through comment.
8015         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
8016         comment.
8017         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
8018         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
8019         * jv-exp.y (yylex): Fix fall-through comment.
8020         * go-exp.y (lex_one_token): Fix fall-through comment.
8021         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
8022         fall-through comment.
8023         * f-exp.y (yylex): Fix fall-through comment.
8024         * dwarf2read.c (process_die): Fix fall-through comments.
8025         * dbxread.c (process_one_symbol): Fix fall-through comment.
8026         * d-exp.y (lex_one_token): Fix fall-through comment.
8027         * cp-name-parser.y (yylex): Fix fall-through comment.
8028         * coffread.c (coff_symtab_read): Fix fall-through comment.
8029         * c-exp.y (lex_one_token): Fix fall-through comment.
8030         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
8031         comment.
8032         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
8033         comment.
8034
8035 2018-05-04  Tom Tromey  <tom@tromey.com>
8036
8037         PR python/22730:
8038         * NEWS: Mention gdb.execute change.
8039         * gdbcmd.h (execute_control_command): Don't declare.
8040         * python/python.c (execute_gdb_command): Use read_command_lines_1,
8041         execute_control_commands, execute_control_commands_to_string.
8042         * cli/cli-script.h (execute_control_commands)
8043         (execute_control_commands_to_string): Declare.
8044         (execute_control_command): Add from_tty parameter.
8045         * cli/cli-script.c (execute_control_commands)
8046         (execute_control_commands_to_string): New functions.
8047         (execute_user_command): Use execute_control_commands.
8048         (execute_control_command_1): Add "from_tty" parameter.  Update.
8049         (execute_control_command): Likewise.
8050
8051 2018-05-04  Tom Tromey  <tom@tromey.com>
8052
8053         PR python/22731:
8054         * NEWS: Mention that breakpoint commands are writable.
8055         * python/py-breakpoint.c (bppy_set_commands): New function.
8056         (breakpoint_object_getset) <"commands">: Use it.
8057
8058 2018-05-04  Tom Tromey  <tom@tromey.com>
8059
8060         * tracepoint.c (actions_command): Update.
8061         * mi/mi-cmd-break.c (mi_command_line_array)
8062         (mi_command_line_array_cnt, mi_command_line_array_ptr)
8063         (mi_read_next_line): Remove.
8064         (mi_cmd_break_commands): Update.
8065         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
8066         function_view.
8067         * cli/cli-script.c (get_command_line): Update.
8068         (process_next_line): Use function_view.  Constify.
8069         (recurse_read_control_structure, read_command_lines)
8070         (read_command_lines_1): Change argument types to function_view.
8071         (do_define_command, document_command): Update.
8072         * breakpoint.h (check_tracepoint_command): Don't declare.
8073         * breakpoint.c (check_tracepoint_command): Remove.
8074         (commands_command_1, create_tracepoint_from_upload): Update.
8075
8076 2018-05-04  Tom Tromey  <tom@tromey.com>
8077
8078         PR gdb/11750:
8079         * cli/cli-script.h (enum command_control_type) <define_control>:
8080         New constant.
8081         * cli/cli-script.c (multi_line_command_p): Handle define_control.
8082         (build_command_line, execute_control_command_1)
8083         (process_next_line): Likewise.
8084         (do_define_command): New function, extracted from define_command.
8085         (define_command): Use it.
8086
8087 2018-05-04  Tom Tromey  <tom@tromey.com>
8088
8089         * tracepoint.c (actions_command): Update.
8090         * cli/cli-script.h (read_command_lines): Update.
8091         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
8092         (MAX_TMPBUF): Remove define.
8093         (define_command): Use string_printf.
8094         (document_command): Likewise.
8095         * breakpoint.c (commands_command_1): Update.
8096
8097 2018-05-04  Tom Tromey  <tom@tromey.com>
8098
8099         * top.c (execute_command): Update.
8100         * cli/cli-script.h (print_command_lines): Now varargs.
8101         * cli/cli-script.c (print_command_lines): Now varargs.
8102         (execute_control_command_1) <case while_control, case if_control>:
8103         Update.
8104
8105 2018-05-04  Tom Tromey  <tom@tromey.com>
8106
8107         * tracepoint.c (all_tracepoint_actions): Rename from
8108         all_tracepoint_actions_and_cleanup.  Change return type.
8109         (actions_command, encode_actions_1, encode_actions)
8110         (trace_dump_actions, tdump_command): Update.
8111         * remote.c (remote_download_command_source): Update.
8112         * python/python.c (gdbpy_eval_from_control_command)
8113         (python_command, python_interactive_command): Update.
8114         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
8115         * guile/guile.c (guile_command)
8116         (gdbscm_eval_from_control_command, guile_command): Update.
8117         * compile/compile.c (compile_code_command)
8118         (compile_print_command, compile_to_object): Update.
8119         * cli/cli-script.h (struct command_lines_deleter): New.
8120         (counted_command_line): New typedef.
8121         (struct command_line): Add constructor, destructor.
8122         <body_list>: Remove.
8123         <body_list_0, body_list_1>: New members.
8124         (command_line_up): Remove typedef.
8125         (read_command_lines, read_command_lines_1, get_command_line):
8126         Update.
8127         (copy_command_lines): Don't declare.
8128         * cli/cli-script.c (build_command_line): Use "new".
8129         (get_command_line): Return counted_command_line.
8130         (print_command_lines, execute_user_command)
8131         (execute_control_command_1, while_command, if_command): Update.
8132         (realloc_body_list): Remove.
8133         (process_next_line, recurse_read_control_structure): Update.
8134         (read_command_lines, read_command_lines_1): Return counted_command_line.
8135         (free_command_lines): Use "delete".
8136         (copy_command_lines): Remove.
8137         (define_command, document_command, show_user_1): Update.
8138         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
8139         a counted_command_line.
8140         * breakpoint.h (counted_command_line): Remove typedef.
8141         (breakpoint_set_commands): Update.
8142         * breakpoint.c (check_no_tracepoint_commands)
8143         (validate_commands_for_breakpoint): Update.
8144         (breakpoint_set_commands): Change commands to be a
8145         counted_command_line.
8146         (commands_command_1, update_dprintf_command_list)
8147         (create_tracepoint_from_upload): Update.
8148
8149 2018-05-04  Tom Tromey  <tom@tromey.com>
8150
8151         * cli/cli-decode.h (cmd_list_element): New constructor.
8152         (~cmd_list_element): New destructor.
8153         (struct cmd_list_element): Add initializers.
8154         * cli/cli-decode.c (do_add_cmd): Use "new".
8155         (delete_cmd): Use "delete".
8156
8157 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
8158             Pedro Alves <palves@redhat.com>
8159
8160         PR breakpoints/19806 and support for PR external/20207.
8161         * NEWS: Mention Aarch64 watchpoint improvements.
8162         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
8163         watchpoints and PR external/20207 watchpoints.
8164         * nat/aarch64-linux-hw-point.c
8165         (kernel_supports_any_contiguous_range): New.
8166         (aarch64_watchpoint_offset): New.
8167         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
8168         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
8169         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
8170         (aarch64_align_watchpoint): New parameters aligned_offset_p and
8171         next_addr_orig_p.  Support PR external/20207 watchpoints.
8172         (aarch64_downgrade_regs): New.
8173         (aarch64_dr_state_insert_one_point): New parameters offset and
8174         addr_orig.
8175         (aarch64_dr_state_remove_one_point): Likewise.
8176         (aarch64_handle_breakpoint): Update caller.
8177         (aarch64_handle_aligned_watchpoint): Likewise.
8178         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
8179         aligned_offset.
8180         (aarch64_linux_set_debug_regs): Remove const from state.  Call
8181         aarch64_downgrade_regs.
8182         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
8183         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
8184         (DR_CONTROL_MASK): ... this.
8185         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
8186         (unsigned int aarch64_watchpoint_offset): New prototype.
8187         (aarch64_linux_set_debug_regs): Remove const from state.
8188         * utils.c (align_up, align_down): Move to ...
8189         * common/common-utils.c (align_up, align_down): ... here.
8190         * utils.h (align_up, align_down): Move to ...
8191         * common/common-utils.h (align_up, align_down): ... here.
8192
8193 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
8194
8195         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
8196         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
8197         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
8198         Re-implement to match the ABI as summarized in GCC's
8199         gcc/config/sparc/sparc.c.  All callers updated.
8200         (sparc32_store_arguments): Remove assertion.
8201
8202 2018-05-04  Tom Tromey  <tom@tromey.com>
8203
8204         * printcmd.c: Don't include tui.h.
8205         (decode_format): Use skip_spaces.
8206
8207 2018-05-04  Tom Tromey  <tom@tromey.com>
8208
8209         PR gdb/22619:
8210         * printcmd.c (last_count): New global.
8211         (x_command): Use saved count when repeating.
8212
8213 2018-05-04  Tom Tromey  <tom@tromey.com>
8214
8215         * nto-procfs.c (do_closedir_cleanup): Remove.
8216         (procfs_pidlist): Use gdb_dir_up.
8217         * procfs.c (do_closedir_cleanup): Remove.
8218         (proc_update_threads): Use gdb_dir_up.
8219         * common/filestuff.h (struct gdb_dir_deleter): New.
8220         (gdb_dir_up): New typedef.
8221
8222 2018-05-04  Tom Tromey  <tom@tromey.com>
8223
8224         * ada-lang.c (print_mention_exception): Use std::string.
8225
8226 2018-05-04  Tom Tromey  <tom@tromey.com>
8227
8228         * ada-lang.c (create_excep_cond_exprs): Update.
8229         (ada_exception_catchpoint_cond_string): Use std::string.
8230
8231 2018-05-04  Tom Tromey  <tom@tromey.com>
8232
8233         * ada-lang.c (xget_renaming_scope): Return std::string.
8234         (old_renaming_is_invisible): Update.
8235
8236 2018-05-04  Tom Tromey  <tom@tromey.com>
8237
8238         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
8239         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
8240
8241 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
8242
8243         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
8244
8245 2018-05-04  Tom Tromey  <tom@tromey.com>
8246
8247         * remote.c (remote_query_supported_append): Change type.
8248         (remote_check_symbols): Update.
8249
8250 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
8251
8252         PR gdb/11420
8253         * configure.ac: Prepend libpython.
8254         * python/python-config.py: Likewise.
8255         * configure: Regenerate.
8256
8257 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
8258
8259         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
8260
8261 2018-05-03  Pedro Alves  <palves@redhat.com>
8262
8263         * s390-linux-nat.c
8264         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
8265         override.  Write 'true' instead of '1'.
8266         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
8267         declaration.
8268
8269 2018-05-02  Pedro Alves  <palves@redhat.com>
8270
8271         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
8272         add_inf_child_target.
8273         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
8274         add_inf_child_target.
8275         * aix-thread.c (aix_thread_target_info): New.
8276         (aix_thread_target) <shortname, longname, doc>: Delete.
8277         <info>: New.
8278         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
8279         add_inf_child_target.
8280         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
8281         add_inf_child_target.
8282         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
8283         add_inf_child_target.
8284         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
8285         add_inf_child_target.
8286         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
8287         add_inf_child_target.
8288         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
8289         add_inf_child_target.
8290         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
8291         add_inf_child_target.
8292         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
8293         add_inf_child_target.
8294         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
8295         add_inf_child_target.
8296         * bfd-target.c (target_bfd_target_info): New.
8297         (target_bfd) <shortname, longname, doc>: Delete.
8298         <info>: New.
8299         * bsd-kvm.c (bsd_kvm_target_info): New.
8300         (bsd_kvm_target) <shortname, longname, doc>: Delete.
8301         <info>: New.
8302         (bsd_kvm_target::open): Rename to ...
8303         (bsd_kvm_target_open): ... this.  Adjust.
8304         * bsd-uthread.c (bsd_uthread_target_info): New.
8305         (bsd_uthread_target) <shortname, longname, doc>: Delete.
8306         <info>: New.
8307         * corefile.c (core_file_command): Adjust.
8308         * corelow.c (core_target_info): New.
8309         (core_target) <shortname, longname, doc>: Delete.
8310         <info>: New.
8311         (core_target::open): Rename to ...
8312         (core_target_open): ... this.  Adjust.
8313         * ctf.c (ctf_target_info): New.
8314         (ctf_target) <shortname, longname, doc>: Delete.
8315         <info>: New.
8316         (ctf_target::open): Rename to ...
8317         (ctf_target_open): ... this.
8318         (_initialize_ctf): Adjust.
8319         * exec.c (exec_target_info): New.
8320         (exec_target) <shortname, longname, doc>: Delete.
8321         <info>: New.
8322         (exec_target::open): Rename to ...
8323         (exec_target_open): ... this.
8324         * gdbcore.h (core_target_open): Declare.
8325         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
8326         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
8327         add_inf_child_target.
8328         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
8329         add_inf_child_target.
8330         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
8331         add_inf_child_target.
8332         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
8333         add_inf_child_target.
8334         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
8335         add_inf_child_target.
8336         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
8337         add_inf_child_target.
8338         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
8339         add_inf_child_target.
8340         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
8341         add_inf_child_target.
8342         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
8343         add_inf_child_target.
8344         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
8345         add_inf_child_target.
8346         * inf-child.c (inf_child_target_info): New.
8347         (inf_child_target::info): New.
8348         (inf_child_open_target): Remove 'target' parameter.  Use
8349         get_native_target instead.
8350         (inf_child_target::open): Delete.
8351         (add_inf_child_target): New.
8352         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
8353         Delete.
8354         <info>: New.
8355         (add_inf_child_target): Declare.
8356         (inf_child_open_target): Declare.
8357         * linux-thread-db.c (thread_db_target_info): New.
8358         (thread_db_target) <shortname, longname, doc>: Delete.
8359         <info>: New.
8360         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
8361         add_inf_child_target.
8362         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
8363         add_inf_child_target.
8364         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
8365         add_inf_child_target.
8366         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
8367         add_inf_child_target.
8368         * make-target-delegates (print_class): Adjust.
8369         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
8370         add_inf_child_target.
8371         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
8372         add_inf_child_target.
8373         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
8374         add_inf_child_target.
8375         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
8376         add_inf_child_target.
8377         * nto-procfs.c (nto_native_target_info): New.
8378         (nto_procfs_target_native) <shortname, longname, doc>:
8379         Delete.
8380         <info>: New.
8381         (nto_procfs_target_info): New.
8382         (nto_procfs_target_procfs) <shortname, longname, doc>:
8383         Delete.
8384         <info>: New.
8385         (init_procfs_targets): Adjust.
8386         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
8387         add_inf_child_target.
8388         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
8389         add_inf_child_target.
8390         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
8391         add_inf_child_target.
8392         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
8393         add_inf_child_target.
8394         * ravenscar-thread.c (ravenscar_target_info): New.
8395         (ravenscar_thread_target) <shortname, longname, doc>:
8396         Delete.
8397         <info>: New.
8398         * record-btrace.c (record_btrace_target_info):
8399         (record_btrace_target) <shortname, longname, doc>: Delete.
8400         <info>: New.
8401         (record_btrace_target::open): Rename to ...
8402         (record_btrace_target_open): ... this.  Adjust.
8403         * record-full.c (record_longname, record_doc): New.
8404         (record_full_base_target) <shortname, longname, doc>: Delete.
8405         <info>: New.
8406         (record_full_target_info): New.
8407         (record_full_target): <shortname>: Delete.
8408         <info>: New.
8409         (record_full_core_open_1, record_full_open_1): Update comments.
8410         (record_full_base_target::open): Rename to ...
8411         (record_full_open): ... this.
8412         (cmd_record_full_restore): Update.
8413         (_initialize_record_full): Update.
8414         * remote-sim.c (remote_sim_target_info): New.
8415         (gdbsim_target) <shortname, longname, doc>: Delete.
8416         <info>: New.
8417         (gdbsim_target::open): Rename to ...
8418         (gdbsim_target_open): ... this.
8419         (_initialize_remote_sim): Adjust.
8420         * remote.c (remote_doc): New.
8421         (remote_target_info): New.
8422         (remote_target) <shortname, longname, doc>: Delete.
8423         <info>: New.
8424         (extended_remote_target_info): New.
8425         (extended_remote_target) <shortname, longname, doc>: Delete.
8426         <info>: New.
8427         (remote_target::open_1): Make static.  Adjust.
8428         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
8429         * s390-linux-nat.c (_initialize_s390_nat): Use
8430         add_inf_child_target.
8431         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
8432         add_inf_child_target.
8433         * sol-thread.c (thread_db_target_info): New.
8434         (sol_thread_target) <shortname, longname, doc>: Delete.
8435         <info>: New.
8436         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
8437         add_inf_child_target.
8438         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
8439         add_inf_child_target.
8440         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
8441         add_inf_child_target.
8442         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
8443         add_inf_child_target.
8444         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
8445         add_inf_child_target.
8446         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
8447         add_inf_child_target.
8448         * spu-linux-nat.c (_initialize_spu_nat): Use
8449         add_inf_child_target.
8450         * spu-multiarch.c (spu_multiarch_target_info): New.
8451         (spu_multiarch_target) <shortname, longname, doc>: Delete.
8452         <info>: New.
8453         * target-delegates.c: Regenerate.
8454         * target.c: Include <unordered_map>.
8455         (target_ops_p): Delete.
8456         (DEF_VEC_P(target_ops_p)): Delete.
8457         (target_factories): New.
8458         (test_target_info): New.
8459         (test_target_ops::info): New.
8460         (open_target): Adjust to use target_factories.
8461         (add_target_with_completer): Rename to ...
8462         (add_target): ... this.  Change prototype.  Register target_info
8463         and open callback in target_factories.  Register target_info in
8464         command context instead of target_ops.
8465         (add_target): Delete old implementation.
8466         (add_deprecated_target_alias): Change prototype.  Adjust.
8467         (the_native_target): New.
8468         (set_native_target, get_native_target): New.
8469         (find_default_run_target): Use the_native_target.
8470         (find_attach_target, find_run_target): Simplify.
8471         (target_ops::open): Delete.
8472         (dummy_target_info): New.
8473         (dummy_target::shortname, dummy_target::longname)
8474         (dummy_target::doc): Delete.
8475         (dummy_target::info): New.
8476         (debug_target::shortname, debug_target::longname)
8477         (debug_target::doc): Delete.
8478         (debug_target::info): New.
8479         * target.h (struct target_info): New.
8480         (target_ops::~target_ops): Add comment.
8481         (target_ops::info): New.
8482         (target_ops::shortname, target_ops::longname, target_ops::doc): No
8483         longer virtual.  Implement in terms of target_info.
8484         (set_native_target, get_native_target): Declare.
8485         (target_open_ftype): New.
8486         (add_target, add_target_with_completer)
8487         (add_deprecated_target_alias): Change prototype.
8488         (test_target) <shortname, longname, doc>: Delete.
8489         <info>: New.
8490         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
8491         add_inf_child_target.
8492         * tracefile-tfile.c (tfile_target_info): New.
8493         (tfile_target) <shortname, longname, doc>: Delete.
8494         <info>: New.
8495         (tfile_target::open): Rename to ...
8496         (tfile_target_open): ... this.
8497         (_initialize_tracefile_tfile): Adjust.
8498         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
8499         add_inf_child_target.
8500         * windows-nat.c (_initialize_windows_nat): Use
8501         add_inf_child_target.
8502         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
8503         add_inf_child_target.
8504
8505 2018-05-02  Pedro Alves  <palves@redhat.com>
8506
8507         * linux-nat.h (linux_nat_target) <low_new_thread,
8508         low_delete_thread, low_new_fork, low_forget_process,
8509         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
8510         New virtual methods.
8511         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8512         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
8513         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
8514         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8515         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
8516         Delete.
8517         * linux-fork.c (delete_fork): Adjust to call low method.
8518         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
8519         (linux_nat_new_fork, linux_nat_forget_process_hook)
8520         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
8521         (linux_nat_status_is_event):
8522         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
8523         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
8524         to call low method.
8525         (sigtrap_is_event): Rename to ...
8526         (linux_nat_target::low_status_is_event): ... this.
8527         (linux_nat_set_status_is_event): Delete.
8528         (save_stop_reason, linux_nat_wait_1)
8529         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
8530         low methods.
8531         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8532         (linux_nat_set_new_fork, linux_nat_set_forget_process)
8533         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8534         (linux_nat_set_prepare_to_resume): Delete.
8535         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
8536         low virtual methods.
8537         * amd64-linux-nat.c: Likewise.
8538         * arm-linux-nat.c: Likewise.
8539         * i386-linux-nat.c: Likewise.
8540         * ia64-linux-nat.c: Likewise.
8541         * mips-linux-nat.c: Likewise.
8542         * ppc-linux-nat.c: Likewise.
8543         * s390-linux-nat.c: Likewise.
8544         * sparc64-linux-nat.c: Likewise.
8545         * x86-linux-nat.c: Likewise.
8546         * x86-linux-nat.h: Include "nat/x86-linux.h".
8547         (x86_linux_nat_target) <low_new_fork, low_forget_process,
8548         low_prepare_to_resume, low_new_thread, low_delete_thread>:
8549         Override methods.
8550
8551 2018-05-02  Pedro Alves  <palves@redhat.com>
8552
8553         * target.h (target_ops)
8554         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
8555         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
8556         stopped_by_watchpoint, have_continuable_watchpoint,
8557         stopped_data_address, watchpoint_addr_within_range,
8558         can_accel_watchpoint_condition, can_run, thread_alive,
8559         has_all_memory, has_memory, has_stack, has_registers,
8560         has_execution, can_async_p, is_async_p, supports_non_stop,
8561         always_non_stop_p, can_execute_reverse, supports_multi_process,
8562         supports_enable_disable_tracepoint,
8563         supports_disable_randomization, supports_string_tracing,
8564         supports_evaluation_of_breakpoint_conditions,
8565         can_run_breakpoint_commands, filesystem_is_local,
8566         can_download_tracepoint, get_trace_state_variable_value,
8567         set_trace_notes, get_tib_address, use_agent, can_use_agent,
8568         record_is_replaying, record_will_replay,
8569         augmented_libraries_svr4_read>: Adjust to return bool.
8570         * aarch64-linux-nat.c: All implementations adjusted.
8571         * aix-thread.c: All implementations adjusted.
8572         * arm-linux-nat.c: All implementations adjusted.
8573         * breakpoint.c: All implementations adjusted.
8574         * bsd-kvm.c: All implementations adjusted.
8575         * bsd-uthread.c: All implementations adjusted.
8576         * corelow.c: All implementations adjusted.
8577         * ctf.c: All implementations adjusted.
8578         * darwin-nat.c: All implementations adjusted.
8579         * darwin-nat.h: All implementations adjusted.
8580         * exec.c: All implementations adjusted.
8581         * fbsd-nat.c: All implementations adjusted.
8582         * fbsd-nat.h: All implementations adjusted.
8583         * gnu-nat.c: All implementations adjusted.
8584         * gnu-nat.h: All implementations adjusted.
8585         * go32-nat.c: All implementations adjusted.
8586         * ia64-linux-nat.c: All implementations adjusted.
8587         * inf-child.c: All implementations adjusted.
8588         * inf-child.h: All implementations adjusted.
8589         * inf-ptrace.c: All implementations adjusted.
8590         * inf-ptrace.h: All implementations adjusted.
8591         * linux-nat.c: All implementations adjusted.
8592         * linux-nat.h: All implementations adjusted.
8593         * mips-linux-nat.c: All implementations adjusted.
8594         * nto-procfs.c: All implementations adjusted.
8595         * ppc-linux-nat.c: All implementations adjusted.
8596         * procfs.c: All implementations adjusted.
8597         * ravenscar-thread.c: All implementations adjusted.
8598         * record-btrace.c: All implementations adjusted.
8599         * record-full.c: All implementations adjusted.
8600         * remote-sim.c: All implementations adjusted.
8601         * remote.c: All implementations adjusted.
8602         * s390-linux-nat.c: All implementations adjusted.
8603         * sol-thread.c: All implementations adjusted.
8604         * spu-multiarch.c: All implementations adjusted.
8605         * target-delegates.c: All implementations adjusted.
8606         * target.c: All implementations adjusted.
8607         * target.h: All implementations adjusted.
8608         * tracefile-tfile.c: All implementations adjusted.
8609         * tracefile.c: All implementations adjusted.
8610         * tracefile.h: All implementations adjusted.
8611         * windows-nat.c: All implementations adjusted.
8612         * x86-linux-nat.h: All implementations adjusted.
8613         * x86-nat.h: All implementations adjusted.
8614
8615 2018-05-02  Pedro Alves  <palves@redhat.com>
8616
8617         * make-target-delegates (scan_target_h): Don't trim lines here.
8618         Replace sequences of tabs and/or whitespace with a single
8619         whitespace.
8620         (top level, parsing methods): Trim each line before processing it
8621         here.
8622
8623 2018-05-02  Pedro Alves  <palves@redhat.com>
8624             John Baldwin  <jhb@freebsd.org>
8625
8626         * target.h (enum strata) <debug_stratum>: New.
8627         (struct target_ops) <all delegation methods>: Replace by C++
8628         virtual methods, and drop "to_" prefix.  All references updated
8629         throughout.
8630         <to_shortname, to_longname, to_doc, to_data,
8631         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
8632         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
8633         virtual methods.  All references updated throughout.
8634         <can_attach, supports_terminal_ours, can_create_inferior,
8635         get_thread_control_capabilities, attach_no_wait>: New
8636         virtual methods.
8637         <insert_breakpoint, remove_breakpoint>: Now
8638         TARGET_DEFAULT_NORETURN methods.
8639         <info_proc>: Now returns bool.
8640         <to_magic>: Delete.
8641         (OPS_MAGIC): Delete.
8642         (current_target): Delete.  All references replaced by references
8643         to ...
8644         (target_stack): ... this.  New.
8645         (target_shortname, target_longname): Adjust.
8646         (target_can_run): Now a function declaration.
8647         (default_child_has_all_memory, default_child_has_memory)
8648         (default_child_has_stack, default_child_has_registers)
8649         (default_child_has_execution): Remove target_ops parameter.
8650         (complete_target_initialization): Delete.
8651         (memory_breakpoint_target): New template class.
8652         (test_target_ops): Refactor as a C++ class with virtual methods.
8653         * make-target-delegates (NAME_PART): Tighten.
8654         (POINTER_PART, CP_SYMBOL): New.
8655         (SIMPLE_RETURN_PART): Reimplement.
8656         (VEC_RETURN_PART): Expect less.
8657         (RETURN_PART, VIRTUAL_PART): New.
8658         (METHOD): Adjust to C++ virtual methods.
8659         (scan_target_h): Remove reference to C99.
8660         (dname): Output "target_ops::" prefix.
8661         (write_function_header): Adjust to output a C++ class method.
8662         (write_declaration): New.
8663         (write_delegator): Adjust to output a C++ class method.
8664         (tdname): Output "dummy_target::" prefix.
8665         (write_tdefault, write_debugmethod): Adjust to output a C++ class
8666         method.
8667         (tdefault_names, debug_names): Delete.
8668         (return_types, tdefaults, styles, argtypes_array): New.
8669         (top level): All methods are delegators.
8670         (print_class): New.
8671         (top level): Print dummy_target and debug_target classes.
8672         * target-delegates.c: Regenerate.
8673         * target-debug.h (target_debug_print_enum_info_proc_what)
8674         (target_debug_print_thread_control_capabilities)
8675         (target_debug_print_thread_info_p): New.
8676         * target.c (dummy_target): Delete.
8677         (the_dummy_target, the_debug_target): New.
8678         (target_stack): Now extern.
8679         (set_targetdebug): Push/unpush debug target.
8680         (default_child_has_all_memory, default_child_has_memory)
8681         (default_child_has_stack, default_child_has_registers)
8682         (default_child_has_execution): Remove target_ops parameter.
8683         (complete_target_initialization): Delete.
8684         (add_target_with_completer): No longer call
8685         complete_target_initialization.
8686         (target_supports_terminal_ours): Use regular delegation.
8687         (update_current_target): Delete.
8688         (push_target): No longer check magic number.  Don't call
8689         update_current_target.
8690         (unpush_target): Don't call update_current_target.
8691         (target_is_pushed): No longer check magic number.
8692         (target_require_runnable): Skip for all stratums over
8693         process_stratum.
8694         (target_ops::info_proc): New.
8695         (target_info_proc): Use find_target_at and
8696         find_default_run_target.
8697         (target_supports_disable_randomization): Use regular delegation.
8698         (target_get_osdata): Use find_target_at.
8699         (target_ops::open, target_ops::close, target_ops::can_attach)
8700         (target_ops::attach, target_ops::can_create_inferior)
8701         (target_ops::create_inferior, target_ops::can_run)
8702         (target_can_run): New.
8703         (default_fileio_target): Use regular delegation.
8704         (target_ops::fileio_open, target_ops::fileio_pwrite)
8705         (target_ops::fileio_pread, target_ops::fileio_fstat)
8706         (target_ops::fileio_close, target_ops::fileio_unlink)
8707         (target_ops::fileio_readlink): New.
8708         (target_fileio_open_1, target_fileio_unlink)
8709         (target_fileio_readlink): Always call the target method.  Handle
8710         FILEIO_ENOSYS.
8711         (return_zero, return_zero_has_execution): Delete.
8712         (init_dummy_target): Delete.
8713         (dummy_target::dummy_target, dummy_target::shortname)
8714         (dummy_target::longname, dummy_target::doc)
8715         (debug_target::debug_target, debug_target::shortname)
8716         (debug_target::longname, debug_target::doc): New.
8717         (target_supports_delete_record): Use regular delegation.
8718         (setup_target_debug): Delete.
8719         (maintenance_print_target_stack): Skip debug_stratum.
8720         (initialize_targets): Instantiate the_dummy_target and
8721         the_debug_target.
8722         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
8723         use target_stack.
8724         (target_auxv_search, fprint_target_auxv): Adjust.
8725         (info_auxv_command): Adjust to use target_stack.
8726         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
8727         * exceptions.c (print_flush): Handle a NULL target_stack.
8728         * regcache.c (target_ops_no_register): Refactor as class with
8729         virtual methods.
8730
8731         * exec.c (exec_target): New class.
8732         (exec_ops): Now an exec_target.
8733         (exec_open, exec_close_1, exec_get_section_table)
8734         (exec_xfer_partial, exec_files_info, exec_has_memory)
8735         (exec_make_note_section): Refactor as exec_target methods.
8736         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
8737         Delete.
8738         (exec_target::find_memory_regions): New.
8739         (_initialize_exec): Don't call init_exec_ops.
8740         * gdbcore.h (exec_file_clear): Delete.
8741
8742         * corefile.c (core_target): Delete.
8743         (core_file_command): Adjust.
8744         * corelow.c (core_target): New class.
8745         (the_core_target): New.
8746         (core_close): Remove target_ops parameter.
8747         (core_close_cleanup): Adjust.
8748         (core_target::close): New.
8749         (core_open, core_detach, get_core_registers, core_files_info)
8750         (core_xfer_partial, core_thread_alive, core_read_description)
8751         (core_pid_to_str, core_thread_name, core_has_memory)
8752         (core_has_stack, core_has_registers, core_info_proc): Rework as
8753         core_target methods.
8754         (ignore, core_remove_breakpoint, init_core_ops): Delete.
8755         (_initialize_corelow): Initialize the_core_target.
8756         * gdbcore.h (core_target): Delete.
8757         (the_core_target): New.
8758
8759         * ctf.c: (ctf_target): New class.
8760         (ctf_ops): Now a ctf_target.
8761         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
8762         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
8763         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
8764         methods.
8765         (init_ctf_ops): Delete.
8766         (_initialize_ctf): Don't call it.
8767         * tracefile-tfile.c (tfile_target): New class.
8768         (tfile_ops): Now a tfile_target.
8769         (tfile_open, tfile_close, tfile_files_info)
8770         (tfile_get_tracepoint_status, tfile_trace_find)
8771         (tfile_fetch_registers, tfile_xfer_partial)
8772         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
8773         Refactor as tfile_target methods.
8774         (tfile_xfer_partial_features): Remove target_ops parameter.
8775         (init_tfile_ops): Delete.
8776         (_initialize_tracefile_tfile): Don't call it.
8777         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
8778         (tracefile_has_stack, tracefile_has_registers)
8779         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
8780         tracefile_target methods.
8781         (init_tracefile_ops): Delete.
8782         (tracefile_target::tracefile_target): New.
8783         * tracefile.h: Include "target.h".
8784         (tracefile_target): New class.
8785         (init_tracefile_ops): Delete.
8786
8787         * spu-multiarch.c (spu_multiarch_target): New class.
8788         (spu_ops): Now a spu_multiarch_target.
8789         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
8790         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
8791         (spu_search_memory, spu_mourn_inferior): Refactor as
8792         spu_multiarch_target methods.
8793         (init_spu_ops): Delete.
8794         (_initialize_spu_multiarch): Remove references to init_spu_ops,
8795         complete_target_initialization.
8796
8797         * ravenscar-thread.c (ravenscar_thread_target): New class.
8798         (ravenscar_ops): Now a ravenscar_thread_target.
8799         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
8800         (ravenscar_thread_alive, ravenscar_pid_to_str)
8801         (ravenscar_fetch_registers, ravenscar_store_registers)
8802         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
8803         (ravenscar_stopped_by_hw_breakpoint)
8804         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
8805         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
8806         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
8807         methods.
8808         (init_ravenscar_thread_ops): Delete.
8809         (_initialize_ravenscar): Remove references to
8810         init_ravenscar_thread_ops and complete_target_initialization.
8811
8812         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
8813         (bsd_uthread_target): New class.
8814         (bsd_uthread_ops): Now a bsd_uthread_target.
8815         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
8816         (bsd_uthread_close, bsd_uthread_mourn_inferior)
8817         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
8818         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
8819         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
8820         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
8821         (bsd_uthread_target): Delete function.
8822         (_initialize_bsd_uthread): Remove reference to
8823         complete_target_initialization.
8824
8825         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
8826         (target_bfd): ... this new class.
8827         (target_bfd_xfer_partial, target_bfd_get_section_table)
8828         (target_bfd_close): Refactor as target_bfd methods.
8829         (target_bfd::~target_bfd): New.
8830         (target_bfd_reopen): Adjust.
8831         (target_bfd::close): New.
8832
8833         * record-btrace.c (record_btrace_target): New class.
8834         (record_btrace_ops): Now a record_btrace_target.
8835         (record_btrace_open, record_btrace_stop_recording)
8836         (record_btrace_disconnect, record_btrace_close)
8837         (record_btrace_async, record_btrace_info)
8838         (record_btrace_insn_history, record_btrace_insn_history_range)
8839         (record_btrace_insn_history_from, record_btrace_call_history)
8840         (record_btrace_call_history_range)
8841         (record_btrace_call_history_from, record_btrace_record_method)
8842         (record_btrace_is_replaying, record_btrace_will_replay)
8843         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
8844         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
8845         (record_btrace_store_registers, record_btrace_prepare_to_store)
8846         (record_btrace_to_get_unwinder)
8847         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
8848         (record_btrace_commit_resume, record_btrace_wait)
8849         (record_btrace_stop, record_btrace_can_execute_reverse)
8850         (record_btrace_stopped_by_sw_breakpoint)
8851         (record_btrace_supports_stopped_by_sw_breakpoint)
8852         (record_btrace_stopped_by_hw_breakpoint)
8853         (record_btrace_supports_stopped_by_hw_breakpoint)
8854         (record_btrace_update_thread_list, record_btrace_thread_alive)
8855         (record_btrace_goto_begin, record_btrace_goto_end)
8856         (record_btrace_goto, record_btrace_stop_replaying_all)
8857         (record_btrace_execution_direction)
8858         (record_btrace_prepare_to_generate_core)
8859         (record_btrace_done_generating_core): Refactor as
8860         record_btrace_target methods.
8861         (init_record_btrace_ops): Delete.
8862         (_initialize_record_btrace): Remove reference to
8863         init_record_btrace_ops.
8864         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
8865         the execution_direction global.
8866         (record_full_base_target, record_full_target)
8867         (record_full_core_target): New classes.
8868         (record_full_ops): Now a record_full_target.
8869         (record_full_core_ops): Now a record_full_core_target.
8870         (record_full_target::detach, record_full_target::disconnect)
8871         (record_full_core_target::disconnect)
8872         (record_full_target::mourn_inferior, record_full_target::kill):
8873         New.
8874         (record_full_open, record_full_close, record_full_async): Refactor
8875         as methods of the record_full_base_target class.
8876         (record_full_resume, record_full_commit_resume): Refactor
8877         as methods of the record_full_target class.
8878         (record_full_wait, record_full_stopped_by_watchpoint)
8879         (record_full_stopped_data_address)
8880         (record_full_stopped_by_sw_breakpoint)
8881         (record_full_supports_stopped_by_sw_breakpoint)
8882         (record_full_stopped_by_hw_breakpoint)
8883         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
8884         methods of the record_full_base_target class.
8885         (record_full_store_registers, record_full_xfer_partial)
8886         (record_full_insert_breakpoint, record_full_remove_breakpoint):
8887         Refactor as methods of the record_full_target class.
8888         (record_full_can_execute_reverse, record_full_get_bookmark)
8889         (record_full_goto_bookmark, record_full_execution_direction)
8890         (record_full_record_method, record_full_info, record_full_delete)
8891         (record_full_is_replaying, record_full_will_replay)
8892         (record_full_goto_begin, record_full_goto_end, record_full_goto)
8893         (record_full_stop_replaying): Refactor as methods of the
8894         record_full_base_target class.
8895         (record_full_core_resume, record_full_core_kill)
8896         (record_full_core_fetch_registers)
8897         (record_full_core_prepare_to_store)
8898         (record_full_core_store_registers, record_full_core_xfer_partial)
8899         (record_full_core_insert_breakpoint)
8900         (record_full_core_remove_breakpoint)
8901         (record_full_core_has_execution): Refactor
8902         as methods of the record_full_core_target class.
8903         (record_full_base_target::supports_delete_record): New.
8904         (init_record_full_ops): Delete.
8905         (init_record_full_core_ops): Delete.
8906         (record_full_save): Refactor as method of the
8907         record_full_base_target class.
8908         (_initialize_record_full): Remove references to
8909         init_record_full_ops and init_record_full_core_ops.
8910
8911         * remote.c (remote_target, extended_remote_target): New classes.
8912         (remote_ops): Now a remote_target.
8913         (extended_remote_ops): Now an extended_remote_target.
8914         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
8915         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
8916         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
8917         (remote_pass_signals, remote_set_syscall_catchpoint)
8918         (remote_program_signals, )
8919         (remote_thread_always_alive): Remove target_ops parameter.
8920         (remote_thread_alive, remote_thread_name)
8921         (remote_update_thread_list, remote_threads_extra_info)
8922         (remote_static_tracepoint_marker_at)
8923         (remote_static_tracepoint_markers_by_strid)
8924         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
8925         (remote_open): Refactor as methods of remote_target.
8926         (extended_remote_open, extended_remote_detach)
8927         (extended_remote_attach, extended_remote_post_attach):
8928         (extended_remote_supports_disable_randomization)
8929         (extended_remote_create_inferior): : Refactor as method of
8930         extended_remote_target.
8931         (remote_set_permissions, remote_open_1, remote_detach)
8932         (remote_follow_fork, remote_follow_exec, remote_disconnect)
8933         (remote_resume, remote_commit_resume, remote_stop)
8934         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
8935         (remote_terminal_ours, remote_wait, remote_fetch_registers)
8936         (remote_prepare_to_store, remote_store_registers)
8937         (remote_flash_erase, remote_flash_done, remote_files_info)
8938         (remote_kill, remote_mourn, remote_insert_breakpoint)
8939         (remote_remove_breakpoint, remote_insert_watchpoint)
8940         (remote_watchpoint_addr_within_range)
8941         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
8942         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
8943         (remote_supports_stopped_by_sw_breakpoint)
8944         (remote_stopped_by_hw_breakpoint)
8945         (remote_supports_stopped_by_hw_breakpoint)
8946         (remote_stopped_by_watchpoint, remote_stopped_data_address)
8947         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
8948         (remote_verify_memory): Refactor as methods of remote_target.
8949         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
8950         parameter.
8951         (remote_xfer_partial, remote_get_memory_xfer_limit)
8952         (remote_search_memory, remote_rcmd, remote_memory_map)
8953         (remote_pid_to_str, remote_get_thread_local_address)
8954         (remote_get_tib_address, remote_read_description): Refactor as
8955         methods of remote_target.
8956         (remote_target::fileio_open, remote_target::fileio_pwrite)
8957         (remote_target::fileio_pread, remote_target::fileio_close): New.
8958         (remote_hostio_readlink, remote_hostio_fstat)
8959         (remote_filesystem_is_local, remote_can_execute_reverse)
8960         (remote_supports_non_stop, remote_supports_disable_randomization)
8961         (remote_supports_multi_process, remote_supports_cond_breakpoints)
8962         (remote_supports_enable_disable_tracepoint)
8963         (remote_supports_string_tracing)
8964         (remote_can_run_breakpoint_commands, remote_trace_init)
8965         (remote_download_tracepoint, remote_can_download_tracepoint)
8966         (remote_download_trace_state_variable, remote_enable_tracepoint)
8967         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
8968         (remote_trace_start, remote_get_trace_status)
8969         (remote_get_tracepoint_status, remote_trace_stop)
8970         (remote_trace_find, remote_get_trace_state_variable_value)
8971         (remote_save_trace_data, remote_get_raw_trace_data)
8972         (remote_set_disconnected_tracing, remote_core_of_thread)
8973         (remote_set_circular_trace_buffer, remote_traceframe_info)
8974         (remote_get_min_fast_tracepoint_insn_len)
8975         (remote_set_trace_buffer_size, remote_set_trace_notes)
8976         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
8977         (remote_disable_btrace, remote_teardown_btrace)
8978         (remote_read_btrace, remote_btrace_conf)
8979         (remote_augmented_libraries_svr4_read, remote_load)
8980         (remote_pid_to_exec_file, remote_can_do_single_step)
8981         (remote_execution_direction, remote_thread_handle_to_thread_info):
8982         Refactor as methods of remote_target.
8983         (init_remote_ops, init_extended_remote_ops): Delete.
8984         (remote_can_async_p, remote_is_async_p, remote_async)
8985         (remote_thread_events, remote_upload_tracepoints)
8986         (remote_upload_trace_state_variables): Refactor as methods of
8987         remote_target.
8988         (_initialize_remote): Remove references to init_remote_ops and
8989         init_extended_remote_ops.
8990
8991         * remote-sim.c (gdbsim_target): New class.
8992         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
8993         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
8994         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
8995         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
8996         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
8997         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
8998         Refactor as methods of gdbsim_target.
8999         (gdbsim_ops): Now a gdbsim_target.
9000         (init_gdbsim_ops): Delete.
9001         (gdbsim_cntrl_c): Adjust.
9002         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
9003
9004         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
9005         (the_amd64_linux_nat_target): New.
9006         (amd64_linux_fetch_inferior_registers)
9007         (amd64_linux_store_inferior_registers): Refactor as methods of
9008         amd64_linux_nat_target.
9009         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
9010         * i386-linux-nat.c: Don't include "linux-nat.h".
9011         (i386_linux_nat_target): New class.
9012         (the_i386_linux_nat_target): New.
9013         (i386_linux_fetch_inferior_registers)
9014         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
9015         as methods of i386_linux_nat_target.
9016         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
9017         * inf-child.c (inf_child_ops): Delete.
9018         (inf_child_fetch_inferior_registers)
9019         (inf_child_store_inferior_registers): Delete.
9020         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
9021         methods of inf_child_target.
9022         (inf_child_target::supports_terminal_ours)
9023         (inf_child_target::terminal_init)
9024         (inf_child_target::terminal_inferior)
9025         (inf_child_target::terminal_ours_for_output)
9026         (inf_child_target::terminal_ours, inf_child_target::interrupt)
9027         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
9028         New.
9029         (inf_child_open, inf_child_disconnect, inf_child_close)
9030         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
9031         (inf_child_post_startup_inferior, inf_child_can_run)
9032         (inf_child_pid_to_exec_file): Refactor as methods of
9033         inf_child_target.
9034         (inf_child_follow_fork): Delete.
9035         (inf_child_target::can_create_inferior)
9036         (inf_child_target::can_attach): New.
9037         (inf_child_target::has_all_memory, inf_child_target::has_memory)
9038         (inf_child_target::has_stack, inf_child_target::has_registers)
9039         (inf_child_target::has_execution): New.
9040         (inf_child_fileio_open, inf_child_fileio_pwrite)
9041         (inf_child_fileio_pread, inf_child_fileio_fstat)
9042         (inf_child_fileio_close, inf_child_fileio_unlink)
9043         (inf_child_fileio_readlink, inf_child_use_agent)
9044         (inf_child_can_use_agent): Refactor as methods of
9045         inf_child_target.
9046         (return_zero, inf_child_target): Delete.
9047         (inf_child_target::inf_child_target): New.
9048         * inf-child.h: Include "target.h".
9049         (inf_child_target): Delete function prototype.
9050         (inf_child_target): New class.
9051         (inf_child_open_target, inf_child_mourn_inferior)
9052         (inf_child_maybe_unpush_target): Delete.
9053         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
9054         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
9055         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
9056         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
9057         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
9058         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
9059         (inf_ptrace_wait, inf_ptrace_xfer_partial)
9060         (inf_ptrace_thread_alive, inf_ptrace_files_info)
9061         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
9062         methods of inf_ptrace_target.
9063         (inf_ptrace_target): Delete function.
9064         * inf-ptrace.h: Include "inf-child.h".
9065         (inf_ptrace_target): Delete function declaration.
9066         (inf_ptrace_target): New class.
9067         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
9068         * linux-nat.c (linux_target): New.
9069         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
9070         (linux_nat_target::~linux_nat_target): New.
9071         (linux_child_post_attach, linux_child_post_startup_inferior)
9072         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
9073         (linux_child_remove_fork_catchpoint)
9074         (linux_child_insert_vfork_catchpoint)
9075         (linux_child_remove_vfork_catchpoint)
9076         (linux_child_insert_exec_catchpoint)
9077         (linux_child_remove_exec_catchpoint)
9078         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
9079         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
9080         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
9081         (linux_nat_stopped_data_address)
9082         (linux_nat_stopped_by_sw_breakpoint)
9083         (linux_nat_supports_stopped_by_sw_breakpoint)
9084         (linux_nat_stopped_by_hw_breakpoint)
9085         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
9086         (linux_nat_kill, linux_nat_mourn_inferior)
9087         (linux_nat_xfer_partial, linux_nat_thread_alive)
9088         (linux_nat_update_thread_list, linux_nat_pid_to_str)
9089         (linux_nat_thread_name, linux_child_pid_to_exec_file)
9090         (linux_child_static_tracepoint_markers_by_strid)
9091         (linux_nat_is_async_p, linux_nat_can_async_p)
9092         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
9093         (linux_nat_supports_multi_process)
9094         (linux_nat_supports_disable_randomization, linux_nat_async)
9095         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
9096         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
9097         (linux_nat_fileio_open, linux_nat_fileio_readlink)
9098         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
9099         methods of linux_nat_target.
9100         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
9101         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
9102         parameter.
9103         (check_stopped_by_watchpoint): Adjust.
9104         (linux_xfer_partial): Delete.
9105         (linux_target_install_ops, linux_target, linux_nat_add_target):
9106         Delete.
9107         (linux_nat_target::linux_nat_target): New.
9108         * linux-nat.h: Include "inf-ptrace.h".
9109         (linux_nat_target): New.
9110         (linux_target, linux_target_install_ops, linux_nat_add_target):
9111         Delete function declarations.
9112         (linux_target): Declare global.
9113         * linux-thread-db.c (thread_db_target): New.
9114         (thread_db_target::thread_db_target): New.
9115         (thread_db_ops): Delete.
9116         (the_thread_db_target): New.
9117         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
9118         (thread_db_update_thread_list, thread_db_pid_to_str)
9119         (thread_db_extra_thread_info)
9120         (thread_db_thread_handle_to_thread_info)
9121         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
9122         (thread_db_resume): Refactor as methods of thread_db_target.
9123         (init_thread_db_ops): Delete.
9124         (_initialize_thread_db): Remove reference to init_thread_db_ops.
9125         * x86-linux-nat.c: Don't include "linux-nat.h".
9126         (super_post_startup_inferior): Delete.
9127         (x86_linux_nat_target::~x86_linux_nat_target): New.
9128         (x86_linux_child_post_startup_inferior)
9129         (x86_linux_read_description, x86_linux_enable_btrace)
9130         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
9131         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
9132         methods of x86_linux_nat_target.
9133         (x86_linux_create_target): Delete.  Bits folded ...
9134         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
9135         pointer.
9136         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
9137         (x86_linux_nat_target): New class.
9138         (x86_linux_create_target): Delete.
9139         (x86_linux_add_target): Now takes a linux_nat_target pointer.
9140         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
9141         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
9142         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
9143         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
9144         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
9145         make extern.
9146         (x86_use_watchpoints): Delete.
9147         * x86-nat.h: Include "breakpoint.h" and "target.h".
9148         (x86_use_watchpoints): Delete.
9149         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
9150         (x86_stopped_by_watchpoint, x86_stopped_data_address)
9151         (x86_insert_watchpoint, x86_remove_watchpoint)
9152         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
9153         (x86_stopped_by_hw_breakpoint): New declarations.
9154         (x86_nat_target): New template class.
9155
9156         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
9157         (the_ppc_linux_nat_target): New.
9158         (ppc_linux_fetch_inferior_registers)
9159         (ppc_linux_can_use_hw_breakpoint)
9160         (ppc_linux_region_ok_for_hw_watchpoint)
9161         (ppc_linux_ranged_break_num_registers)
9162         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
9163         (ppc_linux_insert_mask_watchpoint)
9164         (ppc_linux_remove_mask_watchpoint)
9165         (ppc_linux_can_accel_watchpoint_condition)
9166         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
9167         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
9168         (ppc_linux_watchpoint_addr_within_range)
9169         (ppc_linux_masked_watch_num_registers)
9170         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
9171         (ppc_linux_read_description): Refactor as methods of
9172         ppc_linux_nat_target.
9173         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
9174
9175         * procfs.c (procfs_xfer_partial): Delete forward declaration.
9176         (procfs_target): New class.
9177         (the_procfs_target): New.
9178         (procfs_target): Delete function.
9179         (procfs_auxv_parse, procfs_attach, procfs_detach)
9180         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
9181         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
9182         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
9183         (procfs_create_inferior, procfs_update_thread_list)
9184         (procfs_thread_alive, procfs_pid_to_str)
9185         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
9186         (procfs_stopped_data_address, procfs_insert_watchpoint)
9187         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
9188         (proc_find_memory_regions, procfs_info_proc)
9189         (procfs_make_note_section): Refactor as methods of procfs_target.
9190         (_initialize_procfs): Adjust.
9191         * sol-thread.c (sol_thread_target): New class.
9192         (sol_thread_ops): Now a sol_thread_target.
9193         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
9194         (sol_thread_fetch_registers, sol_thread_store_registers)
9195         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
9196         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
9197         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
9198         (init_sol_thread_ops): Delete.
9199         (_initialize_sol_thread): Adjust.  Remove references to
9200         init_sol_thread_ops and complete_target_initialization.
9201
9202         * windows-nat.c (windows_nat_target): New class.
9203         (windows_fetch_inferior_registers)
9204         (windows_store_inferior_registers, windows_resume, windows_wait)
9205         (windows_attach, windows_detach, windows_pid_to_exec_file)
9206         (windows_files_info, windows_create_inferior)
9207         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
9208         (windows_close, windows_pid_to_str, windows_xfer_partial)
9209         (windows_get_tib_address, windows_get_ada_task_ptid)
9210         (windows_thread_name, windows_thread_alive): Refactor as
9211         windows_nat_target methods.
9212         (do_initial_windows_stuff): Adjust.
9213         (windows_target): Delete function.
9214         (_initialize_windows_nat): Adjust.
9215
9216         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
9217         (darwin_mourn_inferior, darwin_kill_inferior)
9218         (darwin_create_inferior, darwin_attach, darwin_detach)
9219         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
9220         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
9221         (darwin_supports_multi_process): Refactor as darwin_nat_target
9222         methods.
9223         (darwin_resume_to, darwin_files_info): Delete.
9224         (_initialize_darwin_inferior): Rename to ...
9225         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
9226         * darwin-nat.h: Include "inf-child.h".
9227         (darwin_nat_target): New class.
9228         (darwin_complete_target): Delete.
9229         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
9230         (darwin_target): New.
9231         (i386_darwin_fetch_inferior_registers)
9232         (i386_darwin_store_inferior_registers): Refactor as methods of
9233         darwin_nat_target.
9234         (darwin_complete_target): Delete, with ...
9235         (_initialize_i386_darwin_nat): ... bits factored out here.
9236
9237         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
9238         (the_alpha_linux_nat_target): New.
9239         (alpha_linux_register_u_offset): Refactor as
9240         alpha_linux_nat_target method.
9241         (_initialize_alpha_linux_nat): Adjust.
9242         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
9243         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9244         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
9245         methods of linux_nat_trad_target.
9246         (linux_trad_target): Delete.
9247         * linux-nat-trad.h (linux_trad_target): Delete function.
9248         (linux_nat_trad_target): New class.
9249         * mips-linux-nat.c (mips_linux_nat_target): New class.
9250         (super_fetch_registers, super_store_registers, super_close):
9251         Delete.
9252         (the_mips_linux_nat_target): New.
9253         (mips64_linux_regsets_fetch_registers)
9254         (mips64_linux_regsets_store_registers)
9255         (mips64_linux_fetch_registers, mips64_linux_store_registers)
9256         (mips_linux_register_u_offset, mips_linux_read_description)
9257         (mips_linux_can_use_hw_breakpoint)
9258         (mips_linux_stopped_by_watchpoint)
9259         (mips_linux_stopped_data_address)
9260         (mips_linux_region_ok_for_hw_watchpoint)
9261         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
9262         (mips_linux_close): Refactor as methods of mips_linux_nat.
9263         (_initialize_mips_linux_nat): Adjust to C++ification.
9264
9265         * aix-thread.c (aix_thread_target): New class.
9266         (aix_thread_ops): Now an aix_thread_target.
9267         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
9268         (aix_thread_fetch_registers, aix_thread_store_registers)
9269         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
9270         (aix_thread_thread_alive, aix_thread_pid_to_str)
9271         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
9272         Refactor as methods of aix_thread_target.
9273         (init_aix_thread_ops): Delete.
9274         (_initialize_aix_thread): Remove references to init_aix_thread_ops
9275         and complete_target_initialization.
9276         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
9277         (rs6000_nat_target): New class.
9278         (the_rs6000_nat_target): New.
9279         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
9280         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
9281         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
9282         (super_create_inferior): Delete.
9283         (_initialize_rs6000_nat): Adjust to C++ification.
9284
9285         * arm-linux-nat.c (arm_linux_nat_target): New class.
9286         (the_arm_linux_nat_target): New.
9287         (arm_linux_fetch_inferior_registers)
9288         (arm_linux_store_inferior_registers, arm_linux_read_description)
9289         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
9290         (arm_linux_remove_hw_breakpoint)
9291         (arm_linux_region_ok_for_hw_watchpoint)
9292         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
9293         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
9294         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
9295         arm_linux_nat_target.
9296         (_initialize_arm_linux_nat): Adjust to C++ification.
9297
9298         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
9299         (the_aarch64_linux_nat_target): New.
9300         (aarch64_linux_fetch_inferior_registers)
9301         (aarch64_linux_store_inferior_registers)
9302         (aarch64_linux_child_post_startup_inferior)
9303         (aarch64_linux_read_description)
9304         (aarch64_linux_can_use_hw_breakpoint)
9305         (aarch64_linux_insert_hw_breakpoint)
9306         (aarch64_linux_remove_hw_breakpoint)
9307         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
9308         (aarch64_linux_region_ok_for_hw_watchpoint)
9309         (aarch64_linux_stopped_data_address)
9310         (aarch64_linux_stopped_by_watchpoint)
9311         (aarch64_linux_watchpoint_addr_within_range)
9312         (aarch64_linux_can_do_single_step): Refactor as methods of
9313         aarch64_linux_nat_target.
9314         (super_post_startup_inferior): Delete.
9315         (_initialize_aarch64_linux_nat): Adjust to C++ification.
9316
9317         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
9318         (the_hppa_linux_nat_target): New.
9319         (hppa_linux_fetch_inferior_registers)
9320         (hppa_linux_store_inferior_registers): Refactor as methods of
9321         hppa_linux_nat_target.
9322         (_initialize_hppa_linux_nat): Adjust to C++ification.
9323
9324         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
9325         (the_ia64_linux_nat_target): New.
9326         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
9327         (ia64_linux_stopped_data_address)
9328         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
9329         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
9330         ia64_linux_nat_target methods.
9331         (super_xfer_partial): Delete.
9332         (_initialize_ia64_linux_nat): Adjust to C++ification.
9333
9334         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
9335         (the_m32r_linux_nat_target): New.
9336         (m32r_linux_fetch_inferior_registers)
9337         (m32r_linux_store_inferior_registers): Refactor as
9338         m32r_linux_nat_target methods.
9339         (_initialize_m32r_linux_nat): Adjust to C++ification.
9340
9341         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
9342         (the_m68k_linux_nat_target): New.
9343         (m68k_linux_fetch_inferior_registers)
9344         (m68k_linux_store_inferior_registers): Refactor as
9345         m68k_linux_nat_target methods.
9346         (_initialize_m68k_linux_nat): Adjust to C++ification.
9347
9348         * s390-linux-nat.c (s390_linux_nat_target): New class.
9349         (the_s390_linux_nat_target): New.
9350         (s390_linux_fetch_inferior_registers)
9351         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
9352         (s390_insert_watchpoint, s390_remove_watchpoint)
9353         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
9354         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
9355         (s390_auxv_parse, s390_read_description): Refactor as methods of
9356         s390_linux_nat_target.
9357         (_initialize_s390_nat): Adjust to C++ification.
9358
9359         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
9360         (the_sparc_linux_nat_target): New.
9361         (_initialize_sparc_linux_nat): Adjust to C++ification.
9362         * sparc-nat.c (sparc_fetch_inferior_registers)
9363         (sparc_store_inferior_registers): Remove target_ops parameter.
9364         * sparc-nat.h (sparc_fetch_inferior_registers)
9365         (sparc_store_inferior_registers): Remove target_ops parameter.
9366         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
9367         (the_sparc64_linux_nat_target): New.
9368         (_initialize_sparc64_linux_nat): Adjust to C++ification.
9369
9370         * spu-linux-nat.c (spu_linux_nat_target): New class.
9371         (the_spu_linux_nat_target): New.
9372         (spu_child_post_startup_inferior, spu_child_post_attach)
9373         (spu_child_wait, spu_fetch_inferior_registers)
9374         (spu_store_inferior_registers, spu_xfer_partial)
9375         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
9376         methods.
9377         (_initialize_spu_nat): Adjust to C++ification.
9378
9379         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
9380         (the_tilegx_linux_nat_target): New.
9381         (fetch_inferior_registers, store_inferior_registers):
9382         Refactor as methods.
9383         (_initialize_tile_linux_nat): Adjust to C++ification.
9384
9385         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
9386         (the_xtensa_linux_nat_target): New.
9387         (xtensa_linux_fetch_inferior_registers)
9388         (xtensa_linux_store_inferior_registers): Refactor as
9389         xtensa_linux_nat_target methods.
9390         (_initialize_xtensa_linux_nat): Adjust to C++ification.
9391
9392         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
9393         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
9394         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
9395         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
9396         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
9397         (fbsd_stopped_by_sw_breakpoint)
9398         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
9399         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
9400         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
9401         (fbsd_post_startup_inferior, fbsd_post_attach)
9402         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
9403         (fbsd_set_syscall_catchpoint)
9404         (super_xfer_partial, super_resume, super_wait)
9405         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
9406         (fbsd_handle_debug_trap): Remove target_ops parameter.
9407         (fbsd_nat_add_target): Delete.
9408         * fbsd-nat.h: Include "inf-ptrace.h".
9409         (fbsd_nat_add_target): Delete.
9410         (USE_SIGTRAP_SIGINFO): Define.
9411         (fbsd_nat_target): New class.
9412
9413         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
9414         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
9415         (amd64bsd_target): Delete.
9416         * amd64-bsd-nat.h: New file.
9417         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
9418         "x86-bsd-nat.h".
9419         (amd64_fbsd_nat_target): New class.
9420         (the_amd64_fbsd_nat_target): New.
9421         (amd64fbsd_read_description): Refactor as method of
9422         amd64_fbsd_nat_target.
9423         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9424         (_initialize_amd64fbsd_nat): Adjust to C++ification.
9425         * amd64-nat.h (amd64bsd_target): Delete function declaration.
9426         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
9427         (i386bsd_store_inferior_registers): Remove target_ops parameter.
9428         (i386bsd_target): Delete.
9429         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
9430         (i386bsd_fetch_inferior_registers)
9431         (i386bsd_store_inferior_registers): Declare.
9432         (i386_bsd_nat_target): New class.
9433         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
9434         (the_i386_fbsd_nat_target): New.
9435         (i386fbsd_resume, i386fbsd_read_description): Refactor as
9436         i386_fbsd_nat_target methods.
9437         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9438         (_initialize_i386fbsd_nat): Adjust to C++ification.
9439         * x86-bsd-nat.c (super_mourn_inferior): Delete.
9440         (x86bsd_mourn_inferior, x86bsd_target): Delete.
9441         (_initialize_x86_bsd_nat): Adjust to C++ification.
9442         * x86-bsd-nat.h: Include "x86-nat.h".
9443         (x86bsd_target): Delete declaration.
9444         (x86bsd_nat_target): New class.
9445
9446         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
9447         (the_aarch64_fbsd_nat_target): New.
9448         (aarch64_fbsd_fetch_inferior_registers)
9449         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
9450         aarch64_fbsd_nat_target.
9451         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
9452         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
9453         (the_alpha_bsd_nat_target): New.
9454         (alphabsd_fetch_inferior_registers)
9455         (alphabsd_store_inferior_registers): Refactor as
9456         alpha_bsd_nat_target methods.
9457         (_initialize_alphabsd_nat): Refactor as methods of
9458         alpha_bsd_nat_target.
9459         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
9460         (the_amd64_nbsd_nat_target): New.
9461         (_initialize_amd64nbsd_nat): Adjust to C++ification.
9462         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
9463         (the_amd64_obsd_nat_target): New.
9464         (_initialize_amd64obsd_nat): Adjust to C++ification.
9465         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
9466         (the_arm_fbsd_nat_target): New.
9467         (arm_fbsd_fetch_inferior_registers)
9468         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
9469         (_initialize_arm_fbsd_nat): Refactor as methods of
9470         arm_fbsd_nat_target.
9471         (_initialize_arm_fbsd_nat): Adjust to C++ification.
9472         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
9473         (the_arm_netbsd_nat_target): New.
9474         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
9475         arm_netbsd_nat_target.
9476         (_initialize_arm_netbsd_nat): Adjust to C++ification.
9477         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
9478         (the_hppa_nbsd_nat_target): New.
9479         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
9480         hppa_nbsd_nat_target methods.
9481         (_initialize_hppanbsd_nat): Adjust to C++ification.
9482         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
9483         (the_hppa_obsd_nat_target): New.
9484         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
9485         methods of hppa_obsd_nat_target.
9486         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
9487         add_target.
9488         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
9489         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
9490         add_target.
9491         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
9492         (_initialize_i386obsd_nat): Use add_target.
9493         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
9494         (the_m68k_bsd_nat_target): New.
9495         (m68kbsd_fetch_inferior_registers)
9496         (m68kbsd_store_inferior_registers): Refactor as methods of
9497         m68k_bsd_nat_target.
9498         (_initialize_m68kbsd_nat): Adjust to C++ification.
9499         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
9500         (the_mips_fbsd_nat_target): New.
9501         (mips_fbsd_fetch_inferior_registers)
9502         (mips_fbsd_store_inferior_registers): Refactor as methods of
9503         mips_fbsd_nat_target.
9504         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
9505         add_target.
9506         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
9507         (the_mips_nbsd_nat_target): New.
9508         (mipsnbsd_fetch_inferior_registers)
9509         (mipsnbsd_store_inferior_registers): Refactor as methods of
9510         mips_nbsd_nat_target.
9511         (_initialize_mipsnbsd_nat): Adjust to C++ification.
9512         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
9513         (the_mips64_obsd_nat_target): New.
9514         (mips64obsd_fetch_inferior_registers)
9515         (mips64obsd_store_inferior_registers): Refactor as methods of
9516         mips64_obsd_nat_target.
9517         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
9518         add_target.
9519         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
9520         nbsd_nat_target.
9521         * nbsd-nat.h: Include "inf-ptrace.h".
9522         (nbsd_nat_target): New class.
9523         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
9524         (obsd_wait): Refactor as methods of obsd_nat_target.
9525         (obsd_add_target): Delete.
9526         * obsd-nat.h: Include "inf-ptrace.h".
9527         (obsd_nat_target): New class.
9528         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
9529         (the_ppc_fbsd_nat_target): New.
9530         (ppcfbsd_fetch_inferior_registers)
9531         (ppcfbsd_store_inferior_registers): Refactor as methods of
9532         ppc_fbsd_nat_target.
9533         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
9534         add_target.
9535         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
9536         (the_ppc_nbsd_nat_target): New.
9537         (ppcnbsd_fetch_inferior_registers)
9538         (ppcnbsd_store_inferior_registers): Refactor as methods of
9539         ppc_nbsd_nat_target.
9540         (_initialize_ppcnbsd_nat): Adjust to C++ification.
9541         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
9542         (the_ppc_obsd_nat_target): New.
9543         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
9544         methods of ppc_obsd_nat_target.
9545         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
9546         add_target.
9547         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
9548         (the_sh_nbsd_nat_target): New.
9549         (shnbsd_fetch_inferior_registers)
9550         (shnbsd_store_inferior_registers): Refactor as methods of
9551         sh_nbsd_nat_target.
9552         (_initialize_shnbsd_nat): Adjust to C++ification.
9553         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
9554         (inf_ptrace_xfer_partial): Delete.
9555         (sparc_xfer_partial, sparc_target): Delete.
9556         * sparc-nat.h (sparc_fetch_inferior_registers)
9557         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
9558         (sparc_target): Delete function declaration.
9559         (sparc_target): New template class.
9560         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
9561         (_initialize_sparcnbsd_nat): Adjust to C++ification.
9562         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
9563         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
9564         add_target.
9565         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
9566         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
9567         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
9568         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
9569         add_target.
9570         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
9571         (the_vax_bsd_nat_target): New.
9572         (vaxbsd_fetch_inferior_registers)
9573         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
9574         methods.
9575         (_initialize_vaxbsd_nat): Adjust to C++ification.
9576
9577         * bsd-kvm.c (bsd_kvm_target): New class.
9578         (bsd_kvm_ops): Now a bsd_kvm_target.
9579         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
9580         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
9581         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
9582         bsd_kvm_target.
9583         (bsd_kvm_return_one): Delete.
9584         (bsd_kvm_add_target): Adjust to C++ification.
9585
9586         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
9587         (nto_procfs_target_procfs): New classes.
9588         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
9589         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
9590         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
9591         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
9592         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
9593         (procfs_remove_hw_breakpoint, procfs_resume)
9594         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
9595         (procfs_kill_inferior, procfs_store_registers)
9596         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
9597         as methods of nto_procfs_target.
9598         (nto_procfs_ops): Now an nto_procfs_target_procfs.
9599         (nto_native_ops): Delete.
9600         (procfs_open, procfs_native_open): Delete.
9601         (nto_native_ops): Now an nto_procfs_target_native.
9602         (init_procfs_targets): Adjust to C++ification.
9603         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
9604         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
9605         Refactor as methods of nto_procfs_target.
9606
9607         * go32-nat.c (go32_nat_target): New class.
9608         (the_go32_nat_target): New.
9609         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
9610         (go32_store_registers, go32_xfer_partial, go32_files_info)
9611         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
9612         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
9613         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
9614         (go32_pid_to_str): Refactor as methods of go32_nat_target.
9615         (go32_target): Delete.
9616         (_initialize_go32_nat): Adjust to C++ification.
9617
9618         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
9619         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
9620         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
9621         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
9622         gnu_nat_target.
9623         (gnu_target): Delete.
9624         * gnu-nat.h (gnu_target): Delete.
9625         (gnu_nat_target): New class.
9626         * i386-gnu-nat.c (gnu_base_target): New.
9627         (i386_gnu_nat_target): New class.
9628         (the_i386_gnu_nat_target): New.
9629         (_initialize_i386gnu_nat): Adjust to C++ification.
9630
9631 2018-05-02  Pedro Alves  <palves@redhat.com>
9632
9633         * bfd-target.c (target_bfd_xclose): Rename to ...
9634         (target_bfd_close): ... this.
9635         (target_bfd_reopen): Adjust.
9636         * target.c (target_close): Remove references to to_xclose.
9637         * target.h (target_ops::to_xclose): Delete.
9638         (target_ops::to_close): Update comments.
9639
9640 2018-05-02  Pedro Alves  <palves@redhat.com>
9641
9642         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
9643         "linux-nat.h".
9644         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
9645         * inf-ptrace.c (inf_ptrace_register_u_offset)
9646         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9647         (inf_ptrace_store_register, inf_ptrace_store_registers)
9648         (inf_ptrace_trad_target): Move to ...
9649         * linux-nat-trad.c: ... this new file.
9650         * linux-nat-trad.h: New file.
9651         * linux-nat.c (linux_target_install_ops): Make extern.
9652         (linux_trad_target): Delete.
9653         * linux-nat.h (linux_trad_target): Delete declaration.
9654         (linux_target_install_ops): Declare.
9655         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
9656         "linux-nat.h".
9657
9658 2018-05-02  Pedro Alves  <palves@redhat.com>
9659
9660         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
9661         procfs_target/add_target here.
9662         * procfs.c (procfs_target): Make static.
9663         (_initialize_procfs): Call add_target here.
9664         * procfs.h (struct target_ops): Remove forward declaration.
9665         (procfs_target): Remove declaration.
9666         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
9667
9668 2018-05-02  Pedro Alves  <palves@redhat.com>
9669
9670         * procfs.c (procfs_stopped_by_watchpoint)
9671         (procfs_insert_watchpoint, procfs_remove_watchpoint)
9672         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
9673         Forward declare.
9674         (procfs_use_watchpoints): Delete, move contents...
9675         (procfs_target): ... here.
9676         * procfs.h (procfs_use_watchpoints): Delete declaration.
9677         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
9678         procfs_use_watchpoints.
9679         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
9680         procfs_use_watchpoints.
9681
9682 2018-05-02  Tom Tromey  <tom@tromey.com>
9683
9684         PR python/20084:
9685         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
9686         and var_zuinteger_unlimited.
9687         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
9688         and PARAM_ZUINTEGER_UNLIMITED.
9689         (set_parameter_value): Handle var_zuinteger and
9690         var_zuinteger_unlimited.
9691         (add_setshow_generic): Likewise.
9692         (parmpy_init): Likewise.
9693
9694 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
9695
9696         PR rust/23124
9697         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
9698         pointer is not null before dereferencing it.
9699
9700 2018-04-30  Tom Tromey  <tom@tromey.com>
9701
9702         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
9703         is_mi_like_p.
9704
9705 2018-04-30  Tom Tromey  <tom@tromey.com>
9706
9707         * breakpoint.c (mention): Remove use of is_mi_like_p.
9708         (print_mention_ranged_breakpoint): Likewise.
9709         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
9710         of is_mi_like_p.
9711
9712 2018-04-30  Tom Tromey  <tom@tromey.com>
9713
9714         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
9715
9716 2018-04-30  Tom Tromey  <tom@tromey.com>
9717
9718         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
9719         (info_spu_event_command): Remove some uses of is_mi_like_p.
9720
9721 2018-04-30  Tom Tromey  <tom@tromey.com>
9722
9723         * python/py-framefilter.c (py_print_single_arg)
9724         (enumerate_locals, py_print_args, py_print_frame): Remove some
9725         uses of is_mi_like_p.
9726
9727 2018-04-30  Tom Tromey  <tom@tromey.com>
9728
9729         * ui-out.c: Update.
9730         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
9731         * ui-out.h (ui_out::is_mi_like_p): Now const.
9732         (ui_out::do_is_mi_like_p): Now const.
9733         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
9734
9735 2018-04-30  Tom Tromey  <tom@tromey.com>
9736
9737         * varobj.c (varobj_set_visualizer): Use new_reference.
9738         * python/python.c (gdbpy_decode_line): Use new_reference.
9739         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
9740         new_reference.
9741
9742 2018-04-30  Tom Tromey  <tom@tromey.com>
9743
9744         * varobj.c (install_new_value): Use new_reference.
9745         * value.h (value_incref): Return void.  Swap intro comment with
9746         value_decref.
9747         * value.c (set_value_parent): Use new_reference.
9748         (value_incref): Return void.  Update intro comment.
9749         (release_value): Use new_reference.
9750         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
9751
9752 2018-04-30  Tom Tromey  <tom@tromey.com>
9753
9754         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
9755         * gdb_bfd.h (new_bfd_ref): Remove.
9756         (gdb_bfd_open): Update comment.
9757         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
9758         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
9759         (gdb_bfd_fdopenr): Use new_reference.
9760         * exec.c (exec_file_attach): Use new_reference.
9761
9762 2018-04-30  Tom Tromey  <tom@tromey.com>
9763
9764         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
9765         method.
9766
9767 2018-04-30  Tom Tromey  <tom@tromey.com>
9768
9769         * jit.c (jit_read_code_entry): Use type_align.
9770         * i386-tdep.c (i386_gdbarch_init): Don't call
9771         set_gdbarch_long_long_align_bit.
9772         * gdbarch.sh: Remove long_long_align_bit.
9773         * gdbarch.c, gdbarch.h: Rebuild.
9774         * arc-tdep.c (arc_type_align): New function.
9775         (arc_gdbarch_init): Use arc_type_align.  Don't call
9776         set_gdbarch_long_long_align_bit.
9777
9778 2018-04-30  Tom Tromey  <tom@tromey.com>
9779
9780         * rust-lang.c (rust_type_alignment): Remove.
9781         (rust_composite_type): Use type_align.
9782
9783 2018-04-30  Tom Tromey  <tom@tromey.com>
9784
9785         * NEWS: Mention Type.align.
9786         * python/py-type.c (typy_get_alignof): New function.
9787         (type_object_getset): Add "alignof".
9788
9789 2018-04-30  Tom Tromey  <tom@tromey.com>
9790
9791         PR exp/17095:
9792         * NEWS: Update.
9793         * std-operator.def (UNOP_ALIGNOF): New operator.
9794         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
9795         New.
9796         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
9797         * c-lang.c (c_op_print_tab): Add alignof.
9798         * c-exp.y (ALIGNOF): New token.
9799         (exp): Add "ALIGNOF" production.
9800         (ident_tokens): Add _Alignof and alignof.
9801
9802 2018-04-30  Tom Tromey  <tom@tromey.com>
9803
9804         * i386-tdep.c (i386_type_align): New function.
9805         (i386_gdbarch_init): Update.
9806         * gdbarch.sh (type_align): New method.
9807         * gdbarch.c, gdbarch.h: Rebuild.
9808         * arch-utils.h (default_type_align): Declare.
9809         * arch-utils.c (default_type_align): New function.
9810         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
9811         (struct type) <align_log2>: New field.
9812         <instance_flags>: Now a bitfield.
9813         (TYPE_RAW_ALIGN): New macro.
9814         (type_align, type_raw_align, set_type_align): Declare.
9815         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
9816         functions.
9817         * dwarf2read.c (quirk_rust_enum): Set type alignment.
9818         (get_alignment, maybe_set_alignment): New functions.
9819         (read_structure_type, read_enumeration_type, read_array_type)
9820         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
9821         (read_subrange_type, read_base_type): Set type alignment.
9822
9823 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
9824
9825         * dwarf2read.c (read_index_from_section): Use bool.
9826
9827 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
9828
9829         PR gdb/22950
9830         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
9831         with #ifdef.
9832
9833 2018-04-29  John Reiser  <jreiser@BitWagon.com>
9834
9835         PR build/22873
9836         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
9837         last step, and do it atomically.
9838
9839 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
9840
9841         * compile/compile-c-types.c (convert_int, convert_float):
9842         Update for C FE v1.
9843
9844 2018-04-27  Tom Tromey  <tom@tromey.com>
9845
9846         PR rust/22545:
9847         * rust-lang.c (rust_inclusive_range_type_p): New function.
9848         (rust_range): Handle inclusive ranges.
9849         (rust_compute_range): Likewise.
9850         * rust-exp.y (struct rust_op) <inclusive>: New field.
9851         (DOTDOTEQ): New constant.
9852         (range_expr): Add "..=" productions.
9853         (operator_tokens): Add "..=" token.
9854         (ast_range): Add "inclusive" parameter.
9855         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
9856         ranges.
9857         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
9858         bounds values.
9859         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
9860         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
9861         Update comments.
9862         * expprint.c (print_subexp_standard): Handle new bounds values.
9863         (dump_subexp_body_standard): Likewise.
9864
9865 2018-04-27  Tom Tromey  <tom@tromey.com>
9866
9867         * configure: Rebuild.
9868         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
9869         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
9870         "OVERRIDE".
9871         (class symbol_needs_eval_context): Likewise.
9872         * dwarf2read.c (mock_mapped_index::symbol_name_count)
9873         (mock_mapped_index::symbol_name_at): Use "override".  Remove
9874         "virtual".
9875         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
9876         "override".
9877         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
9878         * aarch64-tdep.c (instruction_reader::read): Use "override".
9879         (instruction_reader_test::read): Likewise.
9880         * arm-tdep.c (instruction_reader::read): Use "override".
9881         (instruction_reader_thumb::read): Likewise.
9882
9883 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
9884
9885         PR remote/9665
9886         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
9887         instead of remote_send.
9888         (remote_send): Remove.
9889
9890 2018-04-26  Pedro Alves  <palves@redhat.com>
9891
9892         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
9893         find_function_start_sal instead of find_pc_line.
9894
9895 2018-04-26  Pedro Alves  <palves@redhat.com>
9896
9897         * breakpoint.c (set_breakpoint_location_function): Handle
9898         mst_data_gnu_ifunc.
9899         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
9900         * elfread.c (elf_symtab_read): Give data symbols with
9901         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
9902         (elf_rel_plt_read): Update comment.
9903         * linespec.c (convert_linespec_to_sals): Handle
9904         mst_data_gnu_ifunc.
9905         (minsym_found): Handle mst_data_gnu_ifunc.
9906         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
9907         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
9908         * parse.c (find_minsym_type_and_address): Handle
9909         mst_data_gnu_ifunc.
9910         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
9911         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
9912         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
9913         comment.
9914         <mst_data_gnu_ifunc>: New enumerator.
9915
9916 2018-04-26  Pedro Alves  <palves@redhat.com>
9917
9918         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
9919         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
9920         'want_trampoline' parameter by a lookup_msym_prefer parameter.
9921         Handle it.
9922         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
9923         (lookup_minimal_symbol_by_pc): Adjust.
9924         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
9925         (lookup_solib_trampoline_symbol_by_pc): Adjust.
9926         * minsyms.h (lookup_msym_prefer): New enum.
9927         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
9928         parameter by a lookup_msym_prefer parameter.
9929
9930 2018-04-26  Pedro Alves  <palves@redhat.com>
9931
9932         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
9933         ends in "@plt" instead of looking at the symbol's section.
9934
9935 2018-04-26  Pedro Alves  <palves@redhat.com>
9936
9937         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
9938         all references.
9939         (find_pc_partial_function_gnu_ifunc): Rename to ...
9940         (find_pc_partial_function): ... this, and remove references to
9941         'is_gnu_ifunc_p'.
9942         (find_pc_partial_function): Delete old implementation.
9943         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
9944
9945 2018-04-26  Pedro Alves  <palves@redhat.com>
9946
9947         * linespec.c (struct bound_minimal_symbol_search_key): New.
9948         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
9949         skip first line if we found a GNU ifunc minimal symbol by name.
9950         (compare_msymbols): Change parameters to work with a destructured
9951         lhs minsym.
9952         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
9953         functions.
9954
9955 2018-04-26  Pedro Alves  <palves@redhat.com>
9956
9957         * breakpoint.c (set_breakpoint_location_function): Don't resolve
9958         ifunc targets here.  Instead, if we have an ifunc minsym, use its
9959         address/name.
9960         (add_location_to_breakpoint): Store the minsym and the objfile in
9961         the breakpoint location.
9962         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
9963         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
9964         Record the minsym in the sal.
9965         * symtab.h (symtab_and_line) <msymbol>: New field.
9966
9967 2018-04-26  Pedro Alves  <palves@redhat.com>
9968
9969         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
9970         unless we actually resolved the ifunc.
9971
9972 2018-04-26  Pedro Alves  <palves@redhat.com>
9973
9974         * c-exp.y (variable production): Prefer ifunc minsyms over
9975         regular function symbols.
9976         * symtab.c (find_gnu_ifunc): New function.
9977         * minsyms.h (lookup_msym_prefer): New enum.
9978         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
9979         parameter by a lookup_msym_prefer parameter.
9980         * symtab.h (find_gnu_ifunc): New declaration.
9981
9982 2018-04-26  Pedro Alves  <palves@redhat.com>
9983
9984         * blockframe.c (find_gnu_ifunc_target_type): New function.
9985         (find_function_type): New.
9986         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
9987         return a value with a memory address.
9988         (eval_call): For calls to GNU ifunc functions, try to find the
9989         type of the target function from the type that the resolver
9990         returns.
9991         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
9992         symbols.
9993         * infcall.c (find_function_return_type): Delete.
9994         (find_function_addr): Add 'function_type' parameter.  For calls to
9995         GNU ifunc functions, try to find the type of the target function
9996         from the type that the resolver returns, and return it via
9997         FUNCTION_TYPE.
9998         (call_function_by_hand_dummy): Adjust to use the function type
9999         returned by find_function_addr.
10000         (find_function_addr): Add 'function_type' parameter and move
10001         description here.
10002         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
10003         declarations.
10004
10005 2018-04-26  Pedro Alves  <palves@redhat.com>
10006
10007         * c-exp.y (variable production): Skip finding an alias for ifunc
10008         symbols.
10009
10010 2018-04-26  Pedro Alves  <palves@redhat.com>
10011
10012         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
10013
10014 2018-04-25  Pedro Alves  <palves@redhat.com>
10015
10016         * infcmd.c (kill_command): Print the pid as string, not the whole
10017         thread's ptid.  Add comment.  s/has been killed/killed/ in output
10018         message.
10019         * remote.c (remote_detach_1): Print the pid as string, not the
10020         whole thread's ptid.
10021
10022 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
10023             Sergio Durigan Junior  <sergiodj@redhat.com>
10024             Pedro Alves  <palves@redhat.com>
10025
10026         * infcmd.c (kill_command): Print message when inferior has
10027         been killed.
10028         * inferior.c (print_inferior_events): Remove 'static'.  Set as
10029         '1'.
10030         (add_inferior): Improve message printed when
10031         'print_inferior_events' is on.
10032         (exit_inferior): Remove message printed when
10033         'print_inferior_events' is on.
10034         (detach_inferior): Improve message printed when
10035         'print_inferior_events' is on.
10036         (initialize_inferiors): Use 'add_inferior_silent' to set
10037         'current_inferior_'.
10038         * inferior.h (print_inferior_events): Declare here as
10039         'extern'.
10040         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
10041         '[Detaching...]' messages when 'print_inferior_events' is on.
10042         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
10043         as prefix/suffix for messages.  Remove periods.  Fix erroneous
10044         'Detaching after fork from child...', replace it by '... from
10045         parent...'.
10046         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
10047         prefix/suffix when printing 'Detaching...' messages.  Print
10048         them when 'print_inferior_events' is on.
10049         * remote.c (remote_detach_1): Print message when detaching
10050         from inferior and '!is_fork_parent'.
10051
10052 2018-04-24  Tom Tromey  <tom@tromey.com>
10053
10054         * cli-out.h: Reindent.
10055
10056 2018-04-24  Tom Tromey  <tom@tromey.com>
10057
10058         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
10059         (cli_ui_out::do_field_string): Use fputs_filtered.
10060         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
10061
10062 2018-04-23  Tom Tromey  <tom@tromey.com>
10063
10064         * guile/scm-frame.c (gdbscm_frame_read_var): Use
10065         gdb::unique_xmalloc_ptr.
10066
10067 2018-04-23  Tom Tromey  <tom@tromey.com>
10068
10069         * configure: Rebuild.
10070
10071 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
10072
10073         PR gdb/23095
10074         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
10075         prepare_for_testing.  Set normal_bp to r_debug_state if target
10076         is bsd.
10077
10078 2018-04-21  Pedro Alves  <palves@redhat.com>
10079             Rajendra SY  <rajendra.sy@gmail.com>
10080
10081         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
10082         * remote.c (extended_remote_attach): In all-stop mode, mark the
10083         thread as executing.
10084
10085 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10086
10087         * thread.c (thread_apply_all_command): Fix comment.
10088         (thread_command): Fix comment.
10089
10090 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
10091
10092         * common/tdesc.h (tdesc_create_feature): Remove xml filename
10093         parameter.
10094         * features/aarch64-core.c (create_feature_aarch64_core):
10095         Regenerate.
10096         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
10097         Likewise.
10098         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
10099         Likewise.
10100         * features/i386/32bit-avx512.c
10101         (create_feature_i386_32bit_avx512): Likewise.
10102         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
10103         Likewise.
10104         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
10105         Likewise.
10106         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
10107         Likewise.
10108         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
10109         Likewise.
10110         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
10111         Likewise.
10112         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
10113         Likewise.
10114         * features/i386/64bit-avx512.c
10115         (create_feature_i386_64bit_avx512): Likewise.
10116         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
10117         Likewise.
10118         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
10119         Likewise.
10120         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
10121         Likewise.
10122         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
10123         Likewise.
10124         * features/i386/64bit-segments.c
10125         (create_feature_i386_64bit_segments): Likewise.
10126         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
10127         Likewise.
10128         * features/i386/x32-core.c
10129         (create_feature_i386_x32_core): Likewise.
10130         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
10131         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
10132         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
10133         * target-descriptions.c: In generated code, don't pass xml
10134         filename.
10135
10136 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10137
10138         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
10139         (print_xml_feature::visit_post): Likewise.
10140         (print_xml_feature::visit): Likewise.
10141         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
10142         (print_xml_feature): Add new class.
10143         * regformats/regdat.sh: Null xmltarget on feature targets.
10144         * target-descriptions.c (struct target_desc): Add xmltarget.
10145         (maintenance_check_tdesc_xml_convert): Add unittest function.
10146         (tdesc_get_features_xml): Add function to get xml.
10147         (maintenance_check_xml_descriptions): Test xml generation.
10148         * xml-tdesc.c (string_read_description_xml): Add function.
10149         * xml-tdesc.h (string_read_description_xml): Add declaration.
10150
10151 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10152
10153         * features/Makefile: Add feature marker to targets with new style
10154         target descriptions.
10155         * regformats/aarch64.dat: Regenerate.
10156         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
10157         * regformats/i386/amd64-avx-linux.dat: Likewise.
10158         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
10159         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
10160         * regformats/i386/amd64-linux.dat: Likewise.
10161         * regformats/i386/amd64-mpx-linux.dat: Likewise.
10162         * regformats/i386/amd64.dat: Likewise.
10163         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
10164         * regformats/i386/i386-avx-linux.dat: Likewise.
10165         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
10166         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
10167         * regformats/i386/i386-linux.dat: Likewise.
10168         * regformats/i386/i386-mmx-linux.dat: Likewise.
10169         * regformats/i386/i386-mpx-linux.dat: Likewise.
10170         * regformats/i386/i386.dat: Likewise.
10171         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
10172         * regformats/i386/x32-avx-linux.dat: Likewise.
10173         * regformats/i386/x32-linux.dat: Likewise.
10174         * regformats/tic6x-c62x-linux.dat: Likewise.
10175         * regformats/tic6x-c64x-linux.dat: Likewise.
10176         * regformats/tic6x-c64xp-linux.dat: Likewise.
10177         * regformats/regdat.sh: Parse feature marker.
10178
10179 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10180
10181         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
10182         (tdesc_osabi_name): Likewise.
10183         * target-descriptions.c (tdesc_architecture_name): Add new
10184         function.
10185         (tdesc_osabi_name): Likewise.
10186
10187 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10188
10189         * common/tdesc.c (tdesc_predefined_type): Move to here.
10190         (tdesc_named_type): Likewise.
10191         (tdesc_create_vector): Likewise.
10192         (tdesc_create_struct): Likewise.
10193         (tdesc_set_struct_size): Likewise.
10194         (tdesc_create_union): Likewise.
10195         (tdesc_create_flags): Likewise.
10196         (tdesc_create_enum): Likewise.
10197         (tdesc_add_field): Likewise.
10198         (tdesc_add_typed_bitfield): Likewise.
10199         (tdesc_add_bitfield): Likewise.
10200         (tdesc_add_flag): Likewise.
10201         (tdesc_add_enum_value): Likewise.
10202         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
10203         (struct tdesc_type_vector): Likewise.
10204         (struct tdesc_type_field): Likewise.
10205         (struct tdesc_type_with_fields): Likewise.
10206         (tdesc_create_enum): Add declaration.
10207         (tdesc_add_typed_bitfield): Likewise.
10208         (tdesc_add_enum_value): Likewise.
10209         * target-descriptions.c (tdesc_type_field): Move from here.
10210         (tdesc_type_builtin): Likewise.
10211         (tdesc_type_vector): Likewise.
10212         (tdesc_type_with_fields): Likewise.
10213         (tdesc_predefined_types): Likewise.
10214         (tdesc_named_type): Likewise.
10215         (tdesc_create_vector): Likewise.
10216         (tdesc_create_struct): Likewise.
10217         (tdesc_set_struct_size): Likewise.
10218         (tdesc_create_union): Likewise.
10219         (tdesc_create_flags): Likewise.
10220         (tdesc_create_enum): Likewise.
10221         (tdesc_add_field): Likewise.
10222         (tdesc_add_typed_bitfield): Likewise.
10223         (tdesc_add_bitfield): Likewise.
10224         (tdesc_add_flag): Likewise.
10225         (tdesc_add_enum_value): Likewise.
10226         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
10227         (tdesc_add_typed_bitfield): Likewise.
10228         (tdesc_add_enum_value): Likewise.
10229
10230 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10231
10232         * common/tdesc.c (tdesc_feature::accept): Move to here.
10233         (tdesc_feature::operator==): Likewise.
10234         (tdesc_create_reg): Likewise.
10235         * common/tdesc.h (tdesc_type_kind): Likewise.
10236         (struct tdesc_type): Likewise.
10237         (struct tdesc_feature): Likewise.
10238         * regformats/regdat.sh: Create a feature.
10239         * target-descriptions.c (tdesc_type_kind): Move from here.
10240         (tdesc_type): Likewise.
10241         (tdesc_type_up): Likewise.
10242         (tdesc_feature): Likewise.
10243         (tdesc_create_reg): Likewise.
10244
10245 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10246
10247         * Makefile.in: Add arch/tdesc.c
10248         * common/tdesc.c: New file.
10249         * common/tdesc.h (tdesc_element_visitor): Move to here.
10250         (tdesc_element): Likewise.
10251         (tdesc_reg): Likewise.
10252         (tdesc_reg_up): Likewise.
10253         * regformats/regdef.h (reg): Add offset to constructors.
10254         * target-descriptions.c (tdesc_element_visitor): Move from here.
10255         (tdesc_element): Likewise.
10256         (tdesc_reg): Likewise.
10257         (tdesc_reg_up): Likewise.
10258
10259 2018-04-17  Tom Tromey  <tom@tromey.com>
10260
10261         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
10262         discriminant field.
10263
10264 2018-04-17  Tom Tromey  <tom@tromey.com>
10265
10266         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
10267
10268 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10269
10270         * symtab.c (print_symbol_info): Skip printing filename and line
10271         number when `last' is NULL.
10272         (symtab_symbol_info): Use empty string instead of NULL for first
10273         invocation of print_symbol_info.
10274         (rbreak_command): Pass NULL to `last' parameter of
10275         print_symbol_info.
10276
10277 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
10278
10279         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
10280         instead of nullptr.
10281
10282 2018-04-16  Pedro Alves  <palves@redhat.com>
10283
10284         * MAINTAINERS (sh): Remove.
10285         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
10286         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
10287         (ALLDEPFILES): Remove sh64-tdep.c.
10288         * NEWS: Mentions that support for SH-5/SH64 is removed.
10289         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
10290         (sh*-*-openbsd*): Ditto.
10291         (sh64-*-elf*): Remove.
10292         (sh*): Remove.
10293         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
10294         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
10295         * sh-tdep.c: No longer include "sh64-tdep.h".
10296         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
10297         * sh64-tdep.c, sh64-tdep.h: Remove files.
10298
10299 2018-04-16  Pedro Alves  <palves@redhat.com>
10300
10301         * MAINTAINERS: Remove m88k.
10302         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
10303         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
10304         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
10305         * NEWS: Mention that support for m88k was removed.
10306         * configure.host (m88*-*-*): Remove support.
10307         * configure.nat (m88k-*-*): Remove support.
10308         * configure.tgt (m88*-*-openbsd*): Remove.
10309         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
10310
10311 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
10312
10313         * configure.tgt (x86_tobjs): New variable.
10314         (amd64_tobjs, i386_tobjs): Use it.
10315
10316 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10317
10318         * symtab.c (print_symbol_info): Precede the symbol definition by
10319         the line number when available.
10320         * NEWS: Advertise this enhancement.
10321
10322 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10323
10324         * NEWS (New options): announce set/show record btrace cpu.
10325         * btrace.c: Include record-btrace.h.
10326         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
10327         the vendor is unknown.
10328         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
10329         Maybe overwrite the btrace configuration's cpu.
10330         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
10331         (btrace_fetch): Add cpu parameter.  Update callers.
10332         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
10333         Maybe overwrite the btrace configuration's cpu.  Skip enabling
10334         errata workarounds if the vendor is unknown.
10335         * python/py-record-btrace.c: Include record-btrace.h.
10336         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
10337         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
10338         * record-btrace.c (record_btrace_cpu_state_kind): New.
10339         (record_btrace_cpu): New.
10340         (set_record_btrace_cpu_cmdlist): New.
10341         (record_btrace_get_cpu): New.
10342         (require_btrace_thread, record_btrace_info)
10343         (record_btrace_resume_thread): Call record_btrace_get_cpu.
10344         (cmd_set_record_btrace_cpu_none): New.
10345         (cmd_set_record_btrace_cpu_auto): New.
10346         (cmd_set_record_btrace_cpu): New.
10347         (cmd_show_record_btrace_cpu): New.
10348         (_initialize_record_btrace): Initialize set/show record btrace cpu
10349         commands.
10350         * record-btrace.h (record_btrace_get_cpu): New.
10351
10352 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10353
10354         * record.c (set_record_command): Fix typo in message.
10355
10356 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10357
10358         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
10359
10360 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10361
10362         * infrun.c (process_event_stop_test): Call
10363         gdbarch_in_indirect_branch_thunk.
10364         * gdbarch.sh (in_indirect_branch_thunk): New.
10365         * gdbarch.c: Regenerated.
10366         * gdbarch.h: Regenerated.
10367         * x86-tdep.h: New.
10368         * x86-tdep.c: New.
10369         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
10370         (HFILES_NO_SRCDIR): Add x86-tdep.h.
10371         (ALLDEPFILES): Add x86-tdep.c.
10372         * arch-utils.h (default_in_indirect_branch_thunk): New.
10373         * arch-utils.c (default_in_indirect_branch_thunk): New.
10374         * i386-tdep: Include x86-tdep.h.
10375         (i386_in_indirect_branch_thunk): New.
10376         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
10377         function.
10378         * amd64-tdep: Include x86-tdep.h.
10379         (amd64_in_indirect_branch_thunk): New.
10380         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
10381
10382 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
10383
10384         PR gdb/23053
10385         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
10386         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
10387         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
10388         regression.
10389
10390 2018-04-12  Tom Tromey  <tom@tromey.com>
10391
10392         * rust-lang.c (rust_print_struct_def): Remove univariant code.
10393         (rust_evaluate_subexp): Likewise.
10394
10395 2018-04-12  Pedro Alves  <palves@redhat.com>
10396
10397         * procfs.c (procfs_detach): Make forward declaration's prototype
10398         match definition's protototype.
10399         (proc_get_LDT_entry): Remove stale do_cleanups call.
10400
10401 2018-04-12  Pedro Alves  <palves@redhat.com>
10402
10403         * target.h (target_ops::to_has_exited): Delete.
10404         (target_has_exited): Delete.
10405         * target-delegates.c: Regenerate.
10406
10407 2018-04-11  Pedro Alves  <palves@redhat.com>
10408
10409         * target.c (fileio_fh_t::t): Add comment.
10410         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10411         (target_fileio_close): Handle a NULL target.
10412         (invalidate_fileio_fh): New.
10413         (target_close): Call it.
10414         * remote.c (remote_hostio_send_command): No longer check whether
10415         remote_desc is open.
10416
10417 2018-04-11  Pedro Alves  <palves@redhat.com>
10418
10419         * target.c (fileio_fh_t): Make it a named struct instead of a
10420         typedef.
10421         (fileio_fh_t::is_closed): New method.
10422         (DEF_VEC_O (fileio_fh_t)): Remove.
10423         (fileio_fhandles): Now a std::vector.
10424         (is_closed_fileio_fh): Delete.
10425         (acquire_fileio_fd): Adjust.  Rename parameters.
10426         (release_fileio_fd): Adjust.
10427         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
10428         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10429         (target_fileio_close): Adjust.
10430
10431 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
10432
10433         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
10434         index.
10435
10436 2018-04-10  Pedro Alves  <palves@redhat.com>
10437
10438         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
10439         (scoped_finish_thread_state): New class.
10440         * infcmd.c (run_command_1): Use it instead of finish_thread_state
10441         cleanup.
10442         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
10443         (fetch_inferior_event, normal_stop): Likewise.
10444         * thread.c (finish_thread_state_cleanup): Delete.
10445
10446 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10447             Pedro Alves  <palves@redhat.com>
10448
10449         * value.c: Include "selftest.h" and "common/array-view.h".
10450         (struct range) <operator ==>: New.
10451         (test_ranges_contain): New.
10452         (check_ranges_vector): New.
10453         (test_insert_into_bit_range_vector): New.
10454         (_initialize_values): Register selftests.
10455         * common/array-view.h (operator==, operator!=): New.
10456
10457 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10458
10459         * common/gdb_vecs.h (unordered_remove): Add overload that takes
10460         an iterator.
10461         * inline-frame.c: Include <algorithm>.
10462         (struct inline_state): Add constructor.
10463         (inline_state_s): Remove.
10464         (DEF_VEC_O(inline_state_s)): Remove.
10465         (inline_states): Change type to std::vector.
10466         (find_inline_frame_state): Adjust to std::vector.
10467         (allocate_inline_frame_state): Remove.
10468         (clear_inline_frame_state): Adjust to std::vector.
10469         (skip_inline_frames): Adjust to std::vector.
10470
10471 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10472
10473         * tracepoint.h (struct trace_state_variable): Add constructor.
10474         <name>: Change type to std::string.
10475         * tracepoint.c (tsv_s): Remove.
10476         (DEF_VEC_O(tsv_s)): Remove.
10477         (tvariables): Change to std::vector.
10478         (create_trace_state_variable): Adjust to std::vector.
10479         (find_trace_state_variable): Likewise.
10480         (find_trace_state_variable_by_number): Likewise.
10481         (delete_trace_state_variable): Likewise.
10482         (trace_variable_command): Adjust to std::string.
10483         (delete_trace_variable_command): Likewise.
10484         (tvariables_info_1): Adjust to std::vector.
10485         (save_trace_state_variables): Likewise.
10486         (start_tracing): Likewise.
10487         (merge_uploaded_trace_state_variables): Adjust to std::vector
10488         and std::string.
10489         * target.h (struct target_ops)
10490         <to_download_trace_state_variable>: Pass reference to
10491         trace_state_variable.
10492         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
10493         * target-delegates.c: Re-generate.
10494         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
10495         (mi_tsv_deleted): Likewise.
10496         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
10497         * remote.c (remote_download_trace_state_variable): Change
10498         pointer to reference and adjust.
10499         * make-target-delegates (parse_argtypes): Handle references.
10500         (write_function_header): Likewise.
10501         (munge_type): Likewise.
10502
10503 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10504
10505         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10506         string_view-selftests.c.
10507         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
10508         testsuite.
10509         * unittests/basic_string_view/cons/char/1.cc: Likewise.
10510         * unittests/basic_string_view/cons/char/2.cc: Likewise.
10511         * unittests/basic_string_view/cons/char/3.cc: Likewise.
10512         * unittests/basic_string_view/element_access/char/1.cc:
10513         Likewise.
10514         * unittests/basic_string_view/element_access/char/empty.cc:
10515         Likewise.
10516         * unittests/basic_string_view/element_access/char/front_back.cc:
10517         Likewise.
10518         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
10519         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
10520         Likewise.
10521         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
10522         Likewise.
10523         * unittests/basic_string_view/modifiers/swap/char/1.cc:
10524         Likewise.
10525         * unittests/basic_string_view/operations/compare/char/1.cc:
10526         Likewise.
10527         * unittests/basic_string_view/operations/compare/char/13650.cc:
10528         Likewise.
10529         * unittests/basic_string_view/operations/copy/char/1.cc:
10530         Likewise.
10531         * unittests/basic_string_view/operations/data/char/1.cc:
10532         Likewise.
10533         * unittests/basic_string_view/operations/find/char/1.cc:
10534         Likewise.
10535         * unittests/basic_string_view/operations/find/char/2.cc:
10536         Likewise.
10537         * unittests/basic_string_view/operations/find/char/3.cc:
10538         Likewise.
10539         * unittests/basic_string_view/operations/find/char/4.cc:
10540         Likewise.
10541         * unittests/basic_string_view/operations/rfind/char/1.cc:
10542         Likewise.
10543         * unittests/basic_string_view/operations/rfind/char/2.cc:
10544         Likewise.
10545         * unittests/basic_string_view/operations/rfind/char/3.cc:
10546         Likewise.
10547         * unittests/basic_string_view/operations/substr/char/1.cc:
10548         Likewise.
10549         * unittests/basic_string_view/operators/char/2.cc: Likewise.
10550         * unittests/string_view-selftests.c: New file.
10551
10552 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10553
10554         * unittests/basic_string_view/capacity/1.cc: New file.
10555         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
10556         * unittests/basic_string_view/cons/char/1.cc: New file.
10557         * unittests/basic_string_view/cons/char/2.cc: New file.
10558         * unittests/basic_string_view/cons/char/3.cc: New file.
10559         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
10560         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
10561         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
10562         * unittests/basic_string_view/element_access/char/1.cc: New file.
10563         * unittests/basic_string_view/element_access/char/2.cc: New file.
10564         * unittests/basic_string_view/element_access/char/empty.cc: New file.
10565         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
10566         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
10567         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
10568         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
10569         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
10570         * unittests/basic_string_view/include.cc: New file.
10571         * unittests/basic_string_view/inserters/char/1.cc: New file.
10572         * unittests/basic_string_view/inserters/char/2.cc: New file.
10573         * unittests/basic_string_view/inserters/char/3.cc: New file.
10574         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
10575         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
10576         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
10577         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
10578         * unittests/basic_string_view/literals/types.cc: New file.
10579         * unittests/basic_string_view/literals/values.cc: New file.
10580         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
10581         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
10582         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
10583         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
10584         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
10585         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
10586         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
10587         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
10588         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
10589         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
10590         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
10591         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
10592         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
10593         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
10594         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
10595         * unittests/basic_string_view/operations/data/char/1.cc: New file.
10596         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
10597         * unittests/basic_string_view/operations/find/char/1.cc: New file.
10598         * unittests/basic_string_view/operations/find/char/2.cc: New file.
10599         * unittests/basic_string_view/operations/find/char/3.cc: New file.
10600         * unittests/basic_string_view/operations/find/char/4.cc: New file.
10601         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
10602         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
10603         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
10604         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
10605         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
10606         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
10607         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
10608         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
10609         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
10610         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
10611         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
10612         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
10613         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
10614         * unittests/basic_string_view/operators/char/2.cc: New file.
10615         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
10616         * unittests/basic_string_view/range_access/char/1.cc: New file.
10617         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
10618         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
10619         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
10620         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
10621         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
10622         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
10623         * unittests/basic_string_view/requirements/typedefs.cc: New file.
10624         * unittests/basic_string_view/typedefs.cc: New file.
10625         * unittests/basic_string_view/types/1.cc: New file.
10626
10627 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10628
10629         * common/gdb_string_view.h: Remove libstdc++ implementation
10630         details, adjust to gdb reality.
10631         * common/gdb_string_view.tcc: Likewise.
10632         * cli/cli-script.c (struct string_view): Remove.
10633         (user_args) <m_args>: Change element type to gdb::string_view.
10634         (user_args::insert_args): Adjust.
10635
10636 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10637
10638         * common/gdb_string_view.h: New file.
10639         * common/gdb_string_view.tcc: New file.
10640
10641 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10642
10643         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
10644         * configure: Re-generate.
10645
10646 2018-04-09  Pedro Alves  <palves@redhat.com>
10647
10648         * gdbarch.sh: Include "observable.h" instead of "observer.h".
10649         (set_target_gdbarch): Call
10650         gdb::observers::architecture_changed.notify instead of
10651         observer_notify_architecture_changed.
10652
10653 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10654
10655         * tracepoint.c (struct current_traceframe_cleanup): Remove.
10656         (do_restore_current_traceframe_cleanup): Remove.
10657         (restore_current_traceframe_cleanup_dtor): Remove.
10658         (make_cleanup_restore_current_traceframe): Remove.
10659         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
10660         New.
10661         * tracepoint.h (struct scoped_restore_current_traceframe): New.
10662         * infrun.c (fetch_inferior_event): Use
10663         scoped_restore_current_traceframe.
10664
10665 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10666
10667         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
10668         Remove.
10669         <n_allocated_type_units>: Remove.
10670         <all_type_units>: Change to std::vector.
10671         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
10672         to std::vector change.
10673         (dwarf2_per_objfile::get_cutu): Likewise.
10674         (dwarf2_per_objfile::get_tu): Likewise.
10675         (create_signatured_type_table_from_index): Likewise.
10676         (create_signatured_type_table_from_debug_names): Likewise.
10677         (dw2_symtab_iter_next): Likewise.
10678         (dw2_print_stats): Likewise.
10679         (dw2_expand_all_symtabs): Likewise.
10680         (dw2_expand_marked_cus): Likewise.
10681         (dw2_debug_names_iterator::next): Likewise.
10682         (dwarf2_initialize_objfile): Likewise.
10683         (add_signatured_type_cu_to_table): Likewise.
10684         (create_all_type_units): Likewise.
10685         (add_type_unit): Likewise.
10686         (struct tu_abbrev_offset): Add constructor.
10687         (build_type_psymtabs_1): Adjust to std::vector change.
10688         (print_tu_stats): Likewise.
10689         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
10690         (write_debug_names): Likewise.
10691
10692 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10693
10694         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
10695         Make an std::vector.
10696         <n_comp_units>: Remove.
10697         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
10698         to std::vector change.
10699         (dwarf2_per_objfile::get_cutu): Likewise.
10700         (dwarf2_per_objfile::get_cu): Likewise.
10701         (create_cus_from_index): Likewise.
10702         (create_addrmap_from_index): Likewise.
10703         (create_addrmap_from_aranges): Likewise.
10704         (dwarf2_read_index): Likewise.
10705         (dw2_find_last_source_symtab): Likewise.
10706         (dw2_map_symtabs_matching_filename): Likewise.
10707         (dw2_symtab_iter_next): Likewise.
10708         (dw2_print_stats): Likewise.
10709         (dw2_expand_all_symtabs): Likewise.
10710         (dw2_expand_symtabs_with_fullname): Likewise.
10711         (dw2_expand_marked_cus): Likewise.
10712         (dw2_map_symbol_filenames): Likewise.
10713         (create_cus_from_debug_names): Likewise.
10714         (dwarf2_read_debug_names): Likewise.
10715         (dw2_debug_names_iterator::next): Likewise.
10716         (dwarf2_initialize_objfile): Likewise.
10717         (set_partial_user): Likewise.
10718         (dwarf2_build_psymtabs_hard): Likewise.
10719         (read_comp_units_from_section): Remove arguments, adjust to
10720         std::vector change.
10721         (create_all_comp_units): Adjust to std::vector and
10722         read_comp_units_from_section changes.
10723         (dwarf2_find_containing_comp_unit): Adjust to std::vector
10724         change.
10725         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
10726         (psyms_seen_size): Likewise.
10727         (write_gdbindex): Likewise.
10728         (write_debug_names): Likewise.
10729
10730 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10731
10732         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
10733         with dwarf2_per_objfile.
10734         (create_cus_from_index): Likewise.
10735         (create_signatured_type_table_from_index): Likewise.
10736         (dwarf2_read_index): Likewise.
10737         (dwarf2_initialize_objfile): Likewise.
10738         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
10739         per_cu rather than get_dwarf2_per_objfile.
10740
10741 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10742
10743         * dwarf2read.h (struct signatured_type): Forward declare.
10744         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
10745         New methods.
10746         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
10747         (dw2_get_cutu): ...this.
10748         (dwarf2_per_objfile::get_cu): Rename from...
10749         (dw2_get_cu): ...this.
10750         (dwarf2_per_objfile::get_tu): New.
10751         (create_addrmap_from_index): Adjust.
10752         (create_addrmap_from_aranges): Adjust.
10753         (dw2_find_last_source_symtab): Adjust.
10754         (dw2_map_symtabs_matching_filename): Adjust.
10755         (dw2_symtab_iter_next): Adjust.
10756         (dw2_print_stats): Adjust.
10757         (dw2_expand_all_symtabs): Adjust.
10758         (dw2_expand_symtabs_with_fullname): Adjust.
10759         (dw2_expand_marked_cus): Adjust.
10760         (dw_expand_symtabs_matching_file_matcher): Adjust.
10761         (dw2_map_symbol_filenames): Adjust.
10762         (dw2_debug_names_iterator::next): Adjust.
10763         (dwarf2_initialize_objfile): Adjust.
10764         (set_partial_user): Adjust.
10765         (dwarf2_build_psymtabs_hard): Adjust.
10766
10767 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10768
10769         * dwarf2read.c (create_signatured_type_table_from_debug_names):
10770         Remove unused variables.
10771         (dw2_map_symtabs_matching_filename): Likewise.
10772         (dwarf2_record_block_ranges): Likewise.
10773         (dwarf2_read_addr_index): Likewise.
10774         (follow_die_offset): Likewise.
10775
10776 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10777
10778         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
10779         to symbol_file_add_main.
10780
10781 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10782
10783         PR mi/22299
10784         * mi/mi-console.c (do_fputc_async_safe): New.
10785         (mi_console_file::write_async_safe): New.
10786         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
10787         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
10788         New.
10789         * ui-file.c (ui_file::putstrn): Adjust call to
10790         fputstrn_unfiltered.
10791         * utils.c (printchar): Replace do_fputs and do_fprintf
10792         parameters by do_fputc.
10793         (fputstr_filtered): Adjust call to printchar.
10794         (fputstr_unfiltered): Likewise.
10795         (fputstrn_filtered): Likewise.
10796         (fputstrn_unfiltered): Add do_fputc parameter, pass to
10797         printchar.
10798         * utils.h (do_fputc_ftype): New typedef.
10799         (fputstrn_unfiltered): Add do_fputc parameter.
10800
10801 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10802
10803         * regformats/i386/i386-avx.dat: Remove.
10804
10805 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
10806
10807         PR gdb/22979
10808         * amd64-tdep.c (amd64_none_init_abi): New function.
10809         (amd64_x32_none_init_abi): New function.
10810         (_initialize_amd64_tdep): Register handlers for x86-64 and
10811         x64_32 with GDB_OSABI_NONE.
10812         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
10813         GDB_OSABI_NONE osabi.
10814
10815 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
10816
10817         PR gdb/22980
10818         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
10819         GDB_OSABI_NONE.
10820         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
10821         * osabi.c (gdb_osabi_names): Add "unknown" entry.
10822
10823 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
10824
10825         * common/byte-vector.h (char_vector): New type.
10826         * target.h (target_read_alloc): Return
10827         gdb::optional<byte_vector>.
10828         (target_read_stralloc): Return gdb::optional<char_vector>.
10829         (target_get_osdata): Return gdb::optional<char_vector>.
10830         * target.c (target_read_alloc_1): Templatize.  Replacement
10831         manual memory management with vector.
10832         (target_read_alloc): Change return type, adjust.
10833         (target_read_stralloc): Change return type, adjust.
10834         (target_get_osdata): Change return type, adjust.
10835         * auxv.c (struct auxv_info) <length>: Remove.
10836         <data>: Change type to gdb::optional<byte_vector>.
10837         (auxv_inferior_data_cleanup): Free auxv_info with delete.
10838         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
10839         (target_auxv_search): Adjust.
10840         (fprint_target_auxv): Adjust.
10841         * avr-tdep.c (avr_io_reg_read_command): Adjust.
10842         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
10843         (linux_make_corefile_notes): Adjust.
10844         * osdata.c (get_osdata): Adjust.
10845         * remote.c (remote_get_threads_with_qxfer): Adjust.
10846         (remote_memory_map): Adjust.
10847         (remote_traceframe_info): Adjust.
10848         (btrace_read_config): Adjust.
10849         (remote_read_btrace): Adjust.
10850         (remote_pid_to_exec_file): Adjust.
10851         * solib-aix.c (solib_aix_get_library_list): Adjust.
10852         * solib-dsbt.c (decode_loadmap): Don't free buf.
10853         (dsbt_get_initial_loadmaps): Adjust.
10854         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
10855         * solib-target.c (solib_target_current_sos): Adjust.
10856         * tracepoint.c (sdata_make_value): Adjust.
10857         * xml-support.c (xinclude_start_include): Adjust.
10858         (xml_fetch_content_from_file): Adjust.
10859         * xml-support.h (xml_fetch_another): Change return type.
10860         (xml_fetch_content_from_file): Change return type.
10861         * xml-syscall.c (xml_init_syscalls_info): Adjust.
10862         * xml-tdesc.c (file_read_description_xml): Adjust.
10863         (fetch_available_features_from_target): Change return type.
10864         (target_fetch_description_xml): Adjust.
10865         (target_read_description_xml): Adjust.
10866
10867 2018-04-06  Tom Tromey  <tom@tromey.com>
10868
10869         * value.c (~value): Update.
10870         (struct value) <contents>: Now unique_xmalloc_ptr.
10871         (value_contents_bits_eq, allocate_value_contents)
10872         (value_contents_raw, value_contents_all_raw)
10873         (value_contents_for_printing, value_contents_for_printing_const)
10874         (set_value_enclosing_type): Update.
10875
10876 2018-04-06  Tom Tromey  <tom@tromey.com>
10877
10878         * value.c (range_s): Remove typedef, VEC.
10879         (struct range): Add operator<.
10880         (range_lessthan): Remove.
10881         (ranges_contain): Change type.
10882         (~value): Update.
10883         (struct value) <unavailable, optimized_out>: Now std::vector.
10884         (value_entirely_available)
10885         (value_entirely_covered_by_range_vector)
10886         (value_entirely_unavailable, value_entirely_optimized_out):
10887         Update.
10888         (insert_into_bit_range_vector): Change argument type.
10889         (find_first_range_overlap): Likewise.
10890         (struct ranges_and_idx, value_contents_bits_eq)
10891         (require_not_optimized_out, require_available): Update.
10892         (ranges_copy_adjusted): Change argument types.
10893         (value_optimized_out, value_copy, value_fetch_lazy): Update.
10894
10895 2018-04-06  Tom Tromey  <tom@tromey.com>
10896
10897         * value.c (~value): Update.
10898         (struct value) <parent>: Now a value_ref_ptr.
10899         (value_parent, set_value_parent, value_address, value_copy):
10900         Update.
10901
10902 2018-04-06  Tom Tromey  <tom@tromey.com>
10903
10904         * value.c (struct value): Add constructor, destructor, and member
10905         initializers.
10906         (allocate_value_lazy, value_decref): Update.
10907
10908 2018-04-06  Tom Tromey  <tom@tromey.com>
10909
10910         * value.c (struct value) <released, next>: Remove.
10911         (all_values): Now a std::vector.
10912         (allocate_value_lazy): Update.
10913         (value_next): Remove.
10914         (value_mark, value_free_to_mark, release_value)
10915         (value_release_to_mark): Update.
10916
10917 2018-04-06  Tom Tromey  <tom@tromey.com>
10918
10919         * value.h (fetch_subexp_value, value_release_to_mark): Update.
10920         (free_value_chain): Remove.
10921         * value.c (free_value_chain): Remove.
10922         (value_release_to_mark): Return a std::vector.
10923         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
10924         std::vector.
10925         (check_condition): Update.
10926         * eval.c (fetch_subexp_value): Change "val_chain" to a
10927         std::vector.
10928         * breakpoint.c (update_watchpoint): Update.
10929         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
10930
10931 2018-04-06  Tom Tromey  <tom@tromey.com>
10932
10933         * value.h (free_all_values): Remove.
10934         * value.c (free_all_values): Remove.
10935
10936 2018-04-06  Tom Tromey  <tom@tromey.com>
10937
10938         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
10939         (value_history_chain, value_history_count): Remove.
10940         (value_history): New global.
10941         (record_latest_value, access_value_history, show_values)
10942         (preserve_values): Update.
10943
10944 2018-04-06  Tom Tromey  <tom@tromey.com>
10945
10946         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
10947         * varobj.c (varobj_set_display_format, varobj_set_value)
10948         (install_default_visualizer, construct_visualizer)
10949         (install_new_value, ~varobj, varobj_get_value_type)
10950         (my_value_of_variable, varobj_editable_p): Update.
10951         * c-varobj.c (c_describe_child, c_value_of_variable)
10952         (cplus_number_of_children, cplus_describe_child): Update.
10953         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
10954         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
10955         (ada_value_of_variable, ada_value_is_changeable_p): Update.
10956
10957 2018-04-06  Tom Tromey  <tom@tromey.com>
10958
10959         * printcmd.c (last_examine_address): Change type to
10960         value_ref_ptr.
10961         (do_examine, x_command): Update.
10962
10963 2018-04-06  Tom Tromey  <tom@tromey.com>
10964
10965         * value.c (release_value): Update.
10966         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
10967         (struct bpstats) <val>: Now a value_ref_ptr.
10968         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
10969         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
10970         (~watchpoint, print_it_watchpoint, watch_command_1)
10971         (invalidate_bp_value_on_memory_change): Update.
10972
10973 2018-04-06  Tom Tromey  <tom@tromey.com>
10974
10975         * varobj.c (varobj_clear_saved_item)
10976         (update_dynamic_varobj_children, install_new_value, ~varobj):
10977         Update.
10978         * value.h (value_incref): Move declaration earlier.
10979         (value_decref): Rename from value_free.
10980         (struct value_ref_policy): New.
10981         (value_ref_ptr): New typedef.
10982         (struct value_deleter): Remove.
10983         (gdb_value_up): Remove typedef.
10984         (release_value): Change return type.
10985         (release_value_or_incref): Remove.
10986         * value.c (set_value_parent): Update.
10987         (value_incref): Change return type.
10988         (value_decref): Rename from value_free.
10989         (value_free_to_mark, free_all_values, free_value_chain): Update.
10990         (release_value): Return value_ref_ptr.
10991         (release_value_or_incref): Remove.
10992         (record_latest_value, set_internalvar, clear_internalvar):
10993         Update.
10994         * stack.c (info_frame_command): Don't call value_free.
10995         * python/py-value.c (valpy_dealloc, valpy_new)
10996         (value_to_value_object): Update.
10997         * printcmd.c (do_examine): Update.
10998         * opencl-lang.c (lval_func_free_closure): Update.
10999         * mi/mi-main.c (register_changed_p): Don't call value_free.
11000         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
11001         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
11002         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
11003         value_free.
11004         * guile/scm-value.c (vlscm_free_value_smob)
11005         (vlscm_scm_from_value): Update.
11006         * frame.c (frame_register_unwind, frame_unwind_register_signed)
11007         (frame_unwind_register_unsigned, get_frame_register_bytes)
11008         (put_frame_register_bytes): Don't call value_free.
11009         * findvar.c (address_from_register): Don't call value_free.
11010         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
11011         * dwarf2loc.c (entry_data_value_free_closure)
11012         (value_of_dwarf_reg_entry, free_pieced_value_closure)
11013         (dwarf2_evaluate_loc_desc_full): Update.
11014         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11015         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11016         (~watchpoint, watch_command_1)
11017         (invalidate_bp_value_on_memory_change): Update.
11018         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
11019
11020 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
11021
11022         PR gdb/23022
11023         * warning.m4: Add -Wno-error=deprecated-register.
11024         * configure: Re-generate.
11025
11026 2018-04-05  Tom Tromey  <tom@tromey.com>
11027
11028         * linespec.h: Remove include of "vec.h".
11029
11030 2018-04-05  Tom Tromey  <tom@tromey.com>
11031
11032         * linespec.c (typep): Remove typedef.
11033         (find_methods, find_superclass_methods): Take a std::vector.
11034         (find_method): Use std::vector.
11035
11036 2018-04-05  Tom Tromey  <tom@tromey.com>
11037
11038         * utils.c (compare_strings): Remove.
11039         * utils.h (compare_strings): Remove.
11040         * objc-lang.h (find_imps): Update.
11041         * objc-lang.c (find_methods): Take a std::vector.
11042         (uniquify_strings, find_imps): Likewise.
11043         * linespec.c (find_methods): Take a std::vector.
11044         (decode_objc): Use std::vector.
11045         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
11046         a std::vector.
11047         (find_method, find_function_symbols): Use std::vector.
11048
11049 2018-04-05  Tom Tromey  <tom@tromey.com>
11050
11051         * completer.c (completion_tracker::completion_tracker): Remove
11052         cast.
11053         (completion_tracker::discard_completions): Likewise.
11054         * breakpoint.c (ambiguous_names_p): Remove cast.
11055         * ada-lang.c (_initialize_ada_language): Remove cast.
11056         * utils.h (streq): Update.
11057         (streq_hash): Add new declaration.
11058         * utils.c (streq): Return bool.
11059         (streq_hash): New function.
11060
11061 2018-04-05  Tom Tromey  <tom@tromey.com>
11062
11063         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
11064         Remove a string copy.
11065
11066 2018-04-05  Tom Tromey  <tom@tromey.com>
11067
11068         * linespec.c (filter_results): Use std::vector.
11069         (decode_line_2, decode_line_full): Update.
11070
11071 2018-04-05  Tom Tromey  <tom@tromey.com>
11072
11073         * linespec.c (canonical_to_fullform): Return std::string.
11074         (filter_results): Update.
11075         (struct decode_line_2_item): Add constructor.
11076         <fullform, displayform>: Now std::string.
11077         (decode_line_2_compare_items): Now a std::sort comparator.
11078         (decode_line_2): Update.
11079
11080 2018-04-05  Tom Tromey  <tom@tromey.com>
11081
11082         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
11083         (unexpected_linespec_error): Update.
11084         (linespec_parse_basic, parse_linespec): Update.
11085
11086 2018-04-05  Tom Tromey  <tom@tromey.com>
11087
11088         * linespec.c (linespec_parse_basic): Reindent.
11089
11090 2018-04-05  Tom Tromey  <tom@tromey.com>
11091
11092         * minsyms.h (iterate_over_minimal_symbols): Update.
11093         * minsyms.c (iterate_over_minimal_symbols): Take a
11094         gdb::function_view.
11095         * linespec.c (struct collect_minsyms): Remove.
11096         (compare_msyms): Now a std::sort comparator.
11097         (add_minsym): Add parameters.
11098         (search_minsyms_for_name): Update.  Use std::vector.
11099
11100 2018-04-03  Tom Tromey  <tom@tromey.com>
11101
11102         * mipsread.c (read_alphacoff_dynamic_symtab): Use
11103         gdb::byte_vector.
11104
11105 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11106
11107         * MAINTAINERS (Write After Approval): Add Weimin Pan.
11108
11109 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11110
11111         PR gdb/16959
11112         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
11113         printing static type.
11114
11115 2018-04-01  Tom Tromey  <tom@tromey.com>
11116
11117         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
11118         (rs6000_xfer_shared_libraries): Update.
11119
11120 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
11121
11122         * common/gdb_vecs.h (char_ptr): Remove.
11123         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
11124
11125 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11126
11127         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
11128         with std::vector.
11129         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
11130
11131 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11132
11133         * tracepoint.h (struct uploaded_tp): Initialize fields.
11134         <actions, step_actions, cmd_strings>: Change type to
11135         std::vector<char *>.
11136         * tracepoint.c (get_uploaded_tp): Allocate with new.
11137         (free_uploaded_tps): Free with delete.
11138         (parse_tracepoint_definition): Adjust to std::vector change.
11139         * breakpoint.c (read_uploaded_action): Likewise.
11140         (create_tracepoint_from_upload): Likewise.
11141         * ctf.c (ctf_write_uploaded_tp): Likewise.
11142         (SET_ARRAY_FIELD): Likewise.
11143         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
11144
11145 2018-03-30  Tom Tromey  <tom@tromey.com>
11146
11147         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
11148         std::unique_ptr.
11149         (svr4_keep_data_in_core): Update.
11150         (svr4_read_so_list): Update.
11151
11152 2018-03-30  Tom Tromey  <tom@tromey.com>
11153
11154         * windows-nat.c (handle_output_debug_string, handle_exception):
11155         Update.
11156         * target.h (target_read_string): Update.
11157         * target.c (target_read_string): Change "string" to
11158         unique_xmalloc_ptr.
11159         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
11160         Update.
11161         * solib-frv.c (frv_current_sos): Update.
11162         * solib-dsbt.c (dsbt_current_sos): Update.
11163         * solib-darwin.c (darwin_current_sos): Update.
11164         * linux-thread-db.c (inferior_has_bug): Update.
11165         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
11166         Update.  Remove alloca.
11167         * ada-lang.c (ada_main_name): Update.
11168
11169 2018-03-30  Tom Tromey  <tom@tromey.com>
11170
11171         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
11172         (struct dwo_file_deleter): New.
11173         (dwo_file_up): New typedef.
11174         (open_and_init_dwo_file): Use dwo_file_up.
11175         (free_dwo_file_cleanup): Remove.
11176
11177 2018-03-30  Tom Tromey  <tom@tromey.com>
11178
11179         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
11180         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
11181
11182 2018-03-30  Tom Tromey  <tom@tromey.com>
11183
11184         * dwarf2read.c (class free_cached_comp_units): New class.
11185         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
11186         (free_cached_comp_units): Remove function.
11187
11188 2018-03-30  Tom Tromey  <tom@tromey.com>
11189
11190         * utils.h (make_cleanup_unpush_target): Remove.
11191         * inf-ptrace.c (struct target_unpusher): New.
11192         (target_unpush_up) New typedef.
11193         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
11194         target_unpush_up.
11195         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
11196
11197 2018-03-27  Tom Tromey  <tom@tromey.com>
11198
11199         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
11200
11201 2018-03-27  Pedro Alves  <palves@redhat.com>
11202             Tom Tromey  <tom@tromey.com>
11203
11204         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
11205         destructor.  Now a class.
11206         (gdb_readline_wrapper_cleanup): Remove function.
11207         (gdb_readline_wrapper): Remove cleanups.
11208
11209 2018-03-27  Tom Tromey  <tom@tromey.com>
11210
11211         * typeprint.h (struct type_print_options) <local_typedefs,
11212         global_typedefs>: Remove "struct" keyword.
11213         (class typedef_hash_table): New class.
11214         (recursively_update_typedef_hash, add_template_parameters)
11215         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
11216         (find_typedef_in_hash): Don't declare.
11217         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
11218         (typedef_hash_table::recursively_update): Rename from
11219         recursively_update_typedef_hash.  Now a member.
11220         (typedef_hash_table::add_template_parameters): Rename from
11221         add_template_parameters.  Now a member.
11222         (typedef_hash_table::typedef_hash_table): Now a constructor;
11223         rename from create_typedef_hash.
11224         (typedef_hash_table::~typedef_hash_table): Now a destructor;
11225         rename from free_typedef_hash.
11226         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
11227         (do_free_global_table): Remove.
11228         (typedef_hash_table::typedef_hash_table): New constructor; renamed
11229         from copy_type_recursive.
11230         (create_global_typedef_table): Remove.
11231         (typedef_hash_table::find_global_typedef): Now a member of
11232         typedef_hash_table.
11233         (typedef_hash_table::find_typedef): Rename from
11234         find_typedef_in_hash; now a member.
11235         (whatis_exp): Update.
11236         * extension.h (struct ext_lang_type_printers): Add constructor and
11237         destructor.
11238         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
11239         declare.
11240         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
11241         Now a constructor; rename from start_ext_lang_type_printers.
11242         (ext_lang_type_printers): Now a destructor; rename from
11243         free_ext_lang_type_printers.
11244         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
11245         Update.
11246         (c_type_print_base_struct_union): Update.  Remove cleanups.
11247
11248 2018-03-27  Tom Tromey  <tom@tromey.com>
11249
11250         * dwarf-index-write.c: Include <cmath>.
11251
11252 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11253
11254         * NEWS: Add entry describing new "set|show varsize-limit" command.
11255         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
11256         command.
11257         * printcmd.c (_initialize_printcmd): Add "set var" alias of
11258         "set variable".
11259
11260 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
11261
11262         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
11263         dwarf-index-write.c
11264         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
11265         * dwarf-index-common.c: New file.
11266         * dwarf-index-common.h: New file.
11267         * dwarf-index-write.c: New file.
11268         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
11269         (struct dwarf2_section_info): Move from here.
11270         (dwarf2_section_info_def): Likewise.
11271         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
11272         (offset_type): Likewise.
11273         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
11274         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
11275         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
11276         (byte_swap): Likewise.
11277         (MAYBE_SWAP): Likewise.
11278         (dwarf2_per_cu_ptr): Likewise.
11279         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
11280         (struct tu_stats): Likewise.
11281         (struct dwarf2_per_objfile): Likewise.
11282         (struct dwarf2_per_cu_data): Likewise.
11283         (struct signatured_type): Likewise.
11284         (sig_type_ptr): Likewise.
11285         (DEF_VEC_P (sig_type_ptr)): Likewise.
11286         (INDEX4_SUFFIX): Likewise.
11287         (INDEX5_SUFFIX): Likewise.
11288         (DEBUG_STR_SUFFIX): Likewise.
11289         (dwarf2_read_section): Make non-static.
11290         (mapped_index_string_hash): Move from here.
11291         (dwarf5_djb_hash): Likewise.
11292         (file_write): Likewise.
11293         (class data_buf): Likewise.
11294         (struct symtab_index_entry): Likewise.
11295         (struct mapped_symtab): Likewise.
11296         (find_slot): Likewise.
11297         (hash_expand): Likewise.
11298         (add_index_entry): Likewise.
11299         (uniquify_cu_indices): Likewise.
11300         (class c_str_view): Likewise.
11301         (class c_str_view_hasher): Likewise.
11302         (class vector_hasher): Likewise.
11303         (write_hash_table): Likewise.
11304         (psym_index_map): Likewise.
11305         (struct addrmap_index_data): Likewise.
11306         (add_address_entry): Likewise.
11307         (add_address_entry_worker): Likewise.
11308         (write_address_map): Likewise.
11309         (symbol_kind): Likewise.
11310         (write_psymbols): Likewise.
11311         (struct signatured_type_index_data): Likewise.
11312         (write_one_signatured_type): Likewise.
11313         (recursively_count_psymbols): Likewise.
11314         (recursively_write_psymbols): Likewise.
11315         (class debug_names): Likewise.
11316         (check_dwarf64_offsets): Likewise.
11317         (psyms_seen_size): Likewise.
11318         (write_gdbindex): Likewise.
11319         (write_debug_names): Likewise.
11320         (assert_file_size): Likewise.
11321         (write_psymtabs_to_index): Likewise.
11322         (save_gdb_index_command): Likewise.
11323         (_initialize_dwarf2_read): Don't register the "save gdb-index"
11324         command.
11325         * dwarf2read.h: New file.
11326
11327 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11328
11329         PR gdb/22670
11330         * dwarf2read.c (dwarf2_physname): Do not return the demangled
11331         symbol name if the CU's language stores symbol names in linkage
11332         format.
11333         * language.h (struct language_defn)
11334         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
11335         all instances of this struct.
11336
11337 2018-03-26  Tom Tromey  <tom@tromey.com>
11338
11339         * stack.c (backtrace_command_1): Remove verbose code.
11340
11341 2018-03-26  Tom Tromey  <tom@tromey.com>
11342
11343         * python/py-framefilter.c (py_print_type): Don't catch
11344         exceptions.  Return void.
11345         (py_print_value): Likewise.
11346         (py_print_single_arg): Likewise.
11347         (enumerate_args): Don't catch exceptions.
11348         (py_print_args): Likewise.
11349         (py_print_frame): Likewise.
11350         (gdbpy_apply_frame_filter): Catch exceptions here.
11351
11352 2018-03-26  Tom Tromey  <tom@tromey.com>
11353
11354         * stack.c (_initialize_stack): Remove trailing newlines from help
11355         text.  Add "Usage" line to "backtrace" help.
11356
11357 2018-03-26  Tom Tromey  <tom@tromey.com>
11358
11359         PR python/16486:
11360         * python/py-framefilter.c (py_print_args): Call wrap_hint.
11361
11362 2018-03-26  Tom Tromey  <tom@tromey.com>
11363
11364         * python/py-framefilter.c (py_print_single_arg): Return
11365         EXT_LANG_BT_ERROR from catch.
11366
11367 2018-03-26  Tom Tromey  <tom@tromey.com>
11368
11369         PR backtrace/15584:
11370         * stack.c (backtrace_command_1): Move some code into no-filters
11371         "if".
11372
11373 2018-03-26  Tom Tromey  <tom@tromey.com>
11374
11375         * python/py-framefilter.c (throw_quit_or_print_exception): New
11376         function.
11377         (gdbpy_apply_frame_filter): Use it.
11378
11379 2018-03-26  Tom Tromey  <tom@tromey.com>
11380
11381         PR cli/17716:
11382         * python/py-framefilter.c (py_print_type, py_print_value)
11383         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
11384         RETURN_MASK_ERROR.
11385
11386 2018-03-26  Tom Tromey  <tom@tromey.com>
11387
11388         * python/py-framefilter.c (enumerate_args): Use
11389         gdb::unique_xmalloc_ptr.
11390
11391 2018-03-26  Tom Tromey  <tom@tromey.com>
11392
11393         * python/py-framefilter.c (py_print_frame): Return
11394         EXT_LANG_BT_OK.
11395         (gdbpy_apply_frame_filter): Update comment.
11396         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
11397         Remove.
11398         <EXT_LANG_BT_NO_FILTERS>: Change value.
11399
11400 2018-03-26  Tom Tromey  <tom@tromey.com>
11401
11402         PR backtrace/15582:
11403         * stack.c (backtrace_command): Parse "hide" argument.
11404         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
11405         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
11406         constant.
11407
11408 2018-03-26  Tom Tromey  <tom@tromey.com>
11409
11410         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
11411         add "flags".
11412         (backtrace_command): Remove "fulltrace", add "flags".
11413
11414 2018-03-26  Tom Tromey  <tom@tromey.com>
11415
11416         * stack.c (backtrace_command): Rewrite command line parsing.
11417
11418 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11419
11420         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
11421
11422 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11423
11424         * filename-seen-cache.h: Add include guard.
11425
11426 2018-03-26  Keith Seitz  <keiths@redhat.com>
11427
11428         * symfile.c (place_section): Remove "struct" from section_addr_info
11429         in comment.
11430         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
11431         "struct" keyword from section_addr_info.
11432
11433 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
11434
11435         * regformats/regdef.h (reg): Add constructors.
11436
11437 2018-03-25  Pedro Alves  <palves@redhat.com>
11438
11439         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
11440         if then/else bodies in var_func_name extraction.
11441
11442 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
11443
11444         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
11445         lookup_minimal_symbol() to find symbol entry.
11446         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
11447
11448 2018-03-23  Keith Seitz  <keiths@redhat.com>
11449
11450         PR c++/22968
11451         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
11452         nested type definitions for C++, too.
11453
11454 2018-03-23  Tom Tromey  <tom@tromey.com>
11455
11456         * machoread.c (struct oso_el): Add a constructor.  Don't define as
11457         a typedef.
11458         (macho_register_oso): Remove.
11459         (macho_symtab_read): Take a std::vector.
11460         (oso_el_compare_name): Now a std::sort comparator.
11461         (macho_symfile_read_all_oso): Take a std::vector.
11462         (macho_symfile_read): Use std::vector.  Remove cleanups.
11463
11464 2018-03-22  Tom Tromey  <tom@tromey.com>
11465
11466         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
11467         (record_full_goto_bookmark): Use std::string.
11468
11469 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11470
11471         PR tdep/18295
11472         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
11473         a single mask.
11474
11475 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11476
11477         * rs6000-tdep.c (store_insn_p): New function.
11478         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
11479         and cr_reg to their unshifted values. Use store_insn_p to
11480         match LR saves using either R1 or fdata->alloca_reg. Use
11481         store_insn_p to match CR saves. Set alloca_reg_offset
11482         when alloca_reg and framep are set. Remove lr_reg shift
11483         when assigning to fdata->lr_register.
11484
11485 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11486
11487         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
11488         command line args instead of emitting a warning.
11489
11490 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11491
11492         * tracepoint.h (struct static_tracepoint_marker): Initialize
11493         fields, define default constructor, move constructor and move
11494         assignment, disable the rest.
11495         <str_id, extra>: Make std::string.
11496         (release_static_tracepoint_marker): Remove.
11497         (free_current_marker): Remove.
11498         * tracepoint.c (free_current_marker): Remove.
11499         (parse_static_tracepoint_marker_definition): Adjust to
11500         std::string, use new hex2str overload.
11501         (release_static_tracepoint_marker): Remove.
11502         (print_one_static_tracepoint_marker): Get marker by reference
11503         and adjust to std::string.
11504         (info_static_tracepoint_markers_command): Adjust to std::vector
11505         changes
11506         * target.h (static_tracepoint_marker_p): Remove typedef.
11507         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
11508         (struct target_ops) <to_static_tracepoint_marker_at>: Return
11509         bool.
11510         <to_static_tracepoint_markers_by_strid>: Return std::vector.
11511         * target-debug.h
11512         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
11513         (target_debug_print_std_vector_static_tracepoint_marker): New.
11514         (target_debug_print_struct_static_tracepoint_marker_p): Rename
11515         to...
11516         (target_debug_print_static_tracepoint_marker_p): ... this.
11517         * target-delegates.c: Re-generate.
11518         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
11519         Make std::string.
11520         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
11521         (decode_static_tracepoint_spec): Adjust to std::vector.
11522         (tracepoint_print_one_detail): Adjust to std::string.
11523         (strace_marker_decode_location): Adjust to std::string.
11524         (update_static_tracepoint): Adjust to std::string, remove call
11525         to release_static_tracepoint_marker.
11526         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
11527         Adjust to std::vector.
11528         * remote.c (remote_static_tracepoint_marker_at): Return bool.
11529         (remote_static_tracepoint_markers_by_strid): Adjust to
11530         std::vector.
11531         * common/rsp-low.h (hex2str): New overload with explicit count
11532         of bytes.
11533         * common/rsp-low.c (hex2str): New overload with explicit count
11534         of bytes.
11535         * unittests/rsp-low-selftests.c (test_hex2str): New function.
11536         (_initialize_rsp_low_selftests): Add test_hex2str test.
11537         * unittests/tracepoint-selftests.c
11538         (test_parse_static_tracepoint_marker_definition): Adjust to
11539         std::string.
11540
11541 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11542
11543         * tracepoint.c (parse_static_tracepoint_marker_definition):
11544         Consider case where the definition is followed by more
11545         definitions.
11546         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11547         tracepoint-selftests.c.
11548         * unittests/tracepoint-selftests.c: New.
11549
11550 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11551
11552         * MAINTAINERS (Write After Approval): Add Pedro Franco de
11553         Carvalho.
11554
11555 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11556
11557         * symtab.c (find_pc_sect_line): fixed indentation.
11558
11559 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11560
11561         * symtab.c (find_pc_sect_line): now uses binary search.
11562
11563 2018-03-19  Tom Tromey  <tom@tromey.com>
11564
11565         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
11566         "IDENT" production.
11567
11568 2018-03-19  Pedro Alves  <palves@redhat.com>
11569             Tom Tromey  <tom@tromey.com>
11570
11571         * unittests/observable-selftests.c: New file.
11572         * common/observable.h: New file.
11573         * observable.h: New file.
11574         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
11575         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
11576         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
11577         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
11578         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
11579         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
11580         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
11581         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
11582         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
11583         python/py-breakpoint.c, python/py-finishbreakpoint.c,
11584         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
11585         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
11586         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
11587         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
11588         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
11589         tui/tui-interp.c, valops.c: Update all users.
11590         * tui/tui-hooks.c (tui_bp_created_observer)
11591         (tui_bp_deleted_observer, tui_bp_modified_observer)
11592         (tui_inferior_exit_observer, tui_before_prompt_observer)
11593         (tui_normal_stop_observer, tui_register_changed_observer):
11594         Remove.
11595         (tui_observers_token): New global.
11596         (attach_or_detach, tui_attach_detach_observers): New functions.
11597         (tui_install_hooks, tui_remove_hooks): Use
11598         tui_attach_detach_observers.
11599         * record-btrace.c (record_btrace_thread_observer): Remove.
11600         (record_btrace_thread_observer_token): New global.
11601         * observer.sh: Remove.
11602         * observer.c: Rename to observable.c.
11603         * observable.c (namespace gdb_observers): Define new objects.
11604         (observer_debug): Move into gdb_observers namespace.
11605         (struct observer, struct observer_list, xalloc_observer_list_node)
11606         (xfree_observer_list_node, generic_observer_attach)
11607         (generic_observer_detach, generic_observer_notify): Remove.
11608         (_initialize_observer): Update.
11609         Don't include observer.inc.
11610         * Makefile.in (generated_files): Remove observer.h, observer.inc.
11611         (clean mostlyclean): Likewise.
11612         (observer.h, observer.inc): Remove targets.
11613         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
11614         (COMMON_SFILES): Use observable.c, not observer.c.
11615         * .gitignore: Remove observer.h.
11616
11617 2018-03-18  Tom Tromey  <tom@tromey.com>
11618
11619         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
11620         gdb::def_vector.
11621         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
11622
11623 2018-03-17  Tom Tromey  <tom@tromey.com>
11624
11625         * auto-load.c (auto_load_objfile_script_1): Use std::string.
11626
11627 2018-03-17  Tom Tromey  <tom@tromey.com>
11628
11629         * target.c (class scoped_target_fd): New.
11630         (target_fileio_close_cleanup): Remove.
11631         (target_fileio_read_alloc_1): Use scoped_target_fd.
11632
11633 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
11634
11635         * silent-rules.mk: New.
11636         * Makefile.in: Include silent-rules.mk
11637         (srcdir, VPATH, top_srcdir): Move up.
11638         (COMPILE): Add ECHO_CXX.
11639         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
11640         (init.c): Add ECHO_INIT_C.
11641         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
11642         (version.c): Add ECHO_GEN.
11643         (printcmd.o): Add ECHO_CXX.
11644         (target-float.o): Add ECHO_CXX.
11645         (ada-exp.o): Add ECHO_CXX.
11646         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
11647         (insight$(EXEEXT)): Add ECHO_CXXLD.
11648         * gnulib/configure.ac: Add AM_SILENT_RULES.
11649         * gnulib/aclocal.m4: Re-generate.
11650         * gnulib/configure: Re-generate.
11651         * gnulib/import/Makefile.in: Re-generate.
11652
11653 2018-03-16  Tom Tromey  <tom@tromey.com>
11654
11655         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
11656         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
11657         * utils.c (do_free_section_addr_info)
11658         (make_cleanup_free_section_addr_info): Remove.
11659         * symfile.h (struct other_sections): Add constructor.
11660         (struct section_addr_info): Remove.
11661         (section_addr_info): New typedef.
11662         (struct sym_fns) <sym_offsets>: Change type of parameter.
11663         (build_section_addr_info_from_objfile)
11664         (relative_addr_info_to_section_offsets, addr_info_make_relative)
11665         (default_symfile_offsets, symbol_file_add)
11666         (symbol_file_add_from_bfd)
11667         (build_section_addr_info_from_section_table): Update.
11668         (alloc_section_addr_info, free_section_addr_info): Don't declare.
11669         * symfile.c (alloc_section_addr_info): Remove.
11670         (build_section_addr_info_from_section_table): Change return type.
11671         Update.
11672         (build_section_addr_info_from_bfd)
11673         (build_section_addr_info_from_objfile): Likewise.
11674         (free_section_addr_info): Remove.
11675         (relative_addr_info_to_section_offsets): Change type of "addrs".
11676         (addrs_section_compar): Now a std::sort comparator.
11677         (addrs_section_sort): Change return type.
11678         (addr_info_make_relative): Change type of "addrs".  Update.
11679         (default_symfile_offsets, syms_from_objfile_1)
11680         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
11681         (symbol_file_add_separate): Update.
11682         (symbol_file_add): Change type of "addrs".  Update.
11683         (add_symbol_file_command): Update.  Remove cleanups.
11684         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
11685         cleanups.
11686         * symfile-debug.c (debug_sym_offsets): Change type of "info".
11687         * solib.c (solib_read_symbols): Update.
11688         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
11689         * machoread.c (macho_symfile_offsets): Update.
11690         * jit.c (jit_bfd_try_read_symtab): Update.
11691
11692 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
11693
11694         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11695         unittests/utils-selftests.c.
11696         * unittests/utils-selftests.c: New file.
11697
11698 2018-03-14  Tom Tromey  <tom@tromey.com>
11699
11700         PR cli/14977:
11701         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
11702         for NULL.
11703
11704 2018-03-14  Tom Tromey  <tom@tromey.com>
11705
11706         PR cli/19918:
11707         * printcmd.c (printf_pointer): Allow "-" in format.
11708
11709 2018-03-14  Tom Tromey  <tom@tromey.com>
11710
11711         * printcmd.c (_initialize_printcmd): Add usage to printf.
11712
11713 2018-03-14  Yao Qi  <qiyao@sourceware.org>
11714
11715         * MAINTAINERS: Update my email address.
11716
11717 2018-03-13  Tom Tromey  <tom@tromey.com>
11718
11719         * machoread.c (macho_check_dsym): Change filenamep to a
11720         std::string*.
11721         (macho_symfile_read): Update.
11722         * symfile.c (load_command): Use std::string.
11723
11724 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
11725
11726         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
11727         to error message string.
11728         (riscv_register_name): Use xsnprintf instead of sprintf.
11729         (riscv_insn::fetch_instruction): Use gdb_assert instead of
11730         internal_error.
11731         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
11732         error.
11733         (riscv_push_dummy_call): Likewise.
11734
11735 2018-03-12  Tom Tromey  <tom@tromey.com>
11736
11737         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
11738         Use gdb::byte_vector.
11739         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
11740
11741 2018-03-12  Yao Qi  <yao.qi@linaro.org>
11742
11743         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
11744         parameter type to readable_regcache.
11745         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
11746         the declaration.
11747
11748 2018-03-11  Tom Tromey  <tom@tromey.com>
11749
11750         * dwarf2read.c (struct nextfield): Add initializers.
11751         (struct nextfnfield): Remove.
11752         (struct fnfieldlist): Add initializers.  Remove "length" and
11753         "head", use std::vector.
11754         (struct decl_field_list): Remove.
11755         (struct field_info): Add initializers.
11756         <fields, baseclasses>: Now std::vector.
11757         <nbaseclasses, nfnfields, typedef_field_list_count,
11758         nested_types_list_count>: Remove.
11759         (dwarf2_add_field, dwarf2_add_type_defn)
11760         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
11761         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
11762         (process_structure_scope): Update.
11763
11764 2018-03-11  Tom Tromey  <tom@tromey.com>
11765
11766         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
11767         for use by std::sort.
11768         (build_type_psymtabs_1): Use std::vector.
11769
11770 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
11771
11772         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
11773         and LIBMPFR in the printed configuration.
11774
11775 2018-03-08  Tom Tromey  <tom@tromey.com>
11776
11777         * source.c (get_filename_and_charpos): Use scoped_fd.
11778         * nto-procfs.c (procfs_open_1): Use scoped_fd.
11779         (procfs_pidlist): Likewise.
11780         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
11781         (iterate_over_mappings): Likewise.
11782
11783 2018-03-08  Tom Tromey  <tom@tromey.com>
11784
11785         * infcall.c (struct call_return_meta_info)
11786         <stack_temporaries_enabled>: Remove.
11787         (get_call_return_value, call_function_by_hand_dummy): Update.
11788         * thread.c (disable_thread_stack_temporaries): Remove.
11789         (enable_thread_stack_temporaries): Remove.
11790         (thread_stack_temporaries_enabled_p): Return bool.
11791         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
11792         (get_last_thread_stack_temporary): Update.
11793         * eval.c (evaluate_subexp): Update.
11794         * gdbthread.h (class enable_thread_stack_temporaries): Now a
11795         class, not a function.
11796         (value_ptr, value_vec): Remove typedefs.
11797         (class thread_info) <stack_temporaries_enabled>: Now bool.
11798         <stack_temporaries>: Now a std::vector.
11799         (thread_stack_temporaries_enabled_p)
11800         (value_in_thread_stack_temporaries): Return bool.
11801
11802 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
11803
11804         * remote.c (putpkt_binary): Fix omitted bytes reporting.
11805         (getpkt_or_notif_sane_1): Likewise.
11806
11807 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
11808
11809         * build-id.c (build_id_to_debug_bfd): Use std::string.
11810
11811 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
11812
11813         * build-id.c (find_separate_debug_file_by_buildid): Return
11814         std::string.
11815         * build-id.h (find_separate_debug_file_by_buildid): Return
11816         std::string.
11817         * coffread.c (coff_symfile_read): Adjust to std::string.
11818         * elfread.c (elf_symfile_read): Adjust to std::string.
11819         * symfile.c (separate_debug_file_exists): Change parameter to
11820         std::string.
11821         (find_separate_debug_file): Return std::string.
11822         (find_separate_debug_file_by_debuglink): Return std::string.
11823         * symfile.h (find_separate_debug_file_by_debuglink): Return
11824         std::string.
11825
11826 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
11827
11828         * common/xml-utils.c (xml_escape_text): Move code to...
11829         (xml_escape_text_append): ... this new function.
11830         * common/xml-utils.h (xml_escape_text_append): New declaration.
11831         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
11832         New function.
11833         (_initialize_xml_utils): register test_xml_escape_text_append as
11834         a selftest.
11835
11836 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
11837
11838         * defs.h: Remove MAX_REGISTER_SIZE.
11839         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
11840         asserts.
11841         * python/py-unwind.c (pyuw_sniffer): Likewise.
11842
11843 2018-03-07  Tom Tromey  <tom@tromey.com>
11844
11845         * linux-tdep.c (linux_info_proc): Update.
11846         * target.h (struct target_ops) <to_fileio_readlink>: Return
11847         optional<string>.
11848         (target_fileio_readlink): Return optional<string>.
11849         * remote.c (remote_hostio_readlink): Return optional<string>.
11850         * inf-child.c (inf_child_fileio_readlink): Return
11851         optional<string>.
11852         * target.c (target_fileio_readlink): Return optional<string>.
11853
11854 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
11855
11856         * regcache.c (cooked_read_test): Add riscv to the list of
11857         architectures that have a save_reggroup.
11858
11859 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11860
11861         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
11862         value is not a dynamic class object.
11863
11864 2018-03-06  Tom Tromey  <tom@tromey.com>
11865
11866         * rust-exp.y: Formatting fixes.
11867
11868 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11869
11870         * riscv-tdep.c (riscv_register_name): Remove target description
11871         support.
11872         (riscv_gdbarch_init): Remove target description check.
11873
11874 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11875
11876         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
11877         comment.
11878         * riscv-tdep.h: Likewise.
11879
11880 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11881
11882         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
11883         (riscv_pseudo_register_write): Delete.
11884         (riscv_gdbarch_init): Remove all use of pseudo registers.
11885
11886 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
11887
11888         * record-btrace.c (btrace_print_lines): Replace cleanup
11889         parameter with RAII equivalents.
11890         (btrace_insn_history): Replace cleanup with RAII equivalents.
11891         * ui-out.h (make_cleanup_ui_out_list_begin_end,
11892         make_cleanup_ui_out_tuple_begin_end): Remove.
11893         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
11894         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
11895         make_cleanup_ui_out_list_begin_end): Remove.
11896
11897 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
11898
11899         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
11900         parameter types to std::vector.  Use bool.
11901         (record_btrace_wait): Replace VEC(tp_t) with
11902         std::vector<thread_info *>.
11903         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
11904
11905 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
11906
11907         * record-btrace.c (record_btrace_disable_callback): Remove.
11908         (struct scoped_btrace_disable): New.
11909         (record_btrace_open): Use scoped_btrace_disable.
11910
11911 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11912
11913         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
11914         reading values from registers.
11915
11916 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11917
11918         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
11919         where appropriate.
11920
11921 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11922
11923         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
11924         change parameter type.  Use GDB's print functions, and use
11925         core_addr_to_string where appropriate.
11926         (riscv_push_dummy_call): Use core_addr_to_string where
11927         appropriate, update call to riscv_print_arg_location, and reindent
11928         a few lines.
11929         (riscv_return_value): Update call to riscv_print_arg_location.
11930
11931 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11932             Tim Newsome <tim@sifive.com>
11933             Albert Ou <a0u@eecs.berkeley.edu>
11934             Darius Rad <darius@bluespec.com>
11935
11936         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
11937         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
11938         (ALLDEPFILES): Add riscv-tdep.c
11939         * configure.tgt: Add riscv support.
11940         * riscv-tdep.c: New file.
11941         * riscv-tdep.h: New file.
11942         * NEWS: Mention new target.
11943         * MAINTAINERS: Add entry for riscv.
11944
11945 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11946
11947         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
11948         fields within aggregates.
11949
11950 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
11951
11952         * record-btrace.c (btrace_print_lines): Change type of flags to
11953         gdb_disassembly_flags.
11954
11955 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
11956
11957         * fbsd-nat.c: Include "inf-ptrace.h".
11958         (USE_SIGTRAP_SIGINFO): Conditionally define.
11959         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
11960         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
11961         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
11962         function.
11963         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
11964         Likewise.
11965         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
11966         Likewise.
11967         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
11968         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
11969         "supports_stopped_by_hw_breakpoint" target methods.
11970
11971 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
11972
11973         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
11974         * fbsd-nat.c (debug_fbsd_nat): New variable.
11975         (show_fbsd_nat_debug): New function.
11976         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
11977         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
11978
11979 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
11980
11981         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
11982         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
11983         prototype.
11984         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
11985         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
11986         method.
11987
11988 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11989
11990         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
11991         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
11992
11993 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11994
11995         * charset.c (struct charset_vector): New.
11996         (charsets): Change type to charset_vector.
11997         (find_charset_names): Adjust.
11998         (add_one): Adjust.
11999         (_initialize_charset): Adjust.
12000
12001 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12002
12003         * progspace.h (struct program_space) <deleted_solibs>: Change
12004         type to std::vector<std::string>.
12005         * progspace.c (clear_program_space_solib_cache): Adjust.
12006         * breakpoint.c (print_solib_event): Adjust.
12007         (check_status_catch_solib): Adjust.
12008         * solib.c (update_solib_list): Adjust.
12009         * ui-out.h (class ui_out) <field_string>: New overload.
12010         * ui-out.c (ui_out::field_string): New overload.
12011
12012 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12013
12014         * progspace.h (struct program_space): Add constructor and
12015         destructor, initialize fields.
12016         (add_program_space): Remove.
12017         * progspace.c (add_program_space): Rename to...
12018         (program_space::program_space): ... this.
12019         (release_program_space): Rename to...
12020         (program_space::~program_space): ... this.
12021         (delete_program_space): Use delete to delete program_space.
12022         (initialize_progspace): Use new to allocate program_space.
12023         * inferior.c (add_inferior_with_spaces): Likewise.
12024         (clone_inferior_command): Likewise.
12025         * infrun.c (follow_fork_inferior): Likewise.
12026         (handle_vfork_child_exec_or_exit): Likewise.
12027
12028 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12029
12030         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
12031         (delim_string_to_char_ptr_vec): Return std::vector of
12032         gdb::unique_xmalloc_ptr.
12033         (dirnames_to_char_ptr_vec_append): Take std::vector of
12034         gdb::unique_xmalloc_ptr.
12035         (dirnames_to_char_ptr_vec): Return std::vector of
12036         gdb::unique_xmalloc_ptr.
12037         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
12038         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
12039         (delim_string_to_char_ptr_vec): Return an std::vector of
12040         gdb::unique_xmalloc_ptr, adjust the code.
12041         (dirnames_to_char_ptr_vec_append): Take an std::vector of
12042         gdb::unique_xmalloc_ptr, adjust the code.
12043         (dirnames_to_char_ptr_vec): Return an std::vector of
12044         gdb::unique_xmalloc_ptr, adjust the code.
12045         * auto-load.c (auto_load_safe_path_vec): Change type to
12046         std::vector of gdb::unique_xmalloc_ptr.
12047         (auto_load_expand_dir_vars): Return an std::vector of
12048         gdb::unique_xmalloc_ptr, adjust the code.
12049         (auto_load_safe_path_vec_update): Adjust.
12050         (filename_is_in_auto_load_safe_path_vec): Adjust.
12051         (auto_load_objfile_script_1): Adjust.
12052         * build-id.c (build_id_to_debug_bfd): Adjust.
12053         * linux-thread-db.c (thread_db_load_search): Adjust.
12054         * source.c (add_path): Adjust.
12055         (openp): Adjust.
12056         * symfile.c (find_separate_debug_file): Adjust.
12057         * utils.c (do_free_char_ptr_vec): Remove.
12058         (make_cleanup_free_char_ptr_vec): Remove.
12059
12060 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
12061
12062         PR gdb/22907
12063         * common/pathstuff.c: Conditionally include "<windows.h>".
12064
12065 2018-03-01  Georg Sauthoff  <mail@georg.so>
12066
12067         PR gdb/22888
12068         * gcore.in: Quote variables and switch interpreter to bash.
12069
12070 2018-03-01  Tom Tromey  <tom@tromey.com>
12071
12072         * dwarf2read.c (alloc_discriminant_info): Fix default_index
12073         assertion.  Add assertion for discriminant_index.
12074         (quirk_rust_enum): Use correct base type name in univariant case.
12075
12076 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
12077
12078         * record.c (get_call_history_modifiers): Return a
12079         record_print_flags.
12080         (cmd_record_call_history): Adjust.
12081         * record-btrace.c (record_btrace_call_history): Adjust.
12082         (record_btrace_call_history_range): Adjust.
12083         (record_btrace_call_history_from): Adjust.
12084         * target-debug.h (target_debug_print_record_print_flags): New.
12085         * target-delegates.c: Re-generate.
12086         * target.c (target_call_history): Change flags type.
12087         (target_call_history_from): Likewise.
12088         (target_call_history_range): Likewise.
12089         * target.h (struct target_ops) <target_call_history>: Likewise.
12090         (target_call_history_from): Likewise.
12091         (target_call_history_range): Likewise.
12092
12093 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12094             Simon Marchi  <simon.marchi@polymtl.ca>
12095
12096         * common/common-utils.c: Include "sys/stat.h".
12097         (is_regular_file): Move here from "source.c"; change return
12098         type to "bool".
12099         * common/common-utils.h (is_regular_file): New prototype.
12100         * common/pathstuff.c (contains_dir_separator): New function.
12101         * common/pathstuff.h (contains_dir_separator): New prototype.
12102         * source.c: Don't include "sys/stat.h".
12103         (is_regular_file): Move to "common/common-utils.c".
12104
12105 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12106
12107         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
12108         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
12109         * auto-load.c: Include "common/pathstuff.h".
12110         * common/common-def.h (current_directory): Move here.
12111         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
12112         function.
12113         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
12114         prototype.
12115         * common/pathstuff.c: New file.
12116         * common/pathstuff.h: New file.
12117         * compile/compile.c: Include "common/pathstuff.h".
12118         * defs.h (current_directory): Move to "common/common-defs.h".
12119         * dwarf2read.c: Include "common/pathstuff.h".
12120         * exec.c: Likewise.
12121         * guile/scm-safe-call.c: Likewise.
12122         * linux-thread-db.c: Likewise.
12123         * main.c: Likewise.
12124         * nto-tdep.c: Likewise.
12125         * objfiles.c: Likewise.
12126         * source.c: Likewise.
12127         * symtab.c: Likewise.
12128         * utils.c: Include "common/pathstuff.h".
12129         (gdb_realpath): Move to "common/pathstuff.c".
12130         (gdb_realpath_keepfile): Likewise.
12131         (gdb_abspath): Likewise.
12132         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
12133         (gdb_realpath_keepfile): Likewise.
12134         (gdb_abspath): Likewise.
12135
12136 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
12137
12138         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
12139         wildcard process pid for super_resume for kernels with a
12140         specific bug.
12141
12142 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
12143
12144         * compile/compile.c (get_args): Add additional comments
12145         explaining function.
12146
12147 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
12148             Tom Tromey  <tom@tromey.com>
12149
12150         * target.h (memory_write_request_s): Remove typedef.  Don't define
12151         VEC.
12152         (target_write_memory_blocks): Change argument to std::vector.
12153         (struct memory_write_request): Add constructor.
12154         * target-memory.c (compare_block_starting_address): Return bool.
12155         Change argument types.
12156         (claim_memory): Change arguments to use std::vector.
12157         (split_regular_and_flash_blocks, blocks_to_erase)
12158         (compute_garbled_blocks): Likewise.
12159         (cleanup_request_data, cleanup_write_requests_vector): Remove.
12160         (target_write_memory_blocks): Change argument to std::vector.
12161         * symfile.c (struct load_section_data): Add constructor and
12162         destructor.  Use std::vector for "requests".
12163         (struct load_progress_data): Add initializers.
12164         (load_section_callback): Update.  Use "new".
12165         (clear_memory_write_data): Remove.
12166         (generic_load): Update.
12167
12168 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
12169
12170         * arch/aarch64.h: Use common/tdesc.h.
12171
12172 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12173
12174         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
12175         architecture with a 64-bit ABI.
12176
12177 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12178
12179         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
12180         ahead of target description loading.
12181
12182 2018-02-26  Tom Tromey  <tom@tromey.com>
12183
12184         * stack.c (backtrace_command_1): Update.
12185         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
12186         of "flags".
12187         * python/py-framefilter.c (py_print_frame)
12188         (gdbpy_apply_frame_filter): Change type of "flags".
12189         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
12190         of "flags".
12191         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
12192         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
12193         * extension.h (enum frame_filter_flag): Rename from
12194         frame_filter_flags.
12195         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
12196         (apply_ext_lang_frame_filter): Change type of "flags".
12197         * extension.c (apply_ext_lang_frame_filter): Change type of
12198         "flags".
12199         * extension-priv.h (struct extension_language_ops)
12200         <apply_frame_filter>: Change type of "flags".
12201
12202 2018-02-26  Tom Tromey  <tom@tromey.com>
12203
12204         PR python/16497:
12205         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
12206         off-by-one in py_end computation.
12207         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
12208         PRINT_MORE_FRAMES.
12209         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
12210         constant.
12211
12212 2018-02-26  Tom Tromey  <tom@tromey.com>
12213
12214         * dwarf2read.c (struct variant_field): New.
12215         (struct nextfield) <variant>: New field.
12216         (dwarf2_add_field): Handle DW_TAG_variant_part.
12217         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
12218         discriminated union.
12219         (read_structure_type): Handle DW_TAG_variant_part.
12220         (handle_struct_member_die): New function, extracted from
12221         process_structure_scope.  Handle DW_TAG_variant.
12222         (process_structure_scope): Handle discriminated unions.  Call
12223         handle_struct_member_die.
12224
12225 2018-02-26  Tom Tromey  <tom@tromey.com>
12226
12227         * rust-lang.h (rust_last_path_segment): Declare.
12228         * rust-lang.c (rust_last_path_segment): Now public.  Change
12229         contract.
12230         (struct disr_info): Remove.
12231         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
12232         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
12233         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
12234         (rust_enum_p, rust_enum_variant): New function.
12235         (rust_underscore_fields): Remove "offset" parameter.
12236         (rust_print_enum): New function.
12237         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
12238         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
12239         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
12240         enums.
12241         (rust_internal_print_type): New function, from rust_print_type.
12242         Remove enum code.
12243         (rust_print_type): Call rust_internal_print_type.
12244         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
12245         Update enum handling.
12246         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
12247         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
12248         (rust_union_quirks): New functions.
12249         (process_full_comp_unit, process_full_type_unit): Call
12250         rust_union_quirks.
12251         (process_structure_scope): Update rust_unions if necessary.
12252
12253 2018-02-26  Tom Tromey  <tom@tromey.com>
12254
12255         * value.h (value_union_variant): Declare.
12256         * valops.c (value_union_variant): New function.
12257         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
12258         (struct discriminant_info): New.
12259         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
12260         enumerator.
12261         (struct main_type) <flag_discriminated_union>: New field.
12262
12263 2018-02-26  Tom Tromey  <tom@tromey.com>
12264
12265         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12266         unittests/unpack-selftests.c.
12267         * unittests/unpack-selftests.c: New file.
12268         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
12269
12270 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12271
12272         * dwarf2read.c (struct partial_die_info) <read>: New method.
12273         (read_partial_die): Remove the declaration.
12274         (load_partial_dies): Update.
12275         (partial_die_info::partial_die_info):
12276         (read_partial_die): Change it to partial_die_info::read.
12277
12278 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12279
12280         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
12281         (fixup_partial_die): Remove declaration.
12282         (scan_partial_symbols): Update.
12283         (partial_die_parent_scope): Likewise.
12284         (partial_die_full_name): Likewise.
12285         (fixup_partial_die): Change it to partial_die_info::fixup.
12286
12287 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12288
12289         * dwarf2read.c (read_partial_die): Update the declaration.
12290         (load_partial_dies): Caller update.
12291         (read_partial_die): Remove one argument abbrev_len.
12292
12293 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12294
12295         * dwarf2read.c (struct partial_die_info): Add ctor, delete
12296         assignment operator.
12297         (load_partial_dies): Use ctor and copy ctor.
12298         (read_partial_die): Update.
12299         (dwarf2_cu::find_partial_die): Use ctor.
12300
12301 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12302
12303         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
12304         (find_partial_die_in_comp_unit): Change it to
12305         dwarf2_cu::find_partial_die.
12306         (find_partial_die): Update.
12307
12308 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12309
12310         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
12311         is NULL.
12312
12313 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12314
12315         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
12316
12317 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
12318
12319         * arch/amd64.h: Use common/tdesc.h.
12320         * arch/i386.c: Likewise.
12321         * arch/i386.h: Likewise.
12322         * arch/tic6x.c: Likewise.
12323         * arch/tdesc.h: Move file from here...
12324         * common/tdesc.h: ...to here.
12325         * features/aarch64-core.c: Regenerate.
12326         * features/aarch64-fpu.c: Regenerate.
12327         * features/i386/32bit-avx.c: Regenerate.
12328         * features/i386/32bit-avx512.c: Regenerate.
12329         * features/i386/32bit-core.c: Regenerate.
12330         * features/i386/32bit-linux.c: Regenerate.
12331         * features/i386/32bit-mpx.c: Regenerate.
12332         * features/i386/32bit-pkeys.c: Regenerate.
12333         * features/i386/32bit-sse.c: Regenerate.
12334         * features/i386/64bit-avx.c: Regenerate.
12335         * features/i386/64bit-avx512.c: Regenerate.
12336         * features/i386/64bit-core.c: Regenerate.
12337         * features/i386/64bit-linux.c: Regenerate.
12338         * features/i386/64bit-mpx.c: Regenerate.
12339         * features/i386/64bit-pkeys.c: Regenerate.
12340         * features/i386/64bit-segments.c: Regenerate.
12341         * features/i386/64bit-sse.c: Regenerate.
12342         * features/i386/x32-core.c: Regenerate.
12343         * features/tic6x-c6xp.c: Regenerate.
12344         * features/tic6x-core.c: Regenerate.
12345         * features/tic6x-gp.c: Regenerate.
12346         * target-descriptions.c: Use common/tdesc.h.
12347         * target-descriptions.h: Likewise.
12348
12349 2018-02-24  Tom Tromey  <tom@tromey.com>
12350
12351         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
12352         (try_thread_db_load_from_dir, thread_db_load_search): Use
12353         std::string.
12354         (info_auto_load_libthread_db_compare): Return bool.  Change
12355         argument types.
12356         (info_auto_load_libthread_db): Use std::vector, std::string.
12357         Remove cleanups.
12358
12359 2018-02-24  Tom Tromey  <tom@tromey.com>
12360
12361         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
12362         std::string.
12363         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
12364         std::string*.
12365         * gdbarch.c: Rebuild.
12366         * gdbarch.h: Rebuild.
12367         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
12368         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
12369         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
12370         std::string*.
12371
12372 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
12373
12374         * gdbtypes.h (sect_offset): Change type to uint64_t.
12375         (sect_offset_str): New function.
12376         * dwarf2read.c (create_addrmap_from_aranges): Use
12377         sect_offset_str.
12378         (error_check_comp_unit_head): Likewise.
12379         (create_debug_type_hash_table): Likewise.
12380         (read_cutu_die_from_dwo): Likewise.
12381         (init_cutu_and_read_dies): Likewise.
12382         (init_cutu_and_read_dies_no_follow): Likewise.
12383         (process_psymtab_comp_unit_reader): Likewise.
12384         (partial_die_parent_scope): Likewise.
12385         (peek_die_abbrev): Likewise.
12386         (process_queue): Likewise.
12387         (dwarf2_physname): Likewise.
12388         (read_namespace_alias): Likewise.
12389         (read_import_statement): Likewise.
12390         (create_dwo_cu_reader): Likewise.
12391         (create_cus_hash_table): Likewise.
12392         (lookup_dwo_cutu): Likewise.
12393         (inherit_abstract_dies): Likewise.
12394         (read_func_scope): Likewise.
12395         (read_call_site_scope): Likewise.
12396         (dwarf2_add_member_fn): Likewise.
12397         (read_common_block): Likewise.
12398         (read_module_type): Likewise.
12399         (read_typedef): Likewise.
12400         (read_subrange_type): Likewise.
12401         (load_partial_dies): Likewise.
12402         (read_partial_die): Likewise.
12403         (find_partial_die): Likewise.
12404         (read_str_index): Likewise.
12405         (dwarf2_string_attr): Likewise.
12406         (build_error_marker_type): Likewise.
12407         (lookup_die_type): Likewise.
12408         (dump_die_shallow): Likewise.
12409         (follow_die_ref): Likewise.
12410         (dwarf2_fetch_die_loc_sect_off): Likewise.
12411         (dwarf2_fetch_constant_bytes): Likewise.
12412         (follow_die_sig): Likewise.
12413         (get_signatured_type): Likewise.
12414         (get_DW_AT_signature_type): Likewise.
12415         (dwarf2_find_containing_comp_unit): Likewise.
12416         (set_die_type): Likewise.
12417
12418 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
12419
12420         * arch/aarch64.c: Include "common-defs.h".
12421         * arch/amd64.c: Likewise.
12422         * arch/i386.c: Likewise.
12423
12424 2018-02-21  Tom Tromey  <tom@tromey.com>
12425
12426         * value.h: (extract_field_op): Update.
12427         * eval.c (extract_field_op): Return a const char *.
12428         * expression.h (parse_expression_for_completion): Update.
12429         * completer.c (complete_expression): Update.
12430         (add_struct_fields): Make fieldname const.
12431         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
12432         (mark_completion_tag, parse_exp_in_context_1): Update.
12433         (parse_expression_for_completion): Change "name" to
12434         unique_xmalloc_ptr*.
12435
12436 2018-02-21  Tom Tromey  <tom@tromey.com>
12437
12438         * infcall.c (call_function_by_hand_dummy): Use std::vector.
12439
12440 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12441
12442         * avr-tdep.c (avr_read_pc): Change parameter type to
12443         readable_regcache.
12444         * gdbarch.sh (read_pc): Likewise.
12445         * gdbarch.c: Re-generated.
12446         * gdbarch.h: Re-generated.
12447         * hppa-tdep.c (hppa_read_pc): Change parameter type to
12448         readable_regcache.
12449         * ia64-tdep.c (ia64_read_pc): Likewise.
12450         * mips-tdep.c (mips_read_pc): Likewise.
12451         * spu-tdep.c (spu_read_pc): Likewise.
12452
12453 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12454
12455         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
12456         * regcache-dump.c: New file.
12457         * regcache.c: Move register_dump to regcache-dump.c.
12458         (maintenance_print_registers): Likewise.
12459         (maintenance_print_raw_registers): Likewise.
12460         (maintenance_print_cooked_registers): Likewise.
12461         (maintenance_print_register_groups): Likewise.
12462         (maintenance_print_remote_registers): Likewise.
12463         (_initialize_regcache): Likewise.
12464         * regcache.h (register_dump): Moved from regcache.c.
12465
12466 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12467
12468         * regcache.c (regcache::regcache): Update.
12469         (regcache::invalidate): Move it to detached_regcache::invalidate.
12470         (get_thread_arch_aspace_regcache): Update.
12471         (regcache::raw_update): Update.
12472         (regcache::cooked_read): Remove some code.
12473         (regcache::cooked_read_value): Likewise.
12474         (regcache::raw_write): Remove assert on m_readonly_p.
12475         (regcache::raw_supply_integer): Move it to
12476         detached_regcache::raw_supply_integer.
12477         (regcache::raw_supply_zeroed): Likewise.
12478         * regcache.h (detached_regcache) <raw_supply_integer>: New
12479         declaration.
12480         <raw_supply_zeroed, invalidate>: Likewise.
12481         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
12482         <invalidate>: Likewise.
12483         <m_readonly_p>: Removed.
12484
12485 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12486
12487         * infcmd.c (get_return_value): Let stop_regs point to
12488         get_current_regcache.
12489         * regcache.c (regcache::regcache): Remove.
12490         (register_dump_reg_buffer): New class.
12491         (regcache_print): Adjust.
12492         * regcache.h (regcache): Remove constructors.
12493
12494 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12495
12496         * regcache.c (class register_dump): New class.
12497         (register_dump_regcache, register_dump_none): New class.
12498         (register_dump_remote, register_dump_groups): New class.
12499         (regcache_print): Update.
12500         * regcache.h (regcache_dump_what): Move it to regcache.c.
12501         (regcache) <dump>: Remove.
12502
12503 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12504
12505         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
12506          reg_buffer_rw *.
12507         (jit_unwind_reg_set_impl): Call raw_supply.
12508         (jit_frame_sniffer): Use reg_buffer_rw.
12509         * record-full.c (record_full_core_regbuf): Change its type.
12510         (record_full_core_open_1): Use reg_buffer_rw.
12511         (record_full_close): Likewise.
12512         (record_full_core_fetch_registers): Use regcache->raw_supply.
12513         (record_full_core_store_registers): Likewise.
12514         * regcache.c (regcache::get_register_status): Move it to
12515         reg_buffer.
12516         (regcache_raw_set_cached_value): Remove.
12517         (regcache::raw_set_cached_value): Remove.
12518         (regcache::raw_write): Call raw_supply.
12519         (regcache::raw_supply): Move it to reg_buffer_rw.
12520         * regcache.h (regcache_raw_set_cached_value): Remove.
12521         (reg_buffer_rw): New class.
12522
12523 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12524
12525         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
12526         readonly_detached_regcache.
12527         (dummy_frame_prev_register): Use regcache->cooked_read.
12528         * frame.c (frame_save_as_regcache): Change return type.
12529         (frame_pop): Update.
12530         * frame.h (frame_save_as_regcache): Update declaration.
12531         * inferior.h (get_infcall_suspend_state_regcache): Update
12532         declaration.
12533         * infrun.c (infcall_suspend_state) <registers>: use
12534         readonly_detached_regcache.
12535         (save_infcall_suspend_state): Don't use regcache_dup.
12536         (get_infcall_suspend_state_regcache): Change return type.
12537         * linux-fork.c (struct fork_info) <savedregs>: Change to
12538         readonly_detached_regcache.
12539         <pc>: New field.
12540         (fork_save_infrun_state): Don't use regcache_dup.
12541         (info_checkpoints_command): Adjust.
12542         * mi/mi-main.c (register_changed_p): Update declaration.
12543         (mi_cmd_data_list_changed_registers): Use
12544         readonly_detached_regcache.
12545         (register_changed_p): Change parameter type to
12546         readonly_detached_regcache.
12547         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
12548         readonly_detached_regcache.
12549         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
12550         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
12551         New.
12552         (regcache::save): Move it to reg_buffer.
12553         (regcache::restore): Change parameter type.
12554         (regcache_dup): Remove.
12555         * regcache.h (reg_buffer) <save>: New method.
12556         (readonly_detached_regcache): New class.
12557         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
12558         readonly_detached_regcache.
12559         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
12560
12561 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12562
12563         * frame.c (frame_save_as_regcache): Use regcache method save.
12564         (frame_pop): Use regcache method restore.
12565         * infrun.c (restore_infcall_suspend_state): Likewise.
12566         * linux-fork.c (fork_load_infrun_state): Likewise.
12567         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
12568         save.
12569         * regcache.c (regcache_save): Remove.
12570         (regcache::restore): More asserts.
12571         (regcache_cpy): Remove.
12572         * regcache.h (regcache_save): Remove the declaration.
12573         (regcache::restore): Move from private to public.
12574         Remove the friend declaration of regcache_cpy.
12575         (regcache_cpy): Remove declaration.
12576
12577 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12578
12579         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
12580         parameter type to 'readable_regcache *'.
12581         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
12582         * arm-tdep.c (arm_neon_quad_read): Likewise.
12583         (arm_pseudo_read): Likewise.
12584         * avr-tdep.c (avr_pseudo_register_read): Likewise.
12585         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
12586         * frv-tdep.c (frv_pseudo_register_read): Likewise.
12587         * gdbarch.c: Re-generated.
12588         * gdbarch.h: Re-generated.
12589         * gdbarch.sh (pseudo_register_read): Change parameter type to
12590         'readable_regcache *'.
12591         (pseudo_register_read_value): Likewise.
12592         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
12593         (h8300_pseudo_register_read): Likewise.
12594         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
12595         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
12596         (i386_pseudo_register_read_into_value): Likewise.
12597         (i386_pseudo_register_read_value): Likewise.
12598         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
12599         declaration.
12600         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
12601         * m32c-tdep.c (m32c_raw_read): Likewise.
12602         (m32c_read_flg): Likewise.
12603         (m32c_banked_register): Likewise.
12604         (m32c_banked_read): Likewise.
12605         (m32c_sb_read): Likewise.
12606         (m32c_part_read): Likewise.
12607         (m32c_cat_read): Likewise.
12608         (m32c_r3r2r1r0_read): Likewise.
12609         (m32c_pseudo_register_read): Likewise.
12610         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
12611         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
12612         (mep_pseudo_cr64_read): Likewise.
12613         (mep_pseudo_register_read): Likewise.
12614         * mips-tdep.c (mips_pseudo_register_read): Likewise.
12615         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
12616         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
12617         * regcache.c (regcache::raw_read): Move it to readable_regcache.
12618         (regcache::cooked_read): Likewise.
12619         (regcache::cooked_read_value): Likewise.
12620         (regcache_cooked_read_signed):
12621         (regcache::cooked_read): Likewise.
12622         * regcache.h (readable_regcache): New class.
12623         (regcache): Inherit readable_regcache.  Move some methods to
12624         readable_regcache.
12625         * rl78-tdep.c (rl78_pseudo_register_read): Change
12626         parameter type to 'readable_regcache *'.
12627         * rs6000-tdep.c (do_regcache_raw_read): Remove.
12628         (e500_pseudo_register_read): Change parameter type to
12629         'readable_regcache *'.
12630         (dfp_pseudo_register_read): Likewise.
12631         (vsx_pseudo_register_read): Likewise.
12632         (efpr_pseudo_register_read): Likewise.
12633         * s390-tdep.c (s390_pseudo_register_read): Likewise.
12634         * sh-tdep.c (sh_pseudo_register_read): Likewise.
12635         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
12636         (sh64_pseudo_register_read): Likewise.
12637         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
12638         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
12639         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
12640         (spu_pseudo_register_read): Likewise.
12641         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
12642         (xtensa_pseudo_register_read): Likewise.
12643
12644 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12645
12646         * regcache.c (regcache::regcache): Call reg_buffer ctor.
12647         (regcache::arch): Move it to reg_buffer::arch.
12648         (regcache::register_buffer): Likewise.
12649         (regcache::assert_regnum): Likewise.
12650         (regcache::num_raw_registers): Likewise.
12651         * regcache.h (reg_buffer): New class.
12652         (regcache): Inherit reg_buffer.
12653
12654 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
12655
12656         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
12657         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
12658
12659 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
12660
12661         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
12662
12663 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
12664
12665         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
12666         (SFILES): Remove common/*.c files.
12667         (COMMON_OBS): Remove some *.o files built from common/*.c files.
12668         * common/common.host: Add common reference.
12669         * configure.ac: Likewise.
12670         * configure: Regenerate.
12671
12672 2018-02-16  Yao Qi  <yao.qi@linaro.org>
12673
12674         * block.c (block_namespace_info): Inherit allocate_on_obstack.
12675         (block_initialize_namespace): Use new.
12676         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
12677         (dwarf2_free_objfile): Use delete.
12678         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
12679         (copy_type_recursive): Use new.
12680         * gdb_obstack.h (allocate_on_obstack): New.
12681
12682 2018-02-15  Yao Qi  <yao.qi@linaro.org>
12683
12684         PR gdb/22849
12685         * inferior.c (exit_inferior_1): Reset inf->control.
12686
12687 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
12688
12689         * ada-lang.c (ada_to_fixed_value_create): Delete advance
12690         declaration.
12691
12692 2018-02-14  Pedro Alves  <palves@redhat.com>
12693
12694         * frame-unwind.c (frame_unwind_try_unwinder): Always call
12695         frame_cleanup_after_sniffer on exception.
12696
12697 2018-02-14  Tom Tromey  <tom@tromey.com>
12698
12699         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
12700         const.
12701         (solib_bfd_open): Make pathname const.
12702         * solib.c (solib_bfd_open): Make pathname const.
12703         * solib-spu.c (spu_bfd_fopen): Make name const.
12704         (spu_bfd_open): Make pathname const.
12705         * solib-darwin.c (darwin_bfd_open): Make pathname const.
12706         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
12707
12708 2018-02-14  Tom Tromey  <tom@tromey.com>
12709
12710         * symfile.c (symfile_bfd_open): Update.
12711         * source.h (openp, source_full_path_of, find_and_open_source):
12712         Change argument type to unique_xmalloc_ptr.
12713         * source.c (openp): Take a unique_xmalloc_ptr.
12714         (source_full_path_of, find_and_open_source): Likewise.
12715         (open_source_file, symtab_to_fullname): Update.
12716         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
12717         unique_xmalloc_ptr.
12718         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
12719         (exec_file_find): Update.
12720         * psymtab.c (psymtab_to_fullname): Update.
12721         * nto-tdep.h (nto_find_and_open_solib): Update.
12722         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
12723         unique_xmalloc_ptr.
12724         * exec.c (exec_file_attach): Update.
12725         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
12726         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
12727
12728 2018-02-14  Tom Tromey  <tom@tromey.com>
12729
12730         * solib.c: Include source.h.
12731         * nto-tdep.c: Include source.h.
12732         * mi/mi-cmd-env.c: Include source.h.
12733         * infcmd.c: Include source.h.
12734         * exec.c: Include source.h.
12735         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
12736         (add_path, directory_switch, source_path, init_source_path): Move
12737         declarations...
12738         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
12739         (add_path, directory_switch, source_path, init_source_path):
12740         ...here.
12741
12742 2018-02-14  Tom Tromey  <tom@tromey.com>
12743
12744         * solist.h (exec_file_find, solib_find): Return
12745         unique_xmalloc_ptr.
12746         (solib_bfd_fopen): Take a const char *.
12747         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
12748         (exec_file_find, solib_find): Likewise.
12749         (solib_bfd_fopen): Do not take ownership of "pathname".
12750         (solib_bfd_open): Use unique_xmalloc_ptr.
12751         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
12752         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
12753         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
12754         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
12755
12756 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
12757
12758         * ada-lang.c (name_match_type_from_name): Remove reference to
12759         ada_name_for_lookup in function's documentation.
12760         * ada-lang.h (ada_name_for_lookup): Delete declaration.
12761
12762 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
12763
12764         * defs.h (enum openp_flags): New enum.
12765         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
12766         Move to enum openp_flags.
12767         (openp_flags): New enum flags.
12768         (openp): Change parameter type to openp_flags.
12769         * source.c (openp): Change parameter type to openp_flags.
12770         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
12771         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
12772
12773 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
12774
12775         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
12776         per-command.
12777
12778 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12779
12780         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
12781         into...
12782         (class dwarf2_queue_guard): ...the destructor of this new class.
12783         (dw2_do_instantiate_symtab): Create instance of the new class
12784         dwarf2_queue_guard, remove cleanup.
12785
12786 2018-02-09  Tom Tromey  <tom@tromey.com>
12787
12788         * source.c (find_source_lines): Don't reference past the end of
12789         the vector.
12790
12791 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12792
12793         * remote.c (remote_btrace_maybe_reopen): Change error message.
12794         * btrace.c (btrace_enable): Likewise.
12795         (parse_xml_btrace): Likewise.
12796         (parse_xml_btrace_conf): Likewise.
12797
12798 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12799
12800         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
12801         (linux_enable_pt, linux_enable_bts): Call
12802         diagnose_perf_event_open_fail.
12803
12804 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12805
12806         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
12807         Remove parameter and change return type.  Update callers.  Move it.
12808         (linux_enable_bts, linux_enable_pt): Improve error message.
12809         (linux_enable_pt): Remove zero buffer size check.
12810         (linux_enable_btrace): Improve error messages.  Remove NULL return
12811         check.
12812
12813 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12814
12815         * btrace.c (btrace_enable): Remove target_supports_btrace call.
12816         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
12817         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
12818         (linux_supports_pt, linux_supports_btrace): Remove.
12819         (linux_enable_bts): Call cpu_supports_bts.
12820         * nat/linux-btrace.h (linux_supports_btrace): Remove.
12821         * remote.c (remote_supports_btrace): Remove.
12822         (init_remote_ops): Remove remote_supports_btrace.
12823         * target-delegates.c: Regenerated.
12824         * target.c (target_supports_btrace): Remove.
12825         * target.h (target_ops) <to_supports_btrace>: Remove
12826         (target_supports_btrace): Remove.
12827         * x86-linux-nat.c (x86_linux_create_target): Remove
12828         linux_supports_btrace.
12829
12830 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12831
12832         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
12833         btrace failed.
12834         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
12835         exception and use message in own exception.
12836
12837 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12838
12839         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
12840         (perf_event_pt_event_type): Use gdb_file_up.
12841         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
12842         scoped_fd, and scoped_mmap.
12843
12844 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12845
12846         * common/scoped_mmap.h: New.
12847         * unittests/scoped_mmap-selftest.c: New.
12848         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12849         unittests/scoped_mmap-selftest.c.
12850
12851 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12852
12853         * common/scoped_fd.h: New.
12854         * unittests/scoped_fd-selftest.c: New.
12855         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12856         unittests/scoped_fd-selftest.c.
12857
12858 2018-02-09  Tom Tromey  <tom@tromey.com>
12859
12860         * auto-load.c (auto_load_section_scripts): Use
12861         gdb::unique_xmalloc_ptr.
12862
12863 2018-02-09  Tom Tromey  <tom@tromey.com>
12864
12865         * auto-load.c (execute_script_contents): Use std::string.
12866
12867 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
12868
12869         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
12870         Python function, rather than a new command.
12871
12872 2018-02-08  Tom Tromey  <tom@tromey.com>
12873
12874         * solib.c (solib_find_1): Use std::string.
12875         (solib_bfd_fopen): Use unique_xmalloc_ptr.
12876
12877 2018-02-08  Tom Tromey  <tom@tromey.com>
12878
12879         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
12880
12881 2018-02-08  Tom Tromey  <tom@tromey.com>
12882
12883         * source.c (find_source_lines): Use gdb::def_vector.
12884
12885 2018-02-08  Tom Tromey  <tom@tromey.com>
12886
12887         * macrocmd.c (struct temporary_macro_definition): New.
12888         (macro_define_command): Use temporary_macro_definition.  Remove
12889         cleanups.
12890         (free_macro_definition_ptr): Remove.
12891
12892 2018-02-08  Tom Tromey  <tom@tromey.com>
12893
12894         * macroexp.c (maybe_expand): Use std::string.
12895
12896 2018-02-08  Tom Tromey  <tom@tromey.com>
12897
12898         * macroexp.c (struct macro_buffer): Add initializers for some
12899         members.
12900         (init_buffer, init_shared_buffer, free_buffer)
12901         (free_buffer_return_text): Remove.
12902         (macro_buffer): New constructors.
12903         (~macro_buffer): New destructor.
12904         (macro_buffer::set_shared): New method.
12905         (macro_buffer::resize_buffer, macro_buffer::appendc)
12906         (macro_buffer::appendmem): Now methods, not free functions.
12907         (set_token, append_tokens_without_splicing, stringify)
12908         (macro_stringify): Update.
12909         (gather_arguments): Change return type.  Remove argc_p argument,
12910         add args_ptr argument.  Use std::vector.
12911         (substitute_args): Remove argc argument.  Accept std::vector.
12912         (expand): Update.  Use std::vector.
12913         (scan, macro_expand, macro_expand_next): Update.
12914
12915 2018-02-08  Tom Tromey  <tom@tromey.com>
12916
12917         * symtab.c (default_collect_symbol_completion_matches_break_on):
12918         Use unique_xmalloc_ptr.
12919         * macroscope.h: (sal_macro_scope, user_macro_scope)
12920         (default_macro_scope): Return unique_xmalloc_ptr.
12921         * macroscope.c (sal_macro_scope, user_macro_scope)
12922         (default_macro_scope): Return unique_xmalloc_ptr.
12923         * macroexp.h (macro_expand, macro_expand_once): Return
12924         unique_xmalloc_ptr.
12925         * macroexp.c (macro_expand, macro_expand_once): Return
12926         unique_xmalloc_ptr.
12927         * macrocmd.c (macro_expand_command, macro_expand_once_command)
12928         (info_macro_command, info_macros_command): Use
12929         unique_xmalloc_ptr.
12930         * compile/compile-c-support.c (write_macro_definitions): Use
12931         unique_xmalloc_ptr.
12932         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
12933
12934 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
12935
12936         * value.c (value_static_field): Assign field type instead of
12937         containing type when returning an optimized out value.
12938
12939 2018-02-06  Yao Qi  <yao.qi@linaro.org>
12940
12941         * ft32-tdep.c (ft32_read_pc): Remove.
12942         (ft32_write_pc): Remove.
12943         (ft32_gdbarch_init): Update.
12944         * m32r-tdep.c (m32r_read_pc): Remove.
12945         (m32r_gdbarch_init): Update.
12946         * mep-tdep.c (mep_read_pc): Remove.
12947         (mep_gdbarch_init): Update.
12948         * microblaze-tdep.c (microblaze_write_pc): Remove.
12949         (microblaze_gdbarch_init): Update.
12950         * mn10300-tdep.c (mn10300_read_pc): Remove.
12951         (mn10300_write_pc): Remove.
12952         (mn10300_gdbarch_init): Update.
12953         * moxie-tdep.c (moxie_read_pc): Remove.
12954         (moxie_write_pc): Remove.
12955         (moxie_gdbarch_init): Update.
12956
12957 2018-02-06  Yao Qi  <yao.qi@linaro.org>
12958
12959         * expprint.c (print_subexp_standard): Handle
12960         OP_F77_UNDETERMINED_ARGLIST.
12961         (dump_subexp_body_standard): Likewise.
12962
12963 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
12964
12965         * target-descriptions.c (tdesc_element_visitor) Add empty
12966         implementations.
12967         (tdesc_type): Move make_gdb_type from here.
12968         (tdesc_type_builtin): Likewise.
12969         (tdesc_type_vector): Likewise.
12970         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
12971         (make_gdb_type_struct): Move from tdesc_type_with_fields.
12972         (make_gdb_type_union): Likewise.
12973         (make_gdb_type_flags): Likewise.
12974         (make_gdb_type_enum): Likewise.
12975         (make_gdb_type): New function.
12976         (tdesc_register_type): Use static make_gdb_type.
12977
12978 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
12979
12980         * infcmd.c (default_print_one_register_info): Align natural-format
12981         column values consistently one under another.
12982         (pad_to_column): New function.
12983
12984 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
12985
12986         * dwarf2read.c (dwarf2_physname): Move commment.
12987
12988 2018-02-01  Leszek Swirski  <leszeks@google.com>
12989
12990         * varobj.c (varobj_formatted_print_options): Allow recursive
12991         pretty printing if pretty printing is enabled.
12992
12993 2018-02-01  Leszek Swirski  <leszeks@google.com>
12994
12995         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
12996         names after a structop as a filename.
12997
12998 2018-02-01  Yao Qi  <yao.qi@linaro.org>
12999
13000         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
13001         (arm_record_coproc_data_proc): Likewise.
13002
13003 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13004
13005         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
13006
13007 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
13008
13009         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
13010         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
13011
13012 2018-01-31  Pedro Alves  <palves@redhat.com>
13013
13014         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
13015         * inflow.c (child_terminal_save_inferior): Wrap reference to
13016         tcgetpgrp in HAVE_TERMIOS_H.
13017         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
13018         _WIN32.
13019         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
13020         always iterate over all inferiors.
13021         (gdbsim_cntrl_c): Adjust.
13022         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
13023
13024 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13025
13026         * gdbtypes.c (lookup_array_range_type): Make sure the array's
13027         index type is objfile-owned if the element type is as well.
13028
13029 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13030
13031         GDB 8.1 released.
13032
13033 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13034
13035         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
13036         "features/s390x-linux64.c".
13037         (_initialize_s390_linux_tdep): Remove initialization of tdescs
13038         s390_linux32 and s390x_linux64.
13039         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
13040         default tdesc.
13041         * s390-tdep.c: Include "features/s390-linux32.c" and
13042         "features/s390x-linux64.c".
13043         (s390_tdesc_valid): Add check for tdesc_has_registers.
13044         (s390_gdbarch_init): Make sure there is always a valid tdesc.
13045         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
13046         tdesc_s390x_linux64.
13047         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
13048         tdesc_s390x_linux64 to...
13049         * s390-tdep.h: ...here.
13050
13051 2018-01-30  Pedro Alves  <palves@redhat.com>
13052
13053         PR gdb/13211
13054         * config.in, configure: Regenerate.
13055         * configure.ac: Check for getpgid.
13056         * go32-nat.c (go32_pass_ctrlc): New.
13057         (go32_target): Install it.
13058         * inf-child.c (inf_child_target): Install
13059         child_terminal_save_inferior, child_pass_ctrlc and
13060         child_interrupt.
13061         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
13062         (inf_ptrace_target): No longer install it.
13063         * infcmd.c (interrupt_target_1): Adjust.
13064         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
13065         (child_interrupt): Declare.
13066         (inferior::terminal_state): New.
13067         * inflow.c (struct terminal_info): Update comments.
13068         (inferior_process_group): Delete.
13069         (terminal_is_ours): Delete.
13070         (gdb_tty_state): New.
13071         (child_terminal_init): Adjust.
13072         (is_gdb_terminal, sharing_input_terminal_1)
13073         (sharing_input_terminal): New functions.
13074         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
13075         Set the process's actual process group in the foreground if
13076         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
13077         mark terminal as the inferior's if not sharing GDB's terminal.
13078         Don't check attach_flag.
13079         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
13080         pass down a target_terminal_state.
13081         (child_terminal_save_inferior): New, factored out from ...
13082         (child_terminal_ours_1): ... this.  Handle
13083         target_terminal_state::is_ours_for_output.
13084         (child_interrupt, child_pass_ctrlc): New.
13085         (inflow_inferior_exit): Clear the inferior's terminal_state.
13086         (copy_terminal_info): Copy the inferior's terminal state.
13087         (_initialize_inflow): Remove reference to terminal_is_ours.
13088         * inflow.h (inferior_process_group): Delete.
13089         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
13090         * procfs.c (procfs_target): Don't install procfs_interrupt.
13091         (procfs_interrupt): Delete.
13092         * remote.c (remote_serial_quit_handler): Adjust.
13093         (remote_interrupt): Remove ptid parameter.  Adjust.
13094         * target-delegates.c: Regenerate.
13095         * target.c: Include "terminal.h".
13096         (target_terminal::terminal_state): Rename to ...
13097         (target_terminal::m_terminal_state): ... this.
13098         (target_terminal::init): Adjust.
13099         (target_terminal::inferior): Adjust to per-inferior
13100         terminal_state.
13101         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
13102         (target_terminal::ours, target_terminal::ours_for_output): Use
13103         target_terminal_is_ours_kind.
13104         (target_interrupt): Remove ptid parameter.  Adjust.
13105         (default_target_pass_ctrlc): Adjust.
13106         * target.h (target_ops::to_terminal_save_inferior): New field.
13107         (target_ops::to_interrupt): Remove ptid_t parameter.
13108         (target_interrupt): Remove ptid_t parameter.  Update comment.
13109         (target_pass_ctrlc): Update comment.
13110         * target/target.h (target_terminal_state): New scoped enum,
13111         factored out of ...
13112         (target_terminal::terminal_state): ... here.
13113         (target_terminal::inferior): Update comments.
13114         (target_terminal::restore_inferior): New.
13115         (target_terminal::is_inferior, target_terminal::is_ours)
13116         (target_terminal::is_ours_for_output): Adjust.
13117         (target_terminal::scoped_restore_terminal_state): Adjust to
13118         rename, and call restore_inferior() instead of inferior().
13119         (target_terminal::scoped_restore_terminal_state::m_state): Change
13120         type.
13121         (target_terminal::terminal_state): Rename to ...
13122         (target_terminal::m_terminal_state): ... this and change type.
13123
13124 2018-01-30  Pedro Alves  <palves@redhat.com>
13125
13126         * linux-nat.c (wait_for_signal): New function.
13127         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
13128         directly.
13129         (async_terminal_is_ours)
13130         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
13131         (linux_nat_add_target): Don't override
13132         to_terminal_inferior/to_terminal_ours.
13133
13134 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
13135
13136         * remote.c (remote_follow_fork): Don't call "detach_inferior".
13137
13138 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
13139
13140         * dwarf2read.c (free_dwo_files): Add forward-declaration.
13141         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
13142         dwarf2_per_objfile_free here.
13143         (dwarf2_per_objfile_free): Remove.
13144         (_initialize_dwarf2_read): Don't register
13145         dwarf2_per_objfile_free as a registry cleanup.
13146
13147 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
13148
13149         Avoid compilation errors in MinGW native builds
13150
13151         The error is triggered by including python-internal.h, and the
13152         error message is:
13153
13154              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
13155                       from build-gnulib/import/math.h:27,
13156                       from d:/usr/Python26/include/pyport.h:235,
13157                       from d:/usr/Python26/include/Python.h:58,
13158                       from python/python-internal.h:94,
13159                       from python/py-arch.c:24:
13160              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
13161         using ::hypot;
13162                 ^~~~~
13163
13164         This happens because Python headers define 'hypot' to expand t
13165         '_hypot' in the Windows builds.
13166         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
13167         'hypoth'.  This avoids a compilation error.
13168
13169 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13170
13171         * MAINTAINERS (Write After Approval): Fix ordering.
13172
13173 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13174
13175         * MAINTAINERS (Write After Approval): Add Alan Hayward.
13176
13177 2018-01-26  Alan Modra  <amodra@gmail.com>
13178
13179         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
13180         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
13181         Remove nop.  Make const.  Comment.
13182         (powerpc32_plt_stub_so_2): New.
13183         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
13184         Correct count.  Update uses.
13185         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
13186         Move common code reading PLT entry word.  Correct
13187         powerpc32_plt_stub PLT address calculation.
13188         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
13189         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
13190         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
13191         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
13192         (ppc64_standard_linkage8): Likewise.
13193         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
13194         Correct insns description.
13195         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
13196
13197 2018-01-24  Pedro Alves  <palves@redhat.com>
13198
13199         GCC PR libstdc++/83906
13200         * gdbtypes.c (operator==(const dynamic_prop &,
13201         const dynamic_prop &)): New.
13202         (operator==(const range_bounds &, const range_bounds &)): New.
13203         (check_types_equal): Use them instead of memcmp.
13204         * gdbtypes.h (operator==(const dynamic_prop &,
13205         const dynamic_prop &)): Declare.
13206         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
13207         (operator==(const range_bounds &, const range_bounds &)): Declare.
13208         (operator!=(const range_bounds &, const range_bounds &)): Declare.
13209
13210 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13211
13212         * s390-linux-tdep.c (s390_record_address_mask)
13213         (s390_record_calc_disp_common, s390_record_calc_disp)
13214         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13215         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13216         (s390_process_record): Move to s390-tdep.c.
13217         (s390_linux_init_abi_any): Adjust.
13218         * s390-tdep.c (s390_record_address_mask)
13219         (s390_record_calc_disp_common, s390_record_calc_disp)
13220         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13221         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13222         (s390_process_record): Moved from s390-linux-tdep.c
13223         (s390_gdbarch_init): Adjust.
13224
13225 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13226
13227         * s390-linux-nat.c (s390-tdep.h): New include.
13228         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
13229         (HFILES_NO_SRCDIR): Add s390-tdep.h.
13230         (ALLDEPFILES): Add s390-tdep.c.
13231         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
13232         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
13233         * s390-tdep.h: ...this.  New file.
13234         * s390-linux-tdep.c (s390-tdep.h): New include.
13235         (_initialize_s390_tdep): Rename to...
13236         (_initialize_s390_linux_tdep): ...this and adjust.
13237         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
13238         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
13239         s390-tdep.h.
13240         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
13241         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
13242         (s390_is_partial_instruction, s390_software_single_step)
13243         (is_non_branch_ril, s390_displaced_step_copy_insn)
13244         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
13245         (s390_prologue_data, s390_addr, s390_store, s390_load)
13246         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
13247         (s390_register_call_saved, s390_guess_tracepoint_registers)
13248         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
13249         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
13250         (s390_pseudo_register_name, s390_pseudo_register_type)
13251         (s390_pseudo_register_read, s390_pseudo_register_write)
13252         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
13253         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
13254         (s390_addr_bits_remove, s390_address_class_type_flags)
13255         (s390_address_class_type_flags_to_name)
13256         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
13257         (s390_function_arg_float, s390_function_arg_vector)
13258         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
13259         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
13260         (s390_frame_align, s390_register_return_value, s390_return_value)
13261         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
13262         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
13263         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
13264         (s390_trad_frame_prev_register, s390_unwind_cache)
13265         (s390_prologue_frame_unwind_cache)
13266         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
13267         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
13268         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
13269         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
13270         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
13271         (s390_frame_base_address, s390_local_base_address)
13272         (s390_frame_base, s390_gcc_target_options)
13273         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
13274         (s390_validate_reg_range, s390_tdesc_valid)
13275         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
13276         * s390-tdep.c: ...this.  New file.
13277
13278 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13279
13280         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
13281         (s390_process_record, s390_gdbarch_tdep_alloc)
13282         (s390_linux_init_abi_any): Use/set new hook.
13283
13284 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13285
13286         * s390-linux-tdep.c (osabi.h): New include.
13287         (s390_linux_init_abi_31, s390_linux_init_abi_64)
13288         (s390_linux_init_abi_any): New functions.
13289         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
13290
13291 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13292
13293         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
13294         tdesc_has_registers check
13295
13296 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13297
13298         * s390-linux-tdep.c (s390_tdesc_valid): New function.
13299         (s390_validate_reg_range): New macro.
13300         (s390_gdbarch_init): Adjust.
13301
13302 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13303
13304         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
13305         (s390_gdbarch_tdep_alloc): Adjust.
13306         (s390_gdbarch_init): Adjust.
13307
13308 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13309
13310         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
13311         <have_tdb>: Change type to bool.
13312         (s390_gdbarch_tdep_alloc): Adjust.
13313         (s390_gdbarch_init): Adjust.
13314
13315 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13316
13317         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
13318         (gdbarch_tdep) <have_upper, have_vx>: New fields.
13319         (s390_gdbarch_tdep_alloc): New function.
13320         (s390_gdbarch_init): Allocate tdep at start and use its fields
13321         instead of separate variables.
13322
13323 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13324
13325         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
13326         when looking for cached gdbarch and add comment for remaining.
13327
13328 2018-01-22  Pedro Alves  <palves@redhat.com>
13329             Sergio Durigan Junior  <sergiodj@redhat.com>
13330
13331         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
13332         case.
13333
13334 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
13335
13336         * MAINTAINERS: Update my company e-mail address.
13337
13338 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13339
13340         * regcache.c (cooked_write_test): New function.
13341         (_initialize_regcache): Register the test.
13342
13343 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13344
13345         * ia64-tdep.c (ia64_pseudo_register_read): Call
13346         regcache->cooked_read instead of regcache_cooked_read_unsigned.
13347         * m32c-tdep.c (m32c_cat_read): Likewise.
13348         (m32c_r3r2r1r0_read): Likewise.
13349         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13350         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13351
13352 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13353
13354         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
13355         method raw_read instead of regcache_raw_read.
13356         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13357         * arm-tdep.c (arm_neon_quad_read): Likewise.
13358         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13359         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13360         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13361         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
13362         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13363         (i386_pseudo_register_read_into_value): Likewise.
13364         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13365         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13366         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13367         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
13368         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
13369         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
13370         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13371         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
13372         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
13373
13374 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13375
13376         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
13377         * configure.tgt: Remove target mt.
13378         * mt-tdep.c: Remove.
13379         * regcache.c (cooked_read_test): Remove the check for mt.
13380
13381 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13382
13383         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
13384         instead of gdbarch_pseudo_register_read_value.
13385
13386 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13387
13388         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
13389         language is Ada.
13390
13391 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13392
13393         * linespec.c (create_sals_line_offset): Remove code that preserved
13394         the symtab_and_line's line number.
13395
13396 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13397
13398         * varobj.c (varobj_create): Don't set valid_block when creating a
13399         floating varobj.
13400
13401 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13402
13403         * varobj.c (varobj_create): Remove out of date comment.
13404
13405 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13406
13407         PR mi/20395
13408         * ada-exp.y (write_var_from_sym): Pass extra parameter when
13409         updating innermost block.
13410         * parse.c (innermost_block_tracker::update): Take extra type
13411         parameter, and check types match before updating innermost block.
13412         (write_dollar_variable): Update innermost block for registers.
13413         * parser-defs.h (enum innermost_block_tracker_type): New enum.
13414         (innermost_block_tracker::innermost_block_tracker): Initialise
13415         m_types member.
13416         (innermost_block_tracker::reset): Take type parameter.
13417         (innermost_block_tracker::update): Take type parameter, and pass
13418         type through as needed.
13419         (innermost_block_tracker::m_types): New member.
13420         * varobj.c (varobj_create): Pass type when reseting innermost
13421         block.
13422
13423 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13424
13425         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
13426         * ada-lang.c (resolve_subexp): Likewise.
13427         * breakpoint.c (set_breakpoint_condition) Likewise.
13428         (watch_command_1) Likewise.
13429         * c-exp.y (variable): Likewise.
13430         * d-exp.y (PrimaryExpression): Likewise.
13431         * f-exp.y (variable): Likewise.
13432         * go-exp.y (variable): Likewise.
13433         * m2-exp.y (variable): Likewise.
13434         * objfiles.c (objfile::~objfile): Likewise.
13435         * p-exp.y (variable): Likewise.
13436         * parse.c (innermost_block): Change type.
13437         * parser-defs.h (class innermost_block_tracker): New.
13438         (innermost_block): Change to innermost_block_tracker.
13439         * printcmd.c (display_command): Switch to innermost_block API.
13440         (do_one_display): Likewise.
13441         * rust-exp.y (do_one_display): Likewise.
13442         * symfile.c (clear_symtab_users): Likewise.
13443         * varobj.c (varobj_create): Switch to innermost_block API, replace
13444         use of innermost_block with block stored on varobj object.
13445
13446 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13447
13448         * expression.h (innermost_block): Remove declaration.
13449         * varobj.c: Add 'parser-defs.h' include.
13450
13451 2018-01-19  Tom Tromey  <tom@tromey.com>
13452
13453         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
13454         symbols in the static and global blocks.
13455
13456 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
13457
13458         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
13459         gdb_ptrace.h, and move including gdb_wait.h ...
13460         * nat/linux-ptrace.h: ... to here.
13461
13462 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13463
13464         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
13465         inf_ptrace_detach_success.
13466         (inf_ptrace_detach_success): Add inferior parameter, use it
13467         instead of inferior_ptid, pass it to detach_inferior.
13468         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
13469         parameter.
13470         * inferior.c (detach_inferior): Add overload that takes an
13471         inferior object.
13472         * inferior.h (detach_inferior): Likewise.
13473         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
13474         use inferior_ptid, adjust call to inf_ptrace_detach_success.
13475         * linux-thread-db.c (thread_db_detach): Use inf parameter.
13476
13477 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13478
13479         * target.h (struct target_ops) <to_detach>: Add inferior
13480         parameter.
13481         (target_detach): Likewise.
13482         * target.c (dispose_inferior): Pass inferior down.
13483         (target_detach): Pass inferior down.  Assert that it is equal to
13484         the current inferior.
13485         * aix-thread.c (aix_thread_detach): Pass inferior down.
13486         * corefile.c (core_file_command): Pass current_inferior() down.
13487         * corelow.c (core_detach): Add inferior parameter.
13488         * darwin-nat.c (darwin_detach): Likewise.
13489         * gnu-nat.c (gnu_detach): Likewise.
13490         * inf-ptrace.c (inf_ptrace_detach): Likewise.
13491         * infcmd.c (detach_command): Pass current_inferior() down to
13492         target_detach.
13493         * infrun.c (follow_fork_inferior): Pass parent_inf to
13494         target_detach.
13495         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
13496         target_detach.
13497         * linux-nat.c (linux_nat_detach): Add inferior parameter.
13498         * linux-thread-db.c (thread_db_detach): Likewise.
13499         * nto-procfs.c (procfs_detach): Likewise.
13500         * procfs.c (procfs_detach): Likewise.
13501         * record.c (record_detach): Likewise.
13502         * record.h (struct inferior): Forward-declare.
13503         (record_detach): Add inferior parameter.
13504         * remote-sim.c (gdbsim_detach): Likewise.
13505         * remote.c (remote_detach_1): Likewise.
13506         (remote_detach): Likewise.
13507         (extended_remote_detach): Likewise.
13508         * sol-thread.c (sol_thread_detach): Likewise.
13509         * target-debug.h (target_debug_print_inferior_p): New macro.
13510         * target-delegates.c: Re-generate.
13511         * top.c (kill_or_detach): Pass inferior down to target_detach.
13512         * windows-nat.c (windows_detach): Add inferior parameter.
13513
13514 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13515
13516         * target.h (struct target_ops) <to_detach>: Remove args
13517         parameter.
13518         (target_detach): Likewise.
13519         * target.c (dispose_inferior): Adjust.
13520         (target_detach): Remove args parameter, adjust.
13521         * aix-thread.c (aix_thread_detach): Adjust.
13522         * corefile.c (core_file_command): Adjust.
13523         * corelow.c (core_detach): Adjust.
13524         * darwin-nat.c (darwin_detach): Adjust.
13525         * gnu-nat.c (gnu_detach): Adjust.
13526         * inf-ptrace.c (inf_ptrace_detach): Adjust.
13527         * infcmd.c (detach_command): Adjust
13528         * infrun.c (follow_fork_inferior): Adjust.
13529         (handle_vfork_child_exec_or_exit): Adjust.
13530         * linux-fork.c (linux_fork_detach): Remove args parameter.
13531         * linux-fork.h (linux_fork_detach): Likewise.
13532         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
13533         * linux-thread-db.c (thread_db_detach): Likewise.
13534         * nto-procfs.c (procfs_detach): Likewise.
13535         * procfs.c (procfs_detach): Likewise.
13536         (do_detach): Remove signo parameter.
13537         * record.c (record_detach): Remove args parameter.
13538         * record.h (record_detach): Likewise.
13539         * remote-sim.c (gdbsim_detach): Likewise.
13540         * remote.c (remote_detach_1): Likewise.
13541         (remote_detach): Likewise.
13542         (extended_remote_detach): Likewise.
13543         * sol-thread.c (sol_thread_detach): Likewise.
13544         * target-delegates.c: Re-generate.
13545         * top.c (struct qt_args) <args>: Remove field.
13546         (kill_or_detach): Don't pass args.
13547         (quit_force): Don't set args.
13548         * windows-nat.c (windows_detach): Remove args parameter.
13549
13550 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13551
13552         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
13553         (arm_linux_init_abi): Install it.
13554
13555 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13556
13557         * osabi.c (gdb_osabi_names): Extend the regexp for
13558         arm-linux-gnueabihf.
13559
13560 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13561
13562         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
13563         m_abbrevs.
13564         (abbrev_table::add_abbrev): Update.
13565         (abbrev_table::lookup_abbrev): Update.
13566
13567 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13568
13569         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
13570
13571 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
13572
13573         * compile/compile.c (compile_to_object): Convert "triplet_rx"
13574         to "std::string".
13575
13576 2018-01-17  Tom Tromey  <tom@tromey.com>
13577
13578         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
13579
13580 2018-01-17  Tom Tromey  <tom@tromey.com>
13581
13582         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
13583         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
13584         (create_array_type_with_stride): Update.
13585         * dwarf2read.c (set_die_type): Update.
13586
13587 2018-01-17  Tom Tromey  <tom@tromey.com>
13588
13589         * dwarf2read.c (delayed_method_info): Remove typedef.
13590         (dwarf2_cu::method_info): Now a std::vector.
13591         (add_to_method_list): Update.
13592         (free_delayed_list): Remove.
13593         (compute_delayed_physnames): Update.
13594         (process_full_comp_unit, process_full_type_unit): Clear the method
13595         list.  Remove cleanups.
13596         (psymtab_include_file_name): Add name_holder parameter.  Use
13597         unique_xmalloc_ptr.
13598         (dwarf_decode_lines): Update.
13599
13600 2018-01-17  Tom Tromey  <tom@tromey.com>
13601             Simon Marchi  <simon.marchi@ericsson.com>
13602
13603         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
13604         (dwarf2_per_objfile::free_cached_comp_units)
13605         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13606         (init_cutu_and_read_dies_no_follow): Update.
13607         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
13608         (dwarf2_cu::~dwarf2_cu): New.
13609         (free_heap_comp_unit, free_stack_comp_unit): Remove.
13610         (age_cached_comp_units, free_one_cached_comp_unit): Update.
13611
13612 2018-01-17  Tom Tromey  <tom@tromey.com>
13613             Simon Marchi  <simon.marchi@ericsson.com>
13614
13615         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
13616         (struct die_reader_specs) <abbrev_table>: New member.
13617         (struct abbrev_table): Add constructor.
13618         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
13619         <abbrev_obstack>: Now an auto_obstack.
13620         (abbrev_table_up): New typedef.
13621         (init_cu_die_reader): Add abbrev_table parameter.
13622         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
13623         Add result_dwo_abbrev_table.
13624         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13625         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
13626         Update.
13627         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
13628         parameter.
13629         (skip_children): Update.
13630         (abbrev_table::alloc_abbrev): Rename from
13631         abbrev_table_alloc_abbrev.
13632         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
13633         (abbrev_table::lookup_abbrev): Rename from
13634         abbrev_table_lookup_abbrev.
13635         (abbrev_table_read_table): Return abbrev_table_up.
13636         (abbrev_table_free, abbrev_table_free_cleanup)
13637         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
13638         (load_partial_dies): Update.
13639
13640 2018-01-17  Tom Tromey  <tom@tromey.com>
13641
13642         * dwarf2read.c (dwarf2_compute_name): Update comment.
13643         (read_func_scope, read_variable): Update.
13644         (new_symbol): Remove.
13645         (new_symbol_full): Rename to new_symbol.
13646
13647 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
13648
13649         PR gdb/16577
13650         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
13651         a warning instead of throwing an error, set section size to 0 and return
13652         NULL.
13653         * gdb_bfd.h (gdb_bfd_map_section): Update description.
13654
13655 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
13656
13657         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
13658         std::string.
13659         (linux_ptrace_attach_fail_reason_string): Likewise.
13660         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
13661         Likewise.
13662         (linux_ptrace_attach_fail_reason_string): Likewise.
13663         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
13664
13665 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
13666
13667         * linux-nat.c (linux_nat_attach): Remove xstrdup.
13668
13669 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
13670
13671         PR gdb/21559
13672         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
13673         checking for fs_base/gs_base fields in struct user_regs_struct.
13674         * configure: Regenerate.
13675
13676 2018-01-17  Yao Qi  <yao.qi@linaro.org>
13677
13678         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
13679         function.
13680         (aarch64_linux_init_abi): Install it to gdbarch hook
13681         gcc_target_options.
13682
13683 2018-01-15  Pedro Alves  <palves@redhat.com>
13684
13685         * common/signals-state-save-restore.c
13686         (save_original_signals_state): Fix typos.
13687
13688 2017-01-12  Tom Tromey  <tom@tromey.com>
13689             Sergio Durigan Junior  <sergiodj@redhat.com>
13690
13691         * Makefile.in (install-only): Install gdb-add-index.
13692
13693 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
13694
13695         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
13696
13697 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13698
13699         * infrun.c (keep_going_pass_signal): Clear step-over info when
13700         insert_breakpoints fails.
13701
13702 2018-01-11  Pedro Alves  <palves@redhat.com>
13703
13704         PR gdb/22583
13705         * infrun.c (resume): Rename to ...
13706         (resume_1): ... this.
13707         (resume): Reimplement as wrapper around resume_1.
13708
13709 2018-01-11  Pedro Alves  <palves@redhat.com>
13710
13711         PR remote/22597
13712         * remote.c (remote_parse_stop_reply): Default to the last-set
13713         general thread instead of to 'magic_null_ptid'.
13714
13715 2018-01-10  Pedro Alves  <palves@redhat.com>
13716
13717         * language.h (language_get_symbol_name_matcher): Rename ...
13718         (get_symbol_name_matcher): ... this.
13719         * language.c (language_get_symbol_name_matcher): Ditto.
13720         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
13721         callers adjusted.
13722
13723 2018-01-10  Pedro Alves  <palves@redhat.com>
13724
13725         PR gdb/22670
13726         * dwarf2read.c
13727         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
13728         Adjust to use language_get_symbol_name_matcher instead of
13729         language_defn::la_get_symbol_name_matcher.
13730         * language.c (language_get_symbol_name_matcher): If in Ada mode
13731         and the lookup name is a verbatim match, return Ada's matcher.
13732         * language.h (language_get_symbol_name_matcher): Adjust comment.
13733         (ada_lookup_name_info::verbatim_p):: New method.
13734
13735 2018-01-10  Pedro Alves  <palves@redhat.com>
13736
13737         PR gdb/22670
13738         * ada-lang.c (ada_collect_symbol_completion_matches): If the
13739         minsym's language is language_auto or language_cplus, pass down
13740         language_ada instead.
13741         * symtab.c (compare_symbol_name): Don't frob symbol language here.
13742
13743 2018-01-10  Pedro Alves  <palves@redhat.com>
13744
13745         PR gdb/22670
13746         * minsyms.c (linkage_name_str): New function.
13747         (iterate_over_minimal_symbols): Use it.
13748
13749 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13750
13751         * NEWS: Document that 'info proc' now works on FreeBSD.
13752
13753 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13754
13755         * configure.ac: Check for kinfo_getfile in libutil.
13756         * configure: Regenerate.
13757         * config.in: Regenerate.
13758         * fbsd-nat.c: Include "fbsd-tdep.h".
13759         (fbsd_fetch_cmdline): New.
13760         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
13761         rather than calling error.
13762         (fbsd_info_proc): New.
13763         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
13764         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
13765         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
13766
13767 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13768
13769         * fbsd-nat.c (struct free_deleter): Remove.
13770         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
13771
13772 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13773
13774         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
13775         NULL for an empty pathname.
13776
13777 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13778
13779         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
13780         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
13781         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
13782         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
13783         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
13784         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
13785         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
13786         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
13787         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
13788         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
13789         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
13790         (fbsd_core_fetch_timeval, fbsd_print_sigset)
13791         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
13792         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
13793         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
13794
13795 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
13796
13797         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
13798         (gnu_xfer_auxv): New function.
13799         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
13800         TARGET_OBJECT_AUXV.
13801
13802 2018-01-08  Yao Qi  <yao.qi@linaro.org>
13803             Simon Marchi  <simon.marchi@ericsson.com>
13804
13805         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
13806         common/selftest.c.
13807         (COMMON_OBS): Remove selftest.o.
13808         * configure.ac: Append selftest-arch.c and common/selftest.c to
13809         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
13810         * configure: Re-generated.
13811         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
13812         GDB_SELF_TEST.
13813         (maintenance_info_selftests): Likewise.
13814
13815 2018-01-08  Xavier Roirand  <roirand@adacore.com>
13816
13817         * ada-valprint.c (val_print_packed_array_elements): Use
13818         proper number of elements when printing an array indexed
13819         by an enumeration type.
13820
13821 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13822
13823         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
13824         (dw2_get_file_names_reader): Adjust.
13825         (lookup_dwo_signatured_type): Adjust.
13826         (lookup_dwp_signatured_type): Adjust.
13827         (lookup_signatured_type): Adjust.
13828         (create_type_unit_group): Adjust.
13829         (get_type_unit_group): Adjust.
13830         (process_psymtab_comp_unit_reader): Adjust.
13831         (build_type_psymtabs_reader): Adjust.
13832         (scan_partial_symbols): Adjust.
13833         (add_partial_symbol): Adjust.
13834         (add_partial_subprogram): Adjust.
13835         (peek_die_abbrev): Adjust.
13836         (fixup_go_packaging): Adjust.
13837         (process_imported_unit_die): Adjust.
13838         (dwarf2_compute_name): Adjust.
13839         (dwarf2_physname): Adjust.
13840         (read_import_statement): Adjust.
13841         (handle_DW_AT_stmt_list): Adjust.
13842         (read_file_scope): Adjust.
13843         (read_func_scope): Adjust.
13844         (read_lexical_block_scope): Adjust.
13845         (read_call_site_scope): Adjust.
13846         (read_variable): Adjust.
13847         (dwarf2_rnglists_process): Adjust.
13848         (dwarf2_ranges_process): Adjust.
13849         (dwarf2_ranges_read): Adjust.
13850         (dwarf2_get_pc_bounds): Adjust.
13851         (dwarf2_record_block_ranges): Adjust.
13852         (dwarf2_add_field): Adjust.
13853         (dwarf2_add_member_fn): Adjust.
13854         (read_structure_type): Adjust.
13855         (process_structure_scope): Adjust.
13856         (read_enumeration_type): Adjust.
13857         (read_array_type): Adjust.
13858         (mark_common_block_symbol_computed): Adjust.
13859         (read_common_block): Adjust.
13860         (read_namespace_type): Adjust.
13861         (read_namespace): Adjust.
13862         (read_module_type): Adjust.
13863         (read_tag_pointer_type): Adjust.
13864         (read_tag_ptr_to_member_type): Adjust.
13865         (read_tag_string_type): Adjust.
13866         (read_subroutine_type): Adjust.
13867         (read_typedef): Adjust.
13868         (read_base_type): Adjust.
13869         (attr_to_dynamic_prop): Adjust.
13870         (read_subrange_type): Adjust.
13871         (read_unspecified_type): Adjust.
13872         (dwarf2_read_abbrevs): Adjust.
13873         (load_partial_dies): Adjust.
13874         (read_partial_die): Adjust.
13875         (find_partial_die): Adjust.
13876         (guess_partial_die_structure_name): Adjust.
13877         (fixup_partial_die): Adjust.
13878         (read_attribute_value): Adjust.
13879         (read_addr_index): Adjust.
13880         (read_addr_index_from_leb128): Adjust.
13881         (read_str_index): Adjust.
13882         (dwarf2_string_attr): Adjust.
13883         (get_debug_line_section): Adjust.
13884         (dwarf_decode_line_header): Adjust.
13885         (lnp_state_machine::check_line_address): Adjust.
13886         (dwarf_decode_lines_1): Adjust.
13887         (dwarf_decode_lines): Adjust.
13888         (dwarf2_start_symtab): Adjust.
13889         (var_decode_location): Adjust.
13890         (new_symbol_full): Adjust.
13891         (dwarf2_const_value_data): Adjust.
13892         (dwarf2_const_value_attr): Adjust.
13893         (dwarf2_const_value): Adjust.
13894         (die_type): Adjust.
13895         (die_containing_type): Adjust.
13896         (build_error_marker_type): Adjust.
13897         (lookup_die_type): Adjust.
13898         (guess_full_die_structure_name): Adjust.
13899         (anonymous_struct_prefix): Adjust.
13900         (determine_prefix): Adjust.
13901         (dwarf2_name): Adjust.
13902         (follow_die_ref_or_sig): Adjust.
13903         (follow_die_offset): Adjust.
13904         (follow_die_ref): Adjust.
13905         (follow_die_sig_1): Adjust.
13906         (follow_die_sig): Adjust.
13907         (get_signatured_type): Adjust.
13908         (get_DW_AT_signature_type): Adjust.
13909         (decode_locdesc): Adjust.
13910         (dwarf_decode_macros): Adjust.
13911         (cu_debug_loc_section): Adjust.
13912         (fill_in_loclist_baton): Adjust.
13913         (dwarf2_symbol_mark_computed): Adjust.
13914         (init_one_comp_unit): Don't assign
13915         dwarf2_cu::dwarf2_per_objfile.
13916         (set_die_type): Adjust.
13917
13918 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
13919
13920         * dwarf2read.c (struct mapped_debug_names): Add constructor.
13921         <dwarf2_per_objfile>: New field.
13922         (dwarf2_per_objfile): Remove global.
13923         (get_dwarf2_per_objfile): New function.
13924         (set_dwarf2_per_objfile): New function.
13925         (dwarf2_build_psymtabs_hard): Change objfile parameter to
13926         dwarf2_per_objfile.
13927         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
13928         (read_abbrev_offset): Likewise.
13929         (read_indirect_string): Likewise.
13930         (read_indirect_line_string): Likewise.
13931         (read_indirect_string_at_offset): Likewise.
13932         (read_indirect_string_from_dwz): Likewise.
13933         (dwarf2_find_containing_comp_unit): Change objfile parameter to
13934         dwarf2_per_objfile.
13935         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
13936         (create_all_comp_units): Change objfile parameter to
13937         dwarf2_per_objfile.
13938         (create_all_type_units): Likewise.
13939         (process_queue): Add dwarf2_per_objfile parameter.
13940         (read_and_check_comp_unit_head): Likewise.
13941         (lookup_dwo_unit_in_dwp): Likewise.
13942         (get_dwp_file): Likewise.
13943         (process_cu_includes): Likewise.
13944         (struct free_dwo_file_cleanup_data): New struct.
13945         (dwarf2_has_info): Use get_dwarf2_per_objfile and
13946         set_dwarf2_per_objfile.
13947         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
13948         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
13949         context, adjust calls.
13950         (dw2_instantiate_symtab): Likewise.
13951         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
13952         (dw2_get_cu): Likewise.
13953         (create_cu_from_index_list): Change objfile parameter to
13954         dwarf2_per_objfile.
13955         (create_cus_from_index_list): Get dwarf2_per_objfile from
13956         context, adjust calls.
13957         (create_cus_from_index): Likewise.
13958         (create_signatured_type_table_from_index): Change objfile
13959         parameter to dwarf2_per_objfile.
13960         (create_signatured_type_table_from_debug_names): Change objfile
13961         parameter to dwarf2_per_objfile.
13962         (create_addrmap_from_index): Likewise.
13963         (create_addrmap_from_aranges): Likewise.
13964         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
13965         (dw2_setup): Remove.
13966         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
13967         context.
13968         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
13969         get_dwarf2_per_objfile.
13970         (dw2_forget_cached_source_info): Likewise.
13971         (dw2_map_symtabs_matching_filename): Likewise.
13972         (struct dw2_symtab_iterator) <index>: Remove.
13973         <dwarf2_per_objfile>: New field.
13974         (dw2_symtab_iter_init): Replace index parameter with
13975         dwarf2_per_objfile.
13976         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
13977         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
13978         (dw2_print_stats): Likewise.
13979         (dw2_dump): Likewise.
13980         (dw2_expand_symtabs_for_function): Likewise.
13981         (dw2_expand_all_symtabs): Likewise.
13982         (dw2_expand_symtabs_with_fullname): Likewise.
13983         (dw2_expand_marked_cus): Replace index and objfile parameters
13984         with dwarf2_per_objfile.
13985         (dw_expand_symtabs_matching_file_matcher): Add
13986         dwarf2_per_objfile parameter and adjust calls.
13987         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
13988         adjust calls.
13989         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
13990         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
13991         adjust calls.
13992         (create_cus_from_debug_names_list): Replace objfile parameter
13993         with dwarf2_per_objfile and adjust calls.
13994         (create_cus_from_debug_names): Likewise.
13995         (dwarf2_read_debug_names): Likewise.
13996         (mapped_debug_names::namei_to_name): Adjust call.
13997         (dw2_debug_names_iterator::next): Likewise.
13998         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
13999         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
14000         (dw2_debug_names_dump): Likewise.
14001         (dw2_debug_names_expand_symtabs_for_function): Likewise.
14002         (dw2_debug_names_expand_symtabs_matching): Likewise.
14003         (dwarf2_initialize_objfile): Likewise.
14004         (dwarf2_build_psymtabs): Likewise.
14005         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
14006         this_cu.
14007         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
14008         (read_and_check_comp_unit_head): Likewise.
14009         (read_abbrev_offset): Likewise.
14010         (create_debug_type_hash_table): Likewise.
14011         (create_debug_types_hash_table): Likewise.
14012         (create_all_type_units): Replace objfile parameter with
14013         dwarf2_per_objfile.
14014         (add_type_unit): Add dwarf2_per_objfile parameter.
14015         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
14016         with dwarf2_per_objfile.
14017         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
14018         (lookup_dwp_signatured_type): Likewise.
14019         (lookup_signatured_type): Likewise.
14020         (read_cutu_die_from_dwo): Likewise.
14021         (init_tu_and_read_dwo_dies): Likewise.
14022         (init_cutu_and_read_dies): Likewise.
14023         (init_cutu_and_read_dies_no_follow): Likewise.
14024         (allocate_type_unit_groups_table): Add objfile parameter.
14025         (create_type_unit_group): Use dwarf2_per_objfile from cu.
14026         (get_type_unit_group): Likewise.
14027         (process_psymtab_comp_unit): Update call.
14028         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
14029         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
14030         (print_tu_stats): Likewise.
14031         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
14032         in void* parameter.
14033         (build_type_psymtabs): Change objfile parameter to
14034         dwarf2_per_objfile.
14035         (process_skeletonless_type_unit): Use dwarf2_per_objfile
14036         passed in void* parameter.
14037         (process_skeletonless_type_units): Change objfile parameter to
14038         dwarf2_per_objfile.
14039         (set_partial_user): Likewise.
14040         (dwarf2_build_psymtabs_hard): Likewise.
14041         (read_comp_units_from_section): Likewise.
14042         (create_all_comp_units): Likewise.
14043         (scan_partial_symbols): Update calls.
14044         (add_partial_symbol): Likewise.
14045         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
14046         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
14047         (process_queue): Add dwarf2_per_objfile parameter.
14048         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
14049         (compute_compunit_symtab_includes): Likewise.
14050         (process_cu_includes): Add dwarf2_per_objfile parameter.
14051         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
14052         (process_full_type_unit): Likewise.
14053         (process_imported_unit_die): Update call.
14054         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
14055         (read_file_scope): Likewise.
14056         (allocate_dwo_file_hash_table): Add objfile parameter.
14057         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
14058         (create_cus_hash_table): Likewise.
14059         (create_dwp_hash_table): Likewise.
14060         (create_dwo_unit_in_dwp_v1): Likewise.
14061         (create_dwp_v2_section): Likewise.
14062         (create_dwo_unit_in_dwp_v2): Likewise.
14063         (lookup_dwo_unit_in_dwp): Likewise.
14064         (try_open_dwop_file): Likewise.
14065         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
14066         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
14067         cleanup to include a reference to dwarf2_per_objfile.
14068         (open_dwp_file): Add dwarf2_per_objfile parameter.
14069         (open_and_init_dwp_file): Likewise.
14070         (get_dwp_file): Likewise.
14071         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
14072         (queue_and_load_all_dwo_tus): Update call.
14073         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
14074         data.
14075         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
14076         (dwarf2_ranges_process): Likewise.
14077         (dwarf2_get_pc_bounds): Likewise.
14078         (mark_common_block_symbol_computed): Likewise.
14079         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14080         (dwarf2_read_abbrevs): Update call.
14081         (read_partial_die): Use dwarf2_per_objfile from cu.
14082         (find_partial_die): Likewise.
14083         (fixup_partial_die): Likewise.
14084         (read_attribute_value): Likewise.
14085         (read_indirect_string_at_offset_from): Add objfile parameter.
14086         (read_indirect_string_at_offset): Add dwarf2_per_objfile
14087         parameter.
14088         (read_indirect_string_from_dwz): Add objfile parameter.
14089         (read_indirect_string): Add objfile parameter.
14090         (read_addr_index_1): Add dwarf2_per_objfile parameter.
14091         (read_addr_index): Use dwarf2_per_objfile from cu.
14092         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
14093         call dw2_setup.
14094         (read_str_index): Use dwarf2_per_objfile from cu.
14095         (get_debug_line_section): Likewise.
14096         (read_formatted_entries): Add dwarf2_per_objfile parameter.
14097         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
14098         (new_symbol_full): Use dwarf2_per_objfile from cu.
14099         (build_error_marker_type): Likewise.
14100         (lookup_die_type): Likewise.
14101         (determine_prefix): Likewise.
14102         (follow_die_offset): Likewise.
14103         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
14104         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
14105         (dwarf2_fetch_die_type_sect_off): Likewise.
14106         (dwarf2_get_die_type): Likewise.
14107         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
14108         (get_signatured_type): Likewise.
14109         (get_DW_AT_signature_type): Likewise.
14110         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
14111         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
14112         (cu_debug_loc_section): Likewise.
14113         (fill_in_loclist_baton): Likewise.
14114         (dwarf2_symbol_mark_computed): Likewise.
14115         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14116         dwarf2_per_objfile.
14117         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
14118         parameter.
14119         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14120         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
14121         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
14122         (set_die_type): Use dwarf2_free_objfile from cu.
14123         (get_die_type_at_offset): Likewise.
14124         (dwarf2_per_objfile_free): Don't assign global variable.
14125         (debug_names) <constructor>: Add dwarf2_per_objfile
14126         parameter, update m_debugstrlookup construction.
14127         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
14128         parameter.
14129         <m_dwarf2_per_objfile>: New field.
14130         <lookup>: Use m_dwarf2_per_objfile.
14131         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
14132         (psyms_seen_size): Likewise.
14133         (write_gdbindex): Replace objfile parameter with
14134         dwarf2_per_objfile.
14135         (write_debug_names): Likewise.
14136         (write_psymtabs_to_index): Likewise.
14137         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
14138         calls.
14139
14140 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14141
14142         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
14143         <dwarf2_per_objfile>: New field.
14144         (struct dwarf2_per_cu_data) <objfile>: Remove.
14145         <dwarf2_per_objfile>: New field.
14146         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
14147         of objfile.
14148         (create_signatured_type_table_from_index): Likewise.
14149         (create_debug_type_hash_table): Likewise.
14150         (fill_in_sig_entry_from_dwo_entry): Likewise.
14151         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
14152         (create_type_unit_group): Assign dwarf2_per_objfile instead of
14153         objfile.
14154         (create_partial_symtab): Access objfile through
14155         dwarf2_per_objfile.
14156         (process_psymtab_comp_unit_reader): Likewise.
14157         (read_comp_units_from_section): Likewise.
14158         (scan_partial_symbols): Likewise.
14159         (add_partial_symbol): Likewise.
14160         (add_partial_subprogram): Likewise.
14161         (peek_die_abbrev): Likewise.
14162         (fixup_go_packaging): Likewise.
14163         (process_full_comp_unit): Likewise.
14164         (process_full_type_unit): Likewise.
14165         (process_imported_unit_die): Likewise.
14166         (dwarf2_compute_name): Likewise.
14167         (dwarf2_physname): Likewise.
14168         (read_import_statement): Likewise.
14169         (create_cus_hash_table): Assign dwarf2_physname instead of
14170         objfile.
14171         (read_func_scope): Access objfile through dwarf2_per_objfile.
14172         (read_lexical_block_scope): Likewise.
14173         (read_call_site_scope): Likewise.
14174         (read_variable): Likewise.
14175         (dwarf2_rnglists_process): Likewise.
14176         (dwarf2_ranges_process): Likewise.
14177         (dwarf2_ranges_read): Likewise.
14178         (dwarf2_record_block_ranges): Likewise.
14179         (dwarf2_add_field): Likewise.
14180         (dwarf2_add_member_fn): Likewise.
14181         (read_structure_type): Likewise.
14182         (process_structure_scope): Likewise.
14183         (read_enumeration_type): Likewise.
14184         (read_array_type): Likewise.
14185         (read_common_block): Likewise.
14186         (read_namespace_type): Likewise.
14187         (read_namespace): Likewise.
14188         (read_module_type): Likewise.
14189         (read_tag_pointer_type): Likewise.
14190         (read_tag_ptr_to_member_type): Likewise.
14191         (read_tag_string_type): Likewise.
14192         (read_subroutine_type): Likewise.
14193         (read_typedef): Likewise.
14194         (read_base_type): Likewise.
14195         (attr_to_dynamic_prop): Likewise.
14196         (read_subrange_type): Likewise.
14197         (read_unspecified_type): Likewise.
14198         (load_partial_dies): Likewise.
14199         (read_partial_die): Likewise.
14200         (find_partial_die): Likewise.
14201         (guess_partial_die_structure_name): Likewise.
14202         (fixup_partial_die): Likewise.
14203         (read_attribute_value): Likewise.
14204         (read_addr_index_from_leb128): Likewise.
14205         (dwarf2_read_addr_index): Likewise.
14206         (dwarf2_string_attr): Likewise.
14207         (lnp_state_machine::check_line_address): Likewise.
14208         (dwarf_decode_lines_1): Likewise.
14209         (dwarf_decode_lines): Likewise.
14210         (dwarf2_start_symtab): Likewise.
14211         (var_decode_location): Likewise.
14212         (new_symbol_full): Likewise.
14213         (dwarf2_const_value_data): Likewise.
14214         (dwarf2_const_value_attr): Likewise.
14215         (dwarf2_const_value): Likewise.
14216         (die_type): Likewise.
14217         (die_containing_type): Likewise.
14218         (lookup_die_type): Likewise.
14219         (guess_full_die_structure_name): Likewise.
14220         (anonymous_struct_prefix): Likewise.
14221         (dwarf2_name): Likewise.
14222         (follow_die_ref_or_sig): Likewise.
14223         (follow_die_offset): Likewise.
14224         (follow_die_ref): Likewise.
14225         (dwarf2_fetch_die_loc_sect_off): Likewise.
14226         (dwarf2_fetch_constant_bytes): Likewise.
14227         (dwarf2_fetch_die_type_sect_off): Likewise.
14228         (dwarf2_get_die_type): Likewise.
14229         (follow_die_sig): Likewise.
14230         (decode_locdesc): Likewise.
14231         (dwarf2_per_cu_objfile): Likewise.
14232         (dwarf2_per_cu_text_offset): Likewise.
14233         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
14234         objfile.
14235         (set_die_type): Access objfile through
14236         dwarf2_per_objfile.
14237
14238 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14239
14240         * valprint.c (converted_character_d): Remove typedef.
14241         (DEF_VEC_O (converted_character_d)): Remove.
14242         (count_next_character): Use std::vector.
14243         (print_converted_chars_to_obstack): Likewise.
14244         (generic_printstr): Likewise.
14245
14246 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14247
14248         * xml-support.h (struct gdb_xml_value): Add constructor.
14249         <value>: Change type to unique_xmalloc_ptr.
14250         (gdb_xml_value_s): Remove typedef.
14251         (DEF_VEC_O (gdb_xml_value_s)): Remove.
14252         (gdb_xml_element_start_handler): Change parameter type to
14253         std::vector.
14254         (xml_find_attribute): Likewise.
14255         * xml-support.c (xml_find_attribute): Change parameter type to
14256         std::vector and adjust.
14257         (gdb_xml_values_cleanup): Remove.
14258         (gdb_xml_parser::start_element): Adjust to std::vector.
14259         (xinclude_start_include): Change paraeter type to std::vector
14260         and adjust.
14261         * btrace.c (check_xml_btrace_version): Likewise.
14262         (parse_xml_btrace_block): Likewise.
14263         (parse_xml_btrace_pt_config_cpu): Likewise.
14264         (parse_xml_btrace_pt): Likewise.
14265         (parse_xml_btrace_conf_bts): Likewise.
14266         (parse_xml_btrace_conf_pt): Likewise.
14267         * memory-map.c (memory_map_start_memory): Likewise.
14268         (memory_map_start_property): Likewise.
14269         * osdata.c (osdata_start_osdata): Likewise.
14270         (osdata_start_item): Likewise.
14271         (osdata_start_column): Likewise.
14272         * remote.c (start_thread): Likewise.
14273         * solib-aix.c (library_list_start_library): Likewise.
14274         (library_list_start_list): Likewise.
14275         * solib-svr4.c (library_list_start_library): Likewise.
14276         (svr4_library_list_start_list): Likewise.
14277         * solib-target.c (library_list_start_segment): Likewise.
14278         (library_list_start_section): Likewise.
14279         (library_list_start_library): Likewise.
14280         (library_list_start_list): Likewise.
14281         * tracepoint.c (traceframe_info_start_memory): Likewise.
14282         (traceframe_info_start_tvar): Likewise.
14283         * xml-syscall.c (syscall_start_syscall): Likewise.
14284         * xml-tdesc.c (tdesc_start_target): Likewise.
14285         (tdesc_start_feature): Likewise.
14286         (tdesc_start_reg): Likewise.
14287         (tdesc_start_union): Likewise.
14288         (tdesc_start_struct): Likewise.
14289         (tdesc_start_flags): Likewise.
14290         (tdesc_start_enum): Likewise.
14291         (tdesc_start_field): Likewise.
14292         (tdesc_start_enum_value): Likewise.
14293         (tdesc_start_vector): Likewise.
14294
14295 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14296
14297         * extension.h (struct xmethod_worker) <clone>: Remove.
14298         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
14299         Remove.
14300         (python_xmethod_worker::clone): Remove.
14301         * valops.c (find_overload_match): Use std::move instead of
14302         clone.
14303
14304 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14305
14306         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
14307         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
14308         <free_xmethod_worker_data>: Remove.
14309         <get_matching_xmethod_workers>: Chance VEC to std::vector.
14310         <get_xmethod_arg_types>: Remove.
14311         <get_xmethod_result_type>: Remove.
14312         <invoke_xmethod>: Remove.
14313         * extension.c (new_xmethod_worker): Remove.
14314         (clone_xmethod_worker): Remove.
14315         (get_matching_xmethod_workers): Return void, pass std::vector by
14316         pointer.
14317         (get_xmethod_arg_types): Rename to...
14318         (xmethod_worker::get_arg_types): ... this, and adjust.
14319         (get_xmethod_result_type): Rename to...
14320         (xmethod_worker::get_result_type): ... this, and adjust.
14321         (invoke_xmethod): Remove.
14322         (free_xmethod_worker): Remove.
14323         (free_xmethod_worker_vec): Remove.
14324         * extension.h (enum ext_lang_rc): Move here from
14325         extension-priv.h.
14326         (struct xmethod_worker): Add constructor and destructor.
14327         <data>: Remove.
14328         <value>: Remove.
14329         <invoke, clone, do_get_result_type, do_get_arg_types>: New
14330         virtual pure methods.
14331         <get_arg_types, get_result_type>: New methods.
14332         (xmethod_worker_ptr): Remove typedef.
14333         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
14334         (xmethod_worker_vec): Remove typedef.
14335         (xmethod_worker_up): New typedef.
14336         (invoke_xmethod): Remove.
14337         (clone_xmethod_worker): Remove.
14338         (free_xmethod_worker): Remove.
14339         (free_xmethod_worker_vec): Remove.
14340         (get_xmethod_arg_types): Remove.
14341         (get_xmethod_result_type): Remove.
14342         * valops.c (find_method_list): Use std::vector, don't use
14343         intermediate vector.
14344         (value_find_oload_method_list): Use std::vector.
14345         (find_overload_match): Use std::vector.
14346         (find_oload_champ): Use std::vector.
14347         * value.c (value_free): Use operator delete.
14348         (value_of_xmethod): Rename to...
14349         (value_from_xmethod): ... this.  Don't assign
14350         xmethod_worker::value, take rvalue-reference.
14351         (result_type_of_xmethod): Adjust.
14352         (call_xmethod): Adjust.
14353         * value.h: Include extension.h.
14354         (struct xmethod_worker): Don't forward-declare.
14355         (value_of_xmethod): Rename to...
14356         (value_from_xmethod): ... this, take rvalue-reference.
14357         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
14358         (struct python_xmethod_worker): ... this, add constructor and
14359         destructor.
14360         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
14361         (gdbpy_free_xmethod_worker_data): Rename to...
14362         (python_xmethod_worker::~python_xmethod_worker): ... this and
14363         adjust.
14364         (gdbpy_clone_xmethod_worker_data): Rename to...
14365         (python_xmethod_worker::clone): ... this and adjust.
14366         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
14367         temporary vector.
14368         (gdbpy_get_xmethod_arg_types): Rename to...
14369         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
14370         (gdbpy_get_xmethod_result_type): Rename to...
14371         (python_xmethod_worker::do_get_result_type): ... this and
14372         adjust.
14373         (gdbpy_invoke_xmethod): Rename to...
14374         (python_xmethod_worker::invoke): ... this and adjust.
14375         (new_python_xmethod_worker): Rename to...
14376         (python_xmethod_worker::python_xmethod_worker): ... this and
14377         adjust.
14378         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
14379         Remove.
14380         (gdbpy_free_xmethod_worker_data): Remove.
14381         (gdbpy_get_matching_xmethod_workers): Use std::vector.
14382         (gdbpy_get_xmethod_arg_types): Remove.
14383         (gdbpy_get_xmethod_result_type): Remove.
14384         (gdbpy_invoke_xmethod): Remove.
14385         * python/python.c (python_extension_ops): Remove obsolete
14386         callbacks.
14387
14388 2018-01-05  Pedro Alves  <palves@redhat.com>
14389
14390         PR gdb/18653
14391         * common/signals-state-save-restore.c
14392         (save_original_signals_state): New parameter 'quiet'.  Warn if we
14393         find a custom handler preinstalled, instead of internal erroring.
14394         But only warn if !quiet.
14395         * common/signals-state-save-restore.h
14396         (save_original_signals_state): New parameter 'quiet'.
14397         * main.c (captured_main_1): Move save_original_signals_state call
14398         after option handling, and pass QUIET.
14399
14400 2018-01-05  Pedro Alves  <palves@redhat.com>
14401
14402         * spu-tdep.c (spu_catch_start): Pass
14403         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
14404
14405 2018-01-05  Pedro Alves  <palves@redhat.com>
14406
14407         PR gdb/22670
14408         * ada-lang.c (literal_symbol_name_matcher): New function.
14409         (ada_get_symbol_name_matcher): Use it for
14410         symbol_name_match_type::SEARCH_NAME.
14411         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
14412         it down instead of assuming symbol_name_match_type::FULL.
14413         * block.h (block_lookup_symbol): New parameter 'match_type'.
14414         * c-valprint.c (print_unpacked_pointer): Use
14415         lookup_symbol_search_name instead of lookup_symbol.
14416         * compile/compile-object-load.c (get_out_value_type): Pass down
14417         symbol_name_match_type::SEARCH_NAME.
14418         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
14419         symbol_name_match_type::FULL.
14420         * cp-support.c (cp_get_symbol_name_matcher): Handle
14421         symbol_name_match_type::SEARCH_NAME.
14422         * infrun.c (insert_exception_resume_breakpoint): Use
14423         lookup_symbol_search_name.
14424         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
14425         * psymtab.c (maintenance_check_psymtabs): Use
14426         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
14427         * stack.c (print_frame_args): Use lookup_symbol_search_name and
14428         SYMBOL_SEARCH_NAME.
14429         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
14430         if symbol_name_match_type::SEARCH_NAME.
14431         (lookup_symbol_in_language): Pass down
14432         symbol_name_match_type::FULL.
14433         (lookup_symbol_search_name): New.
14434         (lookup_language_this): Pass down
14435         symbol_name_match_type::SEARCH_NAME.
14436         (lookup_symbol_aux, lookup_local_symbol): New parameter
14437         'match_type'.  Pass it down.
14438         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
14439         (lookup_symbol_search_name): New declaration.
14440         (lookup_symbol_in_block): New 'match_type' parameter.
14441
14442 2018-01-05  Pedro Alves  <palves@redhat.com>
14443
14444         PR gdb/22670
14445         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
14446         ada_lookup_symbol.
14447         (ada_lookup_symbol): Reimplement in terms of
14448         ada_lookup_symbol_list, bits factored out from
14449         ada_lookup_encoded_symbol.
14450
14451 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14452
14453         * ada-exp.y (write_object_renaming): When subscripting an array
14454         using a symbol as the index, pass the block in call to
14455         ada_lookup_encoded_symbol when looking that symbol up.
14456
14457 2018-01-05  Jerome Guitton  <guitton@adacore.com>
14458
14459         * ada-lang.c (ada_array_length): Use ada_index_type instead of
14460         TYPE_INDEX_TYPE.
14461
14462 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14463
14464         * ada-lang.c (ada_to_fixed_value_create): Add handling of
14465         the case where VALUE_LVAL (val0) is not lval_memory.
14466
14467 2018-01-05  Xavier Roirand  <roirand@adacore.com>
14468
14469         * ada-valprint.c (print_optional_low_bound): Handle
14470         character-indexed array printing like boolean-indexed array
14471         printing.
14472
14473 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14474
14475         * NEWS: Create a new section for the next release branch.
14476         Rename the section of the current branch, now that it has
14477         been cut.
14478
14479 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14480
14481         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
14482         * version.in: Bump version to 8.1.50.DATE-git.
14483
14484 2018-01-03  Xavier Roirand  <roirand@adacore.com>
14485
14486         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
14487         Add field.
14488         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
14489         Add field.
14490         (default_exception_support_info) <catch_handlers_sym>: Add field.
14491         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
14492         (ada_exception_name_addr_1): Add "catch handlers" handling.
14493         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
14494         Update all callers.
14495         (create_excep_cond_exprs) <ex>: Add parameter.
14496         (re_set_exception): Update create_excep_cond_exprs call.
14497         (print_it_exception, print_one_exception, print_mention_exception)
14498         (print_recreate_exception): Add "catch handler" handling.
14499         (allocate_location_catch_handlers, re_set_catch_handlers)
14500         (check_status_catch_handlers, print_it_catch_handlers)
14501         (print_one_catch_handlers, print_mention_catch_handlers)
14502         (print_recreate_catch_handlers): New function.
14503         (catch_handlers_breakpoint_ops): New variable.
14504         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
14505         Add parameter.  Add "catch handler" handling.
14506         (ada_exception_sym_name, ada_exception_breakpoint_ops):
14507         Add "catch handler" handling.
14508         (ada_exception_catchpoint_cond_string): Add "catch handler"
14509         handling.
14510         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
14511         call.
14512         (catch_ada_handlers_command): New function.
14513         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
14514         operations structure.
14515         (_initialize_ada_language): Add "catch handlers" command entry.
14516         * NEWS: Document "catch handlers" feature.
14517
14518 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14519
14520         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
14521         account when creating the array type of the slice.
14522         (ada_value_slice): Likewise.
14523
14524 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14525
14526         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
14527         New enum value.
14528         (create_array_type_with_stride): Add byte_stride_prop parameter.
14529         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
14530         New parameter.  Update all callers in this file.
14531         (array_type_has_dynamic_stride): New function.
14532         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
14533         of arrays with dynamic byte strides.
14534         * dwarf2read.c (read_array_type): Add support for dynamic
14535         DW_AT_byte_stride attributes.
14536
14537 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14538
14539         * dwarf2read.c (read_unspecified_type): Treat
14540         DW_TAG_enumeration_type DIEs from Ada units as stubs.
14541
14542 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14543
14544         Update copyright year range in all GDB files.
14545
14546 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
14547
14548         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
14549         and gdb/testsuite/gdb.base/step-line.c.
14550
14551 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14552
14553         * copyright.py (main): Dump the contents of
14554         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
14555         even if BY_HAND is empty.
14556
14557 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14558
14559         * top.c (print_gdb_version): Update Copyright year in version
14560         message.
14561
14562 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14563
14564         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
14565
14566 For older changes see ChangeLog-2017.
14567 \f
14568 Local Variables:
14569 mode: change-log
14570 left-margin: 8
14571 fill-column: 74
14572 version-control: never
14573 coding: utf-8
14574 End: